Whilst pondering the ins and outs of the NinjaCade project, it was obvious that hooking up two joysticks and a myriad of buttons was more of a job than the Raspberry Pi’s on-board GPIO can handle.

To cover as many emulators and games as possible we’ll use the standard 4 way mechanical joystick coupled with as many buttons as possible. With limited GPIO pins available on the RPi, it’s time to breakout an MCP23017 I/O Expansion chip. These kickass IC’s not only cost less than £1, they also provide 16 additional (and buffered) GPIO’s for your Raspberry Pi whilst only requiring a connection to the I2C bus.

To make the interface board hardware, I’ll need the following parts:

  • 2x MCP23017 ICs & 28DIL Sockets (along with 25uF capacitors)
  • 2x Clicky Joysticks (and heaps of maskable buttons) from here
  • 2x Adafruit PermaProto boards
  • 20x PCB Screw Terminals
  • 1x 5mm LED and appropriate resistor (for a future v2 release)

I got everything that I needed from ebay…

16A 300v Screw Connector

16A 300v Screw Connector

MCP23017 IC/DIL Socket & Capacitor

MCP23017 IC/DIL Socket & Capacitor

Microswitch Joystick & Buttons

Microswitch Joystick & Buttons

Adafruit Perma Proto Boards

Adafruit Perma Proto Boards

 

I was pleased with the quality of the joystick but not so happy with the buttons. They’ll do for now but in the long run  I think I’ll need to invest in better quality.

Continue Reading…

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>