Opticon MDL-1000 Quick start guide

Software Guide
MDL – 1000 / 2000
Specification for Software Interface
Laser Scan Engine with Built-in Decoder

OPTICON
Software Guide
MDL-1000/2000
2
Document:MDL-1000/2000 Specification for Software Interface
Admin No.:Publication.No. DM-0511015 / Doc.Control.No. SW06001 / Edition: 3rd Revision
Collected: OPTOELECTRONICS CO.,LTD, Tsukagoshi, Saitama Pref.
Distributed: Opticon Sensors Europe B.V., Hoofddorp
CAUTION:This information is subject to change without prior notice.
Copyright 2006, Opticon Sensors Europe B.V. All rights reserved.
This manual may not, in whole or in part, be copied, photocopied, reproduced, translated or converted to any electronic or
machine readable form without prior written consent of Opticon Sensors Europe.
Limited warranty and disclaimers
UNDER ALL CIRCUMSTANCES THIS MANUALSHOULD BE READ ATTENTIVELY, BEFORE INSTALLING AND OR
USING THE PRODUCT.
Serial number
A serial number appears on all Opticon products.This official registration number is strictly related to the device purchased.
Make sure that the serial number appearing on your Opticon device has not been removed. Removing the serial number
might affect the warranty conditions and liability disadvantageously, so please be strict at maintaining the label with serial
number on the Opticon product.
Warranty / Warranty period / Liability
Unless otherwise agreed in a contract, all Opticon products are warranted for the period of two years after purchase,
covering defects in material and workmanship.Opticon will repair or, at its opinion, replace products that prove to be
defective in material or workmanship under proper use during the warranty period. Opticon will not be liable in cases where
modifications are made by the customer. In such case the standard repair charge will be applicable.The standard charge
for repair will also be applicable in cases where no defect is found at all.These rules also apply for products that are still
under warranty. Under no circumstance will Opticon Sensors Europe, be liable for any direct, indirect, consequential or
incidental damages arising out of use or inability to use both the hardware and software, even if Opticon has been informed
about the possibility of such damages.
Packaging
The packing materials are not harmful for the environment.We recommend that you save all packing material, as it should
be used whenever you need to transport your scanner (eg.for service). Damage caused by improper repacking is not
covered by the warranty.
Trademark
Trademarks used are property of their respective owners.
Opticon Sensors Europe B.V.
Internet: www.opticon.com

OPTICON
Software Guide
MDL-1000/2000
3
TABLE OF CONTENTS
1. ABSTRACT ...........................................................................................................7
2. OVERVIEW............................................................................................................8
3. INTERFACE...........................................................................................................9
3-1. Interface Signal ......................................................................................................9
3-2. Connection Method ..............................................................................................10
3-3. Serial Communication Specifications ...................................................................11
3-4. Hardware Handshake ..........................................................................................12
3-5. Communication Procedure (example)..................................................................13
3-6. ACK/NAK Protocol and Data Format ...................................................................20
3-7. Packet Format......................................................................................................21
4. PACKET...............................................................................................................22
4-1. Data Packet Table ................................................................................................22
4-2. Details on Data Packet.........................................................................................23
4-2-1 AIM_OFF..............................................................................................................23
4-2-2. AIM_ON ...............................................................................................................24
4-2-3. BEEP....................................................................................................................25
4-2-4. CMD_ACK............................................................................................................26
4-2-5. CMD_NAK............................................................................................................27
4-2-6. DEC_DATA...........................................................................................................28
4-2-7. EVENT .................................................................................................................29
4-2-8. LED_OFF .............................................................................................................30
4-2-9. LED_ON...............................................................................................................31
4-2-10. PARAM_DFLT ......................................................................................................32
4-2-11. PARAM_REQ.......................................................................................................33
4-2-12. PARAM_DATA......................................................................................................34
4-2-13. REPLY_REV ........................................................................................................35
4-2-14. REQ_REV ............................................................................................................36
4-2-15. SCAN_DIS ...........................................................................................................37
4-2-16. SCAN_ENB..........................................................................................................38
4-2-17. SLEEP..................................................................................................................39
4-2-18. START_DEC ........................................................................................................40
4-2-19. STOP_DEC..........................................................................................................41

