Sterowanie Bramą Garażową poprzez moduł SONOFF SV (AI-Speaker - Home Assistant)

Tak - to odpowiedź (rezultat) wydanej komendy PowerRetain 1 czyli ON.
Komendy w Tasmota, jeśli dotyczą dwóch stanów on / off można zamiennie wpisywać logicznym 0 / 1. Dodam również, że wielkość liter dla komend nie ma znaczenia.

Nigdy nie zgłębiłem tasmoty, ale odnoszę wrażenie że jest zagmatwana w konfiguracji. Niby EspHome wymaga pisania yaml, ale jak już go napiszesz to zapominasz o istnieniu tego urządzenia.

To tylko wrażenie, Tasmota jest dobrze udokumentowana. Jak już ją poznałem, to lubią ja za to, że mogę konfigurować dzięki konsoli wiele i widzieć w locie wynik.

Mam tylko jeno urządzenie z ESPHome i przez 1,5 roku działania miałem z nim jeden problem. Zniknęły mi odczyty encji z MiFlora i jakie było moje zaskoczenie gdy okazało się, że to moja Luba wyjęła wtyczkę zasilacza dla ESP32 :rofl:

1 polubienie

Cezary, zarówno opcja PowerRetina1 1 i 0 zero daje taki sam efekt czyli brak efektu, dyskusja ciekawa ale jestem w kropce.
Jakieś pomysły? Może wgrać ESPHome - tylko jak to ożenić z HA aby grało tak jak teraz i pokazywało stan otwarte/zamknięte?
Pozdrawiam

To w czym masz problem? Chodzi o chwilowe załączanie przekaźnika po połączeniu z brokerem MQTT? Czy konfiguracją encji w HA?

Nie rozumiem “zasterowania” … co w tym momencie mówią logi w konsoli Tasmota?

EspHome jest właściwie stworzony dla HA więc spięcie z HA to podstawowa funkcjonalność.
Zobacz to chyba Twój moduł:

1 polubienie

@Stravi - masz rację, z ESPHome jest dużo łatwiej jeśli zaczynasz przygodę z HA. Znalazłem zapasową płytkę HW-622 i poszło zaskakująco szybko. Dla potomnych zostawiam kod konfiguracji:

esphome:
  name: hw-622
  platform: ESP8266
  board: esp12e

# Enable logging
logger:

# Enable Home Assistant API
api:

ota:
  password: "ota password"

wifi:
  ssid: "SSID NAME"
  password: "Wireless Password"

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "Hw-622 Fallback Hotspot"
    password: "ap passwodr"

captive_portal:

binary_sensor:
  - platform: gpio
    pin:
      number: GPIO5
      mode: INPUT_PULLUP
      inverted: True
    name: "Garage Door"
    device_class: garage_door
    
switch:
  - platform: gpio
    pin: GPIO4
    id: relay
  - platform: template
    icon: "mdi:arrow-up-down-bold-outline"
    name: "Garage Control"
    turn_on_action:
    - switch.turn_on: relay
    - delay: 500ms
    - switch.turn_off: relay
    
sensor:
  - platform: wifi_signal
    name: "Garage Door WIFI Strength"
    update_interval: 60s

Urządzenie automatyczne wykryte przez HA.

@Slawek1992 - jeśli chcesz mogę pomóc w ESPHome z pierwszą kompilacją binarki…

2 polubienia

A jest ktoś w stanie mi powiedzieć jak szybko zrobić w tasmota przełącznik jako czujnik otwarcia.
Wygląda to tak że kontaktron to przycisk i steruje fikcyjnym przekaźnikiem.

Konieczne jest dodawanie sensora w yaml czy można to załatwić komendą w tamsmota?

Z Tasmota możesz na oba sposoby.

  1. dodanie zapisu w konfiguracji HA w yaml:
  1. Tasmota zrobi to za Ciebie przedstawiając w HA urządzenie zapisem reguły (komendy) Tasmota:

@Cezary.K to zagorzały użytkownik Tasmoty, z historii wypowiedzi na forum, mogę stwierdzić, że guru w tym oprogramowaniu :slight_smile:, zrobi na nim wszystko.

2 polubienia

Fajnie by było jakby powstały poradniki.
@Cezary.K pomyśl o kanale na YouTube :slightly_smiling_face::slightly_smiling_face:
Będę oglądał regularnie :grinning::grinning::grinning:

1 polubienie

Dzięki za propozycję ale :movie_camera: to nie moja bajka :sunglasses:. 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. :slightly_smiling_face::slightly_smiling_face:
Nie ma takiego polskojęzycznego bloga który objaśniał był dobrze tasmota :slightly_smiling_face:
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.

O tą kartę chodzi?

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 :wink:

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

1 polubienie