Jak flashować, podłączyć i obsłużyć przełączniki Shelly1 w Domoticzu.

Od jakiegoś czasu przełączniki Shelly cieszą się coraz większą popularnością. Na pewno nie bez znaczenia jest ich atrakcyjna cena ( aktualnie 9,90 Euro za wersję 1 ) oraz obietnica i nadzieja, że będą działały w Domoticzu czy HomeAssistant. W portfolio firmy są również przełączniki w wersji 2 obsługujące dodatkowo pomiar zużycia energii ( wersja 1 nie ma tej funkcjonalności ), ale ich cena ( choć nadal atrakcyjna ) to 19.90 Euro plus niewielkie koszty przesyłki. Do testów kupiłem wersję 1 i na niej się skupię.

Od razu zaznaczam, iż nie testowałem oryginalnego oprogramowania Shelly. Staram, się mieć wszystko w jednym Domoticzu, więc przeszedłem od razu do sedna. Sam proces flashowania jest oficjalnie wspierany. Niezbędne informacje można znaleźć na oficjalnej stronie.

shelly1_pinout-800x433.jpg

Zgodnie z zawartą tam informacją wewnątrz urządzenia znajduje się  2 megabajtowy ESP8266. Do całej procedury potrzebujemy adapter USB-UART ( ja wykorzystałem standardowy CP2102 ), płytkę stykową i garść przewodów. Bardzo przydatną informacją jest, że do flashowania nie musimy rozbierać urządzenia. Niezbędne piny wyprowadzone są na zewnątrz obudowy. Aby nie mordować się z podłączeniem proponuje skorzystać ze schematu, który znalazłem w sieci.

shellyuart.jpg

W momencie podania zasilania na urządzenie ( podłączenia adaptera do portu USB ) pin GPIO 0 i GND musza być zwarte ( stąd pomarańczowy mostek ). Pozostałe wyjścia podłączamy zgodnie ze schematem. Pamiętajmy o krzyżowym podłączeniu TX i RX.

Jako soft alternatywny wybrałem Tasmotę. Nic nie stoi na przeszkodzie aby użyć ESPEasy. Działa również doskonale. Jeżeli będą pytania w komentarzach chętnie pomogę, lub uaktualnię posta. Mam na razie jedno urządzenie i jest już w puszcze pod włącznikiem światła, więc musiałem się na coś zdecydować. Ściągamy więc aktualna wersję Tasmota. Do falshowania użyłem esptool. Dla odmiany poszedłem w konsolę i był to strzał w dziesiątkę. Wszystko poszło od strzału. Na początku instalujemy narzędzie:

sudo pip install esptool

U mnie na Ubuntu zainstalowało się w katalogu domowym w loklalizacji /.local/bin. Przechodzimy do rzeczonego katalogu. Przenosimy tam plik z oprogramowaniem sonoff-PL.bin i wydajemy polecenie:

sudo python esptool.py -p /dev/ttyUSB0 write_flash 0x000000 „sonoff-PL.bin”

I tyle. Jeżeli urządzenie zostało rozpoznane na porcie /dev/ttyUSB0 ( a mnie dzieje się tak w 100 % ) proces flashowania przebiega bez zakłóceń. Z jednym małym zastrzeżeniem. Shelly1 nie zadziała prawidłowo. Nie będziemy mieli możliwości sterowania nim przy pomocy włącznika światła, jedynie poprzez Domoticza. Tak być nie może. Okazuje się, że przyczyną takiego stanu rzeczy jest nieprawidłowe ustawienie stanu wysokiego na wyjściu SW. Nie wdając się w szczegóły, aby uruchomić przełącznik, należy edytować plik sonoff.ino i  użyć „input” pinmode zamiast „input_pullup” i przeprogramować oprogramowanie układowe. Brzmi trochę trudno, ale autor bloga TheHookUp na szczęście udostępnił zaktualizowaną binarkę. Najnowsze ESPEasy_mega ma możliwość zmiany tych ustawień z poziomu interface, ale nie zostało to przeze mnie przetestowane. Pobieramy więc zaktualizowaną wersję. Wydajemy jeszcze raz komendę:

sudo python esptool.py -p /dev/ttyUSB0 write_flash 0x000000 „shelly1tasmota.bin”

i mamy wgrana odpowiednią wersję Tasmoty. Przełącznik podpinamy do włącznika zgodnie ze schematem z oryginalnej instrukcji lub dla takich elektryków jak ja z drugiego schematu. Jeszcze raz dziękuję autorowi przytoczonego wcześniej bloga.

 

Następnie konfigurujemy Tasmotę. Logujemy się standardowo do naszej sieci jak było opisane w poście o Sonoff POW2. Ustawiamy odpowiednie wartości. Najważniejsza jest konfiguracja modułu.

FireShot Capture 20 - Sonoff - Configure Module - http___192.168.2.74_md_.png

oraz ustawienia MQTT ( odsyłam jeszcze raz do posta ). W Domoticz konfigurujemy ( jeżeli jeszcze nie mamy)  broker Mosquitto i zakładamy standardowy przełącznik. Zapamietujemy jego idx. Po tym ustawiamy MQTT.

FireShot Capture 21 - Sonoff - Configure MQTT - http___192.168.2.74_mq_.png

oraz integracje z Domoticzem w Tasmocie.

FireShot Capture 22 - Sonoff - Configure Domoticz - http___192.168.2.74_dm_.png

I tyle. Mamy obsługę Shelly 1 poprzez klawisz na ścianie i przełącznik w Domoticzu.

FireShot Capture 23 - Domoticz - http___192.168.2.214_9009_#_LightSwitches

Z uwagi na małe rozmiary Shelly wciśnięcie go do puszki jest bardzo łatwe choć tak nie wygląda. Oczywiście instalacja elektryczna musi mieć przewód neutralny N.

IMG_20181031_170714.jpg

Reasumując, jestem bardzo zadowolony z Shelly. Na razie nie potrzebuje monitoringu prądu więc zostanę przy wersji 1. W drodze są już kolejne. Przy tej cenie dodanie ich pod wszystkie włączniki światła w domu nie jest już tak dramatycznym wydatkiem.

PS. Jako, że na boku, od jakiegoś czasu dłubię też w Home Assistant, w którymś z kolejnych postów piszę jak się Shelly 1 sprawuje ( włącznie z innymi sonoffami ) w HA.

 

Xiaomi Aqara Smart Light Switch Wireless. Włącznik światła w Domoticzu.

Żarówki Yeelight, które bardzo dobrze się u mnie sprawują ( konfiguracje i integracje z Domoticzem opisałem tu ) mają jedną, podstawową wadę. Muszą być cały czas zasilane. Jeżeli są umieszczone w żyrandolu w salonie, trzeba cały czas uważać aby nie wyłączyć światła włącznikiem ściennym. Rozwiązaniem jest zastosowanie bezprzewodowego włącznika ściennego typu dzwonkowego. Oczywiście Xiaomi właśnie takie ma w ofercie. Przypadek ?

1502825220112444678.JPG

Ja kupiłem przycisk podwójny, trzyfunkcyjny. ( 1 przycisk, 2 przycisk i naciśnięcie obu ) . Jest to wersja WIFI, zasilana bateryjnie ( podobno czas działania baterii to 2 lata ). Instalacja jest bardzo prosta. Parujemy urządzenie z MiHome zgodnie z podpowiedziami w aplikacji ( podczas parowania naciskamy dłużej jeden z przycisków ). Następnie w aplikacji przypisujemy odpowiednie zdarzenia.

Przechodzimy do urządzenia głównego Getaway i sekcji Automation.

 

Sprawdzamy czy wszystko działa i przechodzimy do Domoticza. Najpierw musimy jednak przygotować instalacje. Ja postanowiłem odkręcić włącznik i na jego miejsce przykleić Xiaomi Aqara Smart Light Switch Wireless.

 

Aby żarówki były cały czas zasilane musimy połączyć kable w puszce. U mnie są trzy więc możliwości nie jest za dużo. Po tej czynności żarówka powinna świecić w sposób ciągły. Ukryłem przewody w puszce i nakleiłem ( przy pomocy dołączonej taśmy ) przełącznik.

img_20171118_111458.jpg

Tak wygląda na ścianie.

