NEWS
WLAN-Probleme ESP8266
-
So, ich habe dem ESP eine neue Firmware verpasst, die ihn in das private WLAN meines Freifunk-Routers (NETGEAR R6100, siehe unten) leitet.
Die Einstellungen des privaten WLAN - ich vermute, dass ich damit Probleme mit WPA3/PMF ausschließen kann, um das Problem weiter einzugrenzen:
wireless.wan_radio0=wifi-iface wireless.wan_radio0.macaddr='....................' wireless.wan_radio0.network='wan' wireless.wan_radio0.encryption='psk2' wireless.wan_radio0.device='radio0' wireless.wan_radio0.mode='ap' wireless.wan_radio0.key='...................' wireless.wan_radio0.disabled='0' wireless.wan_radio0.ssid='..................'
Bisher läuft es darüber ohne Störungen - mal schauen, wie es sich entwickelt. Da hatte ich den ESP auch schon vorher angemeldet - da hat die Fritzbox aber noch Autokanal bei 2,4 GHz gehabt, und ggfs dem Freifunkrouter den Saft abgedreht ...
Hier mein Bastelprojekt, eine Outdoor-Halterung für einen Indoor-Router mit Freifunk Firmware zu bauen:
https://wiki.ffdo.de/Technik/Router/Halterungen-fuer-outdoor-router
Das Fenster links unten auf dem Bild ist im Erdgeschoss.
Der ESP 8266 ist im 1 Stock ca 2 Meter hinter der Außenwand, an der der Router hängt.
Der Router muss aber schräg nach oben noch durch die Beton-Geschossdecke funken ... -
So, jetzt habe ich meinen esp8266 Code etwas hemdsärmelig verlangsamt...
alle 10 Sekunden wird überhaupt nur in der Loop() etwas getan, aber dann kamen die mqttClient.publish() Aufrufe alle hintereinander.
Habe hinter jedes publish() nun ein delay(10) gesetzt, damit der MQTT-Traffic sich etwas verteilt ...Das scheint erstmal die Situation entschärft zu haben ...
Diese Fehlermeldungen sind seitdem ausgeblieben:
mqtt.0 2023-09-22 18:49:34.670 info Client [esp8266-cf6d7a] connection closed: timeout mqtt.0 2023-09-22 18:49:14.169 warn Client [esp8266-cf6d7a] Message 20 deleted after 11 retries mqtt.0 2023-09-22 18:49:12.168 warn Client [esp8266-cf6d7a] Message 20 deleted after 11 retries mqtt.0 2023-09-22 18:49:10.168 warn Client [esp8266-cf6d7a] Message 20 deleted after 11 retries mqtt.0 2023-09-22 18:48:42.346 info Client [esp8266-cf6d7a] Received pubrec on esp8266-cf6d7a for unknown messageId 20 mqtt.0 2023-09-22 18:48:42.345 info Client [esp8266-cf6d7a] connected with secret 1695401322344_5606 mqtt.0 2023-09-22 18:48:40.326 info Client [esp8266-cf6d7a] connection closed: closed
Nun gibt es aber ein Problem mit der Influxdb...
influxdb.0 2023-09-22 18:58:11.314 warn Error in query "from(bucket: "iobroker") |> range(start: 2022-09-21T16:00:00.000Z, stop: 2023-09-21T15:59:59.999Z) |> filter(fn: (r) => r["_measurement"] == "Raumtemperatur-ArbeitszimmerMartin") |> pivot(rowKey:["_time"], columnKey: ["_field"], valueColumn: "_value") |> group() |> sort(columns: ["_time"], desc: true) |> limit(n: 1)": RequestTimedOutError: Request timed out
-
Hatte noch einen "Logischen Kurzschluss" in meinem Code
Die abonnierten Sollwerte für Raumtemperatur usw werden vom ESP8266 nach dem Programmstart mit einem Default-Wert geschrieben, damit im Standalone-Betrieb bei gestörtem MQTT Broker ein gültiger Sollwert vorliegt. Das geschah nicht nur intern, sondern auch durch Publishing in Richtung MQTT...
Bei manchem Reset gewann der im ioBroker abgelegte über den MQTT-Broker gesendete Wert, manchmal der voreingestellte Wert im ESP.
Eine Handsteuerung der Temperatur am Thermostat ist eh bisher nicht vorgesehen, erst wenn das anders wird, würde eine Rückmeldung des eingestellten Sollwertes über Publishing sinnvoll werden...
-
Hat jetzt zwei Tage ohne Reset durchgehalten. Jetzt ist es erstmalig (soweit ich es bemerkt habe) zu einem Neustart des ESP gekommen.
Der hat sich aber nicht so ausgewirkt, dass der ESP nicht mehr "hochgekommen" ist.
Wahrscheinlich war das Publishing der Soll-Werte in Richtung Broker doch schädlich... -
@martinp sagte in WLAN-Probleme ESP8266:
Dieses Problem habe ich vor ein paar Tagen wohl in den Griff bekommen: Direkt an der Steckerleiste des D1 Mini einen Elektrolytkondensator 1000 µF zwischen 5 V und Gnd - seitdem war Ruhe. Jedenfalls bis heute Nacht.... (Das ist mein Tipp)
Ich betreibe seit Jahren (2016 oder so?) eine Herde von ESP8266. Sowohl mit eigenen Programmen als auch mit ESPEasy und ESPHome.
Der 1000µF Elko an den 5V ist nicht schlecht und den habe ich auch bei allen ohne nachzudenken. Wichtiger sind aber die 3.3V und deshalb haben alle meine Schäfchen auch dort einen 1000µF Elko standardmäßig ohne nachzudenken.
Die laufen in der Regel sehr stabil. Manche etliche Jahre bis ein Bagger die Stromleitung zerstört hat.
Sie mögen aber kein schlechtes WLAN und auch beim Update der Fritte vermissen sie den Router und manche reagieren dann mit Neustart.
Mit den (frühen) ESP32 hatte ich eher schlechtere Erfahrungen WLAN war schwächer.
Als Netzteile verwende ich Qualitätsnetzteil mit allen erforderlichen Zertifikaten aus dem Abverkauf. Vorletzte Stromsparstufe und damit billiger Abverkauf. -
Schwierige Kaffeesatzleserei ...
Habe den Code des ESP-Thermostaten noch einmal angepasst, und schreibe die RSSI-Werte per MQTT in einen Datenpunkt, den ich dann über Influx nach Grafana plotten lasse ...
Inzwischen habe ich auch in der Fritzbox wieder auf WPA2 ohne PMF umgestellt. Die ist aber wohl doch zu weit weg, und mit zu vielen Hindernissen im Weg RSSI schwankt zwischen 80....85
Der Freifunk Router auf Kanal 1 mit einem zweiten privaten WLAN-Netz ließ sich auch nicht besonders gut ansprechen solange er auf Kanal 1 festgepinnt war. Zuviel Verkehr auf Kanal 1 in der direkten Nachbarschaft....
Habe jetzt entgegen der Regeln den Freifunk Router auf Kanal 6 umgestellt und den ESP in das WLAN eingebucht - jetzt ist es erstmal wieder Stabil RSSI 70 ...75 ...
Wenn das auch nicht stabil läuft, werde ich ggfs. auch noch einen weiteren Kondensator ins Auge fassen ...Auch eine Verbesserung der Leiterplatten-Antenne wäre ggfs. noch eine Idee ... um 7 Stufen verbesserten RSSI mit einem alten Stück Koax-Kabel sind ja schon einmal etwas ...
-
Auch mit der aktuellen Änderung hat der ESP8266 gestern abend wieder gezickt. Stecker ziehen hat aber auf Anhieb geholfen.
Bevor ich da noch einen Angst-Kondensator einbaue, habe ich die in günstiger Nähe zum Entwichlungsrechner platzierte Schaltung nun etwas optimaler Richtung Access-Point platziert RSSI ist dadurch von -72 auf -66 angestiegen ...Muss dann eben etwas umplatzieren, wenn ich mal wieder eine geänderte Firmware hochladen möchte ... meine USB-Kabel sind nicht lang genug ...
-
So, ich habe jetzt den Garten-Router etwas auf der Außenwand versetzt. Ein Stück nach oben, und etwas zur Seite, damit die Dachsparren nicht so im Weg sind...
Das hat den RSSI von -75... -65 auf -50 angehoben...
Mit einem so deutlichen Effekt habe ich nicht gerechnet!Vorher/Nachher
-
Hat alles nichts gebracht - wieder zwei Aussetzer für ca 14 Minuten - direkt aufeinanderfolgend ...
-
@dieter_p said in WLAN-Probleme ESP8266:
Irgendwie kommt mir das ähnlich einem D1 Mini vor, der mich auch durch seltsames Verhalten wie Wifi Reconnects nicht zufrieden stimmte. Da es auch erhebliche Qualitätsunterschiede wie zB bei dem Festspannungsregler auf dem D1 Mini gibt, frag ich mich ob die Analyse erfolg haben kann.
Bin mitlerweile auf die ESP32-S2 Mini gewechselt und hier noch keine solche Effekte bisher festgestellt. Da die Pinkompatibel sind würde ein einfacher Tausch zum Test zeigen ob es an "minderwertiger" HW liegt.
Das kann ich zu 100% bestätigen.
Ich hatte 8266 Module in meinen WLED-Controllern und bei der Erfassung meines Gasverbrauchs im Einsatz. Immer wieder Probleme. Egal ob WLED, Tasmota oder selbstgeschriebene Applikation. Nachdem Austausch gegen ESP32 ist jetzt Ruhe. Seit 14 Tagen null Aussetzer bei 6 Stück.
Interessant ist, dass ich einige WLAN-Steckdosen und LED-Treiber mit 8266 habe, die problemlos seit Jahren laufen. Aber das sind ältere ESP8266-Version. Probleme machen bei mir die 12E oder F (müsste ich mal nachschauen).Ich denke auch, dass ein Austausch gegen einen pinkompatiblen ESP32 mal nen Versuch wert ist.
-
Drei ESP32 Module habe ich schon besorgt - mal schauen.
-
@blockmove
Ich habe sehr viele 8266 D1 mini mit Tasmota und WLED laufen und keine WLAN Probleme. Die ESP32 S2 mini habe ich auch, wobei ich da WLED nicht zum Laufen bekomme. Also ich kann das überhaupt nicht bestätigen, dass die 32 besser als die 8266 im WLAN laufen würden.Edit:
bevor denn wieder die Gerüchte über Mesh, AVM und SSIDs mit selbem Namen als mögliche Ursache aufkommen. Bei mit laufen beide Netze mit einer SSID auf ner Fritz im Mesh, ohne Probleme
Ja es gibt bessere HW als ne Fritz, aber für die meisten Leute reicht ne Fritz eben locker aus , wenn sie nur ein Stockwerk versorgen müssen und keine exotischen Konfigurationen benötigen.Edit 2:
Die ESP32 S2 mini laufen doch wunderbar mit WLED, wenn man das bin selber kompiliert. Mit fertigen bins hatte ich es nicht geschafft, egal welches bin mit oder ohne Bootloader. -
@jan1 Ich habe ein ESP01 basiertes Relais Board, was auch regelmäßig die Grätsche macht. Bist Du Dir sicher, dass die Module permanent und ohne Unterbrechungen laufen? Ggfs. ist die Firmware so gebaut, dass man einen Reset aus der Sicht von außen gar nicht so einfach bemerkt...
Ich werde mir noch einmal die Hardware genauer anschauen, und gucken, ob sich da etwas verstellt hat - 12 V 2A Netzteil -> einstellbarer DC/DC Wandler auf 5 V -> interner Spannungsregler des D1 Mini auf 3.3 V.
Vielleicht ist der interne Spannungsregler überfordert, da er auch noch 3 x DS18B20 Temperatursensoren versorgen muss. Das halte ich aber für unwahrscheinlich...
-
@martinp
100% sicher bin ich da nicht, wobei ein 8266 läuft als Ambilight am TV und wenn der Aussetzer hätte, würde ich es wohl merken. Der Rest sind LED Controller oder diverse Schalter, wo man kurze Aussetzer wohl weniger merkt. -
heute gab es wieder eine Boot Schleife.
Kurz nach dem Verbindungsaufbau ins WLAN bricht die Verbindung ab. Habe daraufhin noch einmal die Spannungen gemessen.Der DC/DC Wandler, der 5V liefern sollte, lieferte 5,9 V.
Habe mal auf 5V runtergedreht.
-
Interessanter Artikel zum Thema
https://www.letscontrolit.com/forum/viewtopic.php?t=6603Mit der Lupe den Längsregler angeschaut.... Aufschrift "DE=A1D"
https://www.sunrom.com/p/rt9193-33gb-rt9193-33pb-sot23-5-300ma-ldo
Maximal 300 mA
SOT-23-5 Gehäuse.
Laut Datenblatt maximale Verlustleistung 400 mW
Bei 3,3 Volt Ausgangsspannung und 5,9 Volt Eingangsspannung ergeben 300 mA aber schon (5,9 - 3,3V) * 300 mA = 780 mW
Um den Strom von 300 mA dauerhaft liefern zu können, darf der Spannungsabfall über den Spannungsregler also maximal 1,3 Volt betragen, mithin 4,6 Volt Eingangsspannung...
Habe ja gestern von 5,9 Volt die Eingangsspannung des Reglers mit dem Spindelpoti des DC/DC-Wandlers etwas heruntergedreht.
Trotz allem ist das Design sehr grenzwertig.
Wenn die Zeichnung aus dem anderen Forum so der Realität entspricht, würden da für ca 20 ms fast 50% Überlast-Strom fließen.Da dieser Strom wohl nur während der Startup-Phase fließt, passt das zu den Beobachtungen. Irgendetwas wirft den D1 Mini aus der Bahn, und in der Startup-Phase schaltet der Längsregler angesichts der 430 mA immer wieder ab ... Was dann wieder zum Auslösen der Stromspitze führt, die dann wieder einen Neustart auslöst (Todesschleife sozusagen ...)
Nachtrag: Das Board habe ich von AZ-Delivery. Auf der AZ-Delivery Seite ist auf den Fotos ein anderer Regler zu sehen.
Aufdruck "4A2D"
Datenblatthttps://datasheet.lcsc.com/lcsc/2111081830_Shenzhen-Fuman-Elec-4A2D_C2832127.pdf
Maximaler Ausgangsstrom 500 mA - Sehr ärgerlich, dass da nun ein anderer (billigerer?) Regler verbaut wird - mit den "4A2D" Regler wäre das wohl nicht passiert (wobei aber auch bei dem weiter unten im Datenblatt ebenfalls von 300 mA geredet wird)...
EDIT 2: Habe jetzt noch einmal den Schaltplan angeschaut - im Ausgang des DC/DC Wandlers hängt eine Längsdiode, um Rückspeisungen bei gestecktem USB-Kabel zu verhindern. Messung direkt am D1 Mini Modul ergeben am 5 Volt Pin 4,2 Volt - das sollte von der Verlustleistung her verkraftbar sein ...
-
@martinp
Der Spannungsregler wäre eine Erklärung.
Meine WLED-Controller haben auch AZ-Delivery Boards. -
... und schon ist geklärt, dass es nicht am ESP8266 liegt.
Wie geschrieben, bei mir werkelt(e) ein ESP 8266 als WLED Controller des Ambilight am TV und wenn der auch nur die geringste Ausfallzeit gehabt hätte, dann wäre das Ambi auf default orange gesprungen und das merkt man
Hatte den Thread hier aber als Ansporn genommen meine noch günstigeren ESP32 S2 mini doch noch mit WLED als Controller in Gang zu bekommen und wenn man das mit VLCode selber kompiliert und auch gleich damit flasht, dann läuft das in der Tat noch besser als mit nem 8266, da mehr "RAM" und schnelleres WLAN
-
@jan1 Es liegt womöglich schon am ESP8266 Board, das einen Spannungsregler hat, welcher nicht einmal die Stromspitzen durch Wifi Traffic stabil abfedern kann ...
-
@martinp
Das Board ist nicht der ESP und was da noch so an extra Elektronik drauf ist, kann genau so gut auf einem mit ne ESP32 verbaut sein.
Hier wurde aber behauptet, dass die 8266 eben schlechter wären was die Stabilität angeht und das trifft nicht zu. Wobei man ein ESP32 meist einem ESP8266 vorziehen kann, da die Dinger sonst etwas mehr auf der Brust haben, wobei der Preis von 1,80€ zu 2,30€ ja jetzt nicht gerade ein wirkliches Argument für die günstigen Varianten der Minis sein kann.Da die ESP32 etwas schneller im WLAN sind, könnte das sogar eher hier bei schlecht gewählten Reglern zu mehr Problemen kommen.