Page 1 of 1

F4-424 ¿weird? fan behaviour

Posted: 04 Dec 2024, 16:57
by mab
Hi.

I've detected some weird behaviour with the fan. Probably it isn't weird at all, but i'd like to "fix" it.

Ambient room temperature es around 20 degrees C. Fan config is in automatic mode. TOS 5.1.145.

I've realized that the fan is constantly stopping and spinning up again. This can be checked with ec_stat command like this

Code: Select all

while true;do echo $(date) $(ec_stat -rct) $(ec_stat -rst) $(ec_stat -rss);sleep 1;done
Setting fan control to Low will keep fanspeed around 725/726, which is noisier than the 600-ish in automatic mode. What annoys me is the constant stop/start. I'd rather prefer to keep it as low as 500 than doing a full stop.

Is there a way to avoid stoppage, but keep the automatic config?

Not sure if this has to do with some CPU temp limit to stop, and after a few seconds temp rises a few degrees which triggers the fan start

Code: Select all

Wed Dec 4 09:50:29 CET 2024 cpu_temputre = 48 system_temputre = 33 system_fanspeed = 639
Wed Dec 4 09:50:30 CET 2024 cpu_temputre = 48 system_temputre = 33 system_fanspeed = 640
Wed Dec 4 09:50:31 CET 2024 cpu_temputre = 48 system_temputre = 33 system_fanspeed = 641
Wed Dec 4 09:50:32 CET 2024 cpu_temputre = 48 system_temputre = 33 system_fanspeed = 641
Wed Dec 4 09:50:33 CET 2024 cpu_temputre = 48 system_temputre = 33 system_fanspeed = 641
Wed Dec 4 09:50:34 CET 2024 cpu_temputre = 48 system_temputre = 33 system_fanspeed = 641
Wed Dec 4 09:50:36 CET 2024 cpu_temputre = 48 system_temputre = 33 system_fanspeed = 641
Wed Dec 4 09:50:37 CET 2024 cpu_temputre = 48 system_temputre = 33 system_fanspeed = 641
Wed Dec 4 09:50:38 CET 2024 cpu_temputre = 48 system_temputre = 33 system_fanspeed = 641
Wed Dec 4 09:50:39 CET 2024 cpu_temputre = 47 system_temputre = 33 system_fanspeed = 641
Wed Dec 4 09:50:40 CET 2024 cpu_temputre = 48 system_temputre = 33 system_fanspeed = 641
Wed Dec 4 09:50:41 CET 2024 cpu_temputre = 48 system_temputre = 33 system_fanspeed = 641
Wed Dec 4 09:50:42 CET 2024 cpu_temputre = 49 system_temputre = 33 system_fanspeed = 641
Wed Dec 4 09:50:43 CET 2024 cpu_temputre = 48 system_temputre = 33 system_fanspeed = 641
Wed Dec 4 09:50:44 CET 2024 cpu_temputre = 50 system_temputre = 33 system_fanspeed = 641
Wed Dec 4 09:50:45 CET 2024 cpu_temputre = 48 system_temputre = 33 system_fanspeed = -19640
Wed Dec 4 09:50:46 CET 2024 cpu_temputre = 48 system_temputre = 33 system_fanspeed = -19640
Wed Dec 4 09:50:47 CET 2024 cpu_temputre = 48 system_temputre = 33 system_fanspeed = -19640
Wed Dec 4 09:50:49 CET 2024 cpu_temputre = 48 system_temputre = 33 system_fanspeed = -19640
Wed Dec 4 09:50:50 CET 2024 cpu_temputre = 48 system_temputre = 33 system_fanspeed = -19640
Wed Dec 4 09:50:51 CET 2024 cpu_temputre = 48 system_temputre = 33 system_fanspeed = -19640
Wed Dec 4 09:50:52 CET 2024 cpu_temputre = 48 system_temputre = 33 system_fanspeed = -19640
Wed Dec 4 09:50:53 CET 2024 cpu_temputre = 48 system_temputre = 33 system_fanspeed = -19640
Wed Dec 4 09:50:54 CET 2024 cpu_temputre = 49 system_temputre = 33 system_fanspeed = -19640
Wed Dec 4 09:50:55 CET 2024 cpu_temputre = 48 system_temputre = 33 system_fanspeed = 484
Wed Dec 4 09:50:56 CET 2024 cpu_temputre = 48 system_temputre = 33 system_fanspeed = 564
Wed Dec 4 09:50:57 CET 2024 cpu_temputre = 47 system_temputre = 33 system_fanspeed = 609
Wed Dec 4 09:50:58 CET 2024 cpu_temputre = 47 system_temputre = 33 system_fanspeed = 632
Wed Dec 4 09:51:00 CET 2024 cpu_temputre = 47 system_temputre = 33 system_fanspeed = 639
Wed Dec 4 09:51:01 CET 2024 cpu_temputre = 48 system_temputre = 33 system_fanspeed = 640
Wed Dec 4 09:51:02 CET 2024 cpu_temputre = 48 system_temputre = 33 system_fanspeed = 641
Wed Dec 4 09:51:03 CET 2024 cpu_temputre = 48 system_temputre = 33 system_fanspeed = 641
Wed Dec 4 09:51:04 CET 2024 cpu_temputre = 48 system_temputre = 33 system_fanspeed = 641
Wed Dec 4 09:51:05 CET 2024 cpu_temputre = 48 system_temputre = 33 system_fanspeed = 641
Wed Dec 4 09:51:06 CET 2024 cpu_temputre = 47 system_temputre = 33 system_fanspeed = -19640
Wed Dec 4 09:51:07 CET 2024 cpu_temputre = 48 system_temputre = 33 system_fanspeed = -19640
Wed Dec 4 09:51:08 CET 2024 cpu_temputre = 48 system_temputre = 33 system_fanspeed = -19640
Wed Dec 4 09:51:09 CET 2024 cpu_temputre = 47 system_temputre = 33 system_fanspeed = -19640
Wed Dec 4 09:51:10 CET 2024 cpu_temputre = 47 system_temputre = 33 system_fanspeed = -19640
Wed Dec 4 09:51:12 CET 2024 cpu_temputre = 48 system_temputre = 33 system_fanspeed = -19640
Wed Dec 4 09:51:13 CET 2024 cpu_temputre = 48 system_temputre = 33 system_fanspeed = -19640
Wed Dec 4 09:51:14 CET 2024 cpu_temputre = 48 system_temputre = 33 system_fanspeed = -19640
Wed Dec 4 09:51:15 CET 2024 cpu_temputre = 49 system_temputre = 33 system_fanspeed = -19640
Wed Dec 4 09:51:16 CET 2024 cpu_temputre = 48 system_temputre = 33 system_fanspeed = 507
Wed Dec 4 09:51:17 CET 2024 cpu_temputre = 48 system_temputre = 33 system_fanspeed = 573


