Good videos, with context.
My personal fight against the modern laptop

My personal fight against the modern laptop

linux conf au 2017 - Hobart, Australia
2 HN recommenders · discussed 2017–2025
Open YouTube ↗

About this video

Hamish Coleman describes reverse engineering the keyboard controller in a Thinkpad and reflashing it with custom firmware. He covers how Lenovo secures its firmware, and his ongoing work on the protocol between the BIOS and the vendor flash tool.

Why it appears in the archive

HN people cite it as an approachable, hands-on introduction to hardware and firmware reverse engineering, and as the author's own account of the Thinkpad keyboard patch effort.

AI-generated summary and labels from the source dataset; verify important details against the video. Source & credits.

From the Hacker News discussion

josteink · 2017-03 · rec

For those who might want a somewhat indirect introduction to radare... Here's something from Linuxconf.au and hacking Thinkpads: [VIDEO]

Read original comment ↗
Klinky · 2017-09 · rec

I found this video on hacking old Thinkpad keyboards onto new Thinkpad models interesting. Required a lot of reverse engineering due to how the firmware in the Thinkpad maps keys: [VIDEO]

Read original comment ↗
RavSS · 2025-04 · reference

That is the general nature of reverse engineering efforts, but this one has been documented enough that you don't need to blindly trust completely random executables or code from strange places. You can manually recreate the process of building a patch for the embedded controller instead of just following instructions: [LINK] . Here's the presentation by the author himself at linux.conf.au (what used to be the biggest local Linux conference for those of us in Australia and NZ): [VIDEO] . This is of course not supported by Lenovo. Unlocking the BIOS is definitely more like what you described. It's the price to pay for freely playing around with processor power limits, getting AES-NI instruction set support, etc. I have not checked since 2019, so there might be a clearer way.

Read original comment ↗