Restartujący się esp32 z esphome na pokładzie i zajętymi wszystkimi pinami

A router Mikrotik i ten drugi też masz u siebie w domu ? Wbrew pozorom, taki router potrzebuje więcej niż 4x moduł przekaźników. Zasilacz buforowy ma sprawność około 85% więc nie ma 7A tylko około 6A , to że przetwornica ma 8A o niczym nie świadczy.

To jest tylko ostrzeżenie przed tym, by nie zaprojektować wadliwie elektroniki i znaczy dokładnie tyle ile tam jest napisane - nie możesz użyć tego pinu w układzie, w którym możliwe jest przypadkowe ściągnięcie go do masy w trakcie bootowania (w skrócie nie powinien być wejściem binarnym, jeśli może się tam pojawić stan niski); no dobra nieco sobie dopowiedziałem - trzeba zajrzeć do dokumentacji czego nie wolno robić z tym pinem, bo ostrzeżenie nie precyzuje czy chodzi o ściągnięcie do masy czy zasilania (akurat chodzi o masę, a wiedziałem to, bo najpierw sobie podejrzałem dokumentację o co może chodzić z GPIO15, a dopiero potem przeczytałem uważnie do końca całe to ostrzeżenie :stuck_out_tongue: )

Tu masz rozpiskę “świętych” pinów w ESP32

Strapping Pins
ESP32 has 6 strapping pins:
• MTDI/GPIO12: internal pull-down
• GPIO0: internal pull-up
• GPIO2: internal pull-down
• GPIO4: internal pull-down
• MTDO/GPIO15: internal pull-up
• GPIO5: internal pull-up

Pokaż nam całego YAMLa, a nie jakieś urywki.

Wymuś sytuację którą podejrzewasz o resetowanie MCU (np. załącz jednocześnie 4 przekaźniki), to nie będziesz musiał czekać…

Logowanie kanałem OTA masz uruchomić, gdy sprzęt jest online, wtedy jest szansa, że gdy się zrestartuje zobaczysz w logu przyczynę restartu, nie mogę gwarantować, że to się uda gdy zaczynasz logowanie w trybie offline (no nie mam jak zasymulować takich sytuacji w prosty sposób, a walczyć mi się nie chce).

sysloga stricte nie ma, ale logi masz dostępne przez 100% czasu pracy korzystając z połączenia szeregowego z MCU (domyślnie logger używa właśnie do tego UART0, który z kolei standardowo jest podpięty do mostka USB, więc wystarczy jeśli wepniesz go do portu komputera i nasłuchasz co przychodzi z tego seriala na USB, w ogóle to może być port USB komputera na którym pracuje HA tylko tu znowu nie mam tego przetestowanego dogłębnie, ale diagnozowałem sobie w ten sposób zupełnie inną platformę niż ESP32).

PS ten Huawei to mi pachnie LTE?

No nie, tego też nie wziąłem pod uwagę.

Zgadzam się z tym o przetwornicy :slight_smile: Ale wydaje mi się że zasilacze pulsara są raczej w porządku i powinny mieć tak jak pisze :slight_smile:

Patrząc na to, wykorzystuję tylko pin GPIO4. Wybierając piny sugerowałem się tym

Oki proszę

substitutions:
  device_name: esp32-rozdzielnia-bedzinko
  friendly_name: esp32-rozdzielnia-bedzinko
  device_description: "Sterowanie oświetleniem i ogrzewaniem w domu Bedzinko"
  min_press: 400ms
  max_press: 2000ms

esphome:
  name: esp32-rozdzielnia-bedzinko
  friendly_name: esp32_rozdzielnia_Bedzinko

esp32:
  board: esp32dev
  framework:
    type: arduino


# Enable logging
logger:

# Enable Home Assistant API
api:
  encryption:
    key: "DhK2r+4ZVmCR9AahWQhd4C1x4TIdLSO5Vv+f6lL+C7c="

ota:
  password: "33ec9a7dd0c9f23ffa9a5e9d0a60f310"

text_sensor:
  - platform: template
    name: uptime ${device_name}
    id: uptime_human
    icon: mdi:clock-start

sensor:
#Uptime urządzeni
  - platform: uptime
    name: Uptime Sensor
    id: uptime_sensor
    update_interval: 60s
    on_raw_value:
      then:
        - text_sensor.template.publish:
            id: uptime_human
            state: !lambda |-
              int seconds = round(id(uptime_sensor).raw_state);
              int days = seconds / (24 * 3600);
              seconds = seconds % (24 * 3600);
              int hours = seconds / 3600;
              seconds = seconds % 3600;
              int minutes = seconds /  60;
              seconds = seconds % 60;
              return (
                (days ? to_string(days) + "d " : "") +
                (hours ? to_string(hours) + "h " : "") +
                (minutes ? to_string(minutes) + "m " : "") +
                (to_string(seconds) + "s")
              ).c_str();




wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "Esp32-Rozdzielnia-Bedzinko"
    password: "yEe7vaaAy4rc"

# Logowanie www
web_server:
  port: 80

captive_portal:
    

switch:
  - platform: restart
    name: "Restart bedzinko-esp32"
    
    
#Konfiguracja przekaźników

#Restart switch
  - platform: gpio
    pin: 27
    name: Przekaznik_switch_kamery
    id: Przekaznik_switch_kamery
    on_turn_on:
      - delay: 5000ms
      - switch.turn_off: Przekaznik_switch_kamery
      
#Restart termometry zasilanie
  - platform: gpio
    pin: 26
    name: Przekaznik_czujnik_temp_restart
    id: Przekaznik_czujnik_temp_restart
    on_turn_on:
      - delay: 5000ms
      - switch.turn_off: Przekaznik_czujnik_temp_restart
      
#Bojler
  - platform: gpio
    pin: 22
    name: Przekaznik_bojler
    id: Przekaznik_bojler

