This repository consists of a number of tools and utilities for examining and modifying Thinkpad Embedded Controller firmware. Including: * radare projects with partial disassembly of several thinkpads EC firmware * scripts for downloading the ISO image and extracting the firmware * script for patching the firmware * documentation on the tables found in the firmware (TODO) Quick Start: To fetch the firmware from Lenovo, extract, decrypt and patch it, ready for more patching, choose one of: make x230.G2HT35WW.img make t430s.G7HT39WW.img To update the checksums and encrypt the patched firmware, ready to be inserted into the FL2 file, choose one of: make x230.G2HT35WW.img.enc make t430s.G7HT39WW.img.enc To re-insert the EC firmware into the bios flash file, use a command similar to the following: dd if=x230.G2HT35WW.img.enc of=\$01D3000.FL2 conv=notrunc bs=4096 seek=1280 To update your firmware, prepare a DOS boot disk with the FL2 file and the dosflash.exe utility and then use a command similar to: dosflash /sd /ipf ec /file $01D3000.FL2 References: http://forum.thinkpads.com/viewtopic.php?f=69&t=120776 http://www.thinkwiki.org/wiki/Install_Classic_Keyboard_on_xx30_Series_ThinkPads#Experimental_X230_Embedded_Controller_Mod http://www.zmatt.net/unlocking-my-lenovo-laptop-part-3/