Hi everyone,
I’m facing an issue with UART1 on my Jetson setup and would appreciate any guidance.
Hardware
- Jetson Orin NX 16GB
- Waveshare Orin Nano/NX Base Board (40-pin GPIO header)
- JetPack 6.2.2
- Linux for Tegra (default kernel from JP 6.2.2)
UART Configuration
I’m using:
- GPIO Pin 8 → UARTA TX
- GPIO Pin 10 → UARTA RX
- Device:
/dev/ttyTHS1
The baud rate is configured correctly on both the sender and the Jetson.
Problem
Although UARTA is enabled, the received data on /dev/ttyTHS1 is corrupted or incomplete.
Symptoms:
- Only a few bytes are received correctly.
- Most packets are corrupted or missing.
- Data appears as random/garbled characters.
- Packet loss is observed.
I have verified that:
- Baud rate matches on both devices.
- TX/RX wiring is correct.
- GND is shared.
- The sender is working correctly (verified with another receiver).
- The same sender works with another Jetson board.
What I Have Checked
- UARTA is enabled using the Jetson Expansion Header Tool.
- Pins 8 and 10 are configured for UARTA.
/dev/ttyTHS1is present.- Serial console is not using
/dev/ttyTHS1. - Flow control is disabled.
- Multiple baud rates were tested.
Difference Between Working and Non-working Boards
Both systems use JetPack 6.2.2, but I noticed a difference in the Jetson Expansion Header Tool.
On the working Jetson, the pin configuration only shows the peripheral selection.
On the non-working Jetson, there are now three selectable options for these pins:
[*] unused
[ ] gpio
[*] uarta (8,10)
For UART CTS/RTS:
[*] unused
[ ] gpio
[ ] uarta-cts/rts (11,36)
The UART pins are configured as uarta, but UART communication is still corrupted.
Observation
This issue started after recent kernel/GPIO changes. I suspect there may have been changes to pinmux or GPIO configuration compared to earlier JetPack 6.2.2 images.
Has anyone observed similar behavior after updating the kernel or using newer JetPack 6.2.2 images?
Questions
- Has the pinmux configuration for UARTA changed in recent JetPack 6.2.2 releases?
- Is there any additional configuration required besides selecting UARTA in the Expansion Header Tool?
- Could this be related to recent GPIO/pinmux kernel changes?
- Are there any known issues with
/dev/ttyTHS1on JetPack 6.2.2? - Is there a way to verify that pins 8 and 10 are actually configured as UART at runtime?
Any suggestions would be greatly appreciated.
Thank you!