Hi,
I know this may not be directly related to the NV platform, but I’m looking for some guidance. I want to control GPIO from user space and have been following the instructions to install gpiod
from this link: GPIO Support — NVIDIA IGX Orin - User Guide. However, I’m unable to control the GPIO levels using the gpioset
command.
I’ve come across a discussion indicating that updating to the latest version of gpiod
can resolve this issue: Cannot Control GPIOs for JP61 - #16 by JerryChang. It mentions installing the latest gpiod can solve my problem. So, I attempted to follow the instructions listed in this discussion: NVIDIA Jetson Linux 36.4 (JetPack 6.1) GPIO控制方法变更-机载电脑-Amovlab阿木实验室-让机器人研发更高效! -.
I didn’t encounter any error messages during installation, and I ensured that the line export LD_LIBRARY_PATH=/home/nvidia/Downloads/libgpiod/lib/.libs:$LD_LIBRARY_PATH
is present in the .bashrc
file. However, when I run the command gpioinfo --version
, I receive the error: /usr/bin/gpioinfo: No such file or directory
.
My question is: how can I successfully install the latest version of gpiod
?
Thanks in advance.
Hi chiaueng,
Are you using the devkit or custom board for AGX Orin?
What’s the Jetpack version in use?
Which GPIO would you like to control?
Have you configured the pinmux before using it as GPIO/Output?
Please share the detailed steps about the steps/commands to configure/control GPIO.
Hi @KevinFFF ,
[Plaform] Jetson AGX Orin Developer Kit 64G + an adapter board to connect single imx219 camera
[SDK and source code pkg] JetPack 6.1 Jetson Linux Version 36.4
[adpater board]
I was trying to control GPIO 13, from Orin_Jetson_Series_Pinmux_Config_Template_2.0.xlsm, i can see it’s GPIO3 PAC.02
-
Since it’s already default as gpio pin, so i don’t modify its pinmux attribute.
-
from gpioinfo, i can see PAC.02 is gpiochip0 line 140.
-
then i input the gpio command as below, but cannot change its value.

I tried to use v2.1.3. Then I see it can work with the following steps :
- gpioset -c 0 140=1
- ctrl+c
- gpioget -a --numeric -c /dev/gpiochip0 140 -->the value becomes 1
but it’s strange that i need to do the step2 (ctrl+c), i also add -z option but still still not work for my use case.
Is there a way to leave the command after setting it ?
I treid to use the parameter of “–hold-period”, it seems it can work now.
Please not gpioget
command may configure the pin as Input.
You can also specify --mode=wait
to keep its state.
Or you can refer to Jetson/L4T/peripheral/ - eLinux.org to know how we verify GPIO controlling.