Go to file
Stefan Gehr 90e212a158 Fanspeeds as floats, 0 is lowest speed, bugfixes
1. The fanspeeds can now be specified as floats for better granularity
2. Removed 4 as the lowest possible speed. Lowest possible value is now 0.0
3. min and max values are now correctly read for pwm1 and not the rpm
   values of fan1 anymore
4. Percentage speed now gets correctly converted to the pwm values
   (usually between 0 and 255)
5. Before the update of the pwm-value was skipped when the current speed
   was below minimum or above maximum. This got removed. Why was that
   there in the first place?
6. Simpler algorithm for speed_for_temp
7. in monitor the min value is now actually below MIN and the max value
   below MAX. Before it was swapped
8. Fixed grammar error "can's" instead of "can't"
2021-07-19 22:25:34 +02:00
.cargo Switch to musl 2021-07-03 23:12:08 +02:00
.github/workflows Update rust.yml 2021-07-04 00:09:20 +02:00
src Fanspeeds as floats, 0 is lowest speed, bugfixes 2021-07-19 22:25:34 +02:00
.gitignore Initial 2021-07-02 13:36:36 +02:00
amdfand OpenRC service file. 2021-07-03 15:49:35 -07:00
amdfand.service Initial 2021-07-02 13:36:36 +02:00
Cargo.lock Fanspeeds as floats, 0 is lowest speed, bugfixes 2021-07-19 22:25:34 +02:00
Cargo.toml Test parse card0, move checking vendor 2021-07-04 00:09:20 +02:00
LICENSE.APACHE2.txt Fix apache2 license file 2021-07-04 08:42:45 +02:00
LICENSE.md Primary license 2021-07-05 08:07:06 +02:00
README.md Fanspeeds as floats, 0 is lowest speed, bugfixes 2021-07-19 22:25:34 +02:00

GitHub

AMDGPU Fan control service

Available commands:

  • monitor - Print current temp and fan speed
  • service - Set fan speed depends on GPU temperature
  • set-automatic - Switch to GPU automatic fan speed control
  • set-manual - Switch to GPU manual fan speed control
  • available - Print available cards

amdfand set-automatic | set-manual [OPTIONS]

Optional arguments:

  • -h, --help Help message
  • -c, --card CARD GPU Card number

Usage

cargo install argonfand

sudo argonfand monitor # print current temperature, current fan speed, min and max fan speed 
sudo argonfand service # check amdgpu temperature and adjust speed from config file 

Config file

# /etc/amdfand/config.toml
log_level = "Error"
cards = ["card0"]

[[speed_matrix]]
temp = 4.0
speed = 4.0

[[speed_matrix]]
temp = 30.0
speed = 33.0

[[speed_matrix]]
temp = 45.0
speed = 50.0

[[speed_matrix]]
temp = 60.0
speed = 66.0

[[speed_matrix]]
temp = 65.0
speed = 69.0

[[speed_matrix]]
temp = 70.0
speed = 75.0

[[speed_matrix]]
temp = 75.0
speed = 89.0

[[speed_matrix]]
temp = 80.0
speed = 100.0

🔖 License

This work is dual-licensed under Apache 2.0 and MIT. You can choose between one of them if you use this work.

SPDX-License-Identifier: Apache-2.0 OR MIT