Omepage

<< Main page
 < Projects

  USB adapter for Atari joysticks    
 

Foreword

Atari-style joysticks were the de facto standard for game controllers in the eighties. The design was first used in early Atari game consoles but got soon adopted by most home computers of the 8-bit era, best known examples including Commodore, Amstrad, Spectravideo and MSX. I still own a couple of Competition Pro sticks and just love the precise and tactile touch they provide. Pixels Past manufactures adapters that allow you to connect Atari-style joysticks into the USB port on your PC, making the OS think they are regular PC joysticks. The Stelladaptor seems to be a solid product but I think that the price per unit, at $29.95, is a bit too high for a single-joystick adapter. That's why I started thinking about building an adapter myself so I would be able to play emulated games (and others too) with these sticks.

Update

A friend of mine asked me to build a couple of these adapters for his PVR/gaming box. I told him to get two Logitech Wingman Precision gamepads for me to use as raw material but it seems that Logitech doesn't manufacture that model anymore. The old pad seems to have been replaced with the Logitech® Precision™ Gamepad, part no. 963335-0914, sometimes called Logitech Precision Gamepad Refresh. I bought one of these for 13 euros and opened it to see if it's as usable as a general USB interface as its predecessor. In short: Refresh can be used to make an adapter but it won't be as straightforward as with an older model. See my notes below for more details.

Planning

At first I thought of using PIC microcontrollers with USB support (like the PIC16C765 from Microchip Technology) to accomplish the task. But I soon noticed that the chips cost around $13 a piece (plus shipping) and decided to switch to plan B pioneered by Marko Mäkelä: exploiting the internals of a cheap USB gamepad. The best gamepads for this purpose are those with only digital inputs on them (no pressure sensitive buttons or analog sticks) so you wont be paying for parts you don't need for the adapter. Marko built two Atari connectors into a working gamepad but after I got my hands on the cheapest pad I could find - the Logitech Wingman Precision USB (9.95 euros) - I promptly decided not to follow his lead. These gamepads must be the reason word "cheap" was invented for. It's actually hard to hit the direction you intented using the stiff D-pad and the buttons don't deserve much higher praise either. So I ditched the plastic casing and concentrated on what's inside.


Pic. 1:
Logitech Wingman Precision USB, still intact.

Pic. 2:
Gee, can't say its crowded in here... The lone IC handles the USB communications and reads the digital inputs. The only other components are the voltage-stabilizing capacitors and the pull-up resistors for the shoulder button inputs.

Pic. 3:
The bottom side of the board with the button contacts.

As you see in the pic #2, the gamepad's circuit board layout is really sparse which made it easy to trace the connections from the input switches to the pins of the single IC. The chip itself is labeled:

CP5733BM
LOGITECH
3311590100 B 02
IND0424 505333

I don't know if these are used in any other controllers (probably not since more expensive pads usually have analog inputs too) but here's the pinout in case you want to hack the same gamepad or happen to find the chip elsewhere:

Wingman pin/function | Atari D-sub 9 connector pin
1 - BUTTON3-
2 - BUTTON4-
3 - BUTTON16
4 - BUTTON2See note
5 - GND8
6 - GND-
7 - USB DATA--
8 - BUTTON6-
9 - BUTTON5-
10 - VCCSee note
11 - USB DATA--
12 - USB DATA+-
13 - RIGHT4
14 - UP1
15 - LEFT3
16 - DOWN2

Note: Most computers that have Atari joystick ports provide +5 volts on the pin 7 of the D-sub connector to power autofire circuits. If you want to use the autofire function present on some joysticks, you have to connect D-sub pin 7 with the pin 10 on the IC, inserting a small resistor for safety.

Second note: Some alternate designs expand the de facto Atari standard with features like a second fire button. If you want to use a joystick that has two distinct fire buttons, you need to know which connector pin the stick use to achieve this expansion. MSX and Amstrad CPC use pin 7 for button 2 but other systems may differ. See the epanorama.net page about Atari-style joysticks if you are unsure about the connections. After you have figured out the correct D-sub connector pin, just connect it to pin 4 (BUTTON2) on the Logitech chip after which you can use the second fire button too.

Construction

After I figured out the connections there wasn't much left to do. I took a 9-pin male D-sub connector, soldered the wires into the pins required by the joystick and the other ends straight to the pins of the Logitech chip. Crude but effective.


Pic. 4:
The D-sub connector and the wires to IC pins connected.

Pic. 5:
Top view of the soldered adapter.

Large areas of the board housed contacts for the gamepad buttons which I didn't need anymore so I sawed a couple of centimeters off each end. The adapter could have been a lot smaller if I had unsoldered the IC and other parts and put them on veroboard but I wasn't really looking for style points here and went with the easy solution. Finally I installed the board and the connector in a small plastic box and the adapter was ready!


Pic. 6:
The finished adapter along with a Competition Pro joystick and MAME on Linux.

Conclusion

This is a nifty way to give your old Atari joysticks a new life beside your modern PC. The total cost of the adapter might be around 15 euros, the gamepad being the biggest expense and the D-sub connector and the casing setting you back a couple of euros each. It's also easy to build - I probably spent more time writing the text on this page than putting the gizmo together... So pick up your soldering iron and get hacking! :)

Gamepad Refresh

Logitech Precision Gamepad is the successor of the older pad I inspected and used in my original Atari adapter project. Here is a short overview about the updated model in case someone is wondering if it is as hackable as the older one.


The Refresh circuit board

 

Comments

Jurgi/Tristesse 15.6.2005 - 11:14
Really simple but great idea. I'll try to do something like this in my spare time. And I'm waiting for other nice projects.
Greetings from Polish Atari scene!
imagraphic 28.6.2005 - 1:07
http://www.sealiecomputing.com/retrozone/index.html

Check out this link!

You must either be into challenges, hard up for cash, or just didn't look hard enough on the internet. The Retrozone website has been around for at least a year and a half and you can get NES, SNES, Genesis, Atari 2600, Intellivision, ColecoVision, and TurboGrafx 16 controllers adapted for USB for a reasonable price. They even sell the USB adapter & microprocessor board kit if you want to solder it yourself or you can send them your own old controllers to be converted!
Omegas 28.6.2005 - 14:05
You must either be into challenges, hard up for cash, or just didn't look hard enough on the internet.

Heh. I love hardware hacking so I wanted to do this myself. And as far as I know, it's still the cheapest way to USB-ify digital joysticks. But thanks for the link, I may have uses for this Retrozone stuff later...
Stefan 28.6.2005 - 16:59
Thank you for this great idea! For such a long time not I wondered how to best connect my competition pro to the pc.
I will try this asap and hope that fMSX works with this ...

By the way, I found it really refreshing to read the letters MSX on a mainstream web site like MAKE...

Good luck for all you future projects!
Bryan C 29.6.2005 - 22:40
Neat project! Another commercial alternative is the Stelladaptor, sold by AtariAge.com, designed for this same purpose. I have one and it works great.
Timo 1.2.2006 - 21:35
Have you had the opportunity to study the new Refresh model yet? I am about to buy one, and I was just wondering is there any problems with it.
raphael 2.5.2006 - 20:46
Whew! You just saved me a week of pointless wheel reinvention. I was going to go all out and make a pic18f4455 based design, but finding this page saved me from my self. I'm going out to get the sacrificial joysticks right now! nice work!
 

Add a comment

Name Email
Website URL  (email address won't be shown in public)
Message
 
 
© 2003-2010 Henri Vilminko