Sonoff Basic nem értem

Fórumok

Adott egy (illetve több) Sonoff Basic wifis smart relé, amiket többek között az itteni smarthomeos topicokban levő infók alapján is rendeltem. Aki nem ismerné: ez egy egyszerű ESP alapú cucc, van hozzá egy halom alternatív firmware, de akár saját kód is flashelhető rá. Az egész inkább arról szól, hogy az ember 4-5 usd-ért vesz egy ESP-t + relét szépen dobozolva, így elég csak az sw-vel foglalkozni. Ilyen árak esetén szerintem nem éri meg from scratch ugyanezt a vasat megépíteni.

A gyártó (Itead) természetesen ad hozzá saját firmwaret, és saját cloudot (EWelink). Flashelés előtt gondoltam kipróbálom mit tud ez a gyári megoldás. Csináltam egy szeparált guest networkot az eszközöknek, majd a doksi alapján elkezdtem őket setupolni. Ezen a ponton egy számomra érthetetlen dologba futottam bele: a telefonos app gyakorlatilag úgy állítja be a wifit az eszközön, hogy az nem csinál magából ideiglenesen AP-t.

Leírom inkább a lépéseket, az alapján jobban látszik hogy mire gondolok, illetve hogy miért vagyok meglepődve:

- szűz Sonoff Basic dobozból kivesz, áram alá helyez, pair button nyom 5 sec-ig
- telefon csatlakozik az említett guest wifihez, Ewelink app indul
- az app-ban "quick pairing mode"-t adok meg, bekéri a wifi hálózatom jelszavát, majd molyol 3 percig
- a Sonoff újraindul, és sikeresen joinol a megadott wifi hálozatba

Miért is nem értem ezt:

- a Sonoff a dobozból kivéve nyilván nem tudhatja a wifi ssid-m és jelszavam, ezeket én adom meg az app-ban
- a telefon a folyamat alatt végig a saját wifimre csatlakozik, pingelem közben, nem szakad meg vele a kapcsolat egy pillanatra sem
- a telefonon biztosan nem lehet alkalmazásból az user tudta nélkül a háttérben wifi hálózatot váltani, hotspotot vagy ad-hoc kapcsolatot létrehozni (agyonkorlátozott iphone/IOS)
- egy PC-n futó wifi scanner semmilyen idegen hálózatot nem talál a folyamat során
- a Sonoff tényleg egy nagyon faék eszköz, én is szétszedtem, de a net is tele van disassembly videókkal, kapcsolási rajzokkal, biztosan nincs benne GSM, BT, NFC, mikrofon, vagy egyéb más hasonló lehetőség, amin keresztül kommunikálni lehetne vele, csak az ESP alapú wifi áll rendelkezésre
- a routeremen Openwrt fut, nincs wps, vagy egyéb hasonló megoldás
- nincs a környéken nyitott wifi hálózat

A kérdés tehát: hogy a búbánatba küldi át az app az eszköznek a beállítani kívánt SSID-t és a hozzá tartozó jelszót?

Egyébként maga a Sonoff/Ewelink tudna manuális módot is, ilyenkor az egyéb gyártóknál megszokott módon AP-t csinál magából az eszköz, arra kéne ideiglenesen csatlakozni a telefonnal, majd app indít, setupol, stb... Ez viszont a failback megoldás lenne, ha a fenti "quick pairing mode" nem működne.

Bárkinek bármi ötlet, hogy hogy a fenébe oldja ezt meg? Igazából úgyis custom firmware fog rájuk kerülni, szóval security szempontból érdekel a dolog, nem pedig azárt mert használni szeretném az Ewelinket.

Hozzászólások

Igen, arra rájöttem, hogy nem az Itead találta ki.

Amúgy Tasmota lesz rajtuk, ezt már a rendelés előtt eldöntöttem. A gyári Ewelink csak egy pár perces kitérőnek indult, de nagyon elakadtam a fenti jelenségen, és mindenáron meg akartam fejteni. Köszi hogy segítettél benne :)

Amúgy elég durva, hogy ilyen faék módszerrel lehet adatot leakelni akár egy rommá tűzfalazott hálózatból is, elég csak egy rogue app valahol, meg persze wifi.

Semmi konkrét, inkább csak szubjektív szempontok alapján. Mivel nincs még tapasztalatom egyikkel sem, ezért csak a netes véleményeket/doksikat/tutorialokat olvasgattam. Ezek alapján a Tasmota körül nagyobb a community, talán a jövőben lesz olyan eszközöm amit az támogat, az ESPurna és ESPEasy pedig nem. Így homogén lehetne az sw. De az egész csak feltételezés, lehet hogy kipróbálom mindegyiket.

Egyébként Hass-al használnám, mqtt-vel, szóval annyira talán nem is lényeges az egész, ezt mindegyik tudja helyből.

Ezeket a Sonoff-okat meg mindig forrasztani kell hogy flashelni lehessen vagy mukodenek OTA-n is? Az egyetlen dolog amiert nem rendeltem meg beloluk egy marekkal es hszanalom oket mert nincs idom, kedvem, de legfokeppen kezugyessegem forrasztani a lapokra a PIN-eket es hardweresen taknyolni veluk. Az OTA-t ugy ertem hogy egyenesen a gyari EWELINK appbol firmware-t cserelni... Utana mar tudom hogy menne, de a legjobb lenne ha en mis kellene szetkapnom...