OPTICON
Software Guide
MDL-1000/2000
4
5.PARAMETER.......................................................................................................42
5-1 Table of Parameters .............................................................................................42
5-2 Common Elements to All Parameters ..................................................................48
5-2-1. Fixing the Length of Bar Codes............................................................................48
5-2-2. Value Settings ......................................................................................................49
5-2-3. Timing to Reflect the Changes to New Parameters .............................................50
5-2-4. Linear Code Consistency Verification ..................................................................51
5-2-5. UPC/EAN Consistency Verification ......................................................................52
5-2-6. UPC and EAN Supplemental Data Consistency Verification................................53
5-2-7. Decoding of UPC, EAN and JAN Supplemental Data..........................................54
5-2-8. Code ID ................................................................................................................55
6. POWER MODE....................................................................................................56
6-1. Continuous Power Mode......................................................................................56
6-2. Low Power Mode .................................................................................................56
6-3. Power Down Signal..............................................................................................56
7. TIMING CHARACTERISTICS .............................................................................57
8. PARAMETER MENUS.........................................................................................58
8-1 Parameter Menu Bar Codes ................................................................................58
8-2 Definition of Beeping Sound.................................................................................58
8-3 Setting Features with Parameter Menu................................................................59
8-4 Default Setting Parameters (0xC8) ......................................................................60
8-5 Parameter Scanning (0xEC) ................................................................................61
8-6 Beep Volume(0x8C)........................................................................................62
8-7 Beep Frequency(0x91)....................................................................................63
8-8 Beep Frequency Adjustment(Value Setting)(OxF0 0x91).............................64
8-9 Scanning Time(0x88)......................................................................................65
8-10 Aiming Duration (0xED) .......................................................................................66
8-11 Scan Angle (0xBF) ...............................................................................................67
8-12 Power Mode (0x80)..............................................................................................68
8-13 Trigger Mode (0x8A) ............................................................................................69
8-14 Duplication Buffer Time-out (0x89)....................................................................71
8-15 Good Decode Buzzer (0x38)................................................................................72
8-16 “NO READ” Message (0x5E).............................................................................73
8-17 Level of Linear Code Consistency Verification (0x4E) .........................................74
8-18 Verification Method (0x43) ...................................................................................76
8-19 UPC/EAN .............................................................................................................77
8-19-1 Enable/Disable UPC-A (0x01)..............................................................................77
8-19-2 Transmit UPC-A Check Digits(0x28)...............................................................78

