Entwicklung: Sensor mit dem ESP8266 WLAN-Funkmodul

Begonnen von locutus, 09 November 2014, 19:30:06

Vorheriges Thema - Nächstes Thema

Prof. Dr. Peter Henning

Die Konfiguration für das von mir verwendete Modul habe ich im http://www.fhemwiki.de/wiki/1W-IF-WIFI#WLAN-Modul ergänzt.

Mit dem ESP8266 stehe ich noch auf Kriegsfuß - habe das derzeit an einem Raspberry Pi. An dessen seriellem Port meldet es sich kurz - aber nicht so, dass irgend ein sinnvoller String erkennbar ist. Hat irgendjemand das Ding an einem RPi zum Laufen bekommen ?

LG

pah


SpenZerX

Zitat von: Prof. Dr. Peter Henning am 15 Februar 2015, 06:15:37

Mit dem ESP8266 stehe ich noch auf Kriegsfuß - habe das derzeit an einem Raspberry Pi. An dessen seriellem Port meldet es sich kurz - aber nicht so, dass irgend ein sinnvoller String erkennbar ist.

Ist vermutlich das unveränderbare Boot Rom. Sendet auf einer sehr ungewöhnlichen Baud rate. Um den Chip richtig zu starten muss das Boot Medium gewählt werde (über richtige Beschaltung von 3 Pins). Gibt da ein Wiki zum ESP im Web.

Meine Projekte laufen ganz gut.
Aktuelle Probleme:
-Generell Cloud update, update ohne 50% des Flash Speichers zu verlieren (dann wirds eng)
-FHEM integration

Den ADC werde ich nächste Woche mal testen. Die Werte schwanken aber ziemlich (beim Auslesen ohne angeschlossene Hardware).
Interessant am ADC wären sicherlich ein CO2 Sensor für Räumsensoren und ein Feuchtigkeitssensor für Rasen Bewässerung.

Hinsichtlich FHEM integration habe ich mehrere Ansätze probiert und noch keine Lösung.

Ich habe versucht FHEMWEB so zu verändern (zu kürzen) das nur die Get und Post Daten extrahiert werden, sowie die Anfragende Adresse.
Und es weiterhin so zu verändern das  Get und Post Daten an eine Zieladresse geschickt werden können.
Ich wollte das geänderte Modul dann auf einem anderen Port laufen lassen. Sozusagen als HTTPDaemon und IODevice für ESP Kommunikation. War mir dann aber  doch zu hoch mit meinen begrenzten Perl Kenntnissen.

Auf ESP Seite war das einfacher und funktioniert wie geplant:

http://192.168.0.63/Switch.2.set, mit oder ohne Hostname.fritz.box , mit Name Switch.1 oder alternativ Umbenannt, mit dem richtigen Post/Get Argument schaltet er SSR Relais 2 an oder aus.




Prof. Dr. Peter Henning

Äh - wie ?

Ich habe zwar schon eine ganze Reihe von Seiten zu dem Thema gelesen, aber alle stimmen darin überein, dass das ESP8266 mit 115200, 57600 oder 9600 Baud kommuniziert.

Und von "boot medium" höre ich zum ersten Mal etwas. Bei mir sind die Pins Vcc, RESET und CH_PD auf 3,3 V gesetzt. Das ESP8266 meldet sich im im Minicom mit 9600 Baud mit "ready" - aber das wars dann. Kein AT-Kommando wird erkannt. Die einzige Möglichkeit, die ich noch nicht gestestet hab, ist ein Hardware-Fehler in diesem Raspberry (das ist mein Experimentier-Raspberry...).

Also: Für einen Link bezgl. des Themas "boot medium" wäre ich dankbar.

LG

pah


Prof. Dr. Peter Henning

Sorry, aber das hat mit dem Problem nicht die Bohne zu tun  ::)

pah

Samsi

Hallo,

hat jemand jetzt eigentlich schon mal die nodemcu Firmware für den ESP probiert?
Ich finde die nämlich auch sehr interessant und wollte die auch mal am WE probieren, da meine beiden ESP jetzt endlich angekommen sind.
Vielleicht gibt es ja schon irgendwelche Erfahrungen

Grüße
FHEM 5.5 / BBB Debian Wheezy

Homematic CFG-LAN

HM-Sec-MDIR / HM-Sec-SD / HM-Sec-WDS / HM-LC-Sw2-FM / HM-Sec-SC / HM-LC-Sw1PBU-FM / HM-SCI-3-FM / HM-Sec-Key / HM-RC-Key3-B / HM-LC-Dim1TPBU-FM /  HM-CC-RT-DN / HM-PBI-4-FM / HM-RC-Key4-2 / HM-ES-PMSw1-Pl / HM-LC-Sw4-WM

locutus

#21
Hallo Samsi,

für das Funkmodul fällt mir zur Zeit keine bessere Alternative ein. Man sehe sich nur die Vielfalt der Sensoren an.
Interessant ist auch der Deep Sleep Modus mit einem Stromverbrauch, der im µA Bereich liegt. Es hat aber den Nachteil, dass kein Interrupt ausgelöst werden kann.

Ich habe hier seit einigen Tagen den DHT22 Temperatur- und Feuchtesensor mit NodeMcu im Testaufbau am Laufen. Der WiFi-Hygrometer funktioniert schon recht stabil.
Lass dich nicht von dem Bild täuschen, es handelt sich hierbei um einen eigenständigen HTTP Server - nix mit FHEM.

Samsi

Hi locutus,

schön, vielleicht kannst Du mir dann etwas licht ins dunkle bringen. Wenn ich die Firmware geflasht habe, wie bekomme ich die LUA Skripte da drauf.