Rossz hírem van: nem még mindig, hanem már megint. Megoldották az alternatív OTA-t szépen, de aztán a gyártó adott ki új firmwaret, ami már nem hajlandó szóba állni semmivel, ami nem az Ewelink szerver certjét használja. Így megint megszűnt az OTA lehetőség. Downgrade opció pedig nincs, szóval csak serialon flashelted. Ha rendelsz, akkor esélyes hogy újabb fw-vel kapod, az enyémek 1.8.1-el jöttek, és ha jól rémlik akkor 1.6 alatt kéne hogy legyen az OTA-hoz (ami talán 1 éves dolog).

Ha viszont megflasheled serialon, akkor vége az egész problémának, ahogy írtad is. Alternatív fw-vel megy az OTA, meg azt csinálsz amit akarsz.

Egyébként a folyamat idejére akár az is megoldható, hogy megkéred pl. az asszonyt, hogy segítsen odafogni azt a 4 érintkezőt, és akkor nem kell forrasztani :)

Ott lenne vege a tortenetnek ha en a paromat oda tennem hogy drotot fogjon az en kutyuimhez. Meg nekem sincs kedvem vele tokolni... Ehh nem ertenek ezek a sracok az uzlethez... Minnel orgebb vagyok vagyre inkabb erzem ugy hogy lustulok... az 5 dollaros kutyuert en siman adnek 15-ot is ha csak hasznalhatnam... Sot mar gondolkodtam is rajta hogy megfizetek valakit kiszitse elo nekem ezeket mert en inkabb massal foglakoznek... Kar pedig... Tetszenek nekem de igy ismet nem lesz nekem ilyenem... Mikor jonnek ra a fiuk hogy kb 3x annyit adnanak el belole ha "just works" lenne...

Pontosan ezt csinálják pedig. A saját cloud meg a telefonos app arra van, hogy akik nem értenek hozzá és/vagy lusták, azoknak tényleg 1-2 gombnyomásra működik minden. Erről szól az ESP touch config is, amivel indult a topic. Gyakorlatilag minden ilyen jellegű smart home cucc "just works", az iTead/Sonoff abból a szempontból jobb, hogy nagyon könnyen és egyszerűen hackelhető rá custom szoftver.

Te viszont nem is vagy lusta, meg gondolom értesz is hozzá, ha már custom firmwaret szeretnél, illetve vélhetően van/lesz valami központi megoldásod is (Home Assistant és társai). Ha nem akarsz semmi ilyesmit, akkor viszont minek a custom fw?

Egyébként ahogy az alattam szóló írta, oda lehet fogni egyedül is a jumper kábeleket, szóval ez sem áll az utadba :) A szétszedéshez se kell csavarhúzó, pattintós a doboz, és elég könnyen enged.

Igen van mukodo Home Assistantom egy rakat ZWave ezzkozzel meg HomeMatic meg Ring, meg minden egyeb bohocsag... Kb 15-20 ilyen eszkozt tudnek hasznalni - a meglevo kb 35 zwave kapcsolo mellett... A bajom az hogy nalam 1 eszkoz nem eszkoz, en nem azert hasznalnam, hogy szorakozzak, hogy az ejjeli lampat be tudom kapcsolni de ha mar odaerek, hogy 15-ot kell firmware-zmom, bekonfigolnom, MQTT enroll, elnevezni, group-ba rakni akkor az mar boven eleg ido es a forrasztas - "odafogom" mokolas - ez elsos - trial-error, most csinalom eloszor stb mar boven 3-4 ora x*rozas... Plane annak a fenyeben hogy nekik aztan igazan semmibe nem kerulne nyitva hagyni, pont az a dolog amikor inkabb hagyom es masfele nezelodom meg ha dragabb is... a gyari firmware mukodik MQTT - Home Assiatantal vagy a csak szokasos gogyikinai appal aminek egyik fele angol a masik kinai ?

Működik, de siralmas: mqtt nincs, az Ewelink cloudnak van valami apija, azt lehet pl. curl-el hívogatni, és Hass-ba integrálni. Szóval ha nincs net, akkor 'szhatod. Meg a franc sem akar kínai cloud függést a lakásába, se így se máshogy. Szóval szerintem ez felejtős.

A régi firmwareben volt köztes megoldás, mert maga az ESP hívható volt direktben webes apin, de ahogy az ota se megy a cert probléma miatt, így már ez sem működik.

Egyébként a 3-4 órát értem, csak annak jelentős része szerintem olyan task, amit amúgy is meg kéne csinálnod bármilyen eszközzel (mqtt enroll, elnevezés, stb..), nem?

Elkészítettem egy sonoff basic software-ét. Mivel nálam csak kapcsolnak, így mindegyikre ugyanaz a software megy. A szétszedés, forrasztás, flashelés, összeszerelés, ha nagyon ráérősen csinálom, akkor maximum 15 perc. De ebben már a páka melegedése is benne van.

Elnevezés…: Egy konfigurációs fájlban vannak az adatok, amit akár OTA is fel tudok tenni, így egy újraindítás után már az új adatokkal indul az eszköz. Korábban mqtt utasításokkal is lehetett módosítani a fontosabb beállításokat, de ezt végül töröltem, mert sohasem használtam.