Raspberry Pi Pico Converts Retro Controllers for Classic Gaming Experience

CTRLDock Classic SE which uses a Raspberry Pi Pico to convert retro controllers to USB
(Image credit: @MultisystemFPGA)

Part of the nostalgia for retro gaming is how we played the games. Often we had a simple joystick (or joypad) and a single button as our interface. Using a Raspberry Pi Pico, the CTRLDock Classic SE aims to bring back these halcyon days for the MiSTer Multisystem FPGA solution.

The MiSTer Multisystem is an FPGA (Field Programmable Gate Array) gaming console that is designed to accurately emulate retro gaming consoles and computers of the late 20th century. In this era, various D-sub connectors were used across many different home computers and consoles. From the Commodore 64, to the Sega Genesis (Megadrive) the 9-pin D-sub offered enough pins for "Mortal Kombat" fatalities and avenging your crew mates in "Turrican 2." The MiSTer Multisystem provides USB ports for controllers, requiring the use of reproduction controllers with USB interfaces or using another Raspberry Pi Pico-based controller hack.

Controller Compatibility

  • Atari VCS/2600, 7800, 800, VCS, ST (Joysticks and Mice), Atari Keypad
  • Commodore Amiga (Joysticks and Mice), VIC-20, C64, C64GS, C128, CD32
  • Sinclair ZX Spectrum
  • Amstrad CPC, GX4000
  • MSX
  • Sega Mega Drive, Master System
  • NeoGeo joysticks and pads
  • Paddle modes with sensitivity adjustment

The $93 (£74.99 before tax) CTRLDock Classic SE provides a low-latency interface for period accurate controllers to work with your shiny new MiSTer Multisystem. The creators states that digital inputs have been "measured as low as 0.7ms" and analog at 1.4ms. That is fast enough for button mashing combos and accurate platform shenanigans. There is support for game controllers, joysticks, mouse, trackball and game paddles, and the kit can support two-player gaming. Nintendo fans will have to wait for a future model which will offer support for NES and SNES controllers.

On the front of the unit are four controller inputs, two 9-pin, and two 15-pin (for NeoGeo controllers). In the center of the PCB is a Raspberry Pi Pico, a board that has come to be the "go-to" for retro hardware enthusiasts. The Raspberry Pi Pico is surface mount soldered to the PCB, using its castellations to both secure and connect the Pico to the larger PCB. A USB lead from the Pico is used to connect the board to the MiSTer Multisystem's USB port. The Pico can also be upgraded with newer firmware, as it is released. If you don't own a MiSTer Multisystem, then the CTRLDock Classic SE can also be used with Windows, macOS and Linux OS as it appears as a generic USB HID game controller. 

At this time, CTRLDock Classic SE is in production, and units are not expected to ship for another 2 - 3 weeks. If you can't wait that long then you could make your own using a Raspberry Pi Pico or Adafruit's KB2040 as the brains.

Les Pounder

Les Pounder is an associate editor at Tom's Hardware. He is a creative technologist and for seven years has created projects to educate and inspire minds both young and old. He has worked with the Raspberry Pi Foundation to write and deliver their teacher training program "Picademy".

  • Findecanor
    The price might seem high, but I think it is justified for a board with such an impressive list of supported controllers.

    First it would need to have level-converters between 5V of the old systems and 3.3V that the Pico uses. Then a bunch of logic to be able to switch between different types of controllers.
    Even if most modes are compatible with Atari joysticks, anything more complex (such as a joystick with Autofire or gamepad with two buttons) could use different pins for a different system.
    Reply