Ausfallüberwachung DS18B20

Hallo Gemeinde,
ich habe an meinem ESP32 Temperatur Sensoren am 1Wire (DS18B20).
Ich möchte bei Verbindungsabbruch eine Onboard LED einschalten. Alle Versuche führen hier nicht zum Ziel und habe das Internet “leergesucht” zur Statusermittlung der DS18B20.
Den gleichen Ansatz habe ich für das WiFi Signal umgesetzt und funktioniert. Irgendwie komme ich nicht an den Status der DS18B20.
Hat dies schonmal jemand umsetzen können oder eine Idee zur DS18B20 Überwachung?
Nachfolgend der Code Schnipsel… unter dem Platzhalter stehen meine 3 gescheiterten Versuche.
Es gibt anscheinend einen Typenkonflikt, obwohl in der Template Simulation “nan” im Fall der Unterbrechung angezeigt wird.
Hinweise oder Ideen?
Danke
Frank

interval:
  - interval: 1s #prüfe jede Sekunde
    then:
      if:
        condition:
          wifi.connected: # WiFi verbunden? 'true' oder 'false'
        then: # WiFi ist verbunden
          - output.turn_on: gLED # Ausgang invertiert! -> gelbe LED ist AUS
        else:
          - output.turn_off: gLED # Ausgang invertiert! -> gelbe LED ist EIN
  
  - interval: 1s
    then:
      if:
        condition:
          wifi.connected:   # ACHTUNG nur Platzhalter damit es compiliert und der Rest getestet werden kann!
          #lambda: 'return id(A_temp).has_state;'
          #lambda: 'return id(A_temp).state = "nan";'
          #states('sensor.esp_dkb4_test_aussentemperatur_nord') = "nan" # S18B20 ohne Wert
        then:  
          - output.turn_on: rLED # Fehler DS18B20 -> rote LED
        else:
          - output.turn_off: rLED

Hallo @Hispanic ,
dein Thema ESPHome Lambda isnan hat mich auf die Spur gebracht und nun läuft es bei mir wie gewünscht.

 - interval: 1s
    then:
      if:
        condition:
          lambda: 'return (std::isnan(id(A_temp).state));' # liefert DS18B20 keinen Wert, sondern NAN? 
        then:  
          - output.turn_on: rLED # rote OnBoard LED EIN
        else:
          - output.turn_off: rLED # ansonsten kein Fehler = AUS
     

Super Dank für den Denkanstoss
Frank
Was mich ärgert ist, das `ESPhome keinen Treffer für den Suchbegriff ‘isnan’ findet, ebenfalls der Suchbegriff ‘std::’… da soll man was lernen, es funktioniert und ich weiß nicht warum :face_with_diagonal_mouth:

Genau deinen Beitrag hatte ich auch gefunden und schon auf meinen ESP gespielt, der scheint allerdings größere Probleme zu haben. Nach jedem Neustart ist er erstmal stundenlang nicht erreichbar.
Ich hoffe das es bei mir dann auch geht. :wink: