Die meisten Menschen, die einen USB-WLAN-Adapter benötigen, geben online etwa fünf Dollar aus und warten ein oder zwei Tage auf die Lieferung. Der Softwareentwickler Bái Yìbai war jedoch der Meinung, dass es dafür eine interessantere Lösung geben müsse. Anstatt einfach einen WLAN-Dongle zu kaufen, verbrachte er ein komplettes Feiertagswochenende damit, eine Firmware zu schreiben, die einen sechs Dollar teuren Raspberry Pi Pico W in einen vollständig treiberlosen USB-WLAN-Adapter verwandelt. Das Projekt erregte kürzlich die Aufmerksamkeit von Adafruit, wo die Firmware vorgestellt und damit einem deutlich größeren Publikum bekannt gemacht wurde.
Auf den ersten Blick klingt das nach ziemlich viel Arbeit, nur um ein paar Dollar zu sparen. Genau deshalb hat dieses Projekt jedoch unsere Aufmerksamkeit geweckt. Es geht nicht darum, Geld zu sparen. Es geht darum zu zeigen, wie flexibel der USB-Standard sein kann, wenn jemand bereit ist, ein wenig anders zu denken.
Wenn Sie normalerweise einen USB-WLAN-Adapter an einen Computer anschließen, erwartet das Betriebssystem, direkt mit der darin verbauten Funkhardware zu kommunizieren. Dafür müssen in der Regel Treiber installiert werden, die den jeweiligen WLAN-Chipsatz des Adapters verstehen. Jeder Hersteller verwendet seine eigene Kombination aus Hardware, Firmware und Software. Deshalb gehörte die Installation eines Treibers traditionell fast immer zur Nutzung eines USB-WLAN-Adapters dazu.
Der Raspberry Pi Pico W verfolgt einen völlig anderen Ansatz.
Anstatt sich beim Computer als WLAN-Adapter vorzustellen, meldet er sich ganz einfach als USB-Ethernet-Adapter an. Jedes moderne Betriebssystem versteht USB-Ethernet-Geräte bereits, sodass nichts Neues installiert werden muss. Windows, macOS, Linux und sogar viele mobile Betriebssysteme bringen die notwendige Unterstützung bereits von Haus aus mit.
Der clevere Teil findet im Pico selbst statt. Während der Computer davon ausgeht, ganz normalen Ethernet-Datenverkehr über USB zu übertragen, wandelt der Pico diesen Datenverkehr im Hintergrund mithilfe seines integrierten Funkmoduls in WLAN-Kommunikation um. Aus Sicht des Betriebssystems geschieht dabei nichts Ungewöhnliches. Für den Benutzer sieht es einfach so aus, als hätte der Computer plötzlich eine drahtlose Netzwerkverbindung erhalten, ohne jemals einen speziellen WLAN-Treiber laden zu müssen.
Stellen Sie es sich wie die Arbeit eines Dolmetschers vor.
Der Computer spricht nur Ethernet. Der WLAN-Router spricht nur Wi-Fi. Anstatt dem Computer eine völlig neue Sprache beizubringen, hört der Raspberry Pi Pico einfach die eine Sprache und spricht auf der anderen Seite die andere. Beide Seiten kommunizieren weiterhin genau so, wie sie es schon immer getan haben, während der Pico in der Mitte die Übersetzung übernimmt.
Diese Idee veranschaulicht eine der größten Stärken von USB. USB-Geräte werden nicht allein dadurch definiert, welche Hardware sich in ihrem Inneren befindet. Entscheidend ist vielmehr, als was sie sich gegenüber dem Computer ausgeben.
Eine Tastatur meldet sich als Tastatur an. Eine Maus identifiziert sich als Maus. Ein USB-Stick stellt sich als Massenspeichergerät vor. Eine Webcam erscheint als Videogerät. Dem Betriebssystem ist es im Allgemeinen gleichgültig, welcher Prozessor sich im Gehäuse befindet. Entscheidend ist stattdessen, wie sich das Gerät während der USB-Enumeration identifiziert.
Diese Flexibilität hat im Laufe der Jahre unzählige kreative USB-Projekte ermöglicht. Sicherheitsforscher haben Geräte entwickelt, die sich als Tastaturen ausgeben, um Befehle automatisch einzugeben. Kleine Entwicklungsplatinen wurden allein durch eine Änderung ihrer Firmware zu Logikanalysatoren, Oszilloskopen, seriellen Adaptern, MIDI-Controllern und Debugging-Schnittstellen. Die Hardware bleibt dabei oft vollständig unverändert, während sich die USB-Identität des Geräts grundlegend wandelt. Ein ähnliches Konzept haben wir bereits in einem früheren Artikel erläutert, in dem es darum ging, wie sich durch eine veränderte USB-Geräteidentität auch die Art ändern kann, wie das Betriebssystem mit dem Gerät umgeht.
Das Raspberry-Pi-Pico-W-Projekt reiht sich damit in eine wachsende Sammlung besonders cleverer USB-Hacks ein. Anstatt sich als WLAN-Hardware auszugeben, präsentiert sich der Pico als etwas, das jedes moderne Betriebssystem bereits versteht. Indem der Entwickler Kompatibilität über Komplexität stellte, konnte er die Notwendigkeit spezieller Treiber vollständig umgehen.
Der vielleicht amüsanteste Teil des gesamten Projekts ist die Erklärung des Entwicklers selbst. Er räumt offen ein, dass der Kauf eines fünf Dollar teuren USB-WLAN-Adapters schneller, günstiger und erheblich einfacher gewesen wäre. Stattdessen verbrachte er zwei Tage und verbrauchte ungefähr eine Million KI-Coding-Tokens, um die Firmware zu entwickeln – einfach deshalb, weil er herausfinden wollte, ob sich die Idee tatsächlich umsetzen lässt.
Das war möglicherweise nicht die wirtschaftlichste Lösung, aber es bringt den Geist des Engineerings ziemlich genau auf den Punkt. Manchmal besteht das Ziel nicht darin, das günstigste Gerät zu bauen. Manchmal geht es einfach darum zu beweisen, dass eine ungewöhnliche Idee tatsächlich funktioniert.
Projekte wie dieses erinnern daran, dass USB weit mehr ist als nur ein Anschluss an der Seite eines Computers. Hinter diesem vertrauten rechteckigen Stecker steckt ein bemerkenswert flexibler Kommunikationsstandard, der fast drei Jahrzehnte nach seiner Einführung noch immer zu kreativen technischen Lösungen inspiriert.
Weiterführende Informationen: Adafruit berichtete kürzlich über das Projekt und nannte den Softwareentwickler Bái Yìbai als Urheber der Open-Source-Firmware. Der Beitrag enthält zusätzliche Hintergrundinformationen zum Projekt sowie Verweise auf den Quellcode. Den englischsprachigen Artikel von Adafruit können Sie hier lesen.
Redaktioneller Hinweis: Dieser Artikel fasst ein von der Community entwickeltes Open-Source-Projekt des Softwareentwicklers Bái Yìbai zusammen. Die technischen Konzepte wurden vereinfacht dargestellt, damit Leser die zugrunde liegenden technischen Ideen auch ohne Vorkenntnisse im Bereich eingebetteter Systeme nachvollziehen können.