Nvidia Orin NX Malformed UART Messages


I am having a problem with my Nvidia Orin NX system as well as my other Nvidia AGX Orin and AGX Xavier systems which are all running the latest version of Jetpack 5.1.3 [L4T 35.5.0]. This issue is very much related to this one posted about a year ago: Nvidia Orin Malformed UART Messages - Jetson & Embedded Systems / Jetson AGX Orin - NVIDIA Developer Forums and I still do not have a proper resolution for my problem.

We have invested in the Orin NX system recently and would like to get our application running on it, but the problem we are having is the messages we are expecting to receive from the UART (ttyTHS0) are corrupted or damaged on a seemingly random interval. I am seeing the starting or ending characters of the message either not being received or corrupted in my logs of the UART port. I have confirmed this is happening from the raw log of the UART port (cat /dev/ttyTHS0 > somefile.txt) and is happening completely independent of our program running on the Orin/Xavier systems. We have tested the same board producing the messages with our older Xavier systems running Ubuntu 18.04 (Jetpack 4.6.X) and there is no problem reading the UART.

From my previous post it seemed that there was a driver issue and it would be solved by the next patch, but in our testing it seems that the issue still persists for us. Is there any advise that can be given, or any solution that can be proposed for this item? All devices have been flashed with their respective Jetpack versions through the use of the sdkmanager application provided by Nvidia, with the builds provided from sdkmanager as well.

I have included the boot log for my Nvidia Orin NX system to hopefully save some time.
orin_nx_boot.txt (92.8 KB)

Thank you,

Hi noah.g,

Are you using the devkit or custom board for Orin NX?

The previous fix is about USB firmware. It seems your current issue is for UART interface(/dev/ttyTHS0).

What’s your application? Could you share it with us and also the detailed reproduce steps to verify it locally?

Is the issue specific to your application or it could be also reproduced with loopback test?

Do you enable HW flow control in your case?

I am using the Yahboom devkit for the Orin NX. I believe it is a copy of the original devkit carrier board. The exact product we are using is this: NVIDIA Jetson Orin NX Developer Kit for Deep Learning AI Recognition (yahboom.net)

I am not allowed to share the application externally, but I have confirmed that it still happens without the application running. I can simply read the /dev/ttyTHS0 file output (cat /dev/ttyTHS0) and I see the error showing up.

In our case, hardware flow control is not enabled.

It seems you are using the custom carrier board but it is very similar to our official devkit.

It’s okay w/o sharing the application.
What do you connect on /dev/ttyTHS0? (i.e. where is the data coming from?)
Please share the reproduce steps for us to verify it locally.