MIT Racecar - Enertion FOCBOX (vesc-x) not detected, ttyACM does not appear

I need help…
I’ve followed the JetsonHacks MITRacecar tutorial for building the Kernel and enabling the ACM module, here http://www.jetsonhacks.com/2017/07/31/build-kernel-ttyacm-module-nvidia-jetson-tx2/

The tutorial proceeds to instruct the installation of the BLDC tool for configuring the FOCBOX.
Connecting the USB to the FOCBOX, I am supposed to get the option of ttyACM0, to connect to the FOCBOX. However, I only have ttyS0, ttyTHS1-3…

I’ve compiled the kernel multiple times to try and make sure the ACM module is selected when building the kernel. It definitely is.

I’ve confirmed the Kernel is correct with “uname -r” (named 4.4.38-jetsonbot-v0.1 by the tutorial)

“rmmod cdc_acm” returns “ERROR: Module cdc_acm is builtin”

“modprobe cdc_acm” returns nothing.

the file /dev/ttyACMX does not exist… only ttyX and ttyTHSX… (where X is an integer)

at /lib/modules/4.4.38-jetsonbot-v0.1/kernel/drivers/usb/ does not contain any *.ko file related to ACM but according to some threads it should? (infact, all it contains is /serial/ch341.ko which was included in the kernel config).

Now when i run “dmesg | tail -20” and plug in the FOCBOX via USB I get:

[...] usb 1-2.3.4: new low-speed USB device number 6 using xhci-tegra
[...] usb 1-2.3.4: device descriptor read/64, error -32
[...] usb 1-2.3.4: device descriptor read/64, error -32
[...] usb 1-2.3.4: new low-speed USB device number 7 using xhci-tegra
[...] usb 1-2.3.4: device descriptor read/64, error -32
[...] usb 1-2.3.4: device descriptor read/64, error -32
[...] usb 1-2.3.4: new low-speed USB device number 8 using xhci-tegra
[...] usb 1-2.3.4: Device not responding to setup address.
[...] usb 1-2.3.4: Device not responding to setup address.
[...] usb 1-2.3.4: Device not accepting address 8, error -71
[...] usb 1-2.3.4: new low-speed USB device number 9 using xhci-tegra
[...] usb 1-2.3.4: Device not responding to setup address.
[...] usb 1-2.3.4: Device not responding to setup address.
[...] usb 1-2.3.4: Device not accepting address 9, error -71
[...] usb 1-2.3-port4: unable to enumerate USB device

Any suggestions appreciated! Thankyou!

FYI L4T28.1, JetsonTX2, Ubuntu 16.04 LTS

EDIT: removed mistaken use of the squiggle ~

The VESC must be powered on with the chassis battery to be detected.

The

ls ~/dev/ttyACM*

should be

ls /dev/ttyACM*

The preceding ~ means to look in the in home directory, the dev files are closer to the main root directory
If you:

$ lsusb

you should see STMicroelectronics STM32F407 as one of the entries, which represents the VESC.

Hi Kangalow,

Woops, rookie mistake on my part using the ~ incorrectly… I’ve updated my initial post.

the command:

ls /dev/ttyACM*

returns “No such file or directory”

ls /dev/tty*

returns tty0-63, ttyS0-3, and ttyTHS1-3.

I’m using a 3S LiPo battery currently, 11.1V (I believe FOCBOX is rated to 8V). The FOCBOX has a Blue LED for Power, and a Green LED for Signal, the Fault LED is Off. I’m connecting the FOCBOX via USB, with the signal and motor connectors disconnected.

lsusb

Does not change at all, the device does not appear when I plug it in. I just get the info shown in the initial post above.

I believe I should be pursuing an issue with the ACM? rather than an issue with the FOCBOX?, but I lack linux experience to know. I’ll keep looking into it.

How can I tell that the ACM module was successfully included by the kernel?

You error message indicates that the ACM module is built in to the kernel:

“rmmod cdc_acm” returns “ERROR: Module cdc_acm is builtin”

If the device does not show up in lsusb, then it then it will not show up as /dev/ttyACM*.

If present, the device should show up with 0483:5740 STMicroelectronics STM32F407

My guess is that you have a bad connection between the device and the usb plug. If this is one of the new generation FOCBOX, the wall of the case is slightly thicker, which may cause the microusb plug to have connection issues. You can try using a different microusb cable (the Jetson TX2 programming cable seems to work ok most of the time) to see if that’s the issue.

Ok, if thats the case then it must be an issue with the FOCBOX itself.

I’ve tried removing the cover to ensure a solid USB connection, as well as multiple usb cables and i’ve tried Win7 with the Windows BLDC tool, as well as on the JetsonTX2, but to no avail… neither OS will see the FOCBOX.

It’s brand-new, I’ll contact Enertion directly for support.

Thanks for your help Kangalow.