A decoder performs the translation of bar and spaces into ASCII characters. A bar code is decoded by using an external decoder, a software decoder, or a built-in decoder in the handle of a decoded scanner. An external bar code decoder is a stand alone unit which is generally keyboard wedged between the keyboard and terminal. An external decoder can also be connected to the serial port of the computer. If the decoder is keyboard wedged, data appears on the screen as if it were typed directly into the computer.
A software decoder performs the decoding using the CPU of the host computer such as a PC. Any input device can be used in conjunction with a software decoder (an adapter to plug directly into the serial port of a computer using a software decoder).
Decoding is also performed in the scanner itself, usually in the handle of a decoded scanner. These devices are generally more expensive than the undecoded scanners and usually plug directly into the serial port of a PC, however, some decoded scanners can directly connect with certain terminals.
Wedge bar code decoders are the easiest to integrate and are supported with nearly all terminals. Unlike software decoders though, they cannot be upgraded to support new symbologies such as two dimensional symbologies for future compatibility. Both the wedge decoder and software decoder can be integrated into an existing application generally without any program modifications.
Some decoders support multiple device input such as magnetic stripe or RS232. The physical connection varies with each manufacturer. The scanning input is generally DB9, RJ11, or RJ45. The serial connection is usually a DB25. A few decoders support a daisy chain configuration in which decoders can be chained together. These decoders are ideal for time and attendance, shop floor control, job-tracking, as well as many other general data collection applications.