esphome / issues

Issue Tracker for ESPHome
https://esphome.io/
291 stars 34 forks source link

Maximum of 8 Dallas temperature sensors (DS18B20) #5477

Open Itsch001 opened 4 months ago

Itsch001 commented 4 months ago

The problem

Every time I try to use more than eight DS18B20 sensors on a single NodeMCU, ESPHome only reads eight of the temperature values. Even if more sensors are found and definded, they are skipped without an error.

I already tried

what I already found out is

Which version of ESPHome has the issue?

2023.12.9

What type of installation are you using?

Home Assistant Add-on

Which version of Home Assistant has the issue?

2023.11.0

What platform are you using?

ESP8266

Board

nodemcu

Component causing the issue

ds18b20

Example YAML snippet

dallas:
  - pin: GPIO16
    update_interval: 10s
    id: "dallas_hub_1"
  - pin: GPIO12
    update_interval: 10s
    id: "dallas_hub_2"

sensor:
  - platform: dallas
    address: 0x380922549a5ffc28
    name: "Speicher Anschluss oben"
    id: "Speicher_Anschluss_oben"
    unit_of_measurement: "°C"
    icon: "mdi:water-percent"
    device_class: "temperature"
    state_class: "measurement"
    accuracy_decimals: 1
    dallas_id: dallas_hub_1

  - platform: dallas
    address: 0x5b3c91e3810ff128
    name: "Speicher oben"
    id: "Speicher_oben"
    unit_of_measurement: "°C"
    icon: "mdi:water-percent"
    device_class: "temperature"
    state_class: "measurement"
    accuracy_decimals: 1
    dallas_id: dallas_hub_1

  - platform: dallas
#    address: 0x990822538ef4bb28
    address: 0xf907225272a26428
    name: "Speicher Mitte"
    id: "Speicher_Mitte"
    unit_of_measurement: "°C"
    icon: "mdi:water-percent"
    device_class: "temperature"
    state_class: "measurement"
    accuracy_decimals: 1
    dallas_id: dallas_hub_1

  - platform: dallas
    address: 0x2f08225461938d28
    name: "Speicher unten"
    id: "Speicher_unten"
    unit_of_measurement: "°C"
    icon: "mdi:water-percent"
    device_class: "temperature"
    state_class: "measurement"
    accuracy_decimals: 1
    dallas_id: dallas_hub_1

  - platform: dallas
    address: 0xdb3c88e381635728
    name: "Trinkwasser oben"
    id: "Trinkwasser_oben"
    unit_of_measurement: "°C"
    icon: "mdi:water-percent"
    device_class: "temperature"
    state_class: "measurement"
    accuracy_decimals: 1
    dallas_id: dallas_hub_2

  - platform: dallas
    address: 0xc8072261514c1a28
    name: "Trinkwasser unten"
    id: "Trinkwasser_unten"
    unit_of_measurement: "°C"
    icon: "mdi:water-percent"
    device_class: "temperature"
    state_class: "measurement"
    accuracy_decimals: 1
    dallas_id: dallas_hub_2

  - platform: dallas
    address: 0xa43c190457593628
    name: "Zirkulation warm"
    id: "Zirkulation_warm"
    unit_of_measurement: "°C"
    icon: "mdi:water-percent"
    device_class: "temperature"
    state_class: "measurement"
    accuracy_decimals: 1
    dallas_id: dallas_hub_2

  - platform: dallas
    address: 0x323ce904576f1e28
    name: "Zirkulation kalt"
    id: "Zirkulation_kalt"
    unit_of_measurement: "°C"
    icon: "mdi:water-percent"
    device_class: "temperature"
    state_class: "measurement"
    accuracy_decimals: 1
    dallas_id: dallas_hub_2

  - platform: dallas
    address: 0x2f08225461938d28
    name: "Speicher Anschluss unten"
    id: "Speicher_Anschluss_unten"
    unit_of_measurement: "°C"
    icon: "mdi:water-percent"
    device_class: "temperature"
    state_class: "measurement"
    accuracy_decimals: 1
    dallas_id: dallas_hub_1

Anything in the logs that might be useful for us?

