Mehrere DS18B20 an ESPHome - Adresse gleich wie bei Arduino?

Hallo,
ich möchte mehrere DS18B20 an einen ESP8266 anschließen zum Auslesen der Rohrtemperaturen. Dazu hatte ich mir die Adressen der DS18B20 TempSensoren vorher mittels Arduino ausgelesen.

Das Format der Adressen ist ungefähr so:

DeviceAddress sensor1 = {0x28, 0x5C, 0x50, 0x56, 0xB5, 0x1F, 0x3C, 0xE1 };
DeviceAddress sensor2 = { 0x28, 0x1F, 0xAC, 0x75, 0xD0, 0x1F, 0x3C, 0x9A }

Wenn ich die ESPHome Adressen anschaue, sehen die ganz anders aus, nämlich ungefähr so:

platform: dallas_temp
    address: 0x8b012067de9e4828

Kann ich die Arduino Adressen irgendwie in ESPHome Adressen überführen, sind sie möglicherweise gleich und ich erkenne es nur nicht?

Vielen Dank S

Nachtrag:
Oder kann es sein, dass ich einfach nur die “0x…” Ziffern nach den ersten vier Ziffern weglassen muss?

Danke S

:crayon:by HarryP: Zusammenführung Doppelpost (bitte “bearbeiten” Funktion nutzen)

Viel einfacher ist es, den ESP erst mal mit ESPHome zu flashen, dabei 1Wire schon einzurichten.
Beim Starten scannt der dann den Bus und zeigt die alle Adresse im Logfile an.

Du kannst es aber probieren, die führenden “0x” wegzulassen ausser bei der ersten Stelle. Das müsste passen. ich bin nur nicht sicher, ob die Adressen in Arduino vorwärts oder rückwärts eingetragen werden.
Ansonsten siehst du es ja dann en im Log, welche Adresse der ESP beim starten finden

1 „Gefällt mir“

Tja, ich habe alle TempSensoren bereits im Keller in Leerrohren verlegt und wollte jetzt nur noch den ESP in der Aufputzdose “anlöten”.
Mal sehen, vielleicht flashe ich den den ESP und versuche es mit einem separaten TempSensor, erst über Arduino und dann über ESPHome.

Wo ist denn das Problem? Du flashst den ESP mit dem Code, verbaust ihn und schreibst dir aus dem Log beim Starten die Adressen auf.
Dann trägst du im Code die Adressen ein und flashst den ESP per OTA noch mal.
Das Einzig komplizierte dabei ist, daß du natürlich erst mal herausfinden musst, welche Adresse für welchen Sensor ist.

Sowas halte ich für keine gute Idee, was die Wartungsfreundlichkeit angeht.
Ich empfehle dir, wo immer möglich, Steckverbindungen zu verbauen, damit man sich das Löten vor Ort sparen kann.
Ich selber nutze für sowas mittlerweile GX12- und GX16-Steckverbinder. Die sind klein und handlich und lassen sich halbwegs gut verarbeiten.

1 „Gefällt mir“

Ich verwende statt Löten gerne WAGO-Klemmen in Aufputzdosen :slight_smile:
Gruß Handfest

Ich hatte die “Arduino” Adresse jedes Sensor ausgelesen und wollte sie dann in den Code eintragen. Und jeder Sensor klebt halt schon am Rohr. Da ist es etwas mühsam, die Adressen zuzuordnen.
Aber ich habe jetzt einen neuen TempSensor per Arduino und per ESPHome ausgelesen mit folgendem Ergebnis:

Arduino

DeviceAddress sensor1 = {0x28, 0x5B, 0x5G, 0x56, 0xB5, 0x1F, 0x3C, 0xE1 };

ESPHome

address: 0xe13c1fb5565g5b28

Mithin sind die Arduino Adressen rückwärts in ESPHome einzutragen.

Übrigens nehme ich auch WAGO Klemmen und entsprechend angepasste Steckverbinder.

S

Das hab ich fast befürchtet, aber gut zu wissen