How I learned to stop worrying and love libreboot

Over the past few months I began a journey of lessons and hardship to achieve a singular goal. That goal, was to be free. I havent quite finished my journey, but I sure came a long way, and I’d like to tell you my tale…

It all started with a flag you see. No step on snek (gadsden flags for the uninitiated).


Adubs, get to the point. What does this have to do with libreboot?

Well everything you see. I wanted a laptop for the expressed purpose of only running the software I choose it to run because MUH FREEDUMS. So off I went to eBay in search of the perfect candidate. Not just any old thing would do. I had a very specific goal in mind. A memepad, with the keyboard nipple, and an obnoxious keyboard… The kind of thing you put lots of stickers all over about linux and brag about to your friends being superior than $CURRENT_YEARS_LAPTOP_OFFERINGS because ‘they just dont make em like they used to’.

Thats when I found her…

She was looking a little rough, but the price was right and someone had even gone to the trouble of installing ubongobango on it already… I knew then, this was the one. I smashed in my paypal credentials and drooled away pictures as I made my way through the check out process. “Now what?” I said to myself as I contemplated the direction this was going.

I started searching around for a new battery immediately. It was tough because theres TONS of really poor quality batteries out there from questionable manufacturers. If I was to find a decent battery I would have to be able to know what cells were used in it. I went so far as to ask the shady battery sellers who the OEM on the cells were… no joy. I would have to dig deeper. There were OEM batteries available but those were of questionable life left. No one seemed to be making quality replacements for these things. Finally I stumbled upon a listing on amazon for what seemed to be a reasonable aftermarket battery.

It was the right price, 9-cell, and showed a picture of samsung cells. I took a chance and got it coming along with a 90W charger. Thankfully it turned out to be totally legit. After a couple of cycles tlp-stat showed it at rated OEM capacity for a 9 cell and it was performing as such with up to 7 hours of messing around. Closer to 5 with youtube playback.

Then I started the real leg work on what I needed to do next…

The stock wifi worked in linux but wont work with libreboot so I had to source something compatable. Theres a lot of people out there recommending older chipsets but I didnt want to just settle on old chipsets. Most people regurgitated the docs saying Atheros AR9285 chipset, but those arent even dual band. I realize the laptop is a core2duo but that doesnt mean all the parts have to be garbage.

I dug deeper into the requirements for libreboot, and it seemed to be anything that was supported by the ath9k driver in actuality. Looking at the ath9k compatibility list I found the most recent card was the Atheros AR9485, which is also known as the AR5B22. Back to ebay I went, and it wasnt long before I had one in the cart and checked out.

So now it was time. The hardware ducks were in a row… but how was I going to flash? I found some videos showing some of the process but nothing really step by step.

I owe tripcode, and dodoid for giving me some of the run down.

…but if any of you know me at all then…

So I really needed more help that I wasnt really getting. The docs for the libreboot page are for the beaglebone, and all I had was a pi 3. Through some more digging I found that the t400 always has the 16pin bios chip. So you for sure want the Pomona 5252 clip for programming.

It looks like this:

Youll also want some female to female jumpers like this:

This would get me connected to the GPIO header on the pi but I still didnt understand the process at all. Then I found the libreboot subreddit and subsequently this thread. I owe my success to u/T-400

Really though, my journey had only just begun. This began the daunting task of getting to the chip to flash it. You see the t400 is probably the worst machine to do this process to. Its not something I would ever recommend to a first timer and it made me rethink my initial decision to buy the thinkpad that I did. The x200 is significantly easier. Luckily I’ve had a fair few laptops apart and while this one certainly ranks in my top 10 for ‘wtf do you need all these screws for’, its doable if you plan stuff out.

The keyboard and touchpad are easy since those screws are labelled on the bottom. Theres probably 8 different types of screws in this thing and theres no way you can remember where stuff goes without organizing it some way.

I took pictures of cable locations as I disassembled

You cannot take enough pictures. This still left me with questions on reassembly (partially because I waited a long time to finish this).

You have to tear this thing down basically to the bare board to get to the bios chip because the frame covers it.

Finally after painstakingly disassembling I had access to what I needed. This little bastard was now all that was separating me from being FREE.

I got things set up kinda, but by this point I felt too defeated to go on much further than this.

