Author Topic: Perfect keyboard controller (almost)  (Read 14405 times)

0 Members and 1 Guest are viewing this topic.

Offline Rajagra

  • Thread Starter
  • Posts: 1930
Perfect keyboard controller (almost)
« on: Tue, 14 July 2009, 00:00:59 »
    [*]Full N-key rollover. Without diodes.
    [*]No internal polling delay.
    [*]USB and PS/2 support.
    [*]USB not affected by the 6-key-plus-modifiers limit!!!
    [*]Programmable either by software or a plug-in keyboard.
    [*]Interrupt-driven PS/2 pass-through connector with full byte interleaving.
    [*]Shift function which allows any input to be assigned to a shifted secondary keycode.
    [*]PC / Mac compatible.
    [*]Designed for gaming.
    [/LIST]

    The downside? Only supports 56 keys, so you might need 2 depending what you're building. And they aren't cheap. But it's got me thinking about building a split-keyboard.

    http://www.ultimarc.com/ipac1.html

    Edit> Just noticed this:
    http://www.ultimarc.com/interact.html
    "Key codes which cannot be used.
    You can't set any I-PAC inputs to any of the following codes:
    Print Screen
    Num-Pad "/"
    Pause
    F7"

    Hmmm. The F7 might be a problem. Not that I recall ever using it.
    « Last Edit: Tue, 14 July 2009, 00:30:59 by Rajagra »

    Offline keyb_gr

    • Posts: 1384
    • Location: Germany
    • Cherrified user
      • My keyboard page (German)
    Perfect keyboard controller (almost)
    « Reply #1 on: Tue, 14 July 2009, 03:52:31 »
    Quote from: ripster;102497
    I've been thinking lately that there is no reason for diodes for N-key if you have a reasonably sophisticated controller.  This pretty much confirms that.

    It does seem like the bigger board has some extra logic there, however. I think the "trick" is quite simply that the main controller already has 32 independent inputs (on the bigger one there may be some multiplexing going on). Old idea, I once found a patent for a keyboard controller with 102 inputs or so. Call it the brute force method. The keyboard PCB would certainly be a lot of fun to route...
    Hardware in signatures clutters Google search results. There should be a field in the profile for that (again).

    This message was probably typed on a vintage G80-3000 with blues. Double-shots, baby. :D

    Offline talis

    • Posts: 195
    Perfect keyboard controller (almost)
    « Reply #2 on: Tue, 14 July 2009, 14:51:52 »
    The capacitive switches don't need diodes to prevent phantom key presses (just from the nature of the technology).

    Quote
    The keyboard PCB would certainly be a lot of fun to route...

    It probably wouldn't be that bad on a 2 layer board, horizontal traces on one plane, vertical on another.  On a 4 layer board it would be very easy.

    Of course the thing is that you'd be hard pressed to find anyone that can type fast enough to outpace the polling rate on almost any intelligently designed modern controller.
    « Last Edit: Tue, 14 July 2009, 15:00:16 by talis »

    Offline keyb_gr

    • Posts: 1384
    • Location: Germany
    • Cherrified user
      • My keyboard page (German)
    Perfect keyboard controller (almost)
    « Reply #3 on: Tue, 14 July 2009, 15:26:12 »
    Quote from: talis;102563
    The capacitive switches don't need diodes to prevent phantom key presses (just from the nature of the technology).

    Hmm. Care to elaborate?

    BTW, you can get schematics for various vintage boards, including Model Fs and Model M, at kbdbabel. Any guess what this 8273565 chip does? And why does the AT Model F need all of that extra logic over its PC counterpart? (Sorry, but I'm more of an analog guy.)
    Hardware in signatures clutters Google search results. There should be a field in the profile for that (again).

    This message was probably typed on a vintage G80-3000 with blues. Double-shots, baby. :D

    Offline talis

    • Posts: 195
    Perfect keyboard controller (almost)
    « Reply #4 on: Tue, 14 July 2009, 15:35:39 »
    You're not actually closing a switch on a capacitive board, rather you're changing the value of a capacitor (which in itself never completes a circuit).  Because of that, you don't set up the loop that you do on a key switch board that is the cause of the phantom key presses.  There may be other effects that occur, but it doesn't seem that they'd be simple first order effects.

    I'm not 100% sure of the technology they use to measure the capacitance, but I can see several potential ways that wouldn't be affected by the state of any of the other keys.
    « Last Edit: Tue, 14 July 2009, 15:52:04 by talis »

    Offline Necroleachate

    • Posts: 27
    Perfect keyboard controller (almost)
    « Reply #5 on: Tue, 14 July 2009, 16:12:40 »
    http://www.trimoor.com/lpt_switch/index.htm
    A very cheap and effective alternative. It's easiness depends on how much contacts you would use, it goes up to 60. No ghosting.
    You can use adapters to go for usb.
    [SIGPIC][/SIGPIC]

    Offline Rajagra

    • Thread Starter
    • Posts: 1930
    Perfect keyboard controller (almost)
    « Reply #6 on: Tue, 14 July 2009, 16:12:54 »
    Quote from: keyb_gr;102571
    Any guess what this 8273565 chip does?

    Looks like each of the inputs Q0 to Q7 are connected to keyboard rows (or columns, depending on your viewpoint). When a key is closed the change in capacitance sends a pulse. That chip converts the row number that pulsed into binary and outputs it at outputs D0 to D2, while sending a signal on the Out line to indicate a keypress. "G" might be a gate input to suppress all outputs.

    Just an educated guess.

    What I can't understand is how the active polling process (setting each column active) doesn't mess it all up.
    « Last Edit: Tue, 14 July 2009, 16:17:00 by Rajagra »

    Offline keyb_gr

    • Posts: 1384
    • Location: Germany
    • Cherrified user
      • My keyboard page (German)
    Perfect keyboard controller (almost)
    « Reply #7 on: Tue, 14 July 2009, 16:29:11 »
    Quote from: Rajagra;102578
    When a key is closed the change in capacitance sends a pulse.
    Pulse... hey, that's just what one needs for NKRO (instead of constant levels). But how do you register it at the right moment? (That, I guess, might also relate to the "active polling" question.)

    The presence of the two capacitors at the IBM chip leads me to believe that there may be some oscillator present in there. Something not too impractical for capacitive switches.
    « Last Edit: Tue, 14 July 2009, 16:39:49 by keyb_gr »
    Hardware in signatures clutters Google search results. There should be a field in the profile for that (again).

    This message was probably typed on a vintage G80-3000 with blues. Double-shots, baby. :D

    Offline talis

    • Posts: 195
    Perfect keyboard controller (almost)
    « Reply #8 on: Tue, 14 July 2009, 16:36:46 »
    If you consider the Capacitor as a charge storage device and put a known charge on each capacitor you can detect a change in any of the parameters of the capacitor by noticing a change in voltage:

    C= Q/V and C = eA/D

    So V = QD/eA for a known amount of charge Q (in coulombs).

    You should be able to preceive a change in the switch state by monitoring its voltage (or noticing a current flow induced by a movement of charge out of the capacitor).

    The problems I can see with this is it would be very susceptible to noise, and the charge on the cells would require constant refreshing to compensate for leakage.

    You would need to suppress the polling of the keys during the refresh process which may account for the enable line.  Sadly there doesn't seem to be an easily accessible data sheet describing the functionality.  Anyone have a contact at the IBM archives ?

    I think if you take this concept, and treat it like DRAM, its probably very close to how its implemented.  And its likely polled, rather then event driven.
    « Last Edit: Tue, 14 July 2009, 16:50:50 by talis »

    Offline ch_123

    • * Exalted Elder
    • Posts: 5860
    Perfect keyboard controller (almost)
    « Reply #9 on: Tue, 14 July 2009, 19:39:36 »
    Quote from: keyb_gr;102580
    The presence of the two capacitors at the IBM chip leads me to believe that there may be some oscillator present in there. Something not too impractical for capacitive switches.

    I opened my Model F up there, and sure enough, right beside the controller chip there's what looks like an oscillator pack. I don't have a camera to hand, but I'll post a picture of it tomorrow when I do.

    EDIT - Seems to be confirmed by the Kbdlabel schematic, there's a circuit to which a box is pointed with the caption "5.384MHz", on the PC/XT schematic there's a Oscillator symbol near the box, cant see it in the corresponding PC/AT diagram.

    Incidentally, in relation to those schematics, does anyone know what those NOT gates with the diagnol line through them mean?

    Double EDIT: There's a chip beside the Intel controller chip, a Texas Instruments SN7406N which apparently, is a Hex Inverter. I'd say that's what those gates are.
    « Last Edit: Tue, 14 July 2009, 20:05:50 by ch_123 »

    Offline huha

    • Posts: 388
    Perfect keyboard controller (almost)
    « Reply #10 on: Tue, 14 July 2009, 21:50:57 »
    Quote from: Necroleachate;102576

    You can use adapters to go for usb.


    No, you can't. Parallel to USB converters only work for printers, bit-banging as done by most programmers misusing the parallel port for anything other than printing won't work.

    -huha
    Unicomp Endurapro 105 (blank keycaps, BS) // Cherry G80-3000LSCDE-2 (blues, modded to green MX) // Cherry G80-3000LAMDE-0 (blacks, 2x) // Cherry G80-11900LTMDE-0 (blacks, 2x) // Compaq G80-11801 (browns) // Epson Q203A (Fujitsu Peerless) // IBM Model M2 (BS) // Boscom AS400 Terminal Emulator (OEM\'d Unicomp, BS, 2x) // Dell AT102DW (black Alps) // Mechanical Touch (chinese BS) Acer 6312-KW (Acer mechanics on membrane) // Cherry G84-4100 (ML) // Cherry G80-1000HAD (NKRO, blacks)

    Offline keyb_gr

    • Posts: 1384
    • Location: Germany
    • Cherrified user
      • My keyboard page (German)
    Perfect keyboard controller (almost)
    « Reply #11 on: Wed, 15 July 2009, 01:16:35 »
    Quote from: ripster;102632
    Very simple block diagram for Capacitive switch circuitry here - 2nd entry.
    Never understood that one. And I'm working with PLLs.

    Anyway, here's what I think how it might work:
    You could use the switch array as a variable frequency highpass filter. If the column in question is fed with a square wave and you're listening on one particular row, you'd get pulses of varying height (and length) depending on whether the switch on this particular intersection is "closed". You only have to rectify these (the capacitors in question might actually belong to some kind of diode detector) and obviously design the switching thresholds such that it all works (which would seem to be a slightly non-trivial exercise). Ghosting would require the signal to pass through 3 switches in a row, but 3 equal Cs in series means that capacitance drops to 1/3, which still is less than one open switch capacitance.
    Kinda fragile if you ask me.

    I don't think watching charge and discharge currents on something in the 4..8 pF range (yes, that low) would be feasible.

    Let's see what Google turns up....
    An interesting book link (it's explained for the user's finger as the coupling element there, but the principle would be the same)
    US Patent 4561002
    Search for capacitive keyboard stuff by IBM folks - includes US Patent 4305135
    « Last Edit: Wed, 15 July 2009, 04:41:18 by keyb_gr »
    Hardware in signatures clutters Google search results. There should be a field in the profile for that (again).

    This message was probably typed on a vintage G80-3000 with blues. Double-shots, baby. :D

    Offline talis

    • Posts: 195
    Perfect keyboard controller (almost)
    « Reply #12 on: Wed, 15 July 2009, 09:55:40 »
    Quote
    I don't think watching charge and discharge currents on something in the 4..8 pF range (yes, that low) would be feasible.


    If you consider each switch as two series capacitors (one formed between the first plate and the metal foil on the switch or spring, and a second between the same foil and the second pad).  Then what actually changes is the Distance between the plates, and this changes fairly significantly.  I can see the actual value of the capacitor changing 3-4x in value, doubled by the series nature of the arrangement.

    I think this makes more sense then the permittivity of the dielectric material changing (what I first thought was going on) and would lead to a much larger and more easily measured change in value.
    « Last Edit: Wed, 15 July 2009, 09:57:44 by talis »

    Offline JBert

    • Posts: 764
    Perfect keyboard controller (almost)
    « Reply #13 on: Wed, 15 July 2009, 12:30:49 »
    Quote from: keyb_gr;102666
    Let's see what Google turns up....
    An interesting book link (it's explained for the user's finger as the coupling element there, but the principle would be the same)
    US Patent 4561002
    Search for capacitive keyboard stuff by IBM folks - includes US Patent 4305135
    One of those IBM patents seems to describe the complete setup - or at least it presents an elaborate algorithm to scan the keyboard. I haven't yet read it in detail though.

    Also note that your first link (the book) seems to say that ghosting is possible with a capacitor keyboard matrix because a few of them might get discharged at the same time. I wonder though if the people at IBM worked around that, or is there real proof that the model F has N-key rollover?
    With all the recent myth-busting threads, one more won't hurt.
    IBM Model F XT + Soarer's USB Converter || Cherry G80-3000/Clears

    The storage list:
    IBM Model F AT || Cherry G80-3000/Blues || Compaq MX11800 (Cherry brown, bizarre layout) || IBM KB-8923 (model M-style RD) || G81-3010 Hxx || BTC 5100C || G81-3000 Sxx || Atari keyboard (?)


    Currently ignored by: nobody?

    Disclaimer: we don\'t help you save money on [strike]keyboards[/strike] hardware, rather we make you feel less bad about your expense.
    [/SIZE]

    Offline ch_123

    • * Exalted Elder
    • Posts: 5860
    Perfect keyboard controller (almost)
    « Reply #14 on: Wed, 15 July 2009, 12:43:32 »
    Well, when I tested it with the latest testing tool in the NKRO thread, it could accept as many buttons as I could mash down with the palms of my hands.

    Btw - here's a high-res pic of the controller. I'd suspect that the silver module to the right of the main chip is the oscillator. The one to it's left is a Hex Invertor, according to it's model number.



    Here's the whole thing. The PCB seems to be double sided, there's a another layer of connections running underneath the top one, you should be able to see it from the pic.


    « Last Edit: Wed, 15 July 2009, 12:53:19 by ch_123 »

    Offline JBert

    • Posts: 764
    Perfect keyboard controller (almost)
    « Reply #15 on: Wed, 15 July 2009, 12:49:01 »
    Dang it, I really want to have an XT to USB adapter... and maybe a spare model F XT.
    IBM Model F XT + Soarer's USB Converter || Cherry G80-3000/Clears

    The storage list:
    IBM Model F AT || Cherry G80-3000/Blues || Compaq MX11800 (Cherry brown, bizarre layout) || IBM KB-8923 (model M-style RD) || G81-3010 Hxx || BTC 5100C || G81-3000 Sxx || Atari keyboard (?)


    Currently ignored by: nobody?

    Disclaimer: we don\'t help you save money on [strike]keyboards[/strike] hardware, rather we make you feel less bad about your expense.
    [/SIZE]

    Offline ch_123

    • * Exalted Elder
    • Posts: 5860
    Perfect keyboard controller (almost)
    « Reply #16 on: Wed, 15 July 2009, 12:54:40 »
    Why not get an AT one? Unless you have one already of course...

    Offline JBert

    • Posts: 764
    Perfect keyboard controller (almost)
    « Reply #17 on: Wed, 15 July 2009, 13:03:27 »
    I've already got an XT one (only it's a french layout instead of an international one). While I touchtype most of the time, I may look at the keyboard when typing one-handed. Anyway, the French are to blame.

    The main reason I'd prefer an XT is because the protocol is easier, hence I was dreaming of making me some custom adapter with Fn-key functionality or even a hardwired Colemak layout whilst I'm at it.
    IBM Model F XT + Soarer's USB Converter || Cherry G80-3000/Clears

    The storage list:
    IBM Model F AT || Cherry G80-3000/Blues || Compaq MX11800 (Cherry brown, bizarre layout) || IBM KB-8923 (model M-style RD) || G81-3010 Hxx || BTC 5100C || G81-3000 Sxx || Atari keyboard (?)


    Currently ignored by: nobody?

    Disclaimer: we don\'t help you save money on [strike]keyboards[/strike] hardware, rather we make you feel less bad about your expense.
    [/SIZE]

    Offline keyb_gr

    • Posts: 1384
    • Location: Germany
    • Cherrified user
      • My keyboard page (German)
    Perfect keyboard controller (almost)
    « Reply #18 on: Wed, 15 July 2009, 15:06:40 »
    Quote from: ch_123;102764
    Btw - here's a high-res pic of the controller. I'd suspect that the silver module to the right of the main chip is the oscillator.
    That's Z1, which the kbdbabel folks identified as this funky IBM chip. If it's got to do with capacitive sensing, then putting it in a metal box makes a lot of sense. That board seems to have an LC rather than crystal oscillator; how they keep in sync with the main clock is anybody's guess (doesn't look like they have a PLL there).
    Quote from: JBert;102772
    The main reason I'd prefer an XT is because the protocol is easier, hence I was dreaming of making me some custom adapter with Fn-key functionality or even a hardwired Colemak layout whilst I'm at it.
    You may be able to adapt the kbdbabel PC/XT to PS/2 solution. I don't know whether I'd bother with going to USB when you can pick up decent PS/2 - USB converters quite easily.
    Hardware in signatures clutters Google search results. There should be a field in the profile for that (again).

    This message was probably typed on a vintage G80-3000 with blues. Double-shots, baby. :D

    Offline Hak Foo

    • Posts: 1270
    • Make America Clicky Again!
    Perfect keyboard controller (almost)
    « Reply #19 on: Thu, 16 July 2009, 00:32:25 »
    Quote from: huha;102624
    No, you can't. Parallel to USB converters only work for printers, bit-banging as done by most programmers misusing the parallel port for anything other than printing won't work.

    -huha


    Misusing?

    There is no other port as easily adapted to special needs.
    Overton130, Box Pale Blues.

    Offline keyb_gr

    • Posts: 1384
    • Location: Germany
    • Cherrified user
      • My keyboard page (German)
    Perfect keyboard controller (almost)
    « Reply #20 on: Fri, 31 July 2009, 07:25:09 »
    Regarding capactive switch operation, today I noticed a detail in the capacitive BS patent that I had previously missed: There are three contacts (or "pads") per switch! That certainly allows a better definition of "open" vs. "closed" states. Maybe some kind of bridge measurement going on there? Have to think about it a little more.
    Hardware in signatures clutters Google search results. There should be a field in the profile for that (again).

    This message was probably typed on a vintage G80-3000 with blues. Double-shots, baby. :D

    Offline rdh

    • Posts: 121
    Perfect keyboard controller (almost)
    « Reply #21 on: Fri, 31 July 2009, 09:07:40 »
    Quote from: keyb_gr;105736
    Regarding capactive switch operation, today I noticed a detail in the capacitive BS patent that I had previously missed: There are three contacts (or "pads") per switch! That certainly allows a better definition of "open" vs. "closed" states. Maybe some kind of bridge measurement going on there? Have to think about it a little more.


    Interesting...

    There's a paragraph the patent that mentions "differential capacitance" as the preferred way of reading the switch.  I guess that means you measure the capacitance changes at 5A/5B and also at 5A/5C, and expect both to change at once (in opposite ways) during a keypress.

    They go on to say that you'd only need to read one or the other, or you could use non-capacitive methods of sensing, so they were just trying to make the patent as broad as possible, I think.

    Column 5, lines 21 through 33 of the patent:
    Quote
      A differential capacitance circuit is used in the pre-
    ferred embodiment illustrated to detect actuation of the
    key switch.  Either a normally open or a normally closed
    capacitive scheme would work as well and it should be
    clearly understood that normal electrical contacts for
    normally open normally closed conduction between
    contacts 5A, 5B, and 5C could be used equally well. A
    variety of other electrical signal producing means might
    be employed, such as inductive, piezo electric or light
    interruption sensors could be employed instead of the
    electrical contacts 5A, 5B, and 5C. The overall struct-
    ture would remain the same as will be appreciated by
    those of skill in the art.


    Has anybody seen a key switch in the wild that uses differential capacitance?
    at home: IBM "Space Saving" Model M
    at work: Topre Realforce 87UKB55


    Offline cb951303

    • Posts: 72
    Perfect keyboard controller (almost)
    « Reply #22 on: Fri, 31 July 2009, 09:10:17 »
    naah, I would rather build one myself :)
    Filco Zero FKBN87Z/EB
    Kensington Orbit K72337US

    Offline JBert

    • Posts: 764
    Perfect keyboard controller (almost)
    « Reply #23 on: Fri, 31 July 2009, 12:21:18 »
    I should check, but I think the F has two capicitive pads on the front, and one on the back of the PCB.

    It could be they're using the one on the back to calibrate the mechanism or to measure the capacitance as rdh says.
    IBM Model F XT + Soarer's USB Converter || Cherry G80-3000/Clears

    The storage list:
    IBM Model F AT || Cherry G80-3000/Blues || Compaq MX11800 (Cherry brown, bizarre layout) || IBM KB-8923 (model M-style RD) || G81-3010 Hxx || BTC 5100C || G81-3000 Sxx || Atari keyboard (?)


    Currently ignored by: nobody?

    Disclaimer: we don\'t help you save money on [strike]keyboards[/strike] hardware, rather we make you feel less bad about your expense.
    [/SIZE]

    Offline talis

    • Posts: 195
    Perfect keyboard controller (almost)
    « Reply #24 on: Fri, 31 July 2009, 15:16:07 »
    If you take a look at ch_123's picture above, only one of the two pads on the top surface has a trace leading away from it.  It looks like the pad on the bottom layer (directly under the un-connected top layer) has the second trace.

    So it looks like  a total of 3 series capacitors are being formed:
    Code: [Select]

    ---||---||---||----
        (1)   (2)   (3)


    (1) Between the top layer pad with the trace leading away from it and the foil on the rocker.
    (2) Between the foil on the rocker and the un-connected top layer pad.
    (3) Between the top layer pad and the bottom layer pad, with the (CM1, or FR4?) acting as the dielectric.

    Offline rdh

    • Posts: 121
    Perfect keyboard controller (almost)
    « Reply #25 on: Sat, 01 August 2009, 01:02:05 »
    Quote from: talis;105902
    Code: [Select]


    ---||---||---||----
        (1)   (2)   (3)


    The series of capacitors is electrically equivalent to a single capacitor, since none of the middle parts are connected to the rest of the board.
    at home: IBM "Space Saving" Model M
    at work: Topre Realforce 87UKB55


    Offline talis

    • Posts: 195
    Perfect keyboard controller (almost)
    « Reply #26 on: Sat, 01 August 2009, 11:49:08 »
    Quote from: rdh;105978
    The series of capacitors is electrically equivalent to a single capacitor, since none of the middle parts are connected to the rest of the board.


    Yes, but 1 of the three is of fixed value, and two change together (as the distance between the pads on the top layer and the foil are the same for both).

    Offline rdh

    • Posts: 121
    Perfect keyboard controller (almost)
    « Reply #27 on: Sat, 01 August 2009, 12:46:18 »
    Quote from: talis;106026
    Yes, but 1 of the three is of fixed value, and two change together (as the distance between the pads on the top layer and the foil are the same for both).


    True, but the controller doesn't have connections to read it as anything other than the single equivalent capacitance, so the key's position is not being read using the "differential capacitance" technique mentioned in the patent.  (If I understood correctly what they meant, anyway.)
    at home: IBM "Space Saving" Model M
    at work: Topre Realforce 87UKB55


    Offline talis

    • Posts: 195
    Perfect keyboard controller (almost)
    « Reply #28 on: Sat, 01 August 2009, 13:10:52 »
    Quote from: rdh;106049
    True, but the controller doesn't have connections to read it as anything other than the single equivalent capacitance, so the key's position is not being read using the "differential capacitance" technique mentioned in the patent.  (If I understood correctly what they meant, anyway.)


    Right, and that's exactly the point.  You can't take a differential measurement of a single series capacitance.  That means there needs to be a second reference capacitor somewhere on the board to take a differential reading against.

    Offline rdh

    • Posts: 121
    Perfect keyboard controller (almost)
    « Reply #29 on: Sat, 01 August 2009, 13:43:13 »
    Quote from: talis;106051
    That means there needs to be a second reference capacitor somewhere on the board to take a differential reading against.


    My interpretation of "differential capacitance" is that there would be two variable capacitances per key, each being read by the controller.   Far as I can tell, the board in the picture can't do that.

    A separate reference capacitor could certainly be elsewhere on the board, but that technique doesn't fit what I think the patent means by differential capcitance.  
    Anyway, I'm far too lazy to analyze the whole circuit board looking for a reference capacitor.  :biggrin1:
    at home: IBM "Space Saving" Model M
    at work: Topre Realforce 87UKB55


    Offline talis

    • Posts: 195
    Perfect keyboard controller (almost)
    « Reply #30 on: Sat, 01 August 2009, 13:49:18 »
    The reference capacitor is likely a single, standard cap there to compensate for temperature and similar changes.

    Offline doornail

    • Posts: 15
    Perfect keyboard controller (almost)
    « Reply #31 on: Sun, 02 August 2009, 10:50:18 »
    Hey Folks,

    De-lurking to comment that I used that IPAC controller when I built my MAME arcade cabinet.  Worked great too.  

    Here's a shot of the control panel; two eight-way joysticks, one four-way (the ball top), a roller ball, and a ton of buttons.  The four-way joystick is electrically the same as the player-one eight-way; some games, like Pacman, are nearly unplayable with eight directional input.  



    And here's a shot of the wiring underneath -- the panel is pulled out and flipped over sideways.  



    Everything runs off cherry microswitches, including the joysticks where you you can see them mounted sideways.  I'm using a PS/2 connection to the PC running the cabinet but I'm thinking I should buy the USB cables for it.  I got the controller about five or six years ago.  Mounted on the left side you can see the mouse adapter for the trackball, also from Ultimarc.

    My first post, even though I've been reading this forum for ages.

    Cheers.

    Offline Rajagra

    • Thread Starter
    • Posts: 1930
    Perfect keyboard controller (almost)
    « Reply #32 on: Sun, 02 August 2009, 11:14:45 »
    Nice setup. And remarkably tidy on the inside, not sure I would have been that careful. :-)

    Offline doornail

    • Posts: 15
    Perfect keyboard controller (almost)
    « Reply #33 on: Sun, 02 August 2009, 11:50:10 »
    Quote from: ripster;106206
    Welcome to Geekhack!

    Do you have a closer shot of the microswitches - how did you attach them to arcade buttons?  Were Sanwas too stiff/loose?

    Thank you.

    I grabbed some leftover parts to help illustrate (sneaking in a bit of my beloved Filco tenkeyless).




    The arcade buttons come with a spring already inside, some knobbed fingers that the white cherry snaps into, little plunger feet that press the microswitch (red nub), and a plastic screw ring that holds it to the control panel.

    The cherry switches have three connecting spades; common (silver), normally open, and normally closed (both brass).  For the IPAC, you wire to the common and normally open.  I used a couple terminal strips with grounding inserts from Radio Shack to give me lots of ground points, as you can see in the wiring pic.  

    The easiest way to wire these is with those blue spade lugs that crimp to a wire and slide on.  They grab pretty tight, as I found out when trying to rearrange controls.

    I'm afraid I don't know what Sanwas are.
    « Last Edit: Sun, 02 August 2009, 11:58:56 by doornail »

    Offline doornail

    • Posts: 15
    Perfect keyboard controller (almost)
    « Reply #34 on: Sun, 02 August 2009, 11:57:44 »
    Quote from: Rajagra;106207
    Nice setup. And remarkably tidy on the inside, not sure I would have been that careful. :-)

    Thanks.  I wish my woodworking skills were equal.  It's built like an amatuer log cabin and weighs a ton.
    « Last Edit: Sun, 02 August 2009, 12:02:13 by doornail »

    Offline doornail

    • Posts: 15
    Perfect keyboard controller (almost)
    « Reply #35 on: Sun, 02 August 2009, 12:42:56 »
    Quote from: ripster;106224
    Sanwas are just another arcade switch - very light activation force though.  So in other words these arcade buttons were designed to go with those switches.


    Gotcha.  I'm pretty sure the Happ buttons each came with a microswitch.  Either the Sanwas weren't on my radar back then or maybe the Happs were way cheaper (or better for 3/4" mounting).  I can't imagine a button working much better in an arcade setting, though.  They are clicky with about 1/8" of throw.