All work

Desktop app · systems programming

In use

Open Freeze Center

A native Rust replacement for two entangled Python tools that controlled fans, thermals, and power on an MSI GF63 laptop. In daily use on the machine, with one daemon and one GUI.

Rustegui/eframesystemdLinuxEC registers

The problem

Two Python projects ran the laptop: a GTK fan-control GUI and a separate smart-throttling daemon that imported the GUI's config as its source of truth. They were coupled, fragile, and hard to test without root or the real hardware.

The brief was to rebuild both as one native application, retire the Python stack, and keep the behaviour identical while making the safety rules explicit.

What it does

  • Reads CPU and GPU temperatures, fan RPM, power limits, and battery state.
  • Applies fan curves, cooler boost, power profiles, turbo limits, and battery thresholds.
  • Smart throttling as a state machine with hysteresis, recovery, and a hard safety floor.
  • Per-tick telemetry to a size-capped CSV, plus live sparklines in the UI.
  • Custom fan curves with a GUI editor and named profiles.
  • Replaced the Python tools and is now the daily driver on the machine.

Architecture

A root daemon owns every privileged operation: EC reads and writes, RAPL, cpufreq, and nvidia-smi. The egui GUI runs as the normal user and talks to the daemon over a local unix socket.

Hardware access sits behind traits, so the test suite runs unprivileged against fakes. The most dangerous read — GPU EC registers while the discrete GPU is suspended — is blocked inside the hardware layer, not at call sites.

Constraints

No HTTP client, no telemetry, no auto-update. The app is deliberately offline: the only subprocess calls are local system tools. The register map is data-driven but shipped for this laptop model only.

In daily use since October 2026: systemd daemon plus the user-space GUI on the laptop. Source walkthrough available on request.

Need something like this?

Fixed scope, fixed price, and a working product at the end.

Start a project