dzięki @steel ale też nie poszło.
Walczę teraz z tym, czemu esp się resetuje-mam tezę i wniosek.
Najpierw wniosek. Rób zawsze coś step by step, jak wprowadzasz coś nowego wprowadź odczekaj, ale zawsze tylko jedną rzecz. Stanowisko testowe obok miejsca ruchu, koniecznie wyswietlacze LCD do esp-bo one pokazują kiedy ten gnój się resetuje. To go zdradza.
Teza. Podejrzewam to, że wprowadziłem skrypty w rules johnsona:
on pzem_aux#Power do SendToHTTP 192.168.0.107,8080,/json.htm?type=command¶m=udevice&idx=203&nvalue=0&svalue=[pzem_aux#Voltage] SendToHTTP 192.168.0.107,8080,/json.htm?type=command¶m=udevice&idx=201&nvalue=0&svalue=[pzem_aux#Power] SendToHTTP 192.168.0.107,8080,/json.htm?type=command¶m=udevice&idx=205&nvalue=0&svalue=[pzem_aux#Energy] endon
A w którym miejscu stosujesz moje polecenia? Można by je dodać w rulez gdy zmienia się wartość output.
Co do restartu ESP. Powyższe polecenia nie mają wpływu na te restarty. To jest tylko wysłanie danych do domoticza i nawet jak nie będzie działał domoticza to nic nie powinno się stać.
Jak w przeglądarkę wpiszesz
192.168.0.107:8080/json.htm?type=command¶m=udevice&idx=190&nvalue=1
i zatwierdzisz enterem, to nie zapala się lampka w Domoticzu?
Co do logów po restarcie lecą od nowa.
Byś musiał się podłączyć laptopem i zapisywać do pliku. Ewentualnie obserwuj logi i zobacz kiedy się restartnie. Może coś zobaczysz.
Zapaliło 🙂
Czyli działa. Jak dasz 0 w nvalue to zgaśnie lampka. Inna sprawa że powinieneś wysłać te polecenia np gdy status=1 wysyłasz polecenie załączające gdy status=0 - wyłączające. Czy co tam ESP wyświetla przy przełącznikach.
Albo spróbuj coś takiego bez warunków .
SendToHTTP 192.168.0.107,8080,/json.htm?type=command¶m=udevice&idx=190&nvalue=[zk#output]
To co jest błędne w rules:
on zk#Output do SendToHTTP 192.168.0.107:8080/json.htm?type=command¶m=udevice&idx=190&nvalue=1 SendToHTTP 192.168.0.107:8080/json.htm?type=command¶m=udevice&idx=190&nvalue=0 endon on pcc#Output do SendToHTTP 192.168.0.107:8080/json.htm?type=command¶m=udevice&idx=191&nvalue=1 SendToHTTP 192.168.0.107:8080/json.htm?type=command¶m=udevice&idx=191&nvalue=0 endon on KG#Output do SendToHTTP 192.168.0.107:8080/json.htm?type=command¶m=udevice&idx=192&nvalue=1 SendToHTTP 192.168.0.107:8080/json.htm?type=command¶m=udevice&idx=192&nvalue=0 endon
No raczej. Zobacz post nad twoim postem. Tam napisałem inaczej
Już chyba wiem co źle robię, źle jest podane on i off.
on zk#Output do SendToHTTP 192.168.0.107,8080,/json.htm?type=command¶m=udevice&idx=190&nvalue=0 SendToHTTP 192.168.0.107,8080,/json.htm?type=command¶m=udevice&idx=190&nvalue=1 Endon on pcc#Output do SendToHTTP 192.168.0.107,8080,/json.htm?type=command¶m=udevice&idx=191&nvalue=0 SendToHTTP 192.168.0.107,8080,/json.htm?type=command¶m=udevice&idx=191&nvalue=1 Endon on KG#Output do SendToHTTP 192.168.0.107,8080,/json.htm?type=command¶m=udevice&idx=192&nvalue=0 SendToHTTP 192.168.0.107,8080,/json.htm?type=command¶m=udevice&idx=192&nvalue=1 Endon
Czy ten kod jest prawidłowo ? w sensie on-off?
Włącza mi żarówkę, ale nie wyłączy jej- tzn widzę, że próbuje, ale coś ją trzyma.
Ja bym tak to napisał.
on zk#Output=0 do
SendToHTTP 192.168.0.107,8080,/json.htm?type=command¶m=udevice&idx=190&nvalue=0
endon
on zk#Output=1 do
SendToHTTP 192.168.0.107,8080,/json.htm?type=command¶m=udevice&idx=190&nvalue=1
endon
lub zrub tak, też powinno działać
on zk#Output do
SendToHTTP 192.168.0.107,8080,/json.htm?type=command¶m=udevice&idx=190&nvalue=[zk#output]
endon
Dobra, dziękuję, tak działa, jedynie zamieniłem 1,0 0,1 bo żarówka świeciła kiedy był brak przepływu, sorry, że tak wam zawracam d :). jedyny minus to taki, że jak ręcznie wyłączę żarówkę to musi zrobić cały cykl od nowa, wyłącz włącz i wtedy prawidłowo sygnalizuje
on zk#Output=0 do SendToHTTP 192.168.0.107,8080,/json.htm?type=command¶m=udevice&idx=190&nvalue=1 endon on zk#Output=1 do SendToHTTP 192.168.0.107,8080,/json.htm?type=command¶m=udevice&idx=190&nvalue=0 endon on pcc#Output=0 do SendToHTTP 192.168.0.107,8080,/json.htm?type=command¶m=udevice&idx=191&nvalue=1 endon on pcc#Output=1 do SendToHTTP 192.168.0.107,8080,/json.htm?type=command¶m=udevice&idx=191&nvalue=0 endon on KG#Output=0 do SendToHTTP 192.168.0.107,8080,/json.htm?type=command¶m=udevice&idx=192&nvalue=1 endon on KG#Output=1 do SendToHTTP 192.168.0.107,8080,/json.htm?type=command¶m=udevice&idx=192&nvalue=0 endon
To jak ESP wskazuje 0 to masz mieć zalaczona lampkę?
Dobra, dziękuję, drugi sposób, drugi skrypt Rules też działa, a jest krótszy, będę was wychwalał po wszystkich odpustach.Zmieniłem Output na State i już logika jest ok.
on zk#State do SendToHTTP 192.168.0.107,8080,/json.htm?type=command¶m=udevice&idx=190&nvalue=[zk#State] endon on pcc#State do SendToHTTP 192.168.0.107,8080,/json.htm?type=command¶m=udevice&idx=191&nvalue=[pcc#State] Endon on KG#State do SendToHTTP 192.168.0.107,8080,/json.htm?type=command¶m=udevice&idx=192&nvalue=[KG#State] endon
A to stąd te wszystkie komendy do ESP się bierze:
https://espeasy.readthedocs.io/en/latest/Reference/Command.html#internal-commands
czyli baza to:
192.168.0.111/control?cmd=
i dodajemy komendę, np. ResetFlashWriteCounter
192.168.0.111/control?cmd=ResetFlashWriteCounter
noo fajne to, takie amerykańskie
Finalnie. Ostatnie szlify - normalnie jak krew z nosa, ale nauka kosztuje. Lampka od kotła gazowego ma się nie świecić -bo kocioł jest odstawiony, choć przekaźnik na niego jest "on". W tym skrypcie już to ująłem:
on zk#State do SendToHTTP 192.168.0.107,8080,/json.htm?type=command¶m=udevice&idx=190&nvalue=[zk#State] endon on pcc#State do SendToHTTP 192.168.0.107,8080,/json.htm?type=command¶m=udevice&idx=191&nvalue=[pcc#State] Endon on KG#State=0 do SendToHTTP 192.168.0.107,8080,/json.htm?type=command¶m=udevice&idx=192&nvalue=1 endon on KG#State=1 do SendToHTTP 192.168.0.107,8080,/json.htm?type=command¶m=udevice&idx=192&nvalue=0 endon