ESPHome Projekt "Rohrtemperaturen überwachen" lässt sich nicht mehr updaten

Hallo,
habe bei mir das Projekt “Rohrtemperaturen überwachen” von Simon42

am laufen.

Dies funktionierte bisher mit folgenden Code:

esphome:
  name: heizungskeller
  friendly_name: Heizungskeller

esp8266:
  board: esp01_1m

# Enable logging
logger:

# Enable Home Assistant API
api:
  encryption:
    key: "xxx"

ota:
  password: "xxx"

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password
  manual_ip:
    static_ip: 192.168.xx.xx
    gateway: 192.168.xx.xx
    subnet: 255.255.255.0

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "Heizungskeller2 Fallback Hotspot"
    password: "xxx"

captive_portal:

dallas:
  pin:
    number: GPIO2
    mode:
      input: true
      pullup: true
  update_interval: 60s

 # Individual sensors
sensor:
  - platform: dallas
    address: 0x647048d44622yxx
    name: "Vorlauf HK1"
    unit_of_measurement: "°C"
    icon: "mdi:thermometer-plus"
    device_class: "temperature"
    state_class: "measurement"
    accuracy_decimals: 2

  - platform: dallas
    address: 0x4a1a7ed446fxxxx
    name: "Rücklauf HK1"
    unit_of_measurement: "°C"
    icon: "mdi:thermometer-plus"
    device_class: "temperature"
    state_class: "measurement"
    accuracy_decimals: 2

  - platform: dallas
    address: 0xd56506d446cxxxx
    name: "Vorlauf HK2"
    unit_of_measurement: "°C"
    icon: "mdi:thermometer-plus"
    device_class: "temperature"
    state_class: "measurement"
    accuracy_decimals: 2

  - platform: dallas
    address: 0x101f2dd446b8xxxx
    name: "Rücklauf HK2"
    unit_of_measurement: "°C"
    icon: "mdi:thermometer-plus"
    device_class: "temperature"
    state_class: "measurement"
    accuracy_decimals: 2

Nach dem Update auf ESPHome 2024.6.1 bekomme ich folgende Fehlermeldung:

INFO ESPHome 2024.6.1
INFO Reading configuration /config/esphome/heizungskeller2.yaml…
Failed config

dallas: [source /config/esphome/heizungskeller2.yaml:35]

The “dallas” component has been replaced by the “one_wire” component.
1-Wire Bus — ESPHome.

  - pin: 
      number: GPIO2
      mode: 
        input: True
        pullup: True
    update_interval: 60s

Die Dallas Kompenente wurde anscheinend durch one wire ersetzt.

Kann mir jemand sagen, wie ich den Projektcode abändern muss?
Ich brauch auch den internen pullup, da ich keinen externen verbaut habe.

Vielen Dank. Gruß

:crayon:by HarryP: Codezeilen formatiert

one_wire:
    - platform: gpio
      pin: GPIO12

  # mode:
    # input: true
    # pullup: true
# update_interval: 60s

# Individual sensors

sensor:
  - platform: dallas_temp
    address: 0xab03213152da4228
    name: "Vorlauf HK"
    unit_of_measurement: °C
    accuracy_decimals: 1
  - platform: dallas_temp
    address: 0x80012062ea515a28
    name: "Boiler"
    unit_of_measurement: °C
    accuracy_decimals: 1
  - platform: dallas_temp
    address: 0xc103213189901528
    name: "Rücklauf HK"
    unit_of_measurement: °C
    accuracy_decimals: 1

Gruss

Die ESPhome Coderverwürgen können sich auch mal bei ihren HA Kollegen abgucken wie man solche Änderungen richtig macht.
Man produziert 1-2 Monate vorher einen Hinweis das gewissen Dinge dann bis 6/24 angepasst werden müssen damit man nicht unverhofft 30 sourcefiles anpassen muss.

Und beim Dallas grübel ich gerade wo ich denn nun das update_interval hinpacke, denn innerhalb vom one_wire wills nicht, inner der sensoren auch nicht und global wäre noch falscher weil der ESP natürlich nur nur Dallas Sensoren hat.
@Wolfi1 haste da ne Lösung?

Edit:
@Wolfi1 erledigt … klappt innerhalb des sensor:

1 „Gefällt mir“

@gramtoc

Und hat es geholfen?
Eine Rückmeldung wäre wünschenswert!

Gruss

Warum sollten sie das tun? Wenn du ein ESPHOME Update installierst, passiert mit deinen Geräten erstmal überhaupt nichts, Du kannst dann vor dem erneuten Kompilieren deiner jeweiligen Sketches ganz in Ruhe den Changelog lesen und ggf. die Änderungen einpflegen. Wenn du dann auch noch Packages benutzt, hält sich der Aufwand für Änderungen, auch bei vielen Geräten, in Grenzen.

