Failing Successfully: An Adventure in Raspberry Pi
A couple of weeks ago I undertook a project for a friend, a birthday gift that was going to be amazing. What better gift for a kid who grew up in the 80s than a gameboy knockoff capable of playing every SNES game…EVER? So my quest to build the pigrrl was born.
Now, this was an ambitious project for me. While I’ve done a fair amount of woodworking, sewing, painting and design, electronics and programming were essentially brand new. I’d never soldered a pcb before, and the last time I used anything like linux was when my pc booted up into the command line. Clearly, it had been a while. But after reading through the Adafruit tutorial, and with the confidence of my friends and coworkers I decided that while challenging, this project would not be impossible.
One of the most valuable things I’ve learned on my Maker Journey is the power of failure, and this project was ripe with it. Starting with the case.
Before I bought any of the components or did any of the soldering I undertook the task of 3d printing the case, figuring that if I didn’t have a case, the rest of it would be pretty pointless. My first attempts were done on our MakerBot. The thingiverse file prints in two parts, a front and a back. I started with the case back and used a high infill to decrease the risk of the case splitting or warping. I also used some cube glue to stick the case to the plate, to hopefully stop the frame from lifting up during the print. This was a great idea and it worked…mostly. As you can see in the photo the bottom corner took a rather sad upward turn. Now normally this wouldn’t bother me, and in fact it didn’t. I liked the curve, it gave it a sort of ergonomic feel (I rationalized to myself) so I set about finishing it.
This is where things went horribly wrong. I started off using acetone to smooth the layers of the print. This is incredibly effective, and it only takes a few seconds of submersion to smooth out the rough edges and blend the layers together. Unfortunately, I didn’t submerge the case. Instead I decided to brush on the acetone, thinking I’d be able to control the smoothing better, and reduce the risk of eating through the plastic. This was great, and I got a nice smooth finish…until the color started to come off. One of the reasons acetone is so great in nail polish remover is because not only does it remove the enamel/shellac covering, it also eats away the color. As the blue started to wipe away, the smooth surface also started to disappear. And while I was willing to accept a slight up-bend in one corner, this was a lapse in quality I was not willing to endure.
And so I began printing again. This time I finished printing both halves of the case, but more disappointment ensued. The cases print flat side down (makes sense, most surface area and no need for supports) but this also meant that the raft and the front surface were adhered to one another. When the print was complete and removed from the printing plate…it was less than ideal. The same was true with the back.Â
Now, not wanting to destroy the front needlessly, I undertook my next smoothing attempt with the new case back. I decided to forgo the acetone until I had a flat surface, and so I moved on to sanding. While initially more successful, the sanding quickly revealed the inequalities in the print. Time for plan B.
Or should I say plan C…for CUBE! Thankfully we’ve got a few Cube 3d printers in the space as well, so after a brief tutorial I quickly migrated my efforts. The cube worked out great, and the case (now white instead of navy) was much smoother and easier to sand. Finally, I had succeeded in completing a shell for what was quickly becoming a behemoth of a project. Sanding, painting and sealing are my strong suits, so coming up with a design for the case and executing it were fairly easy and you can see the finished product below.
The lettering was by far the most challenging part, but thankfully there’s a Pretendo font out there for free. That and the laser cutter made for a quick stencil that was easily applied with a fine point blue sharpie. I sealed the whole thing with some UV protective acrylic sealer, and coated the darker gray square (meant to be the edges of the screen) with high gloss modge podge to give it that shiny finish. I thought at this point I was on a roll and I purchased all of the components and set off to complete the soldering.
Now, I don’t have many (read:any) pictures of this part for two reasons 1) I really just wasn’t thinking about it and 2) even if I had, it’d be hard to solder and hold a camera at the same time. So I just didn’t do it. Sorry! On the plus side Adafruit’s website has great circuit diagrams, so you can get the general gist of what this looked like by scooting over there. The hardest part of this was cutting up the pcbs from the SNES controller. Adafruit suggests you use a dremel, so I did, but boy did that stink. Literally. It stunk. I wasn’t expecting that (I know I should have, heating plastic never smells good). And if you undertake a similar project I strongly suggest you wear some kind of protective face covering because this stuff is nasty. With the pcbs all cut up I set to soldering the wiring. The wiring info can all be found on the Adafruit Pigrrrl page, and this part I ACTUALLY managed to do successfully. First try. No problems (shocker…I know). Which left only the most challenging part: programming the pi and connecting it to the pcbs.
This is ultimately where I failed. The Adafruit instructions, which had been pretty great up to this point, completely fall off the wagon here. In their defense, I suspect they expected you to have completed the cupcade project first, which I hadn’t done, and maybe to even have some experience programming in Linux (which I also, did not have). I didn’t have any problems downloading the disk image (which is great because I ended up doing it three times, and also enlisting a friend who tried probably three more times). The problems began in trying to re-orient the screen, and they came quickly and with ferocity. Issue number one was just logging in to the pi. The Adafruit instructions read as such:
Press Alt-F3 to drop out of the GAMERA software and to the shell.
Log in with pi/raspberry and edit
/etc/modprobe.d/adafruit.conf with sudo nano /etc/modprobe.d/adafruit.conf
So, of course I tried to log in with pi/raspberry as the login and edit as the password (I promise I’m not a complete troglodyte, you’ll have to look at the actual page to see how the text is displayed on the screen, edit is on the same line as the login, NOT as the rest of the code). I didn’t know that forward slashes were spaces and that pi would be the login, and raspberry the password. An amateur mistake to be sure, but an amateur I knew I was. Proclaimed even. Alas I remained undaunted, I had tackled and defeated my first issue, and so with that problem aside I moved on to what became the monumental task of re-orienting the screen. You can see  a few of my many, many failed attempts in the images that follow. Eventually, I was successful, but only after enlisting the help of a programmer friend (who also had trouble-I felt slightly vindicated in that regard).
Finally…succes:
With the screen successfully reoriented, the wiring all completed correctly (I tested the buttons and elastomers on the launch screen…no problems there!) I thought I was good to go. Ultimately this is where the Pigrrl and the instructions failed me completely. I couldn’t load any of the games. Not a one. I tried reinstalling the disk image. Loading the ROMS again. Only loading one ROM. Reinstalling the disk image again. Using a new disk. Using another new disk. But all to no avail. I couldn’t get it to work. I read the forums, I asked friends who knew way more about this stuff than I, and still no success. I had met my match and it was a raspberry pi. Junking the whole thing seemed a horrific waste. If nothing else, the screen glowed and made a pretty cool looking nightlight/paperweight. So instead of tossing it, I assembled it, packaged it (beautifully I might add) and gave it to my friend anyway…who loved it. That’s a true Maker for you. He called it a “project” kind of like getting a box of Legos except you know…partially completed and potentially irreparably broken (I may have added that last part).
The “finished” product:
After all was said and done I was glad I undertook the project, even though it didn’t work. I was able to practice my 3D printing skills, learned to solder pcbs and even tangled with Linux. Struggling through the process, though INSANELY frustrating, was ultimately pretty rewarding. And though I don’t see myself jumping into any Linux based raspberry pi programming projects in the near future (I’ll stick to woodworking thanks) I’m still glad I did it. I learned that I can do a pi project, and that with a little more practice and maybe a smaller starting point, I could probably even do one successfully. Overall, a huge win. So keep trying and failing and trying again!
(The exterior of the box. Had I only known how ominous that quote would turn out to be…)
Until next time…
-Annalise













