I started this project because I did not like feeling of The64mini joystick at all, and I prefer the Suzo Arcade Joystick. Before I started the project I already ordered an existing converter but that took 1,5 week before I received it, in the meantime I had some spare time, so I decided to make a converter myself..
With this converter you can use an old Arcade joystick on the C64 Mini. It is converting the signal from the old type connector (DB9/Atari-based) to USB. It can be used on a stock C64 Mini machine, without any modifications.
- (Arduino) Pro Micro (clone) 16MHz/5v (ebay see image below.. that is what you need to fit in the 3D printed case)
- DB9 (d-sub 9) male connector (ebay)
- Push button momentary 7mm (ebay)
Pro Micro input signals
The following pins are used on the Pro Micro
2 = Joystick up
3 = Joystick down
4 = Joystick left
5 = Joystick right
6 = Joystick button 1 (fire)
7 = Joystick button 2 (menu button c64menu joystick)
Pins 2-6 are connected to the DB9 connector.
Pin 7 is connected to a separate button which can be used to return to the main screen of the C64 Mini.
Let’s do some wiring
|Signal Joystick||Pro Micro||DB9 connector
|+5V ( VCC)**||VCC||7|
** Not needed, only if joystick has autofire button/modification.
Solder the wires (see table above) to the corresponding pins of the DB9 male (back view) connector.
For the menu (2nd) button solder a wire from D7 to the button and the other pin of the button to a free ground hole/pin. Both D7 and ground must be soldered to the Pro Micro.
Original C64 Mini Joystick
You can use the original C64 Mini joystick for the optional menu buttons/functions.
Download project files
Case 3D design
The STL files to print your own case are included on Gitlab.
Flashing code into the Pro Micro
To make this converter work, some changes have to be made to boards.txt file.
This converter is loosely based on the Jess Technology controller as mapping device.
The boards.txt file is located in the Arduino installation folder or in your user folder if you are using Windows.
Search for “leonardo.build.vid=0x2341”, in my boards.txt file it is located on line 297.
Change the lines shown above to:
leonardo.build.usb_product="C64Mini Arcade to USB converter"
I accidentally posted a wrong hex value in the “leonardo.build.vid” line that must be changed in the boards.txt file.
The value must be 0x22BA instead of 0x8F0E changed it in the lines above
Compile and upload code
To compile/upload the code into the Pro Micro use the steps below.
- Click on the menu Tools
- Select the Board “Arduino Leonardo”
- Select the Port: [Corresponding port]
- Click on the menu Sketch
- Click on Upload
If everything went well, the Pro Micro is ready to be use as converter.
Bootloader upload/fix Pro Micro (Arduino Leonardo)
If you accidentally bricked your Pro Micro/Arduino Leonardo you will need to re-flash the bootloader.
It also will work on Vice as well, use configuration as below.
Confirmed working machines
- The C64 Mini
- Windows 7, needs manual driver installation, see the manual to do this
- Windows 10, will auto detect the driver for this converter
- Windows 8.x
- Other machines like Raspberry PI for example
If someone can confirm that it works on an OS listed in “Untested” please let me know (contact form), so I can update the list.
Difference between Arduino Leonardo and Pro Micro (clone)
The project described on this page is a hobby project, I took all the effort to describe all the information on this page as completely and as carefully as possible.
I can not be held responsible for any damage to your equipment, building this project is entirely at your own risk. If you do not have the knowledge to build this project, ask someone who does have this knowledge to prevent damage to your devices.
Use at your own risk.
Other Arduino USB HID RetroJoystickAdaptors