Fajnie by było jakby powstały poradniki.
@Cezary.K pomyśl o kanale na YouTube
Będę oglądał regularnie
Dzięki za propozycję ale to nie moja bajka . Osobiście jestem zwolennikiem czytania poradników, jak są ilustrowane to już super. Jak mogę z nimi pracować w swoim tempie z mnóstwem pootwieranych okien to jest to. Najlepiej testować od razu na żywym sprzęcie, jestem w swoim żywiole (warsztacie). Poradniki YT szybko zaczynam przewijać i łatwo zgubić istotne szczegóły.
To może warto założyć bloga.
Nie ma takiego polskojęzycznego bloga który objaśniał był dobrze tasmota
Idealna nisza do zagospodarowania.
Jak będzie trzeba to jak najbardziej będę chętny na wszelką pomoc ale być może wystarczy dobrze skonfigurować Tasmotę lub HA i będzie grało tak jak ma być.
Screen z logów:
“Zasterowany” - miałem na myśli, że po rozłączeniu i ponownym połączeniu z siecią WiFi jest reakcja przekaźnika, taka jak to ja bym “wcisnął” przycisk w panelu HA.
Więc jeżeli nie będzie trzeba to zostaję przy tasmot’a, a jak nie będzie innego wyjścia to chciałem wgrać ESP
Pozdrawiam
Widać z log’ow że komenda idzie z HA, ale nie bardzo rozumiem dlaczego POWER2 jest podpięte pod przekaźnik, bo tak wynika z twojego opisu.
Pokaż kartę konfiguracji modułu Tasmota z widokiem przypisanych GPIO.
Z rzutu ekranu nie widzę wszystkiego w logach brakuje także momentu zerwania i połączenia ponownego do wi-fi.
Ale na początek podaj co masz w konsoli po wpisaniu PowerOnState
?
Jako tako połączenia nie zrywa (w linii prostej Sonoff jest 2m od routera) ale w przypadku zaniku prądu / restarcie Sonoffa, otwiera mi się brama garażowa i można wejść do domu. Więc jedt ot sytuacja niedopuszczalna. Ewentualnie mógłbym mieć powiadomienie PUSH na telefon na którym mam zainstalowany HA (iOS) i z którego mam dostęp do całego HA. Tylko jak takie powiadomienie zrobić?
Wyniki z konsoli:
12:34:17.598 CMD: PowerOnState
12:34:17.605 MQT: stat/dom_XXXXXX/RESULT = {“PowerOnState”:0}
Oczywiście nie ma dom_XXXX ale tej wartości raczej nie powinienem podawać?
Dodam, że po restarcie samego HA również sonoff “otwiera” bramę
Czyli konfiguracja PowerOnState
jest jak najbardziej OK.
To jest niedopuszczalna sytuacja…
Nie mam za bardzo pewności bez pełnych logów od momentu uruchomienia modułu z Tasmota. Bez tego nie wiemy czy winny jest HA czy Tasmota. Jedyne co zrobiłeś inaczej to podłączenie kontaktronu i tu może być pies pogrzebany. PowerOnState
nakazuje po uruchomieniu stan OFF a Ty opcją SwitchMode2 2
odwróciłeś logikę działania.
Proponuję ustawić:
Przełącznik_n - oznacza odwrotne (fizyczne) działanie.
Ponownie ustaw SwitchMode2 1
Mam nadzieję, że to dobry trop
Zrobiłem tak jak powiedziałeś ale spodziewanego efektu brak, za to w HA nie widzę teraz status czy brama jest otwarta czy zamknięta.
Zrobiłem restart z GUI i załączam log:
00:00:00.001 HDW: ESP8266EX
00:00:00.053 CFG: Wczytano z pamięci flash w F7, Licz 53
00:00:00.066 Projekt ais-dom - Brama_garazowa Wersja 10.0.0(tasmota)-2_7_4_9(2021-10-26T09:40:24)
00:00:00.521 WIF: Łączenie z AP1 Domek Parter Channel 1 BSSId C8:D3:A3:05:D0:EE w trybie 11n jak dom-XXXXXX-1425...
00:00:01.753 WIF: Połączony
00:00:02.005 HTP: Aktywny serwer Web dom-XXXXXX-1425 z adresem IP 192.168.8.195
13:12:18.003 MQT: Próba połączenia...
13:12:18.022 MQT: Połączony
13:12:18.026 MQT: tele/dom_XXXXXX/LWT = Online (Zachowane)
13:12:18.029 MQT: cmnd/dom_XXXXXX/POWER =
13:12:18.040 MQT: tele/dom_XXXXXX/INFO1 = {"Info1":{"Module":"Sonoff SV","Version":"10.0.0(tasmota)","FallbackTopic":"cmnd/DOM_XXXXXX_fb/","GroupTopic":"cmnd/dom/"}}
13:12:18.049 MQT: tele/dom_XXXXXX/INFO2 = {"Info2":{"WebServerMode":"Admin","Hostname":"dom-XXXXXX-1425","IPAddress":"192.168.8.195"}}
13:12:18.060 MQT: tele/dom_XXXXXX/INFO3 = {"Info3":{"RestartReason":"Software/System restart"}}
13:12:18.068 MQT: stat/dom_XXXXXX/RESULT = {"POWER":"OFF"}
13:12:18.071 MQT: stat/dom_XXXXXX/POWER = OFF (Zachowane)
13:12:18.230 MQT: stat/DOM_XXXXXX_fb/RESULT = {"Command":"Error"}
13:12:18.284 MQT: tele/DOM_XXXXXX_fb/STATE = {"Time":"2021-10-31T13:12:18","Uptime":"0T00:00:05","UptimeSec":5,"Heap":29,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":22,"MqttCount":1,"POWER":"ON","Wifi":{"AP":1,"SSId":"Domek Parter","BSSId":"C8:D3:A3:05:D0:EE","Channel":1,"Mode":"11n","RSSI":64,"Signal":-68,"LinkCount":1,"Downtime":"0T00:00:03"}}
13:12:18.309 MQT: stat/DOM_XXXXXX_fb/RESULT = {"POWER":"ON"}
13:12:18.313 MQT: stat/DOM_XXXXXX_fb/POWER = ON (Zachowane)
13:12:18.331 MQT: stat/DOM_XXXXXX_fb/RESULT = {"Command":"Error"}
13:12:18.381 MQT: stat/DOM_XXXXXX_fb/RESULT = {"Command":"Error"}
13:12:18.833 MQT: tele/dom_XXXXXX/STATE = {"Time":"2021-10-31T13:12:18","Uptime":"0T00:00:05","UptimeSec":5,"Heap":29,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":1,"POWER":"OFF","Wifi":{"AP":1,"SSId":"Domek Parter","BSSId":"C8:D3:A3:05:D0:EE","Channel":1,"Mode":"11n","RSSI":70,"Signal":-65,"LinkCount":1,"Downtime":"0T00:00:03"}}
13:12:18.858 MQT: stat/dom_XXXXXX/RESULT = {"POWER":"OFF"}
13:12:18.863 MQT: stat/dom_XXXXXX/POWER = OFF (Zachowane)
13:12:22.442 MQT: tele/dom_XXXXXX/STATE = {"Time":"2021-10-31T13:12:22","Uptime":"0T00:00:09","UptimeSec":9,"Heap":28,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":1,"POWER":"OFF","Wifi":{"AP":1,"SSId":"Domek Parter","BSSId":"C8:D3:A3:05:D0:EE","Channel":1,"Mode":"11n","RSSI":70,"Signal":-65,"LinkCount":1,"Downtime":"0T00:00:03"}}
13:12:22.468 MQT: tele/dom_XXXXXX/SENSOR = {"Time":"2021-10-31T13:12:22","Switch2":"OFF"}
13:12:27.505 MQT: homeassistant/device_automation/XXXXXX_SW_2_TOGGLE/config = (Zachowane)
13:12:27.509 MQT: homeassistant/device_automation/XXXXXX_SW_2_HOLD/config = (Zachowane)
13:12:27.515 MQT: homeassistant/binary_sensor/XXXXXX_SW_2/config = {"name":"Brama_garazowa Switch2","stat_t":"stat/dom_XXXXXX/SWITCH2","val_tpl":"{{value_json.STATE}}","frc_upd":true,"pl_on":"ON","pl_off":"OFF","uniq_id":"XXXXXX_SW_2","dev":{"ids":["XXXXXX"]},"avty_t":"tele/dom_XXXXXX/LWT","pl_avail":"Online","pl_not_avail":"Offline"} (Zachowane)
13:12:27.565 MQT: homeassistant/switch/XXXXXX_RL_1/config = {"name":"Brama_garazowa","stat_t":"tele/dom_XXXXXX/STATE","avty_t":"tele/dom_XXXXXX/LWT","pl_avail":"Online","pl_not_avail":"Offline","cmd_t":"cmnd/dom_XXXXXX/POWER","pl_off":"OFF","pl_on":"ON","val_tpl":"{{value_json.POWER}}","uniq_id":"XXXXXX_RL_1","dev":{"ids":["XXXXXX"]}} (Zachowane)
13:12:27.601 MQT: homeassistant/sensor/XXXXXX_status/config = {"name":"Brama_garazowa status","stat_t":"tele/dom_XXXXXX/HASS_STATE","avty_t":"tele/dom_XXXXXX/LWT","pl_avail":"Online","pl_not_avail":"Offline","json_attr_t":"tele/dom_XXXXXX/HASS_STATE","unit_of_meas":"%","val_tpl":"{{value_json['RSSI']}}","ic":"mdi:information-outline","uniq_id":"XXXXXX_status","dev":{"ids":["XXXXXX"],"name":"Brama_garazowa","mdl":"Sonoff SV","sw":"10.0.0(tasmota)","mf":"AI-Speaker"}} (Zachowane)
Może to coś wyjaśni
Proszę zedytuj swój zapis kodu…
tak
lub używając na początku i końcu kodu trzech znaków tyldy < ``` >
Wyczyścić sonoffa programem FLASH_DOWNLOAD_TOOLS_v1.2 i plikiem blank_1mb
blank_1MB.bin (1 MB)
takimi ustawieniami:
Potem ponownie wgraj Tasmote
Niestety wywala mi błąd.
Traceback (most recent call last):
File "download_panel_info.pyo", line 220, in OnButton_StartButton
File "download_panel_info.pyo", line 422, in flash_config
File "shutil.pyo", line 84, in copy
File "shutil.pyo", line 51, in copyfile
IOError: [Errno 2] No such file or directory: u'C:\\Users\\W\u9abftowiczS\u7824womir\\Desktop\\ESP\\FLASH_DOWNLOAD_TOOLS_v1.2_150512\\bin_tmp\\downloadPanel1\\blank_1MB.bin_rep'
BTW, wiem na 1000%, że sonoff załącza przekaźnik w momencie podłączenia się do HA przez mqtt
Oczywiście że tak, korzystałem z przycisku “…”. Uruchomiłem program z prawami administratora. Przeniosłem plik do lokalizacji bez polskich znaków ale nic nie pomagało. Ale tak jak piszę, problem pojawia się przy połączeniu z MQTT. Sam sonoff nawet po ponownym uruchomieniu nie “włącza” przekaźnika, dopiero podłączenie do HA jednokrotnie “włącza” przekaźnik, według mnie błąd będzie po stronie HA lub problem będzie z oprogramowaniem Tasmota?
Zastanawiają mnie te logi:
Jeśli @Tomasz miał podobne doświadczenie z tym modułem SV to należy pójść za jego radą. Wyczyścić pamięć ESP wgrywając pusty plik bin. Nie wiem czy tak istotna jest adresacja dla wgrywanego pliku. Na początek można wypróbować jeszcze komendę Reset2
Jak nie pomoże, to próbować z innymi programami czyścić pamięć.
Może z Tasmotizer pójdzie łatwiej:
Albo jeszcze prościej dla Win:
Napiszę w skrócie, co do _fb/RESULT = {“Command”:“Error”} to jest to “odpowiedź” gdy “krańcówka” dojedzie do czytnika czyli czytaj to tak → brama otwarta ale myślę, że to jest mało istotna gdyż w HA widzę wtedy, że brama jest otwarta. ESP Flasher się odpala na Win10 więc jutro spróbuję wyczyścić Sonoffa tym plikiem blank_1mb - próbowałem to zrobić Tasmota PyFlasher ale wywala błąd, że to nie prawidłowy obraz? Może lepiej się “poddać” i napisać powiadomienie na aplikację w telefonie, tak aby wyrzucła PUSH UP gdy brama jest otwarta dłużej niż 5 min? - Jak to ogarnąć?
Powiadomienie to słaby pomysł…proteza. Jeśli nie wyjdzie Ci z Tasmota spróbuj z ESPHome. Gotowca podał @Stravi . Widziałem, że masz już HA więc doinstalowujesz AddOn ESPHome i kompilujesz swoją biharkę w parę minut wraz z przerobieniem YAML. Plik wgrywasz bezpośrednio z Dashboard tego dodatku:
Powiadomienie o otwarciu możesz wykonać za pomocą automatyzacji.
Wyzwalacz, to stan encji/urządzenia informujące o otwarciu przez dany czas:
w akcji na ten wyzwalacz wybierasz odpowiednią usługę dla powiadomienia:
alias: Otwarte drzwi garaż
description: Powiadomienie o otwartych drzwiach pomiędzy garażem a korytarzem
trigger:
- type: opened
platform: device
device_id: xyz
entity_id: binary_sensor.shelly_shdw_2_a4cf12f4332f_door_window
domain: binary_sensor
for:
hours: 0
minutes: 2
seconds: 0
milliseconds: 0
condition: []
action:
- service: ais_ai_service.mob_notify
data:
device_id: abc
message: 'Drzwi do garażu są otwarte '
mode: single
Witam ponownie,
Co do prób wgrania blank_1mb.bin
Log z ESP_Flasher (Zostawiam dla potomnych ponieważ FAIL):
Using 'COM2' as serial port.
Connecting....
Detecting chip type... ESP8266
Connecting...
Chip Info:
- Chip Family: ESP8266
- Chip Model: ESP8266EX
- Chip ID: 0065C591
- MAC Address: 8C:AA:B5:65:C5:91
Uploading stub...
Running stub...
Stub running...
Changing baud rate to 460800
Changed.
- Flash Size: 1MB
Unexpected error: The firmware binary is invalid (magic byte=FF, should be E9)
Tasmotizer wgrał plik czyszczący, teraz wgrywam nim Tasmotę. Będę działać z Sonoffem, jutro bądź wieczorem dam znać o efektach.
Pozdrawiam Sławek
EDIT: Efektu brak, wciąż po restarcie urządzenia działa przekaźnik. BTW. może należało by zmienić któreś ustawienie w w configuration.yaml w HA?
- platform: mqtt
name: "Brama_garazowa"
state_topic: "cmnd/DOM_XXXXX_fb/POWER2"
command_topic: "cmnd/DOM_XXXXX_fb/POWER"
payload_open: "ON"
payload_close: "ON"
payload_stop: "ON"
state_open: "ON"
state_closed: "OFF"
optimistic: false
retain: false
??
Jak nie pomoże, to będę próbować z ESPHome
Może masz coś źle z tematami MQTT… Uruchom program MQTT Explorer i podejrzyj sobie komunikację z brokera na bramce AIS w momencie “zasterowania” przekaźnika.
Wydaje mi się, że state_topic
masz nieprawidłowy. Nie powinno byś w logach wpisów z błędami {"Command":"Error"}