Jeżeli mamy już inne urządzenia Xiaomi w Domoticzu system wykryje go automatycznie. Jeżeli to dopiero początek pracy z czujnikami Xiaomi zachęcam do zapoznania się z wpisem Xiaomi Smart Home Starter Kit w Raspberry Pi i Domoticzu.

FireShot Capture 11 - Domoticz - http___192.168.2.81_9090_#_Devices

W Domoticzu dodajemy zdarzenia /Konfiguracja/Więcej opcji/Zdarzenia. U mnie jest tak:

Switch On – naciśnięcie lewego klawisza

FireShot Capture 12 - Domoticz - http___192.168.2.81_9090_#_Events

Switch Off

fireshot-capture-13-domoticz-http___192-168-2-81_9090__events.png

Dodajemy do pulpitu nasz włącznik zmieniając domyślne opisy wedle uznania.

FireShot Capture 14 - Domoticz - http___192.168.2.81_9090_#_LightSwitches.png

Po aktualizacji Poziomów wyboru i Nazwy włącznika zdarzenia nie uaktualnią się automatycznie. Trzeba zaktualizować utworzone zdarzenia.

Efekt końcowy jest bardzo przyjemny.FireShot Capture 16 - Domoticz - http___192.168.2.81_9090_#_Dashboard.png

Można już wyłączyć oddzielne sterowanie dla każdej z żarówek Yeelight robiąc trochę miejsca na pulpicie.

FireShot Capture 17 - Domoticz - http___192.168.2.81_9090_#_Dashboard.png

Podsumowanie.

Tym sposobem możemy sterować oświetleniem na 3 sposoby: poprzez aplikacje MiHome, Domoticzem i bezpośrednio włącznikami na ścianie. Można kupić przyciski montowane bezpośrednio do puszki, ale chińskie puszki są kwadratowe i większe, więc trzeba przerabiać otwory. Plusem jednak takiego rozwiązania jest możliwość użycia normalnych żarówek. Sterowanie odbywa się wewnątrz modułu. Ja zdecydowałem się na mniej inwazyjną metodę bateryjną. Na Gearbest.com cena takiego włącznika to ok. 40 zł. Za białą żarówkę musimy dać ok 60 zł. Biorą pod uwagę, że jednym przyciskiem możemy obsłużyć 3 żarówki cena nie jest już tak zaporowa. Zamówiłem już dwa kolejne.

Obsługa żarówek Yeelight w zewnętrznych systemach zarządzania – ImperiHome i IFTTT.

Znalezione obrazy dla zapytania yeelight

Osobiście uważam, iż oryginalna aplikacja Yeelight jest bardzo dobra. W najnowszej wersji 3.0 zyskała na przejrzystości. Jest dopracowana i intuicyjna w obsłudze. Nic jednak nie stoi na przeszkodzie aby wypróbować również integracje żarówek i innymi systemami. Jak to zrobić w Domoticzu pisałem tu. Poniżej opiszę jeszcze dwie kolejne metody obsługi tych urządzeń.

  1. ImperiHome

O systemie, i jego integracji z Domoticzem pisałem tu. Jeżeli chcemy tylko zarządzać żarówkami to jest to banalnie proste. Pamiętać jedynie musimy o uruchomieniu „LAN control”, aby udostępnić urządzenie dla zewnętrznych systemów.  Opisałem to poprzednim wpisie.

Po zainstalowani i uruchomieniu ImperHome wybieramy „My systems” i znajdujemy YeeLight.

Jeżeli uruchomiliśmy „LAN control” system powinien automatycznie wykryć żarówki.

Po przejściu na stronę główna aplikacji otrzymamy możliwość obsługi żarówek z poziomu ImperiHome.

Screenshot_2017-11-03-16-39-36-777_com.imperihome.lite.png

 2. IFTTT

IFTTT to aplikacja do automatyzacji różnych aktywności w sieci. Cieszy się ona podobno ogromnym powodzeniem na świecie, choć w Polsce jest chyba trochę niedoceniana. Od jakiegoś czasu próbuje się do niej przekonać. Obsługa Yeelight na pewno w tym pomoże. Jest też sposób aby zintegrować ją z Domoticzem, ale to na pierwszy rzut oka wyższa szkoła jazdy. Samej aplikacji nie będę opisywał, wszystko jest w sieci. Przyjedzmy od razu do meritum.

