Sonoff RF Bridge 433

Bár már korábban gyártottam magamnak egyirányú RF-WiFi átjárót ESP alapon - és köszöni szépen azóta is teljesen jól működik - de szembejött egy visszautasíthatatlan akció, melynek keretén belül 8 dollárért juthattam egy Sonoff RF Bridge-hez. Eddig nem igazán volt okom ilyet beszerezni, ám ezek a kínaiak tényleg tudják hogy lehet vásárlásra serkenteni a népet, így próbára azért mégis beszereztem egyet.

rfbridge_1.jpg

Azt előzetesen tudni kell, hogy a Sonoff RF Bridge leginkább csak a saját rádiós eszközeivel kompatibilis, így érkezése után máris le kell cserélni a firmware-t rajta, ami ez esetben nem annyira egyszerű, mint a többi Sonoff esetében, itt ugyanis van egy külön, rádiós adást kezelő vezérlő (EFM8BB1) , és ennek is le kell cserélni a firmware-ét, nemcsak a beépített ESP8285-ét. Megj: Aki garázsnyitót szeretne okosítani vele, ne nagyon élje bele magát, mert ezek többsége ugrókódos, kizárólag fixkódos távirányítók/távvezérlők jelét lehet másolni!
Megérkezése után (tápegység nincs a csomagban, de gyakorlatilag bármely microUSB csatlakozású telefontöltővel használható, vagy akár a számítógép USB portjáról) azért érdemes kipróbálni a gyári firmware-el és az Android alkalmazásával, a párosító gombját 7 másodpercig kell nyomva tartani, utána a szokásos módon lehet felvenni az eWeLink alkalmazásába a wifi AP (csak 2.4Ghz) és jelszó megadásával, és megpróbálni tanítgatni meglévő 433MHz-es eszközeinket neki.

Miután a teszt sikerrel lezajlott, jöhet a csavarhúzó. Az alján levő 4 darab kör alakú gumidarab kipöckölése után férhetünk hozzá a négy darab kis méretű csillagfejű csavarhoz. (amiket az enyémen valami állat úgy meghúzott, mintha az örökkévalóságnak tervezték volna) Ezek eltávolítása után könnyen lejön az alja.

rf_inside1.jpg

A Sonoff felirat megvilágítását adó cucc óvatos 90 fokkal való elforgatását követően láthatóvá válik az ESP chip, valamint a programozónyílások egy tolókapcsoló mellett. A kapcsolót akkurátusan állítsuk OFF állásba, ezzel megszakítva az ESP és az integrált EFM chip soros kapcsolatát, hogy elvégezhessük a flashelést. A nyílásokat előzékenyen feliratozták a gyárban, így könnyen párosíthatjuk az UART-USB átalakítónk megfelelő lábaival. (szokásos módon RX-TX, TX-RX keresztkötéssel)

sonoff_rf-bridge-768x740.jpg

Egy jótanács: ne a középen levő sort használjuk, hanem a szélén levőt. A hátulja felől én könnyebbnek találtam a bekötést. És forrasztópáka nélkül is könnyen megoldható a dolog, az egyik végén tüskés jumper kábelek, valamint pl bluetack segítségével:

rf_prog.jpg

Első körben töltsünk le egy kurrens Tasmota binárist, ha akarunk utána az EFM-en is firmwaret cserélni (és miért is ne akarnánk?), akkor egy RF_FLASH opcióval fordított bináris kell. Az alap sonoff.bin jelenleg pontosan megfelelő erre a célra. (a minimal, wifiman és egyéb kisméretű változatok általában nem tudják ezt!)
Lásd: Tasmota kiadások képességei (8.1-hez, később a link természetesen változhat)

Miközben csatlakoztatjuk az USB-re az UART-USB átalakítónkat - amivel áram alá helyezzük a csatlakoztatott Bridge eszközt - tartsuk nyomva a párosító gombját, mivel ez a GPIO-0! Majd elindítjuk a pyflashert és felküldjük az új firmware-t.

rf_pyflasher.jpg

Flashelés után indítsuk újra, megjelenik egy sonoff-xxxx nevű AP, erre bejelentkezve a szokásos módon megadhatjuk AP-nket és jelszavunkat. (Tasmota 7-es verziótól tasmota-xxx)

Ha ismét újraindult és felcsatlakozott a hálózatunkra, akkor állítsuk be először is a modul típusát a Configure Module menüpontban "Sonoff Bridge (25)" -re.

