mirror of
https://github.com/hamishcoleman/thinkpad-ec
synced 2024-11-09 19:11:05 +00:00
docs | ||
mec-tools@07a1b14073 | ||
radare | ||
t430.G1HT34WW.img.d | ||
t430.G1HT35WW.img.d | ||
t430s.G7HT39WW.img.d | ||
w530.G4HT39WW.img.d | ||
x230.G2HT35WW.img.d | ||
x230t.GCHT25WW.img.d | ||
.gitignore | ||
.gitmodules | ||
8duj27us.iso.orig.sha1 | ||
autoexec.bat.template | ||
fix-hdd-image-33554432.patch | ||
fix-hdd-image-38797312.patch | ||
g1uj25us.iso.orig.desc | ||
g1uj25us.iso.orig.sha1 | ||
g1uj38us.iso.orig.desc | ||
g1uj38us.iso.orig.sha1 | ||
g2uj23us.iso.orig.desc | ||
g2uj23us.iso.orig.sha1 | ||
g4uj30us.iso.orig.desc | ||
g4uj30us.iso.orig.sha1 | ||
g5uj28us.iso.orig.desc | ||
g5uj28us.iso.orig.sha1 | ||
g7uj18us.iso.orig.desc | ||
g7uj18us.iso.orig.sha1 | ||
g7uj19us.iso.orig.desc | ||
g7uj19us.iso.orig.sha1 | ||
gcuj24us.iso.orig.desc | ||
gcuj24us.iso.orig.sha1 | ||
geteltorito | ||
hexpatch.pl | ||
LICENSE | ||
Makefile | ||
n10ur10w.iso.orig.sha1 | ||
r02uj46d.iso.orig.sha1 | ||
README | ||
slice.extract | ||
slice.insert | ||
t430.G1HT34WW.img.enc.slice | ||
t430.G1HT34WW.img.orig.sha1 | ||
t430.G1HT34WW.s01D2000.FL2.slice | ||
t430.G1HT35WW.img.enc.slice | ||
t430.G1HT35WW.img.orig.sha1 | ||
t430.G1HT35WW.s01D2000.FL2.slice | ||
t430s.G7HT39WW.img.enc.slice | ||
t430s.G7HT39WW.img.orig.sha1 | ||
t430s.G7HT39WW.s01D8000.FL2.slice | ||
t530.G4HT39WW.img.d | ||
t530.G4HT39WW.img.enc.slice | ||
t530.G4HT39WW.img.orig.sha1 | ||
t530.G4HT39WW.s01D5100.FL2.slice | ||
w530.G4HT39WW.img.enc.slice | ||
w530.G4HT39WW.img.orig.sha1 | ||
w530.G4HT39WW.s01D5200.FL2.slice | ||
x220.8DHT34WW.img.enc.orig.sha1 | ||
x220.8DHT34WW.img.enc.slice | ||
x220.8DHT34WW.s01CB000.FL2.orig.sha1 | ||
x220.8DHT34WW.s01CB000.FL2.slice | ||
x230.G2HT35WW.img.enc.slice | ||
x230.G2HT35WW.img.orig.sha1 | ||
x230.G2HT35WW.s01D3000.FL2.orig.sha1 | ||
x230.G2HT35WW.s01D3000.FL2.slice | ||
x230t.GCHT25WW.img.enc.slice | ||
x230t.GCHT25WW.img.orig.sha1 | ||
x230t.GCHT25WW.s01DA000.FL2.slice | ||
x250.N10HT17W.img.enc.slice | ||
x250.N10HT17W.s01E5000.FL2.orig.sha1 | ||
x250.N10HT17W.s01E5000.FL2.slice | ||
x260.R02HT29W.img.slice | ||
x260.R02HT29W.s0AR0200.FL2.orig.sha1 | ||
x260.R02HT29W.s0AR0200.FL2.slice | ||
xx30.encrypt |
The main purpose of this software is to patch the EC on xx30 series thinkpads to make the classic 7-row keyboards work. There are also patches included (but disabled by default) to disable the authentic battery validation check. With the patches included here, you can install the classic keyboard hardware on many xx30 series laptops and make almost every key work properly. The only keys that are not working are Fn+F3 (Battery) and Fn+F12 (Hibernate) A full writeup of the hardware modifications needed can be found at: http://www.thinkwiki.org/wiki/Install_Classic_Keyboard_on_xx30_Series_ThinkPads Step-by-step instructions: -------------------------- This software expects to be run under Linux. For best results, ensure you have updated your BIOS to a recent version before starting. If there is too large a difference between the BIOS and EC versions then the flash process will not complete. 1. Ensure you have installed the prerequisite packages On debian, this can be done with: apt-get install build-essential git mtools libssl-dev 2. Clone a copy of this repo on to your computer: git clone https://github.com/hamishcoleman/thinkpad-ec 3. Change to the directory created by the clone: cd thinkpad-ec 4. Show the list of laptops and USB image file names: make list_laptops 5. Select the correct IMG name for your laptop. E.G. "patched.x230.img" for the x230 laptop. 6. Make the fully patched iimage for this laptop (this will download the original file from Lenovo and patch it): make patched.x230.img 7. Insert your USB stick and determine what device name it has. This command should help you find the right device: lsblk -d -o NAME,SIZE,LABEL 8. Write the bootable patched image onto the USB stick device WARNING: if you do not have the right device name, you might overwrite your hard drive! sudo dd if=patched.x230.img of=/dev/sdb Your USB stick is now ready to boot and install the patched firmware. Ensure your BIOS has been configured to boot from "Legacy" and not "UEFI" before trying to boot. When you boot this, you will be prompted with information about the patch and asked to confirm your laptop type. It will then automatically flash the patched firmware. Notes: * You can also create a bootable CDROM image for burning to a disk by asking for a ".iso" file instead of the ".img" in step 7 above. Then you can use your normal CDROM burning tools to put this image on a blank cd and boot it up, skipping steps 8 and 9. * More information for hacking on this can be found in the docs/HACKING.txt file. * If you normally use UEFI boot, there has been at least one case where the EC does not get flashed until the BIOS is switched back into UEFI mode - after which the EC was automatically flashed on the next reboot. * To enable the battery patch, look at the "*.OFF" files in the subdirectories and rename the right one to remove the ".OFF". Ensure you start with a clean build ("make clean") to get the new patch applied. * To make an installer that reverts any EC changes, rename all the "*.patch" files in the subdirectory for your laptop so that they have "*.OFF" appended to them. Ensure you start with a clean build ("make clean") Then build with the normal instructions.