Welcome to part 2 of my blog series on eCitation hardware and software for patrol cars. As I mentioned in part 1, this series is particularly intended for those in law enforcement who make the decisions about which types of hardware and software to purchase for their operations. While part 1 discussed a USB Keyboard interface, this blog will discuss the other two types of USB interfaces: Serial (COM port) and HID. If you’re thinking that this type of information is unimportant, think again. How a barcode scanner connects to the computer is a very important consideration to keep in mind, as you’ll see below.
USB COM Port
Before the USB interface was invented, the primary method to connect peripherals to a computer was using a serial port. Physically, they are usually DB9 (9-pin) or DB25 (25-pin) connectors. These are referred to as serial communication ports. Most operating systems display the number of the port a device is connected to after the letters COM, hence its reference as a COM port.
The USB COM port interface allows a device connected to a USB port to emulate the older serial COM port. Because most serial devices use proprietary protocols to communicate, most USB COM devices require you to install a driver so the computer can talk to them.
Unlike a USB keyboard, a USB COM device is not shared by all open application windows. We refer to this as a single-use resource. If an application wants to get data from a USB COM device, it must explicitly connect to the COM port that device is using. When you use a barcode scanner configured as a USB COM device, the OS uses the driver to put the scanned data into a buffer. Your application must know how to retrieve that data from the buffer. Usually, this requires configuring the application to tell it which COM port the barcode scanner is connected to (COM4 for example).
This sounds complicated, and it is for the application programmer and the installer. The programmer must design the application so it can use COM ports and the installer must install a driver for the barcode scanner and configure the application to use the correct COM port. But for the end user, a USB COM device is simple. Any data scanned by the barcode scanner goes only to the one application configured to read that data from the COM port buffer. This is true even if the application is minimized. There is no surprise data showing up in unexpected applications.
This works well unless you have two applications that need data from the barcode scanner. Because a USB COM device is a single use resource, only one application can connect to its buffer at a time. To get barcode data into two applications, you can only have one application open at a time. This requires the user to open and close the applications depending on which one they want to use.
A USB COM device supports two-way communication. The device can send data to the computer, and the computer can send commands and requests to the device. This allows the eCitation application to change the scanner from barcode reading mode to picture taking mode and back. It also allows the application to know what type of data to expect from the scanner: text or image. Not all eCitation software support images but those that do allow you to collect pictures of signatures (signature capture), questionable documents, accident scenes, suspects, fingerprints, etc. My favorite example is the agency that takes a picture of a person driver’s license in front of the radar display. They attach this picture to the eCitation record in case the court needs this as evidence.
The vast majority of eCitation applications support barcode scanners configured as either USB keyboard or USB COM port devices. A small but growing number of vendors support USB HID class devices. This class provides the two-way communication allowed by a USB COM device (read barcodes and take pictures) but also allows the use of many HID drivers built into the OS (no driver to load). That doesn’t mean that the device can’t or won’t use a proprietary driver. It just means that it may not require one. The USB HID class also allows a device to contain more than one function. For example, a USB telephone can be a keypad and a speaker. In other words, an eCitation application that requires a barcode scanner configured for USB HID may allow many functions. Check with the eCitation software company to learn more.
If you plan to deploy eCitation software and hardware, remember that a barcode scanner gives you the greatest return on your investment. The following are things you should consider when choosing your eCitation software in relation to using a barcode scanner.
- What applications do you plan to use that will receive data from the barcode scanner?
- How does each of those applications interface with the scanner (USB keyboard, USB COM, or USB HID)?
- If you have more than one application, do they all use the same interface to the barcode scanner?
- How do you tell (configure) the eCitation application that you are using a barcode scanner? Are written instructions available?
- Does the application require a specific format of the barcode data (prefix or suffix characters added to the barcode data?
As I mentioned in part 1, L-Tron works hand-in-hand with software vendors to ensure that our 4910LR barcode reader is compatible with their eCitation software. We understand how important compatibility is and would be happy to look into whether or not your software choice is compatible. If you already have eCitation software and are interested in adding image capture capability, your software vendor can contact us directly for engineering support.
Thanks for reading my blog series. Let me know if you have any questions.