Xavier NX GPIO: what is internal pulldown on GPIO? What is suggested pull up?


We have connected “Respeaker 2-Mic Pi HAT Board” to the 40-pin header on Xavier NX.

The Respeaker board has a button functionality, which we want to use with the Xavier GPIO. This is the button circuit on Respeaker board.
As can be seen above, there is a GPIO pulled up to 3.3V though 10K resistor. Button press will bring the GPIO down to ground.

The above GPIO pin is available on Pin-11 of 40-pin header and maps to gpio428 on Xavier NX. The GPIO number mentioned here is in following context
echo 428 > /sys/class/gpio/export

The problem which we are facing is that, as soon as connection between “Xavier NX GPIO” and above GPIO is established, the voltage level on the signal drops from 3.3 V to 1.0 V. At 1.0 V, the Xavier NX detects this signal as a “0” instead of “1”. Hence we can’t use the button funcationality with current design. We would want the voltage level to at least remain high enough, so that Xavier can interpret as a “1”.

We also tried to use the GPIO on Pin-32 and Pin-33 of the 40-Pin header, which will map to gpio424 and gpio393. But we observed the identical problem, i.e. voltage level drops to 1.0 V.

Can you suggest why we are observing the above behavior? Is there a way to improve this behavior?

We use this DTS file to configure the pin config on 40-pin header. Is there something we can add to our DTS file to get the desired behavior on GPIO pin?

Best Regards,

moving this topic to Xavier NX, thanks

hello sinkunal,

may I know what’s the configured pin direction?

please access pinmux spreadsheets for reference, there’s Pull Strength to indicate the default pin configuration. i.e. 100k pull-down resistor.
please check GPIO input... stuck / not resetting? - #30 by Trumany for the discussion of pd strength,
you may also check 40-Pin Expansion Header GPIO Usage Considerations for reference,

1 Like