I posted recently about trying to make a DMG GamePad - where I could use a full Game Boy as a gamepad on something like a MiSTer device where I could easily record or really anything that accepted a USB gamepad.

First try failed, I then pivoted and success! Here's how.

How it works

Using an Arduino Pro Micro acting as the gamepad and wired into a game link cable, the Arduino serves two purposes. Firstly, it listens for messages from the Game Boy over, what is effectively, SPI protocol.

When those messages come in, using the "DaemonBite Retro Controllers" as the basis for the code, the appropriate gamepad signal is sent over USB (the USB port that's normally used to program the Arduino).

The result is a low latency, simple to use Game Boy as gamepad.


Here's the parts I used:

  • Arduino Pro Micro - 16Mhz flavour (I used a cheap clone board from AliX)
  • DMG 04 - link cable (of course you could use a GBA or GBC link cable)
  • (Optionally) Game link port - this part really isn't required if you're happy with permanently soldering the game link cable to the Arduino

Tools are:

  • Flush cutters
  • Soldering iron
  • Arduino IDE

The code