Wlan Konfig wird nicht gespeichert

Ich wollte das IR Package jetzt ausprobieren und musste natürlich alles erstmal updaten.
Das hab ich seit längerem nicht gemacht und deswegen den (umbenannten )Zweig neu ge-git cloned.

Hatte noch eine uralte Version am laufen, da ich eigentlich nichts von den neuen Features wirklich benötige.
Anyway.
Hab das jetzt alles neu kompiliert für den Lolin32 und hochgeladen.

Jetzt wird immer der interne „Espuino“-AP gestartet.
Wenn ich mich dann mit dem Wlan verbinde, wird die Wlan-Access Seite gestartet.
Leider speichert er meine Daten da aber nicht mehr. Nach dem reboot, das selbe Spiel von vorne.
Laptop oder Tablet hab ich probiert. Macht leider auch keinen Unterschied.

Beim debuggen (mach ich über die Arduino IDE, weil ich das mit dem kack PlatformIO nicht hinbekomme)
liest er mir die Daten korrekt aus, also sind Schreibfehler ausgeschlossen.
Es wird im Log vom Router auch kein fehlerhafter Anmeldeversuch geloggt.

Kann es sein, das noch alte Einträge im NVS das blockieren?

Wakeup was not caused by deep sleep: 0
Versuche SD-Karte wird im SPI-Modus zu mounten…
SD card type: SDHC
Initiale LED-Helligkeit wurde aus NVS geladen: 12
LED-Helligkeit für Nachtmodus wurde aus NVS geladen: 2
FTP-User wurde aus NVS geladen: esp32
FTP-Passwort wurde aus NVS geladen: esp32
Maximale Inaktivitätszeit wurde aus NVS geladen: 60
Initiale Lautstärke wurde aus NVS geladen: 20
Maximale Lautstärke für Lautsprecher wurde ins NVS geschrieben.
MQTT-Flag (deaktiviert) wurde aus NVS geladen: 0
MQTT-Server wurde aus NVS geladen: 10.30.10.77
MQTT-User wurde aus NVS geladen: mqtt-user
MQTT-Passwort wurde aus NVS geladen: mqtt-password
MQTT-Port wurde aus NVS geladen: 1883
Hostname aus NVS geladen: ESPuino32
…Access-Point geöffnet
IP-Adresse: 192.168.4.1
HTTP-Server gestartet.
Freier Heap-Speicher nach Setup-Routine: 111056
PSRAM: 0 bytes
Neue Lautstärke empfangen via Queue: 20

Kann sein, das die IP sogar die alte war, MQTT hatte ich allerdings nie mitkompiliert.

Äusserst seltsam…

Jetzt bin ich seit einiger Zeit in der Werkstatt und spiel mit dem Infrarot Zeug rum, was nicht so richtig klappen will.
Nach dem vermutlich 15ten Neustart seh ich jetzt im SerialMonitor, das er sauber mit dem Wlan verbunden hat. Davor immer der interne AP.

Muss man wohl nicht verstehen.

Das Wlan hatte dabei kein Problem und ist stabil.
Die Damen streamen oben Netflix oder was auch immer, ich höre Webradio mit dem RaspiPiZeroW-PiCorePlayer.

Naja… danke fürs zuhören :smiley:

Hallo @barni,

also du hast dir das nicht komplett eingebildet :joy:
Tatsächlich habe ich auch schon festgestellt, dass es insbesondere nach dem Flashen Probleme gibt. Und zwar Probleme dann, wenn die Spannungsversorgung nicht irgendwann mal unterbrochen war (was im Akkubetrieb halt der Fall ist). Auch beim ESPuino meines Sohnemanns habe ich immer mal Probleme, dass das Einbuchen ins WLAN nicht klappt. Wobei ich den Eindruck habe, dass das mit Zunahme eines Access-Points (Mesh-Wlan) mehr geworden ist.