Re: F4-424 ¿weird? fan behaviour

Posted: 04 Dec 2024, 17:24
by mab
Hi again.

Seems that the one doing this is the smartfan daemon. As seen in /var/log/smartfan.log:

When getMaxDiskTemperature is under 35 puts the fan to stop (i guess that's what -w 1 does), and then when temperature is again 35 gets it to 40%.

Code: Select all

MonitorTemperature, getMaxDiskTemperature result -> 35
/usr/bin/ec_stat -w 40
MonitorTemperature, getMaxDiskTemperature result -> 34
/usr/bin/ec_stat -w 1
MonitorTemperature, getMaxDiskTemperature result -> 35
/usr/bin/ec_stat -w 40
MonitorTemperature, getMaxDiskTemperature result -> 35
MonitorTemperature, getMaxDiskTemperature result -> 34
/usr/bin/ec_stat -w 1

Re: F4-424 ¿weird? fan behaviour

Posted: 04 Dec 2024, 19:04
by TMtina
mab wrote: 04 Dec 2024, 17:24 Hi again.

Seems that the one doing this is the smartfan daemon. As seen in /var/log/smartfan.log:

When getMaxDiskTemperature is under 35 puts the fan to stop (i guess that's what -w 1 does), and then when temperature is again 35 gets it to 40%.

Code: Select all

MonitorTemperature, getMaxDiskTemperature result -> 35
/usr/bin/ec_stat -w 40
MonitorTemperature, getMaxDiskTemperature result -> 34
/usr/bin/ec_stat -w 1
MonitorTemperature, getMaxDiskTemperature result -> 35
/usr/bin/ec_stat -w 40
MonitorTemperature, getMaxDiskTemperature result -> 35
MonitorTemperature, getMaxDiskTemperature result -> 34
/usr/bin/ec_stat -w 1
When in Automatic mode, the fan will start spinning when the CPU temperature exceeds 45 degrees or the hard disk temperature exceeds 35 degrees.

Re: F4-424 ¿weird? fan behaviour

Posted: 05 Dec 2024, 01:17
by mab
Hi.

Thanks for the answer. Is there a way to avoid stopping the fan and keep it at lower RPMs like 400 or 300? I guess not, but is it possible to add this feature to newer TOS releases? I'd rather prefer low RPM than no RPM at all

Re: F4-424 ¿weird? fan behaviour

Posted: 05 Dec 2024, 04:31
by Valnjes
You can always do a hard-mod.
In DSM the fan is controlled by the BIOS, so its always running on silent. And it works fine.

Re: F4-424 ¿weird? fan behaviour

Posted: 31 Dec 2024, 21:23
by mab
Hi all.

I upgraded to TOS6 and this issue seems to have been solved.