USB RetroPad Adapter

USB RetroPad Adapter

NEW: Now it supports the classic XBOX console!

Do you ever wanted to be able to play on your PC, Mac or PS3 with an original classic controller from the 80s/90s? Are you an Arcade-addicted and do you ever wanted to be able to build your own USB based Arcade controller including support to the PS button of the PS3 joystick?

USB RetroPad Adapter allows you to plug in the following classic joysticks onto your PC, Mac or PS3 and play with the following classic controllers as if you were playing with the real thing:

:. Sega Genesis (Mega Drive), Sega Master System and Atari 2600 controllers

:. NES controller

:. SNES controller

:. Nintendo 64 controller

:. PS/PS2 controller

:. Game Cube controller

:. Neo Geo CD controller

:. Sega Saturn Digital controller

:. TurboGrafx 16 controller (NEW!)

Arcade controls support

USB RetroPad Adapter also comes with handy screw terminal connectors, allowing you to hook up a homemade arcade control to it and and use it to play your favorite games on your PC or PS3!

Extension cables

USB RetroPad Adapter comes in a nice acrylic case. This small case is the main module and it has an USB connector to be plugged to your computer or PS3 and a DB9 connector. The main module, as is, is compatible with Sega Genesis/MegaDrive, Sega Master System and Atari 2600 (other DB9 connector joysticks may also work, but they are untested): you just plug the DB9 based joystick to the main module!

However, in order to use the main module with other controllers, you'll need an "extension cable" for the type of joystick you want to use with the Wii RetroPad Adapter. There are currently extension cables for the following controllers:

:. NES controller extension cable

:. SNES controller extension cable

:. PSX/PS2 controller extension cable

:. GameCube controller extension cable

:. N64 controller extension cable

:. Neo Geo CD extension module

:. Sega Saturn extension cable

So, for example, if you want to play only with a Sega Genesis, Master System or Atari controller, the only thing you need is the main module, but if you want also play with a SNES controller, you should also get a SNES controller extension cable!

If you want to use the USB RetroPad Adapter as a homemade Arcade joystick, all you need to do is to attach the arcade stick and buttons to the screw terminals, select the "Arcade" switch and start playing! No soldering is necessary! :)

USB RetroPad Adapter Lite Edition

If you just want to be able to use the classic controllers on your PC, Mac or PS3 and you have no interest in Arcade controllers, you might want to get a Light model. It's pretty much the same as the normal model, but it doesn't come with the screw terminals and it's smaller:

USB RetroPad Adapter for XBOX (did I say NO INPUT LAG? :)

That's right! Now you can use all of those beloved retro-controllers on your original classic XBOX (not the X360!). All you need is the USB RetroPad Adapter for XBOX, the usual USB cable for it and a converter cable that will convert your XBOX joystick port into a female USB port, like the one below (easy to find on eBay, and it's also very cheap):

Upgradable Firmware!

As of July, 1st 2012, the USB RetroPad Adapter has now a DFU mode! That means that you'll be able to update the firmware of your adapter in a very easy way, without the need of any extra hardware, such as an AVR Programmer!

The advantages are:

- You will be able to download and burn new firmware releases, with bugfixes and support for additional controllers

- You will be able to convert your XBOX adapter to a PC/Mac/PS3 model, and vice versa, simply by changing the firmware

In order to put your adapter in DFU mode so you can upgrade its firmware, you'll need a Sega Genesis or a Sega Master System pad. If you don't have any of these, you can build a "DFU dongle" using a female DB9 connector and shorting pins 4, 8 and 9 with wires and solder.

The steps to DFU mode are:

1 - Disconnect the adapter from USB
2 - Disconnect any controller or extension cable from the adapter
3 - Connect a Sega Genesis or Master System pad to the adapter (or the "DFU dongle" you might have built)
4 - Keep pressing the RIGHT and C buttons simultaneously on the controller (RIGHT and BUTTON 2 if you're using a Sega Master System pad) while plugging in the USB cable to the Adapter
5 - You should be now in DFU mode! :)

In order to burn a new firmware once in DFU mode, you will need the HIDBootFlash application (Windows). Once you open it and click the "Find Device" button, you will see a screen like this:

If you get an error message when trying to run HIDBootFlash, you might need to install the MS VC++ Runtime 2005 bundle.

You can see that the device was correctly detected from the text "HIDBoot detected" below the "Find Device" button.

Before selecting the correct .hex file for burning (.hex files are the firmware files), you need to pay attention on the "Device size:" information from the box in the middle. From the image above, we can see that the device size is 16384 (you can safely ignore any - [minus] sign before this number). The other possible value for the device size is 32768. This depends on the kind of micro-controller was used on your unit. So:

- If device size is 16384 your adapter's micro-controller is an atmega168p

- If device size is 32768 your adapter's micro-controller is an atmega328p

Now that you know the correct micro-controller used on your adapter, you can go ahead and download the correct firmware for it (right-click Save As):

atmega168p firmware files:

usbra-atmega168p-usb.hex - USB RetroPad Adapter firmware for PC/Mac/PS3 (atmega168p)
usbra-atmega168p-xbox.hex - USB RetroPad Adapter firmware for XBOX (atmega168p)

atmega328p firmware files:

usbra-atmega328p-usb.hex - USB RetroPad Adapter firmware for PC/Mac/PS3 (atmega328p)
usbra-atmega328p-xbox.hex - USB RetroPad Adapter firmware for XBOX (atmega328p)

After you've downloaded the appropriate firmware file, click the "Open .hex file" button, select the firmware file and then, finally, click the "Flash Device" button.

Wait for the process to finish and, voilá, your firmware has been updated!

Disconnect the USB cable and the "DFU dongle", if you have used one.

When you plug your adapter on the USB, it will be already running the firmware you has just burned!

For Linux and Mac users, you can download the source code of a commandline client here. Make sure you have all the required libraries installed on your system (libusb, etc...), enter the "commandline" source directory and type "make".

How to get it

This project is Opensource/Openhardware. Anyone can download the sources and schematics from

Despite the fact the project is Free and Open, and everyone is invited to get the schematics and source code, there are people who don't want (or don't know how) to mess with PCBs, soldering and electronic components. For people like that, I have some ready-to-use adapters for sell, so if you are interested, you can visit!

The User Manual for the USB RetroPad Adapter for PC/Mac/PS3 can be downloaded HERE.

The User Manual for the USB RetroPad Adapter for XBOX can be downloaded HERE.

Happy retro-gaming!


Creative Commons License
USB RetroPad Adapter by Bruno Freitas is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.