Appendix

Supported Symbology Types vs. Scanner Mode

This appendix provides a matrix of scanner modes and supported symbology types in each mode, and the Windows registry keys for the OPOS Scanner and Scale logical names and drivers.

Table 1: Supported Symbology Types vs. Scanner Modes

Symbology Scanner Mode
Type Value IBM HID SNAPI Nixdorf Mode B
UPC-A SCAN_SDT_UPCA X X X
UPC-A with supplemental barcode SCAN_SDT_UPCA_S X X X
UPC-E SCAN_SDT_UPCE X X X
UPC-E with supplemental barcode SCAN_SDT_UPCE_S X X X
UPC-D1 SCAN_SDT_UPCD1 X X X
UPC-D2 SCAN_SDT_UPCD2 X X X
UPC-D3 SCAN_SDT_UPCD3 X X X
UPC-D4 SCAN_SDT_UPCD4 X X X
UPC-D5 SCAN_SDT_UPCD5 X X X
EAN 8 ( =JAN 8 ) SCAN_SDT_EAN8 X X X
JAN 8 ( = EAN 8 ) SCAN_SDT_JAN8 X X X
EAN 8 with supplemental barcode SCAN_SDT_EAN8_S X X X
EAN 13 ( = JAN 13 ) SCAN_SDT_EAN13 X X X
JAN 13 ( = EAN 13 ) SCAN_SDT_JAN13 X X X
EAN 13 with supplemental barcode SCAN_SDT_EAN13_S X X X
EAN-128 SCAN_SDT_EAN128 X X X
Standard (or Discrete) 2 of 5 SCAN_SDT_TF X X X
Interleaved 2 of 5 SCAN_SDT_ITF X X X
Codabar SCAN_SDT_Codabar X X X
Code 39 SCAN_SDT_Code39 X X X
Code 128 SCAN_SDT_Code128 X X X
OCR "A" SCAN_SDT_OCRA X X -
OCR "B” SCAN_SDT_OCRB X X -
GS1 DataBar Omnidirectional (normal or stacked) SCAN_SDT_GS1_DATABAR X X -
GS1 DataBar Expanded (normal or stacked) SCAN_SDT_GS1_DATABAR_E X X -
Composite Component A SCAN_SDT_CCA - X -
Composite Component B SCAN_SDT_CCB - X -
Composite Component C SCAN_SDT_CCC - X -
PDF 417 SCAN_SDT_PDF417 X X -
MAXICODE SCAN_SDT_MAXICODE X X -
Data Matrix SCAN_SDT_DATAMATRIX - X -
QR Code SCAN_SDT_QRCODE - X -
Micro QR Code SCAN_SDT_UQRCODE - X -
Aztec SCAN_SDT_AZTEC - X -
Micro PDF 417 SCAN_SDT_UPDF417 - X -

When the scanner is in Wincor-Nixdorf RS- 232 Mode B, the Zebra OPOS return value for the ScanDataType property differs from the expected value for the bar code types listed in Table below.

Table 2: Bar Code Types Not Accurately Identified in Wincor-Nixdorf RS-232 Mode B

Symbology Type Expected Value Zebra RSM OPOS Return Value Comments
UPC-A with supplemental bar code SCAN_SDT_UPCA_S SCAN_SDT_UPCA Nixdorf Mode B cannot distinguish UPCA since it identifies bar code types UPCA, UPCA_S, EAN13, EAN13_S, and BOOKLAND as one type.
UPC-E with supplemental bar code SCAN_SDT_UPCE_S SCAN_SDT_UPCE Nixdorf Mode B identifies both bar code types UPCE and UPCE_S as UPCE.
EAN 8 with supplemental bar code SCAN_SDT_EAN8_S SCAN_SDT_EAN8 Nixdorf Mode B identifies both EAN8 and EAN8_S bar code types as EAN8.
EAN 13 SCAN_SDT_EAN13 SCAN_SDT_UPCA Nixdorf Mode B cannot distinguish EAN 13 since it identifies bar code types UPCA, UPCA_S, EAN13, EAN13_S, and BOOKLAND as one type.
EAN 13 with supplemental bar code SCAN_SDT_EAN13_S SCAN_SDT_UPCA Nixdorf Mode B cannot distinguish EAN 13_S since it identifies bar code types UPCA, UPCA_S, EAN13, EAN13_S, and BOOKLAND as one type.


Windows Registry Keys for OPOS Driver

Table 3: Registry Paths to Default Scanner OPOS Logical Names

Key Path (x64)
HKEY_LOCAL_MACHINE\SOFTWARE\OLEforRetail\ServiceOPOS\Scanner\ZEBRA_SCANNER
HKEY_LOCAL_MACHINE\SOFTWARE\OLEforRetail\ServiceOPOS\Scanner\MOTOROLA_SCANNER
HKEY_LOCAL_MACHINE\SOFTWARE\OLEforRetail\ServiceOPOS\Scanner\STI_USBSCANNER
HKEY_LOCAL_MACHINE\SOFTWARE\OLEforRetail\ServiceOPOS\Scanner\SYMBOL_SCANNER

NOTE On 64-bit Windows, there are registry keys for 32-bit applications under the corresponding Wow6432Node.

Table 4: Registry Keys for OPOS Scanner Logical Names

Value Name Sample Data Description
(Default) ZebraScannerSO.ScannerSO Service object name of the scanner OPOS.
Baud rate 9600
115200
Baud rate for serial port.
CheckDigitAutoCalculate 0
1
Automatically calculate Check Digit and append to the decode data label.
0= Disable
1 = Enable
CompatibilityMode 0
1
Specifies how the decode data is stored in the ScanData and ScanDataLabel properties.
0 = Decode data is stored according to the UPOS specification.
1 = ScanData property contains the same data as the ScanDataLabel property.
Connection1 ConnUSB Added for backward compatibility.
Description Zebra scanner logical device Logical device description.
ExclusiveClaimLevel 0
1
Specifies whether an OPOS claim is required to be exclusive to the scanners in the logical device. For example, if a scanner is exclusively claimed by an application, other applications cannot claim it or send management commands to that scanner.
0 = OPOS claim exclusivity is not required for all scanners in the logical device.
1 = OPOS claim is exclusive to all scanners in the logical device. Any other value = OPOS claim is able to claim at least one scanner in the logical device.
ModelNumber 1. DS6707-SR20001ZZR,DS9808*
(* Represents any model of the DS9808.)
Comma separated list of scanner model numbers for use with OPOS driver.
PID1 * (Represents all PIDs) Product IDs of Zebra bar code scanners.
Port COM1 COM1,COM2
* (Represent any COM port)
Comma or space delimited list of serial ports needed for use with OPOS driver.
SerialNumber 1. 7116000500337, 7087000501981
2. * (Represents all serial numbers)
Comma separated list of scanner serial numbers for use with OPOS driver.
Type SNAPI NIXMODB USBIBMHID USBIBMTT SSI ALL Comma or space delimited list of scanner modes from the TypePool.
TypePool SNAPI NIXMODB USBIBMHID USBIBMTT SSI ALL All the supported types only for reference. OPOS driver does not read this entry.
VID 0x05E0 Vendor ID of Zebra bar code scanners.

1 Added to maintain the backward compatibility and are optional if the CompatibilityMode is set to disable backward compatibility.

Table 5: Registry Paths to Default Scale OPOS Logical Names

Key Path (x64)
HKEY_LOCAL_MACHINE\SOFTWARE\OLEforRetail\ServiceOPOS\Scale\ZEBRAA_SCALE
HKEY_LOCAL_MACHINE\SOFTWARE\OLEforRetail\ServiceOPOS\Scale\MOTOROLA_SCALE

Table 6: Registry Keys for OPOS Scale Logical Names

Value Name Sample Data Description
(Default) ScaleOPOS.ScalSO Service object name of the Scale OPOS.
DeviceDescription Zebra Technologies Scale logical device Logical device description.
ExclusiveClaimLevel 0
1
0 =OPOS Scale service object does not get exclusive access of the device on claiming the device. This may be required if an application needs to access both scanner and scale of the MP6200 scanner at same time.
1 =Scale service object does claim the device exclusively so that no other POS application can access the device.
LiveWeightFrequency 2 Number of live weight events per second (values from 1 to 100).
NoTimeOutOnReadWeight 0
1
0 = ReadWeight method returns OPOS_E_TIMEOUT if no valid weight data is retrieved before the time out elapse.
1 = ReadWeight method does not return OPOS_E_TIMEOUT if no valid weight data is retrieved before the time out elapse. It always reports OPOS_SUCCESS as result code.
ZeroValidOveride 0
1
0 = ReadWeight does not accept zero weight as a valid reading.
1 = ReadWeight does accept zero weight as a valid reading.

Table 7: Registry Path for Scanner OPOS Driver

Key Path (x64) HKEY_LOCAL_MACHINE\SOFTWARE\Zebra\Zebra Scanners\OPOS\Scanner

Table 8: Registry Keys for Scanner OPOS Driver - Applies to all Scanner OPOS Logical Names

Value Name Values Description
AutoDisableControl 0 = Disable
1 = Enable
0 = Normal AutoDisable property operation.
1 = Automatically disables the scanner after each data event regardless of the value of OPOS property AutoDisable.
AutoDisableDelay 0 Delay in milliseconds to disable the scanner automatically after each data event. Default value is 0.
DataEventAutoDisableControl 0 = Disable
1 = Enable
0 = Normal DataEventEnable operation.
1 = Scanner SO overrides the value of OPOS property DataEventEnable and always delivers the data events to application layer.
DataEventDelay 0 Minimum time gap in milliseconds between two decode data events. Default value is 0 ms.
EnableTrace 0 = Disable
1 = Enable
Enable or disable debug/engineering message entries to the log file specified by LogFilePath.
InterCommandDelay 0 Minimum time gap in milliseconds between OPOS method calls. Default value is 0 ms.
LogFilePath \Program Files\Zebra Technologies\Barcode Scanners\Scanner SDK\OPOS\Scanner OPOS\bin\Logs\stiopos.txt Path and filename for log file if EnableTrace is enabled.
SetDeviceEnableStateOnFailure 0 = Disable
1 = Enable
0 = Normal Result Code operation
1 = Regardless of the result of DeviceEnable call, Result Code is set to OPOS_SUCCESS.
SetEnableDisableOnEvent 0 = Disable
1 = Enable
0 = Normal Enable/Disable operation
1 = SO keeps the device Enable/Disable state in same state as SO DeviceEnable state. If an external application changes the device state, the SO immediately corrects it.
SetHardwareAutoDisableState 0 = Disable
2 = Enable
Controls the hardware ‘Scan Disable Mode’ setting on the scanner itself.
0 = Normal operation
2 = The SO sets the ‘Scan Disable Mode’ on the scanner to ‘Auto Disable’. This disables scanning after transmission of a bar code, and remains disabled until the host sends a Scan Enable. This feature is not supported by all scanner models.
SyncDeviceEnableStateOnDiscovery 0 = Disable
1 = Enable
Sync a newly connected device’s enable / disable state with the current enable / disable state of the OPOS driver. This is helpful if a new scanner is connected to a POS system where it already has a connected scanner. At the time the new scanner is connected, if the state of the OPOS SO is ‘device disabled’ the newly connected scanner should also has to change its state to ‘device disable’. This synchronization will be performed if “SyncDeviceEnableStateOnDiscovery” is enabled.

Table 9: Registry Path for Scale OPOS Driver

Key Path (x64) HKEY_LOCAL_MACHINE\SOFTWARE\Zebra\Zebra Scanners\OPOS\Scale

NOTE On 64-bit Windows, there are registry keys for 32-bit applications under the corresponding Wow6432Node.

Table 10: Registry Path for Scale OPOS Driver

Value Name Values Description
DebugPrint 0 = Disable
1 = Enable
Enable debug log messages viewable through a debug log viewer such as Microsoft DebugView.
EngDbgStr 0 = Disable
1 = Enable
Enable detailed engineering-level debug messages through a debug log viewer.
FileLog 0 = Disable
1 = Enable
Enable or disable debug/engineering message entries to the log file specified in the Location key.
Level 1 - 5 Level of log messages, from minimal (1) to verbose (5).
Location \Program Files\Zebra Technologies\Barcode Scanners\Scanner SDK\OPOS\Scale OPOS\bin\Logs Path name to log file if FileLog is enabled.

For more details on how to use the registry, see Modified Claim Functionality.