luni, 3 iulie 2017

Programare Sonoff cu ESPeasy pentru lucrul cu Domoticz

Un impediment in calea automatizarilor este partea de hardware, fie nu poate fi realizata din cauza lipsei experientei, fie din cauza lipsei de timp etc. In articolele anterioare am scris despre ESP8266 - un microcontroler ieftin cu WiFi incorporat.

Sunt tot felul de placi cu ESP8266, Wemos, NodeMCU, ESP01..12 etc. Toate permit diverse incercari, insa nu poti face ceva fiabil cu fire de test si breadboard, ar trebui macar pus pe un cablaj de test, o lipitura cu cositor este mult mai fiabila decat un fir infipt intr-un soclu.

Automatizarile au puncte relativ comune, de aceea putem folosi diverse module gata construite care au ESP8266 si un releu, un senzor, un buton etc.

O varianta ieftina vine de la itead.cc : dispozitivele Sonoff. Sunt "cutii" in care gasim o placa electronica cu ESP8266 si cu un releu, un LED, conector pt senzor temperatura si umiditate etc. Pretul este foarte bun, verificati pagina itead.cc.




Ca sa folosesti Sonoff direct, fara modificari, iti faci cont la ei pe site, iti instalezi pe smartphone aplicatia eWeLink, instalezi cutia Sonoff acasa si prin reteaua WiFi vei avea Internet of Things in cateva minute.

Dar nu despre asta doresc sa scriu aici, ci depsre cum folosim aceste dispozitive Sonoff pe propria noastra infrastructura IoT. Am instalat Domoticz pe un Raspberry Pi, am aplicatia Domoticz pe smartphone.




Aplcatii Internet of Things: dorim sa pornim sau sa oprim clima de pe smartphone, dorim sa stingem sau sa aprindem un bec, dorim aceste actiuni sa se petreaca atunci cand avem indeplinite niste conditii etc. Ne lipseste exact partea hardware, dar folosim aceste dispozitive Sonoff. Insa trebuie sa le programam cu ceva ce controlam noi: ESPeasy.

Dam jos ESPtool de la ESPeasy (pe pagina https://www.letscontrolit.com/wiki/index.php/ESPEasy#Loading_firmware gasim "Loading firmware" -> http://www.letscontrolit.com/downloads/ESPEasy_R120.zip).



Deschidem carcasa Sonoff (aici vorbim de cel mai simplu model, cel cu un releu, buton si un LED), lipim un header cu 5 pini.






Programarea o facem fara sa conectam la 220Vac Sonoff, mare atentie!!! Va puteti praji pe voi, calculatorul etc.

Headerul cu 5 pini de la Sonoff are semnalele indicate intr-una din imaginile de mai sus.

Conectam la calculator un convertor USB - serial, cel pt semnale de 3V3 (ESP8266 foloseste logica la 3V3, nu la 5V). Daca e posibil, alimentam 3V3 din cenvertor, daca nu, alimentam 3V3 de la o sursa externa. Daca e alimentat corect, LEDul verde clipeste.

Deci Sonoff este conectat pe serial la calculator si Sonoff este alimentat extern cu 3V3 (3V3 si GND).

Rx de la Sonoff merge la Tx de la convertorul USB - serial, Tx de la Sonoff merge la Rx de la convertor.

Mai trebuie sa punem Sonoff in modul de programat memoria flash, pt asta eu am folosit o penseta ca sa conectez pinul de la dioda cu pinul de la rezistor. (pui virfurile pensetei pe acele 2 puncte si tii acolo, apoi conectezi alimentarea de 3V3 la Sonoff). Poti de asemenea sa lipesti un fir intre cele 2 puncte.





Pe calculator gasesti ce port a fost alocat convertorului USB - serial, apoi deschizi aplicatia ESPtool , cu aceasta aplaicatie vom programa ESPeasy in ESP8266. Aplicatia doreste sa stie portul serial alocat (la mine a fost 10 (de la COM10)), dimensiunea memoriei flash (Sonoff are 1024), versiunea ESPeasy (in cazul meu 120 (de la R120)).












Daca apar erori la programare, e posibil ca Rx si Tx sa fie inversate, dupa legatura corecta, trebuie sa mearga. In timpul programarii, trebuie tinuta penseta pe cele 2 puncte de pe placa. Un modul Sonoff nou cand este alimentat, are LEDul verde clipitor, cand este in modul de programare, acel LED nu mai clipeste!



Programarea dureaza aproximativ un minut, nu uitati sa tineti penseta intre cele 2 puncte! Dupa programare, deconectam cablurile de la Sonoff, apoi bagam placa la loc in carcasa, inchidem carcasa.

Dupa programarea Sonoff cu ESPeasy, legam la cutia Sonoff un cablu izolat cu stecher de priza de 220Vac.
Pe carcasa Sonoff avem marcate faza si nulul, eu am marcat faza si nulul si pe stecher, apoi am verificat in priza care e faza si nulul si am bagat stecherul respectand aceste marcaje.






Am bagat cablul in priza, nu a iesit fum din cutia Sonoff :)




Pe calculator, cautam printre retelele WiFi un SSID "ESP_0", ne conectam la el, parola WiFi este configesp.



Apoi in browser, mergem la 192.168.4.1.



Se deschide o interfata web unde specificam SSIDul si parola retelei noastre WiFi, ca sa permitem Sonoff sa se conecteze la aceasta. Dupa care Sonoff primeste un IP din reteaua noastra, ne conectam la reteaua WiFi de acasa, apoi la noul IP si incepem sa configuram ESPeasy de pe Sonoff.



Pe Sonoff basic, cel mai simplu si cel mai ieftin model, avem urmatoarele GPIOuri la dispozitia noastra, trebuie sa tinem seama cand setam ESPeasy:

GPIO13 - aici este conectat LEDul verde, semnal logic LOW il aprinde

GPIO12 - aici avem legat releul, semnal logic HIGH il anclaseaza

GPIO0 - aici avem legat butonul, cand il apasam, generam un semnal logic LOW

GPIO14 -aici nu avem conectat nimic, gasim acest GPIO liber, pe conectorul header de 5 pini (cel lipit de noi)

 

(Schema cutiei Sonoff simplu: https://www.itead.cc/wiki/images/6/6b/Sonoff_schmatic.pdf)

Domoticz, ESP8266 si ESPeasy permit sa facem o sumedenie de automatizari prin casa, tine de nevoile si imaginatia fiecaruia. Detalii gasiti pe Internet, nu detaliez aici.