Hand Held Products 3800i, 4600g, 4800i, 5080, 5180 USB Interfaces Application Note

...
USB Interfaces
For USB-Capable Adaptus Imaging Technology Imagers:
2020-5B, 3800i, 3800r, 4600g, 4800i, 5X00, and 5X80
Application Note
Disclaimer
Hand Held Products, Inc. (“Hand Held Products”) reserves the right to make changes in specifications and other information contained in this document without prior notice, and the reader should in all cases consult Hand Held Products to determine whether any such changes have been made. The information in this publication does not represent a commitment on the part of Hand Held Products.
Hand Held Products shall not be liable for technical or editorial errors or omissions contained herein; nor for incidental or consequential damages resulting from the furnishing, performance, or use of this material.
This document contains proprietary information that is protected by copyright. All rights are reserved. No part of this document may be photocopied, reproduced, or translated into another language without the prior written consent of Hand Held Products.
© 2006 Hand Held Products, Inc. All rights reserved.
Web Address: www.handheld.com
®
Microsoft Corporation in the United States and/or other countries.
Apple® Mac® and Mac®OS are trademarks of Apple Computer, Inc., registered in the United States and/or other countries.
IBM SurePOS is a trademark of IBM Corporation in the United States.
Other product names mentioned in this document may be trademarks or registered trademarks of other companies and are the property of their respective owners.
Windows® 98, Windows® 2000, and Windows XP® are either registered trademarks or trademarks of Microsoft
Table of Contents
Chapter 1 - USB Interfaces for the Adaptus Imaging Family
Overview ............................................................................................................................................. 1-1
Devices ......................................................................................................................................... 1-1
Supported USB Interfaces ............................................................................................................ 1-1
Keyboard Emulation ........................................................................................................................... 1-2
PC Keyboard Layout .................................................................................................................... 1-2
Apple MacIntosh Keyboard Layout ............................................................................................. 1-2
Composite Device......................................................................................................................... 1-2
HID Driver for Windows 98......................................................................................................... 1-2
HID Driver for Windows 2000 and Windows XP ....................................................................... 1-2
COM Port Emulation .......................................................................................................................... 1-3
Hardware and Software Flow Control.......................................................................................... 1-3
Baud Rate, Data Bits, Stop Bits, and Parity ................................................................................. 1-3
COM Port Emulation Driver ........................................................................................................ 1-4
HID POS Interface ............................................................................................................................ 1-11
Access the Device in Your Program........................................................................................... 1-11
Getting Scanned Data ................................................................................................................. 1-11
Trigger the Device ...................................................................................................................... 1-12
Send Serial Data to the Device ................................................................................................... 1-12
Redirect Output........................................................................................................................... 1-12
IBM SurePos Interface...................................................................................................................... 1-12
USB Serial Number........................................................................................................................... 1-13
When the Serial Number Should be Ignored.............................................................................. 1-13
Ignoring the Serial Number in Windows 2000/XP .................................................................... 1-13
VID and PID Table..................................................................................................................... 1-15
Registry Entries .......................................................................................................................... 1-16
Chapter 2 - FAQs
Chapter 3 - Customer Support
Technical Assistance........................................................................................................................... 3-1
Online Technical Assistance ........................................................................................................ 3-1
USB Interfaces User’s Guide i
ii USB Interfaces User’s Guide
1
USB Interfaces for the Adaptus Imaging Family
Overview
This Application Note describes various aspects of the USB interface for the Adaptus Imaging Technology family of bar code readers. Before using this document, you should understand the basic concepts of USB and other interfaces.
Devices
This document applies to the following USB-capable Adaptus Imaging Technology family of devices:
2020-5B 5080
3800i 5100
3800r 5180
4600g 5300
4800i 5380
5000
Supported USB Interfaces
Keyboard Emulation
Keyboard emulation is for PC and Mac layouts. The keyboard emulation (keyboard wedge) is the simplest interface to use. Your application program does not need to know anything about reading bar codes. You can configure the reader to send certain keystrokes before and after the bar code to move the cursor to the right place. The actual bar code is sent by simulating a human typist.
The price for this simplicity is speed (typical 10-15 mSec per character), and potential non-US keyboard layouts and character problems (it supports more than 70 countries and various code pages).
Keyboard Emulation
See
beginning on page 1-2 for complete keyboard emulation information.
COM Port Emulation
COM port emulation is based on CDC class. If your application used regular COM ports in the past, COM port emulation is a good choice. In most cases, no code change is required in your application, although existing applications may not support hot plugging the COM ports.
Note: The COM port emulation does not require any baud rate, parity, and number of data and stop bit parameters. The transfer
speed is independent of these settings and is typically much faster than the original serial ports.
See
COM Port Emulation
beginning on page 1-2 for complete COM port emulation information.
HID POS Interface
The HID POS interface conforms to the USB standard document "HID Point of Sales Usage Tables" V1.02 (http://www.usb.org/
developers/devclass_docs/pos1_02.pdf). HID POS is the official USB method for connecting a bar code reader. See
Interface
beginning on page 1-11 for complete HID POS interface information.
HID POS
IBM SurePOS Interface
This selection connects to an IBM SurePOS cash register. See SurePOS interface information.
USB Interfaces User’s Guide 1 - 1
IBM SurePos Interface
beginning on page 1-12 for complete IBM
Keyboard Emulation
Scan one of the bar codes below to program the imager for your keyboard interface. Keyboard Emulation does not require a custom driver installation. However, a HID interface on Windows 98 does. See page 1-2 for further information.
Note: You must select the correct country code (default is U.S.A.). See the Country Codes section in your imager’s User’s Guide
for further information.
Once the appropriate keyboard interface bar code is scanned, no further interface programming is required. However, if you wish to program other parameters for your imager, please refer to your User’s Guide.
PC Keyboard Layout
This is the same layout used by the legacy ENHANCED PC keyboard (sometimes called AT keyboard). Some keyboard style settings of our ENHANCED PC keyboard wedge interface (Terminal ID = 03) are not required by the USB keyboard because we know the state of the Caps Lock all the time. The device therefore ignores these styles.
International support is the same as those found with the ENHANCED PC keyboard interface (more than 70 countries).
Apple MacIntosh Keyboard Layout
This is the same layout as used by the Apple ADB keyboards. International support is the same as those found with the Apple ADB keyboard (13 countries).
Composite Device
Keyboard emulation is implemented as part of a composite device. The other part is the HID POS interface (see
Interface
generates two logical devices:
Two different interfaces for one device offers more features than a single keyboard emulation. If you don't need the additional features of HID POS, just ignore that interface. All output leaves the device via the keyboard interface by default. HID POS allows application programs to control the trigger and disable bar code reading. HID POS is the only way to implement such a communication under Windows 2000 and Windows XP. These operating systems open all keyboards for exclusive access.
See Trigger the Device on page 1-12 for further information.
beginning on page 1-11). The device complies with the "Composite Device" model of USB, so the operating system
HID keyboard
HID bar code reader (HID POS)
HID POS
HID Driver for Windows 98
Windows 98 asks for a driver when the device is first plugged in. All HID interfaces use the standard driver that comes with the operating system. Accept all default values to install the driver.
Sometimes Windows will start the installation again after you have clicked Finish. Some Hand Held Products interfaces are for composite devices. Windows installs a separate HID driver for both parts of a composite device, as well as a virtual hub driver. Because of this, Windows may run through the installation several times.
HID Driver for Windows 2000 and Windows XP
In Windows 2000 and Windows XP, the installation occurs in the background.
COM Port Emulation
The COM Port interface emulates a regular serial RS-232 COM port. The device is implemented according to the USB CDC ACM (Communication Device Class Abstract Control Model) specification. (See
Communication Devices
written for modems, but also supports regular serial ports.
at www.usb.org/developers/devclass_docs/usbcdc11.pdf for further information.) This specification is
1 - 2 USB Interfaces User’s Guide
Universal Serial Bus Class Definitions for
For some operating systems you need to install a driver; others automatically use a common class driver. See COM Port
Emulation Driver on page 1-4 for further information.
Scan the following bar code to program the imager for a COM port interface.
Hardware and Software Flow Control
USB has built in flow control, so there is no need to simulate any flow control. The (Windows) driver ignores any flow control setting.
Hardware Flow Control
If you turn on RTS/CTS mode in the device, it raises its RTS output before sending any data. The device also monitors its CTS input before sending a block of data (a scanned bar code). There is no check for this “line” on a character-by-character basis.
Note: An asterisk (*) denotes the default setting.
Software Flow Control
The device supports two modes of software flow control:
Xon/Xoff: Not supported by this interface
ACK/NAK: Works as expected (including a resend if you respond with NAK)
Note: An asterisk (*) denotes the default setting.
Baud Rate, Data Bits, Stop Bits, and Parity
Baud rate, number of data and stop bits, and parity are important settings for any RS-232 connection, however they are unnecessary with this interface. USB has its own transfer parameters and is much safer than a regular RS-232 connection. There is no need for error detection on the application level. If your application sets these parameters, they are ignored.
Response Timing
USB transfers data in blocks, using 1millisecond frames. This has some influence on turnaround time and minimum character transfer time. If just a single character is sent it might take up to a few milliseconds to arrive - the same amount of time it takes to send several kilobytes.
Transfer Speed
COM port emulation is much faster than a regular COM port. The speed varies depending on operating system, drivers, and other devices connected to the same bus. On a Macintosh you can expect about 640 Kbit/sec. Windows systems can reach more than 7 Mbit/sec with custom serial COM port emulation drivers. This type of driver is available at www.handheld.com.
USB Interfaces User’s Guide 1 - 3
COM Port Naming
Windows operating systems use COMxxx names to access the serial interfaces, with xxx representing a range of 1 to 255. Once the driver is installed (see COM Port Emulation Driver on page 1-4), the OS uses the next available COMxxx name and binds it to the new device. There are two different methods that can be used to assign a COMxxx name to a device. Scanning one of the bar codes below has the following effect:
Serial Number ON Serial Number OFF
This device always has the same name. Name changes if USB port is changed.
Replacing a broken device requires a manual change of the COM Port name.
Every new device uses a new COM port name. Name changes if USB host controller gets replaced.
Using the serial number to bind a COMxxx name to a device is best for most users. If this method is USB port tree to choose the COMxxx name, which is affected by the order in which each device is plugged in.
If you are a distributor and connect a different device to your PC every hour, you probably want to use the USB Port Number Tree method (Serial Number OFF). To achieve this, the PC must either ignore the serial number, or the device must not publish it. On Windows 2000 and XP you have both options. The firmware has a menu setting that hides the serial number, so your PC uses the USB Port Number Tree method.
USB Serial Number
See
Note: An asterisk (*) denotes the default setting.
beginning on page 1-13 for more details about ignoring the serial number.
Name changes if any USB hub is changed.
not
used, the OS uses the
COM Port Emulation Driver
Hand Held Products provides a custom serial COM port emulation USB driver for use with its Adaptus Imaging Technology products. This driver allows data transfer speeds of up to 7 meg-bits per second. The COM port emulation driver is required for Windows 2000 (see below), Windows XP (see page 1-7), and Windows 98 (see page 1-9).
Windows 2000
Hand Held Products provides a specific CDC driver for Adaptus Imaging Technology devices. When Windows asks for a driver, locate the file
cdc.inf. The rest of the process is automated. The operating system uses the next available COM port number.
Note: The COM port number is bound to the serial number of the device. Therefore, you can plug the device into any USB port
without changing the COM port number.
Note: COMxxx has a maximum of 256. Each time you try a device, your port number increases. Some programs cannot access
higher numbered ports. See FAQs beginning on page 2-1 for further information.
1 - 4 USB Interfaces User’s Guide
When you plug in the device, the following screens appear:
Click on Next.
Click on Search for a suitable driver ... and click Next.
Click on Specify a location and click Next.
Click on Browse and navigate to the directory where the hhpcdc.inf is stored.
USB Interfaces User’s Guide 1 - 5
Click on Open.
Click on OK.
Click on Next.
1 - 6 USB Interfaces User’s Guide
Click on Finish.
Loading...
+ 22 hidden pages