Sonoff Basic

Modyfikacja przekaźnika Sonoff Basic

Sonoff Basic to bezprzewodowy przekaźnik działający na niezwykle popularnym układzie ESP8266. Oficjalne oprogramowanie jest bardzo ograniczone. W sieci jest wiele informacji na temat tego przekaźnika oraz jego modyfikacji. Modyfikacja polega na wgraniu nowego firmware. Zmienia ulega praktycznie wszystko, nie musimy używać dedykowanej aplikacji, która wymaga rejestracji (sic!). Dostajemy prosty w zarządzeniu interfejs webowy w języku polskim oraz co najważniejsze komunikacje za pomocą komunikatów MQTT i HTTP. Dodatkowo jest możliwość wykorzystania wolnym wyprowadzeń GPIO do podłączenia czujnika temperatury na 1-Wire (DS18b20) lub I2C. Projekt znajduje się na githubie.

Po zdjęciu obudowy widzimy PCB.

Płytka po zdjęciu obudowy

Płytka po zdjęciu obudowy

W celu przeprogramowania trzeba wlutować listwę 1×5 i podłączyć konwerter USB-UART na 3.3V.  Jak na poniższym zdjęciu tj. 3.3V, RX, TX oraz GND.

Zdjęcie pochodzi ze strony http://tinkerman.cat

Na początku pobieramy najnowszy firmware w języku polskim ze strony https://github.com/arendst/Sonoff-Tasmota/releases. Plik nazywa się sonoff-PL.bin. Aplikacja do zaprogramowania nazywa się esptool.py i jak sama nazwa wskazuje napisana jest w Pythonie. W systemie Linuks ten język programowania jest instalowany standardowo w przypadku Windows trzeba go zainstalować we własnym zakresie, o czym niżej. Częścią wspólną jest wejście w tryb programowania. Wchodzimy w niego trzymając przycisk i podłączamy konwerter TTL do komputera.

Linuks

Procedura wygląda następująco

  • Wchodzimy tryb programowania – (przytrzymujemy przycisk i podłączamy konwerter do USB komputera)
  • Kasujemy zawartośc pamięci
    esptool.py --port /dev/ttyUSB0 erase_flash
    
  • Odłączamy z zasilania razem z konwerterem
  • Ponownie wchodzimy w rym programowania
  • Wgrywamy frmware
esptool.py --port /dev/ttyUSB0 write_flash -fs 1MB -fm dout 0x0 sonoff-PL.bin

Windows

W Windows sprawa jest nieco skomplikowania. Trzeba pobrać i zainstalować Python‚a 2.7, zainstalować pyserial. Procedura wygląda bardzo podobnie z tą różnica, że port jest inny. Można go podejrzeć w Menadżerze Urządzeń.

 

Po wgraniu firmware możemy podłączyć pod zasilanie sieciowe 230V i ustawić przekaźnik przez wciśnięcie szybko 4 razy przycisku. Pojawi się tymczasowa się WiFi z która należy się połączyć i ustawić docelową (domową) sieć WiFi.

Urządzenie jest tak świetne, że zamówiłem kolejne sztuki i są dostępne u mnie w sklepie internetowy. Wkrótce opiszę jak korzystać z nich w środowisku Node-RED !

Posted in hacking and tagged , , , , , .

Artur Wronowski

Właściciel firmy digi-led. Od młodych lat jego pasją jest elektronika, informatyka i programowanie(Python).