Fan does not work on RL9.1 for Raspberry Pi 4


Fan used is this Ice Tower, which worked normally on RL8 and 9.0.
Using RL9.1, the fan rotates for several seconds when powered on, then stops after successfully booted into the system.
For now, it can be solved by using config.txt in /boot, which RL for RPi does not include by default.
I tried putting the config.txt of Oracle Linux 9.1 for RPi 4 shown below and the fan works again:

# uncomment to overclock the arm. 700 MHz is the default.
[pi3]
kernel=u-boot.bin
# bcm2835 compatibility
dtoverlay=usb-bcm2835

[pi4]
kernel=u-boot.bin

[all]
#arm_freq=700
#core_freq=250
#sdram_freq=400
#over_voltage=0

# NOOBS Auto-generated Settings
#Force hotplug disabled to enable HDMI2 on RPi4
# hdmi_force_hotplug=1
config_hdmi_boost=4

# workaround firmware issue for rpi3
# u-boot doesn't work without this
enable_uart=1
arm_64bit=1

# bcm2835 compatibility
dtoverlay=vchiq-bcm2835
dtoverlay=pl011-bcm2835

From what I understand, it’s normal for a fan to either be low level or off when the processor isn’t being taxed. You may want to confirm, with the normal configuration (this means without changing files or creating ones that didn’t exist), that it will turn on when you begin doing CPU intensive tasks before having it turned on permanently.

Hi @jachaussloef , I just thought of something to add to this.

Your fan may not be running because the CPU frequency governor was changed to prevent overheating issues. You can tell your Raspberry Pi to try running with maximum performance by editing /etc/sysconfig/cpupower . Replace ondemand with performance in the 2 lines you see it in that file, and restart your Raspberry Pi.

This will cause your Pi processor to run at the full 1.5 Ghz if at all possible, and should make your fan start up if it’s working.

Let me know if that makes any difference - I too suspect your fan isn’t running because there’s not enough load on the system to warrant cooling. But I really can’t say, as I don’t have much experience with Rpi active cooling at all.

-Skip

Thanks for the reply skip!
I didn’t know if the CPU was using ondemand or schedutil, but I tried running CPU test (such as 7zip’s “7z b”) continuously and the CPU keeps running at 2.3GHz (yeah a little bit of overclocking :crazy_face:) and monitored the temperature. Thanks to this cooler, the temperature only reached 65 °C even without the fan rotating. During the whole testing, the fan did not rotate at all​:thinking:
I don’t know if there’s a built-in temperature control that starts the fan only the CPU temperature is over a certain threshold or not (I guess no) so for now I’d just use the config.txt from Oracle Linux for RPi to keep the fan rotating like other systems that do not have such temp control utilities. But I remembered previous versions of RL for RPi did not have the config.txt either yet the fan still could work normally.

Yeah I can confirm the fan does not rotate under any circumstance even all four cores are running 100% @ 2.3 GHz

Now I’m back using RPi again and can confirm that

enable_uart=1

should be in the config.txt to let the fan rotate.