Apalis iMX8 Fan Control Linux

We are using IXORA V1.2A and Apalis iMX8, trying to enable the Fan (Carrier Board accessories kit) connected to X6
I cannot export the FAN control GPIO LSIO.GPIO03.IO28 >> 412
receive write error: Device or resource busy

I build the image following Build a Reference Image with Yocto Project/OpenEmbedded

How can I switch on the FAN ?


Ixora’s fan is switching ON automatically when temperature reach a certain point. If you wish to control it “manually” you need to modify a Device tree by removing this node and adding &pinctrl_gpio8 to the pinctrl-0 group.

hello alex,
thanks for the help, I was able to export the gpio, but when I set it High the pin on the board (X27.20) still 0 volt
and the fan is not working, am I controlling it right?
echo 412 > /sys/class/gpio/export
echo high > /sys/class/gpio/gpio412/direction

Could you please specify BSP version you are using?
The GPIO SysFS is deprecated and we recommend to use a libgpiod.

Please also double check your Device Tree modification and check if other available GPIO line(s) behave(s) as expected.

BSP version 5.4.129

I used libgpiod gpioset on different GPIO, MXM3_13/GPIO6 its working properly

ٍSo the issue is only in LSIO.GPIO03.IO28
I attached modified device tree files imx8-apalis-ixora-v1.2.dtsi (9.0 KB)
imx8-apalis-v1.1.dtsi (44.4 KB)

I just tested gpioset using IXORA V1.1A
and I can control LSIO.GPIO03.IO28 On/Off (control Fan)
but not with IORA V1.2A

Both Ixora boards (v1.1A and v1.2A) have the same fan circuits. Looks like it’s a HW issue. Are you using same fan? Can you check a voltage on pin2 of X6 while manipulating GPIO8 (LSIO.GPIO03.IO28) ?
You can try to shorten R36 pins pins by tweezers. If HW works OK the fan should start.