NEWS
WLAN-Probleme ESP8266
-
@blockmove So mache ich es auch meistens - Bei dieser Lochrasterplatine hätte ich aber früher die Notbremse ziehen müssen. Die Lötaugen lösen sich schon beim scharfen hingucken von der Leiterplatte...
Meist liegen den ESP-Modulen ja entsprechende Stecker/Buchsenleisten zum einlöten bei.
Buchsenleiste in die Lochrasterplatte und Steckerleiste an den ESP - dann kann man den ESP auch in diese Experimentierboard einstecken...Einen 3-D-Drucker habe ich nicht.
-
@martinp said in WLAN-Probleme ESP8266:
@blockmove So mache ich es auch meistens - Bei dieser Lochrasterplatine hätte ich aber früher die Notbremse ziehen müssen. Die Lötaugen lösen sich schon beim scharfen hingucken von der Leiterplatte...
Meist liegen den ESP-Modulen ja entsprechende Stecker/Buchsenleisten zum einlöten bei.
Buchsenleiste in die Lochrasterplatte und Steckerleiste an den ESP - dann kann man den ESP auch in diese Experimentierboard einstecken...Einen 3-D-Drucker habe ich nicht.
Für die ESP-Module verwende ich immer sowas in der Art
Prototype-Platine
Solche Platinen gibt es in verschiedenen Ausführungen. Es passt nicht jedes ESP- / Arduino-Modul. Da muss man bei der Platinenauswahl etwas aufpassen. Der Rest ist dann auf der normalen Lochraster.
3D-Drucker ist für Gehäuse super. Kann ich nur empfehlen.
Früher scheiterte die Fertigstellung von Basteleien am Gehäuse. Das ist nun deutlich besser -
Solche Platinen ...
Ich liebe diese chinesischen Artikelbeschreibungen. Da wird also "geschweißt"
Ich könnte noch sowas einwerfen.
-
@codierknecht said in WLAN-Probleme ESP8266:
Ich könnte noch sowas einwerfen.
Auch nicht schlecht. Gleich mal auf die Liste gesetzt.
-
@codierknecht Die Leiterplatte finde ich viel zu teuer für eine Hartpapier-Version...
Diese Bauweise, nur mit runden Lötpunkten um jede Bohrung statt der Dreiergruppen hatte bei mir das Problem, dass sich die Lötaugen ablösten...Wahrscheinlich hätte ich beim Preis (99 ct) misstrauisch werden sollen ...
https://www.pollin.de/p/punktrasterplatine-440458
Hier zum Vergleich eine Leiterplatte mit Glasfaser-Epoxydharz Basis...
https://www.pollin.de/p/punktrasterplatine-150x100-mm-442415
Aber auch da sind die Lötaugen nur auf einer Seite aufgebracht, und es besteht die Gefahr der Ablösung, wenn sie zu heiß werden.
Beidseitige Lötaugen mit Durchkontaktierungen durch die Bohrung wie bei der Leiterplatte von @Blockmove sind da am robustesten - Bauteile wieder auslöten ist dann aber sehr mühsam...
Die hier sind nach Augenschein o. K.
https://www.amazon.de/AUKENIEN-Lochrasterplatine-Lochrasterplatte-Doppelseitige-Leiterplatte/dp/B0B7BLQ95V -
So heute mal etwas Zeit gefunden den Gefrierschrank aufzuschrauben und nun bin ich mir sicher. Der dort von mir verbaute D1 Mini ist auch von deinem genannten Lieferanten. Stammt aus einer Lieferung von Januar 2022 und es hängt ein DS18B20 und direkt so ein Aufsteckrelais dran (Stromaufnahme nie nachgemessen):
Auf dem ESP läuft ein 2-Punkt Regler, halt für den Gefrierschrank. Hab mich ewig mit dem Ding rumgeärgert da er sich oft aus dem Wlan verabschiedet hat, dann aber auch nicht mehr den lokalen Regler funktional gehalten hat und ich letzlich nur noch Reboots detektieren konnte, wenn es denn dazu kam.
Mit ein paar Elkos hab ich mitlerweile keine nennenswerte Ausfälle mehr gesehen, aber da es sich nun defintiv auch um den Mist von AZ-Delivery handelt und ich ihn aktuell eh freigelegt hab, komm nun auch ein ESP32-S2 Mini da rein und der in die Tonne.
Macht den Anschein als ob da eine ganze Charge Problembehaftet ist und nur minimalste Anforderung wenn überhaupt erfüllt.Beste Grüße
-
@dieter_p said in WLAN-Probleme ESP8266:
Macht den Anschein als ob da eine ganze Charge Problembehaftet ist und nur minimalste Anforderung wenn überhaupt erfüllt.
Bin mal auf deine Erkenntnisse gespannt.
Ich hab in der Zwischenzeit alle AZ-ESP8266 ersetzt und keinerlei Probleme mehr.
Die anderen AZ-Produkte machen keinerlei Probleme. Sieht wohl wirklich nach einem Chargen-Problem aus. -
@blockmove said in WLAN-Probleme ESP8266:
@dieter_p said in WLAN-Probleme ESP8266:
Macht den Anschein als ob da eine ganze Charge Problembehaftet ist und nur minimalste Anforderung wenn überhaupt erfüllt.
Bin mal auf deine Erkenntnisse gespannt.
Ich hab in der Zwischenzeit alle AZ-ESP8266 ersetzt und keinerlei Probleme mehr.
Die anderen AZ-Produkte machen keinerlei Probleme. Sieht wohl wirklich nach einem Chargen-Problem aus.Nuja, hab es auch versucht möglichst "erträglich" zu formulieren. Zum Einen wie erwähnt, habe ich keine Messung der Stromaufnahme gemacht und zum Anderen ist bekannt, dass die Spannungswandler teils nur noch zur Versorgung des ESP8266 taugen. Ich hab da immerhin den DS18B20 und das Relais dranhängen....da fallen mir schon Worst-Case-Szenarien ein.
Nichtsdestotrotz darf man ja auf diese Gemeinsamkeit durch die Bezugsquelle hinweisen. Durch den Defekt des Gefrierschrankthermostats brauchte ich eine schnelle Lieferung. Das hat funktioniert , aber Hoffnungen auf bessere Qualität als beim Chinashop, bin ich halt skeptisch und bevor man da Stunden ungewollt vertüdelt.....
wie gesagt, hat bisher der ESP32-S2 Mini für 2€ inkl. Versand alle meine Anforderungen erfüllt.... also zur BlackWeek nochmal etwas das heimische Lager füllen und gut is -
Ich habe mir einen Streifen "Vogelfutter" bestellt - 10 LDO Spannungsregler mit 500 mA (Kennung "LB2K")
Werde mal berichte, was dabei herauskommt, wenn ich meine Lötfähigkeiten bemüht habe ...
EDIT:
Dies hier ist der Amazon-Artikelhttps://www.amazon.de/dp/B09PYP4KL2
Laut Artikel - Beschreibung "Reland Sun 10 Stück ME6211C33M5G SOT ME6211C33 Low Dropout Regulator SOT23-5 "
Das wäre dann dieses Datenblatt
Es sind aber keine ME6211 ....
Sondern "XC6219B" 3.3V mit auch nur 300 mA Maximalstrom ....
https://www.s-manuals.com/pdf/datasheet/x/c/xc6211%2C_xc6219_series_torex.pdf
Die Lötarbeit kann ich mir wohl sparen ....
überall wird man nur noch übers Ohr gehauen
Stromkurve aus dem Datenblatt ME6211C33M5G
Stromkurve aus dem Datenblatt XC6211 (Leider ist die für den 3.3 V Regler nicht vorhanden, daher für den 3.0 V Regler...)
-
Jetzt ist mir der Geduldsfaden gerissen, und ich wollte "mal eben" die Firmware von ESP8266 nach ESP32 portieren, ist leider nicht so einfach ...
der Ersatz für
#include <ESP8266WiFi.h">
ist wohl nicht so einfach zu finden, oder es gibt gar keine "kompatible" Library und ich muss neuen Code schreiben ...
-
@martinp sagte in WLAN-Probleme ESP8266:
#include <ESP8266WiFi.h">
Und die WiFi.h funktioniert bei dir nicht?
EDIT: habe gerade einen ESP8266 Sketch genommen, die Library 1:1 ausgetauscht, der Sketch konnte problemlos kompiliert werden.
-
@marc-berg da fehlen ein paar Callbacks. Habe heute den Rechner schon runtergefahren. Muss morgen noch einmal schauen
-
Das sind die Fehlermeldungen, wenn ich das Sketch compilieren will:
In file included from /home/martin/Arduino/MQTT/MQTT_DS18B20/MQTT_DS18B20.ino:2: /home/martin/Arduino/MQTT/MQTT_DS18B20/GLOBAL_VARS_MQTT_DS18B20.h:104:1: error: 'WiFiEventHandler' does not name a type; did you mean 'WiFiEventFuncCb'? WiFiEventHandler wifiConnectHandler; ^~~~~~~~~~~~~~~~ WiFiEventFuncCb /home/martin/Arduino/MQTT/MQTT_DS18B20/GLOBAL_VARS_MQTT_DS18B20.h:105:1: error: 'WiFiEventHandler' does not name a type; did you mean 'WiFiEventFuncCb'? WiFiEventHandler wifiDisconnectHandler; ^~~~~~~~~~~~~~~~ WiFiEventFuncCb In file included from /home/martin/Arduino/MQTT/MQTT_DS18B20/MQTT_DS18B20.ino:3: /home/martin/Arduino/MQTT/MQTT_DS18B20/unspecialized_mqtt_doings.h:14:26: error: 'WiFiEventStationModeGotIP' does not name a type void onWifiConnect(const WiFiEventStationModeGotIP& event) { ^~~~~~~~~~~~~~~~~~~~~~~~~ /home/martin/Arduino/MQTT/MQTT_DS18B20/unspecialized_mqtt_doings.h:21:29: error: 'WiFiEventStationModeDisconnected' does not name a type; did you mean 'esp_netif_action_disconnected'? void onWifiDisconnect(const WiFiEventStationModeDisconnected& event) { ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ esp_netif_action_disconnected /home/martin/Arduino/MQTT/MQTT_DS18B20/MQTT_DS18B20.ino: In function 'void setup()': /home/martin/Arduino/MQTT/MQTT_DS18B20/MQTT_DS18B20.ino:105:3: error: 'analogWriteFreq' was not declared in this scope analogWriteFreq(8000); ^~~~~~~~~~~~~~~ /home/martin/Arduino/MQTT/MQTT_DS18B20/MQTT_DS18B20.ino:105:3: note: suggested alternative: 'analogWrite' analogWriteFreq(8000); ^~~~~~~~~~~~~~~ analogWrite /home/martin/Arduino/MQTT/MQTT_DS18B20/MQTT_DS18B20.ino:109:3: error: 'wifiConnectHandler' was not declared in this scope wifiConnectHandler = WiFi.onStationModeGotIP(onWifiConnect); ^~~~~~~~~~~~~~~~~~ /home/martin/Arduino/MQTT/MQTT_DS18B20/MQTT_DS18B20.ino:109:3: note: suggested alternative: 'AcConnectHandler' wifiConnectHandler = WiFi.onStationModeGotIP(onWifiConnect); ^~~~~~~~~~~~~~~~~~ AcConnectHandler /home/martin/Arduino/MQTT/MQTT_DS18B20/MQTT_DS18B20.ino:109:29: error: 'class WiFiClass' has no member named 'onStationModeGotIP' wifiConnectHandler = WiFi.onStationModeGotIP(onWifiConnect); ^~~~~~~~~~~~~~~~~~ /home/martin/Arduino/MQTT/MQTT_DS18B20/MQTT_DS18B20.ino:110:3: error: 'wifiDisconnectHandler' was not declared in this scope wifiDisconnectHandler = WiFi.onStationModeDisconnected(onWifiDisconnect); ^~~~~~~~~~~~~~~~~~~~~ /home/martin/Arduino/MQTT/MQTT_DS18B20/MQTT_DS18B20.ino:110:3: note: suggested alternative: 'wifiReconnectTimer' wifiDisconnectHandler = WiFi.onStationModeDisconnected(onWifiDisconnect); ^~~~~~~~~~~~~~~~~~~~~ wifiReconnectTimer /home/martin/Arduino/MQTT/MQTT_DS18B20/MQTT_DS18B20.ino:110:32: error: 'class WiFiClass' has no member named 'onStationModeDisconnected' wifiDisconnectHandler = WiFi.onStationModeDisconnected(onWifiDisconnect); ^~~~~~~~~~~~~~~~~~~~~~~~~ exit status 1 Compilation error: 'WiFiEventHandler' does not name a type; did you mean 'WiFiEventFuncCb'?
-
So ein simpler Sketch lässt sich bei mir compilieren:
#include <WiFi.h> void WiFiStationConnected(WiFiEvent_t event, WiFiEventInfo_t info){ Serial.println("Station connected"); Serial.println("\n------------"); } void WiFiStationDisconnected(WiFiEvent_t event, WiFiEventInfo_t info){ Serial.println("Station disconnected"); Serial.println("\n------------"); } void setup() { Serial.begin(115200); WiFi.softAP("MyAP"); WiFi.onEvent(WiFiStationConnected, ARDUINO_EVENT_WIFI_STA_CONNECTED); WiFi.onEvent(WiFiStationDisconnected, ARDUINO_EVENT_WIFI_STA_DISCONNECTED); } void loop() {}
Aber! Aus bisher z.B.
SYSTEM_EVENT_STA_CONNECTED
ist jetzt
ARDUINO_EVENT_WIFI_STA_DISCONNECTED
geworden. Das gilt für die anderen Bezeichner ähnlich.
-
@marc-berg Es scheint eine eigene Klasse "WiFiEventHandler" für den ESP8266 zu geben, die ich für den ESP32 nicht gefunden habe.
Bin schon dabei, das Zeug auszubauen, bzw. je nach Board in #ifdef zu packen...
... WiFiEventHandler wifiConnectHandler; WiFiEventHandler wifiDisconnectHandler; ... void onWifiConnect(const WiFiEventStationModeGotIP& event) { Serial.print("Connected to Wi-Fi - "); Serial.print(" Signal strength:"); Serial.println(WiFi.RSSI()); connectToMqtt(); } .... wifiConnectHandler = onWifiConnectWiFi.onStationModeGotIP(onWifiConnect); wifiDisconnectHandler = WiFi.onStationModeDisconnected(onWifiDisconnect); ....
Inzwischen habe ich die Event Handler erstmal so weit in #ifdef isoliert, dass von der Seite aus beim Compilieren keine Fehler mehr auftreten.
Nur treten jetzt Probleme mit analogWriteFreq auf...
/home/martin/Arduino/MQTT/MQTT_DS18B20/MQTT_DS18B20.ino:105:3: error: 'analogWriteFreq' was not declared in this scope analogWriteFreq(8000); ^~~~~~~~~~~~~~~
-
Schreckliche Compiler-Fehlermeldungen ....
In file included from /home/martin/.arduino15/packages/esp32/tools/xtensa-esp32-elf-gcc/esp-2021r2-patch5-8.4.0/xtensa-esp32-elf/include/c++/8.4.0/ext/string_conversions.h:43, from /home/martin/.arduino15/packages/esp32/tools/xtensa-esp32-elf-gcc/esp-2021r2-patch5-8.4.0/xtensa-esp32-elf/include/c++/8.4.0/bits/basic_string.h:6400, from /home/martin/.arduino15/packages/esp32/tools/xtensa-esp32-elf-gcc/esp-2021r2-patch5-8.4.0/xtensa-esp32-elf/include/c++/8.4.0/string:52, from /home/martin/.arduino15/packages/esp32/tools/xtensa-esp32-elf-gcc/esp-2021r2-patch5-8.4.0/xtensa-esp32-elf/include/c++/8.4.0/stdexcept:39, from /home/martin/.arduino15/packages/esp32/tools/xtensa-esp32-elf-gcc/esp-2021r2-patch5-8.4.0/xtensa-esp32-elf/include/c++/8.4.0/array:39, from /home/martin/.arduino15/packages/esp32/tools/xtensa-esp32-elf-gcc/esp-2021r2-patch5-8.4.0/xtensa-esp32-elf/include/c++/8.4.0/tuple:39, from /home/martin/.arduino15/packages/esp32/tools/xtensa-esp32-elf-gcc/esp-2021r2-patch5-8.4.0/xtensa-esp32-elf/include/c++/8.4.0/functional:54, from /home/martin/.arduino15/packages/esp32/hardware/esp32/2.0.14/cores/esp32/HardwareSerial.h:49, from /home/martin/.arduino15/packages/esp32/hardware/esp32/2.0.14/cores/esp32/Arduino.h:184, from /home/martin/Arduino/libraries/LibPrintf/src/LibPrintf.cpp:4: /home/martin/.arduino15/packages/esp32/tools/xtensa-esp32-elf-gcc/esp-2021r2-patch5-8.4.0/xtensa-esp32-elf/include/c++/8.4.0/cstdio:127:11: error: '::printf' has not been declared using ::printf;
Und so geht es endlos mit anderen Geschmacksrichtungen von printf weiter ...
-
@martinp sagte in WLAN-Probleme ESP8266:
Und so geht es endlos mit anderen Geschmacksrichtungen von printf weiter ...
Naja, bei meinen Schmalspur-Sketches hatte ich zum Glück kaum Probleme.
-
@marc-berg Ich fange jetzt auch erstmal mit "Schmalspur-Sketches" an.
Ist wirklich kein Zuckerschlecken der ESP32....Nachdem es einige Male funktioniert hat, dieses Sketch zu bauen, funktioniert es jetzt nicht mehr, auch nachdem ich die Quellcode-Zeilen wieder ausgebaut habe, die nicht funktioniert haben...
Da kann man sich wohl aussuchen, welchen Tod man sterben will. Schlechter Spannungsregler beim ESP8266 oder schlechte SDK beim ESP32 ...
Muss da wohl tiefergehend forschen ...
home/martin/.arduino15/packages/esp32/hardware/esp32/2.0.14/cores/esp32/Arduino.h:144:6: error: conflicting declaration of C function 'long int random(long int, long int)' long random(long, long); ^~~~~~ In file included from /home/martin/.arduino15/packages/esp32/tools/xtensa-esp32-elf-gcc/esp-2021r2-patch5-8.4.0/xtensa-esp32-elf/include/c++/8.4.0/cstdlib:75, from /home/martin/.arduino15/packages/esp32/tools/xtensa-esp32-elf-gcc/esp-2021r2-patch5-8.4.0/xtensa-esp32-elf/include/c++/8.4.0/stdlib.h:36, from /home/martin/.arduino15/packages/esp32/hardware/esp32/2.0.14/tools/sdk/esp32/include/newlib/platform_include/assert.h:21, from /home/martin/.arduino15/packages/esp32/tools/xtensa-esp32-elf-gcc/esp-2021r2-patch5-8.4.0/xtensa-esp32-elf/sys-include/sys/reent.h:503, from /home/martin/.arduino15/packages/esp32/hardware/esp32/2.0.14/tools/sdk/esp32/include/newlib/platform_include/sys/reent.h:17, from /home/martin/.arduino15/packages/esp32/tools/xtensa-esp32-elf-gcc/esp-2021r2-patch5-8.4.0/xtensa-esp32-elf/sys-include/stdio.h:60, from /home/martin/.arduino15/packages/esp32/hardware/esp32/2.0.14/cores/esp32/Arduino.h:27, from /tmp/arduino/sketches/674EA753D7ECD6772FBBF3D7FE23D189/sketch/My_Blink.ino.cpp:1: /home/martin/.arduino15/packages/esp32/tools/xtensa-esp32-elf-gcc/esp-2021r2-patch5-8.4.0/xtensa-esp32-elf/sys-include/stdlib.h:270:6: note: previous declaration 'long int random()' long random (void);
-
@martinp sagte in WLAN-Probleme ESP8266:
Muss da wohl tiefergehend forschen ...
Ich könnte mir vorstellen, dass sich beim längeren Betrieb der Arduino Gui eine Reihe von teils veralteten Libraries ansammeln, mit den man sich Inkompatibilitäten einfängt.
-
@marc-berg Ich habe jetzt alle ESP32 Boards einmal deinstalliert und wieder installiert.
Jetzt lässt sich das Test-Sketch wieder bauen ...Bei der ersten Runde habe ich nur die Espressiv Boards installiert, nun auch Arduino ESP32 dazu...