Score:3

USB serial devices not showing in /dev/serial/by-id/ after update from 21.04 to 21.10

kp flag

Architecture is arm64 running on a RPi 4 2gb. The serial device is any of my 3d printer boards running Klipper firmware.

USB device was working perfectly fine before update. I've also tried a fresh install of 21.10 to make sure it wasn't an update issue, but still having the same problem. Installing a fresh copy of 20.04 LTS fixes the issue, so I'm fairly confident the issue is related to some change from 21.04 to 21.10.

Device shows up properly in lsusb:

Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 003: ID 1d50:614e OpenMoko, Inc. lpc1769
Bus 001 Device 002: ID 2109:3431 VIA Labs, Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

but the actual device (/dev/ttyACM0 in 21.04 and 21.10) does not ever show up.

I'm not sure if it's related, but systemd-udevd seems to be throwing errors:

Oct 23 13:28:50 Himari systemd-udevd[931]: /usr/lib/udev/rules.d/90-pi-bluetooth.rules:14 Invalid value "/bin/sh -c 'ALIASES=/proc/device-tree/aliases; if cmp -s $ALIASES/uart0 $ALIASES/serial0; then echo 0;elif cmp -s $ALIASES/uart0 $ALIASES/serial1; then echo 1; else exit 1; fi'" for PROGRAM (char 58: invalid substitution type), ignoring, but please fix it.
Oct 23 13:28:50 Himari systemd-udevd[931]: /usr/lib/udev/rules.d/90-pi-bluetooth.rules:27 Invalid value "/bin/sh -c 'ALIASES=/proc/device-tree/aliases; if [ -e /dev/ttyAMA0 ]; then exit 1; elif cmp -s $ALIASES/uart0 $ALIASES/serial0; then echo 0;elif cmp -s $ALIASES/uart0 $ALIASES/serial1; then echo 1; else exit 1; fi'" for PROGRAM (char 97: invalid substitution type), ignoring, but please fix it.
Oct 23 13:28:50 Himari systemd-udevd[931]: /usr/lib/udev/rules.d/90-pi-bluetooth.rules:38 Invalid value "/bin/sh -c 'ALIASES=/proc/device-tree/aliases; if cmp -s $ALIASES/uart1 $ALIASES/serial0; then echo 0; elif cmp -s $ALIASES/uart1 $ALIASES/serial1; then echo 1; else exit 1; fi '" for PROGRAM (char 58: invalid substitution type), ignoring, but please fix it.```
heynnema avatar
ru flag
Does the USB go directly to the 3D printer, or via a USB->Serial adapter? In lsusb, which device is the 3D printer?
cbc02009 avatar
kp flag
USB directly to the printer board. `Bus 001 Device 003: ID 1d50:614e OpenMoko, Inc. lpc1769` is the serial device
heynnema avatar
ru flag
Have you looked at /var/log/syslog for any clues?
Score:2
jp flag

TL;DR: Please check if linux-modules-extra-raspi package is installed. Looks like some drivers were moved into a new package in 21.10 to reduce the size of the initramfs. Installing it manually helped in my case:

sudo apt install linux-modules-extra-raspi
sudo reboot

I am also affected by the exact same issue. Earlier today, I was working and setting up an USB IR reader for my power meter with Ubuntu 21.04 on a Raspberry Pi 4. After do-release-upgrade, the /dev/ttyUSB0 did not show up. The USB device in lsusb is there, but somehow the usbserial device creation does not kick in.

Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 002: ID 174c:1153 ASMedia Technology Inc. ASM1153 SATA 3Gb/s bridge
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 003: ID 0403:6015 Future Technology Devices International, Ltd Bridge(I2C/SPI/UART/FIFO)
Bus 001 Device 002: ID 2109:3431 VIA Labs, Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Device in question is 0403:6015.

There seem to be a related bug filed here already on launchpad.

cbc02009 avatar
kp flag
Thank you! this was exactly the answer!
cn flag
Oh my! Thank you so much. I've spent all day trying to figure this out!
mangohost

Post an answer

Most people don’t grasp that asking a lot of questions unlocks learning and improves interpersonal bonding. In Alison’s studies, for example, though people could accurately recall how many questions had been asked in their conversations, they didn’t intuit the link between questions and liking. Across four studies, in which participants were engaged in conversations themselves or read transcripts of others’ conversations, people tended not to realize that question asking would influence—or had influenced—the level of amity between the conversationalists.