Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Off Topic
    4. Microcontroller
    5. Wie viele DS18B20 an ESP32?

    NEWS

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    • Save The Date: ioBroker@Smart Living Forum Solingen, 14.06.

    Wie viele DS18B20 an ESP32?

    This topic has been deleted. Only users with topic management privileges can see it.
    • J
      Josh last edited by Josh

      Hallo zusammen!

      Ich möchte von meiner alten Pimatic Installation sukzessive auf ioBroker umsteigen. Weitgehend habe ich den Umzug schon vollzogen. Lediglich 10 Stück Temperatursensoren DS18B20 laufen noch auf dem alten System (RPi2). Diese nehmen rund um die Heizung Temperaturwerte auf.

      Es gäbe jetzt die Option neben meiner ioBroker-Zentrale noch einen zweiten RPi im ioBroker-Slavebetrieb zu installieren. Der RPi kann 16mA Ausgangsstrom pro GPIO liefern. Die Temperatursensoren brauchen je 1,5mA. Macht zusammen für alle 10 Stück = 15mA. Reicht also aus.

      Als weitere Möglichkeit wäre ein ESP8266 mit Tasmota. Dummerweise liefert der ESP8266 nur 12mA als GPIO-Ausgangsstrom. Reicht also nicht für einen sicheren Betrieb.

      Aber der ESP32 liefert wohl 20mA pro GPIO. Das sollte reichen. Tasmota supportet in der Standard-Config aber nur 8 dieser Sensoren. Das könnte ich IMHO umgehen, wenn ich mir die Firmware selber compiliere und in der Datei xsns_05_ds18x20.ino die Zeile "#define DS18X20_MAX_SENSORS 8" wie folgt anpasse "#define DS18X20_MAX_SENSORS 10".

      Sehe ich das alles richtig? Was wäre eure favorisierte Lösung?

      Bin für Ratschläge/Erfahrungen sehr dankbar.

      Gruß Josh

      J W 2 Replies Last reply Reply Quote 0
      • J
        Josh @Josh last edited by

        Habe mich für einen zusätzlichen RPi3B im Slavebetrieb entschieden. Läuft stabil mit 10 Stück DS18B20.

        1 Reply Last reply Reply Quote 0
        • cvidal
          cvidal Forum Testing last edited by

          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.

          J C bahnuhr 3 Replies Last reply Reply Quote 0
          • J
            Josh @cvidal last edited by

            @cvidal Interessant. Hätte ich nicht gedacht. Aber vielleicht teste ich das auch mal. Würde aber dann einen ESP32 nehmen. Der liegt noch hier herum. Und mit ESPEasy hatte ich vor Tasmota auch schon experimentiert.

            Danke für Deine Antwort.

            TheDuke 1 Reply Last reply Reply Quote 0
            • TheDuke
              TheDuke @Josh last edited by

              hört sich interessant an ..... bin gespannt ob du das stabil hinbekommst . Ich scheitere an 8 Stück bzw. habe ca. alle 3 Monate einen Ausfall der sich mit einem Neustart beheben lässt.

              J 1 Reply Last reply Reply Quote 0
              • J
                Josh @TheDuke last edited by

                @theduke An welcher HArdware hast Du die 8 Stück denn dran und welche Software nutzt Du?

                Wie gesagt, an einem RPi3B als ioBroker-Slave laufen 10 Stück sehr stabil.

                TheDuke 1 Reply Last reply Reply Quote 0
                • TheDuke
                  TheDuke @Josh last edited by

                  an einem ESP8266 mit Tasmota ..... da es ja 3 Monate gut geht habe ich mich nicht um die Fehlersuche gekümmert 😊

                  1 Reply Last reply Reply Quote 0
                  • C
                    cbrocker @cvidal last edited by

                    @cvidal Hey cvidal,
                    dein Post ist zwar schon länger her.
                    Ich würde gerne wissen, was für einen Widerstand du bei 12 x DS18B20 gebraucht hast. Ich freue mich auf eine Nachricht von dir. Vielen Dank. Grüße Christoph

                    J 1 Reply Last reply Reply Quote 0
                    • J
                      Josh @cbrocker last edited by

                      @cbrocker Ich würde einen 4K7 nehmen.

                      1 Reply Last reply Reply Quote 1
                      • bahnuhr
                        bahnuhr Forum Testing Most Active @cvidal last edited by bahnuhr

                        @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 ?
                        e59a33ad-3d1e-4163-b27d-fbb7f6186349-image.png

                        Und wie hast du die Begrenzung des sensor-Protokoll von 11 aufgehoben?
                        Wird der 12 Sensor trotzdem per mqtt übertragen ?

                        cvidal M 2 Replies Last reply Reply Quote 0
                        • cvidal
                          cvidal Forum Testing @bahnuhr last edited by

                          @cbrocker Ich habe einen 4K7 Wiederstand dran.

                          @bahnuhr
                          Ich nutze kein Tasmota, ich habe es mit ESPEasy am laufen.

                          Gruß Christian

                          1 Reply Last reply Reply Quote 0
                          • K
                            klassisch Most Active last edited by klassisch

                            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:
                            2ed2e7af-c0df-47f9-bcd2-85a9fd9e9e0c-grafik.png

                            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.

                            M 1 Reply Last reply Reply Quote 1
                            • W
                              WolfgangFB @Josh last edited by

                              @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.

                              bahnuhr 1 Reply Last reply Reply Quote 0
                              • bahnuhr
                                bahnuhr Forum Testing Most Active @WolfgangFB last edited by

                                @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 ?

                                W 1 Reply Last reply Reply Quote 0
                                • W
                                  WolfgangFB @bahnuhr last edited by

                                  @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.

                                  K 1 Reply Last reply Reply Quote 0
                                  • K
                                    klassisch Most Active @WolfgangFB last edited by

                                    @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.

                                    1 Reply Last reply Reply Quote 0
                                    • M
                                      Marco 3 last edited by Marco 3

                                      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. 20240216_163943.jpg 20240216_163938.jpg 20240215_131135.jpg 20240215_130904.jpg 20240216_164007.jpg

                                      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.Screenshot 2024-02-16 170817.png

                                      D 1 Reply Last reply Reply Quote 1
                                      • D
                                        Dieter_P @Marco 3 last edited by Dieter_P

                                        @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.

                                        1 Reply Last reply Reply Quote 0
                                        • M
                                          Marco 3 @klassisch last edited by

                                          @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:
                                          2ed2e7af-c0df-47f9-bcd2-85a9fd9e9e0c-grafik.png

                                          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

                                          K 1 Reply Last reply Reply Quote 0
                                          • K
                                            klassisch Most Active @Marco 3 last edited by klassisch

                                            @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 Definition

                                              updates: 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.

                                            M 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            1.0k
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            10
                                            26
                                            5648
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo