Ich vemute auch, dass überall ein delay(1) grundsätzlich ausreichen müsste, weil dies dem Scheduler ermöglicht, auch noch die WiFi-Funktionen ständig(!) parallel abzuarbeiten (Multithreading auf 1 Kern!). Und die laufen tatsächlich ständig im Hintergrund nebenher, egal was in der selber geschriebenen "Hauptprogramm-loop()" passiert.
Bei der Einwahl anfangs kann es u.U. sinnvoll sein, etwas länger als nur 1ms zu warten, weil die entspr. WiFi-Routinen zusammen mit der Hardware einfach eine gewisse Zeit benötigen, das kannst du aber ganz einfach selber austesten, indem du statt delay(500) einen kleineren Wert einsetzt (ohne es komplett zu löschen) - allerdings macht dann das Schreiben von Punkten jede einzelne ms wenig Sinn, denn da kommt der Serial Monitor gar nicht hinterher, und was nützt es einem, wenn die Einwahlschleife hunderttausende Punkte per Serial Monitor auf den PC-Screen schreibt, bis endlich Wifi connected ist.
Was deine delay(10) bei der Client-Kommunikation besser bewirken als ein delay(1), kann ich aber nicht beurteilen, denn hier verstehe ich zu wenig von deiner Programm-Architektur (ich selber verwende ja wie gesagt eine andere Lib mit einer anderen Technik).
Lesezeichen