Egy időben eljátszottam a gondolattal, hogy meghagyom a hagyományos villanykapcsolóimat, és az alábbi képen látható, miniatűr (40x25x19mm) wifis relét helyezem alájuk a kötődobozba:
Külön kiemelném az ESP-01 modul sárga foglalatát, amiből kivéve programozható.
Kapható hasonló, de fizikailag kicsit hosszabb (a hátulja LC Technology felirattal ellátott, fekete színű a foglalattal, és 90 fokkal elforgatva van benne az ESP-01 a fenti képhez képest) relé is, amin nem az ESP-01 valamely GPIO-ja, hanem egy soros kapcsolaton át csatolt STC15F104W MCU-n keresztül vezérli a relét! Nem ugyanaz, mint a képen szereplő, általam tesztelt, ami sokkal egyszerűbb!
Az alapötlet az volt, hogy az egyik GPIO vezérelte volna a relét, a másikra a felette levő mechanikus kapcsoló (BE/KI) állapotát továbbítottam volna. Ám mivel külön 5V táp is kell a működéséhez, ami nagyjából duplázza a magasságát, ezt a megoldást végül elvetettem, maradtam a Touch, illetve impulzusrelés megoldásoknál. De mivel egy cirka 900Ft-os tételről van szó, azért ettől független próbára szereztem be egyet, "bármire jó lehet" címmel...
Esetleg el tudom képzelni pl konyhai (egyszínű) fehér LED világítás ki-be kapcsolgatására, bár erre vannak szofisztikáltabb megoldások is, ahol maga a panel is DC12V-ról megy (bár ennek nem tűnik könnyűnek a flashelése), így nem szükséges az 5V-12V átalakítás sem, és csak kicsit drágábban már kész RGB-s Wifis vezérlő is van, szóval nem annyira nagy ötlet. Találtam olyan variánst is, ami tartalmazza a 220V tápegységet is, de hozzáértők felhívták a figyelmemet, hogy egy ponton veszélyesen közel van a gyengeáramú és az erősáramú csatlakozás, így ennek beszerzésétől és tesztelésétől némi vívódás után eltekintettem.
Mivel az ESP-01 az ESP8266 család legegyszerűbb tagja, csak két GPIO van kivezetve rajta, ezért multiszenzor kialakítására nem alkalmas, leginkább csak egyszerű kapcsolóként tud funcionálni. (a rajta levő GPIO0 és GPIO2-nek is vannak speciális jelentései, így I2C-re sem a legalkalmasabb)
A hozzá adott eredeti firmware nem felhős, egyszerű AP-ként indul, amire mobiltelefonnal lehet kapcsolódni. De megszoktam már az MQTT képes, webes felületű firmware-eket, így rövid tépelődés után az ESPEasy és Tasmota között, végül a Tasmotát választva nekiestem a soros flashelésnek.
Megjegyzés: a jelenleg e-bayen kapható ESP-01S modulok memóriachipjei valami irtó olcsó "PUYA" nevű gyártótól származnak, amin az SPIFF elérési mód sajnos nem igazán megy. Az ESPEasy modern változatai ezt használnák, így sajnos csak a régi R147 bináris indulna el rajta, a Tasmota (>5.2) ellenben nem használ SPIFF-et, így a legújabb verzió is gond nélkül megy rajta, és az egylépcsős OTA frissítés is menni fog vele az első kézi soros firmware csere után. Nagy programlogikát nem lehet gyártani a két darab GPIO-ra, így az ESPEasy-ben jelen levő nagyfokú beállítási szabadság és a szabályok nélkül éppen elvagyok ennél az eszköznél. :)
Mivel nincs nyomógomb kötve a GPIO0-ra, így saját binárist fordítottam a Tasmota forrásokból, amibe beágyaztam a WiFi jelszavamat is, de a GND és GPIO0 lábak egymás után négyszeri összezárásával tudjuk szimulálni a négy gombnyomást is, amitől aztán beállítási AP módba áll és "sonoff-xxxx" néven elérhető az eszköz. (közben a relé is kattoghat, de az eredményt nem befolyásolja)
Az ESP-01 lábkiosztása a lapka alján is fel van tüntetve, de egyébként így néz ki:
Az USB-soros átalakítót a következőképpen lehet rákötni:
Rengeteg hasonló bekötési rajz taláható a neten, ahol egyéb ellenállások is vannak bekötve a CH_PD elé, meg a RESET elé is, én a megtalált legegyszerűbb megoldást választottam, mert szeretem az egyszerű megoldásokat. Meg előrelátóan rendeltem belőle tartalékot is. :) De nem volt rá szükség, semmi baja nem lett az eszköznek.
Az USB programozó 3V3-át rákötöttem direktben a VCC-re és a CH_PD-re, a GND a GND-re, TX RX-re, RX-TX-re, valahogy így:
Ezek után felküldtem a szokásos módon Nodemcu Pyflasher segítségével DOUT módban a tasmota sonoff.bin állományt, újraindítás után máris csatlakozott a WiFi hálózatra. Megjegyzem, a soros feltöltésnél 9600 baud sebességet választva legbiztosabb a siker ennél a - nem túl izmos - típusnál.
UPDATE: ha önmagában sikerült felprogramozni és elérni az ESP-01-et, de visszadugva a panelre már nem üzemel, akkor mérjünk rá a CH_PD lábra bekapcsolás után, ugyanis, ha ez nincs felhúzva VCC-re (ami 3.3V), lehet hibás a panelünk, melyet egy ellenállás megfelelő helyre forrasztásával korrigálhatunk.
Természetesen ekkor még a relé állapotát nem tudjuk változtatni, először be kell állítani, hogy a GPIO0 a relé, a GPIO2 meg igazából semmit nem csinál, lehet pl bemenetként alkalmazni.. alapban csak az ESP-01S tetején látható kék színű LED-et kapcsolgatja a GPIO2, így akár állapotjelzőként használhatjuk az alábbi szerint:
A bejegyzés trackback címe:
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.
BaCsaba 2020.09.06. 14:49:25
Nagyon tetszenek ezek a "régi" cikkek is, sokat inspirálódom belőle. Pont megjártam én is a soros porton kommunikáló relével (bár már van rá tasmota támogatás), váltottam IO-ra kötött változatra. Épp most szólalt meg. Tasmota jelenlegi verziója (8.4) már közvetlenül rátölthető ESP-01-re és bár a komponenseket átszámozták (pl, relay1 nem 17, hanem 21), még a relay1i (29) is megoldható, mert mindent inverze módon van bekötve, relé és LED is.