You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2.6 KiB

x230patcher

X230 automated UEFI firmware patcher using CH341A and SOIC clip. For firmware version 2.75 only! With this patcher you can remove the WLAN whitelist and unlock the advanced menu. You could modify the source to include your own patches.

Initial setup

First install flashrom. On macOS this will probably come from homebrew, on Linux from your distribution's package manager.

You will need to obtain a version of UEFIPatch that runs on your operating system. In the file romtools.py there is a variable called UEFIPATCH_LOCATION. Please set this to the path (relative or absolute) of your UEFIPatch executable, which can be downloaded from here. Be sure to download version 0.28.0 and NOT version A57 or A56 etc, these are from a separate codebase and do not yet support patching. After this you are ready to go.

Preparing the laptop

Install Lenovo UEFI firmware version 2.75, found here on their website. This can be done from Windows or from a bootable USB. Enter the UEFI Setup (BIOS) and disable the security chip.

How to use

  1. Open a terminal and cd into the directory under which you would like to store your UEFI firmware 'projects'
  2. Run python3 ~/path/to/auto.py, on Linux you will need to add yourself to the right group to access the programmer or just run the script with root privileges (sudo)
  3. Simply follow the instructions on screen
  4. Profit??

My disclaimer

If you are...

  • not confident in your abilities to use this software
  • not willing to accept that via defects in this software (which I have done my best to make sure are not present) your computer hardware may be damaged irreparably
  • expecting any help or support from me

...then you are kindly requested not to use this software under any circumstances. If you do decide to use it and your equipment is damaged, don't come crying to me! There's a full disclaimer included in the license.

With all this said, as far as I know the code is safe and works properly. In the interests of safety the chip is read twice and the results compared, to make sure the read was accurate. The original contents of the chip (both dumps) are saved and can be flashed back using flashrom if writing the patched firmware fails, or the patched firmware doesn't work.

License

The contents of this repository are licensed under the GNU General Public License, version 3. A copy of this license can be found in the file 'LICENSE' in the root of this repository.