rf_tasmota.jpg
R2 verzió esetén kössük össze a PIO4 to C2D and GPIO5 to C2Ck csatlakozókat. Ha USB-ről táplálva kívánjuk a flashelést végezni meg kell szakítanunk az USB D+ D- vonalak és a GPIO4/GPIO5 csatlakozását fizikailag pl egy késsel, ha ellenben a 3V3 és GND-n keresztül tápláljuk, akkor nem szükséges ezzel foglalkozni!

sonoff_bridge_rffw_upgrade.png

Az EFM firmware cseréjéhez töltsük le azt, amelyik passzol a Tasmota verziójához:

https://github.com/arendst/Tasmota/tree/master/tools/fw_efm8bb1

gh_raw.jpg

Az immár Tasmotásított Bridge menüjében a Firmware Upgrade->Upgrade by File Upload alatt tallózzuk ki a letöltött EFM firmwaret és töltsük fel. (az új Tasmota verziók automatikusan felismerik, hogy ESP-re vagy EFM-re való firmware-t töltöttünk fel) A feltöltés végén csippan egyet. Ez után kihúzhatjuk a fölös kábeleket, visszaállítjuk a kapcsolót ON állásra, ezzel visszaállítva rádiós modul működését, összerakjuk a kütyüt, majd USB-ről táplálva elindítjuk.

A Console alatt a következő parancsokat írjuk be a biztonság kedvéért:
seriallog 0
weblog 2

Majd az RfRaw 255 kiadásával meggyőződhetünk róla, hogy sikerült feltölteni a Portisch féle EFM firmwaret.

Nyomógombok/érzékelők tanítása:

Alapvetően 16 darab kódot lehet tárolni, ehhez a Console menü alatt írjuk be az "rfkey<sorszám> 2" parancsot, majd nyomjuk meg a rádiós eszköz gombját. Pl az 1. feltanításához az "rfkey1 2" szükséges. (a szóköz hiánya és megléte is számít természetesen a parancsban a megfelelő helyeken)
Mivel elméletileg fel van okosítva az EFM chip, jóval több eszközt fog ilyen módon felismerni, mint korábban.

Hogyan használhatjuk/továbbíthatjuk a beérkező kódokat a Domoticz felé?

Vegyünk fel egy Usage (Electric) / Használat (elektromosság) típusú virtuális érzékelőt a Domoticz-ban a Hardver menü alatt, majd az Eszközöknél nézzük ki az IDX számát.
Ezt az IDX számot az RF Bridge Tasmota Configuration/Configure Domoticz alatt a "Sensor idx 6 Count/PM1" mellé írjuk be, mentsük el.
Ha az MQTT rendben működik, akkor a Domoticz ezentúl megkapja a 16 párosított eszköz kódját, amikor azok aktiválódnak/lenyomjuk a gombját ebben a virtuális változóban.
Ezt például LUA-ban az otherdevices_svalues['valtozoneve'] segítségével tudjuk vizsgálni.

Hogyan tudunk feltanult kódot küldeni?

Teszt jelleggel a Tasmota kezdőlapján a megfelelő számra kattintva, paranccsal pedig az "rfkey1 6" küldi példának okáért az 1-es számon tárolt RF kódot. A parancsokat mint tudjuk URL-ből is meg lehet hívni a Tasmotában, ezt például ilyenformán: (a szóköz a %20)
http://<IPCIM>/cm?cmnd=rfkey1%206

Arról, hogy mi a teendő akkor, ha nem tudja feltanulni ezzel az egyszerű módszerrel az eszközt, illetve hogyan lehet 16-nál több rádiós kódot továbbítani a Domoticz felé, egy későbbi cikkben fogom vizsgálni - mivel erős a gyanúm, hogy python programozás is szükséges lesz. (de addig is megsúgom, hogy az "RfRaw 177" parancs segítségével fogom kideríteni, milyen mély a nyúl ürege)

A bejegyzés trackback címe:

https://bitekmindenhol.blog.hu/api/trackback/id/tr1215268728

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

vampywiz17 2019.12.11. 11:32:23

ha raallunk a "tele/sonoff_rf_bridge/RESULT" mqtt csatornara (pl Node-RED-el) akkor minden bejovo jelet latunk. innen meg mar egybol egyszeru a dolog :)

vampywiz17 2019.12.11. 11:41:05

@vampywiz17: Illetve ami meg erdekes:

github.com/xoseperez/espurna/wiki/Hardware-Itead-Sonoff-RF-Bridge---Direct-Hack

