I have a USB CAN Converter Basic as described here: https://ucandevices.github.io/uccb.html

When I plug it into my Arch Linux laptop, dmesg shows the following:

usb 1-6: new full-speed USB device number 12 using xhci_hcd
usb 1-6: New USB device found, idVendor=0483, idProduct=5740, bcdDevice= 2.00
usb 1-6: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 1-6: Product: CAN_USB_ConverterBasic
usb 1-6: Manufacturer: CANDevices
usb 1-6: SerialNumber: 00000000001A
cdc_acm 1-6:1.0: ttyACM0: USB ACM device

lsmod shows the following entries:

slcan                  16384  0
can_dev                36864  0
can_raw                20480  0
can                    24576  1 can_raw

When I now try to activate the CAN interface with sudo ip link set can0 type can bitrate 500000, I get the error Cannot find device "can0".

I think I have to add some udev rule or systemd thingy. But I cannot find the right start to do so.


I have now created a udev rule:

# cat /etc/udev/rules.d/45-uccb.rules 
SUBSYSTEM=="usb", ATTRS{idProduct}=="5740", ATTRS{idVendor}=="0483", MODE="666", SYMLINK+="can0"

...but I can still not use the ip link command above.

Can anyone give me a hint on what's missing?



The UCCB adapter introduces itself as a serial device (/dev/ttyACM0) so it has to be set up as slcan device.

slcan_attach -f -s5 -o /dev/ttyACM0
slcand ttyACM0 slcan0

With that, ip link can configure the device and can0 can be used by candump and friends.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy