INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
ESP32 & WLAN & BME280 & MySql
20.02.2020, 22:01
Beitrag #57
RE: ESP32 & WLAN & BME280 & MySql
(20.02.2020 20:40)db91595 schrieb:  Danke für die Anregungen!

Ich habe gefunden: https://sautter.com/blog/ethernet-on-esp...g-lan8720/

[...]

Edit: habe gerade den Link in deinem Beitrag gesehen.
Echt Zufall: ich verweise auf den Gleichen. Habe ich aber selbst mit Google gefunden.

Edit2: meine Hochachtung wie ausführlich du geschrieben hast! RESPEKT!

Ja den Link gab es damals auch schon. Aber freut mich, wenn es dir hilft. Ich weiß auf jeden Fall, wo ich die Sachen später mal nachlesen kann, wenn ich meinen Kram wieder vergessen habe, hehe. Insofern hat das auch Eigennutz Smile Wenn es nicht klappt, wie gesagt, W5500. Liegt so bei 3eur rum aus China. Die Pinbelegung steht ja in meinem langen Post.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
21.02.2020, 09:05
Beitrag #58
RE: ESP32 & WLAN & BME280 & MySql
Hallo,

nur eine etwas verwirrte Frage: Ihr redet immernoch über einen Sensor, der alle paar Minuten Daten an eine Stelle senden soll?
Das machen hier seit 10 Jahren jeweils ein Tiny45, ein Sensor FOST02 und eine Li-Batterie auf 433MHz. Seit wohl 2-3 Jahren ESP8266 per WLAN mit BME280 und teilweise Akku. LAN fand ich hier nie notwendig und Kabel legen ist langweilig. Für einen Sensor reicht ein ATMega328 und ENC28J60, der Speicherverbrauch wegen des TCP-Stacks ist mir egal, wenn es in den Mega328 passt. Habe ich für einen Bekannten so gemacht, weil er ein LANkabel da liegen hatte.
Ein Pollin NetIO lief hier wohl 2-3 Jahre als Bridge für die 433MHz Sensoren 24/7 stabil.
Mich verwirrte da machmal der Aufwand, der da von Anderen drumrum getriben wird. Als Spielwiese ja, ist es ja bei mir auch nur, als Miniseie für meinen Eigenbedarf wird es immer eine minimalistische Lösung, die stabil läuft.
Ein ESP8266 mit Sensoren und Akku läuft auf dem Balkon seit über einem Jahr 100% stabil, ein Alluwechsel alle 3 Wochen stört mich in diesem Fall dort nicht, bin oft genug auf dem Balkon. Eun Neustart alle paar Tage würde dafpür sorgenb, daß das Teil wohl vom Balkon fliegt. Wink
Seit jetzt über 3 Monaten läuft daneben ein ESP32 mit Sensoren und 18650 LiPoFE4 Akku, damit ist Akkuwechsel nur noch alle 2 Monate nötig. Auch der hat sich bis jetzt als 100% stabil erwiesen.

Gruß aus Berlin
Michael
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
21.02.2020, 11:22
Beitrag #59
RE: ESP32 & WLAN & BME280 & MySql
(21.02.2020 09:05)amithlon schrieb:  Hallo,
nur eine etwas verwirrte Frage: Ihr redet immer noch über einen Sensor, der alle paar Minuten Daten an eine Stelle senden soll?
Michael

Hi Michael,

der Kern dieses Thread ist mein ESP32 in meinem WLAN mit BME280 & MySql.
Der ESP32 SOLL in meinem Projekt über WLAN die Daten des BME280 in die MySql-Datenbank eintragen.
Wenn das funktioniert ist mein Problem gelöst.
Es funktioniert jetzt schon zu 99%. Wo der Kern des Problems liegt kann ich i.M. noch nicht sehen. (WiFi.h ?)