#Oświetlenie
  - platform: gpio
    pin: 4
    name: Przekaznik_swiatlo_ganek
    id: Przekaznik_swiatlo_ganek
    
  - platform: gpio
    pin: 16
    name: Przekaznik_swiatlo_garaz
    id: Przekaznik_swiatlo_garaz
    
  - platform: gpio
    pin: 17
    name: Przekaznik_swiatlo_taras
    id: Przekaznik_swiatlo_taras

  - platform: gpio
    pin: 18
    name: Przekaznik_swiatlo_drzwi_wejsciowe
    id: Przekaznik_swiatlo_drzwi_wejsciowe
    
  - platform: gpio
    pin: 19
    name: Przekaznik_swiatlo_zewnatrz_sciana
    id: Przekaznik_swiatlo_zewnatrz_sciana
    
#Ogrzewanie
#  - platform: gpio
#    pin: 32
#    name: Przekaznik_podlogowka_ganek
#    id: Przekaznik_podlogowka_ganek
  
  - platform: gpio
    pin: 33
    name: Przekaznik_podlogowka_sypialnia
    id: Przekaznik_podlogowka_sypialnia
    
  - platform: gpio
    pin: 25
    name: Przekaznik_podlogowka_duzy_maly_pokoj
    id: Przekaznik_podlogowka_duzy_maly_pokoj
    
#  - platform: gpio
#    pin: 26
#    name: Przekaznik_podlogowka_maly_pokoj
#    id: Przekaznik_podlogowka_maly_pokoj
    
  - platform: gpio
    pin: 21
    name: Przekaznik_podlogowka_salon
    id: Przekaznik_podlogowka_salon
    
  - platform: gpio
    pin: 23
    name: Przekaznik_podlogowkaa_lazienka_dol
    id: Przekaznik_podlogowka_lazienka_dol
    

#Konfiguracja klawiszy    
binary_sensor:

  - platform: gpio
    pin:
      number: 14
      inverted: true
      mode:
        input: true
        pullup: true
    name: "Klawisz światło ganek"
    on_press:
      - switch.toggle: Przekaznik_swiatlo_ganek
      
  - platform: gpio
    pin:
      number: 32
      inverted: true
      mode:
        input: true
        pullup: true
    name: "Klawisz światło drzwi wejściowe"
    on_click:
    - min_length: 50ms
      max_length: 350ms
      then:
      - switch.toggle: Przekaznik_swiatlo_drzwi_wejsciowe
    - min_length: ${min_press}
      max_length: ${max_press}
      then:
        - switch.toggle: Przekaznik_swiatlo_garaz
        
  - platform: gpio
    pin:
      number: 5
      inverted: true
      mode:
        input: true
        pullup: true
    name: "Klawisz światło zewnątrz ściana"
    on_click:
    - min_length: 150ms
      max_length: 550ms
      then:
        - switch.toggle: Przekaznik_swiatlo_zewnatrz_sciana
      
  - platform: gpio
    pin:
      number: 15
      inverted: true
      mode:
        input: true
        pullup: true
    name: "Klawisz światło taras"
    on_click:
    - min_length: 100ms
      max_length: 350ms
      then:
        - switch.toggle: Przekaznik_swiatlo_taras

Niestety nie mam takiej możliwości bo nie mam fizycznego dostępu do tego.

Tak, niestety lte

To pozostaje kanał OTA.

Używasz GPIO15, moim zdaniem w sposób wystarczająco bezpieczny (jest mało prawdopodobne byś wcisnął "Klawisz światło taras" w czasie rebootu ESP32 i jest to równocześnie niemożliwe jeśli nikogo tam nie ma).

Web serwer możesz wywalić (chyba, że z niego istotnie korzystasz), oprócz tego nie widzę tam nic podejrzanego (tzn. web serwer nie powinien wywoływać niestabilności przy tak skromnej konfiguracji całej reszty, ale nie znając przyczyny problemów zawsze warto wywalić zbędne komponenty).

w tabelce w bryku (OK, ale z przypisami)

15 OK OK outputs PWM signal at boot, strapping pin

Aby stwierdzić co konkretnie się stanie trzeba zajrzeć do tabeli stanów w oficjalnej dokumentacji MCU ESP32

strona 20
w krytycznej sytuacji nie stanie się nic szczególnego - stracisz tylko dostęp do logów na serialu, może się też zmienić obsługa SDIO (jeśli nie jest ogarnięta inaczej)

kurde no tak, przeoczyłem.
Wtedy jak to składałem to przeliczyłem się z ilością pinów i dlatego podłączyłem po te piny podwyższonego ryzyka, ale działało wtedy i uznałem że jest dobrze. Finalnie i tak będę chciał dołożyć ekspander lub coś żeby to rozdzielić.

Czyli podsumowując na tą chwilę to

  • konfiguracja yaml jest raczej ok?
  • gdy esp wstanie sprawdzić logi, wywołać restart urządzenia i sprawdzić czy jest coś podane i nakierowujące na przyczynę?
  • dołożyć jeszcze dwa zasilacze, jeden na mt i router huawei, drugi na przekaźniki ? Tylko wtedy esp i przekaźniki będą na osobnej instalacji, który pin powinien być ich wspólnym ?

I o to chodzi :slight_smile: - jeśli chcesz zrobić wg. tego odręcznego szkicu to do pinów “com” podłączasz +5V z ESP i GPIO do sterowania. Sterujesz stanem niskim, co jest “zdrowsze”.

Czyli to nie jest dobre rozwiązanie?
Jak powinno być to zrobione tak jak powinno być? Zgodnie ze sztuką.
Chciałbym żeby to było dobrze zrobione :slight_smile:

Dobrze to osobne zasilania i sterowanie niskim stanem. Do tego się właśnie sprowadzają te bazgroły na schemacie :slight_smile:

A ze stanem niskim to nie jest czasem tak że jak np. esp się wyłączy czy wypnie czy braknie prądu to się przekaźnik wtedy przełączy ?

