Sonoff Bridge RF 433

User avatar
Goral64
Posts: 3258
Joined: Fri Dec 27, 2019 6:22 pm
Location: Żerniki Wrocławskie
Has thanked: 2 times
Been thanked: 1 time

Post

Zainspirowany pomysłem @Duch__ viewtopic.php?f=24&t=6137 oraz bazując na najnowszej bibliotece SuplaDevice rozwijanej przez @klew https://github.com/klew/arduino a także projekcie @krycha88 zwanym Primary GUI v2 viewtopic.php?f=11&t=5233 napisałem pierwszą wersję firmware pod Suplę dla tego urządzenia pod Arduino IDE.
SonoffBridgeRF.jpg
Uprzedzam, że to moja pierwsza publikacja kodu C/C++ więc proszę o wyrozumiałość ale także o konstruktywną krytykę ;)

Nie dodawałem do urządzenia żadnych zmian sprzętowych, poza wlutowaniem goldpina x4 aby podłączyć programator.
W następnym poście kilka zrzutów z GUI (niestety, nie zawsze GUI wczytuje się poprawnie, zwłaszcza na urządzeniu mobilnym, ale do rozkminienia).

Bridge RF 443 v1.0.0
Kompilowany na płytce ESP w wersji 2.7.1. Biblioteka SuplaDevice od klew z linku powyżej.
Poniżej spakowany szkic.
Bridge_RF_433.src.7z
Skompilowana i spakowana binarka.
Bridge_RF_433.bin.7z
You do not have the required permissions to view the files attached to this post.
Last edited by Goral64 on Fri Jun 12, 2020 10:37 pm, edited 8 times in total.
Widzimy się na Supla Offline Party Season 2026 :D

Image
User avatar
Goral64
Posts: 3258
Joined: Fri Dec 27, 2019 6:22 pm
Location: Żerniki Wrocławskie
Has thanked: 2 times
Been thanked: 1 time

Post

Poniżej kilka zrzutów ekranu z GUI.
z1-3.jpg
z4-6.jpg
z7-9.jpg
You do not have the required permissions to view the files attached to this post.
Widzimy się na Supla Offline Party Season 2026 :D

Image
User avatar
Goral64
Posts: 3258
Joined: Fri Dec 27, 2019 6:22 pm
Location: Żerniki Wrocławskie
Has thanked: 2 times
Been thanked: 1 time

Post

