Raspberry Pi Pico W: Internet-Verbindung prüfen

Wenn man den Raspberry Pi Pico W als WLAN-Client programmiert und eine Verbindung zum Internet braucht, dann will man vielleicht prüfen, ob eine Verbindung ins Internet über eine bestehende WLAN-Verbindung möglich ist.

Nur weil eine WLAN-Verbindung erfolgreich war, bedeutet das nicht, dass man damit auch Zugang zum Internet hat oder eine Internet-Verbindung möglich ist.

Deshalb wollen wir hier mit dem folgenden Programmcode eine Internet-Verbindung prüfen.

Programmcode

Der folgende Programmcode ist ohne Netzwerk-Verbindung nicht lauffähig. Da der Funk-Chip vom Mikrocontroller-Chip unabhängig ist, reicht es aber aus, vor diesem Programmcode einen Programmcode aufzurufen, der eine Verbindung zum WLAN herstellt.

Der Programmcode arbeitet mit der Bibliothek „requests“. Damit wird ein HTTP-Request an einen Server gesendet. Wenn auf den Request ein Response vom Server zurückkommt, dann besteht über das WLAN eine Verbindung ins Internet.

# Bibliotheken laden
import urequests as requests

try:
    # HTTP-Request senden
    request = requests.get('http://www.elektronik-kompendium.de/')
    # HTTP-Response-Status-Code ausgeben
    print('Status-Code:', request.status_code)
    # Verbindung schließen
    request.close()
except OSError:
    print('Fehler: Keine Netzwerk-Verbindung (WLAN)')

Ein Status-Code (HTTP-Response-Code) von „200“ bedeutet, dass die Verbindung zu dem betreffenden Server erfolgreich war.
Bei anderen Status-Codes wurde der Server erreicht, aber der Request hat einen Fehler auf dem Server verursacht. Die Internet-Verbindung war dann trotzdem erfolgreich.

Fehler: Keine Netzwerk-Verbindung (WLAN)

Damit der hier initiierte HTTP-Request erfolgreich ist, müssen verschiedene Bedingungen erfüllt sein.

  1. Der Raspberry Pi Pico W muss mit einem WLAN verbunden sein. Dazu muss der WLAN-Status „3“ sein.
  2. Dann muss das WLAN (WLAN Access Point), mit dem man verbunden ist, mit dem Internet-Zugangsrouter verbunden sein. Meist ist es das gleiche Gerät.
  3. Der Internet-Zugang (DSL, TV-Kabel, Glasfaser, etc.) muss grundsätzlich funktionieren.

Troubleshooting: WLAN

Wenn es mit dem Programmcode Probleme gibt, dann betrifft das hauptsächlich die WLAN-Verbindung. Der Umgang mit Funkverbindungen ist immer etwas schwierig, weil man nicht „sieht“ was passiert. Man ist dann auf Status-Meldungen vom Programmcode angewiesen. Von der Status-Meldung lässt sich aber nur selten auf eine Problemlösung schließen. Hier muss man etwas genauer hinschauen, um den Fehler zu finden, der sich nicht im Programmcode befinden muss.

Raspberry Pi Pico W als Netzwerk-Tester?

Unter diesen Umständen wäre es natürlich naheliegend auf die Idee zu kommen, einen Raspberry Pi Pico W als Netzwerk-Tester zu verwenden, der im Fehlerfall das Problem und gleich auch die Problemlösung anzeigt. Das ist eine Super-Idee. Allerdings hat sie einen Haken. Als Netzwerk-Tester ist ein Pico völlig ungeeignet. Dafür wäre Software nötig, die auf dem Pico einfach nicht lauffähig ist. Man bräuchte zumindest einen Mini-Computer mit einem richtigen Betriebssystem.
Desweiteren sind Netzwerk-Verbindungsprobleme vielschichtig und von den Geräten und Anwendungen abhängig. Wie will so ein Netzwerk-Tester ein Problem auf einem bestimmten Client erkennen können, wo vielleicht nur die betreffende Anwendung falsch konfiguriert ist oder einen Fehler aufweist?
Professionelle Netzwerk-Tester sind nicht ohne Grund teure Geräte. Deren Funktionen lassen sich nicht einmal so nachbauen. Und schon gar nicht in einen Raspberry Pi Pico pressen.

Übersicht: Netzwerk-Konfiguration

Darf es ein bisschen mehr sein?

Wie wäre es, wenn wir jetzt noch einen HTTP-Server auf dem Raspberry Pi Pico W betreiben, den wir im Browser aufrufen können.

Weitere verwandte Themen:

Frag Elektronik-Kompendium.de

Elektronik-Set Pico WLAN Edition

Elektronik-Set Pico WLAN Edition

Hardware-nahes Programmieren mit dem Mikrocontroller Raspberry Pi Pico W und MicroPython.

  • Raspberry Pi Pico W mit gelöteten Stiftleisten
  • Spezielles Steckbrett mit GPIO-Beschriftung
  • Einführung ins Hardware-nahe Programmieren
  • Schwerpunkte: WLAN, MQTT und Internet
  • Deutschsprachige Anleitung als PDF-Datei zum Download

In unseren Online-Workshops bieten wir intensiven Erfahrungsaustausch in kleinen Gruppen und Unterstützung bei individuellen Problemen.

Elektronik-Set jetzt bestellen Online-Workshop buchen

Online-Workshop: Programmieren mit dem Raspberry Pi Pico

Programmieren mit dem Raspberry Pi Pico

Gemeinsam mit anderen und unter Anleitung experimentieren? Wir bieten unterschiedliche Online-Workshops zum Raspberry Pi Pico und MicroPython an. Einführung in die Programmierung, Sensoren programmieren und kalibrieren, sowie Internet of Things und Smart Home über WLAN und MQTT.

Online-Workshop buchen

Besuchen Sie unser fast monatlich stattfindendes Online-Meeting PicoTalk und lernen Sie uns kennen. Die Teilnahme ist kostenfrei.

Termine und Newsletter-Anmeldung

 

Elektronik-Sets für das Hardware-nahe Programmieren