Witam
Mam dziwny problem z załączaniem modułu z przekaźnikami.
Moduł z 8 przekaźnikami podpięty jest do NODEMCU v3 z oprogramowaniem ESP Easy Mega a tym wszystkim ma zarządzać raspberry z Domoticz.
ESP EASY Skonfigurowane zasadniczo tylko w sekcji: Controllers > Domoticz HTTP. Wszystkie inne ustawienia to default, brak Devices .. RUles .. nic.
W Domoticz dodany Przełącznik IDX 132, wszystko działa poprawnie. Przełącznik włącza i wyłącza mi przekaźnik wpięty do GPIO12 na płytce Nodemcu
No i teoretycznie wygląda OK, działa. Konfiguruję więc w ESP EASY w sekcji Devices, ponieważ chcę aby moduł wysyłał do domoticz informacje o stanie przekaźnika.
No i od tej chwili dzieją się dziwne historie. Domoticz nadal włącza i wyłącza przekaźnik by po chwili bez żadnej mojej ingerencji włączyć go i wyłączyć z 15 razy. Po chwili przestaje. Włączam - działa, wyłączam - działa, włączam a ten znów w szalonej pętli kilka naście razy włącz wyłącz. Wydaje mi się, że jak w domoticz klikam przełącznik włącz/wyłącz powoli, w pewnych odstępach czasowych to jest OK. Jeżeli jednak kliknę za szybko włącz/wyłącz/włącz to wpada on w jakaś pętlę.
Dziwny problem, siedzę już sporo czasu, kombinuję z różnymi ustawieniami i nadal nic. Ten post to kapitulacja 🙂
Spotkał się ktoś z podobnym problemem ?
Która wersja domoticza? Jak masz skonfigurowany Domoticz HTTP? Co jeszcze może zmienić stan przekaźnika oprócz Domoticza? Która wersja ESP?
Domoticz:
Version: 2021.1
Build Hash: 8547c5b7e
Compile Date: 2021-04-17 17:29:11
dzVents Version: 3.1.7
Python Version: 3.7.3 (default, Jan 22 2021, 20:04:44) [GCC 8.3.0]
NODEMCU v3 z ESP Easy MEGA : ESP_Easy_mega_20211224_normal_ESP8266_4M1M
Konfiguracja Controllers na ESP:
Nie ma opcji, żeby coś zmieniało stan przekaźnika, raczej bym o tym wiedział. Domoticz steruje bramą, oświetleniem, kotłownią, alarmem, masą innych przełączników i czujników. Mam też mniejszy moduł przekaźników ale podpięty bezpośrednio pod RPI. Mam też inne NODEMCU w sieci ale bez przekaźników, wszystko działa poprawnie.
Testowałem na dwóch układach NODEMCU - to samo.
W logach domoticz to wygląda jakby ESP włączało przekaźnik , DOMOTICZ go wyłączał i tak w kółko - choć nic i nikt w tym czasie nie 'dotyka' włącznika SW1.
9.249 - to domoticz
9.232 - to ESP
2022-03-07 07:25:48.613 Status: User: pi (IP: 192.168.9.249) initiated a switch command (132/SW1/On)
2022-03-07 07:25:48.613 Status: User: pi (IP: 192.168.9.232) initiated a switch command (132/SW1/Off)
2022-03-07 07:25:48.613 Status: User: pi (IP: 192.168.9.249) initiated a switch command (132/SW1/On)
2022-03-07 07:25:48.613 Status: User: pi (IP: 192.168.9.249) initiated a switch command (132/SW1/On)
2022-03-07 07:25:48.613 Status: User: pi (IP: 192.168.9.249) initiated a switch command (132/SW1/On)
2022-03-07 07:25:48.613 Status: User: pi (IP: 192.168.9.232) initiated a switch command (132/SW1/Off)
2022-03-07 07:25:48.613 Status: User: pi (IP: 192.168.9.249) initiated a switch command (132/SW1/On)
2022-03-07 07:25:48.613 Status: User: pi (IP: 192.168.9.249) initiated a switch command (132/SW1/On)
2022-03-07 07:25:48.613 Status: User: pi (IP: 192.168.9.232) initiated a switch command (132/SW1/Off)
@almurik nie korzystam z tego firmware a już na pewno nie z http , ale pamiętam że był problem z odwróconą logiką dla przekaźnika . Masz to zaznaczone więc pewnie nie chciałeś przerabiać logiki sprzętowo ( tranzystor)
@isom też myślałem że to problem odwróconej logiki ale bez odwróconej logiki zachowuje się to tak samo. Oczywiście wyłącznik w domoticz pokazuje wtedy odwrócony stan ale też samoczynnie przekaźnik się włącza i wyłącza.
@almurik ten soft nie sprawdza się dobrze z przekaźnikami. Wgraj AFE lub Tasmote.
Dziękuję za odpowiedzi,
Przetestowałem i nawet MQTT nie bardzo chodzi. Działa jednostronnie ESP - > domoticz a w drugą stronę sypie błędami. Zniechęciło mnie 🙂
Co polecacie zamiast ESP Easy, żeby obsłużyć moduł przekaźników i jednocześnie czujniki DS18B20.
AFE ? - Którą wersję bo dotychczas tylko z sonoff basic używałem
Tasmota ? http://ota.tasmota.com/tasmota/release/ ? - bo też znalazłem jakieś inne wersje. Też mam tylko na sonoff th16 i nie wiem czy obsłuży to co chcę.
Radzę sobie bez PL.
W sumie zajęło to 10 minut, tasmota wgrana MQTT działa jak trzeba od razu. Przekaźniki już nie świrują ale nie mogę dodać wszystkich. Robiłem konfigurację na czuja i wszystko było ok to 5-go przekaźnika.
Mam dodanych 6 przekaźników które 'pykają' jak trzeba:
Dlaczego jednak w "domoticz parameter" pojawiają się tylko 4 pierwsze (jak był skonfigurowany jeden relay to był tylko idx 1, jak drugi to pojawił się idx2 i tak do max idx4). Jak skonfigurować dwa pozostałe do współpracy z Domoticz ?
Drugie pytanie. Podczas podłączenia zasilania do ESP wszystkie skonfigurowane przekaźniki powyżej załączają się raz i od razu wyłączają. Potem już działają normalnie. Czy można jakoś temu zaradzić ?
edit: ok znalazłem powód dlaczego tylko 4idx dla domoticz parameters: https://github.com/arendst/Tasmota/issues/4266, ale rozwiązania nie 🙂
@almurik Rozwiązaniem problemu z pozostałymi przekaźnikami może być kompilacja własnej wersji tasmoty, użycie wtyczki Tasmoticz , użycie autoDiscovery mqtt , lub ostatecznie reguły w tasmota. Pierwsza opcja wymaga trochę zabawy , druga i trzecia są chyba najprostsze i nie wymagają nawet konfiguracji IDX w tasmota , ostatnia możliwość wymaga poczytania dokumentacji i wysłania stanów przekaźników za pomocą wewnętrznych reguł w tasmota.
Klepiące przekaźniki na starcie to kwestia sprzętowa a nie soft , masz tani moduł z przekaźnikami wyzwalanymi stanem niskim czyli przy odłączeniu zasilania taki właśnie stan jest na wejściach tych przekaźników , zanim tasmota poda na każde GPIO 3V występuje takie zjawisko, że przekaźniki się na ułamek sekundy załączą i jak dostaną stan wysoki (3V) to się wyłączą. Dołóż tranzystory na wejściach i zmień logikę na bez "I" a tego efektu nie będzie.
Dzięki za pomoc. Tak myślałem ale późno było i nie zdążyłem doczytać.
Jakby ktoś szukał rozwiązania to zostawiam rozwiązanie dla 5 i 6 przekaźnika na podstawie moich danych (idxów).
W tasmota rules, przekazuje stan do MQTT i domoticz:
rule1
on POWER5#state=1 DO publish domoticz/in {"idx":145,"nvalue":1} endon on POWER5#state=0 DO publish domoticz/in {"idx":145,"nvalue":0} endon
on POWER6#state=1 DO publish domoticz/in {"idx":146,"nvalue":1} endon on POWER6#state=0 DO publish domoticz/in {"idx":146,"nvalue":0} endon
W domoticz na włączniku dla 5-tego przekaźnika, sterowanie z wykorzystaniem linku:
"Włącz akcję"
http://192.168.9.232/cm?cmnd=Power5%20On
"Wyłącz akcję"
http://192.168.9.232/cm?cmnd=Power5%20offlub gdy mamy hasło do tasmota
http://192.168.x.xxx/cm?user=admin&password=xxxxxxx&cmnd=Power5%20On
Tak jak pisałem ostatecznie tak można, ale nie jest najlepsze rozwiązanie ( mieszasz mqtt z http) , wykorzystaj możliwości autodiscovery mqtt w domoticz a zobaczysz jakie to proste , ale dzięki za wstawienie tego rozwiązania ( archaiczne ale działa)
Tak, mam zamiar zainteresować się "autodiscovery mqtt" (jakkolwiek to działa muszę coś poczytać bo narazie bladego pojęcia o tym nie mam). Mieszanie mqtt z http też mi się nie podoba ale podałem rozwiązanie - stan na teraz. Jak uda mi się zrobić to lepiej to napewno opiszę - bo nie lubię w internecie niedokończonych postów w stylu (rozwiązałem ale nie powiem jak). No chyba, że zostanę przy obecnym rozwiązaniu bo w sumie 4 przekaźniki mi wystarczają a walka z pozostałymi to tylko dla zasady.
@almurik i tak według mnie zrobiłeś krok milowy przechodząc na tasmotę, ale przy takich prostych projektach ja zdecydowanie polecam AFE.
Dlaczego ?
Im mniej rozbudowany kod tym stabilniejsze działanie , tasmota to kombajn z ogromnymi możliwościami ( nie zawsze potrzebnymi)
Przy korzystaniu np z termometrów w AFE masz możliwość skonfigurowania każdego czujnika indywidualnie, w tasmota możesz ustawić jedno raportowanie dla wszystkich
Najnowsze wersje AFE integrują się z Domoticz tak prosto, że prościej już chyba się nie da https://youtu.be/cM_VB_pA8WA
I żeby nie przeciągać na tym poprzestanę.
@isom Czy ja wiem czy krok milowy. Z ESP easy walczyłem 2 dni, ciągle jakieś problemy, a wygrałem je na start ponieważ mam je na jednym układzie, ale tam mam tylko czujniki DS18B20 i działa ok od 2 lat.
Tasmote jak pisałem wgrałem i skonfigurowałem chyba w 10 minut no ale też już to robiłem .... 3 lata temu 🙂 . Zaczynałem ogólnie 3 lata temu od wgrania AFE na sonoff basic i nadal tam są. Wyjątkiem jest sonoff th16 gdzie była pierwsza tasmota z uwagi, że AFE wariowało podobnie jak ESP easy teraz - załączało i wyłączało bez przyczyny przekaźnik ( jest tu zresztą wątek o tym) . Nie wiem jak teraz AFE, ale tasmota w tamtym czasie miała przewagę w postaci "rules". Mogłem zrobić sobie 'bezpiecznik' gdyby np padło wifi i połączenie z RPI. Aczkolwiek nie wykluczam, że nie wgram AFE - tylko które w tej chwili biorąc po uwagę obsługę powiedzmy 6 przekaźników i 8 xDS18B20 ?.
Testuję różne rozwiązania do w miarę stabilnego i bezpiecznego sterowania Buforem Ciepła i grzaniem bojlera.
@almurik bez problemu możesz wgrać wersję T1 E2 z jednym zastrzeżeniem , jest tylko 4MB czyli moduły takie jak wemos, czy nodemcu , do sonoff 1MB nie podejdzie. W tej wersji masz wszystkiego po 8 szt , tzn przekaźniki, czujniki , termostaty, ledy, przyciski.
Termostaty to takie wewnętrzne regulatory gdzie możesz ustawić temp zał i wył dowolnego przekaźnika i działa to niezależnie od domoticz .
@isom spróbuje napewno. Wpierw muszę też zaktualizować domoticz bo czytałem właśnie, że w nowej wersji jest :
- Implemented: MQTT Auto Discovery hardware (for Zigbee2MQTT/ZWaveJS2MQTT and others)
I chciałbym to wpierw na tasmota wypróbować.
Wg opisu ma 4 MB
Specyfikacja modułu WiFi ESP 8266 + NodeMCU v3
- 10 GPIO - każdy może działać jako PWM, I2C lub 1-Wire
- Wbudowane złącze microUSB
- Pamięć flash: 4 MB
- Konwerter USB-UART CH340
- Wbudowana antena PCB
- Raster wyprowadzeń: 2,54 mm
- Prędkość komunikacji: 115200 baudrate
- Rozstaw złącz: 28 mm
- Wymiary modułu: 58 x 30 mm
Poza tym wgrywałem ESP_Easy_mega_20211224_normal_ESP8266_4M1M.bin. "4m1m to" chyba 4 mega ?
OK, będę testował AFE jednak jak pisałem, skoro mam już tasmote to chciałem sprawdzić jak działa mqtt auto discovery. Nie znalazłem jasnego opisu co i jak, więc standardowo na czuja. Działa. Opisze w paru screenach , może też komuś się przyda. Możliwe, że i mi się przyda jak zapomnę... .
Wpierw zaktualizowałem domoticz:
Version: 2022.1
Build Hash: c9526851b
Compile Date: 2022-01-31 09:34:32
W domoticz konfiguracja>sprzęt dodałem:
gdzie adres zdalny, port, użytkownik i hasło to dane do serwera mqtt
Nie znalazłem informacji dlaczego działa tylko jeżeli w domoticz "Auto Discovery Prefix" jest wpisane:
"homeasisstant"
W tasmota nic nie zmieniałem, konfiguracja MQTT bez zmian:
natomiast w konsoli tasmota:
SetOption19 1
When SetOption19 = 0, send Tasmota's custom MQTT discovery format
When SetOption19 = 1, send Home Assistant's MQTT discovery format
W domoticz pojawiły się nowe urządzenia automatycznie:
Działają.
Działają także wcześniej dodane przełączniki (opisane w poprzednich postach).
Jeżeli ktoś znający się to czyta i coś jest nie tak, że taka konfiguracja może spowodować zagładę ludzkości - chętnie przyjmę krytykę.
EDIT.
Niestety tasmota poległa. O ile przekaźniki działają stabilnie, to po podłączeniu akurat na testy dwóch DS18B20 kolejne problemy. Czujniki raz są wykrywane dwa poprawnie, by po restarcie pojawił się tylko jeden z tych dwóch, albo pierwszy albo drugi, albo w ogóle żaden. Nie wiem, sprawdzę jeszcze czy to nie kwestia zasilacza bo wydaje mi się, że podłączyłem to do największego trupa jaki mam. Do tego w wyniku takiego pojawiania się i znikania czujniki w domoticzu > urządzenia są powielane z różnymi idx. Normalnie zawiodłem się - idę skoczyć z mostu 🙂
Jeżeli chodzi o AFE t1 E2. Tak przetestowałem. CHyba wypada najlepiej choć mam też wątpliwości. Przekaźniki i temp działa ale zdecydowanie lepiej na HTTP niż MQTT. Dlaczego ? Jak na MQTT nacisnę w domoticz przekaźnik wielokrotnie bardzo szybko (nie jakoś mega szybko) to ostatecznie przełącznik może zostać w domoticz włączony a przekaźnik wyłączony - trzeba naciskać bardzo wolno. Przy HTTP nie ma tego problemu, naciskam przełącznik w domoticz jak szalony i ostatecznie włączy i wyłączy się tyle razy ile kliknąłem. Nie wiem czym to może być spowodowane. Wiadomo, nikt nie będzie klikał jak szalony ale czasem się myszka omsknie i zrobi wieloklika... . Do tego (bez urazy :)) czuję jakiś dystans po tym co odwalał mi kiedyś sonoffth 16 z AFE który mało mi chałupy nie wysadził.
No, ale i tak jak przewidział @isom, wypada najlepiej :)).
EDIT EDIT
Tasmota. Tak przyczyną gubienia DS18B20 był słaby zasilacz. Zmieniłem, jest OK. Sprawdziłem też na tasmota (komunikacja mqtt auto discovery) jak reaguje na szybkość kliknięcia w domoticz na włącznik - nie jest tak szybki jak AFE przy HTTP ale nie gubi się jak AFE przy MQTT i ostatecznie stan w domoticzu jest taki sam jak faktyczny przekaźnika.
Wyszedł niechcący z tego wątku jakiś test wiec jak już tak, to zakończę go wynikiem - w skali od 1-10
Espeasy: ABS(-1) 💣 🤮 🤮
Tasmota: 8 🍾 🍾
AFE: 8 🍻 🍻 🍻 🍻 🍻 ❤️ 🧐 🍾 🍷 🍸
🙂