Vai al contenuto
Home » Domotica Fai da te » Raspberry Pi » Sonoff eWeLink Home Assistant: guida completa in italiano

Sonoff eWeLink Home Assistant: guida completa in italiano

    Sonoff eWeLink Home Assistant: guida completa in italiano

    Vi siete appassionati all'utilizzo di Home Assistant e volete gestire anche i vostri dispositivi smart Sonoff compatibili eWeLink? Scopri i vantaggi e come fare ad avere i Sonoff su Home Asssistant nella mia guida completa in italiano.

    Gestione dei dispositivi Sonoff

    Sonoff è sicuramente uno dei marchi più popolari di dispositivi intelligenti per la domotica fai da te a basso costo. Nella vasta gamma di prodotti dell'azienda cinese ITead potete trovare soluzioni smart con connettività WiFi, Zigbee e radio:

    • interruttori smart e misuratori di consumi elettrici
    • sensori intelligenti di temperatura, umidità, movimento e contatto
    • lampadine e strisce LED
    • pannelli touch di controllo
    • telecamere WiFi

    Per approfondire puoi leggere tutti i miei articoli su Sonoff.

    Tutti i dispositivi Sonoff sono dotati di firmware compatibile con la piattaforma eWeLink, dell'azienda cinese CoolKit, che consente la gestione remota dei device nelle modalità seguenti:

    • app eWeLink per smartphone Android e iOS
    • comandi vocali mediante assistenti intelligenti Alexa e Google Home
    • browser mediante la versione web di eWeLink
    Piattaforma eWeLink: app, assistenti vocali, web
    Piattaforma eWeLink: app, assistenti vocali, web

    Per comprendere meglio l'architettura tecnica sottostante ad un sistema di domotica Sonoff eWeLink, possiamo rappresentare i flussi di comunicazione che intervengono tra i vari componenti:

    Architettura di funzionamento Sonoff eWeLink
    Architettura di funzionamento Sonoff eWeLink

    Come si intuisce dallo schema, oltre ai dispositivi intelligenti Sonoff veri e propri, ci sono diversi elementi chiave per il corretto funzionamento del sistema:

    • disponibilità e performance dei servizi cloud eWeLink
    • connettività internet e router WiFi della nostra abitazione
    • disponibilità dell'hub gateway Zigbee per i dispositivi Sonoff con tale tipologia di connettività

    Come si intuisce abbastanza facilmente potrebbe bastare l'indisponibilità, anche solo temporanea, della nostra connessione ad internet o dei servizi cloud eWeLink perché i nostri dispositivi smart Sonoff non siano più gestibili appieno e possano interagire tra di loro mediante scenari di automazione. Scenario alquanto fastidioso nel caso il problema si protragga per molte ore. Leggi anche il mio articolo su Sonoff non in linea.

    Per approfondire puoi leggere anche i miei articoli su eWeLink.

    Sicuramente l'utilizzo della piattaforma CoolKit eWeLink è sufficiente per la stragrande maggioranza degli utilizzatori "ordinari" ma pone sicuramente qualche vincolo nella modalità di gestione di un sistema di domotica Sonoff:

    • disponibilità, performance e sicurezza connessione internet domestica e servizi cloud eWeLink
    • impossibilità di collezione e visualizzazione dei dati misurati dai sensori ed i loro trend
    • assenza di strumenti di gestione universali e compatibili con altre soluzioni di domotica (Shelly, Tuya Smart Life, Philips Hue, Netatmo, etc)

    Alcune delle soluzioni alternative più popolari sono valide ma non riescono a superare tutti i vincoli precedenti:

    • Alexa, Google Home ed IFTTT che permettono di integrare sistemi di domotica eterogenei tramite i servizi in cloud eWeLink ma non hanno strumenti di gestione avanzate o raccolta dati
    • Tasmota: firmware alternativo che consente la gestione totalmente tramite rete locale dei dispositivi Sonoff ma è carente sotto tutti gli altri aspetti; leggi eventualmente il mio articolo su Sonoff + Tasmosta

    Per fortuna ci vengono messere a disposizione delle modalità di gestione ed integrazione alternative che potrebbero far al caso nostro:

    • La piattaforma CoolKit eWeLink espone della API pubbliche per poter integrare applicazioni di terze parti tramite servizi in cloud
    • I prodotti ITead di ultima generazione prevedono la modalità Sonoff DIY, ovvero delle API locali che consentono di gestire il dispositivo da un'applicazione terza direttamente tramite la rete locale, senza uso del cloud

    Tutto questo ha reso possibile l'integrazione e la gestione dei dispositivi Sonoff, ed in generale quelli compatibili eWeLink, con la più popolare piattaforma di domotica universale fai da te: Home Assistant.

    Mettendo insieme tutti questi concetti otteniamo il diagramma di funzionamento seguente in cui ai flussi di comunicazione di base tra app/web eWeLink ed Alexa/Google Home esclusivamente tramite i servizi cloud eWeLink via internet, si affiancano i nuovi flussi (in verde) tra Home Assistant, dispositivi Sonoff e servizi cloud eWeLink:

    • il server che ospita Home Assistant può comunicare direttamente con i dispositivi Sonoff tramite rete locale LAN / WiFi e le API Sonoff DIY
    • in alternativa il server Home Assistant può comunque gestire i dispositivi Sonoff tramite la connessione internet ed i servizi cloud eWeLink
    Architettura di funzionamento Home Assistant, Sonoff, eWeLink
    Architettura di funzionamento Home Assistant, Sonoff, eWeLink

    Per realizzare in pratica tutto questo, senza dover fare modifiche complicate e rischiose di firmware come quelle di Tasmota, abbiamo due principali soluzioni possibili:

    Approfondiamole nel dettaglio, senza scordarci di eventuali effetti dovuti all'utilizzo contemporaneo delle medesime credenziali eWeLink da due canali di accesso differenti (smartphone con app e server Home Assistant).

    Anticipo comunque che la mia raccomandazione, se volete gestire i Sonoff con Home Assistant, è assolutamente di andare verso SonoffLAN per quanto non sia una integrazione ufficiale.

    Nel caso abbiate dispositivi in diverse abitazioni potrebbe avere senso valutare HASS-sonoff-ewelink.

    SonoffLAN per Home Assistant

    SonoffLAN è un custom component davvero molto popolare, per quanto non ufficialmente rilasciato da ITead o CoolKit, che consente di integrare i dispositivi Sonoff con Home Assistant tramite rete locale e cloud anche contemporaneamente.

    Questa possibilità offre la massima flessibilità nella configurazione portandosi a casa i benefici e superando le limitazioni di una soluzione solo locale o solo cloud:

    • in caso di problemi alla nostra connessione internet o ai servizi in cloud CoolKit eWeLink continuerete a gestire i dispositivi Sonoff su Home Assistant tramite rete locale
    • se dovesse esserci qualche inconveniente sulla rete locale potrete comunque gestire i dispositivi Sonoff in Home Assistant tramite i servizi cloud CoolKit eWeLink
    Home Assistant e Sonoff gestione in locale
    Home Assistant e Sonoff gestione in locale

    Ricorderei ancora che, oltre alla resilienza rispetto a connettività internet e cloud eWeLink, vi porterete a casa anche tutti gli altri benefici della gestione dei dispositivi Sonoff in Home Assistant:

    • integrazione con dispositivi di altre piattaforme nell'ambiente unificato di Home Assistant
    • funzioni avanzate di logging, monitoraggio ed archiviazione dei dati di Home Assistant

    Installazione SonoffLAN su Home Assistant

    Per l'installazione di SonoffLAN, essendo un custom component di Home Assistant, la soluzione di gran lunga più semplice è utilizzare HACS.

    Se non avessi ancora a disposizione HACS, leggi la mia guida per installare HACS su Home Assistant.

    Selezionate HACS dal menù di sinistra di Home Assistant e poi Integrazioni:

    Sonoff eWeLink Home Assistant
    Sonoff eWeLink Home Assistant

    A questo punto ricercate Sonoff sul repository delle integrazioni personalizzate HACS e confermate il download:

    Sonoff eWeLink Home Assistant
    Sonoff eWeLink Home Assistant

    Selezionate la versione di SonoffLAN che volete installare e procedete:

    Sonoff eWeLink Home Assistant
    Sonoff eWeLink Home Assistant

    Eseguite riavvio di Home Assistant per avere l'integrazione personalizzata SonoffLAN finalmente attiva:

    Sonoff eWeLink Home Assistant

    Modalità di configurazione SonoffLAN

    Come visto in precedenza, SonoffLAN è molto flessibile nella possibilità di configurare la gestione dei dispositivi Sonoff in Home Assistant sia tramite rete locale che cloud.

    Le modalità di configurazione possibili sono le seguenti:

    • cloud + locale
    • locale
    • cloud

    La sezione di configurazione relativa a SonoffLAN deve essere inserite all'interno del file configuration.yaml di Home Assistant. Ricordo che nel caso di Home Assistant Core su Raspberry Pi lo si trova nel percorso /home/homeassistant/.homeassistant/configuration.yaml.

    Una volta convalidata la configurazione, riavviate il server Home Assistant per applicarla.

    All'inizio suggerisco di monitorare il file di log di Home Assistant per controllare la presenza di eventuali errori di SonoffLAN:

    tail -100f /home/homeassistant/.homeassistant/home-assistant.log | grep ERROR
    

    Questo è ad esempio l'errore nel caso in cui abbiate sbagliato la password del profilo eWeLink nella configurazione di SonoffLAN:

    2022-02-16 14:29:29 ERROR (MainThread) [custom_components.sonoff.sonoff_cloud] Login error: {'error': 401, 'msg': 'pwd err'}

    Modalità locale + cloud

    E' la modalità predefinita adatta alla maggior parte delle esigenze.

    Per i dispositivi Sonoff con versione firmware ≥ 3.0 le gestioni funzionano contemporaneamente, in tutti gli altri casi solo la modalità cloud.

    Nel file di configurazione occorrerà solo specificare le credenziali del proprio profilo eWeLink:

    sonoff:
      username: indirizzo_email / numero_cellulare
      password: password_personale

    Modalità locale

    Ci sono tre opzioni a seconda del vostro eventuale grado di insofferenza verso la connessione internet ed i servizi in cloud CoolKit eWeLink:

    • lettura della configurazione dispositivi dal cloud eWeLink (solo al riavvio di Home Assistant)
    sonoff:
      username: indirizzo_email / numero_cellulare
      password: password_personale
      mode: local
      reload: always
    • configurazione automatica ricercando direttamente i dispositivi in rete (solo se supportano la modalità DIY)
    sonoff:
    • configurazione manuale dispositivi (dovrete recuperare la chiave collegandovi all'access point WiFi creato dal dispositivo in modalità accoppiamento)
    sonoff:
      devices:
        1000abcdefg:
          devicekey: f9765c85-463a-4623-9cbe-8d59266cb2e4

    Ovviamente lo scenario più pratico in modalità solo locale è comunque quello della lettura della configurazione di SonoffLAN dal cloud eWeLink.

    Modalità cloud

    Riporto solamente per completezza questo scenario di funzionamento sostanzialmente inutile a meno che non abbiate solo dispositivi con firmware obsoleto.

    sonoff:
      username: indirizzo_email / numero_cellulare
      password: password_personale
      mode: cloud

    Interrutori smart con sensori

    I dispositivi Sonoff che nascono come sensori vengono riconosciuti automaticamente come entità di quel tipo in Home Assistant:

    Sensori Sonoff in Home Assistant
    Sensori Sonoff in Home Assistant

    Esistono però altri device che svolgono principalmente la funzione di interruttore smart ma che sono anche dotati di sensori di potenza elettrica, temperatura o umidità, come ad ad esempio Sonoff Pow R2, Sonoff TH16 o Sonoff NSPanel).

    In questo secondo caso, con la configurazione predefinita, vengono create su Home Assistant esclusivamente le entità corrispondenti ai contatti dell'interruttore e non ai sensori comunque presenti nel dispositivo Sonoff.

    Per fare in modo che accada occorre aggiungere nella sezione di configurazione di Home Assistant relativa a SonoffLAN l'elenco delle tipologie di attributi per le quali vogliamo vengano create automaticamente le entità sensori, come in questo esempio:

    sonoff:
      sensors: [temperature, humidity, power, current, voltage]

    Dopo aver applicato la configurazione l'elenco dei sensori Sonoff in Home Assistant diventa decisamente più corposo:

    Sensori Sonoff in Home Assistant
    Sensori Sonoff in Home Assistant

    E' anche possibile forzare la frequenza con la quale Home Assistant interroga i dispositivi Sonoff dotati di sensore per aggiornare le entità relative alle misure:

    sonoff:
      force_update: [temperature, power]
      scan_interval: '00:05:00'  # (optional) default 5 minutes

    Non serve specificare tutte le tipologie di attributi: saranno interrogati tutti i dispositivi che hanno almeno un attributo di quella tipologia.

    Gestione dispositivi Sonoff in Home Assistant

    Una volta applicata la configurazione cloud + locale, vi troverete senza sforzo alcuno in Home Assistant tutte le entità corrispondenti ai dispositivi Sonoff già associati al vostro profilo eWeLink.

    Questo è un esempio in cui ho creato su Home Assistant una vista contenente diverse schede, ciascuna corrispondente ad un dispositivo Sonoff, in cui ho organizzato le varie entità SonoffLAN:

    Vista Home Assistant con le entità Sonoff
    Vista Home Assistant con le entità Sonoff

    Nel funzionamento normale, potrete quindi gestire i dispositivi Sonoff, ciascuno a seconda della propria compatibilità, contemporaneamente da tutti i canali possibili:

    eWeLink App
    eWeLink App
    Alexa
    Alexa
    Google Home
    Google Home
    eWeLink Web
    eWeLink Web
    Home Assistant
    Home Assistant

    Spettacolari tutte queste possibilità, ma quale sarebbe il vantaggio concreto di avere tutte queste opzioni di controllo remoto a disposizione?

    Alexa e Google Home forniscono i comodi controlli vocali per il nostro lato più pigro.

    Ma in caso di malfunzionamento della connessione internet o dei servizi cloud il gioco potrebbe farsi davvero duro: rimarrebbero in partita solo l'app eWeLink da smartphone e tramite Home Assistant in grado di gestire i device Sonoff in modalità solo locale.

    Home Assistant e Sonoff gestione in locale
    Home Assistant e Sonoff gestione in locale

    Purtroppo le scene di eWeLink non funzionano in questa condizione: è Home Assistant a vincere perché è l'unico in grado di gestire l'automazione di dispositivi Sonoff differenti sulla stessa rete locale senza internet e senza cloud.

    Questo è un "semplice" esempio di automazione Home Assistant che, ha come trigger il cambio di stato del primo canale di uno Sonoff 4CH Pro R3 ed azione l'inversione di stato del primo canale di un Sonoff NSPanel:

    Automazione Sonoff Home Assistant
    Automazione Sonoff Home Assistant
    Automazione Sonoff Home Assistant
    Automazione Sonoff Home Assistant

    Sembra complesso ma col wizard di configurazione non è così da fantascienza farlo. Se avessimo realizzato manualmente questa automazione Sonoff in Home Assistant sarebbe stato qualcosa del genere (che direi avere lo stesso appeal dell'aglio per i vampiri):

    id: '1645026146654'
    alias: Nuova automazione
    description: ''
    trigger:
      - platform: state
        entity_id: switch.sonoff_1000328b15_1
    condition: []
    action:
      - service: switch.toggle
        data: {}
        target:
          entity_id: switch.sonoff_10013ccbbc_1
    mode: single

    Abbiamo finalmente un modo per far funzionare i nostri punti luce comandati da diversi Sonoff TX anche senza internet ed eWeLink grazie ad Home Assistant. Consentitemi la citazione "si può fare": e senza toccare il firmware!

    Automazione Sonoff con Home Assistant senza eWeLink: si può fare
    Automazione Sonoff con Home Assistant senza eWeLink: si può fare

    Ovviamente Home Assistant nasce per l'automazione ed è infinitamente potente rispetto all'esempio riportato: lo approfondiremo più in generale in altra sede.

    Storico e visualizzazione dati Sonoff in Home Assistant

    Tocchiamo l'ultimo fronte in cui Home Assistant fa la differenza rispetto agli strumenti nativi dati da eWeLink per Sonoff.

    Home Assistant è dotato del componente History, che tiene traccia di qualsiasi cosa sia accaduto sul sistema permettendo di accedere ai dati memorizzati su un database SQLite locale.

    Possiamo accedere a delle viste predefinite nella sezione Storico della console Home Assistant dove possiamo vedere l'andamento dello stato:

    Home Assistant History
    Home Assistant History

    Oppure delle temperature:

    Home Assistant History
    Home Assistant History

    Ma anche della tensione di rete:

    Home Assistant History
    Home Assistant History

    E' chi ha più sensori più ne metta!

    Anche in questo caso le potenzialità di Home Assistant sono davvero molte: integrando anche Grafana potremmo creare delle eccezionali visualizzazioni dati provenienti dalla nostra casa domotica. Ma sarà un'altra puntata.

    Direi proprio che è arrivato il momento di acquistare un bel Raspberry Pi dedicato alla domotica e segui le mie guide per installare Raspberry Pi OS ed installare Home Assistant su Raspberry Pi.

    Passiamo ora a vedere come utilizzare per gestire i Sonoff l'integrazione ufficiale Coolkit tra eWeLink ed Home Assistant.

    L'Add-On eWeLink Home Assistant ha le caratteristiche principali seguenti:

    • supporto di interruttori e prese compatibili eWeLink
    • supporto modalità Sonoff DIY
    • gestione prioritaria tramite rete locale e secondaria tramite cloud eWeLink
    • compatibile solo con Home Assistant OS

    Purtroppo non è possibile installare l'integrazione eWeLink su Home Assistant Core: ottimo motivo, insieme alla tipologia limitata di dispositivi supportati, per preferire di gran lunga SonffLAN.

    Per non fare pasticci suggerisco di non installare contemporaneamente su Home Asssistant l'integrazione ufficiale eWeLink e SonoffLAN.

    Il primo passo è quello di creare un token di accesso di lunga durata per consentire al componente eWeLink di interagire con le API locali del server Home Assistant.

    Per farlo accedete al Profilo dal menù di sinistra:

    Creazione token di accesso di lunga durata Home Assistant per eWeLink
    Creazione token di accesso di lunga durata Home Assistant per eWeLink

    Cliccando su Crea Token potrete immettere un nome che è raccomandato essere eWeLink_HA_AddOn:

    Creazione token di accesso di lunga durata Home Assistant per eWeLink
    Creazione token di accesso di lunga durata Home Assistant per eWeLink

    Copiate il token appena creato perché non sarà possibile accedervi altrimenti.

    Andate ora su Supervisor e poi sulla raccolta di Add-on e cliccate sull'icona in alto a destra e poi su Repository:

    Nella finestra che comparirà inserite il percorso del repository GitHub https://github.com/CoolKit-Technologies/ha-addon:

    Installazione Add-On eWeLink su Home Assistant OS
    Installazione Add-On eWeLink su Home Assistant OS

    Confermando e proseguendo, nell'elenco degli Add-On di Home Assistant comparirà ora eWeLink Smart Home:

    Installazione Add-On eWeLink su Home Assistant OS

    Selezionatelo e poi installatelo:

    Installazione Add-On eWeLink su Home Assistant OS

    Per completare l'installazione dell'Add-On eWeLink Smart Home su Home Assistant, dove essere effettuarne la configurazione utilizzando il token creato e salvato in precedenza:

    Installazione Add-On eWeLink su Home Assistant OS

    Potete ora finalmente avviare il componente:

    Installazione Add-On eWeLink su Home Assistant OS

    Accedendo all'interfaccia web del componente eWeLink potrete vedere e gestire i dispositivi presenti sulla rete locale:

    Gestione dispositivi Sonoff con Add-On eWeLink Home Assistant

    Se vi loggate con le vostre credenziali eWeLink potrete gestire tutti i dispostivi configurati:

    Gestione dispositivi Sonoff con Add-On eWeLink Home Assistant

    Sinceramente questa mi sembra la copia sbiadita di eWeLink Web: questo componente è ancora immaturo e raccomando assolutamente l'utilizzo di SonoffLAN.

    Mi auguro che CoolKit investa il tempo e le risorse necessarie a rendere eWeLink una integrazione per Home Assistant completa.

    Leggi tutti i miei articoli su Raspberry Pi ed eWeLink:

    Ultimo aggiornamento Amazon Affiliate 2022-07-03 at 15:17

    2 commenti su “Sonoff eWeLink Home Assistant: guida completa in italiano”

    1. Ciao, la tua recensione è veramente superlativa, ti faccio i miei complimenti.
      Ho acquistato da qualche giorno un Sonoff NSPanel e sto valutando il modo migliore per integrarlo nella mia domotica basata su Home Assistant. Ho visto diversi video che prevedono la modifica del Firmware usando ESPHome o tasmota, ma preferirei tenerlo così com'è.
      Ho provato ad utilizzare SonoffLAN di home assistant e funziona abbastanza bene.
      I due interruttori funzionano, la lettura della temperatura e dell'umidità anche, ma non c'è modo di impostare la temperatura del termostato, e io l'NSPanel l'ho acquistato principalmente per questo. Sai se c'è modo di impostare questo valore tramite Home Assistant?

    Lascia un commento

    Il tuo indirizzo email non sarà pubblicato.

    Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.

    La mia Casa Elettrica

    GRATIS
    VISUALIZZA