Is that an rpi-update kernel? Custom Kernel?I am confident that my (or many others) 4GB has problems with the PWM hardware-wise.
Today I got a new 8GB model and the PMW works like it should.
I took the same SD card from the 4GB and the same fan and booted it. No problems whatsoever.
4GB model with no PWM:
rpi5_4gb_no_pwm.jpg
8GB model with PWM:
rpi5_8gb_pwm_working.jpg
I'm running 16k page size kernel on 4GB and 8GB and see no issues (and never seen any (apart from a bug in the PWM driver which got fixed after reporting)
8GB
Code:
pi@pi5-14th:~ $ uname -aLinux pi5-14th 6.6.22-v8-16k+ #1 SMP PREEMPT Thu Mar 21 17:22:22 CET 2024 aarch64 GNU/Linuxpi@pi5-14th:~ $ ls -l /sys/class/hwmon/total 0lrwxrwxrwx 1 root root 0 Jan 1 1970 hwmon0 -> ../../devices/virtual/thermal/thermal_zone0/hwmon0lrwxrwxrwx 1 root root 0 Apr 8 18:49 hwmon1 -> ../../devices/platform/axi/1000120000.pcie/1f000c8000.adc/hwmon/hwmon1lrwxrwxrwx 1 root root 0 Apr 8 18:49 hwmon2 -> ../../devices/platform/cooling_fan/hwmon/hwmon2lrwxrwxrwx 1 root root 0 Apr 8 18:49 hwmon3 -> ../../devices/platform/soc/soc:firmware/raspberrypi-hwmon/hwmon/hwmon3pi@pi5-14th:~ $ grep -s . /sys/class/thermal/thermal_zone*/* /sys/class/thermal/cooling_device*/*/sys/class/thermal/thermal_zone0/available_policies:step_wise /sys/class/thermal/thermal_zone0/cdev0_trip_point:1/sys/class/thermal/thermal_zone0/cdev0_weight:0/sys/class/thermal/thermal_zone0/cdev1_trip_point:2/sys/class/thermal/thermal_zone0/cdev1_weight:0/sys/class/thermal/thermal_zone0/cdev2_trip_point:3/sys/class/thermal/thermal_zone0/cdev2_weight:0/sys/class/thermal/thermal_zone0/cdev3_trip_point:4/sys/class/thermal/thermal_zone0/cdev3_weight:0/sys/class/thermal/thermal_zone0/cdev4_trip_point:0/sys/class/thermal/thermal_zone0/cdev4_weight:0/sys/class/thermal/thermal_zone0/integral_cutoff:0/sys/class/thermal/thermal_zone0/k_d:0/sys/class/thermal/thermal_zone0/k_i:0/sys/class/thermal/thermal_zone0/k_po:0/sys/class/thermal/thermal_zone0/k_pu:0/sys/class/thermal/thermal_zone0/mode:enabled/sys/class/thermal/thermal_zone0/offset:450000/sys/class/thermal/thermal_zone0/policy:step_wise/sys/class/thermal/thermal_zone0/slope:-550/sys/class/thermal/thermal_zone0/sustainable_power:0/sys/class/thermal/thermal_zone0/temp:36400/sys/class/thermal/thermal_zone0/trip_point_0_hyst:0/sys/class/thermal/thermal_zone0/trip_point_0_temp:110000/sys/class/thermal/thermal_zone0/trip_point_0_type:critical/sys/class/thermal/thermal_zone0/trip_point_1_hyst:2000/sys/class/thermal/thermal_zone0/trip_point_1_temp:36000/sys/class/thermal/thermal_zone0/trip_point_1_type:active/sys/class/thermal/thermal_zone0/trip_point_2_hyst:3000/sys/class/thermal/thermal_zone0/trip_point_2_temp:40000/sys/class/thermal/thermal_zone0/trip_point_2_type:active/sys/class/thermal/thermal_zone0/trip_point_3_hyst:4000/sys/class/thermal/thermal_zone0/trip_point_3_temp:52000/sys/class/thermal/thermal_zone0/trip_point_3_type:active/sys/class/thermal/thermal_zone0/trip_point_4_hyst:5000/sys/class/thermal/thermal_zone0/trip_point_4_temp:58000/sys/class/thermal/thermal_zone0/trip_point_4_type:active/sys/class/thermal/thermal_zone0/type:cpu-thermal/sys/class/thermal/cooling_device0/cur_state:1/sys/class/thermal/cooling_device0/max_state:4/sys/class/thermal/cooling_device0/type:pwm-fanpi@pi5-14th:~ $ sudo cat /sys/class/hwmon/hwmon2/pwm1150Code:
pi@book13th:~ $ uname -aLinux book13th 6.6.22-v8-16k+ #1746 SMP PREEMPT Wed Mar 20 17:21:57 GMT 2024 aarch64 GNU/Linuxpi@book13th:~ $ ls -l /sys/class/hwmon/total 0lrwxrwxrwx 1 root root 0 Jan 1 1970 hwmon0 -> ../../devices/virtual/thermal/thermal_zone0/hwmon0lrwxrwxrwx 1 root root 0 Apr 8 18:50 hwmon1 -> ../../devices/platform/axi/1000120000.pcie/1f000c8000.adc/hwmon/hwmon1lrwxrwxrwx 1 root root 0 Apr 8 18:50 hwmon2 -> ../../devices/platform/cooling_fan/hwmon/hwmon2lrwxrwxrwx 1 root root 0 Apr 8 18:50 hwmon3 -> ../../devices/platform/soc/soc:firmware/raspberrypi-hwmon/hwmon/hwmon3pi@book13th:~ $ grep -s . /sys/class/thermal/thermal_zone*/* /sys/class/thermal/cooling_device*/*/sys/class/thermal/thermal_zone0/available_policies:step_wise /sys/class/thermal/thermal_zone0/cdev0_trip_point:1/sys/class/thermal/thermal_zone0/cdev0_weight:0/sys/class/thermal/thermal_zone0/cdev1_trip_point:2/sys/class/thermal/thermal_zone0/cdev1_weight:0/sys/class/thermal/thermal_zone0/cdev2_trip_point:3/sys/class/thermal/thermal_zone0/cdev2_weight:0/sys/class/thermal/thermal_zone0/cdev3_trip_point:4/sys/class/thermal/thermal_zone0/cdev3_weight:0/sys/class/thermal/thermal_zone0/cdev4_trip_point:0/sys/class/thermal/thermal_zone0/cdev4_weight:0/sys/class/thermal/thermal_zone0/integral_cutoff:0/sys/class/thermal/thermal_zone0/k_d:0/sys/class/thermal/thermal_zone0/k_i:0/sys/class/thermal/thermal_zone0/k_po:0/sys/class/thermal/thermal_zone0/k_pu:0/sys/class/thermal/thermal_zone0/mode:enabled/sys/class/thermal/thermal_zone0/offset:450000/sys/class/thermal/thermal_zone0/policy:step_wise/sys/class/thermal/thermal_zone0/slope:-550/sys/class/thermal/thermal_zone0/sustainable_power:0/sys/class/thermal/thermal_zone0/temp:36950/sys/class/thermal/thermal_zone0/trip_point_0_hyst:0/sys/class/thermal/thermal_zone0/trip_point_0_temp:110000/sys/class/thermal/thermal_zone0/trip_point_0_type:critical/sys/class/thermal/thermal_zone0/trip_point_1_hyst:2000/sys/class/thermal/thermal_zone0/trip_point_1_temp:36000/sys/class/thermal/thermal_zone0/trip_point_1_type:active/sys/class/thermal/thermal_zone0/trip_point_2_hyst:3000/sys/class/thermal/thermal_zone0/trip_point_2_temp:40000/sys/class/thermal/thermal_zone0/trip_point_2_type:active/sys/class/thermal/thermal_zone0/trip_point_3_hyst:4000/sys/class/thermal/thermal_zone0/trip_point_3_temp:52000/sys/class/thermal/thermal_zone0/trip_point_3_type:active/sys/class/thermal/thermal_zone0/trip_point_4_hyst:5000/sys/class/thermal/thermal_zone0/trip_point_4_temp:58000/sys/class/thermal/thermal_zone0/trip_point_4_type:active/sys/class/thermal/thermal_zone0/type:cpu-thermal/sys/class/thermal/cooling_device0/cur_state:1/sys/class/thermal/cooling_device0/max_state:4/sys/class/thermal/cooling_device0/type:pwm-fanpi@book13th:~ $ sudo cat /sys/class/hwmon/hwmon2/pwm190This is what I'm using
Code:
# change the cooling mapdtparam=fan_temp0=36000,fan_temp0_hyst=2000,fan_temp0_speed=90dtparam=fan_temp1=40000,fan_temp1_hyst=3000,fan_temp1_speed=150dtparam=fan_temp2=52000,fan_temp2_hyst=4000,fan_temp2_speed=200dtparam=fan_temp3=58000,fan_temp3_hyst=5000,fan_temp3_speed=255Statistics: Posted by aBUGSworstnightmare — Mon Apr 08, 2024 4:56 pm