GameRoom Articles
GameRoom Web Store
RetroBlast Reviews
RetroBlast Articles
Game Room Links
File Downloads
Site and Contact Information

TOKN KB16 Keyboard Encoder


It's been an exciting couple of years for MAME cabinet builders, with new products showing up every month, including products such as the TOKN KB16 keyboard encoder. The new kid on the MAME keyboard encoder scene, KB16 is a compact, inexpensive programmable encoder with some nice features, but how does it measure up? Let's take a look.

TOKN KB16 Encoder

TOKN KB16 Features

The KB16, as the name implies, is a 16-input encoder: the headers are labeled for a joystick, 8 player buttons, player 1 & 2 start buttons, a coin button, and escape, although you can change these as needed for your panel.

Obviously this will not be enough inputs for a "frankenpanel" two-player layout, but it should adequate for a single player panel or a simple two-player layout. If you do need additional inputs, KB16 encoders can be "daisy-chained." Also, a 32-input version of the KB16 (the KB32) is also available:

KB32 Encoder

The KB16 encoder features "on-the-fly" programmability, a diagnostic LED, and a keyboard passthrough (the keyboard is used to program the encoder). Note that it is a PS/2-based encoder, not USB. It does not support "shift" key functions, nor does it include software for reprogramming the keys.

Keyboard Pass-through and Status LED

At 2.25" x 1.25", it is a very compact encoder, in part because it does not include screw terminals for hooking up the button wiring. The KB16 uses a floppy-style 2x16 pin header for wiring: basically, you plug in a floppy drive cable and use it as your wiring.

The diagnostic LED is not just a power indicator — it blinks whenever a key is being pressed, and is also used to indicate when key reprogramming is complete.

Speaking of programming, the "on-the-fly" programmability is very handy. While the KB16 comes pre-configured to standard MAME key presses, you can change the key assignments at any time using an attached keyboard. Saving or exchanging complete sets of key assignments is not supported.

To program a key, you press the Scroll Lock button on the attached keyboard, press and hold the button you want to assign, then press the key on the keyboard you wish to assign to that button. Once the button is programmed, the LED will blink. Your settings are preserved even if power is removed.

The KB16's feature list does not include anything particularly unique: all of the encoder features can be found, here and there, amongst the other encoders on the market. Still, it has a nice selection of some of the most useful encoder features out there.

Hooking It Up

As I mentioned, the KB16 is designed to use a PC floppy drive cable for wiring. This connection method has both good and bad points.

A hacked floppy cable

The good points are easy plug-and-go connection to the encoder, plus a fairly clean wiring layout since you can keep sections of the ribbon cable together as you route the wires to the buttons.

The bad points? Well, you're limited to the length of a floppy cable for starters (unless you want to solder on extension wires), and floppy cable wires are very thin, making for a somewhat weak connection to .187 quick-disconnects, in my opinion.

One design feature that can be either a good or bad point (depending on your own preference) is the fact that the KB16 provides a ground wire for every button, rather than a shared ground method. Basically, every other wire on the cable is used as a ground. The encoder design uses a 2x8 matrix, with two sets of grounds. This can cause some really nasty problems, which I'll cover in the testing section.

Wiring buttons consists basically of splitting the cable into pairs of wires and routing each pair to a button, and crimping on some quick-disconnect tabs to the wires.

KB16 with floppy cable attached

Testing and Conclusions

Testing revealed some really nasty surprises: basically, I was unable to get more than two simultaneous keypresses without getting ghost keypresses. For example, in I pressed buttons 1, 2, and 3 simultaneously, and should have gotten LCtrl, LAlt, and Space keypresses. What I got was those three keys plus a phantom LShift key as well. Buttons 4, 5, and 6 should have yielded LShift, Z, and X: what I got was LShift, Z, X, and Space.

The encoder works fine, as long as you don't press more than two buttons at the same time, including joystick movements (I tried joystick up with buttons 1 and 2 and got a phantom "down" keypress at the same time). To say that this encoder is messed up is something of an understatement, it seems.

A revised "readme" file on the TOKN Media web site mentions that the Ctrl key should not be mapped to any of the inputs. I re-mapped the Player 1 Button 1 from LCtrl to the "9" key, but it did not affect the results: the vast majority of 3-key combos produced ghosting, with or without the Ctrl key.

How does the TOKN16 stack up against the competition's "economy encoders"? Here's a chart of some of the basic features:

NV Mem
Pass thru?
2x16 Pin header
KeyWiz Eco 2
KeyWiz Eco 2 NS
2x20 Pin header
Screw terminals

In the end, I have to say I'm very disappointed with the performance of the TOKN16. It includes a couple of features that I really appreciate: a live keyboard passthrough, nonvolatile memory, and on-the-fly reprogramming. That's the good part.

It doesn't include some of the nifty features available on other encoders, such as shift key functions, software reprogramming, or multiple key sets. In addition, the limit of 16 inputs may be a hindrance depending on your panel design.

What really kills this encoder, however, is the performance. While I could possibly tolerate ghosting with multiple keys, I really could only consider it acceptable if you were pressing more keys at once than would normally be encountered during gameplay (let's say, for academic purposes, 7 inputs per player: two joystick directions and five buttons, which is as many fingers as most humans have).

Unfortunately, aside from playing PacMan, this encoder is going to show ghosting, and that, in the end, means that this encoder is useless for MAME. There are far better encoders out there that cost less, have more features, and work as advertised.


  • "On the fly" reprogramming
  • Live keyboard passthrough
  • Diagnostic LED
  • Nonvolatile memory


  • Horrible key ghosting problems
  • Limited number of inputs
  • No "shift" functionality
  • Did I mention the nasty ghosting?

TOKN Media Home Page

Return To Reviews