Verstehe ich das richtig, das ich die einfach per Serielle Konsole an den ESP schicke und wenn ich das Skript dann dauerhaft speichern will das ich dann solche Verrenkungen machen muss:

file.open("init.lua","w")
  file.writeline([[print("Hello, do this at the beginning.")]])
  file.close()

Oder gibt es da auch eine einfachere Möglichkeit?

Und kann ich die Skripte auch per WLAN ändern, sobald ich den mit meinem Router verbunden habe?

Grüße
FHEM 5.5 / BBB Debian Wheezy

Homematic CFG-LAN

HM-Sec-MDIR / HM-Sec-SD / HM-Sec-WDS / HM-LC-Sw2-FM / HM-Sec-SC / HM-LC-Sw1PBU-FM / HM-SCI-3-FM / HM-Sec-Key / HM-RC-Key3-B / HM-LC-Dim1TPBU-FM /  HM-CC-RT-DN / HM-PBI-4-FM / HM-RC-Key4-2 / HM-ES-PMSw1-Pl / HM-LC-Sw4-WM

locutus

Ich persönlich bevorzuge LUA Uploader. Sieh dir mal die Videoanleitung an:
https://www.youtube.com/watch?v=ty-sUlYM9M4

So wird das ESP8266 Funkmodul mit dem USB-to-Serial Adapter verbunden:
https://importhack.wordpress.com/2014/11/22/how-to-use-ep8266-esp-01-as-a-sensor-web-client/

Samsi

Hi,

irgendwie bekomme ich den ESP nicht zum laufen bzw. neu geflasht.

Wenn ich ihn Anschließe (natürlich mit Level Converter) blinkt nur die send LED von meinem PL203HX, bei Receive kommt nix.

Ich habe CH_PD auf high, da verbraucht er auch ca. 80ma (anzeige vom Labornetzgerät, nicht unbedingt sehr genau) bei 3.3v ohne geht der Verbrauch runter. Also schient er ja prinzipiell noch OK zu sein.

GPIO0 Habe ich beim Programmieren auf GND (ohne zieht er auch etwas weniger, ca. 50ma)

Habe auch versucht einfach nur den ESP zu starten mit CH_PD high und GPIO0 disconnected aber da bekomme ich auch nichts über die Serielle.

Vielleicht hat jemand noch eine Idee?

Grüße



FHEM 5.5 / BBB Debian Wheezy

Homematic CFG-LAN

HM-Sec-MDIR / HM-Sec-SD / HM-Sec-WDS / HM-LC-Sw2-FM / HM-Sec-SC / HM-LC-Sw1PBU-FM / HM-SCI-3-FM / HM-Sec-Key / HM-RC-Key3-B / HM-LC-Dim1TPBU-FM /  HM-CC-RT-DN / HM-PBI-4-FM / HM-RC-Key4-2 / HM-ES-PMSw1-Pl / HM-LC-Sw4-WM

CaptainHook

Zitat von: Prof. Dr. Peter Henning am 15 Februar 2015, 14:24:02
Sorry, aber das hat mit dem Problem nicht die Bohne zu tun  ::)

pah
Hi,
Versuche mal nach den  AT Befehlen ein Strg+m und Strg+j.  Ein normales Enter funktionierte bei mir auch Anfangs nicht.

Grüße Stephan

Gesendet von meinem Galaxy Tab 4 LTE mit Tapatalk

Lenovo M53 ThinkCentre 10DC | Docker | SolarEdge SE10K + SE5000H + Energy Bank 10KWh | EspEasy | Tasmota | Hue | Alexa | uvm.

locutus

Hallo Samsi,

möglicherweise sind RX und TX vertauscht. GPIO0 wird nur im Flashmodus auf Masse gelegt. In CoolTerm einfach unterschiedliche Baudraten ausprobieren.
Vom Levelshifter halte ich nicht viel. Besser ist ein USB-to-Serial Adapter mit 3.3V Logik.

Der NodeMCU Flasher für Windows erledigt die Firmware Installation mit nur einem Klick.
https://github.com/nodemcu/nodemcu-flasher

Prof. Dr. Peter Henning

#27
@CaptainHook: OK, werde ich morgen ausprobieren, bin heute unterwegs. Wer denkt auch an Windows ... (Edit: Das war es in der Tat ...)

@locutus: Das ist falsch. Levelshifter wie etwa dieser hier http://www.fhemwiki.de/wiki/1-Wire_Pegelwandler sind für den ESP8266 hervorragend geeignet. Übrigens sind entsprechende Schaltungen auch in jedem USB-Client "mit 3,3 V-Logik" enthalten.

LG

pah

locutus

Selbstverständlich funktioniert der Levelshifter. Hier entsteht aber dadurch eine zusätzliche Fehlerquelle (falsche Verkabelung). Deshalb sollten Anfänger lieber direkt mit einem konfigurierbaren USB-Adapter arbeiten.

Samsi

So, wollte nur mal Rückmeldung geben, woran es lag:

Verkabelung und Levelshifter waren in Ordnung. Da ich aber den ESP-03 habe muss auch GPIO 15 auf GND sonst geht da gar nichts.

Da sich die meisten Anleitungen auf andere ESP beziehen, die GPIO 15 nicht nach Außen führen, ist mir das nie aufgefallen.

Grüße
FHEM 5.5 / BBB Debian Wheezy

Homematic CFG-LAN

HM-Sec-MDIR / HM-Sec-SD / HM-Sec-WDS / HM-LC-Sw2-FM / HM-Sec-SC / HM-LC-Sw1PBU-FM / HM-SCI-3-FM / HM-Sec-Key / HM-RC-Key3-B / HM-LC-Dim1TPBU-FM /  HM-CC-RT-DN / HM-PBI-4-FM / HM-RC-Key4-2 / HM-ES-PMSw1-Pl / HM-LC-Sw4-WM