Capteurs Dallas sur 2 GPIO différents avec un ESP32

Bonjour,

Je voudrais brancher plusieurs bus de capteurs de température de type Dallas sur un ESP32 sur des 2 GPIO différents.
Je ne suis pas parvenu à trouver la configuration pour ESPHome.

En effet dans les exemples Dallas , on retrouve à chaque fois un seul pin :

dallas:
  - pin: GPIO23

sensor:
  - platform: dallas
    address: 0xA40000031F055028
    name: "Temperature #1"
  - platform: dallas
    address: 0xDD0000031EFB0428
    name: "Temperature #2"
  - platform: dallas
    # ...

J’aimerais faire ceci :

dallas1:
  - pin: GPIO21
  
dallas2:
  - pin: GPIO22

sensor:
  - platform: dallas1
    address: 0xA40000031F055028
    name: "Temperature #1"

  - platform: dallas1
    address: 0xA40000031F055020
    name: "Temperature #2"

  - platform: dallas2
    address: 0xDD0000031EFB0428
    name: "Temperature #3"

  - platform: dallas2
    address: 0xDD0000031EFB0423
    name: "Temperature #4"

L’un de vous saurait comment faire cela ?

Cordialement

J’ai trouvé comment faire finalement. Pour ceux que cela intéresse :

dallas:
- id: "dallas_hub_GPIO8"
  pin: GPIO8 # Grove connector

- id: "dallas_hub_GPIO9"
  pin: GPIO9 # Grove connector

sensor:
  - platform: dallas
    dallas_id: dallas_hub_GPIO8
    address: 0x7a000005fab2f728
    name: "Temperature #1"

  - platform: dallas
    dallas_id: dallas_hub_GPIO8
    address: 0xA40000031F055020
    name: "Temperature #2"

  - platform: dallas
    dallas_id: dallas_hub_GPIO9
    address: 0xDD0000031EFB0428
    name: "Temperature #3"

  - platform: dallas
    dallas_id: dallas_hub_GPIO9
    address: 0xDD0000031EFB0423
    name: "Temperature #4"
5 « J'aime »

Bonjour Iboue,
Il n’y a qu’une seul pin car le 1-wire permet de mettre plusieurs capteurs sur la même pin.
C’est pour ça que l’on a une adresse pour chaque composant.
J’ai une carte ESP8266 avec 2 DS18B20 sur la même pin DATA et ça fonctionne très bien.

Arsouil

Juste par curiosité, je me posais la question tu mets en place ce setup.
J’ai à la maison un wemos mini D1 avec 8 dallas en série connectées sur un seul gpio .
Y’a t’il une raison particulière à en mettre 2 sur des gpio différents ?

Oui car j’utilise 2 bus que j’ai raccordé via 2 connecteurs Grove vers raccordés sur des appareils différents.

Merci pour l’info Iboue , je commence sur home assistant, et je me posé justement la question .
Moi c’est parce que j’ai 3 branches de plus de 50 mètres avec plusieurs capteurs dessus ,et pour éviter un « effondrement » mon RPI est au milieu .
De plus ca peut aussi servir pour doublé une ligne « sensible » , pour une fiabilité accrue, si une ligne « casse » ou en court-circuit , l’autre est toujours là . deux lignes avec 2 séries de capteurs .( oui je suis un peux parano :slightly_smiling_face:)

Bonjour, je relence le sujet suite à la mise a jour d’esphome, il faud mettre a jour le yaml , et là je seche …
j’ai essayé plein de combinaisons , ça ne veut pas , … et je ne trouve aucune info même sur HA anglais …
Avant j’avais çà qui fonctionner trés bien … en simplifiant, car j’ai 8 sondes d’un côté sur GPIO2 et 9 de l’autre sur GPIO 14
.

dallas:
- id: "dallas_hub_GPIO2"
  pin: GPIO2
  update_interval: 120s

- id: "dallas_hub_GPIO14"
  pin: GPIO14
  update_interval: 120s 

sensor:  

# GPIO 2
  - platform: dallas
    dallas_id: dallas_hub_GPIO2
    address: 0xf43c92f64807ec28
    name: "Temperature 1"

# GPIO14

  - platform: dallas
    dallas_id: dallas_hub_GPIO14
    address: 0xd401205fe6ef8228
    name: "Temp Ext 4"  

.
.
.
J’en suis là , mais j’arrive pas à mettre les platforms correctement

one_wire:
  - platform: gpio
    pin: GPIO2

  - platform: gpio
    pin: GPIO14

sensor:  

# GPIO 2
  - platform: dallas_temp
    one_wire_id: GPIO2
    address: 0xf43c92f64807ec28
    name: "Temperature 1"

# GPIO14
  - platform: dallas_temp
    one_wire_id: GPIO14
    address: 0xd401205fe6ef8228
    name: "Temp Ext 4"


.
.
erreur .
.

INFO ESPHome 2024.6.6
INFO Reading configuration /config/esphome/chaudiere.yaml...
ERROR Error while reading config: Invalid YAML syntax:

Duplicate key "one_wire_id"
  in "/config/esphome/chaudiere.yaml", line 55, column 5
NOTE: Previous declaration here:
  in "/config/esphome/chaudiere.yaml", line 47, column 5

Salut,
ta oublier le id: pour les GPIO.

one_wire:
  - platform: gpio
    pin: GPIO2
    id: wire_gpio02

  - platform: gpio
    pin: GPIO14
    id: wire_gpio14

sensor:  

# GPIO 2
  - platform: dallas_temp
    one_wire_id: wire_gpio02
    address: 0xf43c92f64807ec28
    name: "Temperature 1"

# GPIO14
  - platform: dallas_temp
    one_wire_id: wire_gpio14
    address: 0xd401205fe6ef8228
    name: "Temp Ext 4"
1 « J'aime »

J’y suis depuis hier midi !!! et toi en 2 secondes … pfuii …
Merci ,… que dire d’autre … :flushed:

1 « J'aime »