Monday, October 13, 2014

ArcadeUSB : Simple way to connect arcade buttons to USB Interface

 

 

Version : 2014-10-13

This arduino sketch has been developped for my bartop project.

Just few words about my it. It is not yet finished but it is composed mainly by :

  • some wood,
  • a PC,
  • a LCD display,
  • buttons and joysticks.

To manage the buttons, it is necessary to have an interface between buttons/joysticks and the PC in charge of the emulation. There are different solutions to do that.

  • Reusing an existing keyboard. This is cheap but it is difficult to assign buttons to specific key because the matrix is not so simple,
  • The other solution could be to buy a "ready-to-use" interface but I do not like this choice,
  • The last one is to make the interface by yourself.

Instead of re-inventing the wheel, I have chosen the Teensy ([Web site|https://www.pjrc.com/teensy]) as a developpement board. It is arduino compatible but it manages the USB natively. Because I need to manage at least 30 different keys, I have decided to add an input-mutiplexing interface to the Teensy (See IExpender project).

To go back to the sketch, it is very simple. It has been developped with Arduino 1.0.5 IDE to target a Teensy 2.0. Buttons should be connected to the interface (IExpender) according to the mapping table (See code).

Then the interface has to be connected to the Teensy board, and of course the Teensy to the PC

Have fun !

Buzz

 Package


 

Tuesday, September 30, 2014

IExpender : Generic 4x 8bits input ports

 

Version 30/09/2014

When playing electronics with microcontrollers, you sometimes need to manage a lot of inputs (sensors or buttons).

Instead of using a bigger controller to have more IO ports, it is better or simpler to add extra components to it.

This piece of hardware, based on simple logic chips, uses 10 pins (8 bits for data and 2 bits for control) to manage 32 inputs.

In my case, I need this to connect 32 buttons to an arduino board.

Usage and restrictions

  • 4 banks of 8 bits. Each bank handles 8 inputs,
  • Bank number is selected with 2 control signals (signals A and B on 74LS138),
  • The board can be extended to manage 64 inputs (4 other 74LS541 must be added)

Enjoy !

Buzz

 

Package 

Atari 7800 Multicart

 

Version: 30/09/2014

A long time ago, I have created a Multicart for the Colecovision.

Now, it is time to do the same for a very nice console : Atari 7800 console.

For the moment, only a prototype has been made and I am still debugging it. I will post the full package when all bugs are fixed.

Keep in touch !

Buzz

Expansion shield for Arduino UNO

  Expansion shield for Arduino UNO Version : 14/04/2023 This little board and the source code are part of a CS Bomb-like project to be us...