Skip to content
No description, website, or topics provided.
Branch: master
Clone or download
Latest commit eb092d0 May 10, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs update REAMDE.. May 10, 2019
etc rebase with atx_next branch.. Dec 10, 2018
include rebase with ats_next branch.. Dec 12, 2018
src rebase with ats_next branch.. Dec 12, 2018
systemd pass service to /usr/local.. Nov 4, 2018
Makefile cosmetics Feb 12, 2019
TODO update REAMDE.. May 1, 2019
aarch Ldir check.. Feb 11, 2019
ats-0.2-0.rockspec restore release rockspec version. Jan 10, 2019
ats-master-0.rockspec improve information output.. Jan 10, 2019
test.c rebase with ats_next branch.. Dec 12, 2018

| ATS - Active Thermal Service

Active Fan Thermal Service tool, to Control Processor Temperature on RockPro64 Single Board Computer,

But could be adapted to other boards too.. This tool is system Agnostic.

The Control is Made via SysFS, based in the Lua Scripting Language. You can Adapt the file ats, if you want( its configured for RockPro64 )

Table of contents


Curve Response of PWM to Temperature:

Response of PWM to Temperature Curve:

  1. Temp < 40°C,
      Fan will Stop
  2. 40°C <= Temp <= 60°C,
      Fan is Adjusted, acordingly like in the Chart, 'PWM Curve Response'
  3. 60°C < Temp < 70°C,
      Fan set to Maximum Value..
  4.  -20°C >= Temp >= 70°C,
      System will shutdown in 10 Seconds..


    RockChip has done its tests on a Board, at 80°C, They rate the CPU at -20°C <= Absolute Maximum <= 85°C( 125°C were junction temperature will start to cause damage permanently ).. The CPU should make a emergency shutdown at around 85°C, so better operate lower..

    For reliability, high temperatures are not good to maintain Continuously( Rockchip also make some provisions to that in the datasheet.. ), So I decided to take some precaution measures here, shutting down at 70°C, for the sake of reliability..


To use ATS: First, you need to install its depedencies..


1. Install Dependencies.
  • apt-get install lua5.3 lua5.3-dev luarocks gcc make
You can also use git, to download, ( if you want to install manually..step 3. ).
  • ln -s /usr/bin/lua5.3 /usr/bin/lua


Several independent Options: Master, Release and Manual.

1. Install from master( last code, but more prone to errors.. )
  • luarocks build
2. Install by release, check in Releases tab( ie: v0.2.0 ):
  • luarocks build
3. Compile/Install/Remove manually, using make ( need to download first the code ie: with git, by browser).
  1. Run 'all' target
    • make
  2. Run 'install' target
    • make install
  3. Run 'purge' target( the downloaded code is removed, not the installed one.. )
    • make purge
  4. Run 'remove' target( remove ats from system )
    • make remove

After install, verify the end of the output for something like:

systemctl status ats

● ats.service - ATS - Active Thermal Service
   Loaded: loaded (/lib/systemd/system/ats.service; enabled; vendor preset: enabled)
   Active: active (running) since Fri 2018-11-23 01:43:10 WET; 47s ago
 Main PID: 21040 (lua)
    Tasks: 1 (limit: 4642)
   CGroup: /system.slice/ats.service
	   └─21040 lua /usr/local/sbin/ats

Nov 23 01:43:10 rockpro64 systemd[1]: Started ATS - Active Thermal Service.

Run Test

You can execute in test mode( to see state values ),

  1. Stop the service first:
    • service ats stop
  2. Start in test mode( 2 similar options, pick only one .. to exit, just press ctrl+c keys ):
    • ats -t
    • ats --test
  3. After tests, start as a service:
    • service ats start
  4. Check if service started
    • service ats status

Check ATS version

Check which version you have installed:

  • ats -v
  • ats --version


ATS project, is been made availlable by me, has a way to have a active cooling tool, for Our SBCs..

If you want to help this project, consider a donation..

 - Magi Address    : 96H3wSX8e5sqJ1tHpXjhJrppKhsLQEWFMz
 - Monero Address  : 47gzrS7JU5E7tUF9YcdgXw68DhbJokuHTWKSr42LcmU4RTFFvCoU8W7NDjauef5kGQY5WRZXfoVWENutt3afKv9YDufEgJx
 - AEON Address    : WmtL2wph84vb5inWpMoXFucwBmDtF4BsLLjWvP4LEd435tvjpfcUTjegSXKnrT3FjATzo8X8ouSwVArooxmauniP2TLKCXQdc
 - VertCoin Address: vtc1qmck0q88enwneha75cpfcys6eyst4rnsr8h2uk8
 - Ryo Address     : RYoKsxn7kT4DZVagVtmTuT5wwvrQ2f38pJ8AcE2jcUyogcNVFZ2syeN
 - BitCoin Address : 1GuBhkustzsCLUbFhRLcppp9Pf4KW9TxXQ
 - Ethereum Address: d468db56e89c883C4046D50A2261D5CE4dF4eFCD


ATS : tuxd3v

Fan Icon : [ freepik ] |

You can’t perform that action at this time.