Nie, bo musi popłynąć prąd przez “zwarte” do GND GPIO.
Po resecie zanim procek ustawi GPIO są w stanie wysokim i może wystąpić krótkotrwałe zadziałanie przy sterowaniu stanem wysokim.
Stan niski ma wyższą wydajność prądową.
Wyobraź sobie, że GPIO to styk, który zwiera do “masy”.

Nie wiem czy zauważyłeś, ale żaden pin, tzn. w sensie zasilania w ten sposób w jaki zaproponował @RobinI30 uzyskasz izolację galwaniczną między obwodem przekaźników i obwodem MCU - nie jest wtedy połączona ani masa, ani zasilanie, więc zakłócenia z toru zasilania już nie mają prawa się przedostać z jednego obwodu do drugiego.
Oczywiście GPIO pozostają połączone, ale tylko z częścią sterującą (konkretnie tylko z obwodami pierwotnymi transoptorów), gdzie masz prądy liczone pojedynczymi mA, a nie z częścią wykonawczą, gdzie płyną prądy od dziesiętnych ampera do kilku A.


Zauważ, że punkty w różowych kółkach są bez połączeń z dorysowaną czerwoną linią, jeśli się upierasz by sterować stanem wysokim, wciąż jest to możliwe - wtedy przy zachowaniu izolacji między obwodami zamiast dorysowanych na czerwono 5V z płytki MCU podajesz tam masę płytki MCU.
ALE sterowanie stanem niskim jest “zdrowsze“, powody masz podane wyżej (w ogóle jestem zaskoczony tym, że teraz sterujesz stanem wysokim i przekaźniki działają niezawodnie, bo przez diodę transoptora płynie prąd mniejszy niż 1mA nawet przy założeniu, że na GPIO masz idealne 3,3V w stanie wysokim).


Pozostaje jeszcze kwestia zakłóceń indukcyjnych (ale póki co nie wiemy czy występują one w krytycznym natężeniu), Płytki MCU nie da się ekranować bardziej niż producent to zapewnił, bo musisz mieć niezakłócony dostęp do eteru dla WiFi (więc nie możesz dodatkowo ekranować płytek MCU).

Kurde teraz żebym dobrze zrzumiał,
Czyli najlepiej by było to podłączyć w taki sposób ?


w rysunku chyba złe esp dalem :slight_smile:

A to w jaki sposób?
image

Z z esp z pinu 5V do zworek(środkowa zworka) na module przekaźników ?

Na górnym rysunku są 2 zasilacze dla płytek przekaźników, ale zero informacji o parametrach zasilaczy (podejrzewam, że wystarczy jeden zamiast tych 2 po prawej), ale nie mam zdrowia kopać po starych postach i szukać dokąd tam podawałeś linki, a potem szukać ich parametrów…
Ułatw nam życie podając w miarę kompletne informacje.

Na tym rysunku i tak g… widać, więc nie mając takiego modułu przekaźników w ręce nie odpowiem czy połączenia są OK, to musisz sam zweryfikować (konkretnie nie widać opisów złącz, więc albo je dorysujesz albo sprawdź sam).

Powinieneś korzystać ze schematów użytych płytek, tylko w ten sposób będziesz wiedział co faktycznie z czym łączysz. MAM TEŻ NA MYŚLI PŁYTKI MCU!

Najlepsze zdjęcie jakie znalazłem używając do tego linka do AMZ wrzuconego przez @RobinI30

zworki zawarte w zielonych ramkach wywalasz

i zamiast nich się wpinasz (dla każdego kanału, więc możliwe, że będzie łatwiej to np. zlutować pod spodem płytki jednym długim mostkiem) w rzędzie opisanym COM jakieś napięcie odniesienia z płytki MCU

Jeśli tego nie zrobisz to nie popłynie żaden prąd w układzie sterującym (podstawowe prawa fizyki - nie wystarczy sam INx)

To jest oficjalny schemat.


Pozostałe kanały są powtrzalne.

J1 (2) > +5v esp

IN > GPIO

DC+, DC- > dodatkowy zasilasz przekaźników.

Mam nadzieję, że w tym miesiącu to ostatni temat na ten temat :face_with_head_bandage:

Ponieważ wejścia transoptorów są dwukierunkowe, to jest też alternatywa = opiąć wejścia sterujące odwrotnie - być może wykonawczo to będzie łatwiejsze - GPIOy do COMx, a wszystkie INx zmostkować do napięcia odniesienia z płytki MCU…

Chyba wiem co mam zrobić :slight_smile:
Dzięki za nakierowanie, jak będę miał możliwość to zrobię poprawki w projekcie i się pochwalę :slight_smile:
A jak esp wstanie to zobaczę czy jest jakiś info o błędzie w logach.

A na przyszłość to lepiej stosować przekaźniki 12v czy 5v ?
Zasilanie modułu przekaźników 12v ale sterowanie 5v przez IN1.IN2… oraz COM?
Mam na myśli te moduły

Trudno powiedzieć :slight_smile: …najlepiej stosować takie aby nie komplikować zasilania.
12 voltowe wymagają mniejszego prądu zadziałania i mniej się grzeją, mają jednak większą ilość zwojów (większa indukcyjność) - większą samoindukcja więc chyba bardziej “sieją”.
To samo zjawisko w połączeniu z diodą “gaszącą” powodują, że wydłuża się czas wyłączenia. Wtedy styki rozwierają się wolniej i powstaje łuk elektryczny (zakłócenia) .
Z drugiej strony w cewce przełączane są mniejsze prądy.
Wniosek - na tym poziome nie zawracać sobie głowy, bo to grubsza “rozkmina” i stosować takie, które bardziej pasują.

Cześć
Dziś udało się dostać do tego esp.
Podczas odczytywania logów urządzeni się kilka razy zrestartowało.
Log wygląda tak:

