atvdude01
Posts: 23
Joined: Wed Oct 03, 2012 8:01 pm

Arcade stick Conversion project finished!

Sun Feb 10, 2013 1:30 pm

So about a month ago i decided that i wanted to build an arcade stick for Mame.... looked at joysticks and such but they were all quite expensive to part out (more then i wanted to spend). so i looked on eBay and found an old ps1 arcade joystick controller and it was quite cheap. i got it for $13 with shipping! so when it arrived i was amazed by the quality! it was very easy to hack with a common ground running throughout the buttons! it has a joystick, 8 playing buttons, 2 up top that i use for coin and play 1 start and start select i use for enter and esc. heres a pic of the top:
Image

so basically i took it apart and got out the ps1 controller board and disconnected all the wires.... the top 2 buttons were on their own pcb so i just wired to them and same with the led in the top left button. i just wanted an indicator for when it was plugged in. heres the inside before and after doing the conversion:
Image

Image

So the actual conversion was just to make usable with the pi and so i choose to go with a MCP23017 I2C i/o port expander. this worked great because i now only needed 6-7 wires going to the controller (i needed 5v,3.3v,and gpio for interrupts) Heres a pic of the pcb board:
Image

now for the software i was going to make a python script that would read the gpio and simulate key presses but then i found a topic on the forum where someone already did it in C and uses >=1% of the cpu. though it didn't use I2C. i i asked and the author mmoller2k and he added I2C! i did the tested and he did the codeing and after a couple days it worked perfectly! heres a link to his topic: http://www.raspberrypi.org/phpBB3/viewt ... 78&t=29962

so all in all it worked great! in his software he has a wiring diagram that i basically followed but i added just a 104 ceramic capicator between power on the MCP chip. so the config for software was easy just mapping the correct pin to the correct key press for mame. i setup all the buttons and its been workign great with all games... except those that need a special key held down for startup...

BTW: im running pimame 5.0 beta thanks to shea silverman!

if anyone has any question about it feel free to ask or if they have idea for it....
-Atvdude01

User avatar
LemmeFatale
Posts: 253
Joined: Fri Feb 01, 2013 8:47 pm
Location: UK

Re: Arcade stick Conversion project finished!

Sun Feb 10, 2013 2:35 pm

Nice work on this!

I was just wondering, does the stick connect up to the Raspberry Pi, or have you installed the Raspberry Pi into the stick for a "plug-and-play" sort of experience?
Classic - Raspberry Pi Model B (512MB) with Motorola Atrix Lapdock
Lemcon-One - Raspberry Pi Model B (256MB) PiMAME TV-Box

atvdude01
Posts: 23
Joined: Wed Oct 03, 2012 8:01 pm

Re: Arcade stick Conversion project finished!

Sun Feb 10, 2013 2:40 pm

LemmeFatale wrote:Nice work on this!

I was just wondering, does the stick connect up to the Raspberry Pi, or have you installed the Raspberry Pi into the stick for a "plug-and-play" sort of experience?
plugs into the Raspberry pi... didn't really want a plug and play type of system.... more of a controller. it actually hooks up to rpi with the original ps1 connector and an old ps2 extention cable i cut and hooked to a breadboard to pin it out lol. and there wasn't a ton of room in the controller.
-Atvdude01

User avatar
LemmeFatale
Posts: 253
Joined: Fri Feb 01, 2013 8:47 pm
Location: UK

Re: Arcade stick Conversion project finished!

Sun Feb 10, 2013 2:47 pm

Aha! Thanks very much for the answer. :) (As an aside, I couldn't tell from the photographs how much room there was within the joystick's casing, I must admit!)
Classic - Raspberry Pi Model B (512MB) with Motorola Atrix Lapdock
Lemcon-One - Raspberry Pi Model B (256MB) PiMAME TV-Box

atvdude01
Posts: 23
Joined: Wed Oct 03, 2012 8:01 pm

Re: Arcade stick Conversion project finished!

Mon Feb 11, 2013 7:51 pm

LemmeFatale wrote:Aha! Thanks very much for the answer. :) (As an aside, I couldn't tell from the photographs how much room there was within the joystick's casing, I must admit!)
no problem, ya its just that its very thin.. in most places to fit anything.... and i wanted a simple project :P

mmoller2k
Posts: 31
Joined: Fri Dec 28, 2012 2:52 pm

Re: Arcade stick Conversion project finished!

Tue Feb 12, 2013 5:59 am

Don't you just love it when a plan comes together?
Nice job, and thanks for the pictures.
I love how the Raspberry Pi is inspiring all this creativeness.

atvdude01
Posts: 23
Joined: Wed Oct 03, 2012 8:01 pm

Re: Arcade stick Conversion project finished!

Wed Feb 13, 2013 12:33 am

mmoller2k wrote:Don't you just love it when a plan comes together?
Nice job, and thanks for the pictures.
I love how the Raspberry Pi is inspiring all this creativeness.
i do! lol thanks for the help! hope to test for u in future if needed too!

qbone
Posts: 2
Joined: Wed Mar 13, 2013 5:24 pm

Re: Arcade stick Conversion project finished!

Wed Mar 13, 2013 5:29 pm

Would it be possible to use two of these IC's in series somehow?

I need a few more buttons than the 16 supportet by one chip. :)

I am in the planning of building a two player cabinet with 2x 4/8 Joysticks and 6 buttons each, 1 player, 2 player, credit and escape (I think).

User avatar
mahjongg
Forum Moderator
Forum Moderator
Posts: 12999
Joined: Sun Mar 11, 2012 12:19 am
Location: South Holland, The Netherlands

Re: Arcade stick Conversion project finished!

Wed Mar 13, 2013 7:39 pm

qbone wrote:Would it be possible to use two of these IC's in series somehow?

I need a few more buttons than the 16 supportet by one chip. :)

I am in the planning of building a two player cabinet with 2x 4/8 Joysticks and 6 buttons each, 1 player, 2 player, credit and escape (I think).
I2C I/O-expanders often have "address" pins, normally three bits. So you can use up-to eight of them on the same I2C bus, by giving them different addresses!

qbone
Posts: 2
Joined: Wed Mar 13, 2013 5:24 pm

Re: Arcade stick Conversion project finished!

Wed Mar 13, 2013 8:24 pm

mahjongg wrote:I2C I/O-expanders often have "address" pins, normally three bits. So you can use up-to eight of them on the same I2C bus, by giving them different addresses!
Oh... deerp.. If I had just opened my eyes and taken a wee bit closer look on the datasheet I wouldn't have had to ask :P
Quote: "Three hardware address pins to allow up to eight
devices on the bus"

Thanks for pointing it out to me :)

atvdude01
Posts: 23
Joined: Wed Oct 03, 2012 8:01 pm

Re: Arcade stick Conversion project finished!

Thu Mar 14, 2013 12:56 am

just to add a side note.... when u wire up the interrupt pins on the i/o to the raspberry pi u can tag them together into one gpio. You dont have to do each seperate. might save you some gpio pins. the wireing diagram in the program is very helpful.

Return to “Gaming”