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 a previous post, I described my idea of a universal console with the Raspberry Pi. I presented, what I called, the SNESDev-RPi, which is an SNES-controller interface for the Raspberry Pi. A core element of this interface is a SNES-adapter PCB that I recently designed and that does nothing more than providing all needed connections between the GPIO pins and two SNES connectors. In this post I describe the details for assembling the SNES-adapter that I showed in the previous post. Furthermore, I show how a single SNES socket can be directly connected to the GPIO pins of the Raspberry Pi.
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“.
After having finished my first projects with an Arduino I started to look for ways, which would allow me to port my project to an Arduino-compatible minimum configuration board. Ideally, I wanted it to be much cheaper than a new Arduino board. In this post, I describe how to put together a working protoype on a breadboard that can easily be programmed with the Arduino IDE afterwards.
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).