Sonoff in Home Assistant: addio Tasmota!?
.
Argomento: Sonoff
Livello: Novizio (Novizio,Esperto, Pro)
Difficoltà: Bassa (Bassa, Media, Alta)
Home Assistant: v. 0.105.3
Hacs: v. 0.20.7
eWeLink Smart Home: v.3.14.1
Prefazione
Questa guida è dedicata a tutti coloro che non vogliono o non hanno le competenze per modificare il firmware dei Sonoff ma necessitano di comandare questi dispositivi nell’ambiente Home Assistant.
Attraverso il Custom Component realizzato da AlexxIT potremmo controllare i Sofoff in locale senza l’ausilio del loro cloud e sopratutto, come detto prima, senza dover modificare il firmware magari utilizzando l’ormai famoso Tasmota, ma per alcuni, meno pratici di stagnature, FTDI ecc ecc. questa è la soluzione migliore.
App eWeLink
Dopo aver installato l’app di eWelink Smart Home e associato il vostro dispositivo dobbiamo abilitare il Lan Mode
Sulla schermata del dispositivo premiamo, in alto a destra, i 3 puntini e selezioniamo Impostazioni.
Nella pagina successiva verifichiamo che lo switch LAN sia abilitato. Se scorriamo verso il basso potremmo trovare il Device ID che ci servirà per una configurazione avanzata su Home Assistant.
Installazione Custom Repositories
L’installazione richiede pochi passaggi; da HACS ci portiamo sul menù SETTING ed inseriamo le seguente repository
https://github.com/AlexxIT/SonoffLAN
Poi ci clicchiamo sopra e la installiamo
Ora ci spostiamo nel file configuration.yaml ed inseriamo le seguenti righe in base a come vogliamo configurare i dispositivi.
Attenzione se la password dovesse iniziare con dei numeri vi consiglio di metterla tra gli apici ‘password’, verificate nei log/registri se ci sono errori per il component non settato correttamente.
Configurazione minima:
sonoff: username: [email protected] password: 'mypassword'
In alternativa:
sonoff: username: +910123456789 # important to use country code password: 'mypassword'
Configurazione avanzata:
sonoff: username: [email protected] password: 'mypassword' reload: always # update device list every time HA starts devices: 1000abcdefg: device_class: light
In quest’altro modo i dispositivi possono essere impostati manualmente, senza connettersi ai server cloud. Ma in questo caso, è necessario conoscere il devicekey per ogni dispositivo.
sonoff: devices: 1000abcdefg: devicekey: f9765c85-463a-4623-9cbe-8d59266cb2e4
Estrazione DEVICEKEY
Per trovare il devicekey dei dispositivi ci sono 2 soluzioni:
La prima seguendo questa procedura:
- mettere in modalità paring il dispositivo (resettarlo)
- collegarsi alla rete wifi che creerà con password 12345678
- successivamente andare all’indirizzo http://10.10.7.1/device e da qui vi verranno forniti i dati tra cui il devicekey
Per altri esempi ed approfondimenti vi rimando al link dell’autore https://github.com/AlexxIT/SonoffLAN
Considerazioni
Anche se semplice e intuitivo questo sistema per l’integrazione in Home Assistant dei dispositivi iTead non è ancora compatibile con tutti i prodotti attualmente in commercio.
Altra nota dolente è l’impossibilità di utilizzare/comandare i gpio presenti nei vari sonoff per collegare interruttori o sensori, ma come spiegato all’inizio questo sistema è per coloro che non hanno molte pretese per i propri dispositivi: vogliono solamente che i dispositivi facciano quello che normalmente fanno ma senza passare attraverso il Cloud di iTead.
Personalmente ritengo ancora la miglio soluzione passare ad altro firmware come Tasmota o ESPHome
5 risposte
Resta il problema dei nuovi dispositivi che vengono volutamente “blindati” in modo da non essere aperti senza rovinarne l’involucro, o con chipset non supportati.
ho seguito la guida, installato hacs, installato il custom component sonofflan, recuperato l’apikey del mio sonoff basic con v3.0.1, settato la configurazione in configuration.yaml come segue:
sonoff:
username:
password: !secret
reload: always # update device list every time HA starts
default_class: light # changes the default class of all devices from switch to light
devices:
10009a2408: # desk lamp light
devicekey:
device_class: light # changes the default class of the device from switch to light
ma non trovo in nessun modo il sonoff tra le entità di hassio, ho abilitato il debug del componente ma non vedo messaggi di errore. Cosa posso fare? Qualcuno ha avuto problemi simili?
Grazie
Ciao,
avevo lo stesso problema.
Mi è bastato eliminare il device_class.
Poi non ho avuto tempo di vedere perchè non andava con il device_class impostato e l’ho lasciato così.
Quindi per ricapitolare, per prima cosa fai fare lo scouting delle luci con l’account.
Dopo basta scrivere il device id e l’apikey e commentare l’account ewelink.
Il mio è così:
sonoff:
# username: !secret
# password: !secret
# reload: always
devices:
1000abc08:
devicekey: Device_Apikey
se usi i devicekey devi commentare (#) le lineee username, password e reload altrimenti andrà sempre li a vedere e poi devi eliminare il file sonoff.json.
ecco un esempio di un ch4 pro r2
#username: il-tuo-username
#password: la-tua-password
#reload: always
# attivazione via devicekey (eliminare il file sonoff.json)
devices:
1000737a71: # 4ch caldaia
devicekey: xxxxxxx-yyyy-zzzz-wwwwwwwww
device_class:
– switch # notte
– switch # giorno
– switch # terra
– switch #bagni
Buongiorno,
Ho visto questa parte:
devices:
1000abcdefg:
device_class: light
È possibile assegnare light a ch1 e switch a ch2?
Se si: qual’è il codice?
Grazie
Daniele