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…
SUCCESS!!!
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.
UPDATE 1