Integracja ESP Home nie pokazuje czujnika DS18B20

Pierwszy raz spotykam się że EspHome nie pokazuje utworzonego czujnika. W logach ESP home dla wskazanego urządzenia ( Wemos D1 ) mam utworzony czujnik temp Dallas - DS18B20 widać, że działa i raportuje temp ale za chiny nie wiem dlaczego nie pokazuje go w integracji w home assistant. Próbowałem go usunąć i dodać na nowo. Próbowałem na innej przeglądarce i dalej nic. Resetowałem również homeassistant i też nie wskoczył. Macie jakiś pomysł.



333

Miałem podobny problem jak ty, ale to z mojej winy, tzn: wemosa z czujnikiem użyłem do testów modbusa z pzem-016, a później jak wiedziałem co i jak przeniosłem do vcx-dts-1946, ale poszedłem na skróty, pozmieniałem nazwy plików yaml w esphome, niby działało ale w HA nie było temperatury.
Usunąłem urządzenia w HA (pzem i vcx), utworzyłem nowe urządzenie w esphome i temperatura się pojawiła.

@ponczur
Pokaż cała konfigurację - wklej tekst między linijki zawierające tylko to: ```

Miałem tak ostatnio, nagle DS stały się niedostępne a EspHome wykrywał, raportował, podawał odczyty. Okazało się że wszystkie encje dostały samoczynnie dopisek “_2”.

esphome:

  name: wemosd1

esp8266:

  board: d1_mini

# Enable logging

logger:

# Enable Home Assistant API

api:

  encryption:

    key: "xxxx"

ota:

  password: "xxx"

wifi:

  ssid: !secret wifi_ssid

  password: !secret wifi_password

  manual_ip:

    static_ip: 192.168.0.62

    gateway: 192.168.0.1

    subnet: 255.255.255.0

  # Enable fallback hotspot (captive portal) in case wifi connection fails

  ap:

    ssid: "Wemosd1 Fallback Hotspot"

    password: "EwJrYiNIleBv"

dallas:

  - pin: GPIO13

sensor:

  - platform: dallas

    address: 0xbb012114200b7628

    name: "podłoga łazienka"

captive_portal:

Dla testów wgrałem ESPHome na ESP32 oraz podpiąłem DS18B20. Jest dokładnie tak samo nie wykrywa czujnika temperatury.


@george1255 U mnie jest inaczej. Encja w żaden sposób nie chce się utworzyć.

Z logów: DallasComponent Pin: GPIO19 a w konfiguracji masz pin: GPIO13, pomyłka, zmiana konfiguracji przy zmianie podłączenia?

Na moje oko nie zgadza się również adresacja czujnika:


To może jeszcze raz wstawię screeny bardziej czytelne. Testuje Dwie płytki. 1. ESP32 , 2. Wemos D1 ; Do obydwu podłączyłem dwa różne czujniki DS18B20 ( sprawne ) W obydwu przypadkach coś blokuje pojawienie się encji w home assistant. Pewnie pierdoła ale nie potrafię ustalić co.

W konfiguracji brakuje DNSów, nic innego niepokojącego nie widzę (poza lekkim bałaganem - wynikającym chyba z używania edytora, który nie jest dostosowany do linuxowych plików - co druga linijka pusta? oraz sekcja captive_portal gdzieś na końcu poza sekcją użytkową).
Próbowałeś konfiguracji bez statycznego IP? - wywal całą sekcję manual_ip
(skoro masz zaawansowaną konfigurację sieci u siebie, to sugeruję niezmienność IP uzyskać w inny sposób - nadając stałe przydziały z DHCP)
Podejrzanym staje się router, który blokuje ruch mDNS?

Bardziej mnie zastanawia z jakiej paki w diagnostyce masz encję z “nmap tracker” - to by sugerowało, że masz 2 encje z różnych integracji o tej samej nazwie.

Zaraz zaraz, czemu pokazujesz nam screenshoty encji z integracji nmap? Jeśli mówimy o esphome? (edit: to jednak jest OK, po doinstalowaniu nowej integracji nmap i skonfigurowaniu skanowania całej sieci, to jednak jest normalne zachowanie)

Zrób test dla jednej płytki :

  • Usuń urządzenie ESPHome z HA.
  • W celu integracji z HA skorzystaj tylko z hasła:
    # Example configuration entry
    api:
      password: <trudne-haslo> 
    
  • Przed dodaniem ESPHome do HA zweryfikuj czy na stronie urządzenia są widoczne wszystkie encje z konfiguracji ESPHome
  • Dodaj ponownie urządzenie ESPHome do HA.

Czy teraz wszystkie encje są widoczne w HA?

Z dwojga płytek jedna ruszyła. Płytka Wemos D1 działa poprawnie > raportuje temperaturę. Pomogło usunięcie w EspHome wpisu dotyczącego stałego ip.
2. Płytka ESP32 dalej nie pokazuje temperatury w HA - nie tworzy się encja. Dodałem z ciekawości przycisk switch i sygnał wifi encje od razu powstały w home assistant. Ciekawe co blokue powstanie czujnika temperatury. W logach esphome temeratura działa jak również poprzez web.
Dodatkowo próbowałem wgrać inne wersje esp32 nic to nie pomogło. Poniżej zdjęcia.



Próbowałeś tego samego z drugą? (w konfiguracji ze statycznym IP urządzenia ESPHome musisz dodawać ręcznie do HA, robisz to po każdej zmianie?)

Najwyraźniej masz jakiś problem w konfiguracji sieci, ale nie jestem w stanie zgadnąć jaki.

Próbowałeś zrestartować HA?
Brak ikony integracji ESPHome może świadczyć o tym, że nie dodałeś urządzenia do HA w integracj9 ESPHome, albo masz coś intensywnie zwalone w samym HA


może w integracji nmap ustaw niezerowy czas między skanowaniem?

Czy mamy odpalić szklane kule?
Co masz na myśli bo ja nawet nie rozumiem co chciałeś przekazać:

Scrennshoty kawałków kodu raczej nie ułatwiają nam życia.

Aktualizacja: Zakupiłem nową płytkę NodeMcu oraz DS18B20. Po wgraniu EspHome po Web widać że działa natomiast w Home Assistant również brak encji a więc problem jest gdzieś w HA

Kod:

esphome:

  name: "esp8266-nodemcu-v3"

esp8266:

  board: esp01_1m

# Enable logging

logger:

# Enable Home Assistant API

api:

  encryption:

    key: "Qn4rPlBpnBZVJ8zSOGAtoqJHwj1fhhNgVJbelLM/VsE="

ota:

  password: "xxx"

wifi:

  ssid: !secret wifi_ssid

  password: !secret wifi_password

  # Enable fallback hotspot (captive portal) in case wifi connection fails

  ap:

    ssid: "Esp8266-Nodemcev3-1"

    password: "xxx"

web_server:

  port: 80  

dallas:

  - pin: GPIO0

sensor:

  - platform: dallas

    address: 0xa115becb0664ff28

    name: "temp_pokój_Tomka"  

captive_portal:

Podejrzewam, że masz więcej aktywnych konfiguracji z tym samym adresem… tu może być problem.

Nie wiem czemu masz co drugą linię pustą, ale to jest bardzo zły objaw, bo masz białe znaki, które mogą psuć kod.
Jeśli edytujesz te pliki przez sambę z poziomu windowsa, to użyj tego edytora (on daje radę z linuxowymi plikami tekstowymi, nie wiem czego obecnie używasz, ale co druga pusta linia jest typowym objawem odwiecznej niekompatybilności na linii linux-windows)
https://notepad-plus-plus.org/downloads/

Generalnie to do podpinania Dallasa nie powinieneś używać GPIO0, ale to tak poza konkurencją (działać pewnie będzie, ale nie powinien być na tym pinie).
Jeśli nie masz zdrowia na czytanie pełnej dokumentacji to tu masz bryk, te które są spoko do dowolnego zastosowania mają zielone OK w 2 kolumnach tabelki.
Masz wadliwą definicję płytki.

Pokaż bardziej kompletny log (wstaw tekst), a nie kawałek screenshota.
Nie wiemy jak się sprawy mają z API (bo to ono odpowiada za wysyłanie danych z ESPHome do HA, dlatego wywaliłem opcjonalne hasła, bez nich też powinno działać, oczywiście powinieneś usunąć z HA dotychczasowe urządzenie z Integracji, po wgraniu nowego firmware powinno zostać dodane automatycznie, jeśli nie stanie się to od razu to zrestartuj HA).
Ten fragment loga który pokazałeś na screenshocie pokazuje tylko, że ESPHome odbiera dane z Dallasa, ale nie widać czy je gdziekolwiek wysyła.

Sprawdź taki konfig:

esphome:
  name: "esp8266-nodemcu-v3"

esp8266:
  board: nodemcuv2

logger:
api:
ota:
wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password
  ap:
    ssid: "Esp8266-Nodemcev3-1"
    password: "xxx"
captive_portal:
web_server:
  port: 80

dallas:
  - pin: GPIO0 # ustaw jakiś inny "normalny" pin

sensor:
  - platform: dallas
    address: 0xa115becb0664ff28
    name: "temp_pokoj_Tomka"

binary_sensor:
  - platform: status
    name: "Node Status"
    id: system_status

Edit - w ostatnich linijkach dodałem sensor binarny, którego stan będzie pokazywał czy masz połączenie API (również w web-serwerze).
Tu masz przykład jak to działa:
świeżo po restarcie brak połączenia API

a tu już połączenie OK

Bardzo dziękuję Panom Szopen oraz Piter myślę, że problem rozwiązany. Uwaga i przestroga na innych proszę zwracać uwagę czy gdzieś w Kodzie nie powtarzają się numery czujnika Dallas oraz trzymać ogólny porządek i usuwać zbędne puste wiersze. Zapomniałem zmienić numery czujnika przekładając DS18B20 pomiędzy pomieszczeniami potem już posypały się kolejne błędy. Jeszcze raz dzięki wszystkim.