comm via UART

Hi there,

I am having grave difficulties getting the Jetson to communicate to an Arduino via UART connections. Is there any documentation, sample code someone can share?

Thanks heaps.

What have you tried? Have you checked that the voltage levels matches on both side?

I am using a level shifter from adafruit. So I am assuming that’s taken care of.

I can’t find any reference or documentation on configuring the Jetson side. I am again assuming I must use ttyTHS0 and have tried different comms utilities on Ubuntu to receive data on ttyTHS0 but no success yet.

one more thing. Does anyone know if I need to enable the pins on the Jetson side?

Which level shifter are you using? What pins exactly are you using on Jetson side? Is your Arduino’s pins 5v (i.e. what Arduino are you using)? Are you providing both the 1.8V and 5V to the level shifter?

There’s plenty of documentation for Jetson side here:
https://developer.nvidia.com/hardware-design-and-development

In the expansion board there are at least these:
J3A2 pin 65: UART2_RXD
J3A2 pin 68: UART2_TXD

According to the “Jetson TK1 Development Platform Pin Mux” sheet those pins are for GPS (I guess that’s just a generic UART) but together with the corresponding CTS/RTS pins. The HW might default to using HW flow control but I assume it’s enough to turn it off from user space without a need for any pinmux modifications?

Thank you for taking the time to answer. I am really stuck so any help you can give me is much appreciated.

Answering your questions:

I am using 8-channel Bi-directional Logic Level Converter - TXB0108 from https://www.adafruit.com/products/395

On the Jetson side I have tried two different pairs of pins on J3A2: 65&68 (TX1&RX1) as well as 41&44 (TX0&RX0).

My Arduino is 5v as it is Arduino Nano. And I am providing both 5V and 1.8V to the level shifter. Looking on the CRO, the level shifter is doing it’s job.

I think what I am missing is how to configure the pins inside Jetson from Ubuntu. I haven’t been able to find how the pinmux works either.

Basically, I have connected the TX&RX of my Arduino to RX&TX pins on the expansion board of Jetson (65&68 as well as 41&44) via the level shifter. I am sending a text from Arduino and am expecting to receive that on Jetson using the gtkterm opening ttyS0. But I am not seeing anything on the terminal.

Never mind. Updating to Grinch solved the problem.

I wonder what Grinch does differently to enable that…

Now can you use those pins?

Cross-posting is discouraged around here, but this may have what you’re looking for: http://elinux.org/Jetson/Tutorials/Communicate_To_Arduino#Serial_UART_communication