[15:46:28][D][dallas.sensor:082]:   Found sensors:
[15:46:28][D][dallas.sensor:084]:     0xc8072261514c1a28
[15:46:28][D][dallas.sensor:084]:     0xa43c190457593628
[15:46:28][D][dallas.sensor:084]:     0x323ce904576f1e28
[15:46:28][D][dallas.sensor:084]:     0xdb3c88e381635728
[15:46:28][C][dallas.sensor:089]:   Device 'Trinkwasser oben'
[15:46:28][C][dallas.sensor:089]:     Device Class: 'temperature'
[15:46:28][C][dallas.sensor:089]:     State Class: 'measurement'
[15:46:28][C][dallas.sensor:089]:     Unit of Measurement: '°C'
[15:46:28][C][dallas.sensor:089]:     Accuracy Decimals: 1
[15:46:28][C][dallas.sensor:089]:     Icon: 'mdi:water-percent'
[15:46:28][C][dallas.sensor:097]:     Address: 0xdb3c88e381635728
[15:46:28][C][dallas.sensor:098]:     Resolution: 12
[15:46:28][C][dallas.sensor:089]:   Device 'Trinkwasser unten'
[15:46:28][C][dallas.sensor:089]:     Device Class: 'temperature'
[15:46:28][C][dallas.sensor:089]:     State Class: 'measurement'
[15:46:28][C][dallas.sensor:089]:     Unit of Measurement: '°C'
[15:46:28][C][dallas.sensor:089]:     Accuracy Decimals: 1
[15:46:28][C][dallas.sensor:089]:     Icon: 'mdi:water-percent'
[15:46:28][C][dallas.sensor:097]:     Address: 0xc8072261514c1a28
[15:46:28][C][dallas.sensor:098]:     Resolution: 12
[15:46:28][C][dallas.sensor:089]:   Device 'Zirkulation warm'
[15:46:28][C][dallas.sensor:089]:     Device Class: 'temperature'
[15:46:28][C][dallas.sensor:089]:     State Class: 'measurement'
[15:46:28][C][dallas.sensor:089]:     Unit of Measurement: '°C'
[15:46:28][C][dallas.sensor:089]:     Accuracy Decimals: 1
[15:46:28][C][dallas.sensor:089]:     Icon: 'mdi:water-percent'
[15:46:28][C][dallas.sensor:097]:     Address: 0xa43c190457593628
[15:46:28][C][dallas.sensor:098]:     Resolution: 12
[15:46:28][C][dallas.sensor:089]:   Device 'Zirkulation kalt'
[15:46:28][C][dallas.sensor:089]:     Device Class: 'temperature'
[15:46:28][C][dallas.sensor:089]:     State Class: 'measurement'
[15:46:28][C][dallas.sensor:089]:     Unit of Measurement: '°C'
[15:46:28][C][dallas.sensor:089]:     Accuracy Decimals: 1
[15:46:28][C][dallas.sensor:089]:     Icon: 'mdi:water-percent'
[15:46:28][C][dallas.sensor:097]:     Address: 0x323ce904576f1e28
[15:46:28][C][dallas.sensor:098]:     Resolution: 12

[17:30:42][D][dallas.sensor:143]: 'Speicher Anschluss oben': Got Temperature=44.0°C
[17:30:42][D][sensor:093]: 'Speicher Anschluss oben': Sending state 44.00000 °C with 1 decimals of accuracy
[17:30:42][D][dallas.sensor:143]: 'Speicher Anschluss unten': Got Temperature=46.0°C
[17:30:42][D][sensor:093]: 'Speicher Anschluss unten': Sending state 46.00000 °C with 1 decimals of accuracy
[17:30:42][D][dallas.sensor:143]: 'Speicher oben': Got Temperature=46.2°C
[17:30:42][D][sensor:093]: 'Speicher oben': Sending state 46.18750 °C with 1 decimals of accuracy
[17:30:42][D][dallas.sensor:143]: 'Speicher Mitte': Got Temperature=46.2°C
[17:30:42][D][sensor:093]: 'Speicher Mitte': Sending state 46.18750 °C with 1 decimals of accuracy
[17:30:43][D][dallas.sensor:143]: 'Trinkwasser oben': Got Temperature=46.3°C
[17:30:44][D][sensor:093]: 'Trinkwasser oben': Sending state 46.31250 °C with 1 decimals of accuracy
[17:30:44][D][dallas.sensor:143]: 'Zirkulation kalt': Got Temperature=25.9°C
[17:30:44][D][sensor:093]: 'Zirkulation kalt': Sending state 25.87500 °C with 1 decimals of accuracy
[17:30:44][D][dallas.sensor:143]: 'Trinkwasser unten': Got Temperature=44.8°C
[17:30:44][D][sensor:093]: 'Trinkwasser unten': Sending state 44.75000 °C with 1 decimals of accuracy
[17:30:44][D][dallas.sensor:143]: 'Zirkulation warm': Got Temperature=41.5°C
[17:30:44][D][sensor:093]: 'Zirkulation warm': Sending state 41.50000 °C with 1 decimals of accuracy

Additional information

image

github-actions[bot] commented 3 weeks ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

ssieb commented 3 weeks ago

Can you try https://github.com/esphome/esphome/pull/6860?