INFO ESPHome 2023.11.6
INFO Reading configuration /config/esphome/esp32-rozdzielnia-bedzinko.yaml...
WARNING GPIO5 is a strapping PIN and should only be used for I/O with care.
Attaching external pullup/down resistors to strapping pins can cause unexpected failures.
See https://esphome.io/guides/faq.html#why-am-i-getting-a-warning-about-strapping-pins
WARNING GPIO15 is a strapping PIN and should only be used for I/O with care.
Attaching external pullup/down resistors to strapping pins can cause unexpected failures.
See https://esphome.io/guides/faq.html#why-am-i-getting-a-warning-about-strapping-pins
INFO Starting log output from esp32-rozdzielnia-bedzinko.local using esphome API
WARNING Can't connect to ESPHome API for esp32-rozdzielnia-bedzinko: Error resolving IP address: [Errno -5] No address associated with hostname (APIConnectionError)
INFO Trying to connect to esp32-rozdzielnia-bedzinko in the background
INFO Successfully connected to esp32-rozdzielnia-bedzinko in 0.024s
INFO Successful handshake with esp32-rozdzielnia-bedzinko in 0.108s
[13:03:31][I][app:102]: ESPHome version 2023.11.6 compiled on Nov 30 2023, 21:28:26
[13:03:31][C][wifi:559]: WiFi:
[13:03:31][C][wifi:391]:   Local MAC: EC:62:60:93:45:F4
[13:03:31][C][wifi:396]:   SSID: [redacted]
[13:03:31][C][wifi:397]:   IP Address: 192.168.89.229
[13:03:31][C][wifi:399]:   BSSID: [redacted]
[13:03:31][C][wifi:400]:   Hostname: 'esp32-rozdzielnia-bedzinko'
[13:03:31][C][wifi:402]:   Signal strength: -35 dB ▂▄▆█
[13:03:31][C][wifi:406]:   Channel: 6
[13:03:31][C][wifi:407]:   Subnet: 255.255.255.0
[13:03:31][C][wifi:408]:   Gateway: 192.168.89.1
[13:03:32][C][wifi:409]:   DNS1: 192.168.89.1
[13:03:32][C][wifi:410]:   DNS2: 8.8.8.8
[13:03:32][C][logger:416]: Logger:
[13:03:32][C][logger:417]:   Level: DEBUG
[13:03:32][C][logger:418]:   Log Baud Rate: 115200
[13:03:32][C][logger:420]:   Hardware UART: UART0
[13:03:32][C][template.text_sensor:020]: Template Sensor 'uptime esp32-rozdzielnia-bedzinko'
[13:03:32][C][template.text_sensor:020]:   Icon: 'mdi:clock-start'
[13:03:32][C][uptime.sensor:031]: Uptime Sensor 'Uptime Sensor'
[13:03:32][C][uptime.sensor:031]:   Device Class: 'duration'
[13:03:32][C][uptime.sensor:031]:   State Class: 'total_increasing'
[13:03:32][C][uptime.sensor:031]:   Unit of Measurement: 's'
[13:03:32][C][uptime.sensor:031]:   Accuracy Decimals: 0
[13:03:32][C][uptime.sensor:031]:   Icon: 'mdi:timer-outline'
[13:03:32][C][switch.gpio:068]: GPIO Switch 'Przekaznik_switch_kamery'
[13:03:32][C][switch.gpio:091]:   Restore Mode: always OFF
[13:03:32][C][switch.gpio:031]:   Pin: GPIO27
[13:03:32][C][switch.gpio:068]: GPIO Switch 'Przekaznik_czujnik_temp_restart'
[13:03:32][C][switch.gpio:091]:   Restore Mode: always OFF
[13:03:32][C][switch.gpio:031]:   Pin: GPIO26
[13:03:32][C][switch.gpio:068]: GPIO Switch 'Przekaznik_bojler'
[13:03:32][C][switch.gpio:091]:   Restore Mode: always OFF
[13:03:32][C][switch.gpio:031]:   Pin: GPIO22
[13:03:32][C][switch.gpio:068]: GPIO Switch 'Przekaznik_swiatlo_ganek'
[13:03:32][C][switch.gpio:091]:   Restore Mode: always OFF
[13:03:32][C][switch.gpio:031]:   Pin: GPIO4
[13:03:32][C][switch.gpio:068]: GPIO Switch 'Przekaznik_swiatlo_garaz'
[13:03:32][C][switch.gpio:091]:   Restore Mode: always OFF
[13:03:32][C][switch.gpio:031]:   Pin: GPIO16
[13:03:32][C][switch.gpio:068]: GPIO Switch 'Przekaznik_swiatlo_taras'
[13:03:32][C][switch.gpio:091]:   Restore Mode: always OFF
[13:03:32][C][switch.gpio:031]:   Pin: GPIO17
[13:03:32][C][switch.gpio:068]: GPIO Switch 'Przekaznik_swiatlo_drzwi_wejsciowe'
[13:03:32][C][switch.gpio:091]:   Restore Mode: always OFF
[13:03:32][C][switch.gpio:031]:   Pin: GPIO18
[13:03:32][C][switch.gpio:068]: GPIO Switch 'Przekaznik_swiatlo_zewnatrz_sciana'
[13:03:32][C][switch.gpio:091]:   Restore Mode: always OFF
[13:03:32][C][switch.gpio:031]:   Pin: GPIO19
[13:03:32][C][switch.gpio:068]: GPIO Switch 'Przekaznik_podlogowka_sypialnia'
[13:03:32][C][switch.gpio:091]:   Restore Mode: always OFF
[13:03:32][C][switch.gpio:031]:   Pin: GPIO33
[13:03:32][C][switch.gpio:068]: GPIO Switch 'Przekaznik_podlogowka_duzy_maly_pokoj'
[13:03:32][C][switch.gpio:091]:   Restore Mode: always OFF
[13:03:32][C][switch.gpio:031]:   Pin: GPIO25
[13:03:32][C][switch.gpio:068]: GPIO Switch 'Przekaznik_podlogowka_salon'
[13:03:32][C][switch.gpio:091]:   Restore Mode: always OFF
[13:03:32][C][switch.gpio:031]:   Pin: GPIO21
[13:03:32][C][switch.gpio:068]: GPIO Switch 'Przekaznik_podlogowkaa_lazienka_dol'
[13:03:32][C][switch.gpio:091]:   Restore Mode: always OFF
[13:03:32][C][switch.gpio:031]:   Pin: GPIO23
[13:03:32][C][gpio.binary_sensor:015]: GPIO Binary Sensor 'Klawisz światło ganek'
[13:03:32][C][gpio.binary_sensor:016]:   Pin: GPIO14
[13:03:32][C][gpio.binary_sensor:015]: GPIO Binary Sensor 'Klawisz światło drzwi wejściowe'
[13:03:32][C][gpio.binary_sensor:016]:   Pin: GPIO32
[13:03:32][C][gpio.binary_sensor:015]: GPIO Binary Sensor 'Klawisz światło zewnątrz ściana'
[13:03:32][C][gpio.binary_sensor:016]:   Pin: GPIO5
[13:03:32][C][gpio.binary_sensor:015]: GPIO Binary Sensor 'Klawisz światło taras'
[13:03:32][C][gpio.binary_sensor:016]:   Pin: GPIO15
[13:03:32][C][restart:068]: Restart Switch 'Restart bedzinko-esp32'
[13:03:32][C][restart:070]:   Icon: 'mdi:restart'
[13:03:32][C][restart:091]:   Restore Mode: always OFF
[13:03:32][C][captive_portal:088]: Captive Portal:
[13:03:32][C][web_server:168]: Web Server:
[13:03:32][C][web_server:169]:   Address: esp32-rozdzielnia-bedzinko.local:80
[13:03:32][C][mdns:115]: mDNS:
[13:03:32][C][mdns:116]:   Hostname: esp32-rozdzielnia-bedzinko
[13:03:32][C][ota:097]: Over-The-Air Updates:
[13:03:32][C][ota:098]:   Address: esp32-rozdzielnia-bedzinko.local:3232
[13:03:32][C][ota:101]:   Using Password.
[13:03:32][C][api:139]: API Server:
[13:03:32][C][api:140]:   Address: esp32-rozdzielnia-bedzinko.local:6053
[13:03:32][C][api:142]:   Using noise encryption: YES
[13:03:34][D][text_sensor:064]: 'uptime esp32-rozdzielnia-bedzinko': Sending state '19m 35s'
[13:03:34][D][sensor:094]: 'Uptime Sensor': Sending state 1174.73706 s with 0 decimals of accuracy
[13:03:45][D][switch:016]: 'Przekaznik_bojler' Turning OFF.
[13:04:06][D][switch:012]: 'Przekaznik_swiatlo_garaz' Turning ON.
[13:04:06][D][switch:055]: 'Przekaznik_swiatlo_garaz': Sending state ON
[13:04:15][D][switch:016]: 'Przekaznik_bojler' Turning OFF.
[13:04:34][D][text_sensor:064]: 'uptime esp32-rozdzielnia-bedzinko': Sending state '20m 35s'
[13:04:34][D][sensor:094]: 'Uptime Sensor': Sending state 1234.73706 s with 0 decimals of accuracy
[13:04:40][D][switch:016]: 'Przekaznik_swiatlo_garaz' Turning OFF.
[13:04:40][D][switch:055]: 'Przekaznik_swiatlo_garaz': Sending state OFF
[13:04:44][D][switch:016]: 'Przekaznik_podlogowka_sypialnia' Turning OFF.
[13:04:44][D][switch:055]: 'Przekaznik_podlogowka_sypialnia': Sending state OFF
WARNING esp32-rozdzielnia-bedzinko: Connection error occurred: [Errno 104] Connection reset by peer
INFO Processing unexpected disconnect from ESPHome API for esp32-rozdzielnia-bedzinko
WARNING Disconnected from API
INFO Successfully connected to esp32-rozdzielnia-bedzinko in 0.006s
INFO Successful handshake with esp32-rozdzielnia-bedzinko in 0.097s
[13:05:15][D][switch:016]: 'Przekaznik_bojler' Turning OFF.
[13:05:15][D][switch:012]: 'Przekaznik_swiatlo_drzwi_wejsciowe' Turning ON.
[13:05:15][D][switch:055]: 'Przekaznik_swiatlo_drzwi_wejsciowe': Sending state ON
[13:05:16][D][switch:012]: 'Przekaznik_swiatlo_ganek' Turning ON.
[13:05:16][D][switch:055]: 'Przekaznik_swiatlo_ganek': Sending state ON
[13:05:17][D][switch:012]: 'Przekaznik_swiatlo_taras' Turning ON.
[13:05:17][D][switch:055]: 'Przekaznik_swiatlo_taras': Sending state ON
[13:05:18][D][switch:012]: 'Przekaznik_swiatlo_zewnatrz_sciana' Turning ON.
[13:05:18][D][switch:055]: 'Przekaznik_swiatlo_zewnatrz_sciana': Sending state ON
[13:05:18][D][switch:012]: 'Przekaznik_swiatlo_garaz' Turning ON.
[13:05:18][D][switch:055]: 'Przekaznik_swiatlo_garaz': Sending state ON
[13:05:36][D][text_sensor:064]: 'uptime esp32-rozdzielnia-bedzinko': Sending state '50s'
[13:05:36][D][sensor:094]: 'Uptime Sensor': Sending state 50.05900 s with 0 decimals of accuracy
[13:05:41][D][switch:016]: 'Przekaznik_swiatlo_zewnatrz_sciana' Turning OFF.
[13:05:41][D][switch:055]: 'Przekaznik_swiatlo_zewnatrz_sciana': Sending state OFF
[13:05:42][D][switch:016]: 'Przekaznik_swiatlo_taras' Turning OFF.
[13:05:42][D][switch:055]: 'Przekaznik_swiatlo_taras': Sending state OFF
[13:05:43][D][switch:016]: 'Przekaznik_swiatlo_garaz' Turning OFF.
[13:05:43][D][switch:055]: 'Przekaznik_swiatlo_garaz': Sending state OFF
[13:05:44][D][switch:016]: 'Przekaznik_swiatlo_ganek' Turning OFF.
[13:05:44][D][switch:055]: 'Przekaznik_swiatlo_ganek': Sending state OFF
[13:05:44][D][switch:016]: 'Przekaznik_swiatlo_drzwi_wejsciowe' Turning OFF.
[13:05:44][D][switch:055]: 'Przekaznik_swiatlo_drzwi_wejsciowe': Sending state OFF
[13:05:45][D][switch:016]: 'Przekaznik_bojler' Turning OFF.
[13:05:45][D][switch:016]: 'Przekaznik_podlogowkaa_lazienka_dol' Turning OFF.
[13:05:45][D][switch:055]: 'Przekaznik_podlogowkaa_lazienka_dol': Sending state OFF
WARNING esp32-rozdzielnia-bedzinko: Connection error occurred: [Errno 104] Connection reset by peer
INFO Processing unexpected disconnect from ESPHome API for esp32-rozdzielnia-bedzinko
WARNING Disconnected from API
INFO Successfully connected to esp32-rozdzielnia-bedzinko in 0.006s
INFO Successful handshake with esp32-rozdzielnia-bedzinko in 0.097s
[13:06:15][D][switch:016]: 'Przekaznik_podlogowka_sypialnia' Turning OFF.
[13:06:15][D][switch:055]: 'Przekaznik_podlogowka_sypialnia': Sending state OFF
WARNING esp32-rozdzielnia-bedzinko: Connection error occurred: [Errno 104] Connection reset by peer
INFO Processing unexpected disconnect from ESPHome API for esp32-rozdzielnia-bedzinko
WARNING Disconnected from API
INFO Successfully connected to esp32-rozdzielnia-bedzinko in 0.006s
INFO Successful handshake with esp32-rozdzielnia-bedzinko in 0.104s
[13:06:59][D][switch:012]: 'Przekaznik_podlogowka_sypialnia' Turning ON.
[13:06:59][D][switch:055]: 'Przekaznik_podlogowka_sypialnia': Sending state ON
[13:07:03][D][text_sensor:064]: 'uptime esp32-rozdzielnia-bedzinko': Sending state '47s'
[13:07:03][D][sensor:094]: 'Uptime Sensor': Sending state 47.11600 s with 0 decimals of accuracy
[13:07:15][D][switch:016]: 'Przekaznik_bojler' Turning OFF.
[13:07:45][D][switch:016]: 'Przekaznik_bojler' Turning OFF.
[13:08:03][D][text_sensor:064]: 'uptime esp32-rozdzielnia-bedzinko': Sending state '1m 47s'
[13:08:03][D][sensor:094]: 'Uptime Sensor': Sending state 107.12000 s with 0 decimals of accuracy
[13:08:14][D][switch:016]: 'Przekaznik_podlogowka_sypialnia' Turning OFF.
[13:08:14][D][switch:055]: 'Przekaznik_podlogowka_sypialnia': Sending state OFF
WARNING esp32-rozdzielnia-bedzinko: Connection error occurred: [Errno 104] Connection reset by peer
INFO Processing unexpected disconnect from ESPHome API for esp32-rozdzielnia-bedzinko
WARNING Disconnected from API
INFO Successfully connected to esp32-rozdzielnia-bedzinko in 0.005s
INFO Successful handshake with esp32-rozdzielnia-bedzinko in 0.104s
[13:08:59][D][switch:012]: 'Przekaznik_podlogowka_sypialnia' Turning ON.
[13:08:59][D][switch:055]: 'Przekaznik_podlogowka_sypialnia': Sending state ON
[13:09:15][D][switch:016]: 'Przekaznik_bojler' Turning OFF.
[13:09:45][D][switch:016]: 'Przekaznik_bojler' Turning OFF.
[13:09:51][D][text_sensor:064]: 'uptime esp32-rozdzielnia-bedzinko': Sending state '1m 35s'
[13:09:51][D][sensor:094]: 'Uptime Sensor': Sending state 95.12100 s with 0 decimals of accuracy
WARNING esp32-rozdzielnia-bedzinko: Connection error occurred: [Errno 104] Connection reset by peer
INFO Processing unexpected disconnect from ESPHome API for esp32-rozdzielnia-bedzinko
WARNING Disconnected from API
INFO Successfully connected to esp32-rozdzielnia-bedzinko in 0.007s
INFO Successful handshake with esp32-rozdzielnia-bedzinko in 0.100s
[13:10:15][D][api:102]: Accepted 192.168.89.224
[13:10:15][W][component:214]: Component api took a long time for an operation (0.05 s).
[13:10:15][W][component:215]: Components should block for at most 20-30ms.
[13:10:15][D][api.connection:1089]: Home Assistant 2023.11.3 (192.168.89.224): Connected successfully
[13:10:17][D][switch:016]: 'Przekaznik_podlogowka_salon' Turning OFF.
[13:10:19][D][switch:016]: 'Przekaznik_podlogowkaa_lazienka_dol' Turning OFF.
[13:10:21][D][switch:016]: 'Przekaznik_podlogowka_duzy_maly_pokoj' Turning OFF.
[13:10:21][D][switch:055]: 'Przekaznik_podlogowka_duzy_maly_pokoj': Sending state OFF
WARNING esp32-rozdzielnia-bedzinko: Connection error occurred: [Errno 104] Connection reset by peer
INFO Processing unexpected disconnect from ESPHome API for esp32-rozdzielnia-bedzinko
WARNING Disconnected from API
INFO Successfully connected to esp32-rozdzielnia-bedzinko in 0.005s
INFO Successful handshake with esp32-rozdzielnia-bedzinko in 0.096s
[13:10:55][D][text_sensor:064]: 'uptime esp32-rozdzielnia-bedzinko': Sending state '34s'
[13:10:55][D][sensor:094]: 'Uptime Sensor': Sending state 33.89300 s with 0 decimals of accuracy
[13:11:00][D][switch:012]: 'Przekaznik_podlogowka_duzy_maly_pokoj' Turning ON.
[13:11:00][D][switch:055]: 'Przekaznik_podlogowka_duzy_maly_pokoj': Sending state ON
[13:11:04][D][switch:012]: 'Przekaznik_podlogowka_salon' Turning ON.
[13:11:04][D][switch:055]: 'Przekaznik_podlogowka_salon': Sending state ON
[13:11:04][D][switch:012]: 'Przekaznik_podlogowka_sypialnia' Turning ON.
[13:11:04][D][switch:055]: 'Przekaznik_podlogowka_sypialnia': Sending state ON
[13:11:05][D][switch:012]: 'Przekaznik_podlogowkaa_lazienka_dol' Turning ON.
[13:11:05][D][switch:055]: 'Przekaznik_podlogowkaa_lazienka_dol': Sending state ON
[13:11:15][D][switch:016]: 'Przekaznik_bojler' Turning OFF.
WARNING esp32-rozdzielnia-bedzinko: Connection error occurred: [Errno 104] Connection reset by peer
INFO Processing unexpected disconnect from ESPHome API for esp32-rozdzielnia-bedzinko
WARNING Disconnected from API
INFO Successfully connected to esp32-rozdzielnia-bedzinko in 0.006s
INFO Successful handshake with esp32-rozdzielnia-bedzinko in 0.097s
[13:12:02][D][api:102]: Accepted 192.168.89.224
[13:12:02][D][api.connection:1089]: Home Assistant 2023.11.3 (192.168.89.224): Connected successfully
WARNING esp32-rozdzielnia-bedzinko: Connection error occurred: [Errno 104] Connection reset by peer
INFO Processing unexpected disconnect from ESPHome API for esp32-rozdzielnia-bedzinko
WARNING Disconnected from API
INFO Successfully connected to esp32-rozdzielnia-bedzinko in 0.005s
INFO Successful handshake with esp32-rozdzielnia-bedzinko in 0.100s
[13:12:45][D][switch:016]: 'Przekaznik_bojler' Turning OFF.
[13:12:55][D][text_sensor:064]: 'uptime esp32-rozdzielnia-bedzinko': Sending state '2m 34s'
[13:12:55][D][sensor:094]: 'Uptime Sensor': Sending state 153.89301 s with 0 decimals of accuracy
[13:13:15][D][switch:016]: 'Przekaznik_bojler' Turning OFF.
WARNING esp32-rozdzielnia-bedzinko: Connection error occurred: [Errno 104] Connection reset by peer
INFO Processing unexpected disconnect from ESPHome API for esp32-rozdzielnia-bedzinko
WARNING Disconnected from API
INFO Successfully connected to esp32-rozdzielnia-bedzinko in 0.011s
INFO Successful handshake with esp32-rozdzielnia-bedzinko in 0.102s
[13:13:45][D][api:102]: Accepted 192.168.89.224
[13:13:45][D][api.connection:1089]: Home Assistant 2023.11.3 (192.168.89.224): Connected successfully
[13:13:55][D][text_sensor:064]: 'uptime esp32-rozdzielnia-bedzinko': Sending state '3m 34s'
[13:13:55][D][sensor:094]: 'Uptime Sensor': Sending state 213.89301 s with 0 decimals of accuracy
[13:14:14][D][switch:016]: 'Przekaznik_podlogowka_sypialnia' Turning OFF.
[13:14:14][D][switch:055]: 'Przekaznik_podlogowka_sypialnia': Sending state OFF
[13:14:15][D][switch:016]: 'Przekaznik_bojler' Turning OFF.
[13:14:17][D][switch:016]: 'Przekaznik_podlogowka_salon' Turning OFF.
[13:14:17][D][switch:055]: 'Przekaznik_podlogowka_salon': Sending state OFF
WARNING esp32-rozdzielnia-bedzinko: Connection error occurred: [Errno 104] Connection reset by peer
INFO Processing unexpected disconnect from ESPHome API for esp32-rozdzielnia-bedzinko
WARNING Disconnected from API
INFO Successfully connected to esp32-rozdzielnia-bedzinko in 0.005s
INFO Successful handshake with esp32-rozdzielnia-bedzinko in 0.101s
[13:14:45][D][switch:016]: 'Przekaznik_bojler' Turning OFF.
[13:14:59][D][switch:012]: 'Przekaznik_podlogowka_sypialnia' Turning ON.
[13:14:59][D][switch:055]: 'Przekaznik_podlogowka_sypialnia': Sending state ON
[13:15:06][D][text_sensor:064]: 'uptime esp32-rozdzielnia-bedzinko': Sending state '48s'
[13:15:06][D][sensor:094]: 'Uptime Sensor': Sending state 47.95500 s with 0 decimals of accuracy
[13:15:15][D][switch:016]: 'Przekaznik_bojler' Turning OFF.
[13:15:45][D][switch:016]: 'Przekaznik_bojler' Turning OFF.
[13:16:06][D][text_sensor:064]: 'uptime esp32-rozdzielnia-bedzinko': Sending state '1m 48s'
[13:16:06][D][sensor:094]: 'Uptime Sensor': Sending state 107.95500 s with 0 decimals of accuracy
[13:16:15][D][switch:016]: 'Przekaznik_podlogowka_sypialnia' Turning OFF.
[13:16:15][D][switch:055]: 'Przekaznik_podlogowka_sypialnia': Sending state OFF
WARNING esp32-rozdzielnia-bedzinko: Connection error occurred: [Errno 104] Connection reset by peer
INFO Processing unexpected disconnect from ESPHome API for esp32-rozdzielnia-bedzinko
WARNING Disconnected from API
INFO Successfully connected to esp32-rozdzielnia-bedzinko in 0.005s
INFO Successful handshake with esp32-rozdzielnia-bedzinko in 0.124s
[13:16:45][D][switch:016]: 'Przekaznik_bojler' Turning OFF.
[13:16:58][D][switch:012]: 'Przekaznik_podlogowka_salon' Turning ON.
[13:16:58][D][switch:055]: 'Przekaznik_podlogowka_salon': Sending state ON
[13:16:59][D][switch:012]: 'Przekaznik_podlogowka_sypialnia' Turning ON.
[13:16:59][D][switch:055]: 'Przekaznik_podlogowka_sypialnia': Sending state ON
[13:17:02][D][text_sensor:064]: 'uptime esp32-rozdzielnia-bedzinko': Sending state '46s'
[13:17:02][D][sensor:094]: 'Uptime Sensor': Sending state 46.45900 s with 0 decimals of accuracy
[13:17:15][D][switch:016]: 'Przekaznik_bojler' Turning OFF.
[13:17:36][D][switch:012]: 'Przekaznik_podlogowka_duzy_maly_pokoj' Turning ON.
[13:17:36][D][switch:055]: 'Przekaznik_podlogowka_duzy_maly_pokoj': Sending state ON
[13:17:45][D][switch:016]: 'Przekaznik_bojler' Turning OFF.
[13:18:02][D][text_sensor:064]: 'uptime esp32-rozdzielnia-bedzinko': Sending state '1m 46s'
[13:18:02][D][sensor:094]: 'Uptime Sensor': Sending state 106.45900 s with 0 decimals of accuracy
[13:18:15][D][switch:016]: 'Przekaznik_podlogowka_sypialnia' Turning OFF.
[13:18:15][D][switch:055]: 'Przekaznik_podlogowka_sypialnia': Sending state OFF
WARNING esp32-rozdzielnia-bedzinko: Connection error occurred: [Errno 104] Connection reset by peer
INFO Processing unexpected disconnect from ESPHome API for esp32-rozdzielnia-bedzinko
WARNING Disconnected from API
INFO Successfully connected to esp32-rozdzielnia-bedzinko in 0.006s
INFO Successful handshake with esp32-rozdzielnia-bedzinko in 0.100s
[13:18:45][D][switch:016]: 'Przekaznik_bojler' Turning OFF.
[13:18:59][D][switch:012]: 'Przekaznik_podlogowka_sypialnia' Turning ON.
[13:18:59][D][switch:055]: 'Przekaznik_podlogowka_sypialnia': Sending state ON
[13:19:06][D][text_sensor:064]: 'uptime esp32-rozdzielnia-bedzinko': Sending state '49s'
[13:19:06][D][sensor:094]: 'Uptime Sensor': Sending state 49.36000 s with 0 decimals of accuracy
[13:19:15][D][switch:016]: 'Przekaznik_bojler' Turning OFF.

