NEWS
Wie viele DS18B20 an ESP32?
-
Habe seit Monaten eine 8 Sensor-Variante mit ESP8266 und ESPEasy mit 7 DS18B20 und einem SHT31 im Probebetrieb.
ESPEasy zeigt ein Beispiel mit 12 Sensoren https://esphome.io/components/sensor/dallas.html
Habe keine Beschränkung zu Anzahl Sensoren gelesen.
Der ESPHome Adapter empfängt die Daten.Die Webseite der ESP sieht so aus:
Die Programmierung basiert auf einem Gerät zur Messung und Ermittlung der Wandfeuchte wie ich es zur Steuerung von Luftentfeuchtern nutze. Daran habe ich noch weitere 6 DS18B20 angebracht, welche künftig die noch zu liefernde Batterie der noch zu liefernden PV Anlage überwachen sollen.
-
@josh
Ich habe an einem ESP8266 (mit EspHome programmiert) 12 Dallas DS18B12 seit Monaten stabil laufen. Ich hae sie aber auf GPIOs verteilt weil ich mal gelesen habe, dass das die Fehleranfälligkeit verringert. Als Widerstand habe ich 47 k genommen. -
@wolfgangfb sagte in Wie viele DS18B20 an ESP32?:
Widerstand habe ich 47 k genommen.
sind 4k7 nicht üblich?
Dein Widerstand ist ein bisschen viel, oder nicht ? -
@bahnuhr sagte in Wie viele DS18B20 an ESP32?:
@wolfgangfb sagte in Wie viele DS18B20 an ESP32?:
Widerstand habe ich 47 k genommen.
sind 4k7 nicht üblich?
Dein Widerstand ist ein bisschen viel, oder nicht ?Tippfehler, Komma vergessen, es sind 4,7 k
Ich probiere es aber mal aus ob es nicht auch mit 47k geht, ist ja nur ein Pull-Up Widerstand und mit 47k müssten auch definierte Pegel erzeugt werden können. -
@wolfgangfb Bleib bei den 4K7. Das Datenblatt empfiehlt ca. 5k und zeichnet 4k7 in die Schaltbilder.
Es geht ja nicht um eine statische Spannung, sondern um das Nachladen der Kapazitäten bei der Signalübertragung. Ein zu großer Pullup führt zu "verschliffenen" Signalflanken.
-
Hallo Zusammen.
Ich wollte kurz nur eine Zwischenmeldung abgeben.aktuell betreibe ich im Testaufbau 20x DS18B20 (Dallas) an eine GPIO (16) am ESP32 D1 mini. Alle 3 Leitungen wurden zu den 20 Sensoren verlegt, als Ring. --> geplant sind 16 pro GPIO als HUB um 2x16Sensoren zu verwalten.
Wenn ich es umgesetzt habe, stell ich noch ein paar Bilder mit ein.
Ich flash den ESP32 D1 mit ESPhome über den HomeAssi --> nutze ich nur zum flashen , so was Feines..
Jetzt kommen die versprochenen Bilder.
die Länge ist ca 1,20m bis dann der Sensorring beginnt. Es ist für meine 16elle LiFePo DIY Speicher. Damit möchte ich die Temperaturen der Zellen im Blick haben.
Der 3D Druck Stift mit TPU Material, ist eine Mega Geniale Sache für mich. Damit stabilisiere ich quasie alle Lötverbindungen und mach es etwas robuster.
Die DS18B20 habe ich bewusst steckbar gestaltet um bei Ausfällen, nicht an der Batterie herum zu löten).
Dieser ESP soll noch den GPIO17 mit auslesen, Testaufbau mit HUB Funktion von ESPhome hat funktioniert, aktuell warte ich noch auf die Sensoren aus China. Dann wird der zweite Kreis gebaut. --> mit einigen Verbesserungen --> dann werden nur noch 8 blaue Verbinder a´ 2 3-fach Stecker Anschlüsse verbaut, eventuell auch nur als Stichleitung.... die JSH haben einen 1.5mm Pinabstand. Die Löterei is eine kleine Fummelei, aber mit dem passenden Werkzeug ....
Der Vorteil der Steckerei... alles mit einem mal anstecken und beim erst init hat man die ID der DS18B20, die kann man dann einfach einpflegen und durch an und abstecken der richtigen Zell zuordnen.
-
@marco-3
Kannst Du bitte auch eine Info zu verwendeten Kabeln und Leitungslängen geben. Bei Positionierung der Sensoren in der ganzen Hütte hatte ich da schon "interessante" Effekte/Probleme.
Da ein ESP ja über WiFi läuft, ist es ggf einfacher mehrere zu verwenden anstatt mit aufwendigeren 1-Wire Netze/Leitungen zu agieren. -
@klassisch said in Wie viele DS18B20 an ESP32?:
Habe seit Monaten eine 8 Sensor-Variante mit ESP8266 und ESPEasy mit 7
Die Webseite der ESP sieht so aus:
Hallo Klassisch, hast zufällig den ESPhome Schnipsel für die Berechnung der Uptime in Tage Stunden Minunten Sekunden zur Hand? ich hab da jetzt herum probiert und es kommt zu Fehlern bei kompilieren...
Danke und Grüsse
-
@marco-3 @marco-3 Ist schon lange her. Die Sensoren laufen schon seit > 1 Jahr im Produktivbetrieb
Ich versuche mal was zusammenzusuchen:
Edit: am Anfang des yaml braucht es die Definitionupdates: 2min updateSlow: 15min #slow for device bound values such as RSSI
Dann
# text_sensor needed for human frindly update sensor # text sensor for update. Part . Part 2 is the update sensor itself at the end of sensors chapter # refer to: https://esphome.io/components/sensor/uptime.html text_sensor: - platform: template name: Uptime id: uptime_human icon: mdi:clock-start ########### End text sensors #############
Dann weiter unten
# uptime sensor. for readable uptime use text sensor in text sensor chapter # refer to: https://esphome.io/components/sensor/uptime.html - platform: uptime name: Uptime Sensor id: uptime_sensor update_interval: ${updates} on_raw_value: then: - text_sensor.template.publish: id: uptime_human state: !lambda |- int seconds = round(id(uptime_sensor).raw_state); int days = seconds / (24 * 3600); seconds = seconds % (24 * 3600); int hours = seconds / 3600; seconds = seconds % 3600; int minutes = seconds / 60; seconds = seconds % 60; return ( (days ? String(days) + "d " : "") + (hours ? String(hours) + "h " : "") + (minutes ? String(minutes) + "m " : "") + (String(seconds) + "s") ).c_str(); # uptime generates the uptime of the ESP, shows it on the web page and transmits it to the server
Und wie man sieht, ich habe es einfach abgeschrieben und die Referenzen in den Quelltext eingefügt.
Ich übersetze das alles von einer ESPHome Installation unter Windows. Die ESPHome Unterstützung auf ioBroker funktioniert bei mir leider nicht, weil ioBroker bei mir unter Win läuft.
Habe dann auch alles auf MQTT umgestellt und das funktioniert.
Yaml ist für mich eine Qual. Fängt schon beim Strukturieren per Einrücken statt mit Klammern an. Ähnlich wie bei Python.
Man hätte auch JSON nehmen können und nichts Neues erfinden. -
@klassisch said in Wie viele DS18B20 an ESP32?:
update_interval: ${updates}
lief nicht gleich:
update_interval: ${updates}
hab ich dann auf
update_interval: 60s
geändert, wenn de magst kannst du das gleich in deinem Code anpassen, damit es bei copy / past gleich funktioniert.
Bei mir ist der ioBroker auf Debian unter einer VM Worstation 16, auf einem Windows 10 System. Die ESPhome Umgebung erzeige ich nur um den ESP zu flashen (auf einem Windows11 Endnutzer PC) , dann fahr ich die VMvon ESP home wieder herunter,..
-
@marco-3 sagte in Wie viele DS18B20 an ESP32?:
update_interval: ${updates}
lief nicht gleich:
Sorry, mein Fehler. Da habe ich nicht richtig geschaut und nicht alles gepostet. Ganz am Anfang des Skripts gibt es:
# wall moisture sensor substitutions: updates: 2min updateSlow: 15min #slow for device bound values such as RSSI devicename: wall-moisture-v5
Dann funktioniert das.
Es gibt dann noch ein weiteres file mit den Credentials, welches für alle meine ESPHome Devices gleich ist und von denen genutzt wird: Das wird dann referenziert
<<: !include includes-MQTT.yaml # in include file is Standard and secrets # #wifi: # ssid: "MineSSID" # password: "secret" # # Enable fallback hotspot (captive portal) in case wifi connection fails # ap: # ssid: "Co2Sensor01 Fallback Hotspot" # password: "irgendwas" # Example configuration entry #web_server: # port: 80 # # Example configuration entry # setup NTP Server to get time from router #time: # platform: sntp # id: sntp_time # servers: "myRouterIP" # timezone: DE # Example configuration entry #mqtt: # broker: my.MQTT.Broker.Id5 # ################# End included content
Da sind dann die Wifi und MQTT Credentials drin. Dann muß ich diese Dinge nicht in das yaml der jeweiligen Sensoren schreiben. Hatte ich auch schon bei den selbstgeschriebenen ESPs so.
Mein ioBroker Rechner läuft auf Win. Und das geht sehr gut und stabil. No Thrills, KISS.
Auf dem ioBroker Rechner gibt es noch eine Python-Installation, damit ich bei Bedarf aus den History JSON Files Daten extrahieren und als CSV oder xlsx speichern kann.Die ESPHome yamls wurden auf einem Win Enduser Gerät übersetzt, aerial-Ur-geflasht und ab dann OTA geflasht.
Auch meine uralten "handgestrickten" ESPs lassen sich OTA flashen. Laufen aber jahrelang stabil. Bis man ihnen den Stecker zieht oder sie kein WLAN finden, z.B. wg. Fritten-Update.
Aber für neue Anwendungen lohnt sich das selbst Schreiben meist nicht. ESPHome, oder ESPEasy können das meiste. Tasmota wahrscheinlich auch - vielleicht auch besser, habe ich aber nicht im Einsatz. -
@bahnuhr said in Wie viele DS18B20 an ESP32?:
@cvidal sagte in Wie viele DS18B20 an ESP32?:
An einem Wemos D1 Mini mit ESPEasy habe ich 12Stk. DS18b20 seit ca. 3Jahren ohne ausfälle am laufen. Temperaturen werden ebenfalls an meiner Heizung ziemlich genau ausgelesen.
Hast du die Grenze von 8 Stück lt. der tasmota Seite erhöht ?
Und wie hast du die Begrenzung des sensor-Protokoll von 11 aufgehoben?
Wird der 12 Sensor trotzdem per mqtt übertragen ?12 sind möglich.
Nur weiß ich leider nicht mehr wie ich es konfiguriert hatte, ist schon etwas länger her:
Tasmota Version 9.0.0.3(tasmota)
Build-Datum & -Uhrzeit 2020.11.08 12:41:24 -
Moin, hier noch mal ein kleines update für 64 Sensoren an einer Signalleitung an einem ESP32 D1 Mini.
Ich habe dass jetzt mit den mit eine Bread Board - 48 Sensoren und den 16 in der Kabelpeitsche Vorhandenen als Testaufbau gemacht.
64 laufen --> MQTT kommt auch im ioBroker an.
Also alles auf kurzer Strecke gedacht... als Akku Überwachung. Ich werde dann die einzelnen Batterie Pole jeweils überwachen.... und quasie nur 32 verbauen.
Man kann auch zu viel messen ..., aber wenn das so abfällt, dann scheue ich die einmalige Installation nicht..ESPhome geflasht über HomeAssi
-
Hallo Zusammen, da ich nicht weiß womit es direkt zusammen hängt, schreib ich es hier mit dazu.
Die 32 Sensoren liefen bis 20.05. sehr gut und parallel.
Doch am 20.05. gab es eine 6°C Sprung bei 4 von den 32 Sensoren. Diesen habe ich mit einem Offset von den 6°C gefixt. Und am 28.05. gegen 14:00Uhr hat sich der 6°C Offset erledigt und die Sensoren laufen alle wieder gleich. Also musst ich den 6°C Offset wieder heraus nehmen. Dank ESPHome und HomeAssi ist das ja fix gemacht, aber erklären kann ich es mir nicht. Eventuell habt ihr auch schon mal so eine Erfahrung gemacht.Reboot etc, hattte ich zwischendurch auch gemacht. Der Offset, hat ja 8 Tage gewirkt. Ob die DS18B20 einen Treffer haben, oder der ESP?
T01+; T03+; T03-; T07+
sind die betroffenen Sensoren
20.05.2024
28.05.2024