Bardzo ważna sprawa. W ustawieniach aplikacji Yeelight należy wybrać serwery w Singapurze. Nie wiem dlaczego, ale domyślne chińskie nie działają z IFTTT. Żeby nie było za łatwo to w innych aplikacjach działają tylko chińskie. Następnie należy przeprowadzić od nowa procedurę parowania żarówek, aby przełączyły się serwery.

Ustawmy aby np. światło wyłączyło się o określonej godzinie. Możemy skorzystać z gotowych scenariuszy albo stworzyć własny. Pójdźmy tą drugą drogą.

W „My Applets” naciskamy ” + ” i tworzymy nowy warunek. Ustawiamy godzinę, o której ma wyłączyć się żarówka. Pamiętamy o zatwierdzeniu ustawień.

Teraz ustawimy działanie, które ma się wykonać. Wybieramy obsługę żarówek Yeelight i kończymy akcje. Jeżeli w polu ” Which light ?” zobaczymy nazwę naszej żarówki jesteśmy na dobrej drodze. Jeżeli nie, popełniliśmy jakiś błąd przy przechodzeniu na serwer w Singapurze.

Zatwierdzamy ustawienia i gotowe.

Screenshot_2017-11-03-18-52-38-535_com.ifttt.ifttt.png

Proponuje wypróbować inne akcje IFTTT. Możemy ustawić warunki np. pogodowe, lokalizacyjne, powiadomienia mail czy widety na telefon ręcznie uruchamiające zadany warunek.

Po bliższym kontakcie uważam IFTTT za  bardzo obiecujące narzędzie i chyba na dłużej zagości w moim „ekosystemie” zarządzania domem. Zachęcam do testowania i tworzenia swoich akcji i warunków.

 

YeeLight LED Bulb – inteligentne żarówki od Xiaomi w Domoticzu

Mój Domoticz powiększył się ostatnio o kolejne elementy. Jednym z nich są żarówki od Xiaomi – YeeLight LED Bulb. Aktualnie w wersji jednokolorowej, ponieważ paczka z wersją RGB zaginęła po drodze z Chin. Znalezione obrazy dla zapytania YeeLight LED Bulb

Integracja żarówek z systemem okazała się banalnie prosta. Wspomnieć należy, iż obsługa Xiaomi Getaway  awansowała w ostatnim wydaniu sytemu do wersji stabilnej. Oczekuje więc, że od tej pory ilość problemów powinna się zmniejszyć.

Podłączenie YeeLight LED Bulb.

Dodajemy Sprzęt i tyle. System powinien automatycznie wykryć żarówki.

FireShot Capture 006 - Domoticz - http___91.245.83.80_9090_#_Hardware

Znajdujemy je w Urządzeniach.

FireShot Capture 008 - Domoticz - http___91.245.83.80_9090_#_Devices

Jest jednak pewien mały problem. Kupiłem 2 żarówki jednak system wykrywa tylko jedną z nich. Nie umiem go zmusić aby dodał obie. W aplikacji MiHome wszystko działa jak należy.  W oficjalnym Wiki widać, że system obsługuje kilka żarówek. Jeżeli uda mi się to przeskoczyć dodam mały update postu.

Tak to wygląda na gotowo.

FireShot Capture 009 - Domoticz - http___91.245.83.80_9090_#_LightSwitches

PS.  Przypominam oczywiście o dodaniu najpierw żarówek do aplikacji MiHome. To pierwsza czynność przy podłączaniu wszystkich urządzeń Xiaomi.

Uwaga. Należy również ustawić w żarówkach tryb developerski. W wersji 3.0 aplikacji Yeelight nazywa się on „LAN control”. Ustawiamy do jak poniżej:

  1. Naciskamy żarówkę, której tryb chcemy przestawić i przechodzimy do ustawień ( prawy górny róg )

    2. Następnie naciskamy przycisk w prawym dolnym rogu, wybieramy „LAN control” i zmieniamy położenie przełącznika.

    Od tej chwili żarówki będą dostępne dla innych systemów sterowania.