Coś tutaj jest?
Często powtarza się Connection error occurred tylko czym to jest spowodowane :confused:

edit.
dodałem jeszcze do konfiguracji output_power: 9.0 to może z racji tego że esp jest zamknięte w rozdzielni z punktem dostępowym wifi to może sygnał jest przesterowany

Musisz ustalić co jest przyczyną zrywania połączenia, nieco zawęziłem wyniki z logów - wydaje się, że rozłączenie sektorów podłogówki wywołuje silne zakłócenia indukcyjne, być może powinieneś przekaźnikami podłączonymi do ESP wysterowywać zdalne styczniki, jak masz to rozwiązane obecnie?

Na dobry początek proponuję usunąć z HA integrację z tym urządzeniem oraz jeśli miałeś jakieś inne wystąpienia z czasów np. projektowania to usuń wszystkie.
Zrestartuj HA i pozwól wykryć ponownie. Zintegruj.

Wykresy uptime by się przydały z tego okresu co masz logi, nie wiem czy sensor nie jest przekombinowany jak na tworzenie wykresu, więc najwyżej stwórz drugi i z jego wykorzystaniem logi + wykres, bo trzeba znaleźć powiązanie zrywania połączenia z jakąś przyczyną, której nie znamy.
Wydaje się że masz też restarty ESP

