https://github.com/alertua/iets-speed-control
Control your laptop stand fan speed proportional to the CPU and GPU temperatures
https://github.com/alertua/iets-speed-control
Last synced: 8 months ago
JSON representation
Control your laptop stand fan speed proportional to the CPU and GPU temperatures
- Host: GitHub
- URL: https://github.com/alertua/iets-speed-control
- Owner: ALERTua
- Created: 2024-03-01T14:26:07.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2025-07-01T13:26:43.000Z (12 months ago)
- Last Synced: 2025-07-03T22:03:10.479Z (12 months ago)
- Language: Python
- Homepage:
- Size: 351 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
[](https://stand-with-ukraine.pp.ua)
[](https://stand-with-ukraine.pp.ua)
[](https://stand-with-ukraine.pp.ua)
[](https://stand-with-ukraine.pp.ua)
Control the PWM of your laptop cooling pad fan using ESP32 via USB, based on your Windows CPU/GPU temperatures, taken from AIDA64.
### How it works
- Gets temperatures from AIDA64
- Filters them by CPU and GPU sensors
- Takes the maximum int value among all temperatures
- Sends PWM command (`Dimmer {value}` by default) to the serial device
### AIDA64 Preparation
Getting CPU Temperature appeared to be harder on my Windows 11 i9-13900HX than flashing and connecting ESP32! The only working way I found was AIDA64 via WMI. If you can get your CPU Temperature easier - good for you!
- Run AIDA64
- In AIDA64 Preferences->External Applications->Enable writing sensors to WMI
- In AIDA64 Preferences->External Applications0>Enable Temperature sensors
- Keep AIDA64 open

### Serial Device Preparation
Example: [ESP32_Tasmota](docs/ESP32_Tasmota.md)
- Connect your Serial Device via USB
- Attach a device pin to the fan PWM
- Attach the device Ground pin to the fan Ground
### Script Preparation
- Create `.env` and fill it using [.env.example](.env.example)
### Script Execution
#### GUI
- Use pre-built binaries or run [build.cmd](build.cmd)
#### Console
- Run [run.cmd](run.cmd) or `python -m source`