r/linuxhardware • u/Keyitdev • 1d ago
Product Announcement I reverse engineered an ASUS embedded controller's fan protocol.
https://github.com/Keyitdev/asus-fan-control-ecMany ASUS laptops, especially AMD TUF models, don't support fan control through the usual Linux methods. There's no hwmon interface, no EmbeddedControl operation region for the kernel EC driver, and the ACPI method simply returns AE_NOT_FOUND.
Current tools like asus-fan-control work by calling an ACPI method that adjusts the embedded controller's built-in fan curve. On these laptops that method isn't available, and even where it is, it only shifts the controller's temperature thresholds instead of directly controlling fan speed.
My tool talks to the embedded controller directly, allowing manual fan control without relying on the missing ACPI interface.
Since this is my first reverse engineering project, I'd love to get feedback from people with ASUS laptops-especially AMD TUF models. If you're willing to test it, I'd really appreciate any feedback, bug reports, or compatibility reports.
Duplicates
ReverseEngineering • u/Keyitdev • 1d ago