If you want to use your Raspberry Pi for gaming you certainly want to attach some sort of controller(s) to it. Since the Raspberry comes with two USB ports one way would be to simply attach any sort of USB gamepad or joystick via these ports to it. Besides the configuration this approach has the disadvantages that one or both USB ports become occupied and, what I think is even more disturbing, that an active USB hub might become necessary to provide enough energy to the controller(s). Also, if you want to get the real retro feeling you certainly want to use original controllers. The GPIO pins of the Raspberry allow the communication with all sorts of hardware and attaching, for example, SNES controllers can be done in quite a few steps. A user-space program that polls the controller(s) in the background was presented here. In the following I am presenting a dedicated GPIO adapter for the Raspberry Pi that allows an easy and safe connection of up to two NES or SNES controllers.
In my last post, I described a minimum configuration for an ATMEGA microcontroller, which is also used in the earlier Arduino boards, and I also explained how to program that microcontroller with an ISP. Here, I present a small all-purpose board that contains exactly that minimum configuration together with an USB-B connector. The USB connector has two purposes: First, it provides the 5V voltage as power source for the board. And, second, it is fully connected to the microcontroller, so that it can be used in combination, for example, with the V-USB library. At the end of this article I show an example for this board that implements a virtual keyboard. The board provides two programming interfaces: You can either use a 6-pin ISP, or a FTDI programmer to get your code on the microcontroller. And the last thing that I want to mention before we go deeper into the details, is that all parts of this boards (which are not so many) are through-hole parts. This means that you can easily solder the whole board without the need for costly equipment or professional soldering skills. Everything needs a name. Because they are tasty and I somehow thought of them at that moment, the board is called “Pancake“.
Previously, I presented my SNES-to-USB-Adapter. The adapter emulates a USB keyboard with which it is also possible to play iCade games on the iPad. Now, my ambition is to give it a more professional and solid look and one thing to do would be to put most of the wiring into a printed-circuit board (PCB).