JeffCurless/argoneon

Fan speed not changing

Closed this issue · 11 comments

Hi,

The fan speed doesn't appear to change at all. argon-status always shows 30 and the fan is always really loud.
I've tried different settings but nothing seems to fix it.

FYI - I added getting the temp from the M2 devices... these seem to run hotter

So I think I had my config wrong, dunno how tho, looked fine.

The fan, according to status is changing, unfortunately I'm not at home to listen for changes.

It doesn't seem to be going to the speed setin the config however.

Here's my configs and argon-status.

Currently on my phone so hope these have formatted ok.

` cat /etc/argononed.conf

Argon Fan Speed Configuration CPU

Min Temp=Fan Speed

55=25
60=50
70=100`

`$ cat /etc/argononed-hdd.conf

Argon Fan Speed Configuration HDD

Min Temp=Fan Speed

45=25
50=75
55=100`

`CPU Utilisation:

CPU %
cpu0 3
cpu1 4
cpu2 2
cpu3 2

Fan Speed

Speed %

45

Storage Usage:

Device Total Used Pct
sdg 28GB 10GB 96%
sdc 1TB 459GB 58%

Memory:

Total Free
4GB 12%

CPU Temp:

°C °F
53.6 128.4

HDD Temp:

Device °C °F
sda 49 120.2
sdb 46 114.8
sdc 46 114.8
sdd 42 107.6
sde 45 113
sdf 49 120.2

IP Addresses:

Interface IP
wlan0 10.79.0.226
vbridge0 10.79.0.26
vbridge0.100 10.79.1.6
docker0 172.17.0.1
vbridge0.101 10.79.101.6

Disk Utilisation:

Device Read/Sec Write/Sec
sdg 0KB 11KB
sdc 0KB 345KB
-----------------------------`

is it possible that argon-status is showing the temperature trigger instead of the speed under fan speed?
I've just set both cpu and hdd to 'always on' and now argon-status shows fan speed as 1 which is the trigger temperature on the conf file.

it is possible... code was setting the fan speed to the trigger... fixed that a little while ago. Looking at your setup the fan seems like it should be running at 75%.

CPU is ~53 so 25%
HDD max is ~49 so 25

But I suspect the temp is fluxuating between 49 and 50 so... that would trigger to jump to 75.

Odd. Added some prints and ran the code manually. The first bit was testing a conversion issue with the contents of /tmp/fanspeed.txt, i.e. toss out anything that does no make sense.

But as you can see the temp starts dropping and so does the fan speed.

`$ sudo python3 -i argononed.py

temp_check()
speed file = /tmp/fanspeed.txt
getCurrentFanSpeed() : /tmp/fanspeed.txt
Speed = test

{55.0: 30, 60.0: 55, 65.0: 100}
{44.0: 30, 46.0: 35, 48.0: 40, 50.0: 60, 55.0: 100}
speed file = /tmp/fanspeed.txt
getCurrentFanSpeed() : /tmp/fanspeed.txt
Speed = 60
{55.0: 30, 60.0: 55, 65.0: 100}
{44.0: 30, 46.0: 35, 48.0: 40, 50.0: 60, 55.0: 100}
speed file = /tmp/fanspeed.txt
getCurrentFanSpeed() : /tmp/fanspeed.txt
Speed = 60
{55.0: 30, 60.0: 55, 65.0: 100}
{44.0: 30, 46.0: 35, 48.0: 40, 50.0: 60, 55.0: 100}
speed file = /tmp/fanspeed.txt
getCurrentFanSpeed() : /tmp/fanspeed.txt
Speed = 40
{55.0: 30, 60.0: 55, 65.0: 100}
{44.0: 30, 46.0: 35, 48.0: 40, 50.0: 60, 55.0: 100}
speed file = /tmp/fanspeed.txt
getCurrentFanSpeed() : /tmp/fanspeed.txt
Speed = 35
{55.0: 30, 60.0: 55, 65.0: 100}
{44.0: 30, 46.0: 35, 48.0: 40, 50.0: 60, 55.0: 100}
speed file = /tmp/fanspeed.txt
getCurrentFanSpeed() : /tmp/fanspeed.txt
Speed = 35
{55.0: 30, 60.0: 55, 65.0: 100}
{44.0: 30, 46.0: 35, 48.0: 40, 50.0: 60, 55.0: 100}

`

Updated printing a little... so I can see everything. I'm not seeing the getCurrentFanSpeed function returning the wrong thing...

getCurrentFanSpeed() -> 0
get_fanspeed( 28.719, {55.0: 30, 60.0: 55, 65.0: 100} ) -> 0
get_fanspeed( 51.0, {44.0: 30, 46.0: 35, 48.0: 40, 50.0: 45, 52.0: 50, 54.0: 55, 56.0: 60, 58.0: 65, 60.0: 70, 61.0: 100} ) -> 45
Setting fanspeed to 45
getCurrentFanSpeed() -> 45
get_fanspeed( 28.232, {55.0: 30, 60.0: 55, 65.0: 100} ) -> 0
get_fanspeed( 53.0, {44.0: 30, 46.0: 35, 48.0: 40, 50.0: 45, 52.0: 50, 54.0: 55, 56.0: 60, 58.0: 65, 60.0: 70, 61.0: 100} ) -> 50
Setting fanspeed to 50
getCurrentFanSpeed() -> 50
get_fanspeed( 28.719, {55.0: 30, 60.0: 55, 65.0: 100} ) -> 0
get_fanspeed( 52.0, {44.0: 30, 46.0: 35, 48.0: 40, 50.0: 45, 52.0: 50, 54.0: 55, 56.0: 60, 58.0: 65, 60.0: 70, 61.0: 100} ) -> 50
getCurrentFanSpeed() -> 50
get_fanspeed( 28.719, {55.0: 30, 60.0: 55, 65.0: 100} ) -> 0
get_fanspeed( 50.0, {44.0: 30, 46.0: 35, 48.0: 40, 50.0: 45, 52.0: 50, 54.0: 55, 56.0: 60, 58.0: 65, 60.0: 70, 61.0: 100} ) -> 45
Setting fanspeed to 45
getCurrentFanSpeed() -> 45
get_fanspeed( 28.719, {55.0: 30, 60.0: 55, 65.0: 100} ) -> 0
get_fanspeed( 48.0, {44.0: 30, 46.0: 35, 48.0: 40, 50.0: 45, 52.0: 50, 54.0: 55, 56.0: 60, 58.0: 65, 60.0: 70, 61.0: 100} ) -> 40
Setting fanspeed to 40
getCurrentFanSpeed() -> 40
get_fanspeed( 29.206, {55.0: 30, 60.0: 55, 65.0: 100} ) -> 0
get_fanspeed( 47.0, {44.0: 30, 46.0: 35, 48.0: 40, 50.0: 45, 52.0: 50, 54.0: 55, 56.0: 60, 58.0: 65, 60.0: 70, 61.0: 100} ) -> 35
Setting fanspeed to 35

Please try the branch: fanspeed_reporting. Shutdown the service then execute:

sudo python3 -i argononed.py

When prompted, run temp_check()

and see what it does with your setup.

ok I'll give it a go tonight. thanks.

Updating the code to have a single config file... and a debug log so we watch the fan speed changes...

The latest one with the single config and status flags is nice mate. I think it may have also solved my issue, I will close this now and reopen if I jumped the gun. Nice work mate.