Jetson NX GPIO Connection to RoboClaw Motor Controllers

I have built the NASA JPL Open Source Rover project and tested everything working on a Raspberry Pi. I have since swapped over to a Jetson NX and everything seems to be working including my added sensors except my packetized serial connection to the RoboClaw motor controllers. The code is setup to look for /dev/serial0 but that is not on this device and I believe it is a link from /dev/ttyS0 on the RPi. I have started running basic commands to try and see which device the RoboClaws might be attached to and I am having very little luck. I did add my user to the dialout group but that did not change anything. I feel like I am missing something pretty simple, but I appreciate any help I can get.

The RoboClaw documentation is here with the Packetized Serial information on page 57.

The specific code from JPL that is being used is here. For my testing, I am basically trying to run the following commands in a Python terminal:

rc = Roboclaw("/dev/ttyS0",115200)
rc.Open()
rc.ReadVersion()

I have tried with multiple /dev/ttyS* and /dev/ttyTHS* devices.

hello astronav,

tegra serial driver register uart devices as ttyTHS* during kernel initial stage.
you may check kernel messages for details,
for example,

$ dmesg | grep THS
[    1.533725] 3100000.serial: ttyTHS0 at MMIO 0x3100000 (irq = 47, base_baud = 0) is a TEGRA_UART
[    1.535029] 3110000.serial: ttyTHS1 at MMIO 0x3110000 (irq = 48, base_baud = 0) is a TEGRA_UART
[    1.535982] 3140000.serial: ttyTHS4 at MMIO 0x3140000 (irq = 49, base_baud = 0) is a TEGRA_UART

you may access L4T sources via download center, check below device tree for definitions.
thanks

$L4T_Sources/r32.4.3/Linux_for_Tegra/source/public/hardware/nvidia/soc/t19x/kernel-dts/tegra194-soc/tegra194-soc-uart.dtsi

I do see basically exactly that, but am unsure what to do with this information.

[    1.630530] 3100000.serial: ttyTHS0 at MMIO 0x3100000 (irq = 47, base_baud = 0) is a TEGRA_UART
[    1.631576] 3110000.serial: ttyTHS1 at MMIO 0x3110000 (irq = 48, base_baud = 0) is a TEGRA_UART
[    1.632367] 3140000.serial: ttyTHS4 at MMIO 0x3140000 (irq = 49, base_baud = 0) is a TEGRA_UART

hello astronav,

there should be an additional message shown if you register devices to a serial console.
you may refer to NX GPIO Header J12 pinout, for wiring your device with 40-pin header.
please also refer to Configuring the 40-Pin Expansion Header session for the pin configuration.
thanks

Just getting back to working on this. I don’t see any additional messages from dmesg. I am trying to connect to the UART pins (8,10) and have also connected a ground. I am pretty sure the wiring is done fine (no power, GND to GND, TX to RX, RX to TX) and the Roboclaw motor is configured for packetized serial with an address of 0x80 (or 128) and baud rate of 115200. From my reading, the UART pins are set and do not need to be and can’t be configured. I tried to reach out to Basic Micro, but they have no experience with the Jetson though I am sure someone has used it before. Any additional thoughts would be welcome.