NEWS
Einbindung eines Temperatursensors mit ESP 8266
-
Nuja den Flasher kann man benutzen und wird dir zum Einstieg mit einem ESP01 das Leben etwas einfacher machen -> Plug&Play
Der Preis naja du willst jetzt natürlich schnell weiterkommen und keine Lust auf Lieferzeiten zu warten.
Nimmst Du mal was anderes wie einen ESP01 dann wird es etwas fummelig.
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/
Keine Dateien mehr suchen oder zuordnen und Downloaden und immer die passende und neuste Version Draufbraten.
Zum Flasher komme ich ganz gut mit einer Version mit CP2102 Chip zu Recht(das rote Board). Der liefert nicht unbedingt massig Strom aber zum Flashen reicht es und kostet bei Ali immer <2€
https://a.aliexpress.com/_EJyJiQF -
@dieter_p und @Codierknecht ,
vielen Dank.
Da es nicht wirklich eilig ist und ich den Programmer wohl eher seltener brauchen werde, werde ich mir das Ali Gerät mal zulegen. Nach meinem Verständnis bin ich damit wegen der fliegenden Verdrahtung etwas flexibler, sieht halt nicht so schön aus, aber Hauptsache es tut.
Auch das Web Programmiertool macht so offline betrachtet einen guten Eindruck.Ich warte mal ab, ob die zugesagte Anleitung kommt und vielleicht eine Lösung aufzeigt.
Was mich wundert ist, dass sich noch niemand aus dem Forum gemeldet hat, der über das gleiche Problem gestolpert ist. Bei der Anzahl der Angebote bei E… und dem Preis hätte ich vermutet, dass die Module massenhaft eingesetzt werden.
Ich melde mich nochmal mit dem Ergebnis zurück.
Gruß
-
@opöl said in Einbindung eines Temperatursensors mit ESP 8266:
DS18B20
Moin,
wenn ich das recht verstehe, dann willst Du doch einfach nur einen Tempertatursensor an einen ESP klemmen, um die aktuellen Meßwerte via WLAN Deinem Rechner mit zu teilen, richtig?
Da sollte es doch am einfachsten sein, wenn Du per Arduino/Visual-Sudio den Example-API-Server Code auf den ESP packst und vorher im Beispiel Deine Pins anpasst.
Kannst es auch etwas schicker machen, wenn Du statt dessen MQTT nimmst, dann läuft das entspannt und ohne Scripte im Hintergrund. Ebenso mit inklusivem BeispielCode umsetzbar.Gruss von der Ostsee
ChrisPS: Klingt so, als wärst Du beim Programmieren noch nicht so weit. Dein Problem entspricht jedoch wirklich dem allgemeinen BeispielCode, so dass es sich leicht umsetzen lässt. Vermutlich auch einfach mit 08/15 USB angeklemmt.
PPS: Beim nochmal den Thread durch-scrollen fiel mir auf, dass Du den an eine 9V Blockbatterie anklemmst..... öhm, soweit ich mich entsinne, läuft der ESP 8266 mit 3,3V und verkraftet ggf bis zu 5V.
Da wär ich etwas vorsichtig beim sehr optimistischen anklemmen von 9V, wenn nicht etwas vorgeschaltet ist. -
@chris-1 ,
Du hast das Problem möglicherweise nicht richtig verstanden.
Ich habe keinen Arduino und auch nicht die Tools und keine serielle Verbindungsmöglichkeit.
Ich brauche Zugriff auf die AP Weboberfläche um den Sensor für mein WLAN und MQTT für meinen Raspberry und iobroker zu konfigurieren. Da der Webserver aber nicht reagiert (scheint was proprietäres zu sein), werde ich das Teil mit Tasmota flashen. Einen seriellen Adapter brauche ich eh, wenn ich das Ding in Betrieb nehmen möchte, es sei denn, die zugesagte Anleitung gibt was anderes her.Gruß
Edit:
Das Board kann 3,7 - 12V, hatte ich oben geschrieben.
Die 3,3 V werden intern erzeugt.
Das Board ist ja auch in der Lage seinen AP aufzuspannen und einem Client eine IP zuzuweisen, außerdem reagiert es auf Pings. -
@opöl sagte in Einbindung eines Temperatursensors mit ESP 8266:
Was mich wundert ist, dass sich noch niemand aus dem Forum gemeldet hat, der über das gleiche Problem gestolpert ist.
die bessere Altenative ist halt mit Kabel für 1,50 Euro
-
-
@opöl said in Einbindung eines Temperatursensors mit ESP 8266:
@chris-1 ,
Du hast das Problem möglicherweise nicht richtig verstanden.
Möglich.
Ich habe verstanden: Du möchtest mit einem ESP 8266 & DS18B20 Temperatur messenIch habe keinen Arduino und auch nicht die Tools und keine serielle Verbindungsmöglichkeit.
Mit Arduino meinte ich die Arduino IDE, nicht einen Prozessor / SingleBoard Computer, da habe ich mich wohl missverständlich ausgedrückt.
So'n ESP32 (grosser Bruder des 8266) kostet als ESP32-C3 SuperMini 2€ bei Onkel Ali (gleich 5-10 bestellen!). Den Sensor hast Du. Tool (Arduino IDE) gibts für Linux/Mac und auch Windows für Lau zum Download und ein USB Kabel wirst Du auch noch finden.Ich brauche Zugriff auf die AP Weboberfläche um den Sensor für mein WLAN und MQTT für meinen Raspberry und iobroker zu konfigurieren. Da der Webserver aber nicht reagiert (scheint was proprietäres zu sein), werde ich das Teil mit Tasmota flashen. Einen seriellen Adapter brauche ich eh, wenn ich das Ding in Betrieb nehmen möchte, es sei denn, die zugesagte Anleitung gibt was anderes her.
Du denkst/vermutest etwas zu kompliziert und mit zu viel Umwegen. Du brauchst kein Web-Interface für eine einfache MQTT Datenübertragung. Das ist schnickschnack.
Schau, Deine gewünschte Anwendung entspricht den Default-Beispielen für die Programmierung eines ESP 8266 oder 32. Das heisst, Du musst eigentlich keinerlei Ahnung von Programmierung zu haben.
Du installiert Dir (im Anfang würde ich Arduino IDE, nicht Visual Studio empfehlen) mit Standard-Einstellungen.
Lädst den BeispielCode und fashed den per USB-Kabel auf Deinen ESP.Beim BeispielCode kannst Du einfach hardcoded Deinen WLAN Router eintragen, dann brauchst Du kein Web-Interface. Anschliessend fummelst Du noch als 3-Zeiler in die "loop" das Auslesen Deines Temperatursensors und schwups schieb der die Daten Richtung MQTT Server.
Beispielcode MQTT pubsubclient:
MQTT
Da würdest Du nur
a) oben Deine WLAN-Router eingeben
b) ganz unten in "loop" das "Hello World Blabla" durch das Auslesen des DS ersetzenAuslesen DS
DS18B20
Lass Dich nicht durch die Arduino Hardware irritieren, das geht ganz genauso mit nem ESP mit dem gleichen Code. Du gibst ja in der Arduino-IDE per Menü an, auf welcvhen Prozessor/Bpoard das soll.
Scroll runter zu "Sketch".
Du brauchst nur include, OneWire, DallasTemperatur in den "Kopf" vom MQTT Beispiel zu übernehmen.
In der MQTT "loop" ersetzt Du die Textausgabe "Hello World" durch einen Passus mit "sensors.getTempCByIndex(0)"Das wars
Lach..... hab gerade nochmal Tante Google bemüht.... es gibt das ganze auch schon fix und fertig für Dich:
esp8266-ds18b20-mqtt-ard.ino
config.h.sampleDa musst Du wirklich nur Deine WLAN Daten (config.h) eingeben, upload clicken und fertig
Gruss von der Ostsee
Chris -
@chris-1
Sein Problem ist, dass er (noch) keine serielle Verbindung herstellen kann.
Er kommt also schlicht und einfach nicht auf den ESP. Da geht dann weder die Arduino-IDE noch VS-Code oder sonstwas.Sobald das möglich ist, ist tatsächlich der Weg über den Browser der einfachste. Tasmota-Sensors drauf und gut ist.
-
Man lötet einen ESP32-C3 Mini und einen DS18B20 zusammen, steckt in die default vorhandene USB Buchse ein USB-Kabel und das ganze kostet einen unterm Strich 3€.
Sein Spannungswandler mag es noch 2€ teurer machen, man kann auch einen Batteriehalter dran machen, sich ein Gehäuse drucken lassen,.....Ich denke, er versteht nicht, dass er KEIN WEB-INTERFACE braucht, falls er den nicht zwischen Wohnung und Ferienhaus/Freundin/Eltern jedes Wochenende hin und her tragen will.
Das ist Schnickschnack im lokalen Netz.Chris
PS: Für seine Anforderung halte ich Tasmota für viel zu gross.
Code-Beispiel hatte ich oben unter dem "Lach" gepostet. -
@chris-1
Er will ja keine ESP32 und DS18B20 zusätzlich kaufen. Er hat die 8266 Dinger ja bereits und will die in Betrieb nehmen.
Ich hab' so'n Kram hier auch dutzendfach rumfliegen. MiniS2, MiniS3, diverse andere ESP32 und ESP8266 mit den unterschiedlichsten Sensoren. Aber das hilft dem TE ja auch nicht weiter.Tasmota dürfte für die meisten Nicht-Nerds das Einfachste sein. Ob's für den Anwendungsfall ggf. etwas überkandidelt ist, spielt wohl eher keine Rolle.
-
Was benötigt er, um Tasmota auf den ESP zu bekommen...
Und wenn er das hat, was kann er dann auch lightweight drauf spielen...Chris
PS
Du hast gewiss eine Tasmota-IR am laufen.
Hast Du zufällig Orion-TV Codes bzw eine Universal-Fernbedienung? -
@chris-1 sagte in Einbindung eines Temperatursensors mit ESP 8266:
Du hast gewiss eine Tasmota-IR am laufen.
Nope.
Ich habe zwar diverse Controller, IR-Sensoren dürften auch noch in der Grabbelkiste rumfliegen und Tasmota kann ich zur Not noch mit VS-Code selbst passend bauen.
Aber laufen habe ich sowas nicht. Liegt wohl daran, dass ich keinen passenden Anwendungsfall habe -
@opöl said in Einbindung eines Temperatursensors mit ESP 8266:
Was mich wundert ist, dass sich noch niemand aus dem Forum gemeldet hat, der über das gleiche Problem gestolpert ist. Bei der Anzahl der Angebote bei E… und dem Preis hätte ich vermutet, dass die Module massenhaft eingesetzt werden.
Nuja ist zwar nur subjektive Spekulation, aber hier im Forum schätze ich den Einsatz dieser Module als eher gering ein.
Der ESP01 ist schon ein paar Tage alt und aus der alten ESP8266 Serie derjenige mit den geringesten Features. Das in Kombination mit dem recht unflexiblen Steckmodul macht den Einsatz recht speziell und die Meisten haben dann eh einen Softwareweg im Kopf und möchte keinen vorprogrammierten Chinacode in ihr Netzwerk setzen. Dazu ist eine einfache Temperaturmessung ja nichts was noch so wirklich jeden vom Hocker zieht im kreativen Lösungsaustausch und etliches auch im Netz zu finden ist.Für den ESP8266 findet man häufiger den Einsatz eines D1 Mini
https://www.wemos.cc/en/latest/d1/d1_mini.htmlund in Anlehnung an Deinen Aufbau dazu auch solche Steckmodule:
Das alles für wenige Euro auch beim Ali zu bekommen und die haben direkt den USB TTL Konverter Onboard und können so direkt geflasht werden.
Problem: Die dort und überall zu findenden D1 Mini Kopien haben einen recht schlechten Spannungswandler verbaut (5V zu 3,3V). Es kann passieren dass schon mit Versorgung des DS18B20 mit 3,3V dieser überfordert ist und alles nicht stabil zu betreiben ist.
Fazit: Ich lass mitlerweile die Finger von den D1 Mini, da mit dem ESP32 der performantere Nachfolger schon länger am Markt ist und für alle Steck oder Kompatibilitätsdinge nehme ich ich ein ESP32-S2 Mini
https://www.wemos.cc/en/latest/s2/s2_mini.html
Die Kopien beim Ali liegen immer um 2€ haben bisher immer einen 500mA MicrOne Spannungswandler gehabt und waren für mich bisher unproblometaisch. Lötet man je Seite nur eine Pinleiste ein, sind sie kompatibel zu den Steckmodulen vom D1 Mini.
-
da ich noch nicht solange dabei bin, war mir die Historie mit den WLAN Modulen so nicht bekannt. Ich bin anlässlich meines Threads : https://forum.iobroker.net/topic/74899/eigenverbrauchsoptimierung/9?_=1720984538173
auf den genannten Sensor mit dem WLAN Modul gestoßen und irrtümlich davon ausgegangen, das das ähnlich wie bei z.B. Shellys via AP Konfig für das lokale WLAN und OTA Flashen funktioniert. Na dann halt nicht.
Da die Module eh da sind und auch dauerhaft als Temperatursensoren in meinen Kühlgeräten eingesetzt werden sollen, werde ich sie im Falle des Falles mit Tasmota in Betrieb nehmen. Ich halte das übrigens nicht für oversized. Was die Chinasoftware im WLAN angeht, vermeide ich das auch, wo es geht.
Ich verbuche das ganze mal unter „Lesson learned“.
Wenn ich demnächst mal was universelleres suche, frage ich vorher mal nachAber erst einmal schauen, ob sich China morgen mit der Anleitung meldet.
Gruß
-
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