Home Assistant - 433 Mhz przełącznik/odbiornik radiowy - Sonoff RF Bridge

Home Assistant - 433 Mhz przełącznik/odbiornik radiowy - Sonoff RF Bridge

Masz ozdobne światełka na baterie w mieszkaniu? Są mega niewygodne do włączania, przez co tylko się kurzą? Zróbmy je smart!

Na obrazku próbne podłączenie czy wszystko działa - płytka jest taka mała, że bez problemu zmieści się w opakowaniu - wystawać będzie tylko antenka!  

Przełącznik radiowy

Jakie wymogi musiał spełnić przełącznik radiowy którego szukałem?

  • możliwość zmiennego zasilania dwoma lub czterema paluszkami (czyli 3V do 6V)
  • przyjmowanie osobnych kodów na włącz oraz wyłącz
  • być najtańszym jaki jest dostępny
  • pracować na 433 Mhz

Ten przełącznik spełnił to idealnie, zakupiłem trzy sztuki za mniej niż 6$, niestety na dzień pisania artykułu produkt jest niedostępny. Urządzenie zaskoczyło mnie pozytywnie, mimo podania w specyfikacji minimalnego zasilania 3.5V bez problemu działa na dwóch paluszkach czyli 3V, to była moja największa obawa przy zakupie i została od razu rozwiana po podłączeniu. Znajdziesz go tutaj: QIACHIP 433 Mhz 1CH RF Relay Receiver Universal Wireless Remote Control Switch Micro Module LED Light Controller DC 3.6V-24V DIY

Urządzenie według specyfikacji pobiera 3.6 mA ~ 5.5mA, więc będę musiał sprawdzić ile wytrzyma na dwóch bateriach, bo może to być tylko 4 tygodnie (pojemność baterii to ok. 1000mAh).

Przełącznik posiada trzy tryby pracy: 

  1. Momentary - wysyłamy kod nieprzerwanie to pozostanie włączony, przestajemy nadawać to się wyłącza
  2. Toggle - wysyłamy kod to się włączy, wysyłamy ten sam kod 2x to się wyłączy
  3. Latching - wysyłamy kod A to się włączy, wysyłamy kod B to się wyłączy 

Przełącznik radiowy konfiguracja

Aby zaprogramować kody (i działanie przełącznika) klikamy w guzik przyuczania (na urządzeniu) od 1 do 3 razy  (w zależności jaki tryb chcemy wybrać) i potem wysyłamy kod RF (pilotem lub Sonoff RF Bridge) który chcemy przypisać do danej akcji, dioda zamruga 3x. W przypadku Latching wysyłamy pierwszy kod RF (ON), mruga dioda 3x a następnie wysyłamy drugi kod RF (OFF). Gotowe.

Sonoff RF Bridge (eWeLink)

Aby sterować dowolnym przełącznikiem radiowym za pomocą oryginalnej aplikacji ewelink, musimy posiadać do niego pilota. Pierw kodujemy przełącznik pilotem a następnie tymi samymi przyciskami naszego Sonoff Bridge.  Jak to zrobić przeczytasz tutaj: Sonoff RF Bridge 433 - pilot/hub/mostek radiowy. Oczywiście, po tej operacji mówiąc do głośnika Sync Devices, pilot pojawi się w Google Home. Jednak zapomnij o prostym ON i OFF, będziesz musiał kalawisze w pilocie odpowiednio nazwać. Start Light (pilot) i jeden przycisk ON a drugi OFF - niestety, to rozwiązanie może u Ciebie nie zadziałać, bo te nazwy są zarezerwowane dla poleceń wykonawczych.

Sonoff RF Bridge (Tasmota)

I tutaj zaczyna się zabawa, przy okazji testowania tego rozwiązania okazało się, że nie tylko na odbieranie kodów przestaje nas obowiązywać limit ale również na wysyłanie! Czyli nie mamy do dyspozycji 16 slotów na odbiór/wysyłanie sygnałów RF ale mamy ich nieskończenie wiele. A gdyby tego było mało - to kody możemy zdefiniować samodzielnie! 

Dodatkowo przy takim rozwiązaniu mamy normalnie przycisk on i off (dwa różne kody) i przy połączeniu przez Home Assistant będzie zapamiętany stan urządzenia! Oczywiście przy wyłączeniu z pilota, się to rozprogramuje ale co za problem zrobić na to automatyzację (w przypadku odbioru kodu RF OFF, przełącz wybrane światło na OFF).

Konfiguracja Home Assistant

W configuration.yaml dodajemy:

light:
    - platform: mqtt
      name: 'Star Light'
      state_topic: 'Bridge_RF/cmnd/RfCode'
      command_topic: 'Bridge_RF/cmnd/RfCode'
      qos: 1
      payload_on: '#3ACC13#'
      payload_off: '#3ACC17#'
      retain: true
      optimistic: false

state_topic odczytujemy z consoli Tasmoty na Sonoff RF Bridge - ponieważ u niektórych są zamienione miejsca cmnd z nazwą urządzenia. 

payload_on oraz payload_off  kody ustawiamy sobie dowolne, ważne aby były w # z obu stron i w systemie szesnastkowym. I to jest właśnie przewaga nad oryginalnym oprogramowaniem nie dość, ze możemy przyjmować nieskończenie wiele kodów to możemy ich też nieskończenie wiele wysyłać i to przez siebie zdefiniowane. Koniec z kupowaniem bez sensu pilotów do zaprogramowania urządzeń. 

Przed restartem HA, sprawdzamy czy wszystko jest poprawnie, przeczytaj dokładnie o tym tutaj: Home Assistant - component a custom component / Integrations część: Wspólne kroki.

Konfiguracja synchronizacji z Google Home

Skoro mamy gotowy przełącznik, który działa i pamięta swój stan (gdybyśmy ustawili state_topic inny od command_topic to wracałby do off po sekundzie) to czas na integrację z Google Home. 

Ze względu na to, że ja mam bałagan i Tuya, Sonoff (eWeLink) oraz Shelly mam obecnie połączone na integracji (którą znajdziesz w innych artykułach). To gdybym wystawił na integrację całe Lights to miałbym je podwójnie w Google Home - jedne od integracji podstawowej a drugie z integracji z Home Assistant. Dlatego robię to wybiórczo i udostępniamy Google tylko to co chcę:

google_assistant:
 project_id: hassio-123456
 api_key: xxxxxxxxxxxxxxxxxxxxxxxxx-xxxx
 exposed_domains:
  - script
 entity_config:
    light.star_light:
     expose: true
     room: Living Room

 room - od razu przyporządkowałem sobie urządzenie do pokoju, po co się męczyć a domenę script mamy z odkurzacza.

Ponownie sprawdzamy czy nic nie zawiesi Hassio i restartujemy. Następnie mówimy do głośnika moje ulubione: Sync Devices i po chwili pojawi się nam nowe światło w mieszkaniu w wybranym pokoju.

Gotowe

Tak to już wszystko, to było takie proste! O ile się od razu odnalazło jak poprawnie skonfigurować wysyłanie kodów przez Sonoff RF Bridge co nie było takie proste, bo takich instrukcji, które działają poprawnie szuka się jak igły w stogu siana ;) 


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