Ez viszont mar hardware hack. a lenyege, hogy teljesen megkeruli a EFM8BB1 chipet es az ESP fog dekodolni. Ez nagyon hasznos, mert a EFM8BB1 nagyon korlatozott memoriaval rendelkezik... (tehat keves decoder fer el ) Elv ilyenkor az Espruma a rc-switch library-t hasznalja. Sajnos ez a library 2017 ota nem volt frissitve... Kar amugy, mert ha valaki foglalkozna vele es keszitene uj decodereket (mint ahogy az rtl_433-as sracok nyomjak) akkor nagyon hasznos cucc is lehetne ez a kis gateway (persze igy is az..:) )

eNeS 2019.12.11. 17:42:55

Jaja az rc-switch féle megoldás is járható, bár ezt azért nem is említettem, mert a DIY MQTT Bridge, amiről korábban írtam, pontosan az RCSwitch-et használja, ami bár régen nem frissült, azért sok mindent felismer. Az EFM chip firmware-e pedig fejlesztés alatt áll most is, úgy láttam a kódba belepislantva, hogy a rádiós hőmérőket is tudja dekódolni valamilyen formában.

amargo · http://gszobi.blogspot.com 2019.12.21. 18:26:31

Hello, nekem flashelés után és előtt se akart az AP megjelenni, villog kb 2sec el a kék led vagy folyamatosan világít. Valahogy usb/serial porton ki lehet deríteni, hogy a wifi-vel van gond benne vagy csak béna vagyok. Nyomtam kicsit/sokat a pairing gombot, de nem jelenik meg az AP.
Köszönöm a segítséget!

eNeS 2019.12.21. 19:21:35

Flashelés előtt nem is fog AP megjelenni, ezt a részét nem is értem a mondatnak, a gyári firmware nem tud ilyet. 1. Honnan tudod, hogy a flashelés sikerült? Kiírta, hogy Firmware succesfully flashed? 2. Miért flashelted meg, ha nem tudtad egyáltalán működésre bírni a wifijét, gondoltad egy szoftver megoldja a hardveres hibát? Én nem véletlenül tesztelem mindig az eredeti firmware-el érkezés után a cuccokat. De igen, soros usb terminálon keresztül meg tudod nézni a Tasmota beállításait és tudsz wifi SSID-t is beállítani, amire csatlakozzon, hátha csak nem wifimanager mód az alapértelmezése, pl azért mert nem választottad ki a "yes wipes all data" lehetőséget flashelés előtt. github.com/arendst/Tasmota/wiki/Initial-Configuration (Vagy újraflasheled ezúttal teljes törléssel.)

amargo · http://gszobi.blogspot.com 2019.12.21. 22:16:10

@eNeS: nem volt időm tesztelni/ nem ezzel töltöttem az időm. Továbbá miből kellett volna gondolnom, hogy előtte nincs AP módja? A google első találta és kb az összes utána lévő, hogy cserélj firmware-t. Természetesen kiírta, hogy sikeres volt a feltöltés és törléssel együtt is kértem. Akkor nézem a beállításokat, köszönöm a segítség részét!

eNeS 2019.12.22. 08:50:53

Nos igen, elsősorban azért cserél mindenki firmware-t, mert a gyári firmware kizárólag a saját telefonos alkalmazásával működik, sem webes felülete, sem AP módja nincs, ezt mind az alternatív firmware biztosítja.

amargo · http://gszobi.blogspot.com 2019.12.26. 16:38:13

@eNeS: vélhetően rossz volt a binárisom, már jó.

HanG99 2020.01.29. 12:35:15

Kedves Mindenki!
Sikerült valakinek ezzel az eszközzel már
- 433MHz-es külső hőmérő jelét elfognia?
- 433MHz-es távirányítható dugaljat üzemeltetnie?

aniauto 2020.01.31. 17:53:56

Hali Mindenki :)
a leírtak alapján tökéletesen müködik, a Domoticz gyönyörüen fogadja a jelet.
Abban kérnék segítséget hogy pl egy sonoff pir senzor hogyan tudok betenni a domo alá ?

eNeS 2020.01.31. 23:54:58

A sonoff PIR szenzor csak "mozgás" jelet ad. Szóval létre kell hoznod egy virtuális mozgásérzékelőt Domoticz alatt, amit mondjuk 30 másodperces késleltetett kikapcsolással látsz el. Erről itt írtam: bitekmindenhol.blog.hu/2019/08/10/rtl-sdr_rf_vevo_ujratoltve Ha pedig "fogadja a jelet" a Domoticz, akkor onnan már csak egy lépés ezt a virtuális eszközt ON-ra állítani.

