NEWS
Einbindung eines Temperatursensors mit ESP 8266
-
die chinesische KI hat sich heute mit der bahnbrechenden Information gemeldet, dass der DS18B20 selbst nicht über eine drahtlose Kommunikationsfunktion verfügt. 🤪
Man wolle sich aber mit dem Hersteller in Verbindung setzen.
Da ich nicht davon ausgehe, dass eine nochmalige detaillierte Schilderung des Problems an der Sachlage etwas ändert, habe ich inzwischen den Programmer für sage und schreibe 93 ct bei Ali Express bestellt. Sobald der eingetroffen ist, kommt auf das Modul Tasmota drauf und ich werde hier meine Erkenntnisse für die Nachwelt hinterlassen.Bis dahin vielen Dank für Eure Unterstützung.
Gruß
-
@opöl said in Einbindung eines Temperatursensors mit ESP 8266:
die chinesische KI hat sich heute mit der bahnbrechenden Information gemeldet, dass der DS18B20 selbst nicht über eine drahtlose Kommunikationsfunktion verfügt. 🤪
Man wolle sich aber mit dem Hersteller in Verbindung setzen.Ob das jemals aufhört, dass man über sowas ein "Kribbeln im Bauch" verspürt? Wundern mag ich es ja nichtmal mehr nennen. Aus Fernost kommt so ein sinnfreier Kokolores und aus DE kommt gar nichts bzw wird ggf noch unfreundlich angepampt.
Wie erwähnt, wenn Du vor hast schon mal öfters etwas in dieser "Welt" zu spielen und zu basteln, dann ist so ein Programmer recht nützlich zu Hause zu Haben und für 93Cent ist es ja nicht der Rede wert. Wäre nur etwas "traurig" für die kleine Summe jetzt den Willkommensrabatt bzw. eine Email-Adresse beim Ali verbraten zu haben
Was Du dann da nacher draufspielst ist sehr subjektiv und gibt etliche Optionen angefangen vom Spaghetticode über Tasmota und ESPEasy bis hin zu ESPHome etc.
Viel Erfolg!
-
vom Händler des Sensors kam erwartungsgemäß nichts mehr, zum Ausgleich ist aber der von Dir empfohlene Programmer heute eingetroffen.
Also, unter strenger Beachtung der 3,3V Versorgung den Programmer mit dem WLAN Modul verbunden und Rx und Tx kreuzweise verbunden wie es sich gehört.
Dann den Treiber für den Programmer installiert. klappte auch hervorragend, Port COM 3 wird benutzt.
Dann das online Programmiertool gestartet, den COM 3 ausgewählt und mal testweise die Standardauswahl Tasmota (englisch) selektiert. Dann kam die Meldung: „Fehler beim initialisieren“ verbunden mit der Empfehlung, beim Starten den Reset Button zu drücken.
Der sitzt aber auf dem Temperatursensor, den ich aber wegen der Programmierkabelage nicht aufstecken kann.
Das WLAN Modul hat nämlich keinen Reset Button.Was habe ich versucht:
Verschiedene Tasmota Images
Testweise Rx und Tx vertauscht
Aus dem Menu des Flashers heraus das Modul resettet
Flashen mit und ohne vorherigem LöschenUm sicherzugehen, dass das Modul nicht beschädigt wurde, habe ich es wie vorher mit dem Temperaturmodul mittels 5V von dem Programmer in Betrieb genommen.
Der AP spannt wie weiter vorne beschrieben sein eigenes WLAN auf, an dem ich mich ja nicht anmelden kann.
Also nix kaputt gegangen, alles ist wie vorher.Was nun?
Das einzige, was mir einfällt, ist den RST Pin des WLAN Moduls beim Einschalten auf Masse zu legen.
Wobei ich nicht weiß, ob die Verbindung während des Flashens bestehen bleiben kann.Gibt es dazu andere Meinungen, Erfahrungen oder bessere Ideen?
Ich würde mich über Tipps freuen.
Gruß
-
@opöl said in Einbindung eines Temperatursensors mit ESP 8266:
Was nun?
Das einzige, was mir einfällt, ist den RST Pin des WLAN Moduls beim Einschalten auf Masse zu legen.Hi,völlig normal und man muß bei den ESPs (nicht nur beim ESP01) den Chip in den Flashmodus bringen. Dazu gilt es beim Booten den GPIO0 auf GND zu haben. Wichtig ist der Zeitpunkt beim Booten, wenn Du kurz danach wieder die Verbindung GPIO0 und GND löst ist das fürs Flashen kein Problem.
Um einen EPS Chip zu booten, kannst Du entweder kurz den RST Pin auf GND ziehen und dann eben gleichzeitig GPIO0 mit GND verbunden haben oder du trennst einfach kurz die +3,3V/ Spannungsversorgung um das Booten auszulösen.
Der Rest klingt sehr gut und genau nachdem Verhalten was ich erwarten würde. Nur noch den Chip in den Flashmodus bringen.
RX/TX vom Flasher zum Chip kreuzen auch genau richtig.
Bzgl. des Webflashers: Die Reihenfolge: GPIO auf GND legen, dann Neubooten (Chip ist im Flashmodus) und dann auf Connect im Flasher klicken (Erase in dem Fall würde ich auch anhaken um alle Reste zu löschen).
Nach erfolgtem Flash den Chip ohne GPIO zu GND Verbindung neu booten und er ist fertig.Hier ein Beispiel (Abschnitt: "ESP01 in den Flashmodus bringen") wie "praktisch" das mit einem Flasher für den ESP01 funktioniert (dürfte bei Dir einfacher gehn):
https://fremdgesteuert.net/esp-01-esp8266-mit-einem-usb-programmer-flashen/ -
naja, Du hattest mal geschrieben, das das mit dem Programmer alles automatisch geht.
"Zum Flashen kann ich dir nur den Online Flasher empfehlen. Super Easy. Einen Browser verwenden der diese serielle Kommunikation unterstützt wie Chrome. Version/Sprache auswählen, dann verbinden und der Rest läuft alleine: https://tasmota.github.io/install/"Daher habe ich das mit dem Reset beim Booten für erledigt gehalten. Bisher hieß Reset für mich auch, den RST Pin auf Ground zu ziehen, der entscheidende Hinweis war, den GPIO0 auf GND zu legen und erst danach 3,3 V anzulegen. Dann war alles ganz einfach....
Tasmota ist also auf den beiden ESP 8266 drauf, das Einbinden ins WLAN ging wie gewohnt problemlos. MQTT läuft auch und iobroker hat die Datenpunkte angelegt.Aaaber, die Module zeigen weder im Web Interface noch im iobroker eine Temperatur an.
Nach der Anleitung: https://tasmota.github.io/docs/DS18x20/#wiring
sollte GPIO0 auch für den DS18B20 in der Konfig eingetragen werden. Das klappt bisher aber weder mit dem Standard Tasmota Image noch mit dem Sensors Image.
Ich könnte mir vorstellen, dass noch das passende Template fehlt:
Hat da vielleicht jemand eine Idee zu?
Gruß
-
Ich hab auch Widerstände im Konstrukt.
Musste nicht löten, lässt sich tatsächlich auch über
Wagoklemmen regeln.Hier habe ich die Verkabelung her welche ich mit Wagoklemmen umgesetzt habe
https://www.youtube.com/watch?v=jQrcybWapuA -
ich habe mich leider erfolglos an Deinem Setup orientiert.
Ich habe den ESP 8266, der hat ja nur GPIO 0-3 auf Pins geführt. Der GPIO0 sollte es nach meinem Kenntnisstand eigentlich bei mir sein. Mein Modul hat ja auch nur einen DS18B20, der fest verdrahtet ist. Hast Du denn das gleiche Modul?
Und hast Du auch das Tasmota Image „Sensors“ im Einsatz oder ein anderes?Gruß
-
Das normale Tasmota. Da gibt es ja meines Wissens das Template für die Sensoren.
Ich habe auch ein 8266.
Auf jedenfall wird in jedem Video und in jedem Schema mit Widerständen gearbeitet . -
@opöl said in Einbindung eines Temperatursensors mit ESP 8266:
naja, Du hattest mal geschrieben, das das mit dem Programmer alles automatisch geht...
Dann war alles ganz einfach....Naja, Notwendigkeiten auf Hardwarebasis werden üblicherweise nicht durch eine Software substituiert. Aber schön, dass es dann sofort geklappt hat.
Hat da vielleicht jemand eine Idee zu?
Ich vermute nicht, dass es an der Version von Tasmota liegt. Sobald DS18B20 auswählbar ist, sind die notwendigen Codeteile aktiv und sollten funktionieren.
Dass ein Widerstand (PullUp) fehlt, würde ich auch erst einmal nicht von ausgehen, da genau für diesen Zweck das Aufsteckmodul entworfen worden ist. Traut man dem Modul nicht würde ich einmal Nachverfolgen ggf Durchmessen was die Widerstände R1, R2 oder R5 für eine Position in der Schaltung und Werte haben. Müssen wir aber anfangen fertige Module aus China zu debuggen, dann haben wir noch andere Probleme....
Da du nur einen DS18B20 am ESP01 betreibst dürfte der Unterschied eines ESP01 zum ESP01S interessant sein. Der Letztere besitzt interne PullUp-Widerstände. Unter Tasmota kannst Du sie mit
setzen.Ich habe keinen DS18B20 an Tasmota laufen und kann Dir nicht sagen wie informativ Tasmota dbzgl. ist. Erste Anlaufstelle wäre für mich die Konsole und dort würde ich innerhalb der Lesefrequenz eine Meldung erwarten. Gibt es dort etwas bzgl. DS18B20? Hieraus könnte man etwas schließen.
Da das flashen so einfach war. Würde ich ggf zum Test mal ESPeasy flashen:
https://td-er.nl/ESPEasy/Passwort des Acces Points: configesp
Dort unter Devices einen DS18B20 anlegen und dabei im Menü gibt es eine Auswahl zur Adresse des DS18B20.
Darauf möchte ich hinaus. Siehst Du hier eine DS18B20 Adresse, dann wird Dein DS18B20 gefunden und er lebt schon mal grob und es kann weiter gehn.
-
-
Oja, defintiv GPIO2
Der externe Pullup ist ebenso bereits vorhanden (R5 =4,7kOhm)
Siehe Anhang:ESP-01S DS18B20 v1.0 sch.pdf
-
Hallo zusammen,
ich kann Vollzug melden. Mit diesen Einstellungen:
Kommt dann so etwas heraus:
Hier nochmal separat der komplette Template String (Menu: Configure Other):
{"NAME":"DS18B20","GPIO":[1,1,1312,1,1,1,1,1,1,1,1,1,1,1],"FLAG":0,"BASE":18}Und die Ausgabe auf der Konsole:
15:51:53.290 MQT: tele/tasmota_6F4C36/SENSOR = {"Time":"2024-07-22T15:51:53","DS18B20":{"Id":"3C01B556A05B","Temperature":30.2},"TempUnit":"C"}Die 5V für die Versorgung des Moduls habe ich temporär von dem Programmer genommen. Später kommt da eine gescheite Versorgung dran.
Der entscheidende Punkt war der GPIO2 wie in dem Beitrag von ralla66 beschrieben. Leider hatte ich den Beitrag in seinem Link (noch) nicht gefunden. Keine Ahnung, wo ich vorher Richtung GPIO0 abgebogen bin...
Ich hatte zwar alle GPIOs durchprobiert, muss aber jetzt sagen, es ist nicht zielführend, mehrere Pins blind gleichzeitig zu konfigurieren und darauf zu hoffen, dass der richtige schon dabei sein wird. Bei mir hat es halt nicht funktioniert.
Vielen Dank an alle, die hier so geduldig geholfen haben, insbesondere @ralla66 und @Dieter_P , mit deren Unterstützung ich es letztlich hinbekommen habe.
Wie schon weiter vorne angekündigt, werde ich das Ganze mal für die Nachwelt kompakt zusammenfassen, damit der nächste, der sich dieses Modul zulegt es ein wenig leichter hat.
(Und als Feedback für die Leute, die hier in diesem Forum ihr Wissen anderen täglich kostenlos zur Verfügung stellen.)Beste Grüße und einen schönen Abend noch