33 lines
1.2 KiB
Markdown
33 lines
1.2 KiB
Markdown
# Kulifuli — The Host Half
|
|
|
|
Kulifuli is an Arduino Micro based PC fan controller with the option to send a fake tachometer PWM
|
|
signal back to the motherboard. This is useful for for example server motherboards that refuse to
|
|
operate unless such a signal is received. (Such as the one in my HP Proliant that always spins its
|
|
fans at 100% after the latest firmware update. Thank you HP, very cool of you to do that.)
|
|
|
|
This repository contains the host side of the software. For the software to run on the Arduino
|
|
Micro as well as hardware information see
|
|
[this repository](https://kernelmaft.com/forgejo/zedfrigg/kulifuli-arduino).
|
|
|
|
## Building
|
|
|
|
Requirements: Rust compiler, Cargo
|
|
|
|
Simply run:
|
|
|
|
```sh
|
|
cargo build --release
|
|
```
|
|
|
|
The executable should now be present as `target/release/kulifuli`.
|
|
|
|
## Running
|
|
|
|
```sh
|
|
kulifuli $serial_device $duty_cycle
|
|
```
|
|
|
|
The _serial device_ argument is the path to the Arduino Micro USB serial device, e.g.
|
|
`/dev/ttyACM0` on Linux. The _duty cycle_ argument is the desired duty cycle for the PWM fans
|
|
connected to the fan controller to be run at. This is an integer range where 0 is 0% and 79 is
|
|
100%. Going below 19 is unlikely to have an effect with most fans.
|