Home assistant configurazione sensore temperatura e umidità Xiaomi
In questo nuovo video configureremo un sensore di temperatura ed umidità bluetooth di Xiaomi, per ottenere i valori di temperatura ed umidità di una stanza/casa.
Il sensore lo potete trovare qui
Il sensore in questione è bluetooth LE, quindi configurabile con dispositivi che siano compatibili con tale tecnologia, io utilizzo un raspberry pi 3 B+ che ha il modulo integrato.
Il sensore non è compatibile con installazioni di Home Assistant che girano su Windows o MacOS dato il mancato supporto alla libreria btlewrap
Per iniziare dobbiamo installare alcune librerie nel virtual environment di Home Assistant.
Apriamo quindi una connessione ssh con il nostro server (o apriamo un terminale se connessi fisicamente ad esso con tastiera e mouse), eseguiamo il login come utente homeassistant (o qualsiasi altro utente avete creato).
sudo -u homeassistant -H -s
Entriamo quindi nel virtual environment ed attiviamolo
cd /srv/homeassistant
source bin/activate
Ed installiamo i moduli python necessari
pip3 install bluepy
pip3 install btlewrap
Una volta finita l’installazione dei moduli usciamo dal virtual environment con
exit
Inseriamo ora la batteria nel sensore Xiaomi (se non lo avete ancora fatto) e premiamo il tasto posteriore finchè il simbolo del bluetooth non lampeggia sul display.
Torniamo sul nostro terminale ed eseguiamo una scansione bluetooth
sudo hcitool lescan
Ci verrà restituita una lista di dispositivi simile a questa
pi@raspberrypi:~ $ sudo hcitool lescan
LE Scan ...
C4:7C:8D:66:21:C0 Flower care
C4:7C:8D:66:22:57 (unknown)
C4:7C:8D:66:22:57 Flower care
4C:65:A8:DC:88:B5 (unknown)
4C:65:A8:DC:88:B5 MJ_HT_V1
E8:9E:B4:18:C7:34 (unknown)
A noi interessa il dispositivo con il nome MJ_HT_V1, copiamone il MAC address (la serie di 6 caratteri alfanumerici accanto al nome).
Possiamo tranquillamente chiudere il nostro terminale ed aprire il nostro editor per configurare Home Assistant. Apriamo sensors.yaml e aggiungiamo il seguente codice:
- platform: mitemp_bt
mac: 4C:65:A8:DC:88:B5
name: Temperatura Casa
force_update: false
median: 3
monitored_conditions:
- temperature
- humidity
- battery
platform è il nome della piattaforma e va lasciato così
mac è il MAC address che abbiamo copiato dopo la scansione
name è il nome che vogliamo assegnare al sensore su Home Assistant
force_update: false fa si che non venga inviato un cambio di stato dal sensore se non vi è stata una variazione (se la temperatura è fissa a 20° non lo invierà ogni volta)
median: 3 fa si che venga inviata la misura media di 3 rilevazioni per evitare spike (ad esempio una finestra aperta per poco tempo) che potrebbero falsare la lettura
monitored_condition sono i valori che possiamo controllare (in questo caso solo i tre impostati)
Salviamo il file e riavviamo Home Assistant.
Ora andando su Home Assistant in dev state (il simbolo <> in fondo alla barra di navigazione laterale), troveremo i sensori indicati come sensor.temperatura_casa_humidity, temperature e battery (ovviamente temperatura_casa viene dalla variabile name impostata sopra).
Da qui ci basta in groups.yaml andare ad aggiungere i sensori ad una view:
default_view:
view: yes
icon: mdi:home
entities:
- group.alarm_clock
- group.wheater_conditions
- group.thermostat
- group.temperatura
- group.lights_corridoio
[...]
temperatura:
name: Temperatura
entities:
- sensor.temperatura_casa_temperature
- sensor.temperatura_casa_humidity
- sensor.temperatura_casa_battery
E ricaricare i gruppi di Home Assistant.
Sarà poi possibile da qui creare automazioni relativamente alle rilevazioni del sensore.
Iscrivetevi al canale telegram per rimanere aggiornati sulle novita’ e commentate qui sotto per avere informazioni o delucidazioni.
Scrivi un commento