redukcja mocy w samym ESP może nie wystarczyć - jeśli sygnał RF jest przesterowany to powinieneś zredukować też moc wyjściową AP

Rozłączenie sektora może wywołać skerch z node Reda. Jak się ESP wl to uruchamia podłogówke. Potem się restartuje to zakładam że coś w tym kierunku.
Jak jest wyższy uptime i ogrzewanie jest off to nie widać falowania przekaźników podłogowki.
Pod ESP jest podlaczony przekaźnik który uruchamia przekaźnik do maty od ogrzewania.

Wykres uptime wygląda tak od czasu włączenia

Moc na ap zmniejszył, zobaczymy czy to coś zmieni

edit.
Cześć ponownie.

Dalej się restartuje. Wydaje mi się że to jest już kwestia tego zasilania.
Postanowiłem to przerobić tylko potrzebuję informacji czy idę w dobrym kierunku.
Chciałbym to zrobić tak, że moduł przekaźników zasilany na 12v, i jeden moduł esp32. Do tego jakiś zasilacz 12v 5-6A.
Jeden zasilacz na jeden moduł 8 przekaźników i jedno esp32.
Pod ESP powinno się dać podłączyć 8 przekaźników i 8 klawiszy?
Dobrze myślę? W dobrym kierunku bym szedł ?