Skip to content
This repository has been archived by the owner on Sep 8, 2019. It is now read-only.


Folders and files

Last commit message
Last commit date

Latest commit



7 Commits

Repository files navigation

Please see Huawei-WMI, this project is discontinued.

Huawei EC

Disclaimer: this script was written to work with model MACH-WX9 i.e. Matebook X Pro (2018). The author is not to blame if this script(s) breaks your system.

A script that enables the use of some of Huawei PC Manager features like setting battery protection settings and fn key lock state. It works by modifying the embedded controller (EC) data.

This script requires ioport to be present, specifically inb and outb.


$ sudo huawei_ec [get|set] [batpro|batthre|fnlk] [value]
  • batpro - setting battery protection on and off
  • batthre - setting battery threshold min and max values
  • fnlk - setting FN key lock on and off


  • Analyze ACPI and DSDT tables for asl methods that performs these functionality.
  • huawei_acpi kernel module that integrate these features.


  1. andmarios
  2. ec_sys kernel module.
  4. Using I/O ports in C programs


Thanks to andmarios for his debugging and finding where the battery threshold values are stored.