OPTICON
Software Guide
MDL-1000/2000
5
8-19-3 UPC-A Preamble (0x22).......................................................................................79
8-19-4 Enable/Disable UPC-E (0x02)...........................................................................80
8-19-5 Transmit UPC-E Check Digits (0x29)...................................................................81
8-19-6 UPC-E Preamble (0x23) ......................................................................................82
8-19-7 Convert UPC-E to UPC-A (0x25) .........................................................................83
8-19-8 Enable/Disable UPC-E1 (0x0C) ...........................................................................84
8-19-9 Transmit UPC-E1 Check Digits (0x2A) ................................................................85
8-19-10 UPC-E1 Preamble (0x24) ....................................................................................86
8-19-11 Convert UPC-E1 to UPC-A (0x26) .......................................................................87
8-19-12 Enable/Disable EAN-8 (0x04) ..............................................................................88
8-19-13 Enable/Disable EAN-13 (0x03) ............................................................................89
8-19-14 EAN Zero Extend (0x27) ......................................................................................90
8-19-15 Convert EAN-8 to EAN-13 (0xE0)........................................................................91
8-19-16 Enable/Disable Bookland EAN (0x53) .................................................................92
8-19-17 UPC/EAN Supplementals (0x10) .........................................................................93
8-19-18 UPC/EAN Supplementals Verification Method (0x50)..........................................95
8-19-19 Code128/EAN128/UPC/EAN/JAN/Code93 Verification Method (0x4D)...............96
8-20 Code 128/EAN-128 ..............................................................................................97
8-20-1 Enable/Disable Code 128 (0x08) .........................................................................97
8-20-2 Enable/Disable UCC/ENA-128 (0x0E) .................................................................98
8-21 Code 39................................................................................................................99
8-21-1 Enable/Disable Code (0x00) ................................................................................99
8-21-2 Enable/Disable Trioptic Code 39 (0x0D) ............................................................100
8-21-3 Convert Code 39 to Code 32 (Code39 Italian Pharma Code) (0x56).................101
8-21-4 Code 32 Prefix (0xE7)........................................................................................102
8-21-5 Fixing the Length of Code 39 (0x12/0x13) .........................................................103
8-21-6 Code 39 Check Digit Verification (0x30) ............................................................104
8-21-7 Transmit Code 39 Check Digits (0x2B) ..............................................................105
8-21-8 Enable/Disable Code 39 Full ASCII (0x11).........................................................106
8-22 Code 93..............................................................................................................107
8-22-1 Enable/Disable Code 93 (0x09) .........................................................................107
8-22-2 Fixing the Length of Code 93 (0x1A/0x1B) ........................................................108
8-23 Interleaved 2of5 .................................................................................................109
8-23-1 Enable/Disable Interleaved 2of5 (0x06) .............................................................109
8-23-2 Fixing the Length of Interleaved 2of5 (0x16/0x17).............................................110
8-23-3 Interleaved 2of5 Check Digit Verification (0x31) ................................................ 111
8-23-4 Transmit Interleaved 2of5 Check Digits (0x2C)..................................................112
8-23-5 Convert Interleaved 2of5 to EAN-13 (0x52) .......................................................113
8-24 Industrial 2of5.....................................................................................................114
8-24-1 Enable/Disable Industrial 2of5 (0x05) ................................................................114
8-24-2 Fixing the Length of Industrial 2of5 (0x14/0x15) ................................................115
8-25 Codabar(NW7) ...................................................................................................116
8-25-1 Enable/Disable Codabar (NW7) (0x07)..............................................................116
8-25-2 Fixing the Length of Codabar (NW7) (0x18/0x19) .............................................117
8-25-3 Codabar CLSI Editing (0x36) .............................................................................118
8-25-4 No Transmit Codabar (NW7) Start/Stop Character (0x37) .................................119
8-26 MSI Plessey .......................................................................................................120
8-26-1 Enable/Disable MSI Plessey (0x0B) ..................................................................120
8-26-2 Fixing the Length of MSI Plessey (0x1E/0x1F) ..................................................121
8-26-3 MSI Plessey Check Digits (0x32).......................................................................122
8-26-4 Transmit MSI Plessey Check Digits (0x2E)........................................................123

OPTICON
Software Guide
MDL-1000/2000
6
8-26-5 MSI Plessey Check Digit Algorithm (0x33).........................................................124
8-27 RSS (Reduced Space Symbology) ....................................................................125
8-27-1 Enable/Disable RSS-14 (0xF0 0x52) .................................................................125
8-27-2 Enable/Disable RSS-Limited (0xF0 0x53)..........................................................126
8-27-3 Enable/Disable RSS-Expanded (0xF0 0x54) .....................................................127
8-28 Transmit Code ID Character (0x2D)...................................................................128
8-29 Prefix/Suffix ........................................................................................................129
8-29-1 Prefix (0x69).......................................................................................................129
8-29-2 Suffix 1/2 (0x68/0x6A)........................................................................................130
8-30 Scan Data Transmission Format........................................................................131
8-31 Serial Parameter ................................................................................................132
8-31-1 Baud Rate (0x9C) ..............................................................................................132
8-31-2 Parity (0x9E) ......................................................................................................133
8-31-3 Software Handshaking (0x9F)............................................................................134
8-31-4 Decoded Data Packet Format (0xEE)................................................................135
8-31-5 Host Serial Response Time-out (0x9B)..............................................................136
8-31-6 Stop Bit (0x9D) ...................................................................................................137
8-31-7 Intercharacter Delay (0x6E) ...............................................................................138
8-31-8 Host Character Timeout (0xEF) .........................................................................139
8-32 Event Reporting .................................................................................................140
8-32-1 Decode Event (0xF0,0x00) ................................................................................140
8-32-2 Boot Up Event (0xF0, 0x02)...............................................................................141
8-32-3 Parameter Event (0x0F,0x03) ............................................................................142
8-33 Numeric Bar Codes............................................................................................143
8-34 Cancel ................................................................................................................144
8-35 Prefix/Suffix Values ............................................................................................145

