Here is the "traditional" pinout of a 15-way joystick port:
Pin | Use | Pin | Use |
---|---|---|---|
1 | +5v | 9 | +5v |
2 | Button 1 | 10 | Button 3 |
3 | Joystick 1 | 11 | Joystick 3 |
4 | Gnd | 12 | Gnd |
5 | Gnd | ||
6 | Joystick 2 | 13 | Joystick 4 |
7 | Button 2 | 14 | Button 4 |
8 | +5v | 15 | +5v |
Connections are simple: connect the variable resistor for each joystick from the "joystick" pin to a "+5v" pin, and connect each button between its "button" pin and a "Gnd" pin.
Typically, button 1 connects pins 2 and 4; button 2 is pins 7 and 5; button 3 is pins 10 and 12; and button 4 is pins 14 and 12 (ie pin 12 gets used for Gnd for buttons 3 and 4).
(When we use this for Myriad, of course we won't normally be connecting buttons - instead we would want to wire the mixer fader remote start switches to the PC)
The problem arises because many modern joystick ports ALSO support a MIDI interface. The pinout of the 15 way connector now becomes:
Pin | Use | Pin | Use |
---|---|---|---|
1 | +5v | 9 | +5v |
2 | Button 1 | 10 | Button 3 |
3 | Joystick 1 | 11 | Joystick 3 |
4 | Gnd | 12 | MIDI Out |
5 | Gnd | ||
6 | Joystick 2 | 13 | Joystick 4 |
7 | Button 2 | 14 | Button 4 |
8 | +5v | 15 | MIDI In |
You'll notice that pins 12 and 15 now have a new use! So if you wired your buttons to pin 12, and your soundcard has a midi interface, you will discover, like we did, that buttons 1 and 2 work fine, but 3 and 4 don't!!
There is no need to panic: instead of using pin 12 as the Gnd pin for buttons 3 & 4, use pin 4 or 5 instead:
Button 1 - pin 2 to pin 4
Button 2 - pin 7 to pin 5
Button 3 - pin 10 to pin 4
Button 4 - pin 14 to pin 5
UPDATE: in order to make Windoze believe that you have a controller plugged in, you may need to cheat, and put 2 or 4 resistors between the joystick pins and any of the 5v pins, so it thinks it actually has a joystick. You can probably use anything between a 1k and 220k!
As they say, it's very easy when you know!