Axt1800 running hot, 75C

my router is running very hot, so hot, not sure it is usable?
what do i need to do to turn on that fan and/or reduce temp.

this a new topic, continuing this post

thanks, good to know that the axt1800 has a fan.

all five values are 75

hmm, how can i get that offset?

and here is some more output

root@HOME01:~# sensors
Adapter: ISA adapter
temp1:        +71.0_C

Adapter: ISA adapter
temp1:        +71.0_C

please, how can i read the current speed of the fan?

and noticed this, should i upgrade?

The ‘Offset’ is the value between the given number and a external measured.
As you’re already using lm-sensors, and it shows 71, lets do the math:
echo "75-71" |bc" … The offset should be something around 4.
But these are still internal calculated values!

In general sensors should give the fanspeed as well, if available → sensors | grep -i fan

If I’ve had my Slate AX with me, I’ve would check ls /sys/class/thermal/ for more information. There should be something with fan and/or pwm …

i had already tried this and got no output

sensors | grep -i fan

i just took a look at the axt1800, there is a fan but does not seem to be running

The recent firmware of AXT1800 Fan turned on temperature threshold is 85 degree. :slight_smile:

good to know as i am trying to do a deep dive into the router.

how would i confirm that threshold for myself, command line, source code or how?


The threshold temperature is noted in the release note.

1 Like

duh, of course, the release notes.

According to some discussion in the forum, they might let user have more control of the fan in the future, but I am not sure.

What is your understanding of ‘I want to deep dive’? Do you now the Linux filesystem? Or OpenWRT basics? In a nutshell, here we are not very far away from these two worlds.

As far as I can see, the settings are in
cat /sys/devices/virtual/thermal/thermal_zone0/trip_point_*_temp. The related description can be found in cat /sys/devices/virtual/thermal/thermal_zone0/trip_point_*_type

root@GL-AXT1800:~# cat /sys/devices/virtual/thermal/thermal_zone0/trip_point_*_temp
root@GL-AXT1800:~# cat /sys/devices/virtual/thermal/thermal_zone0/trip_point_*_type

I’m running an older firmware, for other reasons. So it is 95 in my configuration, it should be 85 in your.

The interesting thing is the type ‘configurable’ is already implemented. And even better: the max value is in another field.

1 Like

fwiw, there needs to be a way to test the fan.

at this point, no idea if the fan works.
and when/if the temperature rises over 89/95, no idea if the fan will work.

each time the router is booted up, it should spin the fan for a few seconds.

We had a length discussion about this in the existing thread:

My personal recommendation is to run the fan at full speed. It is not loud, i can’t hear it much 2m away, but it will help the life of the router running cooler.


What is an optimal temperature for this router? I am having about 64 C° and it is still rising, however it is below the threshold. So is it ok for device to be so hot?

In the end this is up to you. Electronics want to sit as cool as possible. As in the other thread, there is an electrolytic capacitor on the board, those have actual liquid inside. Temperature is directly correlated to the lifetime of the capacitor. So if you can run the fan at max, i would do it (and do currently).

You can see a typical lifetime chart, it’s almost exponential so every degree counts:

1 Like

I did find the answer myself, just read the entire topic above, provided by sincere @Johnex. So the answer is - optimal T for the motherboard used at this router is 0-65 С.
Fan wont launch until T become too hot - this is a bug at soft, fan should work. If you are familiar with Linux CLI, in order to launch a fan we need to:

1. ssh root@ip-address-of-a-router # use password from 
2. /etc/init.d/gl_fan stop # that command will stop the daemon responsible for fan
3. echo 255 > /sys/class/thermal/cooling_device0/cur_state # that will set up the max speed of fan

I did the steps above and that worked perfectly fan is having its fun now!)

However I think it would be great to have schedule that will track the T and will adjust its speed automatically, wouldn’t it?

Totally agree it is a must to have cooling. What do you think about fan speed schedule? Is it possible to make it automatically somehow?

Lower down in the thread you can play around with the PID for the fan controller:

I didn’t really get it to work, for me the fan did not run at full speed even though it needed it to lower the temperature, but i just put the values @nopro404 suggested. Maybe you can give it a try and see if it works for you.

tl;dr, leave the fan running all the time.

yeah, back in my youth, when not re-aligning the r/w head of 12" floppy disk with an oscilloscope.
the main issue was thermal creep.
if an integreated circuit was not soldered into to its dip package,
then the pins of the IC, would heat and cool over time.
that would cause the pins of the IC to expand and contract, thus causing the IC to creep up and out of the DIP package.

this is great detailed info,

i did try this and the good news is that the fan does seem to change speed
but getting errors

/etc/init.d/gl_fan stop
gl_fan -v -t 60 -i 4 -d 20
root@HOME01:/usr/sbin# gl_fan -v -t 60 -i 4 -d 20
2022/08/10 09:34:06 debug (gl_fan.c:148) set_pwm:-12.000000 proportion:20.000000 integration:8.000000 differential:-40.000000
2022/08/10 09:34:06 debug (gl_fan.c:151) current_temp:62 current_error:2 total_error:2 last_error:2 prev_error:0
2022/08/10 09:34:26 debug (gl_fan.c:148) set_pwm:70.000000 proportion:30.000000 integration:20.000000 differential:-20.000000
2022/08/10 09:34:26 debug (gl_fan.c:151) current_temp:63 current_error:3 total_error:5 last_error:3 prev_error:2
root@HOME01:/usr/sbin# sensors && gl_fan -s && cat /sys/class/thermal/cooling_device0/cur_state
Adapter: ISA adapter
temp1:        +59.0_C

Adapter: ISA adapter
temp1:       -255.0_C


The error in the gl_fan output is basically the ‘deviation’ from where PID control loop target is – how far off from goal it is. It’s not an error per se.