thinkpad-ec is a community effort to study and patch the embedded controller (EC) firmware used in certain classic Lenovo ThinkPad models. The EC is a tiny microcontroller that governs low-level features such as keyboard scan codes, fan behavior, battery checks, and thermal policies—things the operating system can’t normally change. This project documents the EC’s layout and provides tooling to extract, analyze, and modify EC images so users can apply specific fixes or enhancements. Common goals include disabling restrictive battery “whitelists,” improving or customizing fan curves, and enabling alternative keyboard mappings on models that enthusiasts mod with classic keyboards. Because EC flashing carries real risk (a bad image can brick a laptop), the repository emphasizes clear build instructions, safety notes, and ways to recover when possible.
Features
- Enables analysis and patching of ThinkPad EC firmware via low-level access
- Supports constructing patched EC firmware images (*.img) for specific models like X230
- Tools to compute checksums and handle EC-specific encryption/validation mechanisms
- Infrastructure to integrate EC modifications into BIOS update workflows
- Trusted by communities for moderate-risk firmware modifications when handled safely
- Open-source and hardware-specific; aimed at advanced users with ThinkPad expertise