The whole time I took this machine apart I was laying out the parts in the order in which they came off the laptop, and also taping the screws to each part where possible, and where not possible I drew a crude diagram indicating their location.

This would prove crucial later when trying to understand how this thing was put together. Note, theres 2 bottoms here. I ordered another one because mine had a crack in it. This ended up being really nice because it meant I could just put the screws for the bottom in the replacement while I did my thing.

Eventually my wife got tired of seeing a laptop laid out across the floor and put the fire under my ass to get this thing done… so I grabbed an SD card, loaded raspbian, and got to work plugging away following the previous reddit tutorial.

The first attempt was a failure. I had partially reassembled the laptop to get it booted and when the display didnt even light up I was heart broken. I went to bed that night frustrated and ready to give up… but I didnt. I worked my way through the tutorial again, this time being more careful that I was following the directions perfectly.


Finally I partially reassembled the machine… and…


kinda… Once reassembled I ran into graphical errors and failures to boot again… It crushed me until I started playing around with it. I eventually uncovered that it would now only boot with one particular stick of RAM. I had 3 samsung sticks and one micron… It only seemed to like that one micron stick.

This is where the story ends for now. Theres still much to do. I need to get more ram in this thing. I have booted the old install of mint I was running before I librebooted it, but still need to install something more ‘free’ like maybe openbsd or parabola. I sit back and chuckle a little when I think about how I did this from the comfort of my windows 10 install a little bit.

I’m sure that triggers someone out there but I’d say to them

I’m now just a little bit closer to being free than I was.

If you made it this far and read it all, thanks for your time and maybe I can help you do the same. If you didnt read it all, well… tl;dr libertarian turns freetard in an attempt to stop the 5G from infecting his laptop with the government… or something like that.



No would that be awesome to have librebooted computer, and have Windows 10 installed on it? :troll:

I don’t know it that’s possible, I’m also kind of…

Awesome project btw, I may have to get memepad to myself. :smile:


I’m such a sad sack. My most free device only runs Coreboot. (BRB, Raptor Condor incoming.)

Good, thorough writeup. Amusing delivery style. GNU/10


They say it’s not possible, but given it’s grub… Idk.

1 Like

There’s nothing wrong with coreboot

It’s the more reasonable of it all

1 Like

Fuck you beat me to it.

I think you have this … backwards? :thonk:

Cool project, though.


I literally hate you so much right now

But I love the write up

1 Like

This tbh.

You can build an x240 with the keyboard from an x230 and run coreboot with a neutered IME, theres even an IPS display upgrade. It would be a much better end result with nearly the same amount of effort, and mostly the same purpose.

Excellent project! Good luck on getting the kinks ironed out.

1 Like

UPDATE: Got the new kit of RAM in


I forgot where I found the post but I did eventually find someone who discussed how picky these machines become about ram after you libreboot. The key seems to be dual rank with 8 chips per rank, or 2Rx8. The best sticks in my experience have been crucial/micron. I have had none of my samsung sticks boot at any capacity I had on hand. I had some ‘elpida’ that also worked.

Ultimately the kit I used was the CT51264BF160B which are 4gb dimms giving you 8gb (7 and some change after the intel gpu takes its cut). I believe this is the limit of the system to utilize.

I had tried a kingston 8gb stick but no dice their either.

Mixing the crucial and elpida seemed to work ok.

Some disappointing news though is that tp-smapi doesnt work with libreboot so you cant control charge levels of the battery like you could with the stock bios. Also the backlight has some issues now too but nothing you cant either live with or work around. Both of these issues are known and hopefully the next update of libreboot contains fixes for both.

I also tried out debian but just couldnt get used to the oddities so I’m back on mint but without having checked the non-free software box upon installing.

1 Like

Im gonna revive this.

Why does coreboot (and probably libreboot too) have issues with lower frequency RAM. I Had to get 2400 vs 1866 because the lower frequency kits were not compatible

I dont think its ‘frequency’ at all. I believe its rank setup and timings. Just so happens that higher frequency manages to fix whatever issues core/libreboot have I think.

1 Like

It definitely seems to be this. The tighter timings simply are not liked as much. Looser timings for the win. Samsung B die SO DIMMS simply dont work