Arduino + ESP8266 Information ans Handy

Hallo alle zusammen :slight_smile:

erstmal zu mir :
ich bin 27 Jahre alt und die seit etwa 10 Jahren Elektroniker. Ich hab schon ein paar kleine Sachen mit dem Arduino gemacht und bin sowohl was die Möglichkeiten angeht, als auch von der ganzen Community die dahinter steckt ziemlich angetan. Auf Grund meines Berufs ist ja die Elektronik recht simpel für mich umzusetzen jedoch hackt es ziemlich bei der Programmierung etc. Deswegen hoff ich mal auf eure Hilfe.

Ich habe schon einen Arduino mit GSM-Modul ausgestattet "gebaut", der mich bei entsprechendem Signal (8V Wechselspannung eines Klingeltrafos) einfach auf dem Handy anruft...funktioniert auch einwandfrei!

Jetzt brauch ich das eigentlich genauso nur statt dem GSM-Modul mit WLAN. Also ich brauch eine Information auf mein Handy, dass das Signal am Arduino anliegt. Ob per Mail oder Whatsapp oder irgendeiner anderen Informationsquelle.
Ich habe mir dazu schonmal den ESP8266 ESP-01 bestellt.

Wäre super wenn ihr mir vielleicht ein wenig helfen könntet oder vielleicht eine andere Lösung hättet, die sich leichter umsetzen lässt.

Falls mehr Infos gebraucht werden dann kommen die natürlich noch :slight_smile:

Vielen Dank

wenn möglich bestell den puren ESP ab und bestelle einen Wemos D1 oder einen NodeMCU ... die haben einen ESP drauf, sind aber zum Anfang wesentlich einfacher zum Handhaben!

wenn möglich bestell den puren ESP ab und bestelle einen Wemos D1 oder einen NodeMCU .

