Pico W firmware creates driverless USB WiFi bridge (Layer-2)

Hacker News Top Tools

Summary

An open-source firmware project for the Raspberry Pi Pico W turns it into a driverless USB WiFi adapter via a transparent Layer-2 bridge, offering WPA2/3 support and a management console, albeit with limited USB 1.1 throughput.

No content available
Original Article
View Cached Full Text

Cached at: 07/22/26, 05:18 AM

# pico-usb-wifi firmware converts the Raspberry Pi Pico W into a driverless USB WiFi adapter - CNX Software Source: [https://www.cnx-software.com/2026/07/16/pico-usb-wifi-converts-the-raspberry-pi-pico-w-into-a-driverless-usb-wifi-adapter/](https://www.cnx-software.com/2026/07/16/pico-usb-wifi-converts-the-raspberry-pi-pico-w-into-a-driverless-usb-wifi-adapter/) pico\-usb\-wifi is an open\-source firmware project that converts the[Raspberry Pi Pico W](https://www.cnx-software.com/2022/06/30/raspberry-pi-pico-w-a-6-raspberry-pi-pico-board-with-wifi-4/)into a driverless USB WiFi adapter that works with Windows, Linux, macOS, and other operating systems with USB CDC\-NCM support\. The Infineon CYW43439 chip found in the SBC can’t be used directly as a USB to WiFi bridge, and instead, the firmware implements a transparent Layer\-2 bridge between the Pico W’s wireless module and USB interfaces\. It basically works as an Ethernet to WiFi gateway/bridge, which exposes an Ethernet connection through USB \(aka USB gadget mode\) used to route Wi\-Fi packets from the network\. [![raspberrypi pico w usb wifi adapter](https://www.cnx-software.com/wp-content/uploads/2026/07/raspberrypi-pico-usb-wifi-adapter-720x393.jpg)](https://www.cnx-software.com/wp-content/uploads/2026/07/raspberrypi-pico-usb-wifi-adapter.jpg)Image source: project’s GitLab repopico\-usb\-wifi highlights: - Transparent Layer\-2 Bridging between the Pico W’s wireless and USB interfaces - Exposed as a USB CDC\-NCM device - IPv4 and IPv6 with no NAT, no private subnet, and no port\-forwarding to configure - Out\-of\-band management and debug consoles over CDC\-ACM serial - WPA2\-PSK and WPA3\-SAE authentication \(and open networks\) - Throughput – Average 4\.75 Mbits/sec; mostly limited by the 12 Mbps USB 1\.1 interface [![pico-usb-wifi architecture](https://www.cnx-software.com/wp-content/uploads/2026/07/pico-usb-wifi-architecture-720x242.webp)](https://www.cnx-software.com/wp-content/uploads/2026/07/pico-usb-wifi-architecture.webp) [![Raspberry Pi Pico W USB WiFi adapter](https://www.cnx-software.com/wp-content/uploads/2026/07/Raspberry-Pi-Pico-W-USB-WiFi-adapter-720x393.webp)](https://www.cnx-software.com/wp-content/uploads/2026/07/Raspberry-Pi-Pico-W-USB-WiFi-adapter.webp)Another AI\-generated from the project’s repo showing the connectionConsidering a low\-end WiFi USB dongle[costs $2\-$3 and up](https://s.click.aliexpress.com/e/_c43rBbkP), and the limited performance of the solution, it’s mostly useful for an emergency when you need WiFi connectivity and have a spare Raspberry Pi Pico W lying around\. I don’t think it’s possible to significantly improve the performance over the native USB port, but as noted by the developer \(白一百, baiyibai\), leveraging the[programmable I/Os on the RP2040](https://www.cnx-software.com/2021/01/27/a-closer-look-at-raspberry-pi-rp2040-programmable-ios-pio/)might be an option, and the[Pico\-100BASE\-TX project](https://github.com/steve-m/Pico-100BASE-TX)might be a starting point\. WiFi credentials and other parameters can be configured through the management console: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 picocom/dev/ttyACM0 \-\-pico\-usb\-wifiv1\.1\.0\-\- profiles:0saved\(active:none\) ssid:\(unset\) pass:unset country:\(unset\) debug:off status:associating hostIPv4:\(notseenyet\) \(set\|scan\|list\|use\|save\)\# scan \[\*\]scanning\.\.\. networks\(3\): 1MyNetwork\-47dBma4:b1:c2:d3:e4:f5 2CoffeeShop\-68dBm00:11:22:33:44:55 3Neighbour\-81dBm9c:65:ee:ef:27:c7 \(back\|join\|scan\|live\)\# join 1 \[\*\]staged\-\-setpass<password\>thensave \.\.\. profiles:1saved\(active:1\) ssid:MyNetwork pass:unset \.\.\. \(set\|scan\|list\|use\|save\)\# set pass hunter2 \[\*\]applying\-\-re\-associating \.\.\. \(set\|scan\|list\|use\|save\)\# save \[\*\]savedtoflash Besides the /dev/ttyACM0 management port, the /tty/ttyACM1 port is used for debugging\. While designed for the Pico W board, it might also work for the Pico 2 W by compiling for the latter \(TBC\)\. The project has been designed with Claude Code \(around one million tokens used\), and the source code \(C, based on the PicoSDK\), explanations on how it all works, and instructions to build the firmware from source can be found[on GitLab](https://gitlab.com/baiyibai/pico-usb-wifi)\. Alternatively, you can download and install the pico\-usb\-wifi\.uf2 binary directly on our board\. Via[Adafruit](https://blog.adafruit.com/2026/07/15/turn-a-raspberry-pi-pico-w-into-a-driverless-usb-wifi-adapter/) ![Jean Luc Aufranc](https://www.cnx-software.com/wp-content/uploads/2023/05/Jean-Luc-Aufranc.webp) Jean\-Luc started CNX Software in 2010 as a part\-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011\. **Support CNX Software\! Donate via[cryptocurrencies](https://www.cnx-software.com/donate-cryptocurrencies/),[become a Patron](https://www.patreon.com/cnxsoft)on Patreon, or purchase goods on[Amazon](https://amzn.to/3SXubZ0)or[Aliexpress](https://s.click.aliexpress.com/e/_DmGIIRT)**\. We also use affiliate links in articles to earn commissions if you make a purchase after clicking on those links\.

Similar Articles

Raspberry Pi Pico W as USB Wi-Fi Adapter

Hacker News Top

A project that turns the Raspberry Pi Pico W into a USB Wi-Fi adapter, providing a simple way to add wireless connectivity to devices via USB.

I built a pint-sized Macintosh

Jeff Geerling

Built a pint-sized Macintosh using a Raspberry Pi Pico running Pico Micro Mac firmware, with VGA output and USB keyboard/mouse.

Framework's 10G Ethernet module exposes USB-C's complexity

Jeff Geerling

Jeff Geerling tests the WisdPi 10G Ethernet Expansion Card for Framework computers, finding that USB-C bandwidth complexities and the Realtek RTL8159 controller limit performance on many laptops, especially under Linux.