OPTICON
Software Guide
MDL-1000/2000
7
1. ABSTRACT
This specification provides interface specifications of an X1 laser scan engine with a built-in decoder
(“X1” is a tentative name of this product. This product shall be hereinafter called as “this scan
engine”).

OPTICON
Software Guide
MDL-1000/2000
8
2. OVERVIEW
This scan engine is a compact laser scan engine with a built-in decoder, which is possible to be
installed in various handheld products such as handy terminals.
The host system controls this scan engine and inputs scanned data in serial communication.
This material provides information on the control method and the connection between this scan
engine and its host system.

OPTICON
Software Guide
MDL-1000/2000
9
3. INTERFACE
3-1. Interface Signal
Signals used to connect this scan engine and host system are as follows:
Signal Input/Output Function Notes
RXD Input Serial Receive Data
TXD Output Serial Transmit Data
CTS Input Clear To Send
Request for the host system to transmit the
data at L-level
RTS Output Request To Send
Feasible to receive the data at L-level
Trigger
Input
Signal to Start the Decoding L Active
Buzzer
Output Output of rectangular-wave for Buzzer drive.
Decode
LED
Output Output of the level signal for LED
Power
Down
Output Output for Power Mode of this scan engine.
Output of H-level signal in Low Power mode.
Aim/Wake
Input Input to recover from Low Power Mode to
the aiming state. (L Active)
In the Continuous Power Mode, it is an input
of aiming control.

OPTICON
Software Guide
MDL-1000/2000
10
3-2. Connection Method
The connection between the scan engine and the host system will be carried out as follows:
TXD RXD
RXD TXD
RTS CTS
CTS RTS
Trigger
Power Down
Aim/Wake
Buzzer Decode LED

OPTICON
Software Guide
MDL-1000/2000
11
3-3. Serial Communication Specifications
This chapter provides specifications of serial data transmission.
•Asynchronous
•Data Length: 8 bit fixed
•Parity: Odd Numbers / Even Numbers / None (default setting: none)
•Stop Bit: 1 or 2 bit (default setting: 1 bit)
•Baud Rate: 300bps to 115200bps (default setting: 9600bps)

OPTICON
Software Guide
MDL-1000/2000
12
3-4. Hardware Handshake
This chapter provides the information on the sequence of hardware handshake.
It is based on the presumption that RTS and CTS signals stay at H-level after the initialization.
(1) Sending command from the host system to this scan engine
1) The host system confirms that CTS signal is at H-level
2) The host system shows that there is command data being sent by setting RTS signal to
L-level.
3) This scan engine detects that CTS signal has been changed to L-level and shows that it
is possible to receive the command by changing RTS signal to L- level.
4) The host system detects that CTS signal has been changed to L-level and transmits data
to TXD signal.
5) When transmission of the last data character completes, the host system sets back RTS
signal to H-level.
6) This scan engine detects that CTS signal has been set back to the H-level and sets back
RTS signal to the H level.
(2) Sending data from this scan engine to the host system
7) This scan engine confirms that CTS signal has been set to H-level.
When CTS signal stays at L-level, it is deemed that there is a command being sent from
the host system so that the data transmission shall be cancelled.
8) The decoder transmits the data to TXD signal.
When CTS signal is set to L-level while the data is under transmission, it is deemed that
there is a command being sent from the host system and data transmission shall be
cancelled to prioritize reception of command.
When the data transmission is cancelled to prioritize reception of command, the data
shall be resent after reception of command.
When there is no command being sent from the host system and CTS signal is set back
to H-level, cancelled data transmission shall restart.

