The idea of gutting an original Commodore 64 and replacing the motherboard with a Raspberry Pi is far from new. In fact, I have already done it using an old breadbox case (link). However, during the modding process of that machine the case was completely destroyed and it will not be possible to restore it even if I wanted to 🙁 So when I was asked to do the mod all over again, now with the aid of a case friendly 3D printed conversion kit specifically made for modding a Commodore 64 C case with a RasPi, I immediately accepted! I received the 3D prints a few weeks ago from COREi64.com (link) and instantly made a dedicated post on them as they are very well made (link). The 3D conversion kit costs 65$ plus shipping from Canada and they can be ordered in a variety of colors.
I wanted the machine to look just like an original Commodore 64 C on the outside, but with its internals replaced by a Raspberry Pi 3 Model B and the original C64 power supply unit should be used to run the Raspberry Pi. As a little teaser of what to expect, the final mod ended up looking like this – The C64 RetroPie Mod:
Building the Machine:
The components used for making the Commodore 64 RetroPie Mod included an original beige Commodore 64C case, a green 3D printed conversion kit from COREi64.com, a Keyrah V2 from Individual Computers (link), a Neutrik HDMI plug (Neutrik NAHDMI-W-B), a 0.5m HDMI cable, two short USB cables (Type A/Micro B) and the power connector from a broken C64 motherboard.
Powering the RasPi
I have a few broken Commodore 64 motherboards that I use for spare parts when doing repair jobs. Early on I decided to use the power plug from one of these spare boards for powering the RasPi. This way I did not have to go get one of them ugly wall warts! A Dremel was used to separate the female power plug from the mainboard. As the whole idea of the mod was to keep the Commodore 64 case intact, hereby retaining the option of converting the machine back to its original state, the rear side holes were used for all interface cables. Thus, the ‘Video’ port would accomodate the power inlet.
The 3D printed material is a little brittle, so care should be taken when drilling holes. Heat is another issue that should be avoided (who would have thought…). Using a rotary tool will melt the material within seconds – so be careful! The female power plug is mounted using an original screw terminal in the case bottom. The black self-tapping screws are not included in the conversion kit from COREi64.com – I got them from China real cheap 🙂
Two pin headers were soldered into the mounting holes of the removed power switch for easy access to Ground and 5V+. Finally a modified USB cable was used to power the RasPi board through a micro USB plug. The RasPi can run power hungry devices through its USB connections of up to 2.5A, but a power supply of 1.2A will provide ample power to run the Raspberry Pi for most applications. In this context, the C64 power supply can provide 1.7A@5V. As I only intend to run a keyboard (and a green power LED) through the USB connection (and maybe a game controller) it should suffice. After about 6 hours of continuous use of the Raspberry Pi, the power supply did not even get lukewarm, so I am not too worried about overloading it 😉
The HDMI connection from the RasPi went through a Neutrik HDMI plug (Neutrik NAHDMI-W-B). Only the central part of the plug was used. The plug fits perfectly into the ‘Serial’ port of the original case without doing any modifications. Finally, some hot glue was used to make sure everything would stay in place. Care was taken that no glue touched the case hereby making it easier to remove everything if I should ever want to convert the machine back to its original state.
Mounting the Raspberry Pi
Next up was mounting the bracket which holds the Raspberry Pi. The 3D printed conversion kit included some 3D printed washers to keep everything in place – nice detail! The kit also includes black oxide screws and some stainless steel washers which makes it very easy to fasten the Raspberry Pi using the brass heat-set inserts. The micro SD card of the RasPi can easily be reached from the outside using the small slot in the Cassette port…
In order to have the original Commodore 64 keyboard work as a modern USB PC keyboard, a Keyrah V2 was installed. The Keyrah PCB allows connection of classic computer keyboards (like the Commodore 64) to modern computers via USB. It also supports digital joysticks by translating the joystick events to key strokes.
The conversion kit came with a plate that seals off the gap surrounding the USB connection of the Keyrah.
Power LED mod
To finish off the hardware part of the build, a green power LED was made as the cables of the original LED was too short. The LED cable was made based on this post (link)
The Finished C64 RetroPie Mod:
After less than two hours (including coffee breaks and the mandatory photo shoots!) of intense building, the machine was back to normal on the outside. The 3D printed conversion kit blocks off all the rear ports with a sleek finish. The micro SD card can be reached from the outside of the case. The Serial port functions as a HDMI-connection while the Monitor port is used for powering the system. The entire machine ended up with quite a clean look.
During the initial phase of the mod, I wanted to add an USB connector to the Expansion port, but changed my mind – a little too late though… Bummer!!! An extra USB plug may be mounted at a later time to accommodate, e.g. a game controller for other emulators than the Commodore 64.
An external view of the plate that seals up the gap surrounding the USB connector. Once again, the attention to detail is stunning and gives the machine a very nice finish.
There is plenty of room even with the electronics installed.
The sweet looking Raspberry Pi 3 Model B with all the cables attached.
The ceramic disc capacitors are just for showing off. Gotta keep some of that retro feeling…
The larger 3D printed bracket has a long arm which, besides securing the attachment to the case bottom, also has ‘cable tie holes’ for controlling the inevitable cable mess. It does not get any easier than this! …and the Keyrah V2 residing peacefully in the right corner…
Installing the Software:
The Linux distribution that I was looking for should be easy to install and have a retro gaming front-end installed natively. I basically wanted to get going as fast as possible without doing tons of Linux terminal stuff! In this respect, I found that the RetroPie (link) distribution had exactly that (hence the name of the mod). After installing RetroPie, I setup the wireless connection from the RetroPie main menu. The Commodore 64 emulator Vice is not one of the standard emulators on the system, so this had to be done manually using the menus of RetroPie.
As copying game roms is not straight forward coming from a MS Windows system, I used FileZilla on my laptop to connect to the RasPi through the wireless connection. By entering the RasPi’s wireless IP address (can be found in the RetroPie wireless setup menu) along with the username pi, the standard password raspberry and port 22 would log me into the Raspberry Pi.
After copying a few of my favourite Commodore 64 games to the /home/pi/RetroPie/roms/c64 folder, the machine was rebooted and the games were available in the emulator menu (RetroPie calls this Emulation Station). Managing the specific emulator settings were done directly in the Vice emulator.
The C64 RetroPie Mod in action:
Here is a small video of the machine running a quick game of Commando using the Commodore 64 Vice emulator on the Raspberry Pi.
The machine has been build for playing Commodore 64 games only which is evident from the very few cables needed for creating the mod! If considering installing other emulators on the machine, adding an USB connection would be the obvious choice. This can easily be done in the, e.g. Expansion port opening (as I already kinda did by mistake…). Different game controllers can then be inserted into this USB port depending on the console being emulated (e.g. NES or SNES). It should be a pretty straight forward job.
In my previous Commodore 64 RasPi mod I used the very first version of the Raspberry Pi, a Keyrah V1 and the ChameleonPi software distribution (link). This combination of hardware and software was far from stable, most likely due to the inferior capacity of the RasPi. Often the keyboard would not function correctly or the software would freeze. Plugging in new USB hardware (e.g. a wired mouse or keyboard) called for a system reboot and often the drivers had to be installed manually (using a Linux terminal). For this current mod, I used a Raspberry Pi 3 Model B (highly recommended!), a Keyrah V2 and the RetroPie software distribution (version 4.1). The combination of the newer hardware and software worked flawlessly! Booting the machine takes about 20 seconds and USB devices work right after being plugged in (e.g. an Xbox 360 controller for MAME games). The wireless network is also a very nice feature for transferring new roms to the system without the need for a cable connection! The Scraper feature of the RetroPie software allows for automatically obtaining game information online. It’s really easy being a modder these days!
As evident from this post I really really like the 3D printed conversion kit for the new style Commodore 64C cases (who doesn’t like 3D printed stuff, right?). It took me less than two hours to install all the hardware including drilling and soldering – and I was not in a hurry. The 3D printed C64 C conversion kit makes it very easy to make a professionally looking machine. Everything fits perfectly and the black oxide screws make for a nice finish (the black self-tappings crews are not included in the kit, but Ebay have heaps of them…). Printing the parts for the entire conversion kit takes about 10 hours of continuous printing. After the printing process, the support material has to be removed and the heat-sets inserted into the prints for accommodating the screws. So quite a bit of labour has been put into these little beauties. In this respect, the pricetag of 65$ plus shipping from Canada seems quite fair and is obviously not a gold mine. I’m just thankful that someone has taken the time to produce these little gems. Great job COREi64!
Tired of the old beige Commodore 64 case? In less than 10 minutes, everything can be transferred to one of them nice looking transparent Kickstarter cases in order to show off the 3D prints to the rest of the world… Happy Raspberry Pi modding!!
© breadbox64.com 2016
17 thoughts on “The C64 RetroPie Mod”
Hi! Very nice done. Can it be done to the orignal C64 Breadbox? Thanks.
Hi there. Yes, it can also be done to a breadbox case. However, the dimensions of the 3D printed conversion kit is a little different for that case. At the COREi64.com store (link) look for the ‘Commodore 64 Raspberry Pi Conversion Kit for Breadbin Style 64‘. That version will accommodate the old style C64 case 🙂
Hi, is it possible to share the 3d printer files so I can print myself and attempt this mod?
Hi Robert, I don’t have the 3D printing files 🙂 COREi64, who created the prints, also owns them. But the prints can be purchased on his website or on Ebay.
Hi, I have a pressing question… Is it possible to use real sid-chips (two of them), rather than emulation with a Pi or Odroid?
I’ve seen people play SID tunes using the GPIO on the RaspPi. However, custom drivers were used in order to make it work. So it should be possible, but may include a bit of coding to make it work 🙂
Nice clean look to your mod. I’m aspiring for a similar finished product… Where did you get the panel mounted HDMI port? It seems to fit the C64C’s default hole perfectly. Did you have to modify it to get it flush with the case? Many thanks.
Hi there and thanks! I got mine online – just search for ‘Neutrik NAHDMI-W-B’. Neutrik has retailers worldwide, so it should be quite easy to obtain a copy. The Neutrik HDMI plug does fit perfectly and no modifications were done to make it fit. I just removed the bracket and used some hot glue to make it stay in place. It does not get much easier than that! Good luck with your RasPi-mod 🙂
I would like to connect a Commodore 1564 SDrive to a raspberry pi 3b and ideas are much appreciated.
Hi merv. I have never heard about that being done before. My best guess would be to connect the SDrive 1564 to a device like the ZoomFloppy from RETRO Innovations and then connect that device to the RaspberryPi using an USB cable. But it does seem like a lot of work instead of just adding more games to the SD card using the wireless LAN on the Raspberry Pi. Good luck with the project.
Does the power switch on the keyrah turn the pi on and off?
No it does not. The switch allows you to switch between the standard and the emulation keymap. The switch has a third position that can be used to send an ACPI signal to turn the computer on or off. However, I did not fiddle with this part 🙂
Nice solution. I also tried first to get RetroPi up and running (I am working with windows so …) The only question, how are you switching with your c64 keyboard to function F12 which is needed for Vice to run programs etc.. Kind regards. Gerard Leppers
Hi there. Well, I think I start games/programs by hitting fire on the joystick while programs are exited using the ‘+’ key on the C64 ;o) It should be possible to map keys inside Vice. Hope you get it worked out.
Hi, I’m looking for someone to convert my c64 mini into a commodore 64 retropie mod. All I want is to play all the games of c64.
Hi William, I don’t have a C64 mini myself. However, it seems that all you need to run your C64 games on it is by updating the firmware and then play all your favorite games from an USB stick. You can check out this video on how to do it: link
Pity the Keyrah did not fill up the cartridge port. It would be lovely if there was usb there too.