Wenn ich wüsste, wie man sowas abstellen kann, hätte ich es schon gemacht. Der esp32 hat zB auch einen Bug, dass der WLAN-Connect nur jedes zweite Mal klappt. Das kann man, wenn man das feststellt, damit umschiffen, dass man die WLAN-Konfiguration ein zweites Mal setzt.

Also ich denke an der Stelle ist entweder der esp32 buggy oder die Software von Espressif. Ich bin mal gespannt, ob das mit dem WROVER-E besser ist. Das ist die aktuelle Chip-Revision.

Initial ging das damals auch problemlos.
Zwischenzeitlich hab ich auch auf eine aktuellere Fritzbox umgerüstet und 2.4 und 5GHz aktiv. „Mesh“ heisst das dann ja auch, ohne eine zusätzlichen Repeater aktiv zu haben. Bilde mir ein, das damit alles etwas komischer geworden ist.

Ich hab echt viel WLAN Kram im Haus. Raspis, Laptops, händisch, tablets, Nas, pi hole, PCs, ESPs, Fire TV, diverse Musik Streamer, mähroboter, Steckdosen, etc hab den Überblick verloren. Wenn was lief, läuft es problemlos weiter, wenn man was neues hinzufügt, ist es gefühlt stressiger geworden bis es mal läuft.

Ich habe jetzt auch 2 ESPs die nicht ins WLAN kommen… Zig Mal neu gestartet, es kommt nur der AP - laut Konsole nimmt er meine Config an

Hat noch jemand eine Idee?

Ich hatte ein ähnliches Problem. Bei mir war es ein zu langes Passwort oder ein Sonderzeichen.
Kannst ja mal versuchen mit dem Gäste wlan zu verbinden oder einen Hotspot mit dem Handy auf machen.

Okay, diesen Test habe ich gemacht, der ESP verbindet sich mit meinem Test-Wlan vom Smartphone…

Komisch ist auf jeden Fall, das ja 2 ESP bereits in meinem Netz laufen.

Änder ich nun die Daten in meiner Fritz.box auf exakt die Daten des Test-WLAN klappt es nicht

Hast du die aktuellste Software-Version drauf? Ich hatte ja gestern ESP32-Arduino auf 1.0.6 freigegeben. Weil ich hatte das auch schon, dass die Verbindung nicht geklappt hat und plötzlich ging es wieder. Ich hab so ein bisschen den Eindruck, dass sich der ESP32 mit nem anderen AP aus dem Mesh verbinden wollte. Weil die Fritzbox stand auf dem gleichen Schreibtisch.

Ich mach morgen mal ein Update… Komm im Moment nicht hinterher. Und der dritte sollte jetzt mein ESPtest werden :wink:

So, Update ist gemacht - eine Verbesserung brachte es nicht.

Ich bin die Problematik jetzt in soweit umgangen, als das ich dem ESP eine statische IP vergeben habe + die richtigen Login-Daten vom WLAN und dann ist er erreichbar. Ist jetzt nicht das, was ich wollte - stört mich aber auch nicht weiter.
Vielleicht ist das aber ein Ansatz für jemanden der sich mit der Programmierung auskennt und so dem Umstand auf die Schliche kommen kann

Beste Grüße

Das klingt für mich aber ein bisschen so, als ob der ESP kein DHCP-Lease erhält. Schau mal im Router nach, ob du da irgendwelche DHCP-Einstellungen für diesen anpassen kannst.

Mit dem aktuellen Software Stand habe ich auch Probleme mit dem Wifi. Manchmal verbindet er sich beim Einschalten nicht mehr mit dem AP. Da hilft nur ein Neustart.
Wenn ich eine Verbindung habe und diese dann via Wifi-Off Kommando trenne und anschließend Wifi wieder aktiviere, dann findet er nie den AP.
Mit dem Stand vom 27.3. hats getan. Vermutlich bringt 1.0.6 sowohl Verbesserungen, als auch Verschlechterungen mit sich. Schade…

