Using my Rock 5B I’ve noticed an issue trying to set pull-up or pull-down on any of the GPIO’s. I’ve been using Python3 with gpiod, however reverted to command-line to rule out any Python or library issues. Here is how I’ve been testing:
-> verify that I can set the pin high and low
gpioset <chip> <line>=0
gpioset <chip> <line>=1
-> test the pull-up/pull-down
gpiomon -B pull-up <chip> <line>
gpiomon -B pull-down <chip> <line>
gpiomon -B disable <chip> <line>
Setting the bias to pull-up or pull-down doesn’t produce an error, it just doesn’t change the level of the line. I ran the same tests on other SBC’s that I had immmediate access to:
Orange Pi 5 (RK3588S) - Same issue, pull-up/down doesn’t work
Raspberry Pi 4B - Works as expected
Starfive Visionfive 2 (RISC-V) - Works as expected
Bigtreetech CB1 (Allwinner H616) - Works as expected
The only reference to internal pull-up/down resistors I’ve found is in a Rockchip RK3588 datasheet (https://www.cnx-software.com/pdf/Rockchip RK3588 Datasheet V0.1-20210727.pdf). I haven’t found any other reference to it on the Radxa pages or Orange Pi pages. Does anyone know if the internal pull-up/down resistors are supported? I’m not sure if this just isn’t implemented on the Rock 5B or if this is a bug that needs to get fixed.
Thanks!