Posted on

DPI Adapter + Game Boy Controller = AIO

I finally had time to populate and test my DPI adapter prototype which will be included as part of my all-in-one board for Game Boy Zero / 3. So far it’s working fine. The DPI screen looks way better than composite.

I actually built a Game Boy 3 using just a simple FPC breakout board for doing the DPI connections but it was very difficult to make it work. Obviously because of all the wires I soldered to the Pi which are prone to interference. But I managed to make it work anyway. So I made a prototype to make it easier to use a DPI screen.

The AIO board will be compatible with Raspberry Pi Zero and Pi 3. Both will have sdcard access from the “CONTRAST” area of the Game Boy case.

Posted on

How To Program The Pro Micro (atmega32u4) As A USB Gamepad Controller With Arduino

This tutorial should work on any Arduino Leonardo compatible board like the Sparkfun Pro Micro and the cheaper Pro Micro clones on ebay or Aliexpress with the QFN or TQFP chip package. They’re all the same. I highly recommend the Pro Micro clone in a TQFP package as they are less likely to have shorted pins than the popular QFN package with smaller atmega32u4 chips. I bought hundreds of those TQFP Pro Micros and never had any problem with them while I usually get lots of shorted pins from those QFNs.

Let’s Get Started (Microsoft Windows):

    1. First, download and install the latest Arduino IDE at https://www.arduino.cc/en/Main/Software.
    2. Run the software, create a new file, copy and paste the code from http://www.tinkerboy.xyz/arduino-usb-gamepad/.
    3. Now let’s install the Arduino Joystick Library. Download the library. On Arduino IDE, click on Sketch > Include Library > Add .ZIP Library…, browse to the zip file you downloaded and click Open. A message should appear at the bottom telling you that “Library added to your libraries. Check “Include library” menu“.
    4. Plugin in the Pro Micro with a micro usb data cable and let Windows install the device. Take note of the COM port number used by the device (COM9 in this example).
    5. Now on Arduino IDE, click on Tools > Board > Arduino Leonardo.
    6. Click on Tools again, choose Port and the port used by your Pro Micro.
    7. Finally, click the Upload button or press CTR + U to flash/program the Pro Micro. You should see “Done uploading.” at the bottom if it’s successful.

Here’s how to enable Analog Stick support.

Comment below if this tutorial works for you or not.

Posted on

RetroPie: Testing The USB Controller/Joystick Via The Command Line or Terminal

Let’s start by connecting to your Raspberry Pi/RetroPie either by SSH or just plug a keyboard and hit F4 to go directly to the Terminal.

Check if your USB controller is detected by:

lsusb

Mine is “Arduino SA Leonardo”.

Next, enter the following command to test the inputs:

jstest /dev/input/js0

Now press each of the configured button inputs and you should get a response.

Posted on

Wiring Guide for Game Boy Controller v1.1

The pwm audio on the Pi Zero is horrible and noisy so you probably be needing a low/high pass filter too.

For the controllers, you can visit GPIO Button Guide for Game Boy Controller v2.0 / v2.1.

Additional Parts You May Need:

Posted on

GPIO Button Guide for Game Boy Controller v2.0 / v1.1

Wiring the Game Boy Controller v2.0 to the Pi Zero or Pi 3’s GPIO pins is the simplest way to configure controller inputs for the Game Boy Zero/3 without any additional component. You can use the following diagram to solder the button inputs to the Pi and download a copy of RetroPie with the GPIO program already pre-installed.