Home Assistant - Sonoff RF Bridge Tasmota - zmiana oprogramowania przez CP2102

Home Assistant - Sonoff RF Bridge Tasmota - zmiana oprogramowania przez CP2102

Czas rozszerzyć możliwości naszych urządzeń! Ja postawiłem na najbardziej popularne rozwiązanie, gdzie możliwości są naprawdę wielkie a różnorodność urządzeń które są obsługiwane jest ogromna!

Tego typu rozwiązania sprawdzą się tylko, jeżeli mamy lokalny serwer Smart Home, ja zdecydowałem się na HA tutaj przeczytasz więcej: Home Assistant - instalacja oraz sprzęt - od tego zacznij

Dlaczego w ogóle warto zmienić oprogramowanie?

Zanim zaczniesz czytać ten artykuł, zapoznaj się proszę z tym artykułem: Sonoff RF Bridge 433 - pilot/hub/mostek radiowy

Po pierwsze i najważniejsze: zyskujemy możliwość sterowania Sonoff Bridge przez HA. Urządzenie będzie zbierać każdy sygnał RF i przekazywać go do naszego HA przez MQTT. Tak dobrze czytacie, każdy! Jeżeli Twój sąsiad ma coś na RF, to zobaczysz to w konsoli Tasmoty logując się na Sonoff Bridge. I odwrotnie, Twój sąsiad będzie mógł odczytać każdy sygnał RF (jeżeli posiada tego typu urządzenie), następnie będzie mógł go skopiować i nadać ponownie wprowadzając zamęt do Twojej instalacji. Dlatego bardzo ważne, nie budujcie jedynie na tym rozwiązaniu systemów bezpieczeństwa.

Drugie najważniejsze: otrzymujemy możliwość podłączenia nieskończenie wielu czujników (okien, drzwi, zalania, ruchu itp.) oraz 16 kodów (przycisków pilota) wychodzących nieskończenie wielu kodów wychodzących (w tym artykule opisuję to dokładnie: Home Assistant - 433 Mhz przełącznik/odbiornik radiowy - Sonoff RF Bridge). Przy oryginalnym oprogramowaniu, było to 16 KODÓW ŁĄCZNIE . Jeden czujnik otwarcia to dwa osobne kody (otwarcia i zamknięcia). Czyli mając 8 takich czujników, nie mielibyśmy już możliwości podłączenia czegokolwiek więcej. 

Dodatkowo w oryginalnym oprogramowaniu (eWeLink), mamy dla urządzeń przychodzących tylko pozycję  Alarm i jest on pojedynczy - przyjmujący tylko jeden kod. Czyli nie ma jak wykorzystać czujników posiadających dwa kody: jeden na otwarcie a drugi na zamknięcie drzwi/okna. A przecież o to chodzi aby wychodząc z domu a mając otwarte okno (np. obok listwy z komputerem) a przy zapowiadanych opadach deszczu otrzymać powiadomienie: ej zamknij okno przy komputerze! 

Sprzęt

Do zmiany oprogramowania użyję Konwerter USB-UART CP2102 zakupione w sklepie Botland (koszt 16 zł). Warto dokupić goldpin raster od razu.

Home Assistant - Sonoff RF Bridge Tasmota_1

Potrzebne oprogramowanie

  1. Oprogramowanie na komputer do Flashowania: ESPEasy (kliknij w Assets aby pobrać)
  2. Oprogramowanie które wgramy zamiast eWeLink na nasz Sonoff RF Bridge: Sonoff-Tasmota (bardzo nisko, wyszukaj pierwsze Assets i pobierz sonoff.bin)
  3. Terminal który użyjemy do weryfikacji i konfiguracji: Termite

Tutaj bardzo ważna informacja, chip który mamy w prawie każdym tego typu urządzeniu to ESP8266, oprogramowanie do niego jest uniwersalne. To znaczy, dopiero po wgraniu oprogramowania z listy rozwijanej (albo terminala) podajemy mu czy to jest Sonoff Basic, Sonoff Basic RF, Sonoff Touch itp. czy tak jak w naszym przypadku Sonoff RF Bridge. 

Podłączenie

  1. Obudowę Sonoff RF Bridge otwieramy podważając cztery podstawki śrubokrętem płaskim przy krawędzi, są delikatnie przyklejone. Pod nimi są śrubki które odkręcamy.
     Home Assistant - Sonoff RF Bridge Tasmota_2
  2. Musimy wlutować goldpiny aby wpiąć się bez luzów z programatorem. Potem będziemy to musieli wylutować albo powyginać albo wlutować odwrotnie i zrobić dziurę w obudowie aby się to zmieściło.
    Home Assistant - Sonoff RF Bridge Tasmota_3 
  3. Wszystko do siebie podłączamy - pamiętając aby RX podłączyć do TX a TX do RX (cross). Programatora nie podłączamy jeszcze do komputera!!!
    Home Assistant - Sonoff RF Bridge Tasmota_5
  4. Jak już wszystko mamy spięte (sprawdź drugi raz czy na pewno zasilanie jest podpięte do tego w kwadracie). 
  5. Sprawdzamy zworkę na CP2101 czy jest na pewno ustawiona na 3V (nie może być 5V!)
  6. Przełączamy przełącznik na OFF na płytce Sonoff RF Bridge. Który był pod odgiętą diodą LED.
    Home Assistant - Sonoff RF Bridge Tasmota_6
  7. Przed podłączeniem trzymamy guzik reset na płytce Sonoff RF Bridge (tak aby nie zaświeciła się niebieska dioda WiFi) i jednocześnie wkładamy USB do komputera.
    Home Assistant - Sonoff RF Bridge Tasmota_8