OPTICON
Software Guide
MDL-1000/2000
13
3-5. Communication Procedure (example)
This chapter provides the information on the communication procedure between this scan engine
and the host system. The sequence of this procedure is as follows:
(1) Transfer of the command data packet from the host system to this scan
engine
TXD
(Host RXD)
RXD
(Host TXD)
RTS
(Host CTS)
CTS
(Host RTS)
1) The host system sets RTS signal to L-level for the data packet transmission.
2) This scan engine detects that CTS signal has been set to L-level and sets RTS signal to
the L-level.
3) The host system confirms that CTS signal has been set to L-level and starts
transmission of command data packets.
4) The host system sets back RTS signal to H-level after transmission.
5) This scan engine confirms that CTS signal has been set back to H-level and sets back
the RTS signal to H-level.
6) This scan engine sends back responses.
Note: When ACK/NAK protocol is not selected, the sequence of procedure described in 6)
shall not occure. Also, ACK response shall not be sent for the command below. It is a
command to send back the response data from this scan engine.
PARAM_REQ/REQ_REV
4)1)
3)
5)
6)
2)

OPTICON
Software Guide
MDL-1000/2000
14
(2) Data transfer from this scan engine to the host system
TXD
(Host RXD)
RXD
(Host TXD)
RTS
(Host CTS)
CTS
(Host RTS)
1) This scan engine confirms that CTS signal has been set to H-level and sends command
data packets.
2) The host system sets RTS signal to L-level for transmission of response to the data sent.
3) This scan engine detects that CTS signal has been set to L-level and sets RTS signal to
L-leve.
4) The host system sends the response.
5) The host system sets back RTS signal to H-level after transmission of the response.
6) This scan engine detects that CTS signal has been set back to H-level and sets back the
RTS signal to H-level.
Note: When ACK/NAK protocol is not selected, it is not necesarry to carry out the sequence
of procedure listed above in 2) to 5).
4)
6)
3)
2)
1)
5)

OPTICON
Software Guide
MDL-1000/2000
15
(3) Inhibition of the data transfer from this scan engine to the host system.
TXD
(Host RXD)
RXD
(Host TXD)
RTS
(Host CTS)
CTS
(Host RTS)
1) This scan engine confirms that CTS signal has been set to H-level and transmits the
data.
2) To stop the data tranfer, the host system sets RTS signal to L-level.
3) This scan engine detects that CTS signal has been set to L-level and stops the data
transmission.
4) This scan engine sets RTS signal to L-level.
5) The host system sets back RTS signal to H-level to restart the data transfer.
6) This scan engine detects that CTS signal has been set back to H-level and sets back
RTS signal to the H-level.
7) This scan engine restarts the data transfer.
5)
3) 7)
6)4)
2)
1)

OPTICON
Software Guide
MDL-1000/2000
16
(4) Segmental transfer of command data packets from the host system to this
scan engine
TXD
(Host RXD)
RXD
(Host TXD)
RTS t
(Host CTS)
CTS
(Host RTS)
t: setting value of Host Character Time-out
1) The host system sets RTS signal to L-level for transmission.
2) This scan engine detects that CTS signal has been set to L-level and sets RTS signal to
L-level.
3) The host system confirms that CTS signal has been set to L-level and transmits
command packets.
4) The host system suspends transmission and resets RTS signal to H-level. In this case,
this scan engine does not detect that CTS signal has been set to H-level so that RTS
signal stays at L-level. Therefore, it will continue to be ready for the data packet
reception. Although, the host system needs to restart transmission of data packets within
the setting value of “Host Character Time-out”.
5) The host system sets back RTS signal to L-level.
6) The host system restarts transmission.
7) The host system sets back RTS signal to H-level again after a completion of data packet
transmission.
8) This scan engine detects that CTS signal has been set back to H-level and sets back
RTS signal to H-level.
9) This scan engine sends out the response.
Note: When ACK/NAK protocol is not selected, the sequence described in 9) shall not occur.
7)
6)
5)4)1)
3)
8)
9)
2)

OPTICON
Software Guide
MDL-1000/2000
17
(5) Error: From the host system to this scan engine: in host character time-out
TXD
(Host RXD)
RXD
(Host TXD)
RTS t
(Host CTS)
CTS
(Host RTS)
t: setting value of Host Character Time-out
1) The host system sets RTS signal to L-level for transmission.
2) This scan engine detects that CTS signal has been set to L-level and sets RTS signal to
L-level.
3) The host system, after confirming that CTS signal has been set to L-level, transmits
command data packets.
The host system suspends the packet transmission for once and sets RTS signal to
H-level. In this case, this scan engine does not detect that CTS signal has been set to
H-level so that RTS signal stays at L-level. Therefore, it will continue to be ready for the
data packet reception. However, the host system needs to restart transmission of data
packets within the setting value of “Host Character Time-out”.
4) This scan engine takes time-out of the data packet receiption and sets back RTS signal
to H-level.
5) This scan engine sends out the NAK response.
Note: When ACK/NAK protocol is not selected, the sequence described in 6) shall not occur.
4)1)
3)
5)
6)
2)

