Jetson Orin NX (Seeed A603) header UART not receiving PX4 TELEM2 — USB-TTL (3-wire) works, onboard UART silent

Setup

  • Flight controller: CubePilot Cube Orange Plus

  • Autopilot: PX4 v1.16.0

  • Companion: Jetson Orin NX 16 GB on Seeed reComputer A603

  • OS/SDK: JetPack 6.2 (Ubuntu 22.04)

  • Tools available: QGroundControl, MAVProxy, mavlink-router, PyMAVLink, Micro XRCE-DDS Agent v2.4.2

  • Wiring (A603 W8 ↔ TELEM2, 3.3 V TTL):

    • A603 pin 8 (UART1_TX) → TELEM2 pin 3 (RX)

    • A603 pin 10 (UART1_RX) ← TELEM2 pin 2 (TX)

    • GND ↔ GND (TELEM2 pin 6)

    • (Also tried RTS/CTS on A603 pin 11 ↔ TELEM2 CTS and A603 pin 36 ↔ TELEM2 RTS)

Goal / Modes

  • MAVLink over TELEM2 → Jetson

    • MAV_1_CONFIG=TELEM2, SER_TEL2_BAUD=230400 and 921600, MAV_1_MODE=Onboard, UXRCE_DDS_CFG=Disabled
  • uXRCE-DDS over TELEM2 → Jetson

    • MAV_1_CONFIG=Disabled, UXRCE_DDS_CFG=TELEM2, same baud rates; Jetson runs MicroXRCEAgent serial -D <port> -b <baud>

What works (baseline)

  • Using a USB-to-TTL 3.3 V dongle on Cube TELEM2 (→ /dev/ttyUSB*), both MAVLink and uXRCE-DDS work at 230400 and 921600.

  • This working case uses only GND, TX, RX (no RTS/CTS).

What doesn’t work

  • Using the A603 40-pin header UART on the Jetson (expected /dev/ttyTHS1), I get no data.

  • Already disabled serial-getty@ttyTHS1.service and ModemManager.

  • Tried line settings with and without HW flow control, e.g.:

    stty -F /dev/ttyTHS1 230400 cs8 -cstopb -parenb -ixon -ixoff -crtscts
    stty -F /dev/ttyTHS1 921600 cs8 -cstopb -parenb -ixon -ixoff -crtscts
    
    
  • Raw reads show nothing; moving the exact same TELEM2 cable back to a USB-UART dongle works immediately.

Asking for help

  • What is the correct /dev/tty* mapping for the A603 W8 header UART on Orin NX + JetPack 6.2? Is it ttyTHS1 or another node?

  • Is there a known-good device-tree overlay or jetson-io recipe to enable that header UART (and RTS/CTS) on the A603?

  • Any known quirks at 921600 on this header that require flow control or specific termios settings on Orin NX?

  • Besides ModemManager/getty, are there other services on JP 6.2 that commonly grab THS UARTs?

  • If someone has Cube TELEM2 ↔ A603 header UART working, could you share which /dev/tty*, whether RTS/CTS is enabled, and the baud/flow-control settings that were stable?

Thanks in advance—happy to apply any suggested overlay/config and report back the exact working recipe.

I have seen problems like this with Jetson UART pins in the past. My workaround was to use an FTDI cable.