https://github.com/krutonium/betterfancontroller
This is a C# application that manages the fan speed on AMD GPU's on Linux, with the goal of staying within a target temperaure range.
https://github.com/krutonium/betterfancontroller
amdgpu csharp hacktoberfest hacktoberfest2020 help-wanted linux
Last synced: 8 months ago
JSON representation
This is a C# application that manages the fan speed on AMD GPU's on Linux, with the goal of staying within a target temperaure range.
- Host: GitHub
- URL: https://github.com/krutonium/betterfancontroller
- Owner: Krutonium
- License: mit
- Created: 2020-10-07T06:41:50.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2024-12-06T13:07:23.000Z (over 1 year ago)
- Last Synced: 2025-06-11T21:10:05.224Z (10 months ago)
- Topics: amdgpu, csharp, hacktoberfest, hacktoberfest2020, help-wanted, linux
- Language: C#
- Homepage:
- Size: 53.7 KB
- Stars: 2
- Watchers: 2
- Forks: 2
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# A Better Fan Controller
## Project Goals:
- Control Multiple GPUs Fans ✔️
- Make it configurable ✔️
- Support Other Vendors ❌
- More Crash Resistant ❌
- Average GPU Temps for smoother changes ️✔️
- Be able to identify the GPU's in question by name ✔️
- Create Systemd service ✔️
- Refactor for Cleanlyness ❌
- Enable configuring Maximum Power Draw ✔️
- Dogfood! ✔️
- Be a Hacktoberfest Project! ✔️
✔️ = Complete
❌ = Incomplete
Want to chat? Join the [Discord](https://discord.gg/5g5cH2a)!
## Installing as a Systemd Service:
Follow these steps to install and run the app as a Systemd service on Ubuntu 20.04 (these may vary for your distro):
- Publish the application as single file app by running
```shell
dotnet publish -r linux-x64 -p:PublishSingleFile=true --self-contained false
```
- Copy the published app to `/usr/sbin`
```shell
sudo cp bin/Debug/netcoreapp3.1/linux-x64/publish/BetterFanController
/usr/sbin/
```
- Copy the `betterfancontroller.service` file from the repo to `/etc/systemd/system`
```shell
sudo cp betterfancontroller.service /etc/systemd/system
```
- Reload systemd with
```shell
sudo systemctl daemon-reload
```
- Start the service with
```shell
sudo systemctl start betterfancontroller
```
- View service status with
```shell
sudo systemctl status betterfancontroller
```
- Stop the service with
```shell
sudo systemctl stop betterfancontroller
```
- View service logs with
```shell
sudo journalctl -u betterfancontroller
```