Mich interessiert i.M. in erster Linie ob ich das so zum funktionieren bekomme.
Das es dafür "andere/bessere" Aufbauten gibt - ist unbestritten!
- - -
Jetzt an die "Wissenden/Erfahrenen"
Heute Nacht ist er wieder ausgestiegen.
Code:
23:48:46.034 -> wifi_retry46: 0
23:48:48.190 -> Connected to server version 5.7.29-0ubuntu0.18.04.1
23:48:48.190 -> Running SQL-UPDATE:
23:48:48.190 -> UPDATE solar.Steuerung SET tempS1=24.14, stampEsp1='2020-02-20 23:48:46' WHERE ID=1;
23:48:48.355 -> Query executed? Please check!
23:48:48.355 -> SQL-Server: 192.168.101.2 Disconnected.
23:49:46.031 -> wifi_retry46: 0
23:49:57.275 -> [D][WiFiGeneric.cpp:337] _eventCallback(): Event: 5 - STA_DISCONNECTED
23:49:57.308 -> [W][WiFiGeneric.cpp:353] _eventCallback(): Reason: 200 - BEACON_TIMEOUT
23:49:58.237 -> [D][WiFiGeneric.cpp:337] _eventCallback(): Event: 4 - STA_CONNECTED
23:49:58.237 -> [D][WiFiGeneric.cpp:337] _eventCallback(): Event: 7 - STA_GOT_IP
23:49:58.237 -> [D][WiFiGeneric.cpp:381] _eventCallback(): STA IP: 192.168.101.65, MASK: 255.255.255.0, GW: 192.168.101.1

Das ist im Sketch bei
Code:
if (tm.tm_sec==46)
...
    while(WiFi.status() != WL_CONNECTED && wifi_retry < 5)
    {
      wifi_retry++;
      Serial.println("WiFi not connected. Try to reconnect");
      WiFi.disconnect();
      WiFi.mode(WIFI_OFF);
      WiFi.mode(WIFI_STA);
      WiFi.begin(ssid, password);
      delay(100);    
    }
...

Wer kann mir dazu Hilfe leisten?
Stundenlang tickert er munter vor sich hin.
Auf einmal (zu irgend einem Zeitpunkt) steigt er aus.
23:48:46 tickert er,
23:49:46 steigt er aus.

Mein Wissen ist beschränkt.
Ich weiß nur, das LAN/WLAN seeeehr komplex ist.

LG
Dietmar

ESP32 Anfänger mit Migrations-Hintergrund (komme von RasPi & Python) Cool
Gruß aus Franken
Dietmar
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
21.02.2020, 11:32
Beitrag #60
RE: ESP32 & WLAN & BME280 & MySql
(21.02.2020 11:22)db91595 schrieb:  Es funktioniert jetzt schon zu 99%. Wo der Kern des Problems liegt kann ich i.M. noch nicht sehen. (WiFi.h ?)

Was mir das gerade noch einfällt, wo du die Wifi.h nennst: Es gibt auch eine zweite Implementierung mit WifiMulti.h. Ich weiß ehrlich gesagt nicht so genau, in welchen Punkten sich beide unterscheiden. Mit Wifi.h habe ich beim ESP32 auf jeden Fall das Problem, dass sich er sich nur jedes zweite Mal mit dem WLAN verbindet. Zu diesem Bug gibts lange Threads, ich adressiere das inzwischen mit folgendem Hack, dann gehts: https://github.com/biologist79/Tonuino-E....cpp#L2452

(Das ist der noch nicht ganz fertige Code aus meinem aktuellen Tonuino-Projekt.) Von WifiMulti habe ich da lediglich wieder Abstand genommen, weil es von PubSubClient nicht unterstützt wird. Auf jeden Fall besteht dieser genannte Bug bei WifiMulti nicht.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
21.02.2020, 12:09
Beitrag #61
RE: ESP32 & WLAN & BME280 & MySql
(21.02.2020 11:32)biologist schrieb:  ...
Bug gibts lange Threads, ich adressiere das inzwischen mit folgendem Hack, dann gehts: https://github.com/biologist79/Tonuino-E....cpp#L2452
...

Mein Lieber,
das muss ich mir in aller Ruhe rein ziehen!
DANKE!!!

Bei Erkenntnissen und so / mein Sketch anpassen ...
kommt Info hier.

LG
Dietmar

ESP32 Anfänger mit Migrations-Hintergrund (komme von RasPi & Python) Cool
Gruß aus Franken
Dietmar
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
21.02.2020, 12:17
Beitrag #62
RE: ESP32 & WLAN & BME280 & MySql
Gerne. Also geht einfach nur drum, das begin ein zweites Mal zu setzen, wenn man merkt, dass man keinen Connect bekommt. Mehr ist es nicht.

