本指南将引导您完成解锁 BIOS、修改 EC(Embedded Controller)以适配经典键盘,以及自定义开机动画的全过程。我们主要利用 1vyrain 项目提供的 Flash a custom BIOS from URL 功能,在刷写自定义 BIOS 的同时,直接集成开机画面的修改,从而简化操作步骤。
- Windows 环境: 主要用于执行联想官方的 BIOS 升级程序,以提取核心固件文件。
- UEFITool 和 UEFIPatch:
- 重要提示: 截至目前,请使用 0.28.0 版本。带有 "NE" (New Engine) 标识的新版本可能缺少本教程所需的 patch 和 replace 功能。
- 官方下载地址 (v0.28.0)
- 本项目备份
- HxD 十六进制编辑器: 用于后续修改开机动画的二进制文件。您也可以使用其他熟悉的十六进制编辑器。
- 联想官方 BIOS 升级程序: 请根据您的设备型号,下载与 EC 修改兼容的特定版本 BIOS。官网可能隐藏了旧版链接,但文件依然可以下载。
- T430: g1uj48us.exe
- T430s: g7uj28us.exe
- T530, T530i: g4uj40us.exe
- W530: g5uj38us.exe
- X230: g2uj31us.exe
- X230t: gcuj32us.exe
- 本项目备份
Warning
以上链接源自 hamishcoleman/thinkpad-ec/Descriptions.txt。如果您需要使用其他 BIOS 版本,请查阅此文件。列表中的型号均为 thinkpad-ec 项目支持的设备。
-
在 Windows 系统下,运行您下载的 BIOS 升级程序。在安装向导中,选择一个合适的解压路径,并在最后一步取消勾选
Install ThinkPad BIOS Update Utility now。 -
进入您选择的解压目录,找到后缀为
.FL1的文件(例如G2ETB5WW/$01G2000.FL1),将其复制到您的工作目录下,并可重命名为BIOS.FL1以方便操作。 -
提取 BIOS 核心固件 (移除文件头)。此操作将从
.FL1文件中剥离掉文件头,得到一个 4MB 大小的纯固件文件。- Windows (PowerShell):
[System.IO.File]::WriteAllBytes('4MB_BIOS.rom', ([System.IO.File]::ReadAllBytes('BIOS.FL1'))[464..(464+4194304-1)])
- Linux: (来源)
dd if=BIOS.FL1 bs=1 of=4MB_BIOS.rom skip=464 count=4194304
- Windows (PowerShell):
-
执行成功后,您将得到一个名为
4MB_BIOS.rom的文件。这是未经任何修改的原始 BIOS 固件。 -
应用补丁。将
4MB_BIOS.rom文件和 patches.txt 文件(源自 digmorepaka/thinkpad-firmware-patches,本项目中提供的版本仅适用于 xx30 系列)放置在UEFIPatch所在的同一个文件夹下。您可以先打开patches.txt查看并按需启用或禁用特定补丁。

-
用鼠标左键按住
4MB_BIOS.rom文件图标,将其拖拽到UEFIPatch.exe的程序图标上,然后松开鼠标。操作成功后,会自动生成一个名为4MB_BIOS.rom.patched的新文件。
-
这个新生成的文件就是解锁了高级菜单并移除了白名单的 BIOS 固件。您可以将其重命名为
4MB_BIOS.patched.rom。如果您不需要修改开机动画,请直接跳转到 自定义开机动画 (可选) 部分的最后一步 (可选) TPM 签名 部分。
1vyrain中的方法是通过官方升级程序的自定义开机画面后刷写后, 再从设备中提取BIOS二进制文件;
而此方法通过直接修改固件内的 Logo 数据包来实现,避免了二次刷写的麻烦。
-
定位并提取 Logo 数据。
-
编辑 Logo 文件。
Note
建议直接在原始图片上修改,而不是创建一个全新的文件,这样可以更好地保证格式兼容性。
Warning
修改后的图片必须满足以下条件,否则可能导致显示异常或刷写失败:
- 位深度: 必须保持为 8-bit。
- 调色盘大小: 必须与原始文件一致(LOGO1 为 256 色,LOGO2 为 32 色)。
- 文件大小: 修改后的 GIF 文件大小不能超过原始文件大小 (
7800十六进制字节)。如果小于原始大小,需要用00填充剩余部分,以确保替换回splash.bin时总长度不变。
-
替换并保存固件。
-
(可选) TPM 签名: 如果您使用 TPM (可信平台模块),您需要对最终的 ROM 文件进行签名。请参考 thrimbor/thinkpad-uefi-sign 项目的说明完成此步骤。
此步骤的前提与 仅解锁 BIOS 指南 相同:您需要先完成 BIOS 降级,并制作好 1vyrain 的启动 U 盘。
主要是利用了1vyrain提供的 2) Flash a custom BIOS from URL选项实现。

-
为了向 1vyrain 提供一个 URL,最简单的方法是使用另一台电脑和一根网线搭建一个临时的局域网 HTTP 服务器。
- 物理连接: 用网线将您的 ThinkPad (电脑 A) 和另一台电脑 (电脑 B) 直接连接。
- 配置静态 IP: 可在 Windows系统下的网络设置中配置以太网,
- 电脑 A (待刷机): 配置比如 IP:
192.168.1.10, 子网掩码:255.255.255.0 - 电脑 B (文件源): 配置比如 IP:
192.168.1.11,子网掩码:255.255.255.0。
- 电脑 A (待刷机): 配置比如 IP:
- 启动 HTTP 服务器:
- 在电脑 B 上,进入存放
4MB_BIOS.patched.logo.rom文件的目录。 - 在该目录启动一个简单的 HTTP 服务器。例如,使用 powershell执行
python -m http.server 8000
- 在电脑 B 上,进入存放
- 开始刷写:
- 电脑A从1vyrain系统盘启动
- 在1vyrain 界面中选择输入2,当提示输入 URL 时,输入:
http://192.168.1.11:8000/4MB_BIOS.patched.logo.rom - 按下回车,刷写过程将自动开始。
在进行软件操作前,请先完成键盘的硬件修改。详细的硬件改装步骤(包括屏蔽针脚等)可以参考 ThinkWiki 的经典键盘改装指南或者一些视频网站上的实际操作内容。
thinkpad-ec 项目中的引导已经很完善了,以下是经过gemini-2.5-pro整理和总结的详细步骤, 一切以原项目中引导为主。
- 操作系统: 必须在真实的 Linux 系统下操作(不支持 WSL)。您可以使用 Live USB 系统,如 Ubuntu。
- 安装依赖:
- Debian / Ubuntu:
sudo apt-get update && sudo apt-get install make git - Fedora:
sudo dnf install git mtools openssl-devel && sudo dnf group install "C Development Tools and Libraries"
- Debian / Ubuntu:
- 下载项目文件:
cd ~ git clone https://github.com/hamishcoleman/thinkpad-ec cd ~/thinkpad-ec
- 安装编译依赖 (仅 Debian/Ubuntu):
sudo make build-deps
- 构建镜像: 运行
make命令并指定您的笔记本型号。这会自动下载官方固件并打上补丁。# 以 X230 为例 make patched.x230.img - 准备 U 盘: 插入一个可以被完全清空的 U 盘。
- 识别 U 盘: 运行
lsblk -d -o NAME,SIZE,LABEL找到您的 U 盘设备名 (例如/dev/sdb)。务必再三确认,选错会导致数据丢失! - 写入镜像: 使用
dd命令将镜像写入 U 盘。请将sdx替换为您的真实设备名。# 再次以 X230 和 /dev/sdx 为例 sudo dd if=patched.x230.img of=/dev/sdx bs=4M status=progress conv=fsync
- 设置 BIOS: 重启 ThinkPad,进入 BIOS 设置,将启动模式改为
Legacy Only。 - U 盘启动: 从您刚刚制作的 EC 补丁 U 盘启动。
- 第一阶段刷新:
- 系统启动后,会显示补丁信息,然后自动将新的 EC 固件“暂存”到 BIOS 中。
- 此过程完成后,电脑会自动重启。
- 第二阶段刷新:
- 电脑重启后,BIOS 会检测到暂存的 EC 更新。
- 如果电源、电池等条件满足,屏幕上会明确显示 "Flashing EC" 或类似信息。看到这个画面才代表 EC 正在被真正刷新。
- 刷新完成后,系统会正常启动。此时,您的经典键盘应该已经可以完美工作了。
整个流程可以概括为三个核心阶段:
-
准备自定义 BIOS 固件:
- 从联想官网下载特定版本的 BIOS 升级程序。
- 在 Windows 下运行程序以解压出
.FL1核心固件文件。 - 使用命令行工具移除文件头,得到
4MB_BIOS.rom。 - 使用
UEFIPatch工具为 ROM 打上解锁补丁。 - (可选) 使用
UEFITool和HxD提取、修改并替换固件中的开机动画文件。
-
刷写自定义 BIOS:
- 确保已按照 另一份指南 完成了 BIOS 降级。
- 制作 1vyrain 启动 U 盘,并从其启动。
- 选择
Flash from URL选项,利用另一台电脑和网线搭建临时 HTTP 服务,将自定义好的 ROM 文件刷入 ThinkPad。
-
刷写 EC 固件:
- 在 Linux 环境下,使用
thinkpad-ec项目的脚本,为您的设备型号构建一个包含键盘补丁的启动 U 盘。 - 将 ThinkPad 的启动模式切换到
Legacy Only。 - 从制作好的 EC 补丁 U 盘启动,让程序自动完成两阶段的 EC 固件刷新。
- 在 Linux 环境下,使用









