MS3 Adapter for Serial Port and Power

In last week’s post about barcode readers I mentioned that I purchased an MS3 from Microscan for my PyCon demo. What I had forgotten from last time I worked with the MS3 is that the pin-out of cable attached to the barcode reader is not just a DB9 (nine pin) serial port connector but a DB15 (VGA style) plug. Those extra pins are used for sending power to the device and to accommodate a few extra features, namely trigger and reset inputs.

For the rich folk among us, Microscan sells an adapter, but since I’m on a budget I am going to cobble together my own. I have designed a PCB to do this job once before, but that was for work and I while that board layout wasn’t exactly the crown jewel of that company, I can’t just publish it for the world to see. So I sat down and whipped up a version of this adapater from scratch, including a couple of neat extra features.

The final (not yet tested) outcome of this Sunday afternoon is on Github.

This is what’s in the box:

  • 5.5mm center positive barrel connector for 5VDC power supply
  • DB9 connector for PC connection and DB15 connector for barcode reader connection
  • RS-232 null modem with loopback handshacking
  • Holder for 5mm fuse in power supply line
  • Indicator LEDs for power, data in, and data out
  • Momentary buttons for pulling the reset and trigger lines to GND

I tried to source all parts from Sparkfun, mainly for the convenience of being able to use Sparkfun’s Eagle component footprint libraries to speed up the design process. I was almost successful with the exception of the DB15 connector of which Sparkfun doesn’t sell one.

The board design is off to OSHPark for quick turn processing, which means the barcode reader should finally be ready for testing in a week or so.