I am playing around with the various GPIOs on J21 using the Jetson GPIO Python library. My board is running JetPack 4.4.1.
I have two scripts, a GPIO output script and a GPIO input script. The output script simply changes the GPIO level once every second or so. The input script simply prints something if it sees the level change. I then use a jumper wire to connect two pins and let the scripts know what pins are the input/output.
If I use pin 37 as an input, I do not ever see the level change. I am able to get my test to work on other pins however (as an example, pin 16 works fine as an input pin). Is there anything specific about pin 37 that I should be made aware of? I tried changing the GPIO from 1.8V to 3.3V (via J24) and that doesn’t seem to have helped.
let’s double confirm you’re using GPIO26 according to NVIDIA Jetson TX2 J21 Header Pinout.
it’s GPIO3_PI.04, which by default configure as GPIO pin, Pin Direction setting as input.
Yes, that’s the pin I am trying to receive input on. I have checked the pinmux and device tree and nothing sticks out to me. It appears the pin is configured properly. That said, I am able to reproduce the issue on a couple of TX2s.
I am also having the same issue with pin 33, but pin 35 works fine. It seems like both pin 33 and pin 37 come from the same set of signals (GPIO_PQX), where the X can be either 4 (pin 37) or 5 (pin 33).
pin 37 (aka GPIO 388) is not claimed by the kernel and is not found in the output. This is something I checked originally as well.
The most telling thing to me so far is that pin 33 also doesn’t work and also comes from the same bank of GPIOs (see my previous response).
gpiochip4: GPIOs 216-223, parent: platform/max77620-gpio, max77620-gpio, can sleep:
gpio-216 ( |external-connection:) in hi
gpio-221 ( |spmic_gpio_input ) in lo
gpio-222 ( |spmic_gpio_input ) in hi
gpiochip3: GPIOs 224-239, parent: i2c/0-0077, tca9539, can sleep:
gpio-227 ( |en-vdd-sys ) out lo
gpio-228 ( |lcd-bias-rails ) out hi
gpio-233 ( |en-vdd-cam ) out lo
gpio-234 ( |en-vdd-cam-1v2 ) out lo
gpiochip2: GPIOs 240-255, parent: i2c/0-0074, tca9539, can sleep:
gpio-240 ( |vdd-usb2-5v ) out lo
gpio-241 ( |en-vdd-ts-1v8 ) out hi
gpio-242 ( |en-vdd-ts-hv-3v3 ) out hi
gpio-243 ( |en-vdd-disp-3v3 ) out lo
gpio-244 ( |vdd-fan ) out hi
gpio-247 ( |en-mdm-pwr-3v7 ) out lo
gpio-249 ( |en-vdd-disp-1v8 ) out lo
gpio-250 ( |dis-vdd-1v2 ) out hi
gpio-252 ( |vdd-hdmi ) out hi
gpio-253 ( |en-vdd-cam-hv-2v8 ) out lo
gpiochip1: GPIOs 256-319, parent: platform/c2f0000.gpio, tegra-gpio-aon:
gpio-272 ( |temp-alert ) in hi
gpio-312 ( |Power ) in hi
gpio-313 ( |Volume Up ) in hi
gpio-314 ( |Volume Down ) in hi
gpio-315 ( |wifi-wake-ap ) in lo
gpio-316 ( |bt_host_wake ) in lo
gpiochip0: GPIOs 320-511, parent: platform/2200000.gpio, tegra-gpio:
gpio-381 ( |reset_gpio ) out lo
gpio-412 ( |vdd-usb0-5v ) out lo
gpio-413 ( |vdd-usb1-5v ) out lo
gpio-420 ( |eqos_phy_reset ) out hi
gpio-424 ( |wlan_pwr ) out hi
gpio-426 ( |camera-control-outpu) out lo
gpio-441 ( |hdmi2.0_hpd ) in lo
gpio-444 ( |wp ) in hi
gpio-445 ( |cd ) in hi
gpio-446 ( |en-vdd-sd ) out lo
gpio-456 ( |camera-control-outpu) out lo
gpio-457 ( |camera-control-outpu) out lo
gpio-461 ( |camera-control-outpu) out lo
gpio-479 ( |external-connection:) in hi
gpio-484 ( |bt_ext_wake ) out hi