Flashowanie 

  1. Kopiujemy Sonoff.bin do katalogu gdzie mamy program ESPEasy
  2. Następnie odpalamy FlashESP8266
    1. z listy rozwijanej wybieramy port na którym mamy nasz CP2101 (odłącz USB, włącz aplikację, zobacz jakiego COM nie ma a następnie podłącz USB i zobacz jaki port COM się pojawi i ten wybierz).
    2. poniżej z listy wybieramy sonoff.bin
      Home Assistant - Sonoff RF Bridge Tasmota_3
    3. klikamy Flash i chwilę czekamy (aż wszystkie kropki na dole ekranu pójdą w dwóch liniach do końca albo okienko nie zniknie i wyskoczy komunikat zakończenia flashowania - trwa to kilka minut).
      Home Assistant - Sonoff RF Bridge Tasmota_4

Konfiguracja Tasmoty na Sonoff RF Bridge

Jeżeli poniższe rozwiązanie wydaje Ci się skomplikowane, możesz zawsze zrobić to ręcznie, opisuję to w tym artykule piszę dlaczego): Home Assistant - MQTT - Mosquitto broker + Tasmota 

Odpalamy program Termite - powinno wszystko być już ustawione, jeżeli nie jest to wybieramy odpowiedni COM.

Home Assistant - Sonoff RF Bridge Tasmota_2

W consoli poniżej wpisujemy (wcześniej uzupełniamy o swoje ustawienia) i dusimy Enter.

Backlog SSID1 YourWifiSSID; Password1 YourWifiPW; MqttHost your.mqtt.pi.ip; MqttUser yourMQTTuser; MqttPassword yourMQTTpw; Hostname RF_Bridge; MqttClient RF_Bridge; Topic RF_Bridge; FriendlyName1 RF_Bridge; PowerRetain 1; module 25;  SetOption19 1

Home Assistant - Sonoff RF Bridge Tasmota_1

Po wprowadzeniu od razu zobaczymy jakie IP ma nasze urządzenie w kodach.

W kwestii wyjaśnienia:

  • module 25 - to ustawienie Tasmoty jako oprogramowania dla Sonoff RG Bridge.
  • PowerRetain - włącz utrzymanie zasilania MQTT przy aktualizacji statusu urządzenia
  • SetOption19  - autowykrywanie urządzenia przez HA przez MQTT

Po sflashowaniu i wprowadzeniu powyższego kodu, przestawiamy bps z 115200 na na 19200 w settings aby krzaczki zamieniły się w logiczne znaki. 

Konfiguracja HA do przyjmowania kodów po MQTT

Zanim zaczniesz czytać dalej, zapoznaj się z tym artykułem jak skonfigurować MQTT (zrobiliśmy to w Termite ale musimy jeszcze sprawdzić ustawienie: SetOption19 1 - w tym artykule piszę dlaczego): Home Assistant - MQTT - Mosquitto broker + Tasmota 

Mój kod odczytany w Conosole na Tasmota w Sonoff RF Bridge wygląda następująco:

20:29:18 MQT: Bridge_RF/tele/RESULT = {"RfReceived":{"Sync":10760,"Low":370,"High":1050,"Data":"2BE905","RfKey":"None"}}

Ten kod dodajemy do Conifguration.yaml

binary_sensor:
    - platform: mqtt
      state_topic: "Bridge_RF/tele/RESULT"
      name: 'Bathroom Water'
      value_template: '{{value_json.RfReceived.Data}}'
      payload_on: '2BE905'
      payload_off: '2BE905off'
      device_class: moisture
      off_delay: 5

Jednak dla wyjaśnienia :

state_topic może u Ciebie wyglądać inaczej lub być zamieniony miejscami, skopiuj ten odczytany u siebie: tele/RF_Bridge/RESULT to nie jest to samo co to: RF_Bridge/tele/RESULT

value_template: '{{value_json.RfReceived.Data}}' taki ma być, jak ktoś wie dokładnie dlaczego i skąd on się wziął niech da znać w komentarzach :) 

payload_off jest kodem zmyślonym, bo tego wymaga HA (kodu on i off).

device_class ustawiłem na czujnik wody czyli moisture. Tutaj spis wszystkich sensorów które obecnie możesz podłączyć po MQTT: Binary Sensor DEVICE CLASS 

off_delay używamy dla czujników jak zalania, czy też ruchu aby po np. po 5 sekundach przełączył stan w HA na wyłączony (bez ruchu).  Ponieważ czujnik ruchu czy też zalania wysyła tylko i wyłącznie kod na ON (jest ruch, jest woda). Czujnik otwarcia zamknięcia (które opiszę w osobnej zakładce i konfiguracji) posiada już dwa różne kody - jeden na otwarcie, drugi na zamknięcie, więc odczytamy dwa kody i wprowadzimy oba.

Gotowe!

Teraz już wszystko działa, po restarcie HA zobaczymy (prawdopodobnie w Owerview -> [...] prawy górny róg -> Unused entities) nasz Binary Sensor, ja sobie go dodałem do Badges w głównym oknie (klikamy [...] -> Configure UI -> i obok nazwy zakładki u mnie to HOME -> ołówek). I dodajemy te które chcemy aby były widoczne. Ja mam w tej chwili trzy czujniki otwarcia, ruchu oraz własnie wody.


Źródła:

https://www.home-assistant.io/components/binary_sensor.mqtt/

https://gist.github.com/Snipercaine/889024b0f13302928c7251e1578734d6

 

 


Chcesz wiedzieć więcej? Dołącz do naszej grupy na FB - będzie nam też miło jak polubisz nasz Fanpage!