WiFi-Konnektivität bei der Inbetriebnahme des FiPy hakelt

Heute nachmittag war das Fernsehteam von “naturnah” bei mir im Garten in Otterstedt und wollte den Einbau der Sensoren mit Bienen filmen. Natürlich hatte ich alles bei mir am Schreibtisch in Bremen getestet und Konfiguriert. Es lief alles perfekt bis zum Abbau um 14 Uhr.
Dann der Vorführeffekt im Garten mit den gleichen Sensoren. Der Fipy wollte nicht messen, sondern nur neu konfiguriert werden. Da ich in Otterstedt noch kein WLAN habe, habe ich die LEDs zur Anzeige programmiert: rote LED für Konfiguration, grüne LED blinkt alle 10 sec wenn ein Datensatz fertig ist.
Es hätte also grün blinken sollen. Das Fernsehteam hat trotzdem schöne Bilder gemacht, das Wetter war sehr gut.
In der letzten Woche hatte ich Hermanns FiPy mit Sensoren bei mir fertig gemacht, er hatte bei sich ähnliche/gleiche Probleme.
Ich werde heute Abend die Probleme analysieren.

Ich habe gerade alles am Schreibtisch eingeschaltet: es geht wieder.
Wo war der Fehler?

Hallo Didi,

Kabel/Strom oder Standort?

Viele Grüße,
Andreas.

So bei mir habe ich auch mal weiter auf die Fehlersuche gemacht.
An der Spannungsversorgung über Computer-USB liegt es bei mir schon mal nicht. das Netzteil was ich jetzt dran habe liefert max 30A bei 3.7V habe ist aber auf 2A Begrenzt.
Das Problem trat trotzdem anfangs auf und dann war es auf einmal weg.
Nach Rückbau ebenfalls keine Problem mehr.
Bin jetzt endgültig verwirrt.

Das einzige was mir aufgefallen ist manchmal zieht er die erste Zeit 330-340mA
und dann meißtens wieder nur 210 -190mA.
Ist auf alle fälle noch in der USB 2.0 Spezifikation, falls er sich als High-Power-Device zu erkennen gibt.

Bei mir lag es am fehlenden WLAN in Otterstedt. Wenn nach dem Booten kein passendes WLAN da ist, geht das Programm in den Konfig-Modus. Kann ich in Bremen mit aus/ein-geschaltetem Accesspoint nachvollziehen.

Ok das verhalten,kann ich bestätigen. Würde ich aber als richtiges verhalten bezeichnen. Was mir allerdings aufgefallen ist, das er manchmal nicht lange genug scannt und so nicht alle SSID findet. so lande ich manchmal nach dem Restart wieder im AP modus.

Vielleicht braucht der FiPy eine Mindest-Signalstärke vom WLAN. Die interne Antenne ist sehr klein, man kann eine externe anschliessen.
siehe: Platine für FiPy

Die hochleistungs SMD antenne sollte bei mir ausreichen.
Kann sein, das das am Stand noch relevant wird. Aber bei meinen Tests am Schreibtisch war ich ca. 6m vom Router entfernt. Und hatte trotzdem Probleme. Die Neustart Schleife macht er, denke ich immer dann, wenn die SSID gefunden wird, die Verbindung aber wegen irgendwas fehlschlägt.
Werde die theorie Heute Abend nochmal versuchen zu überprüfen.
Edit:
Vielleicht ist es ja nur ein Timing Problem.

A post was merged into an existing topic: [ORGA] Community-Meeting 2019-08-01

So weit ich weiß wurde bzgl. WLAN nichts nachgebessert, du @MKO bist auf die hiveeyes-Firmware gewechselt und bei mir ging es nach einigen Tagen trial and error dann, nicht ganz nachvollziehbar, was die Lösung dafür war.

@pinguin hattest du Probleme mit dem WLAN, als Vermutung hatten wir Sonderzeichen in SSID oder Passwort, nicht zusammen passende Verschlüsselung über die Konfig und “real”.