OPTICON
Software Guide
MDL-1000/2000
18
(6) Error: Duplicated command data transmission from the host system to this
scan engine
TXD
(Host RXD)
RXD
(Host TXD)
RTS
(Host CTS)
CTS
(Host RTS)
1) The host system sets RTS signal to L-level for transmission.
2) This scan engine detects that CTS signal has been set to L-level and sets RTS signal to
L-level.
3) The host sytem, after confirming that CTS signal has been set to L-level, transmits a
command data packet.
4) The host system repeatedly transmits same command data packets.
5) The host system sets back RTS signal to H-level.
6) This scan engine detects that CTS signal has been set back to H-level and sets back
RTS signal to H-level.
7) The scan engine responses ACK only to the command data packet of 3).
Note: When ACK/NAK protocol is not selected, the sequence described in 7) shall not occur.
5)1)
3)
6)
7)
2)
4)

OPTICON
Software Guide
MDL-1000/2000
19
(7) Suspension of data transmission
TXD
(Host RXD)
RXD
(Host TXD)
RTS
(Host CTS)
CTS
(Host RTS)
1) This scan engine is transmitting the data.
2) The host system sets RTS signal to L-level for the command data packet transmission.
3) This scan engine, after confirming that CTS signal has been set to L-level, suspends
data transmission and sets RTS signal to L-level.
4) The host system, after confirming that CTS signal has been set to L-level, transmits
command data packets.
5) The host system sets back RTS signal to H-level.
6) This scan engine, after confirming that CTS signal has been set to H-level, sets back
RTS signal to H-level.
7) This scan engine responses to the command data packet.
8) This scan engine retransmits the data suspened in 1)
9) The host system sets RTS signal to L-level to send response to the data being sent.
10) This scan engine detects that CTS signal has been set to L-level and sets RTS signal to
L-level.
11) The host system send out the response.
12) The host system sets back RTS signal to H-level.
13) This scan engine detects that CTS signal has been set back to H-level and sets back
RTS signal to H-level.
Note: When ACK/NAK protocol is not selected, the sequence described in 7) and from 9) to
13) shall not occur.
11)
13)
10)
12)
9)
7)1)
5)2)
4)
6)
8)
3)

OPTICON
Software Guide
MDL-1000/2000
20
3-6. ACK/NAK Protocol and Data Format
(1) Command Data Packets (from the host system to this scan engine)
The command data sent out from the host system shall be in the command packet format
defined separately in this specification.
It is possible to enable or disable ACK or NAK response changing the settings of “Software
Handshaking”.
To configure exact settings, it is recommendable to control transmission of ACK and NAK
responses with “Enable ACK/NAK.
(2) Transmission of Decoded Data (from this scan engine to the host system)
In transmitting decoded data from this scan engine, it is possible to choose between the
packet format and unpacket format.
Also, it is possible to control transmission of ACK and NAK responses by setting ”Software
Handshaking”.
1) Packet Data with ACK/NAK Control
Decoded data will be transmitted in the packet format. (Refer to 4-2-6)
After transmission of the decoded data, this scan engine waits for the response from the
host system.
When the response time for the host system runs out, the host system retries transmission
of responses twice. However, if it fails in transmission after those retrying, transmission is
deemed as error and it discards the response data.
2) Unpacket Data with ACK/NAK Control
This scan engine only transmits the result of decoding (including pre/suffix) and shall not
wait for the response of the host system.
However, the response to the command data packet shall be sent.
3) Packet Data without ACK/NAK Control
Decoded data shall be transmitted in packet format. However, this scan engine shall not wait
for the response of the host system.
4) Unpacket Data without ACK/NAK Control
This scan engine only transmits the result of decoding (including pre/suffix) and shall not
wait for the response of the host system.
This manual suits for next models
1
Table of contents