Sorry bin noch nicht dazu gekommen. Werde aber dann ein Rückmeldung geben.

Ich schrieb ja schon ich find’s bei HA besser gelöst, schlechter ging schon immer in den letzten 20 Jahren, das ist unbestritten.
Und natürlich benutzt man Packages, man ist ja nicht irre ausser man glaubt das das eintippen von dedundanten Codezeilen einen weiterbringt.

das zusätzlich -plaform: esphome beim OTA war dann aber dummerweise nicht ausgelagert, sprich ne reine Fleissarbeit ohne Mehrwert.

@Wolfi1 Hat mit deinem Codebeispiel geklappt.
Danke nochmal.

Gruß
Tom

@gramtoc
Bitte als Lösung anhacken .
Danke Gruss

Servus zusammen,

gibt es hier vlt einen neuen Bug? Ich bin neu im Forum und habe seit ca 1Jahr HA.

Seit einigen Tagen probiere ich ESPHome und muss sagen, dass ich nicht gedacht hätte an einem so einfachem Projekt zu scheitern :smiley:

Verwende aktuell einen Waveshare ESP32 C6 Zero und habe auf Pin 0 “GPIO0” einen Dallas DS18D20 angeschlossen.

Wenn ich den Bus entsprechend der neuen Vorlage einstelle:

one_wire:
  - platform: gpio
    pin: GPIO0

Sollte ich im Log den Sensor sehen, jedoch passiert nach dem Laden garnichts…

Wenn ich anschließend den Sensor mit dazu angebe:

sensor:
  - platform: dallas_temp
    name: "Zefix"
    update_interval: 2s

Sendet der Sensor Daten im Log, jedoch ohne Adresse….

Kann mir da jemand helfen?

PS: es pielt keine Rolle ob ich im “YAML” oder real einen 4,7 Wiederstand verwende, es kommt kein Log mit der Adresse.

→ Später möchte ich 3 Sensoren verwenden

:crayon:by HarryP: Code-/Logzeilen formatiert (bitte immer in </> einbinden)
s.a.: (Neues Update & Features - Hier in der Community 🫶)

@ NickZefix: Ich habe den ESP32 C6 Zero bei mir nicht im Einsatz und mir auch die Dokumentation nicht durchgelesen aber bei den meisten ESP’s hat GPIO0 eine Spezialfunktion für’s Flashen und sollte beim Start nicht auf 0 gezogen werden. Ich würde GPIO0 für den Anfang meiden, wenn ich mich nicht genau mit dem ESP auskenne.

Der Copilot meldet außerdem, dass GPIO 4,5,8,9 und 15 bei diesem ESP Stripping-Pins, also Pins mit speziellen Konfigurationsaufgaben sind, würde ich auch meiden.

Nimm GPIO1 oder GPIO2, die sollten sicher sein und einen realen 4,7KOhm Widerstand .

Ich betreibe 3 Sensoren 18D20 an einem ESP8266 am GPIO12 mit 4.7K pull up.

Bei einem ESP32 sollten es die Pin sein wie @LutzHB beschrieben!

Danke für den Verweiß mit dem Code, habe mich schon gefragt wie das geht :hugs:

Habe mir heute einen neuen Chip genommen, um einen Fehler im Board auszuschließen, jedoch ohne Erfolg.

→ Interner Pull up getestet oder mit 4.7k direkt wie im Bild.
Kein Log ……

Zuerst habe ich diesen Code probiert, um mögliche Sensoren zu finden:

esphome:
  name: esphome-web-8afd3c
  friendly_name: KG_Heizung
  min_version: 2025.9.0
  name_add_mac_suffix: false

esp32:
  variant: esp32
  framework:
    type: esp-idf

# Enable logging
logger:

# Enable Home Assistant API
api:

# Allow Over-The-Air updates
ota:
- platform: esphome

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

# Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "Heizkeller Fallback Hotspot"
    password: "123456789"
captive_portal:

  # Example configuration entry
one_wire:
  - platform: gpio
    pin: 1

Danach diesen Code

esphome:
  name: esphome-web-8afd3c
  friendly_name: KG_Heizung
  min_version: 2025.9.0
  name_add_mac_suffix: false

esp32:
  variant: esp32
  framework:
    type: esp-idf

# Enable logging
logger:

# Enable Home Assistant API
api:

# Allow Over-The-Air updates
ota:
- platform: esphome

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

# Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "Heizkeller Fallback Hotspot"
    password: "123456789"
captive_portal:

  # Example configuration entry
one_wire:
  - platform: gpio
    pin: 1

sensor:
  - platform: dallas_temp
    name: "Zefix"
    update_interval: 2s

