I’m currently testing RS-232 communication on a custom Jetson carrier board running JetPack 5.1.2. However, I am not observing any voltage change on the TX line (SODIMM Pin 99) when sending data. Below are the details of my environment and what I’ve tried so far:
■ Environment
JetPack version: 5.1.2
Board: Custom carrier board with Jetson module
Pin in use: SODIMM Pin 99 (UART0_TXD)
■ What I’ve done
Added user to dialout group:
sudo adduser $USER dialout
Disabled nvgetty:
sudo systemctl disable nvgetty.service
Verified active UARTs with:
sudo dmesg | grep -i tty
→ Confirmed ttyTHS0 is listed and corresponds to UART0
Sent test string to UART0 TX:
echo "hello" > /dev/ttyTHS0
Confirmed that GPIO level on Pin 99 can be toggled using gpioset (so the pin is physically responsive)
■ Pinmux Configuration
The pinmux settings for UART0_TXD and UART0_RXD are default (UB3_TXD, UB3_RXD), as shown in the attached screenshot and pinmux.dtsi. The UART0 function appears to be correctly assigned.
■ Question
Is there any additional step required in JetPack 5.1.2 or pinmux configuration to fully enable UART0 for RS-232 level communication?
Do I need to check anything else in the device tree or kernel configuration?
Sorry for the confusion — I’m not trying to use the serial interface from the M.2 Key E port.
My goal is to use the UART for external RS-232 communication with another device, not for internal debugging or M.2.
Instead of a loopback test, I am observing the TX pin (SODIMM Pin 99) with an oscilloscope to confirm whether there is any voltage change during transmission.
I have configured the pinmux settings using the official spreadsheet tool as previously shown (UB3_TXD / UB3_RXD), but I’m wondering if this alone is not sufficient.
Should I also enable a specific serial node (e.g. serial@3100000 or serial@3110000) in the device tree explicitly for this to work?
The serial interface and the mapping may differ due to the releases.
You can refer to 9.7 Universal Asynchronous Receiver/Transmitter(UART) in official Technical Reference Manual document for details, Or https://elinux.org/Jetson/L4T/peripheral/#Mapping_3 for the mappings.
We would suggest also checking the dmesg and device tree for the current status.