Intended to be used as a software PWM Fan controller that drives a GPIO PWM 3 wire fan (PWM, 5v, Ground). Currently being used to drive my Raspberry Pi 4 ICE Tower Fan on Arch Linux Arm OS.
Currently this project is a work in progress.
Installation instructions/packaging hasn't been accomplished yet.
However to clone and run the code as is:
git clone https://github.com/s-fairchild/pwmfan-go.git
cd pwmfan-go
make build
This creates a binary formatted for arm
architecture inside pwmfan-go/build/
that can be ran from there.
The configuration file is pwm-conf.json
and requires a PWM pin (preset to 18) and 4 temperature thresholds that can be modified.
Thresholds must be in descending order, and 4 must be provided.
The configuration file must be in the current working directory of the binary when executed. However this will change as I package the build to run as a service via systemd.