Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save gruvw/97da6d772d5248d8178822b03f6975fd to your computer and use it in GitHub Desktop.
Save gruvw/97da6d772d5248d8178822b03f6975fd to your computer and use it in GitHub Desktop.
SSH over USB on a Raspberry Pi

Our long term goal will be to use SSH over USB. This means that we have to configure Raspbian to treat the USB port like an ethernet port. Mount the micro SD card in a computer (not Pi Zero) and open it with Finder, or Windows Explorer, or whatever it is that you use.

The first thing that you want to do is open a file at the root of the mounted drive called config.txt. In this file you want to add the following line at the very bottom:

dtoverlay=dwc2

The above line will set us up for the next file that we alter. The next file we alter is cmdline.txt, but it is a bit different. Parameters in this file are not delimited by new lines or commas, they are delimited by space characters. In this file we want to add the following:

modules-load=dwc2,g_ether

The above parameter should be added after the rootwait parameter. Yes the above parameter is a single parameter, meaning don’t add a bunch of space characters to it. More information on networking over USB on Linux can be found here.

By default SSH access is disabled in Raspbian. To enable SSH, create a file called ssh and save it to the root directory of the boot mount on the SD card. The file can be blank, and it has no extensions. It should exist at the same location as the other files that were edited.

At this point the micro SD can be inserted into the Pi Zero.

Connecting to the Pi Zero with USB and SSH

Connect to the pi's Data port. No need to use the pwr port. (The middle port is data [PWR, DATA, HDMI])

Connect to ssh [email protected]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment