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.
Open the Device Manager to make sure the device is under the Ports section. Select the device and right click to view the properties of the device.
To change the port number, go to Port
Settings and click on Advanced.
Windows XP
This driver installation is similar to Windows 2000. When you plug in the device, the following screens appear:
USB Interfaces User’s Guide 1 - 7
Select the port number you wish to use.
Note:The FIFO settings are not needed and are therefore ignored.
Select Install from a list ... and click on Next.
Click on Include this location in the search and enter the path where hhpcdc.inf is stored. You may also use the Browse button to navigate to the file location. Click on Next.
If this message appears, click on Continue Anyway.
1 - 8 USB Interfaces User’s Guide
Click on Finish.
Windows 98, 98SE, ME
When you plug in the device, the following screens appear:
Click on Next.
Click on Search for the best driver ... and click Next.
Click on Specify a location and enter the path where hhpcdc.inf is stored. You may also use the Browse button to navigate to the file location. Click on Next.
Click on Next.
USB Interfaces User’s Guide 1 - 9
Click on Finish.
To change the port number, open the device manager, select the device, and click on Properties.
Windows 95, Windows NT, and Older
These operating systems do not support USB or the support is not reliable. Upgrade to Windows 2000 or Windows XP.
Apple Mac OS9 and OS X
Mac OS9 and OS X do not need a driver installation. These operating systems recognize the device automatically as a USB CDC ACM device.
1 - 10 USB Interfaces User’s Guide
Select the port number you wish to use.
HID POS Interface
Note: HID POS does not require a custom driver installation. However, a HID interface on Windows 98 does. See page 1-2 for
further information.
The HID POS interface is recommended for new applications. It can send up to 56 characters in a single USB report and is much faster than keyboard emulation. It conforms to the USB standard documents "Device Class Definition for Human Interface Devices (HID)" V1.11 (http://www.usb.org/developers/devclass_docs/HID1_11.pdf V1.02 (http://www.usb.org/developers/devclass_docs/pos1_02.pdf
Features:
HID based, no custom driver required
Much faster than keyboard emulation and traditional RS-232
Symbology identifiers (AIM and Hand Held Products) are always contained in the input report, which uses USB direction names: input (to the PC) and output (to the device)
Scan the following bar code to program the imager for a HID POS interface.
).
Access the Device in Your Program
CreateFile opens the device as a HID, then ReadFile delivers the scanned data to the application. Use WriteFile to send data to the device.
For complete information on USB and HID interfaces, please see www.USB.com
USB Complete USB Design By Example
, by Jan Axelson, ISBN: 096508919-3-1(www.lvr.com)
, by John Hyde, ISBN: 0-471-37048-7(www.wiley.com/compbooks).
), and "HID Point of Sales Usage Tables"
or refer to one of the following manuals:
Getting Scanned Data
After scanning and decoding a bar code, the device sends the following input report:
Bit
Byte76543210
0 Report ID = 2
1 Length of the bar code (field "Decoded Data")
2 AIM Symbology Identifier 0 (always ']')
3 AIM Symbology Identifier 1
4 AIM Symbology Identifier 2
5-60 Decoded Data (1-56)
61 Hand Held Products Symbology Identifier
62 Reserved
63 -------
Decode
Data
Continued
USB Interfaces User’s Guide 1 - 11
Trigger the Device
You can trigger and untrigger the device with a HID command (out report). The report has the following format:
Bit
Byte7654321 0
0 Report ID = 4
1 - Sound
Good Read Beep
Examples:
Two bytes 04h,04h triggers the device, 04h,02h untriggers it.
04h, 20h initiates an error beep (3 beeps).
Sound Error Beep
--Initiate bar code read (Trigger)
Prevent read of bar code (Untrigger)
-
Send Serial Data to the Device
This output report is used to send raw serial data to the device, like an RS-232 interface. All menu commands can be used.
Bit
Byte76543210
0 Report ID = 253
1 Length of the data
2 Output data (1-62)
Redirect Output
This feature report is used only when the HID POS interface is part of a composite device, such as with keyboard emulation.
A pure HID POS interface does not need this command, but it is a good idea to add it into the initialization sequence and ignore a possible error. That way your software can work automatically with both the pure HID POS, and the composite keyboard/HID POS.
The HID POS is interface 1 in the composite model, so use 1 as the interface number.
Byte76543210
0 Report ID = 254
1---- USB interface number
IBM SurePos Interface
Note: IBM SurePos does not require a custom driver installation.
IBM SurePos communicates via USB with an interface similar to that used in the 4680 cash register. It can run the 4690 OS, Windows 98, Windows 2000, or Windows XP.
To program this interface, just plug in the device and scan one of the bar codes below. In some cases, you must reboot the cash register.
1 - 12 USB Interfaces User’s Guide
Bit
Scan one of the following bar codes to program the imager for a SurePos interface.
Make sure the cash register is set up with the appropriate configuration. By default, the scanner ignores any settings commands from the cash register. Once the cash register is up and running, you can enable the settings commands. Scan one of the
following bar codes to program the imager to ignore or use the cash register’s configuration commands.
Hand Held Device is the recommended setting for Adaptus Imaging Technology devices. However, if two Adaptus Imaging Technology devices are connected, set one of them as the Hand Held Device, and the other as a Tabletop Device Emulation.
Some older versions of 4690OS require UPC/EAN data to be sent in BCD rather than ASCII. (Newer versions accept both formats.) Scan one of the following bar codes to program the imager to send UPC/EAN data as either BCD or ASCII.
USB Serial Number
Note: If you scanned the Serial Number OFF bar code (page 1-4), none of the following USB Serial Number programming is
required.
Hand Held Products writes a unique serial number string to all of its USB devices. No matter which USB port the device is plugged into, the operating system uses the serial number to identify the device. See COM Port Naming, page 1-4, for further information.
When the Serial Number Should be Ignored
Whenever a USB device is connected, an entry is made in the computer’s registry. If there is no serial number associated with the device, the entry is built with the USB tree in the name. All similar devices share that entry if they are plugged into the same USB port.
When the device has a serial number, the entry is built with the serial number in the name. This can result in many entries; one for each individual device. Usually this is not a problem, but if you plug many devices into your PC, the registry can fill quickly. In this case, you may wish to ignore the serial numbers of the devices. You can instead assign a COM port number to each USB port. Then any device plugged into that USB port assumes the assigned COM port number.
Ignoring the Serial Number in Windows 2000/XP
If you want to turn off and on serial number reporting for all Adaptus Imaging Technology products, scan one of the following bar codes.
USB Interfaces User’s Guide 1 - 13
However, you may want to turn off and on serial number reporting just for particular product IDs. If you wish to do this, use the following directions for changing your computer registry.
Only change your computer registry if you know exactly what you are doing. If you delete or change
!
important entries, your computer may stop working properly, resulting in loss of data.
In Windows 2000 and XP1, you can ignore the serial number for a certain device. The registry key is:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\UsbFlags]
To ignore the serial number of a device, create an entry under the above …\UsbFlags key. The name must start with “IgnoreHWSerNum” followed by the vendor and product ID of the device. The value for the entry is 1 for disable. For example:
IgnoreHWSerNum0536016A= 1
The Hand Held Products vendor ID (VID) is 0536 (hex). The product ID (PID) depends on the interface you choose. See VID
and PID Table below for the PID of a given device. You can also use the MS tool, UsbView.exe, to find this information.
The entry below appears after a fresh installation, and enables the serial numbers globally. unchanged.
GlobalDisableSerNumGen = 1
We recommend leaving this setting
Details for COM Port Emulation
If you have Administrator rights, you can create a text file that ignores serial numbers for the COM port emulation interface of Adaptus Imaging Technology device(s). Below is text that can be copied and saved as a file with a .reg extension (for example, IgnoreSerialNumbersForComPortEmulation.reg). This add this information to the registry.
must
be saved as a plain text (ASCII) file. Double click on the .reg file to
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\UsbFlags]
"IgnoreHWSerNum0536016a"=hex:01 "IgnoreHWSerNum0536018a"=hex:01 "IgnoreHWSerNum053601ca"=hex:01 "IgnoreHWSerNum053601ea"=hex:01 "IgnoreHWSerNum0536022a"=hex:01 "IgnoreHWSerNum0536020a"=hex:01 "IgnoreHWSerNum0536026a"=hex:01-
1. These registry settings do not work in Windows 9X. See Registry Entries on page 1-19 for further information.
1 - 14 USB Interfaces User’s Guide
VID and PID Table
USB uses two numbers to identify a device and find the correct drivers. The first is the VID (Vendor ID), assigned by the USB Implementers Forum. The Hand Held Products vendor ID (VID) is 0536 (hex). The second is the PID (Product ID). A range of PIDs is used for each Hand Held Products product sub family, so each PID contains a base number and an interface type (keyboard, COM port, etc.).
For example, the 3800r has the base number 400; the COM port emulation with the CDC ACM class has the number 0A. The resulting PID is 040A (VID and PID are hex).
Device
(PNAME)
IT5600 Base 160 352
HID Keyboard (PC) 161 353
HID Keyboard (Mac) 162 354
SurePos (HH) 163 355
SurePos (TT) 164 356
HIDPOS 167 359
CDC ACM (COM port emulation) 16A 362
3800r (formerly the IT5600) Base 400 1024
HID Keyboard (PC) 401 1025
HID Keyboard (Mac) 402 1026
SurePos (HH) 403 1027
SurePos (TT) 404 1028
HIDPOS 407 1031
CDC ACM (COM port emulation) 40A 1034
IT5800 Base 180 384
HID Keyboard (PC) 181 385
Interface Type PID
(Hex)
PID
(Dec)
HID Keyboard (Mac) 182 386
SurePos (HH) 183 387
SurePos (TT) 184 388
HIDPOS 187 391
CDC ACM (COM port emulation) 18A 394
3800i (formerly the IT5800) Base 420 1056
SurePos (HH) 423 1059
SurePos (TT) 424 1060
HIDPOS 427 1063
CDC ACM (COM port emulation) 42A 1066
USB Interfaces User’s Guide 1 - 15
HID Keyboard (PC) 421 1057
HID Keyboard (Mac) 422 1058
Device
(PNAME)
IT4800 Base 1C0 448
HID Keyboard (PC) 1C1 449
HID Keyboard (Mac) 1C2 450
SurePos (HH) 1C3 451
SurePos (TT) 1C4 452
HIDPOS 1C7 455
CDC ACM (COM port emulation) 1CA 458
4800i (formerly the IT4800 Base 460 1120
HID Keyboard (PC) 461 1121
HID Keyboard (Mac) 462 1122
SurePos (HH) 463 1123
SurePos (TT) 464 1124
HIDPOS 467 1127
CDC ACM (COM port emulation) 46A 1130
IT4600 Base 200 512
HID Keyboard (PC) 201 513
Interface Type PID
(Hex)
PID
(Dec)
HID Keyboard (Mac) 202 514
SurePos (HH) 203 515
SurePos (TT) 204 516
HIDPOS 207 519
CDC ACM (COM port emulation) 20A 522
4600g (formerly the IT4600) Base 440 1088
HID Keyboard (PC) 441 1089
HID Keyboard (Mac) 442 1090
SurePos (HH) 443 1091
SurePos (TT) 444 1092
HIDPOS 447 1095
CDC ACM (COM port emulation) 44A 1098
IT2020 Base 260 608
HID Keyboard (PC) 261 609
HID Keyboard (Mac) 262 610
SurePos (HH) 263 611
SurePos (TT) 264 612
HIDPOS 267 615
1 - 16 USB Interfaces User’s Guide
CDC ACM (COM port emulation) 26A 618
Device
(PNAME)
2020 (formerly the IT2020) Base 480 1152
HID Keyboard (PC) 481 1153
HID Keyboard (Mac) 482 1154
SurePos (HH) 483 1155
SurePos (TT) 484 1156
HIDPOS 487 1159
CDC ACM (COM port emulation) 48A 1162
IT4010 Base 1E0 480
HID Keyboard (PC) 1E1 481
HID Keyboard (Mac) 1E2 482
SurePos (HH) 1E3 483
SurePos (TT) 1E4 484
HIDPOS 1E7 487
CDC ACM (COM port emulation) 1EA 490
IT4080 Base 220 544
HID Keyboard (PC) 221 545
Interface Type PID
(Hex)
PID
(Dec)
HID Keyboard (Mac) 222 546
SurePos (HH) 223 547
SurePos (TT) 224 548
HIDPOS 227 551
CDC ACM (COM port emulation) 22A 554
IT4200 Base 280 640
HID Keyboard (PC) 281 641
HID Keyboard (Mac) 282 642
SurePos (HH) 283 643
SurePos (TT) 284 644
HIDPOS 287 647
CDC ACM (COM port emulation) 28A 650
4206 (formerly the IT4200) Base 4A0 1184
HID Keyboard (PC) 4A1 1185
HID Keyboard (Mac) 4A2 1186
SurePos (HH) 4A3 1187
SurePos (TT) 4A4 1188
HIDPOS 4A7 1191
CDC ACM (COM port emulation) 4AA 1194
USB Interfaces User’s Guide 1 - 17
Device
(PNAME)
QC-890 Base 2C0 704
HID Keyboard (PC) 2C1 705
HID Keyboard (Mac) 2C2 706
SurePos (HH) 2C3 707
SurePos (TT) 2C4 708
HIDPOS 2C7 711
CDC ACM (COM port emulation) 2CA 714
3800g Base 2E0 736
HID Keyboard (PC) 2E1 737
HID Keyboard (Mac) 2E2 738
SurePos (HH) 2E3 739
SurePos (TT) 2E4 740
HIDPOS 2E7 743
CDC ACM (COM port emulation) 2EA 746
5110 Base 320 800
HID Keyboard (PC) 321 801
Interface Type PID
(Hex)
PID
(Dec)
HID Keyboard (Mac) 322 802
SurePos (HH) 323 803
SurePos (TT) 324 804
HIDPOS 327 807
CDC ACM (COM port emulation) 32A 810
5180 Base 300 768
HID Keyboard (PC) 301 769
HID Keyboard (Mac) 302 770
SurePos (HH) 303 771
SurePos (TT) 304 772
HIDPOS 307 775
CDC ACM (COM port emulation) 30A 778
4600r Base 4C0 1216
HID Keyboard (PC) 4C1 1217
HID Keyboard (Mac) 4C2 1218
SurePos (HH) 4C3 1219
SurePos (TT) 4C4 1220
HIDPOS 4C7 1223
CDC ACM (COM port emulation) 4CA 1226
1 - 18 USB Interfaces User’s Guide
If you are working with a product that has recently been renamed, use the PID addresses for this product as well as the PID addresses for the former name of the product. If the product you are working with appears in the Device column of the table below, not only must you reference its PIDs, but you must also reference the PIDs of the product identified in the respective Additional Settings column.
Device Additional
Settings
IT5600 3800r
3800r IT5600
IT5800 3800i
3800i IT5800
IT4800 4800i
4800i IT4800
IT4200 4206
4206 IT4200
IT2020 2020
2020 IT2020
Registry Entries
Windows 9x
This section contains information about modifying your computer’s registry. Before you modify the registry,
!
be sure to back it up first, and make sure you understand how to restore the registry if a problem occurs.
Entries for all USB devices are under HKEY_LOCAL_MACHINE. Inside this key, look for Enum/USB.
Every time you plug in a USB device, the OS updates the Enum/USB entries in order to keep track of all the devices it already knows. If a device is not yet listed, the OS asks you for a driver. Some devices are known by the device class (HID) and the OS installs the correct class driver automatically. You can delete entries for a given device under Enum/USB, but it is not recommended because it is possible for COMxx names to become locked. It is better to use the Device Manager to remove a device from the registry.
USB Interfaces User’s Guide 1 - 19
For example, below is the registry entry for a 3800r that has a PID 016A. The device type entry is Vid_0536&Pid_016A, which contains all real devices. Inside this key you can see an entry for the device with the serial number 123456789…
Windows 2000/XP
This section contains information about modifying your computer’s registry. Before you modify the registry,
!
be sure to back it up first, and make sure you understand how to restore the registry if a problem occurs.
Entries for all USB devices are under the key HKEY_LOCAL_MACHINE. Inside this key, look for Enum/USB. Entries for all USB devices are under: SYSTEM/CurrentControlSet/Enum/USB.
Note: In Windows 2000 you might see a USB2 entry. It is used for real USB2 devices only. In Windows XP, there is no longer
a separate USB2 entry.
1 - 20 USB Interfaces User’s Guide
For example, below is the registry entry for a 3800r that has a PID 016A. The device type entry is Vid_0536&Pid_016A, which contains all real devices. Inside this key you can see an entry for the device with the serial number 123456789…
There are also two more entries of the same device type, but they do not have serial numbers. The OS creates a serial number out of the USB tree in such cases. From this information you cannot tell if the same device is plugged into two different USB ports, or if there are two devices connected to this PC. These two other devices are anonymous.
Enabling Full Write Access in Windows 2000
This section contains information about modifying your computer’s registry. Before you modify the registry,
!
be sure to back it up first, and make sure you understand how to restore the registry if a problem occurs.
In Windows 2000 and Windows XP there is limited access to some registry hives from inside the regedit.exe., even for administrator accounts. This is a safeguard to prevent you from destroying your operating system. The following steps allow you access to these registry hives.
1. Run the program regedt32.exe and select the view for HKEY_LOCAL_MACHINE.
USB Interfaces User’s Guide 1 - 21
2. Ensure the top most hive (HKEY_LOCAL_MACHINE) is selected, then open the Security - Permissions menu.
3. Click on Advanced.
4. Check both check boxes and click OK. (This may take some time.)
5. Write access is enabled.
Enabling Full Write Access in Windows XP
This section contains information about modifying your computer’s registry. Before you modify the registry,
!
be sure to back it up first, and make sure you understand how to restore the registry if a problem occurs.
In Windows 2000 and Windows XP there is limited access to some registry hives from inside the regedit.exe., even for administrator accounts. This is a safeguard to prevent you from destroying your operating system. The following steps allow you access to these registry hives. In Windows XP you can use the normal regedit.exe for this task.
1. Run the program regedt32.exe and select the view for HKEY_LOCAL_MACHINE.
2. Ensure the top most hive (HKEY_LOCAL_MACHINE) is selected, then open the Edit - Permissions menu.
3. Click on Advanced.
4. Check both check boxes and click OK. (This may take some time.)
5. Write access is enabled.
1 - 22 USB Interfaces User’s Guide
2
FAQs
Q: Can I plug the Adaptus Imaging Technology device into any USB port?
A: Adaptus Imaging Technology devices are high powered, therefore you can't use the ports of bus-powered HUBs. All other
ports are fine.
Note: Usually a hub comes with a power supply, and switches automatically to a self-powered hub when the power supply is
connected.
Q: Can I extend the length of the USB cable?
A: No, USB is a high speed system and the cable length is critical. The maximum length cable is 16.5 feet (5 meters).
Q: Can I use more that one Adaptus Imaging Technology device in one system?
A: Yes, several scanners are no problem for PCs and Macs. Each has its own unique serial number, so you can distinguish
the devices. IBM SurePOS cash registers only accept a single scanner per type. There are two types: hand held and tabletop.
Q: Can I configure Adaptus Imaging Technology devices via USB?
A: This depends on the interface you selected. COM port emulation can be used to send data to the Adaptus Imaging
Technology device, then Visual Menu can be used to configure the scanner. The HID POS interface can also be used from your application.
Q: Can I upgrade the firmware via the USB?
A: Yes.
Q: I can’t send any HID report to the device with WriteFile.
A: Output reports must be the maximum size for Windows’ HID. Every output report must be padded up to that maximum size.
The structure HIDP_CAPS contains the member OutputReportByteLength, which is used to pad your report buffer.
Note: Only the true size of a report goes through the wire.
Newer SDKs for Windows 2000/XP contain a function called WriteReport, but it is not supported by the Windows 9x family.
Q: I used a special filter driver with Windows 98 to get details about the keyboard (bar code reader). But it does not
work with Windows 2000 (XP).
A: This is a feature of these operating systems. For security reasons, they open all keyboards and pointing devices for
exclusive access.
Q: What is the difference between the HID POS with the keyboard interface and the pure HID POS?
A: The USB interface index is different (1 for the HID POS with the keyboard, 0 for pure HID POS). All output is sent to the
keyboard by default, however, you can redirect the output to the HID POS. Pure HID POS can send 64 bytes every 4 mSec. The composite version only sends 64 bytes every 8 mSec. This is a compromise between speed and overhead on the USB. If this was changed to 64 bytes every mSec, it would result in more load on the USB.
Q: Why is there another HID POS interface with the keyboard?
A: The main purpose for this interface is to allow the device to be triggered, while still using keyboard emulation for outputting
data. This interface can also be used for a firmware upgrade.
Q: My application program can’t access COM ports above 4.
A: You can try to change the COM ports so you get the Adaptus Imaging Technology devices under this limit. You can change
the COM port assignment with the device manager. Go to port, then right click on the port you want to change, select properties, and click on advanced.
Q: My application program does not show COM ports above 15.
A: It uses a Windows API function (EnumPorts) that has this limitation.
Q: My device is not recognized by the PC on a USB2 port, or I get blue screens, or Windows crashes when I unplug
the device.
A: This is a PC driver issue. Some older drivers for the NEC chip have a bug, possibly rev 2.01 of ousbehci.sys and
ousb2hub.sys. Upgrade to a newer revision, or use the Microsoft driver for USB2.
USB Interfaces User’s Guide 2 - 1
2 - 2 USB Interfaces User’s Guide
3
Customer Support
Technical Assistance
If you need assistance installing or troubleshooting, please call your Distributor or the nearest Hand Held Products technical support office:
North America/Canada
Telephone: (800) 782-4263, option 4 (8 a.m. to 6 p.m. EST) Fax number: (315) 685-4960
E-mail: natechsupport@handheld.com
Latin America
Telephone: (704) 998-3998, option 8, option 3 Telephone: (800) 782-4263, option 8, option 3
E-mail: latechsupport@handheld.com
Brazil
Telephone: +55 (21) 2178-0500 Fax: +55 (21) 2178-0505
E-mail: brsuporte@handheld.com
Mexico
Telephone: (704) 998-3998, option 8, option 3
E-mail: latechsupport@handheld.com
Europe, Middle East, and Africa
Telephone: +31 (0) 40 7999 393 Fax: +31 (0) 40 2425 672
E-mail: eurosupport@handheld.com
Asia Pacific
Telephone - Hong Kong: +852-3188-3485 or Telephone - China: +86 21 6361 3818
E-mail: aptechsupport@handheld.com
Japan
Telephone: +813 5770-6312
E-mail: aptechsupport@handheld.com
2511-3050
Online Technical Assistance
You can also access technical assistance online at www.handheld.com.
For Further Information
To download the full User’s Guide for these products, visit our website at www.handheld.com
USB Interfaces User’s Guide 3 - 1
.
3 - 2 USB Interfaces User’s Guide
Hand Held Products, Inc.
700 Visions Drive P.O. Box 208 Skaneateles Falls, NY 13153-0208
USB-AN Rev C
11/06
Loading...