karolyia 2020.02.20. 17:20:09

felraktam a tasmotát, ahogy kell. pyflasher hibát nem jelzett, DE nem látom az AP-t. már próbáltam saját bin-t is, de semmi. volt valakinek ilyen??

karolyia 2020.02.20. 17:24:15

nem szóltam! működik. nem dout modba raktam fel....:D

eNeS 2020.02.20. 18:46:08

na olyan már volt, hogy nem dout módban raktam fel :)

karolyia 2020.02.21. 13:32:53

vamaiért úgy nem működött. viszont az upgrade nem működik. akármelyiket raknám fel, mindig a magic byte hiba jön fel. honnan lehetne más forrásból leszedni? nem mintha fontos lenne, de az opciót meghagynám, hátha kukázok valahol egy időjárás állomást :)

karolyia 2020.02.21. 13:40:17

siker! nem jó simán letölteni!!! az egészet zipben kell leszedni!!!

eNeS 2020.02.21. 18:02:55

le lehet szedni fájlonként is, csak rá kell menni, hogy RAW... mert egyébként HTML-t ad vissza a github, azt nyilván nem lehet feltölteni.

karolyia 2020.02.21. 18:39:42

nyomtam egy jobbgomb-fájl mentését és .hex fájl jött le. a raw meg fogalmam nincs, hogy működik. a gh mondjuk rakhatna ki egy egyértelműbb, könnyen megtalálható gombot, úgy mint amikor zip-ben szedem le. esetleg egyszerűen mindig a fájl elé egy kislemez ikon vagy ilyesmi :)

karolyia 2020.02.22. 05:45:57

köszi! ennyire vak nem lehetek...:D

karolyia 2020.02.22. 05:53:37

a c# megyeget, de ezzel nem megyek el. tudom, hogy tök más, de inkább csak a szintaktika és a változó fajtái szegényesek. ilyet írtam és nagyon összevissza dolgozik. pl az elektromos kazán indítás helyett a nappali fancoil indul. a nappali és az ebédlő fancoil pedig érdekes módon teszi a dolgát. viszont úgy érzem, hogy nincs hiba a felépítésben. természetesen nem távirányítóval fogom kapcsolgatni, de próbálom tesztelgetni.

itt a script:

return {
on = { devices = { "rf bridge" } },

execute = function(dz, item)
local switch1 = dz.devices("Livingroom Fancoil")
local switch2 = dz.devices("Diningroom Fancoil")
local switch3 = dz.devices("Elektromos kazán")

if item.rawData[1] == "9229537" or "2930817" then
switch1.toggleSwitch()
end

if item.rawData[1] == "2930818" or "9229538" then
switch2.toggleSwitch()
end

if item.rawData[1] == "9229540" or "2930820" or "2930824" or "9229544" then
switch3.toggleSwitch()
end
end
}

eNeS 2020.02.22. 09:38:58

valahogy kétlem, hogy ilyen szerkezet létezik egyenlőségvizsgálat OR-al kombinálva, sose láttam még ilyet:
"item.rawData[1] == "9229537" or "2930817""
ilyet esetleg:
"item.rawData[1] == "9229537" or item.rawData[1] == "2930817""

karolyia 2020.02.24. 09:59:59

pedig szintaktikailag helyes. válotozót hasonlít értékkel. x értéke x vagy y vagy z vagy stb... teljesülésekor teszi dolgát. ezzel nincs is baj, hanem, hogy az első if még oké, a másodiknál lefut az első is, a harmadiknál pedig az első és a második is.

aniauto 2020.03.09. 14:24:59

Hello :)
Tasmota 6.4, az EFM feltöltésnél Feltöltés Sikertelen

Magic byte is not 0xE9 hibát ad.
Mi lehet a megoldás ?

eNeS 2020.03.09. 17:19:06

@aniauto: Töltsd le a firmwaret az azt tartalmazó HTML oldal helyett. Ha visszaolvasol karolyia pont ebbe futott bele.
m.blog.hu/bi/bitekmindenhol/image/gh_raw.jpg

aniauto 2020.03.09. 17:31:04

@eNeS: Azt töltöttem: RF-Bridge-EFM8BB1-20181127.hex
ezért nem értem