Sollte ich das ganze über Arduino IDE probieren?

VG

Nick

folgendes habe ich noch aus dem Compiler:

[16:26:50.508][I][app:185]: ESPHome version 2025.10.3 compiled on Oct 30 2025, 16:23:12
[16:26:50.510][C][wifi:679]: WiFi:
[16:26:50.514][C][wifi:458]:   Local MAC: 8C:AA:B5:8A:FD:3C
[16:26:50.515][C][wifi:465]:   IP Address: 192.168.20.57
[16:26:50.523][C][wifi:469]:   SSID: [redacted]
[16:26:50.523][C][wifi:469]:   BSSID: [redacted]
[16:26:50.523][C][wifi:469]:   Hostname: 'heizung'
[16:26:50.523][C][wifi:469]:   Signal strength: -82 dB ▂▄▆█
[16:26:50.523][C][wifi:469]:   Channel: 12
[16:26:50.523][C][wifi:469]:   Subnet: 255.255.255.0
[16:26:50.523][C][wifi:469]:   Gateway: 192.168.20.1
[16:26:50.523][C][wifi:469]:   DNS1: 192.168.20.1
[16:26:50.523][C][wifi:469]:   DNS2: 0.0.0.0
[16:26:50.533][C][logger:261]: Logger:
[16:26:50.533][C][logger:261]:   Max Level: DEBUG
[16:26:50.533][C][logger:261]:   Initial Level: DEBUG
[16:26:50.543][C][logger:267]:   Log Baud Rate: 115200
[16:26:50.543][C][logger:267]:   Hardware UART: UART0
[16:26:50.545][C][logger:274]:   Task Log Buffer Size: 768
[16:26:50.548][C][gpio.one_wire:021]: GPIO 1-wire bus:
[16:26:50.553][C][gpio.one_wire:022]:   Pin: GPIO1
[16:26:50.555][W][gpio.one_wire:082]:   Found no devices!
[16:26:50.575][C][dallas.temp.sensor:029]: Dallas Temperature Sensor:
[16:26:50.576][W][dallas.temp.sensor:031]:   Unable to select an address
[16:26:50.596][C][captive_portal:116]: Captive Portal:
[16:26:50.600][C][esphome.ota:093]: Over-The-Air updates:
[16:26:50.600][C][esphome.ota:093]:   Address: heizung.local:3232
[16:26:50.600][C][esphome.ota:093]:   Version: 2
[16:26:50.617][C][safe_mode:018]: Safe Mode:
[16:26:50.617][C][safe_mode:018]:   Successful after: 60s
[16:26:50.617][C][safe_mode:018]:   Invoke after: 10 attempts
[16:26:50.617][C][safe_mode:018]:   Duration: 300s
[16:26:50.619][C][web_server.ota:241]: Web Server OTA
[16:26:50.637][C][api:222]: Server:
[16:26:50.637][C][api:222]:   Address: heizung.local:6053
[16:26:50.637][C][api:222]:   Listen backlog: 4
[16:26:50.637][C][api:222]:   Max connections: 8
[16:26:50.638][C][api:234]:   Noise encryption: NO
[16:26:50.642][C][mdns:179]: mDNS:
[16:26:50.642][C][mdns:179]:   Hostname: heizung

Das ist laut Protokoll aber immer noch GPIO1!

Nimm doch mal D4 müsste GPIO4 entsprechen.

Also Anschluss an D4 mit pullup auf VCC (3.3V)

Gruss

Er hätte bei GPIO1 eine Adresse im Logging sehen müssen. Normalerweise liegt so etwas am 4,7kOhm Widerstand. Wenn der zu klein ist, dann wird kein Device gefunden. Vielleicht Widerstand mal nachmessen. Wie ist die Hardware verdrahtet worden? Handelt es sich um einen nackten Senor, einen Sensor auf einer Platine? Ist vielleicht schon ein Widerstand im Sensorkabel?

jo, gestern hatte ich GPIO0 und heute durch den Tipp von @LutzHB probiere ich GPIO1 aus :wink:

Der Sensor ist meines Wissens her “blank” lediglich ein Kabel ist verbaut (angeblich Wasserdicht).

VG

Ja die benutze ich auch.
Du hast nicht zufällig einen ESP D1 mini (8266) rumliegen.
Währe eigentlich ausreichen für diese Sensoren.
Und funktioniert ohne Probleme.

Gruss

Servus,

habe das Problem gefunden!
Nicht nur, dass beide DS Sensoren kaputt waren sondern auch der ESP selbst ne macke weg hatte.
Funktioniert nun mit einem neuem Sensor/EPS32 direkt und ohne Probleme

→ GPIO 0 mit verbautem Wiederstand :slight_smile:

VG

1 „Gefällt mir“