Urządzenie działa w obie strony. Odbiera kody RF z pilotów, urządzeń RF (pod warunkiem, że są stałe, 24 bitowe) i wysyła stany do serwera Supli. Odbiera także sterowanie z Supli i wysyła kody RF do odbiorników.
GUI umożliwia dodanie urządzenia kreatorem w aplikacji mobilnej.
Maksymalna liczba zapamiętanych kodów to 60. Jeden kanał zajmuje od 1 do 2 kodów. Można zdefiniować tyle kanałów na ile wystarczy kodów, czyli od 30 do 60. Kanały i kody definiuje się w GUI.
Kody można wpisać "z palca" albo "automatycznie". Uruchamiany jest tryb nauki i w tym trybie kod RF jest pobierany z urządzenia nadawczego. Są piloty i czujniki, których kody Bridge rozpoznaje 100 na 100. Niestety, są też takie, których Bridge nie do końca rozumie przy rozkodowaniu, a nawet jak dostanie "z palca" prawidłowy kod, to gdy go wyśle, urządzenie odbiorcze nie potrafi zareagować. Czasem udaj się znaleźć dobry kod, a czasem jest kaszana. Mam pilota, który czasem jest dobrze odkodowany, a czasem 4 czy więcej kanałów odbierane są jako jeden kod :(
Inny pilot i jego odbiorniki działają za każdym razem.
Urządzenie tworzy póki co tylko 2 rodzaje kanałów: przekaźnik (Relay) i czujnik (Sensor). W GUI są one jeszcze podzielone na 4 rodzaje:
Przekaźniki (ON + OFF) - do sterowania używane są dwa osobne kody, osobny kod ustawia stan wysoki (ON), osobny kod stan niski (OFF),
Przekaźniki (ON/OFF) - do sterowania naprzemiennie używany jest jeden kod (toggle),
Czujniki binarne (ON + OFF) - podobnie jak przekaźniki (ON + OFF),
Czujniki binarne (ON lub OFF) - czujniki wysyłają tylko jeden kod, którym sygnalizują albo stan wysoki (ON) albo stan niski (OFF).

W GUI można dodawać kanały i kody do nich (kody nie mogą się powtarzać w ramach urządzenia). Można edytować kody w kanale jak i usunąć kanał wraz z kodami. Przy przekaźnikach po kliknięciu na odpowiednią ikonę można wysłać do odbiornika kod przypisany do ikonki (stan nie jest wysyłany do Supli).
Widzimy się na Supla Offline Party Season 2026 :D

Image
User avatar
pzygmunt
Posts: 20302
Joined: Tue Jan 19, 2016 9:26 am
Location: Paczków
Been thanked: 59 times

Post

Brawo
SUPLA.... Nareszcie w domu.
t0mek
Posts: 92
Joined: Sat Dec 02, 2017 11:24 am
Location: Legnica

Post

Wreszcie się doczekałem! Na czym testowałeś? Jakie urządzenia? Mam rolety na włącznikach 433 i czekałem od początku na taki temat. Ps: Zmienno kodowe nie będą działać? Zamawiam sonoff :D
Super robota!
Pozdrawiam
Tomek
elmaya
Posts: 1485
Joined: Wed Jun 27, 2018 5:48 pm
Location: El Saucejo - Sevilla

Post

I applaud you, if this is the first one you publish this is going to get interesting
User avatar
Goral64
Posts: 3258
Joined: Fri Dec 27, 2019 6:22 pm
Location: Żerniki Wrocławskie
Has thanked: 2 times
Been thanked: 1 time

Post

t0mek wrote: Thu Jun 11, 2020 6:34 pm Wreszcie się doczekałem! Na czym testowałeś? Jakie urządzenia? Mam rolety na włącznikach 433 i czekałem od początku na taki temat. Ps: Zmienno kodowe nie będą działać? Zamawiam sonoff :D
Super robota!
Mam gniazda SITE model RCS-K01 z pilotem RCT-01. Ten działa praktycznie 100/100. Kody sczytują się dobrze, pilot jest zrozumiały a i kod wysyłany przez bridge jest odbierany. Można tym sterować 5 gniazdkami (5 kanałów ON + OFF). Do tego mam jeszcze gniazda ELRO AB601SB z pilotem AB601R. Można tym sterować 8 gniazdami (8 kanałów ON-OFF). Tutaj jest ciężko. Bridge potrafi wszystkie kanały odebrać z jednym kodem :( Mimo, że gniazdka rozumieją pilota. Jak zapiszesz w Bridge poprawiony kod, to nie zawsze gniazdko go rozumie.
Do tego kupiłem kontaktrony Sonoffa, żeby potestować z bridge. Jednak są to nadajniki z jednym kodem. Czyli jak się oddali kontaktron od magnesu to wysyłany jest kod, że "obwód rozwarty", jak się go przybliży nie generuje kodu, że "obwód zwarty". Kupiłem tez PIR-a Sonoffa i też ładnie go bramka odbiera. No ale to też tylko jest generowany kod jak wykryje ruch, więc trzeba by jakiś timer, który po jakimś czasie przywracałby stan "bezruchu" do następnego wykrycia ruchu.
Zmiennokodowe nie są obsługiwane.
Bridge można zhakować na różne sposoby. Można pominąć chipa obsługującego kody RF i przesyłać sygnał prosto do ESP i tam przetwarzać. Wtedy jest więcej możliwości. Można też podmienić firmware w tym chipie, aby obsługiwał także inne kody. Ale to już tematy na inną bajkę.
Mi przede wszystkim chodziło o firmware na niemodyfikowany bridge.
Widzimy się na Supla Offline Party Season 2026 :D

Image
User avatar
Goral64
Posts: 3258
Joined: Fri Dec 27, 2019 6:22 pm
Location: Żerniki Wrocławskie
Has thanked: 2 times
Been thanked: 1 time

Post

W uzupełnieniu dodam, że dane konfiguracyjne zapisywane są w EEPROM.
Zapis do EEPROM połączony jest z restartem urządzenia, tak aby biblioteka SuplaDevice mogła pracować na zmienionych danych. Tak więc jeśli dodamy, usuniemy czy zmodyfikujemy kanał operacja Zapisz umieści te dane w pamięci, ale żeby SuplaDevice zaczęła z nich w pełni korzystać trzeba je zapisać do EEPROM i zrestartowac urządzenie. Odpowiedni przycisk pojawi się na stronie głównej jeśli zostaną wprowadzone jakieś zmiany. Jeśli chcemy odrzucić wprowadzone zmiany należy wykonać sam restart.
Jeśli będziemy tylko dodawać kanały lub tylko modyfikować w nich kody to dodadzą się one do Supli bez problemu. Jeśli usuniemy jakiś kanał, dodamy w to miejsce inny wtedy nastąpi w Supli konflikt kanałów i trzeba najpierw usunąć urządzenie z Supli aby dodało się ponownie z odpowiednimi kanałami w odpowiedniej kolejności.
W wersji, która jest udostępniona pozostawiłem na razie przycisk Podgląd EEPROM. Aby się go pozbyć wystarczy usunąć z pliku config.h linijkę z

Code: Select all

#define DEVEL_MODE
A tak wygląda fragment podglądu EEPROM.
zrzut.2020-06-11.18.49.33.png
Przy ustawionym DEVEL_MODE mamy też dostęp do dwóch linków:
/eeprom_format - formatuje całą używaną pamięć EEPROM jak przy pierwszym uruchomieniu firmware na urządzeniu
/eeprom_clear - czyści informacje o ustawieniu kanałów i wczytanych kodach, zostawia informacje logowania do WiFi i Supli
Operacja wykonuje się tylko w pamięci, więc aby odniosła skutek w EEPROM trzeba zapisać EEPROM i zrestartować urządzenie.
You do not have the required permissions to view the files attached to this post.
Widzimy się na Supla Offline Party Season 2026 :D

Image
User avatar
Duch__
Posts: 2199
Joined: Wed Aug 24, 2016 7:26 pm
Location: Opole
Been thanked: 6 times

Post

Brawo!
User avatar
Goral64
Posts: 3258
Joined: Fri Dec 27, 2019 6:22 pm
Location: Żerniki Wrocławskie
Has thanked: 2 times
Been thanked: 1 time

Post

Duch__ wrote: Fri Jun 12, 2020 4:24 pmBrawo!
Głównie dzięki Tobie :)
Widzimy się na Supla Offline Party Season 2026 :D

Image

Return to “Gotowy sprzęt”