Viel Spaß :-)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
21.02.2020, 12:45
Beitrag #63
RE: ESP32 & WLAN & BME280 & MySql
Code:
/* Cyclic posting via MQTT that ESP is still alive  */
void postHeartbeatViaMqtt(void) {
    if (millis() - lastOnlineTimestamp >= stillOnlineInterval*1000) {
        lastOnlineTimestamp = millis();
        if (publishMqtt((char *) FPSTR(topicState), "Online", false)) {
            loggerNl((char *) FPSTR(stillOnlineMqtt), LOGLEVEL_DEBUG);
        }
    }
}

Das ist eine "elegante" Lösung (besser als PC & SerialMonitor).
Hast du einen Tip(Link) mit MQTT simpel für Anfänger?

LG
Dietmar

ESP32 Anfänger mit Migrations-Hintergrund (komme von RasPi & Python) Cool
Gruß aus Franken
Dietmar
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
21.02.2020, 13:21 (Dieser Beitrag wurde zuletzt bearbeitet: 21.02.2020 13:26 von biologist.)
Beitrag #64
RE: ESP32 & WLAN & BME280 & MySql
Schau dir das zB mal an: https://github.com/knolleary/pubsubclien..._basic.ino
Das musst nur auf WLAN adaptieren, aber ich denke das wird dir nicht schwerfallen. In meinem Code findet man das auch, jedoch hole ich die Wlan-Credentials aus dem Flash-Speicher (NVS).

Über den Callback (https://github.com/knolleary/pubsubclien...c.ino#L25) werden Verbindungen behandelt, die von außen kommen. Diese muss man vorher in reconnect() abonnieren. Brauchst du für deinen Ansatz ggf gar nicht; kommt drauf an, was du vor hast. Wenn du den Callback benutzen solltest, dann achte drauf, dass du die übergebene Payload sofort kopierst (https://github.com/biologist79/Tonuino-E...cpp#L630), da der Pointer ziemlich schnell "verwaist". Meines Erachtens wäre es "nett" gewesen, wenn der Author das auch in seinem Example drin hätte, statt einfach nur zeichenweise den Inhalt anzuzuzeigen. Wennst str(n)dup() verwendest wird Speicher vom Heap allokiert - free() nicht vergessen, wenn es nicht mehr gebraucht wird. :-)

Über den Reconnect (https://github.com/knolleary/pubsubclien...c.ino#L38) werden die Topics abonniert (Subscribe nennt man das) und, je nach Anwendungsfall, auch Publishs abgesetzt. Die Publishs kannst du grundsätzlich überall machen. Um jedoch nicht in irgendwelche Timeouts durch fehlendes WLAN oder sonstige Probleme zu laufen, habe ich mir eine kleine Wrapper-Funktion geschrieben, die auch immer prüft, ob überhaupt WLAN-Konnektivität besteht: https://github.com/biologist79/Tonuino-E...n.cpp#L522

Ansonsten ist mein Code zwar ziemlich umfangreich, aber grundsätzlich findest du auch dort die Reconnect/Callback-Struktur wieder.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Fehler bei Board AI Thinker ESP32-CAM Manny 4 321 30.08.2020 16:37
Letzter Beitrag: Manny
  ESP32 Ethernet shrimps 33 22.036 27.08.2020 15:05
Letzter Beitrag: biologist
  ESP32 Dev Kit 4711engel 12 856 26.08.2020 08:41
Letzter Beitrag: 4711engel
  Esp32 FIFO-Problem miq19 7 530 22.08.2020 14:33
Letzter Beitrag: miq19
  ESP32 CAM Programmierung nicht möglich Manny 3 596 31.07.2020 16:04
Letzter Beitrag: Manny
  ESP32 T-Watch 2020 Lilygo AnFi 8 1.497 31.07.2020 15:35
Letzter Beitrag: amithlon
  Warum stürtzt der ESP32 manchmal ab...ein Gedankenaustausch Pertho 6 876 28.07.2020 17:38
Letzter Beitrag: hotsystems
  ESP32 Watchdog Funktion KlaRa 16 2.004 22.07.2020 09:38
Letzter Beitrag: KlaRa
  ESP32 überträgt nicht alle Datein aus dem SPIFFS Pertho 11 1.347 21.07.2020 21:46
Letzter Beitrag: Bitklopfer
  ESP32 NodeMCU: Status der SD-Karte georg1010 0 551 15.07.2020 12:18
Letzter Beitrag: georg1010

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste