Tuesday, November 21, 2017

Controllers & ControlBlock update


The ControlBlock provides 16 GPIO extended inputs for each of 2 players. To use all of these, I needed a 17 pin connector (16 inputs + ground).  After playing with the 15 pin HD DSUB15 connector, I decided that was too complicated and was going to break.  So I settled on the RJ45 socket - 2 of them superglued together into a pair.  That yields 16 pins & 15 switches.  I may reduce it to 14, and instead bring a +5V line into each controller, to light switches, etc.



The connectors are inexpensive (less than $1 ea.) and easy to "punch down".  Ethernet cable is practically free.  The best thing is if a cable has an issue or you need a longer pair, just replace them, cheap.

I had to cut out the joystick holes quite a bit and, as you can see, cut and glued the case plastic.  They're held in place with SuperGlue gel.  Works very well.


I followed the color code "A" printed on the sockets.  Then I figured out, L-R looking at the front of the RJ45 socket with the pins on the bottom, what the order of the wires were - and mapped these to the ControlBlock, starting with the ground wire (brown on the left socket) all the way to B (white-green on the right socket).

I skipped "start" on controller 2, as unfortunately the screw does not tighten.  I think it's missing an internal nut.  Rather than take it all apart and replace the terminal strip, I am hoping that I can simply remap "8" to "start".  Probably don't even need "start" on the 2nd controller.

This wiring scheme is before I considered feeding +5V (for lights, etc.).  So I will likely redo this a bit.  Just a bit.

The idea now is that if I want a simple controller with 4 directions, start, select, and fire (7 functions), I can use just the left RJ45 port on each.  If I want complex arcade controls (up to 14 functions) or +5V, then I can opt to use both ports with no internal rewiring or need to remap via software.



I decided to let my boys do their first soldering project and make their own arcade controllers.  I'm going to get them each a briefcase to act as a lap controller, then a big joystick and illuminated buttons, a panel mount RJ45 socket.  Should be fun.

No comments:

Post a Comment