eNeS 2020.03.09. 18:22:05

Nyisd meg szövegszerkesztővel és mondd meg mit látsz benne. Valamint ellenőrizd, hogy milyen Tasmotát töltöttél fel. Ha a USE_RF_FLASH nincs belefordítva, nem fogja tudni feltölteni természetesen.
github.com/arendst/Tasmota/blob/v8.1.0/BUILDS.md

aniauto 2020.03.09. 18:32:51

@eNeS: ugyan azt látom mint a gh-n lévő, sorrol sorra

aniauto 2020.03.09. 18:49:26

@eNeS: az USE_rf_flash is benne van

eNeS 2020.03.09. 19:08:45

Én megnézném hexa editorral is a hex állományt. Az unicode szövegfájlok elejébe kerül néha két extra bájt, ami nem oda való. Ha ez sem jön be, cserélném a Tasmotát egy 7.x-re, ha az sem, akkor 6.x-re.

aniauto 2020.03.09. 19:42:06

@eNeS: A tasmota verziók cseréje meg volt.
megpróbálom a tippet az editorral.
Nem tudnál valahogy megosztani egy jó .hex file-t ?
Ja és köszönöm a segítséget

mVik 2020.07.07. 10:57:49

@eNeS: ha jól látom 16 különböző RF kódot tud megtanulni.
Tudnál tipped adni, hogy mivel tudnám 18db rádiós redőnyt vezérlését megoldani (fel, le, stop)?

Friss topikok

Címkék

433mhz (12) adc (1) ads1015 (2) ads1115 (1) ajtó (1) alkatrész (23) alternatív kapcsoló (1) am2320 (1) amg8833 (1) analóg (1) android (1) apds-9960 (1) arduino (1) arduinoeasy (5) automatizálás (3) basic (2) basic r3 (1) bemenet (2) bh1750 (1) blitzwolf (2) bluetooth (8) camhi (2) csengő (1) csináld magad (22) dht22 (1) digoo (1) DIY (2) diy (25) do-it-yourself (26) domoticz (7) ds18b20 (1) ds3231 (1) easpeasy (1) ebay (3) érintő (2) érintőkapcsoló (6) érzékelő (11) esp-01 (2) esp32 (2) esp8266 (18) espeasy (2) espurna (1) esp projekt (18) Eview7 (1) feldolgozó (1) felhő (1) fényérzékelő (1) firmware (7) flame detector (1) flash (1) fogyasztásmérő (3) ftdi (1) füstérzékelő (1) gesture (1) gpio (1) hang (4) hangjelző (1) hc-sr501 (1) hőmérséklet (12) htu21 (1) impulzus relé (1) izzó (1) javascript (1) jelenlétérzékelő (2) kamera (13) keresztkapcsoló (1) kézmozdulat (1) kijelző (3) kimenet (18) konnektor (4) lan (3) lángérzékelő (2) led (3) linux (3) logic level converter (1) lua (1) lux (1) maple mini (2) mcu (3) mobil (1) mosfet (1) mozgás (3) mq-2 (2) mqtt (1) MQTT (1) működtető rendszer (5) nedvesség (1) neopixel (1) Node-RED (1) nvr (2) nyitás (4) okosház (5) okosizzó (2) okosotthon (9) oled (1) onvif (5) opencv (1) openwrt (3) orange pi (4) páratartalom (6) php (1) pow (1) programozás (7) projekt (22) proximity olvasó (1) python (1) raspberry (12) raspberry projekt (5) raspbian (1) rcwl-0516 (1) reed (1) relé (20) remote (2) rf (2) rgb (6) rögzítő (2) router (1) rpieasy (1) rtc (1) rtsp (1) shelly (10) shelly em (1) shutter (1) solid state relay (1) sonoff (14) sonoff dual (1) SonOTA (1) soros (1) ssr (1) stm32 (4) szenzor (11) szilárdtest relé (1) szintillesztő (2) sziréna (1) szkript (2) szünetmentesítés (4) t1 (1) t4 (1) tasmota (2) Tasmota (1) távirányító (3) Telegram (1) termékteszt (55) termosztát (1) touch (2) ups (4) usb (5) usb hub (1) valós idejű óra (1) vezérlések (17) vezérlő (5) világítás (4) villanykapcsoló (11) webkamera (1) wiegand (1) wifi (20) ws2812 (1) xiaomi (5) xm (1) xmeye (1) yoosee (1) zigbee (4) zwave (1) Címkefelhő