Stimme ich voll zu. Bin Anfänger im Bereich µC. Habe den esp auch gegen einen NodeMCU getauscht
und erste kleine Experimente erfolgreich durchgeführt.War mir mit dem reinen esp nicht möglich da das Wissen noch nicht ausreicht(hoffe das sich das ändert :slight_smile: .

silos:
seit etwa 10 Jahren Elektroniker
Ich habe mir dazu schonmal den ESP8266 ESP-01 bestellt.

Falls mehr Infos gebraucht werden dann kommen die natürlich noch :slight_smile:

Vielen Dank

Gibt es einen bestimmten Grund weshalb du den ESP8266 ESP-01 bestellt hast?

Gruß Fips

Also es gibt keinen Grund warum ich mir den ESP8266 bestellt habe :slight_smile:

Habe mir aber jetzt auch den NodeMCU bestellt.
Gibt es vielleicht schon fertige Skripte oder Beispiele mit denen ich starten könnte. Alles was in den Bereich Website, Apps, Internet geht ist für mich absolutes Neuland :smiley:

silos:
Also es gibt keinen Grund warum ich mir den ESP8266 bestellt habe :slight_smile:

Dann lass den Esp-01 und den Arduino weg.

Gibt es vielleicht schon fertige Skripte oder Beispiele mit denen ich starten könnte. Alles was in den Bereich Website, Apps, Internet geht ist für mich absolutes Neuland :smiley:

Schau dir die Beispiele zum Esp8266 in der IDE an.
Und Pushbullet.

Gruß Fips

so der NodeMCU ist da....und es funktioniert schonmal im Testmodus einwandfrei mit dem Pushover!
Vieeeelen Dank dafür. Echt eine tolle App.

Ich werd jetzt mal die Hardware anpassen damit ich mein 8V Wechselspannungssignal abgreifen kann und das mir eben den Input für den NodeMCU gibt. Fips dann sag ich dir auch Bescheid :slight_smile:

Jetzt nur noch eine Frage:

Ich würde gern per Software lösen, dass ich nicht alle 300ms eine Pushover-Nachricht bekomm...sonst hab ich innerhalb weniger Minuten ja zig auf meinem Handy :D.

void loop() {
buttonState = digitalRead(BUTTON);
if (buttonState == LOW) {
Serial.println("pressed");
po.setMessage("Hallo Welt!");
Serial.println(po.send());
delay(300);
}

also wie muss ich die loop ändern, dass ich die Pushovernachricht nur einmal bekomm auch wenn der Schalter durchgehend geschlossen wird?
Ich hätte hier vielleicht nochmal eine zusätzliche While-Schleife eingebaut die solange einfach in sich läuft bis der Schalter wieder geöffnet wird und dann erst wieder die if-Abfrage kommt...aber wie bau ich diese ein?

Vielen Dank schonmal :slight_smile:

silos:
so der NodeMCU ist da....und es funktioniert schonmal im Testmodus einwandfrei mit dem Pushover!
Vieeeelen Dank dafür. Echt eine tolle App.

Ich hatte zwar von "Pushbullet" gesprochen, dort ist die App kostenlos, aber wenn es läuft ist ja alles gut.

Ich würde gern per Software lösen, dass ich nicht alle 300ms eine Pushover-Nachricht bekomm...sonst hab ich innerhalb weniger Minuten ja zig auf meinem Handy :D.

Dann musst du dir merken das du die Nachricht geschickt hast, und den Merker erst wieder zurücksetzen wenn "buttonState" sich geändert hat.

Gruß Fips

so hier mal der aktuelle Stand

hier sieht man mal die Beschaltung meines NodeMCU....

und hier das Skript

#include <Pushover.h>
#include <ESP8266WiFi.h>
#define BUTTON 4
int buttonState = 0;
int zustand = 0;
const char* ssid = "WLAN blablabla";
const char* password = "12345";
Pushover po = Pushover("abcdefg","hijklm");
WiFiClient espClient;
void setup() {
  Serial.begin(115200);
  pinMode(BUTTON, INPUT_PULLUP);
  setup_wifi();
}
void setup_wifi() {
  delay(10);
  Serial.println();
  Serial.print("Connecting to ");
  Serial.println(ssid);
  WiFi.begin(ssid, password);
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  Serial.println("");
  Serial.println("WiFi connected");
  Serial.println("IP address: ");
  Serial.println(WiFi.localIP());
}
void loop() {

  delay (500);
  buttonState = digitalRead(BUTTON);
  if (buttonState == LOW && zustand  == 0) {
    Serial.println("pressed");
    po.setMessage("Text 123 Hallo blablub!");
    Serial.println(po.send());
    zustand = 1;
    delay(500);
  }
  if (buttonState == HIGH) {
    zustand = 0;
    delay(500);
    }
    }

an sich funktioniert alles genauso wie ich es wollte...vielen Dank auch hier an die bisherige Hilfe :slight_smile:

nur hab ich ein Problem: wenn ich den Klingeltrafo einschalte passiert es ab und zu, dass ich eben keine Meldung bekomm. Also ziemlich schlecht für eine Überwachung der Heizung :D. Es funktioniert nur 100% wenn ich ein Multimeter an den digitalen Pin D2 des NodeMCU häng...oder es reicht auch eigentlich schon wenn ich mit der Pinsette hingehe.
Außerdem mess ich diesen Pin, den ich ja durch den Optokoppler auf Masse ziehe immernoch ca. 0,15V.
Hatt jemand eine Idee wie ich das noch beheben könnte?

Deine Optokopplerschaltung kommt mir komisch vor. Die Basis ist doch überhaupt nicht raus geführt. Das macht doch das Licht.

Nimm einen ca. 4,7 kOhm Widerstand vom D2 nach 3,3V. Dann hast Du im Ruhezustand HIGH und im aktiven Zustand LOW und immer definierte Verhältnisse.

Gruß Tommy

Tommy56:
Deine Optokopplerschaltung kommt mir komisch vor. Die Basis ist doch überhaupt nicht raus geführt. Das macht doch das Licht.
...

natürlich...hab ich auch so angeschlossen nur falsch in CAD gezeichnet... sorry dafür :smiley: . Am Emitter ist GND angeschlossen und nicht an der Basis

und ich hab doch durch den internen Pullup den Pin doch sowieso über einen ca.20kOhm Widerstand auf 3V3 gezogen und ziehe diesen per Optokoppler direkt auf Masse...aber das mag eben manchmal nicht

Dann wirf die delays raus, merke Dir den Zustand und reagiere nur, wenn er von HIHG auf LOW fällt.

Gruß Tommy