USB Gadget Ethernet support on the zero

So, I basically have this need of enabling g_ether capabilities on my zero to use it with a router as an LTE device.

It’s not clear if the Zero has proper support for USB Gadget Ethernet. I found some threads mentioning recompiling and enabling dwc2 in armbian, as well as full support for the Rockpi 4 , but so far I can’t find any official documentation from RADXA for the Zero specifically.

Could anyone please confirm if I can enable the g_ether module on the RADXA Zero?

For the pi Zero, I normally go with these settings:

  1. config.txt - add dtoverlay=dwc2
  2. cmdline.txt - add modules-load=dwc2,g_ether

It’s similiar as this one:

Also, check this one:

Amazing, you guys released it just in time.

Thank you very much Jack. Marking as solved.

1 Like

I followed the guide at and an ETH interface was created at the Zero, but the host does not detect any USB device at all. What may be possibly wrong?

(I use the image Armbian_22.08.0-trunk_Radxa-zero_bullseye_current_5.10.127_minimal.img)

Is your host running Windows? That might be a driver issue.

No. I am testing just with MacOS and Linux. I also tried loading g_ether, g_midi, g_cdc … No reaction on the host whatsoever (dmesg, lsusb).

Just tested with the image radxa-zero-ubuntu-focal-server-arm64-20220701-0329-mbr.img and the result is the same. (Of course I have disabled amlogic-adbd.service).

Just to be sure I have not misunderstood something: I connect the Zero using the USB2/PWR via an USB-C to USB-A cable to the host, so it gets powered and boots. Then I connect to the Zero (wireless SSH or wired serial), modprobe g_ether (or g_cdc or g_midi…) and a new USB device should suddenly appear on the host, right?

1 Like

No need to modprobe those drivers. Just follow the guide and run the command on Zero. If that didn’t work, please check if your USB cable can carry data. You can use rz-udisk-loader to see if your computer can detect a USB storage device.

Yes, it can. I have no problems using rz-udisk-loader (except for the known problem on MacOS). It also works when using “ums” from the bootloader.

(A single modprobe was just much faster for quick testing than copying the 20 commands using ConfigFS. The functionality should be equal, just much more flexible in the second case.)

Since mass storage works in the bootloader and rz-udisk-loader, I also tested mass storage as described in Nothing.

There must be some problem with the current kernel, perhaps? What version was successfully tested last time?

Solved. See Radxa Zero as USB C gadget for iPad Pro

Or not…?