Gpio voltage control weird

When i upgrade my jetson orin nano to 6.2 super mode, i want to control gpio-466 (PX.04 ) as the past time using jetpack 5.14,i found /sys/class/gpio/ folder had removed,so i have to using gpiod to control the pin of uart0_tx.


During the execution of the above command, I used an oscilloscope to measure the pin and found that it was at a high level.But when gpioset command exec finished, gpioget command exec get value 0.

During the execution of this command, a strange thing is that the pin still outputs a high level, and only half of the voltage output by the previous command.
according to the link of 40hdr - SPI1 gpio padctl register bit[10] effect by gpiod tools in JP6 - #20 by KevinFFF, i got a Image, copy to the /boot/ folder, but there hasn’t been any change.

whether i need to configure PX.04 as Output/Drive 0 in pinmux spreadsheet?

Hi alive,

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

Do you mean that there’s still the issue after you’ve applied the change?

Have you configured the pinmux for PX.04 before use?

Please share the result of the following command when you hit the issue.

$ sudo busybox devmem 0x0243d050
  1. custom board,it work properly in jetpack5.14
  2. yes,the voltage still wired
  3. not configured the pinmux for px.04 before use
  4. the command exec result

The bit 10 should not be set if you want to use it as GPIO.
It seems you didn’t apply the change correctly.
Or it may be caused from that you did’t configure the pinmux for PX.04 before use.

Please configure it as following in pinmux spreadsheet.
image

Thank you very much for your help. After implementing the information you provided, I also need to copy the previously modified Image to the development board so that I can see the square wave through the oscilloscope.

#!/bin/bash

CHIP="gpiochip0"
LINE=118

gpiodetect >/dev/null 2>&1 || { echo "libgpiod tools not found. Please install with: sudo apt install gpiod"; exit 1; }

echo "Toggling $CHIP line $LINE every 0.5s. Press Ctrl+C to stop."

while true; do
    gpioset $CHIP $LINE=1
    sleep 0.5
    gpioset $CHIP $LINE=0
    sleep 0.5
done