Raspberry Pi pains of the past
Don’t get me wrong, I love my Raspberry Pi’s and I have spent a lot of time on both successful and less successful projects. A lot has happened since 2012 when they first came out, more powerful hardware and much better software support. In the later years I have done everything from home automation projects, VPN gateways and Docker clusters. I totally forgot the pains of reaching to high on the old versions and running straight into a brick wall with limitations for what I tried to do. But now I remember!
Going through my scrap bin to get a touchscreen for my OctoPrint setup I found an old LCD keypad HAT. I got the idea of a quick and fun project, it wasn’t quick and it wasn’t all that fun! In the bin I also found a Raspberry Pi 1st gen and thought I would put it to good use.
The idea turns into “I will finish this”
A Raspberry Pi that always sit’s on my desk with all the available Raspberry Pi images on it, just select and image for any project. So downloading all the available images and putting them on a USB-stick, simple enough. Then getting the LCD up and running, write some code for the whole setup and be done.
The USB part is easy enough so I started checking out the LCD screen instead. I spent so many hours with so many different libraries, neither of them 100% compatible with this Adafruit knockoff. Since I wasn’t sure what exactly what the HAT was or it’s specifications I wanted to avoid writing command straight to it over IC2. So a prebuilt library would be quick and easy I thought. I spent several hours trying out all the legacy once I could find, clicking past all the deprecated notices. If the screen worked, the backlighting didn’t. If the screen worked with backlighting the buttons didn’t etc. This was supposed to be just a relaxing evening project but turned into “I spent so much time now so I have to finish it”.
Finally I surrender and used Adafruits old CharLCDPlate library even though it kept blinking the led on the board all the time. I went quick and dirty on the progress updates from the image cloning and got a blink with every update.
Then I realized that the Raspberry Pi 1st gen is so much slower then I remembered. In the same time it images one card I can do 4 of them on my laptop. So I spent all this time on a project that is immediately disassembled and forgotten, or at least I try to.
The write up was even worse
I figured that I had to share this and I like my write ups and examples to be correct an to the point. Since I tested and tried everything and anything I used my “ClonePi” to image a fresh card and started to set everything up from the start. Nothing worked, tried again…
Then two old, and to be honest, cheap SD-cards failed on me before I got everything working and tested. I put the code together on Github and thought about if I should put a disclaimer or a warning on it. If you like your mental health don’t do this project.
A lot has been improved since 2012 and a lot has changed. But all these projects and labs has given me so much knowledge and experience over the years. The tinkering mentality doesn’t only apply to Raspberry Pi but to everything tech. If you break it you will learn something. If you hit the limitations you will learn how to improve your approach.
So if you like to try this project and share in my frustration and remember the good old days, feel free. Just to warn you, this was supposed to be a quick and dirty proof of concept for an idea that seemed good at the time.