Disclaimer

Prestare sempre attenzione a seguire le indicazioni fornite in questo blog, soprattutto se si tratta di apparecchiature elettriche collegate alla tensione di 220V. Non mi ritengo responsabile di danni causati dall'aver seguito i consigli qui pubblicati.
Grazie

mercoledì 26 luglio 2017

Home Automation System - Configuriamo il SONOFF con Tasmota




Sono finalmente pronto a fare il primo test del firmware TASMOTA, appena caricato sul mio SONOFF POW.

La procedura di aggiornamento del firmware, descritta sommariamente nel post precedente (http://domoticaduino.blogspot.it/2017/07/home-automation-system-e-arrivato-il.html), è andata a buon fine...Da questo punto in poi non si torna più indietro...posso dire addio al firmware originale e all'applicazione EWeLink...

...speriamo solo che il SONOFF si accenda :)

Collego il tutto, facendo bene attenzione .. ci sono 220V che mi aspettano ansiosi...

Lo schema dei collegamenti è questo (direttamente dal sito ufficiale...)


Per fare la prova, prendo una spina e collego i tre fili agli ingressi del SONOFF, sezione INPUT (L = Fase, N = Neutro, E = Terra). Adesso bisogna cercare un carico (magari di potenza nota, per verificare, oltre il funzionamento dello switch, anche l'indicazione dell'assorbimento ed effettuare un'eventuale taratura). Prendo un vecchio portalampada e lo collego ai terminali di OUTPUT del sonoff. Avvito una lampadina ad incandescenza da 100W ed il gioco è fatto.




Collego la presa e il SONOFF prende vita...lampeggia il led blu e poi tutto spento...speriamo bene...

La prima cosa da fare è configurare i parametri di connessione al WIFI di casa; se dovesse interessare a qualcuno, esiste una procedura che permette di "cablare" questi dati in un file di configurazione presente nei sorgenti del software, prima della loro compilazione e upload sul dispositivo; io ho preferito seguire la procedura standard (che a breve vi scrivo), ma per chi fosse interessato, può trovare la procedura dettagliata qui https://github.com/arendst/Sonoff-Tasmota/wiki/Upload#preliminary-configuration. In questo modo alla prima accensione il SONOFF è in grado di agganciarsi alla rete senza ulteriori configurazioni (chiaramente i parametri inseriti devono essere corretti...)

La procedura standard invece prevede l'utilizzo del pulsante del SONOFF per fare in modo che diventi un Access Point e sia raggiungibile da PC.

Seguendo questa guida


si scopre come utilizzare il pulsante al nostro scopo. In particolare la procedura "4 short presses", che permette di attivare l'access point e il web server integrati nel SONOFF per essere raggiungibile e configurabile. Premo quindi 4 volte velocemente il pulsante e tramite PC vedo che all'improvviso appare una nuova rete WiFi...SONOFF XXXX... Mi aggancio e apro la pagina di configurazione del SONOFF digitando http://192.168.4.1 in un browser...magicamente si apre il pannello di configurazione.

Inseriamo subito i dati relativi al WiFi, diamo un nome al dispositivo, salviamo e riavviamo.

Dopo qualche secondo, diventa visibile sulla rete di casa con un indirizzo ip assegnato dal mio DHCP interno...il dispositivo è comunque raggiungibile tramite nome.

Raggiungo di nuovo la pagina di configurazione, inserendo l'indirizzo ip (o il nome) nel browser e posso fare un primo test di funzionamento, utilizzando l'interfaccia WEB.

Ecco come appare



Click su Toggle SWITCH e magicamente la lampadina si accende e la pagina indica il consumo di potenza...riclick e la lampadina si spegne...direi che funziona tutto come previsto, ottimo!





Nella documentazione, viene indicata una procedura di calibrazione per garantire una corretta lettura dei valori di potenza...la trovate qui

https://github.com/arendst/Sonoff-Tasmota/wiki/Sonoff-Pow#calibration

Io l'ho seguita ma ho dovuto fare pochi ritocchi...

Direi che per adesso posso ritenermi soddisfatto...tutto funziona come previsto...

Il prossimo step sarà quello di abilitare e configurare il protocollo MQTT, per controllare ed interrogare il dispositivo in maniera più evoluta.

domenica 23 luglio 2017

Home Automation System - E' arrivato il primo SONOFF - Aggiornamento Firmware




Signore e signori, vi presento il primo SONOFF arrivato a casa: il SONOFF POW



Dopo aver fatto un veloce test con l'app EWeLink e appurato che il dispositivo è funzionante, mi preparo per il caricamento del firmware TASMOTA, in modo da "liberare" tutte le potenzialità del SONOFF, in particolare l'interfacciamento tramite protocollo MQTT.

Mi faccio prestare il convertitore 3.3V USB - Seriale da Piero perchè il mio non è ancora arrivato...

Eccolo, identico a quello che mi deve arrivare...la cosa importante da verificare è che il jumper presente vicino ai pin di interfaccia seriale sia posizionato per i 3.3V e non per i 5V (questa schedina può lavorare in entrambe le modalità)


Visito il sito https://github.com/arendst/Sonoff-Tasmota/wiki e seguo la procedura STEP by STEP, non dopo aver scaricato il pacchetto software da GitHub.

Ho scelto di utilizzare l'IDE di Arduino per caricare il firmware e quindi seguo gli step di configurazione nella sezione "Arduino IDE Preparation" del menù "Prerequisite" del Wiki (https://github.com/arendst/Sonoff-Tasmota/wiki/Prerequisite#arduino-ide-preparation)

A questo punto bisogna connettere l'interfaccia USB - Seriale al Sonoff, che va quindi tolto dal suo case di plastica. Saldo i 4 pin dell'interfaccia seriale, che nel SONOFF POW sono presenti al fondo della scheda, dalla parte del pulsante.

Vedi Hardware Preparation


Bisogna prestare attenzione a collegare correttamente i pin presenti sul SONOFF con i pin presenti sul convertitore USB - Seriale...

VCC -> VCC
TX -> RX
RX -> TX
GND -> GND

Utilizzo un connettore colorato (anche questo prestato da Piero...) che mappa correttamente i collegamenti tra scheda ed interfaccia...



Con un cavo MicroUSB - USB collego l'interfaccia al PC e installo i driver scaricati dal sito FTDI. Riavvio quindi il SONOFF in modalità "programmazione", tenendo premuto il pulsante superiore mentre collego l'USB al PC per alimentarlo.

Mentre si effettuano queste operazioni (e tutte le volte che è connessa la seriale), il SONOFF non deve essere assolutamente collegato alla 220V

Se tutto è andato bene, il dispositivo è pronto per il caricamento del firmware.

Utilizzando l'IDE di Arduino, correttamente configurato, in qualche minuto si carica il firmware nel dispositivo (vedi Upload). Attendiamo che l'IDE compili e trasmetta il software e poi possiamo scollegare l'interfaccia seriale.

Siamo pronti per verificare che sia andato tutto a buon fine.

sabato 22 luglio 2017

Home Automation System - La scoperta dei Sonoff




L'attesa di questi mesi di assenza non è stata vana in quanto, grazie alla "soffiata" del sempre presente Piero, ho scoperto l'esistenza di questi piccoli dispositivi: i SONOFF, prodotti dalla iTead https://www.itead.cc/smart-home.html

In parole molto semplici sono dei relays pilotabili in wifi che permettono di automatizzare l'impianto elettrico senza effettuare "lavori invasivi" e soprattutto a basso costo...infatti uno switch semplice lo porti a casa con meno di 5 euro!

I prodotti per me più interessanti per iniziare a "fare delle pensate" sono questi:

Sonoff Basic: uno switch standard per pilotare un carico - https://www.itead.cc/smart-home/sonoff-wifi-wireless-switch.html



Sonoff Pow: uno switch standard per pilotare un carico, con misuratore di potenza integrato - https://www.itead.cc/smart-home/sonoff-pow.html


Li ho acquistato su eBay per fare le prime prove.

Di default questi dispositivi sono facilmente configurabili e praticamente pronti all'uso, non appena collegati all'impianto. Il firmware che hanno a bordo consente il controllo tramite un applicativo per smartphone e tablet (sia iOS che Android) chiamato EWeLink. Alla prima accensione vi è una procedura guidata che permette di agganciare il dispositivo alla rete Wifi di casa (chiaramente necessaria...), previa registrazione di un account. Non appena il dispositivo riesce a connettersi ad internet, l'app EWeLink lo rileva e lo controlla. il dispositivo risulterà controllabile anche da fuori casa, attraverso internet, in quanto tutta la comunicazione avviene con un server remoto, appoggiato su Amazon AWS server.

Qui una semplice guida https://www.itead.cc/wiki/EWeLink_Introduction

Per un primo utilizzo questa modalità è molto semplice e rapida, e non c'è bisogno di avere competenze tecniche; c'è però da dire che in caso manchi il collegamento internet a casa, il tutto smette di funzionare, perchè sia il dispositivo che l'app comunicano tramite un server esterno e quindi necessitano entrambi di internet.

Inoltre in caso si vogliano sfruttare meglio tutte le potenzialità di questo dispositivo, il firmware standard è troppo limitante perchè è un sistema chiuso. Ad esempio, non è possibile l'integrazione con gli Home Automation System (ad esempio OpenHAB o Domoticz), i software che permettono di crearsi un vero e proprio sistema di automazione per il controllo di tutti i dispositivi SMART (televisori, climatizzatori, luci, antifurti, etc etc).

La prima cosa che ho fatto quindi è stata cercare su internet se e come era possibile interagire con questo dispositivo senza la necessità di essere vincolati all'accesso ad internet e all'utilizzo dell'app EWeLink. E' bastato cercare su Google le parole "Sonoff firmware" e si è aperto un mondo...

Per farla breve, essendo il Sonoff un dispositivo basato sul famoso chip ESP 8266, risulta facilmente riprogrammabile (come una scheda Arduino) e sono reperibili gratuitamente numerosi firmware custom: si sceglie in base alle proprie esigenze.

Tra le varie scelte, ho optato per questo:

Sonoff-Tasmota firmware: https://github.com/arendst/Sonoff-Tasmota

Mi è sembrato il più completo, almeno per quanto riguarda i miei obiettivi...permette il controllo del dispositivo tramite MQTT, Web e Comunicazione seriale.

Vi rimando al wiki ufficiale per verificare direttamente tutte le possibilità di controllo, implementative e di integrazione con altri sistemi

https://github.com/arendst/Sonoff-Tasmota/wiki

Per info riguardo MQTT, vi invito ad andare a vedere il sito ufficiale: http://mqtt.org. Per chi non lo conoscesse ed è interessato all'IoT, ne consiglio la conoscenza e il suo eventuale utilizzo.


In due parole, MQTT è un protocollo molto leggero basato su scambio di messaggi inerenti l'Internet of Thing (IoT). Lo scambio di messaggi si basa sui concetti di pubblicazione e sottoscrizione. Esiste un server centrale, chiamato broker, che riceve i messaggi pubblicati (publishing) e li smista alle entità interessate (subscription). Ogni messaggio viene inviato in relazione ad un "topic"; solo le entità che hanno sottoscritto (quindi sono interessati...) un particolare topic ne riceveranno i messaggi.

Questo complica leggermente l'architettura del sistema perchè è necessario configurare e gestire un altro servizio, il broker MQTT. Niente paura, è tutto molto semplice e il nostro Raspberry PI è in grado di "sopportare" anche questo servizio (il più famoso è Mosquitto https://mosquitto.org) ... altrimenti ci si può appoggiare (solo per TEST, non consigliato per applicazioni di Home Automation) a broker pubblici esterni (basta cercare su internet...)

Scelto il firmware tra quelli disponibili e compatibili con il nostro dispositivo, non rimane altro che caricarlo sul chip.

ATTENZIONE, non sarà più possibile tornare al firmware originale di iTead, quindi si perde definitivamente l'utilizzo dell'app EWeLink

Il caricamento del firmware sul dispositivo avviene utilizzando la porta seriale del Sonoff. Sarà necessario trovarla sulla scheda del dispositivo (di solito nella documentazione del firmware scelto c'è la guida dettagliata...), saldare dei contatti e utilizzare un convertitore USB - Seriale che lavora con 3.3V (attenzione che ce ne sono da 5V e non funzionano per il nostro scopo). Io ne ho comprato uno della FTDI per poco più di due euro su banggood. La procedura di caricamento del firmware avviene tramite l'IDE di Arduino, opportunamente configurata oppure tramite PlatformIO, basta seguire la guida che di solito accompagna il firmware selezionato

Prima abbiamo parlato di Home Automation System. Vi indico i tre che ho provato, prima di effettuare la scelta definitiva:









Home Assistant - https://home-assistant.io



Ne esistono sicuramente tanti altri...a voi la scelta.

Sono tutti sistemi gratuiti e possono girare anche su mini computer, come ad esempio il famoso Raspberry PI (v.2 o 3). Su internet ci sono tantissime guide per l'installazione e la configurazione su tutti i sistemi operativi...

Sono tutti e tre molto validi, completi e, chi più, chi meno, facilmente configurabili (sono però necessarie delle competenze tecniche per sfruttarli al meglio).

Alla fine la mia scelta è ricaduta su OpenHAB versione 2, che ad un primo approccio, mi è sembrato il più versatile; potrei anche sbagliarmi, perchè non ho approfondito bene tutte le caratteristiche e le possibilità di tutti e tre...lavoro "impossibile" da fare in poco tempo; mi fido del mio intuito!!!

A breve i risultati delle prime prove effettuate con i SONOFF