ESP32 & WLAN & BME280 & MySql
|
21.02.2020, 13:34
Beitrag #65
|
|||
|
|||
RE: ESP32 & WLAN & BME280 & MySql
Wenn MQTT dann echt simpel.
Damit sollen "nur" die ERROR-Msg an einen "MQTT-Server" übertragen werden. Anfänger-Denke: ESP1 hat Error(i.M. printet in SerialMonitor). MQTT schickt diese Error-Msg direkt an MQTT-Server. MQTT-Server führt Liste mit "Error-Msg". Diese Liste kann ich mir anschauen. Ich liebe einfache Lösungen. Ausbauen/aufblähen kann man die immer noch (bei Bedarf). Vergiss bitte nicht: ich weiß es gibt "MQTT". Fertig. Beim ESP macht es m.M.n. jetzt Sinn, da ich vermute wenn WLAN streikt kann er trotzdem immer noch eine MQTT-Msg absetzen. LG Dietmar ESP32 Anfänger mit Migrations-Hintergrund (komme von RasPi & Python) ![]() Gruß aus Franken Dietmar |
|||
21.02.2020, 13:34
Beitrag #66
|
|||
|
|||
RE: ESP32 & WLAN & BME280 & MySql
Hallo,
Code: 23:48:46.034 -> wifi_retry46: 0 wenn ich es jetzt richtig lese, hat er aber doch nach dem BEACON_TIMEOUT wieder sauber verbunden? Zu BEACON_TIMEOUT gabe es mal Probleme, die sollten aber schon ab ESP32 Paket 1.0.3 behoben sein. https://gitter.im/espressif/arduino-esp3...5111a43a68 Ich bin heute abend sowieso bei meinem Bekannten, der steckt da tiefer drin, ich werde ihn mal fragen. Gruß aus Berlin Michael |
|||
21.02.2020, 13:42
Beitrag #67
|
|||
|
|||
RE: ESP32 & WLAN & BME280 & MySql
(21.02.2020 13:34)db91595 schrieb: Beim ESP macht es m.M.n. jetzt Sinn, da ich vermute wenn WLAN streikt kann er trotzdem immer noch eine MQTT-Msg absetzen.Da ist halt die Frage, was genau da streikt. Weil grundsätzlich: Wenn (W)LAN nicht geht, dann geht auch MQTT nicht. MQTT bietet aber auf jeden Fall Möglichkeiten für den Fall, dass es Netzausfälle gibt. Weil darauf wurde es optimiert. Als Lektüre für den MQTT-Einstieg finde ich das hier ganz gut: https://www.hivemq.com/mqtt-essentials/ |
|||
21.02.2020, 13:43
(Dieser Beitrag wurde zuletzt bearbeitet: 21.02.2020 13:47 von db91595.)
Beitrag #68
|
|||
|
|||
RE: ESP32 & WLAN & BME280 & MySql
möglich, das er verbunden hat, hat aber (im SerialMonitor) keinen Muks mehr gemacht & keinen Eintrag mehr in MySql.
Fachsprache: er hat sich "aufgehängt" :-) Ich bin gerade dabei deinen Code-Schnipsel in meinen Sketch einzubauen und dann lass ich ihn wieder am PC einen Test-Lauf machen. "Schau'n mer ma" Hab ihn ja heute morgen wieder resettet, jetzt hatte er um 12:26:46 einen Hänger mit etwas anderer Msg Code: 12:26:45.991 -> wifi_retry46: 0 Vlt. sagt das deinem Bekannten "a weng" mehr. LG Dietmar ESP32 Anfänger mit Migrations-Hintergrund (komme von RasPi & Python) ![]() Gruß aus Franken Dietmar |
|||
21.02.2020, 13:48
Beitrag #69
|
|||
|
|||
RE: ESP32 & WLAN & BME280 & MySql
Diese Meldung mit "no more processes" habe ich auch schon gesehen. Ich frage mich gerade, ob die maximale Anzahl der Verbindungen hier vielleicht erreicht ist. Beim ESP32 sind das afaik sechs.
Ich kenne mySQL auf nem µC nicht, aber könnte es vielleicht sein, dass Verbindungen aufgemacht und nicht wieder zugemacht werden und irgendwann ist der Connection-Pool aufgebraucht? |
|||
21.02.2020, 13:50
Beitrag #70
|
|||
|
|||
RE: ESP32 & WLAN & BME280 & MySql
Code: conn.close(); Bezieht sich auf MySql & komisch ist das er stundenlang läuft und nicht nach vorhersehbarer Zeit aussteigt. LG Dietmar ESP32 Anfänger mit Migrations-Hintergrund (komme von RasPi & Python) ![]() Gruß aus Franken Dietmar |
|||
21.02.2020, 14:01
(Dieser Beitrag wurde zuletzt bearbeitet: 21.02.2020 14:04 von db91595.)
Beitrag #71
|
|||
|
|||
RE: ESP32 & WLAN & BME280 & MySql
Hier ist Version 4
Code: /* File: Esp1_TempS1_v4.ino Und was neues: hat beim Start eine Msg gebracht: Code: [W][esp32-hal-psram.c:30] psramInit(): PSRAM init failed! Dein Code arbeitet: wenn kein WLAN ... WiFi.begin(ssid, password); // ESP32-workaround LG Dietmar ESP32 Anfänger mit Migrations-Hintergrund (komme von RasPi & Python) ![]() Gruß aus Franken Dietmar |
|||
21.02.2020, 14:04
Beitrag #72
|
|||
|
|||
RE: ESP32 & WLAN & BME280 & MySql
Vielleicht ist es auch so, dass die mySQL-Konnektivität nicht hinreichend überprüft wird. Im o.g. MQTT-Beispiel gibt es reconnect() dafür. Also wenn deine Lib das nicht unter der Haube schon macht, dann musst du ggf. mal drüber nachdenken, wie man das machen könnte. Und im Falle von fehlender Konnektivität baut man halt die Verbindung neu auf.
Oder man sagt halt: Der ESP pennt, wacht auf, schickt seinen Kram und legt sich dann wieder schlafen. Dann läufst du einerseits vermutlich in das Problem nicht und sparst andererseits auch Strom. Weil schlafen bedeutet beim ESP, dass er immer wieder im Anschluss komplett neu gestartet wird. |
|||
|
|
Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste