I found a way to set the gl fan!

Hi there,

So I was checking some of the code to enable the fan on the axt1800 because to my opinion the default value from /usr/bin/gl_fan (I guess the driver or main cmd) was 90 celcius thats a little too hot for my opinion :stuck_out_tongue: and since its now summer I noticed the hotness of the device (room temperature is 26c currently) but it showed 80 degrees celcius when I used cat /sys/class/thermal/thermal_zone*/temp that made me a little worried of the device health this is pure the die temp I believe.

So upon my inspection of /etc/init.d/gl_fan it links towards a configuration node inside /etc/config/glfan but then I noticed, that the node temperature was not specified.

So I fixed this by adding:

uci set glfan.@globals[0].temperature='30'
uci commit glfan
/etc/init.d/gl_fan restart

this will make the fan spin around 30 degrees which is in my case fine but for others maybe different situation, though I wonder if this is intended or I might spotted a bug? can someone confirm this on release 3 of the AXT1800?


NVM found how to do it.

If you stop the gl_fan service completely, you can control the fan manually:

/etc/init.d/gl_fan stop
echo 255 > /sys/class/thermal/cooling_device0/cur_state

The value is from 0 to 255. Even changing the temperature in gl_fan, if you don’t stop the service, the service will change the fan speed down 0.

So until the gl_fan service is improved, i would just say put it at max. It’s not very loud from 2m away where i’m sitting.

My router is sitting happy at 56 deg now compared to nearly 80 it was before.


true, but I found a value for /etc/config/glfan if you add:
option temperature '60'

the script automaticly reads that node but because it cannot because the node doesn’t exist it defaults back to the drivers default value which is 90c, but for some reason this config value, its not there im not sure if that was the intention :stuck_out_tongue:

Temperature is still dropping, now its down to 50 deg. Much much better, the routers life will improve drastically. As i wrote in another thread, there are some electrolytic caps on the board, those don’t like heat and they will boil off (maybe even burst) faster than if they were cool.

1 Like

ah good to know about that, I didn’t know about the caps!, I hope it gets improved.

I tried your version and that one is better in rpm speed, maybe there is also a other missing setting in that config to replicate it via the configuration, but im not sure from what I see there is integration, proportion, and differential but I’m not sure what that means.

So this pdf on the mango SOM used in AXT1800 mentions the temp range for the commercial boards (which I assume this is) is 0-65C.

The gl_fan app only polls the temp and sets the fan every 20 seconds, so If you have a large load spike I suggest bumping the integral -i and derivative -d values of the PID loop as it will not have very many readings to work with to ramp up or smoothly change the speed. In other words- If the load spikes you want the fan to come up to speed quickly. If you only set the temp to 60, the default -i and -d values will never let the fan adjust fast enough to hit the target temp - it will constantly undershoot one way or the other keeping the fan from ramping up because of the slow poll rate.

These settings work fairly well for me to keep it from hitting 65.

uci set glfan.@globals[0].temperature='60'
uci set glfan.@globals[0].integration='4'
uci set glfan.@globals[0].differential='20'
uci commit glfan
/etc/init.d/gl_fan restart

you can test this yourself without setting the above

/etc/init.d/gl_fan stop
gl_fan -v -t 60 -i 4 -d 20

It will give a temp output and how its adjusting the fan - to get the fan speed use gl_fan -s in another terminal.

Also the heatsink itself does a good job (it should as its most of the weight of the unit), without the fan and running full load on the 4 cores and using the wifi It doesn’t get above 66.


For both me and @xize11 the temperature was well above 70 degrees. For me it hovers at around 76 with the fan off. I have a wireguard server + adguard home running only. @xize11 Had 80.

So at least for us the fan is a must, to keep the temperature in a good range for extended life.

You can check the following 2 graphs about electrolytic caps life vs temperature:


Graphs from here:

1 Like

Doesn’t the fan has life as well?

1 Like

It does, but replacing a processor or other SMD component is harder than replacing the 3 dollar fan.

And when the fan dies, then it would be no different than how it is now with fan not being used, right? :wink:


can u help please how to change the fan setting, i dont know how to do it, where do you type those line comand?

Do you have putty installed?, Try to install it.

Then open putty and then type under address: or the gateway address of your other dhcp range if you had changed this.

Username is: root
Password is: your web ui password

It will ask you to save the keys click yes.

Then you have a ssh window open and from there you can use commands :+1:

Some mini tutorial in linux:
cd - this moves you to folders and folder slash is /

ls - allows you to see all files in folder

vi - allows you to edit a file and write to it, insert key is for writing esc key is to get out of editing mode : is the key to get into the command instructions of vim and for saving such example is :wq and :q is not saving and :q! is force quit, you could install nano aswell which might be easier to use.

In /etc/config are all configuration files and in /etc/init.d/ are all the services :+1:

In your case you can try the commands so you don’t have to use alot of editing yet :grin:

1 Like

thanks you very much xize ill do it later tonight :slight_smile:

1 Like

Any tips on making these settings survive a power-cycle?

When you commit it writes it to a config file in /etc/config - so it will be used when restarted.


Thanks for posting all this help - i have also been wondering about the temperature and wondering why the fan did not kick in. Now it is running nicely. Just in case it dies - can we order a spare part (or get the part number so we can order it elsewhere)?

As for the temp settings - i.m.h.o. this should be a normal menu item/entry in the advanced settings.

1 Like

I am New on slate axt-1800 and howto put a colder setting for the FAN its to much hot
i do not known how to go in the firmware and edit etc/ etc …
Why firmware not include a setting in The GUI of the Router be better for Everybody

Pls note, temperature control is available in firmware 4.1.

This thread is closed!