Setting up a headless Raspberry Pi can be frustrating. What seems like a quick task often takes way longer than expected. Many users start by configuring Wi-Fi and enabling SSH before powering up the device. However, issues can pop up, especially on complex networks.
For instance, I recently spent hours trying to connect a headless Raspberry Pi to a Protected EAP network. In the end, I resorted to using SSH over Bluetooth—definitely not ideal. Thankfully, there’s a new solution on the horizon. Paul Oberosler has developed a package that allows SSH over USB, which is now included in the latest versions of Raspberry Pi OS.
So, how does this work? The rpi-usb-gadget lets the Raspberry Pi be recognized as a network adapter when plugged into a host machine. Once it’s set up, you can SSH directly into the Pi. Moreover, with Internet Connection Sharing (ICS), the Raspberry Pi can access the internet via the host machine. To enable gadget mode, you can use the Raspberry Pi Imager. However, setting up ICS on Windows requires an additional driver.
For those familiar with OTG mode, it’s another option for USB terminal access. OTG mode has been useful for configuring a Pi as both an access point and client simultaneously.
It’s exciting to see how these new functionalities can simplify Raspberry Pi setups, potentially saving users time and hassle. As technology progresses, solutions become more intuitive, making them accessible even for beginners.
For more detailed guidance, check out the Raspberry Pi’s official announcements. Thanks to Gregg Levine for the tip!

