USB to CAN on Viola Plus v1.2B

Hi!

I’m having an issue with a USB to CAN Adapter on a Viola Plus v1.2B board with a Colibri imx6 ULL 512MB SOM. Using lsusb the adapter shows up as expected but when I type ip a there’s no can0 interface showing up.

When I insert the exact same SOM into a Colibri Evaluation board v3.2B, the can0 interface shows up when I type ip a and I can also successfully connect to it and use it.

Any Idea why it doesn’t work with the Viola board? Any help would be much appreciated!

Hi @btr-phil!

Welcome to the Toradex Community!

I would like to ask you some questions to better understand what is happening.

To which USB port are you connecting the USB to CAN in both cases?

Also, which BSP version are you using? Did you modify anything (is it a custom image)?

And which device tree are you using?

Best regards,

1 Like

Hi! Thanks for your reply!

To answer your questions:

  • On the eval board I’m using the upper port of USB 1/2
  • On the Viola board I’m using USB 2 (the upper port of USB 1/2)
  • I’m on Linux BSP 5
  • for now I just renamed the toradex minimal image, no further customizations
  • I’m using the default device tree of the eval board (Anyway I couldn’t find one for the Viola board - did I miss it?)

Thanks & best
Philipp

Hi @btr-phil, how are you?

Just as an additional check, did you have the opportunity to check this article describing how to use the CAN interface on our modules? CAN (Linux) | Toradex Developer Center.


About your points:

Can you confirm which exact BSP have you based yourself to? Was it 5.6? Can you also confirm which exact Version of Colibri iMX6ULL do you have? (ex: Colibri imx6 ULL 512MB IT V1.1A) This is just to be sure that we can have the same exact setup as you.


No. You didn’t miss it. As the Viola Carrier Board is our minimalistic carrier board for the Colibri Family it should be fine to use the evaluation board device tree on it to use its functions.


We’ll be checking the reported issue from our side in the meantime.

Best regards,
Guilherme

Hi!

Just as an additional check, did you have the opportunity to check this article describing how to use the CAN interface on our modules? CAN (Linux) | Toradex Developer Center.

Yes! However for now we explicitly don’t want to use the onboard CAN interface on the Viola, but a USB to CAN adapter. This is for prototyping only! We’ll switch to the onboard CAN later-on. We also have the onboard CAN working already on a eval-board.

Using bitbake -e virtual/kernel | grep "^PV"

I get:

PV=“5.4.161+gitAUTOINC+7cb929ebe2”

We do have a Colibri iMX6ULL 512MB WB IT V1.1A

Does it mean that you connect some other CAN device to USB to CAN adapter and was able to communicate with it?

Could you boot your module with inserted USB to CAN adapter on Viola and Colibri Evaluation board, collect dmesg output in both cases and attach them as a text file here?

Hi! We digged a bit deeper in the meanwhile and found out that the required driver (gs_usb) for the USB to CAN adapter was missing. After adding it to the image, the USB to CAN adapter is detected and works as expected.

The reason why I thought it was initially working on the eval board was that I missinterpreted the output of “ip a” - the listed “can0” interface was the onboard one, not the one of my adapter.

Thanks for your support.

1 Like

Dear @btr-phil,

Thanks for the update. Please feel free to contact us again if you need any further assistance.

Best regards,