This is a 1963 Sky Tourer car radio that I've converted into a handy portable retro gaming console. It has a Raspberry Pi 3 built-in, with 6 arcade buttons and a joystick controlling those vintage RetroPie sprites via a Picade controller board. The radio's original volume and tuning knobs are the perfect home for the Start and Select buttons, keeping them handy but out of mashing range. Lighting things up is a Pimoroni Blinkt LED strip, which illuminates the radio's semi-transparent dial with different colours, depending on the game console being emulated.
It's a self-contained game system, with a sturdy handle so you can carry it anywhere and play wherever there's an HDMI port! It even has an extra USB port round the back so that Player 2 can join in, or a keyboard can be connected.
In case you can't see the embedded video the full build is covered on YouTube at https://youtu.be/Ys04Nz6xxxg
Tear-down & ConceptI picked up this old Ever Ready radio at the car boot earlier this year for £4 - it caught my eye instantly as by its layout it was obviously a car radio, but it also had a speaker of its own underneath, behind a shiny grille. Turns out this was a new idea at the time - a radio that spent most of its time wired in to your car, but could be easily un-docked and used as a normal portable.
This really made me think - I'd been wanting to build a bartop arcade machine for a while, but didn't really have the space for a separate cabinet and already enjoyed playing Retropie on the 28" TV on my workbench. I decided to build the console into this radio, so it could be docked in front of the TV most of the time, but easily unplugged to be used in other rooms or to temporarily make space on the worktop.
As usual I was convinced there'd be acres of space inside for all of the modern parts, so I began by taking the radio apart, discarding most of the components but keeping the outer shell and control knobs. It's always fascinating to see how things were manufactured - the soldered joints and components in this case were all so large you can easily imagine tracing faults and repairing individual bits of the circuit yourself. This radio was already beyond repair however (and missing it's "car cage"), so I didn't feel too bad about ditching the old innards for the sake of giving it a new purpose.
With the circuits removed the radio split into two distinct halves, the base unit with its shiny speaker grille and front fascia and the red "lid", which was really just an easily removable battery cover. Before dismantling I was concerned the lid would be too flimsy, but it's actually pretty solid - any harder or thicker and I'd have struggled to drill accurate holes in it, which was the next job.
Button HolesDrilling the holes for the arcade buttons definitely filled me with a bit of dread - it's one thing messing up a bit of wood that can be easily replaced, but with this one-off lid a single messy hole could ruin the whole effect. I decided on drilling the joystick hole first - it has a plastic collar that sits round the spindle, so even the roughest hole would be disguised.
This went well though, clamping the lid solidly to the bench stopped the flat drill bit I used from roaming around, and having some soft wood under the lid also kept it on course. Buoyed up by this success I drilled the additional holes for the buttons before I could change my mind. This also went great - largely because I'd drilled 1mm pilot holes already, to ensure the buttons would be accurately spaced from one another. In retrospect I think one of those drill bits that looks like a shiny Lego christmas tree would have been a less stressful choice!
A deep exhale later and I turned my attention to the rear of the lid. I wanted the Pi's HDMI and Power ports to be visible, to make "undocking" easier, so needed to cut holes for them. This was a bit of a tedious job involving some small holes and a lot of patient filing, but it turned out OK, if dusty. With the Pi oriented this way all of the USB ports would be hidden inside the case, so I also cut a hole so that a USB extension cable could be accessible at the rear. We'd recently started playing RetroPie games with 2 players and this is so much fun I had to make it possible with the Pi Tourer. After filing all the holes as neatly as I could the next job was to wire up the buttons & joystick.
Wiring TetrisCabling up the joystick & buttons was one of my favouorite parts of this build, as most of the hard work was already done for me. I'd bought a Pimoroni Picade controller board a while back, which is essentially an Arduino board with lots of inputs for switches, and this came with a handy wiring loom.
I didn't need all of the connections on the loom but still had to fit all of the cables in, this was made easier by separating them from one another and routing them as close to the edges as possible. Once all the joystick & button connections were made I fitted in the USB extension and secured it with more Sugru and hot glue.
Getting the small buttons into the volume & tuning knobs was by far the biggest challenge of the build - they were pretty much solid, with metal inserts, so it took a whole evening to drill them out by hand.
All Your Base UnitWith the top half complete the next job was to fit the Pi, Blinkt and original buttons to the base. This went well but needed some precise measuring to make sure the HDMI and power ports would be in just the right place.
I made a bracket from an old plastic box to hold the buttons & Blinkt board, which was held in place with small bolts. At the rear I also fitted a right-angle bracket with a nut so that the original screw could be used to securely hold the two halves of the build together.
Once these were all in place I attempted a test assembly - very tight and lots of squishing needed!
Cheat CodeI'd originally planned to just have a white LED strip inside the case for illumination, having rescued one from an old torch, but after connecting it up it was obviously not practical - it ran so hot that it melted the hot glue holding it to the bracket!
Then the idea struck me to use a Blinkt board - they're small & easy to program, and take minimal space, so this was an ideal choice. Than I wondered if I could somehow make the board display different colours depending on the game selection.
After some internet searching I read on the RetroPie Wiki that there are fairly customisable bash scripts to control functions based on menu/game platform selection - after some experiments and a lot of head scratching I was able to integrate these with commands to control the colour of the Blinkt LEDs.
The final code is fairly straightforward and is all documented on GitHub - it essentially runs a colour-cycling script when the system starts up, then switches to a solid colour once a game is selected, with the colours and emulator names mapped to one another in a Python script.
Spray and SugruBefore painting I did a final test put-together just in case - I've been caught out many times during the final assembly and wanted to be sure everything would fit. It did - but still with some squeezing - so I spent a while tidying up the internal cables to ease this.
With everything dismantled it was a nice little job to lightly sand and spray the base parts a glossy white, a great improvement on the dull aged grey. I was determined not to ruin the finish so left the parts to one side for over a week to harden while I sorted out the code.
Also in the meantime I made good use of some Sugru - it's like blu-tac but hardens like plastic, so it's great for projects like this. I used black Sugru to fill the gaps in the back of the case, and white to fix the nuts in place on the brackets that would hold the Blinkt, and also hold the two halves of the case securely together. It seems like a little thing, but it made assembly that much easier by not having to try and hold the nut with pliers while tightening the bolt. Once the Sugru had hardened there was nothing left to do but put the thing together.
AssemblyOne of my favourite times in any project is having all of the parts laid out just like a kit, ready to assemble. The lid part of the build was already complete, with button & joystick cables tidied as neatly as possible, so just the base unit needed to put together. This only took about ten minutes, but I was very glad to have done a test assembly before painting.
The moment of truth came when putting the two halves together - only one slight snag where I hadn't anticipated the USB cables for the Picade board and USB extension trying to occupy the same space, but this was easily resolved by removing some of the Sugru holding them in place.
TestingOn the first boot of the assembled project all seemed fine, it loaded up as expected and the Blinkt lit up nicely. At this point I needed to configure the inputs from the joystick & buttons, as all the RetroPie setup so far had been done via a wireless keyboard or SSH. It's straightforward to set up the input on RetroPie, just hit Start > Configure Input and follow the instructions to map each key/button to a game control. This is where things went a bit wrong - I got as far as "D-Pad Left", moved the joystick left and - no response.
It's things like this that make me really glad I made the project easily dismantleable! After unplugging everything and taking the console apart I could see straightaway that I'd pulled some of the cables off the joystick spade connectors. With these fitted more securely and everything reassembled the key mapping worked fine on the second attempt, and I was able to play my first game with the joystick & buttons combo - Dr. Mario naturally.
Ready, Player One.This project took about a month to complete in total, and was as much fun to build as it is to play on. I knew I'd have to look at the final result every day so tried to take my time to make sure the finish was as clean as possible.
My favourite part of the finished result is that it can be un-docked really easily from the workbench and taken to other rooms or a friend's house (or workplace) - it feels faithful to the original dual-purpose radio to have been able to recreate this function.
The only thing missing for now is a controller for Player 2 - but thankfully I included a USB socket and I've already thought of a plan to remedy this - look out for a new project in a few weeks' time when I'll be converting an original 1980s joystick for use with RetroPie.
My other Old Tech. New Spec projects are all on Hackster at https://www.hackster.io/martin-mander/projects and on our YouTube channel at https://www.youtube.com/channel/UCRrwSKYBu4N7P6HWZsWJ2MA
More details and a contact form are on our website at http://bit.ly/OldTechNewSpec. and we're on Twitter @OldTechNewSpec.
Comments