Edit: Falls jemand auch diese Probleme hat: Ich bin jetzt wieder auf 1.0.5 zurückgegangen, damit läuft es stabiler.

Tatsächlich war das bei mir eher mit der älteren Version der Fall, dass er sich nicht verbunden hat. Bei der 1.0.6 sah es besser aus. Was ich aber auf jeden Fall sagen kann: Mit der 1.0.6 dauert der Bootvorgang länger, weil er offenbar länger das WLAN scannt. Wenn es zuvor so lange gedauert hat, ist der Connect immer fehlgeschlagen.

Noch wer, der jetzt vermehrt Probleme hat?

Hmm, dann könnte es vielleicht schon helfen, wenn man den timeout bis wann der eigene AP aufgemacht wird vergrößert oder? Werde das mal testen…

So ich habe den timeout von 2s auf 6s angehoben und dann funktioniert es bei mir auch mit 1.0.6.
Danke @biologist für den Hinweis mit der längeren Scan-Dauer! :slight_smile:
Änderung ist hier eingecheckt:

1 Like

Ich muss zugeben, dass ich an die Codestelle gar nicht mehr gedacht hatte. Ja, dann werde ich das auch mal einchecken.

@Harry Habe gerade nochmal einen Blick auf deine Änderung geworfen. Also es ist so, dass unten die zweite Zeile, die du angepasst hast, ein „Hack“ ist. Und zwar deswegen, weil es irgendwie einen Bug gibt (vielleicht auch gefixt inzwischen), dass jedes zweite Mal kein WLAN-Connect möglich war. Wenn man dann die Zugangsdaten erneut gesetzt hat, hat es funktioniert.

Kurzum: Ich würde den Wert unten auf einen kleineren Wert setzen als den oben. Außer der Fehler ist inzwischen gefixt (und mein Hack damit nicht mehr notwendig). Das müsste ich mal testen…

Ah ok, ich wollte so die Logik nicht ändern. Ich habe es so interpretiert, dass im letzten Schleifendurchlauf Wifi nochmal gesetzt wird, quasi als aller letzter Versuch.

Ich habe noch ein weiteres, wahrscheinlich gravierenderes Problem mit 1.0.6 entdeckt. Der Filebrowser funktioniert nicht richtig. Dieser arbeitet ja mit HTTP Request. Aus irgendeinen Grund werden diese mit 1.0.6 durcheinander geschmissen. Ein HTTP_PUT wird ein HTTP_CREATE oder ein HTTP_DELETE wird en HTTP_PATCH. Keine Ahnung wo da was schief geht. Mit Wireshark sehe ich zumindest, dass der Client das richtige Kommando schickt, auf ESP Seite muss es dann irgendwie verdreht werden. Der HTTP Parser ist schließlich teil des Arduino Frameworks. Vielleicht muss noch der AsyncWebserver noch an die 1.0.6 angepasst werden?
1.0.5 funzt einwandfrei.

Haben andere auch dieses Problem?

Ja da hast du auch im Prinzip Recht. Ich glaube nur mit 6s Warten wird es dann recht lange. Eija, probierst es einfach aus :slight_smile:

Auf dem Lolin32 meiner Tochter gibt es keine Probleme. Muss ich auf dem Lolin D32 pro nochmal testen. Bei dem hatte ich kürzlich, als ich die „vermehrte PSRAM-Nutzung“ eingeführt habe, das Problem, dass mir im Filebrowser nix mehr angezeigt wurde, wenn ich das dynamische JSON-Objekt (16k groß) im PSRAM allokiert habe.

Ich hab das Problem grade tatsächlich auch bei einem Freund. Da läuft ein R7000 mit Xwrt und ich bekomme das Ding seit 3 Stunden nicht zum laufen.

Gibt es eigentlich irgendwo die Möglichkeit die Wlan Zugangsdaten in den Code zu schreiben?

Lieben Gruß