gut werde ich noch mal testen.
Lag bei mir auf alle Fälle an der Verschlüsselungsart. Hatte es bisher nicht unter den Werkseinstellungen geschafft. Nur wenn ich diese geändert oder den Gastzugang genutzt hatte ging es.

Gastzugang ist eine Lösung mit Problemen, da man beim Gastzugang nicht auf andere Netzwerkgeräte im Gast-Netz Routen kann, kann man nur im AP Mode Konfigurieren.

Version: Hiverize/FiPy last commid [55d5a0e] 13 Jun
Firmware :1.20.0.rc11
Filesystem: LittleFS
Board: FiPy V1.2
Config File: default_settings.json
Router= FRITZ!Box 7490 Aktuellste Firmware FritzOS 07.12
Verschlüsselung = WPA/WPA2
Kanal:6

Upload mit Visual Studio Code mit Pymakr plugin.

Habe versucht mit der FiPy Software eine Verbindung zur Fritz Box aufzubauen. Keine Chance.
Mit den default Settings und meinem Board musste ich einen Button für AP Mode nachrüsten. sobald ich im AP mode den Taster ausgelöst habe startete der AP Mode

  1. Allerdings startete die Verbindung nach einigen Sek. ständig neu, sodas es nicht möglich war irgendwelche Änderungen im CP zu machen.
    Solange ich noch keine Einstellungen drin hatte ging es glaube ich kurz, oder ich hatte glück eine aktive Verbindung beim Speichern zu treffen…

Habe dann in den Stettings den Button deaktiviert und bin über den Neustart ins CP gekommen.
sobald ich nun mit meinen Fritz Box Zugangsdaten Neustarte gerät der FiPy in eine Endlosschleife wo der Watchdog ständig auslöst. Es ist dabei egal welche Verschlüsselung ich auswähle bei WPA startet er artig und macht seine messungen, Verbindet aber nicht. Bei WPA2,WPA2 ENT gerät er in die Schleife
image

Bin Jetzt etwas Ratlos Was ich noch versuchen sollte.
über Gastzugang der WPA2 Verschlüsselt ist geht es übrigens und wenn ich den Router umstelle Übrigens auch. Alledings brauche ich WPA und WPA2.

1 Like

um das psk kommste grade glaube ich nicht rum.

wpa enterprise ist auf iot devices eher nicht so verbreitet. ich hab da mal patches gesehn, die haben dann aber auf dem event nicht getan und wir hatten es dann auf ner extra essid mit psk (wpa2) gefahren.

ps: im pycom forum und auf esp32 arduino listen gibts auch diskussionen ueber probleme mit fritzboxen.
alles sehr unklar, aber power-saving modes und automatische kanalwahl sind wohl keine tolle idee, wenn es um die stabilitaet von esp32 im wlan geht. kann man ja mal testen, ob es hilft das auszumachen auf der fritzbox.

Ok Mein Router verwendet AES CCMP das ist glaube ich der Nachfolger von TKIP. (bin da leider etwas raus aus dem Thema)
PSK kann ich gar nicht auswählen. Was mich wundert beim Gastzugang klappt es WPA2(CCMP)
nur halt beim normalen Zugang nicht.

Die Terkin-Datenlogger MicroPython Firmware hat diese Probleme übrigens nicht, es liegt also nicht explizit an den FiPy sondern höchstwahrscheinlich an der Software (WLANManager). Habe hier vom Hamburger Workshop min. 3 Teilnehmer, die dieses Problem ebenfalls haben und auf eine Lösung warten.

Sollte also eine Lösung gefunden werden bevor es zum Nächsten Workshop geht. Wir können nicht von allen Teilnehmern erwarten, das sie ihr Wlan zu Hause umstellen und evtl alle anderen Geräte evtl. neu Konfigurieren müssen.

1 Like

