Forum: Mikrocontroller und Digitale Elektronik Wassermelder mit Email- Twitter- Alarmmeldung (ESP8266)


von aokorn (Gast)



Lesenswert?

Hallo an Alle,

ich habe mir forgenommen den http://esp8266-server.de/Wassermelder.html 
zu bauen. Das ist genau DAS Projekt, das ich brauche: Das ich um jeder 
Zeit überall informiert werde, ob sich in meinem Keller Wasser 
angesamellt hat. Wieso? Das überschreitet den Clou der Sache (Problems) 
- es sei gesagt, das ich im Keller eine Wasserpumpe habe, aber oft der 
Strom ausgeht und die Bescherung ist da...

Das Hardware des Projects habe ich sofort im Griff. Auser, das ich keine 
Batterien verwende, sonder ein kleines Netzteil, das im Haus-UPS 
integriert ist. Ich muss betonen, daß das mein erstes Projekt mit dem 
ESP8266 ist und ich es mir schon schwer getan habe es bis zum 
Blink-Sketch zu bringen. Aber es ist mir gelungen.

Nun habe ich also Erwartet, das ich so ein Sketch auch hier, bei diesem 
Projekt auffinde. Aber nein. Die Software ist in irgendeinem Download 
BIN für ESP-01 und im mir retzelhafter Anleitung (Kompiliert mit Arduino 
ver. 1.6.12, ESP8266 Bibliothek ver. 2.3.0). Dazu noch ein Sketch: 
Download Projekt -Sketch für Arduino und noch eine Bibliothek Core for 
ESP8266 WiFi chip. Wie soll ich mich da auskennen? Ich habe das Download 
Projekt -Sketch für Arduino heruntergeladen und entpackt und ich habe 
mir den Sketch recht genau angesehen und ich denke, er sollte 
funktionieren. Er tut es aber nicht.

Mein ESP8266 lade ich per einen Driver mit CH340 auf, dem ich einen 
Taster für den Übergang in den Lademodus beigefügt habe.

Kann mir einer in etwas verstendlicher Sprache sagen, wie ich handeln 
soll? Ich wäre sehr dankbar. Auch werde ich dem Autor des Beitrags eine 
Donation zuspielen, um die er Werbt, trotz meiner Meinung nach, etwas 
verwirrender Anleitung. Wir sind ja nicht alle IT Ingenieure...

Gruß an alle

Andrej

von Joachim S. (oyo)


Lesenswert?

aokorn schrieb:
> Nun habe ich also Erwartet, das ich so ein Sketch auch hier, bei diesem
> Projekt auffinde. Aber nein. Die Software ist in irgendeinem Download
> BIN für ESP-01 und im mir retzelhafter Anleitung (Kompiliert mit Arduino
> ver. 1.6.12, ESP8266 Bibliothek ver. 2.3.0). Dazu noch ein Sketch:
> Download Projekt -Sketch für Arduino und noch eine Bibliothek Core for
> ESP8266 WiFi chip. Wie soll ich mich da auskennen? Ich habe das Download
> Projekt -Sketch für Arduino heruntergeladen und entpackt und ich habe
> mir den Sketch recht genau angesehen und ich denke, er sollte
> funktionieren. Er tut es aber nicht.

Die von Dir verlinkte Webseite stellt die Software, die der Wassermelder 
benutzt, in zwei verschiedenen Formaten bereit:

- einmal als Quellcode beziehungsweise "Arduino-Sketch", den Du wie das 
Blink-Beispiel erst noch in der Arduino-IDE kompilieren musst

- und einmal als fertig kompiliertes Firmware-File/-Binary, das Du 
einfach aufspielen kannst. In diesem Fall benötigst Du die Arduino-IDE 
gar nicht, dafür aber irgend eine andere Software, mit der man fertige 
Firmware-Binaries  auf einen ESP8266 übertragen kann. Beispiele für 
solche Software wären das offizielle "esptool.py" 
(https://github.com/espressif/esptool) oder der "NodeMCU-Flasher" 
(https://github.com/nodemcu/nodemcu-flasher)

Letzteres sollte grundsätzlich die einfachere Methode sein: Lade Die die 
BIN-Datei von der Wassermelder-Seite herunter, und suche Dir eine 
beliebige, für Dich verständliche Anleitung, wie man beliebige 
Firmware-Binaries auf den ESP8266 überträgt.

von Stefan F. (Gast)


Lesenswert?

Die Sache hat einen Haken:

Da CH_PD Pin schon beim Einlegen der Batterien auf Low ist, wird das 
Modul weder starten noch in den Power-Down Modus gehen. Es nimmt dann ca 
25mA auf!

Du musst dafür sorgen, dass der CH_PD Pin erst auf Low geht, nachdem die 
Firmware gestartet ist. Dazu würde C1 auf die andere Seite verlagern 
(nach VCC) und auf 10µF vergrößern. Das sollte reichen.

Der Sketch ist womöglich nicht zur aktuellen Arduino IDE kompatibel. Die 
würde aber trotzdem verwenden wollen, weil die ältere noch auf einer 
instabilen Version des Espressif SDK beruht.

Daher hast du die Wahl: Folge Joachims Vorschlag oder programmiere 
selbst.

Du kannst ja erstmal nur eine LED einschalten. Danach probierst du 
einfache Netzwerkprogrammierung mit IP Socket und Netcat (auf dem PC als 
Server) aus.

Das Senden von Emails kannst du ganz ohne Mikrocontroller erstmal 
manuell am PC üben - wieder mit Netcat. Die entsprechenden Komandos des 
SMTP Protokolls findest du bei Wikipedia.

Eventuell macht Dir die Verschlüsselung des MailServers das Basteln 
schwer. Viele Server erlauben nicht mehr unverschlüsselte Verbindungen 
oder Login mit schwach verschlüsselten Passwörtern. Das wird vermutlich 
der schwierigste Teil werden.

von Stefan F. (Gast)


Lesenswert?

> suche Dir eine beliebige, für Dich verständliche Anleitung,
> wie man beliebige Firmware-Binaries auf den ESP8266 überträgt.

Zum Beispiel:
http://stefanfrings.de/esp8266/index.html#fwupdate

von aokorn (Gast)


Lesenswert?

Danke an beide!

Da habe ich wieder was zum grübeln...;)

von Rolf H. (b0d0)


Lesenswert?

Stefan U. schrieb:
> Es nimmt dann ca 25mA auf!

Das hab ich jetzt mal nachgemessen (ESP 01). Bei CH_PD low (nicht 
angeschlossen) sind das bei mir ca. 0,7 mA (reset low), bzw. 0,36 mA 
(reset high). Sobald CH_PD auf hight geht, werden das ca. 280 mA.

von Stefan F. (Gast)


Lesenswert?

Klingt stimmig, falls das die Gesamtstromaufnahme deines Gerätes ist.

von Posch Gerhard (Gast)


Lesenswert?

Hallo, bitte entschuldigen Sie diese Frage!!!



versuche schon einige tage dass ich den wassermelder  zum laufen zu 
bringen.
habe einen iMac und Arduino 1.8.5 installiert.
zuvor muss ich sagen dass ich Anfänger bin, bin wohl gelernter radio 
fernsehtechniker, 60j alt aber wenig Ahnung von digital…

also, esp8266-01       Schaltung aufgebaut.   habe nach dem entdecken 3 
Dateien bekommen. dann alle drei Dateien in einen Ordner kopiert. 
Arduino geöffnet und die Datei wassermelder.ino mit „öffnen"
geladen. da mein Netzwerk aus 192.168.0…. besteht habe ich  die 
192.168.168.30 auf 192.168.0.100 geändert.
dann überprüft, (ohne die setup.h und weiset.h zu verwenden) weil ich 
nicht weis was ich machen soll…
gleich kamen einige Fehlermeldungen.
ann habe ich die setup.h und die weiset.h angeklickt, so war im sketch 
links wasserheller.ino, in der Mitte setup.h und rechts webset.h zu 
sehen.
was muss ich machen? muss ich alle 3 Dateien zusammenführe? wie? bitte 
entschuldigen sie die blöde frage, aber bin neu und hätte sehr gerne den 
wasserheller.



habe auch versucht , weis nicht mehr wie ich das (nur1x) 
zusammengebracht habe, die oroginaldateien auf den ESP8266 rauf zu 
bringen…mit wlannetzänderung ins 192.168.168….netz hab ich dann die 
konfigurationsweite bekommen, hab auch alles eingegeben,
aber er hat keine Verbindung zu meinem Netzwerk gemacht, also auch 
keinen Kontakt zum internetserver, da die ip Adresse ja nicht mit meinem 
heimnett kooperiert.
verständlich.

was mach ich falsch?
bitte um Hilfe!
danke. Gerhard aus LANDECK/TIROL/ÖSTERREICH
DANKE

von Stefan F. (Gast)


Lesenswert?

> den wassermelder

Gut dass es nur einen gibt.

Die Arduino IDE compiliert automatisch alle Quelltext-Dateien, die zum 
Projekt gehören und linkt sie zusammen.

> hätte sehr gerne den wasserheller.

Was ist das schon wieder?

> was mach ich falsch?

Keine Ahnung, deinen wirren Text verstehe ich nicht.

von STK500-Besitzer (Gast)


Lesenswert?

Posch Gerhard schrieb:
> gleich kamen einige Fehlermeldungen.

Die Meldungen wären interessant. Dazu kann man sie per Copy-And-Paste 
hier einfügen.

Posch Gerhard schrieb:
> was muss ich machen? muss ich alle 3 Dateien zusammenführe? wie?

Posch Gerhard schrieb:
> habe nach dem entdecken 3
> Dateien bekommen.

Woher hast du die?
Wie hast du die geöffnet?
Die müssen per "Menu Sketch/Datei hinzufügen" dem Compiler und Linker 
bekannt gemacht werden - nicht einfach nur "Datei/öffnen".

von Stefan F. (Gast)


Lesenswert?

Also ich habe neulich mal mehrere *.h und *.c Dateien außerhalb der IDE 
hinzugefügt und sie wurden automatisch mit compiliert.

von my2ct (Gast)


Lesenswert?

STK500-Besitzer schrieb:
> Die müssen per "Menu Sketch/Datei hinzufügen" dem Compiler und Linker
> bekannt gemacht werden - nicht einfach nur "Datei/öffnen".

Header-Dateien (*.h) werden per
1
#include "xxxx.h"
 eingebunden.

von Dieter (Gast)


Lesenswert?

Ich würde dir zum NodeMCU Modul raten, mit den kompakten ESP8266 Modulen 
hat man nur unnötig mehr Arbeit, nachdem du das ganze mit einem Netzteil 
versorgst ist der Stromverbrauch auch relativ egal.

Mail ist zwar prinzipiell eine gute Idee, wenn die Stromversorgung 
derart instabil ist hätte ich persönlich Bedenken ob der Internetzugang 
stabil durchgehend läuft. Da wäre eine Lösung die z.B. auf Thingspeak 
minütlich Daten postet sinnvoller, du kannst dir dabei automatisch bei 
z.B. ausbleibenden Daten Mails schicken lassen. Hat den Vorteil dass du 
auch die Information unterwegs bekommst sollte der Internetzugang 
ausfallen. Ein 2G Modul wäre hier natürlich auch eine Überlegung wert, 
genauso ein Handy dessen Distanzsensor "missbraucht" wird für z.B. einen 
Schwimmer.


"es sei gesagt, das ich im Keller eine Wasserpumpe habe, aber oft der
Strom ausgeht und die Bescherung ist da..."

Worin liegt da denn genau die Ursache? Wenn das Stromnetz so instabil 
ist würde ich mal mit meinem Stromanbieter ein ernstes Wörtchen 
sprechen. In einer Industrienation darf sowas einfach nicht sein.

von Tüftler (Gast)


Lesenswert?

Hi zusammen,

Hat es schon jemand nachgebaut bekommen?

Ich schaffe den esp zu bespielen und finde dann auch denn accesspoint 
"wassermelder". Einloggen und zugangsdaten meines WLAN speichert er 
auch.
Soweit so gut!
Aber...
Sobald ich ihm dann wie weiter beschrieben mit Strom versorge, sehe ich 
kein neues Gerät in meinem Netzwerk geschweige denn das ich einen alarm 
bekomme!

Wo könnte mein Fehler liegen?

Danke schon mal....

von Stefan F. (Gast)


Lesenswert?

Falls du das Arduino ESP8266 Plugin in Version 2.4.x verwendest: 
Versuche mal Version 2.3.0.

Eventuell besteht ein Missverständnis: Im Ruhezustand ist das Ding 
abgeschaltet. Nur wenn der Sensor-Kontakt geschlossen wird, startet die 
Software und das Modul verbindet sich mit dem Netzwerk.

Ich bin der Meinung, dass der Schaltplan aus dem ersten Beitrag einen 
Fehler enthält. Und zwar ist dort die Enable (CH_PD) Leitung schon von 
Anfang an auf Low Pegel. Bei den Modulen, wo ich das ausprobiert habe, 
beträgt die Stromaufnahme dann etwa 25mA. Man muss den Pin zuerst auf 
High setzen, damit die Firmware startet. Erst danach kann man sie auf 
Low ziehen um den Mikrocontroller in den Power-Down Modus zu versetzen.

Wenn man das weiss, kann man sich darauf einstellen: Nach dem Einlegen 
der Batterien den Sensor einmal testen. Dadurch startet die Firmware und 
kann anschließend korrekt in den Power-Down Modus gehen.

Dann ist da ein weiterer Haken bezüglich der Stromversorgung. Zwei AA 
Batterien sind sehr knapp bemessen, denn der Chip benötigt mindestens 
2,5 Volt. So kannst du die Batterien nur zu etwa 30% ausnutzen. Besser 
wäre ein LiFePo4 Akku oder drei Alkaline Batterien und ein HT7833 
Spannungsregler.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.