DJTobias / Cherry-Autonomous-Racecar

Implementation of the CNN from End to End Learning for Self-Driving Cars on a Nvidia Jetson TX1 using Tensorflow and ROS
MIT License
322 stars 105 forks source link

How to set up Teeny on Jetson TX1 #2

Closed datlife closed 7 years ago

datlife commented 7 years ago

Dear Tobias,

I wonder how you could install Teensy on Jetson TX1. I am trying to do the same, however, Teensy 3.2 does not support AARCH 64 architecture yet..

Thanks!!

VisualMicro commented 7 years ago

I think you install Teensy software on the Teensy then both the gpu and the teensy communicate using Serial tx/rx

datlife commented 7 years ago

Good point. Thank you @VisualMacro! I will look into this option.

I previously set up Teensy communicate via a USB port

DJTobias commented 7 years ago

Hey Dat,

A while back I could never get the Arduino IDE to work on the Jetson TX1, so I decided to upload the .ino files from the host computer instead.

datlife commented 7 years ago

Thanks Tobias. I wrote my Teensy code on a Window machine, too.

However, my issue is that the Jetson TX1 does not recognize Teensy as /dev/ttyACM* or /dev/ttyUSB* when I plug it in.

Did you install any extra packages or drivers for Teensy to work on TX1

DJTobias commented 7 years ago

I see,

I don't think I install anything else to get it to work, maybe try this on the TX1 https://www.arduino.cc/en/Guide/Linux#toc6

Try attaching a regular Arduino to see if can recognize it.
It also might be a USB hub issue I am not sure what you are using.

I am assuming you can see the teensy on your host computer which is windows based from your post above, but have you tried it on a version of Ubuntu on your host to see if it can read the port?

And leave the teensy plugged in and restart the TX1 then cd /dev ls to see if it shows up then.

datlife commented 7 years ago

Finally, it worked!

The issue is because someone disabled CONFIG_USB_ACM kernel module on the NVIDIA Jetson( I actually used NVIDA Jetson TX2, Ubuntu 16.04, kernel-4-4.15)

Steps to resolve the issue:

  1. Follow this tutorial: http://www.jetsonhacks.com/2017/03/25/build-kernel-and-modules-nvidia-jetson-tx2/
  2. Before install kernel. Run this command
    sudo sed -i 's/.*CONFIG_USB_ACM.*/CONFIG_USB_ACM=y/' /usr/src/kernel/kernel-4.4/.config
  3. Follow the rest of the tutorial

At the end dmesg should show this when plugging in the Teensy

[  125.602321] usb 1-2.4: USB disconnect, device number 5
[  166.518422] usb 1-2.2: new full-speed USB device number 6 using xhci-tegra
[  166.627754] usb 1-2.2: New USB device found, idVendor=16c0, idProduct=0483
[  166.634715] usb 1-2.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[  166.642213] usb 1-2.2: Product: USB Serial
[  166.646492] usb 1-2.2: Manufacturer: Teensyduino
[  166.651192] usb 1-2.2: SerialNumber: 2481500
**[  166.657388] cdc_acm 1-2.2:1.0: ttyACM0: USB ACM device**