uff… aus den details bin ich auch ein bisschen raus… Wi-Fi Protected Access - Wikipedia liest sich wie ‘tkip’ meint wpa(1) und aes-ccmp meint wpa2
mit psk meinte ich ‘preshared key’ also ‘wlan mit passwort’ und nicht einen enterprise mode mit username passwort oder gar (client specific) certifikaten.

hab grade mal in den code der hiverize fw geschaut (die ist gemeint, right?) … tut der wlan manager irgendwas ausser die dinge aus der api als strings zu speichern und zurueck?
kann die pycom api echte utf8 strings handlen oder nur ‘strings’ ? das ist das einzige was mir da beim drueberbrowsen einfaellt was schiefgehn koennte… channel ist auch ein string? vielleicht muss da an die eine oder andre stelle nur noch ne kleine type-conversion und alles ist huebsch…( str() bzw int() )

So habe es denke ich hin bekommen. Scheint ein Timing Problem zu sein. Wahrscheinlich dauert das aushandeln der Verbindung bei WPA/WPA2 länger, sodas der Watchdog zuschlägt.
habe jetzt mal in der Config den timeout auf 10 sec gestellt, jetzt läuft es.

1 Like

super :)
das kann sein, wenn der esp frisch gebootet ist (also bei uns dauernd) kann es nen moment dauern bis so ein sessionkey ausgehandelt ist. schon viel crypto fuer so wenige bytes. wobei da oft auch einfach random knapp ist, und dann kanns auch von ap seite mal nen delay geben. ich hatte sowas mit openwrt wo nach einem reboot die clients rejected wurden weil die kiste noch zuwenig random hatte.

Software
Version: pinguin999/FiPy last commit [6d75cfe], Jul 2, 2019
der code geht nicht, daher
Hiverize/FiPy last commit [55d5a0e] Jun 13, 2019
Config File: settings_preset_didi.json in defailt_settings.json umbenannt
Upload mit Atom und Pymakr-Plugin
Firmware :1.20.0.rc12

Hardware
Board: FiPy v1.2
Filesystem: LittleFS
Shield: Didi

Test 1, Fritz-Box

Router= FRITZ!Box FritzBox 7412 mit aktuellster Firmware FritzOS 06.85
Verschlüsselung = WPA2(CCMP)
Kanal: Funkkanal-Einstellungen automatisch setzen (empfohlen), Kanal 1

ok, funktioniert!

Test 2, Handy-WLAN-Hotspot

Router=Sony Xperia
Verschlüsselung = WPA2 PSK
Kanal: ??

ok, funktioniert!

Der timeout – ganz oben in der settings.json – unter

"networking": {
    "wlan": {
        [...]
        "timeout": 1000,

ist standardmäßig auf 1000 (ms) eingestellt, wenn das jetzt mit einer 0 dran besser funktionieren würde wäre das prima!

        "timeout": 10000,

wie gesagt bei mir hat es wunderbar geholfen, ob jetzt 10s der Wahrheit letzter Schluss sind mal dahingestellt, vielleicht klappt es auch mit 5s.
Mir ist es nicht wichtig, ob er jetzt vor dem Watchdog 10 Sec. hängt, bevor er es nochmal versucht (Neustartet), sondern, dass es überhaupt klappt.

1 Like

Danke für den Tipp, mit der firmware von Vinzent und den default-Einstellungen läuft es bei mir auch. Manchmal hate ich beim upload der Dateien über Atom Probleme, da sagt Atom ganz gut bescheid, dass der upload nicht funktioniert hat. Nach einem Reset des FiPys oder an-/abstöpseln läuft es dann meist.

Ab und an komme ich auch nicht auf den FiPy, dann hilft die Tastenkombi save boot-Knopf auf dem expansion board plus reset auf dem FiPy.

Was ab und an auch nciht ging, das Komplette Löschen der Dateien über den PyCom-Firmware-Flasher, da nutze ich dann das command line tool von Andreas mit make format-flash.

Bei mir am FiPy brennt mit Vinzents Firmware die LED dauerhaft gelb, dachte nur beim Betrieb als AP? Das Gerät liefert aber Daten.