It seems that I have an issue with my Jetson Orin Nano Developer Kit (8GB), which I have diagnosed through a series of systematic tests. The issue appears to be a defect affecting multiple GPIO pins, rendering them unusable.
Problem Description
I am unable to use any of the general-purpose input/output (GPIO) pins on my Jetson board. When configured as an input with an internal pull-up resistor, the pins consistently report a LOW (or “Grounded”) state. This is incorrect, as they should be HIGH when no connection to ground is present.
Test Results and Findings
To isolate the cause, I performed the following tests. All tests were conducted with the board removed from its case and all cables disconnected from the GPIO headers to rule out any external factors. The results of these tests were consistent across all GPIO pins I examined (including pins 7, 11, 13, 15, and 29).
Initial State Test: After a clean boot with no GPIO cables connected, a Python script using the Jetson.GPIO library continuously reports a LOW state. This indicates that the pins are stuck in a grounded state from the moment the board powers on.
Multimeter Resistance Test (Power Off): I used a multimeter to measure the resistance between a GPIO pin (e.g., pin 7) and a GND pin (e.g., pin 6). The measurement was infinite (∞Ω), as expected, confirming there were no external short circuits between the pins when the board was powered down. This ruled out issues with my cables or breadboard.
Multimeter Resistance Test (Power On): With the Jetson powered on and the script running, I measured the resistance between the same two pins. The multimeter reported a very low resistance of approximately 17.3 Ω. This measurement is a clear indication of an internal short circuit to ground on the board itself.
Multimeter Intervention Test: I noticed that after the multimeter was connected and measured the resistance, the GPIO pin’s status would immediately switch to HIGH and remain there, even after the probes were removed. This temporary “fix” suggests that the small current from the multimeter was enough to break the unstable, grounded state of the pins. However, reconnecting a wire between the GPIO pin and a GND pin would revert the status back to LOW, where it would become stuck again.
this is the script i have used to see the status:
import Jetson.GPIO as GPIO import time GPIO.setmode(GPIO.BOARD) PIN = 7 GPIO.setup(PIN, GPIO.IN, pull_up_down=GPIO.PUD_UP) try: while True: state = GPIO.input(PIN) print(“INGEDRUKT” if state == GPIO.LOW else “LOSGELATEN”) time.sleep(0.2) except KeyboardInterrupt: # Voer GPIO.cleanup() uit bij het afsluiten om de pinnen te resetten GPIO.cleanup()
is there anything i should try or do before contacting nvidia ?
Please also try running the following command to check its state.
gpioinfo|grep “PAC.06” : line 144: “PAC.06” unused input active-high
gpioget gpiofind "PAC.06" : 0
Could you try configuring them as Output/Drive 1 in pinmux spreadsheet and check their default state?
when i try this: import Jetson.GPIO as GPIO import time pin = 7 GPIO.setmode(GPIO.BOARD) GPIO.setup(pin, GPIO.IN, pull_up_down=GPIO.PUD_UP) # Force Pull Up time.sleep(2) state = GPIO.input(pin) print(f"Pin {pin} input status: {‘HIGH’ if state else ‘LOW’}") GPIO.cleanup()
i get : Pin 7 input status: LOW
Ran: import Jetson.GPIO as GPIOimport time pin = 7 GPIO.setmode(GPIO.BOARD) GPIO.setup(pin, GPIO.OUT) GPIO.output(pin, GPIO.HIGH) time.sleep(5) state = GPIO.input(pin)print(f"Pin {pin} status: {‘HIGH’ if state else ‘LOW’}") GPIO.cleanup()
i am trying to connect a make-break contact between 2 pins (example a switch or non-power-provider relay). as long as there is contact i need a script to run (ffmpeg or tensorflow).
heavy machinery needs to give a signal to the jetson as long as it is powerd on so i can run a script. the heavy machinery can activate a make-break-contact using a relay, but cannot provide 3.3v