USB not working on 64 bit ubuntu core on raspberry pi

Hi, I am trying to run 64 bit Ubuntu Core on a Raspberry Pi compute module 4. USB does not seem to work either on an existing installation - I don’t get USB access to a cellular modem - or on a new installation - USB keyboards don’t work. Neither Core 20 nor Core 22 work, but the 32 bit versions are fine.
This would seem to be a regression, since I have previously installed Core 22 on a compute module 4.

Regards, Andrew

well, USB is provided through your base board, i’m running two CM4’s over here with UC18 and UC20 on a standard RPi baseboard as well as on a waveshare one… what base board do you use, are all the base board specific bits (devicetree overlays etc) added to your config.txt ?

I am using a waveshare Industrial IoT Wireless Expansion Module, but I have also tested this on a standard RPi baseboard. I have not added any customisations to the base config, so I could be missing something. However, USB functionality seems to be standardly enabled in Ubuntu Core, and works fine on the 32 bit versions.

I would like to play around with boot configurations, but I have not been able to find any information about how to change the config.txt on Ubuntu Core. Config.txt is found inside the pi snap, and I don’t believe it can be directly modified. Also the Ubuntu Core pi snap seems to be different in this respect to the standard Ubuntu pi snap.

Just verify that your config file inside /boot/uboot/config.txt have the following assignment under the CM4 section (if any)

Or just plop the line on top of the config.txt file: dtoverlay=dwc2,dr_mode=host

just plug the SD in a PC and edit it on the first partition …

at runtime it is mounted under /run/mnt/ubuntu-seed/ in UC20 and 22 in case you want to edit on the device directly

This worked. I don’t know why I didn’t work it out for myself, but thank you for your help.

This is already in the config.txt file. What I needed was otg_mode=1

2 Likes