How to use and setup GPIO (gpiod library) for Hummingboard Mate?

Hi everyone,

I’m trying to set up the mikrobus pinout configuration, but I can’t find how to set up this. I have found this page:

https://solidrun.atlassian.net/wiki/spaces/developer/pages/396197889/GPIO+Pins+Control+-+HummingBoard+Pulse+Mate+i.MX8M+Plus+SOM

And this (gpiod):

But on gpiod examples on python, I have to use a gpio chip parameter, but I don’t know what is that, I can’t find any documentation about this on solidrun web. How can i do this?

Thank you so much.

Following this guide (using Yocto Hardknott):

https://solidrun.atlassian.net/wiki/spaces/developer/pages/396197889/GPIO+Pins+Control+-+HummingBoard+Pulse+Mate+i.MX8M+Plus+SOM

It does nothing by pin 119. Configuring 141 pin I get this error:

root@imx8mpsolidrun:~# echo 141 > /sys/class/gpio/export
-sh: echo: write error: Device or resource busy
root@imx8mpsolidrun:~# echo 141 > /sys/class/gpio/unexport
-sh: echo: write error: Invalid argument

What have I to do for this works properly?

Due to board design changes the now mikrobus GPIO is allocated to the LEDs group which is why you are getting the error that the resource is busy. I will push patches to fix this oversight.

Thank you so much for your answer Jon.

With Debian all this works fine, this malfunction is only in Yocto system, is it normal?

It is possible the Debian kernel isn’t building or loading the leds module, which would allow the GPIOs to work properly. Regardless I will fix it properly in the device-tree.