Xavier nx cannot boot when receiving with UART0

We used Xavier NX’s UART0 and usb2-0 to connect to the drone and found that the system would not activate,
The UART of the drone keeps sending data, and according to the log of the debugging serial port, it seems to enter the option screen of UEFI.
Attached are the debug serial port logs.
enbo-boot-error.txt (1017.6 KB)

usb2-0 is in device mode.
In the Jetson UEFI firmware phase, UART0, also known as /dev/ttyTHS1, receives data that affects the system boot. How can I solve it?

At present, it is necessary to make UART0 not receive data before the system starts, start to accept data after the system starts, or prevent uart0 from getting UEFI interactive instructions.
Is there a good solution?

Hi chen.xi,

Are you using the devkit or custom board for Xavier NX?
What’s your Jetpack version in use?

Do you want to disable the UEFI menu during boot up to prevent incoming UART interrupt the boot up?
If so, you could refer to the following instruction for this use case.
Close or hide UEFI menu - #3 by KevinFFF

We have tested on both devkit and custom board, and this happens in both cases. Version L4T35.4.1 was used.


I have only modified part of the screenshot, now it seems that the data of the serial port will not affect the system startup.

We will continue to test to see if there are any other conditions that affect startup.

The system is stuck on the UEFI screen and does not start - Jetson & Embedded Systems / Jetson AGX Orin - NVIDIA Developer Forums

After making the changes, I encountered the same problem as in the above post.

Attached is the log information to be closed.
boot_error.txt (111.6 KB)

edkrepo clone nvidia-uefi-r35.4.1 NVIDIA-Platforms r35.4.1-updates

I used this command to get UEFI source code
look forward to your reply.

Could you help to check if the following thread help for your case?
ASSERT TerminalConIn.c(2078): ((BOOLEAN)(0==1)) - #44 by WayneWWW


mean this?

Yes, you could also apply the following patch for flash.sh.

 mkfilesoft mtsmcefile    "${MTSMCEFILE}"	 "";
 mkfilesoft pscbl1file   "${PSCBL1FILE}"	 "";
 mkfilesoft tscfwfile    "${TSECFW}"	 "";
-mkfilesoft tbcdtbfile	"${TBCDTB_FILE}" "${DTB_DIR}/${DTB_FILE}";
-if [ "${CHIPID}" = "0x23" ]; then
+if [[ ( "${CHIPID}" = "0x19" || "${CHIPID}" = "0x23" ) && ( -f "${DTB_DIR}/${TBCDTB_FILE}" ) ]]; then
 mkfilesoft tbcdtbfile	"${TBCDTB_FILE}" "${DTB_DIR}/${TBCDTB_FILE}";
+else
+mkfilesoft tbcdtbfile	"${TBCDTB_FILE}" "${DTB_DIR}/${DTB_FILE}";
 fi;
 if [[ ("${target_partname}" == "" || "${target_partname}" == "recovery-dtb" || -n "${with_systemimg}" ) \
 	&& "${bup_blob}" -eq 0 ]]; then

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.