TransCore 76007 FHSS TRANSCEIVER MODULE User Manual 3

TransCore FHSS TRANSCEIVER MODULE 3

User Manual 3

Download: TransCore 76007 FHSS TRANSCEIVER MODULE User Manual 3
Mirror Download [FCC.gov]TransCore 76007 FHSS TRANSCEIVER MODULE User Manual 3
Document ID2266873
Application IDA3j7+K0eP0GGQlY5tX95Zw==
Document DescriptionUser Manual 3
Short Term ConfidentialNo
Permanent ConfidentialNo
SupercedeNo
Document TypeUser Manual
Display FormatAdobe Acrobat PDF - pdf
Filesize327.81kB (4097638 bits)
Date Submitted2014-05-14 00:00:00
Date Available2014-05-14 00:00:00
Creation Date2014-04-23 07:44:14
Producing SoftwareAdobe PDF Library 9.9
Document Lastmod2014-04-23 07:44:21
Document TitleUser Manual 3
Document CreatorAdobe InDesign CS5 (7.0)

2.0 Getting Started
7. The millisecond delay box will activate.
In this dialog you can specify zero or more conditions that should
be met for a data string before it is edited by the wizard rules. If a
data string doesn’t meet the conditions and the check box Filter Data
Strings is checked, the data string is filtered. If the check box is cleared,
the data string is sent to the receiving application unmodified.
If you specify a length condition, any data strings shorter or longer
will not be modified by the wizard rules.
You can enter texts that should be present in the data string. Entering
00 in the At Start field will check for 00 in the beginning of the data
string. Then any string that starts with something else will not meet
the condition.
3. Click the Next button when you are done.
8. Set the desired millisecond delay by either using the up or down arrows, or by entering a number directly in the box.
2.9.4.3.1
4. The Wizard – Strip window will open.
Wizard
Enable the user to define a simple setup that matches and modifies a
data string. The wizard consist of four different parts, Trig, Strip, Replace, and Add. It is only intended to be used for very simple tasks. For
more advanced tasks, you need to use the scripting language.
To start the wizard:
1. Tap on the Wizard button.
5. Select one of two choices:
2. The Wizard – Trig window will open.
•
41
Stripping a certain number of characters at the start and/or the
end of the data string, or
2.0 Getting Started
•
8. Tap the Next button.
Removing one or more texts at the indicated positions of the data
string.
9. The Wizard – Add window will open.
For example, if 00 is specified in the field At Start and the data string
is 0012345, the resulting output will be 12345. However, if the data
string is 9912345, nothing will be removed from the start of the data
string.
This window allows the user to enter texts that need to be added to
the data string at the start or the end.
If all fields are left empty, no text will be stripped from the data string.
6. Tap the Next button.
10. When text entry is complete, click on the Finish button.
7. The Wizard - Replace window will open.
11. The Freefloat Link*One Wizard Script window will appear.
12. Tap the Yes button to confirm that a wizard script should be created.
NOTE:
This window allows the user to enter up to three text replacements. Enter the text to be replaced in one of the Search for
fields, and then enter the text to replace it with in the corresponding Replace with field.
The wizard script is a Lua script and can be modified manually afterwards if, for example, the need to add more advanced conditions
or modifications arises.
NOTE:
42
The wizard script is overwritten each time the wizard is run.
2.0 Getting Started
2.9.4.3.2
Tap the OK button to save all changes.
Edit Script
Opens the Link*One script. The name of the script file is Script.txt
and it is opened in the associated program, normally Notepad.
To edit a script:
1. Tap the Edit Script button.
2.9.4.4
Misc Tab
2.9.4.4.1
Use Log File
2. A Notepad window will open.
3. Edit the script as desired.
4. When finished, tap File > Save to save the script.
If all the internal messages and events in Link*One are to be written to a
log, check the setting Use Log File, and enter a valid path and filename
in the edit box. The log file is mostly used for troubleshooting a script.
Alternatively, the text editor SciTE knows the syntax of Lua. It might be
useful when writing Link*One scripts.
2.9.4.3.3
Browse Script Folder
Opens Windows Explorer in the folder that contains the script, configuration, and the license file. For more information about scripting in
Link*One, see the topic Link*One Scripting.
•
To hide Link*One’s main window on startup, check On Startup in
the Hide Window area.
•
To hide Link*One’s main window when serial data is received, check
On Incoming Data in the Hide Window area.
When a value greater than 0 is entered into onTimer Interval, the
script method onTimer() will be called once during the specified time
interval. For example: if you enter the value 3000, onTimer() will be
called once every third second. Please take care when choosing a value
here, if 1 ms is entered, onTimer() will be called 1000 times per sec43
2.0 Getting Started
ond. This could make a PC unresponsive. Of course this will be highly
dependant on what code the onTimer() method contains.
To remove a password:
1. Tap the Set Password button to open the Set Password window.
When the option Autostart is checked, Link*One will start automatically when Windows is launched. Link*One will then be started with
the profile for which Autostart was activated . If there are two profiles—one serving COM1 and the other serving COM2—Autostart
can be checked for each of those profiles. One instance of Link*One will
be started at login for every profile that has Autostart checked.
2.9.4.4.2
Set Password
Allows the user to set a password that is required when exiting Link*One
and when clicking on the Settings... button in the main window.
To set a password:
1. Tap the Set Password button.
2. Delete the text in the Password box.
2. Enter a password into the Password box.
3. Tap the OK button.
3. Tap the OK button to save the password.
2.9.4.4.3
Settings Location
A Link*One configuration consist of mainly two parts, the settings (serial port configuration, hot keys, etc.) and the script file(s).
The settings are file-based to enable different users on the same PC to
share the same Link*One configuration. The configuration is stored in
the file Config.dat. Do not edit this file manually.
To determine where script and configuration files are located, click on
the Browse Script Folder button in the Data Editing tab of the
Settings window.
44
2.0 Getting Started
2.10 Link*One Scripting
2.10.3
2.10.1
When things happen in Link*One, for example a hot key or a data string
is received on the serial port, an event is generated. This results in a
script method being called. The methods called when events happen are
called event methods.
Overview
Link*One has an embedded script language called Lua. When Link*One
receives data from a device, a hot key is pressed etc. certain methods in
the script are called. The code in these scripts determines what action
is taken.
Script Events
The table below is an overview and short description of all the different event methods. For a more detailed explanation, see the topic Event
Methods below.
The name of the script file is Script.txt and is placed in the Link*One
application data folder. The location of this folder varies depending on
what operating system you are using. If you need to make a backup of
the script or copy it to another PC, click on the Browse Script Folder...
on the Misc tab in the Settings dialog. Windows Explorer is opened and
displays the contents of the script folder.
Event Handler
When you edit the script, remember to restart Link*One to recompile
the script or use the faster alternative of entering the Settings dialog and
then exiting it.
If you make a mistake, for example create a syntax error, an error message is displayed when the script is compiled:
onStart
Link*One is started
onEnd
Link*One is exited
onData
A data string is received on the serial port
onHotKey
A hot key is pressed
onKeyboardCapture
A data string is received from a HID device
onExternalData
A data string is received from an external
application
onTimer
The timer interval has elapsed
onCTS
Status change on CTS
onDSR
Status change on DTR
onRI
Status change on RI
onDCD
Status change on DCD
2.10.4
Also, some errors can appear when the script is running, so called runtime errors. Here are a couple of examples:
When Called
Event Methods
In this topic all the event methods are explained in detail.
2.10.4.1
onStart()
This method is called when Link*One is started. It is also called when
you exit the Settings dialog.
This method receives no arguments.
Example: Beep on start
2.10.4.2
onEnd()
Called when Link*One is exited. It is also called when you enter the
Settings dialog.
This method receives no arguments.
2.10.2
Lua Language
Example: Beep on exit
From http://www.lua.org/about.html:
Lua is a powerful, fast, light-weight, embeddable scripting language.
Lua combines simple procedural syntax with powerful data description
constructs based on associative arrays and extensible semantics.
2.10.4.3
Put simply, Lua is what makes data processing in Link*One very flexible
and powerful. The reference manual for Lua can be found at the Lua site:
onData(data, length)
Called when a data string is received from the serial port.
This method receives the data string in data and the length of the string
in length.
http://www.lua.org/
There is also a printed book on the Lua language, called Programming
in Lua, which is more accessible than the reference manual.
Data may contain binary characters including the null character.
Please note that if the Data String Termination is set to be a character and that character does not match the terminator used by the serial
device, this method is never called.
Apart from Lua and its built-in language, Link*One exposes a number
of useful methods to the script.
45
2.0 Getting Started
2.10.4.5
Example: Hex dump of serial data
onKeyboardCapture(name, data)
Called when a keyboard capture string has been received.
The arguments to this method are the name of the keyboard capture
and the data.
Example: Display the name and data of a keyboard capture event
If you have a keyboard captured defined called My USB Scanner and
it captures the string 73105541 the method in the above example will
display this dialog:
2.10.4.6
onExternalData(data, length)
Called when an external application sends data to Link*One.
The arguments are the received data and the length of it.
To test the above example, copy and paste the code into the script replacing the default implementation of onData(). Use Timeout as the
Data String Terminator. Connect a serial device to the serial port and
make it generate some data. Below is the output when reading a barcode
containing “W1711010814107013621” using a serial barcode reader:
External applications can send data to Link*One. They do it by finding
the window handle of Link*One’s window and then send a WM_COPYDATA message to the window.
Example: Display data and length sent to Link*One from
an external application
The last character 0d (hexadecimal) is the same as 13 in decimal notation. The ASCII character with code 13 is carriage return. This means
the barcode reader is using carriage return () as its data string terminator.
2.10.4.4
onHotKey(name)
This feature makes it possible to create an application that integrates
tightly with Link*One. For example, the code in onExternalData() could
relay the data to a scanner to make it beep, initiate a scan, configure it etc.
This method is called when you press a hot key.
The argument to this method is the name of the hot key that was pressed.
Example: Message box displaying the hot key’s name
2.10.4.7
onTimer()
Called periodically at the specified timer interval.
This method receives no arguments.
When executed, the above method will display a message box with the
name of the hot key:
46
2.0 Getting Started
In the example above, the onTimer Interval has been set to 3000 milliseconds (3 seconds). This means that the onTimer() script method will
be called once every three seconds.
Windows
Method
This method can be used for adding timeout logic to a solution.
Example: Output a time stamp to the active application at
the onTimer interval
2.10.4.8
onCTS(status)
This method is called when the hardware handshake signal changes
state.
Description
enumWindows
Enumerates all windows
findWindow
Finds a window with the specified title and/
or class
getForegroundWindow
Gets the handle of the foreground window
getWindowClass
Gets the class name of a window
getWindowText
Gets the title of a window
setForegroundWindow
Sets a window to be the foreground window
setWindowText
Sets the title of a window
windowOperation
Executes a window operation
The argument status is true when the signal goes high and false when
the signal goes low.
Clipboard
Method
Description
This description also applies to onDSR, onRI, and onDCD.
getClipboardData
Gets the text on the clipboard
Example: Outputs the state of CTS when it is changed
setClipboardData
Sets the text on the clipboard
Application Launch
2.10.5
Method
Description
closeAppHandle
Closes the application handle
isAppRunning
Determines if an application is still running
run
Starts a program
Script Methods
Serial Port
Method
Lua is a generic script language and has methods to manipulate string,
tables, files, and so on. However, it does not contain any methods to retrieve the title of a window, simulate keys etc. So in order to activate an
application window, send key strokes and similar operations, a number
of internal methods in Link*One have been exposed to the embedded
Lua script engine.
The tables below offers an overview of the methods. The methods have
been grouped into areas of interest for easier reference. Below the tables
there is a reference section with a detailed description of each method.
Description
closePort
Closes the serial port
getDTR
Gets the status of the DTR signal
getRTS
Gets the status of the RTS signal
openPort
Opens the serial port
setDTR
Sets the status of the DTR signal
setRTS
Sets the status of the RTS signal
When these methods are used in a script, you need to prefix them with
“app.”, for example app.sleep( 100 ).
Miscellaneous
Method
Output/User Feedback
Description
ean128
Parses the contents of a GS1-128/UCC/EAN128 code
Beeps with the internal PC speaker
exit
Exits Link*One
blinkIcon
Changes the color of the notification area
icon
exitWindows
Either logs off the current user, shuts down
the PC, or shuts down and restarts the PC
log
Writes a text line to a log file
getProfile
Gets the current Link*One profile
messageBox
Displays a message box
getTickCount
playSound
Plays a sound file
Gets the number of milliseconds elapsed
since the system was started
playSystemSound
Plays a sound associated with a system
event
lockWorkStation
Locks Windows
setProfile
Sets the current profile
send
Sends keyboard data
setTimer
Sets the script timer
sendSerialData
Sends serial data to the COM-port
sleep
Delays the script for some time
sendSubscriberData
Sends data to subscribers
Method
beep
Description
47
2.0 Getting Started
2.10.6
Output/User Feedback
2.10.6.3
log(filename, message)
2.10.6.1
beep(frequency, duration)
2.10.6.3.1
Description
2.10.6.1.1
Description
Writes the message to the specified log file. Note that logging with this
method from the script is separate from the built-in logging facility.
Makes the internal PC speaker beep with the specified frequency and
duration.
2.10.6.1.2
Arguments
Argument
Type
Description
Number
The frequency of the beep in Hertz.
duration
Number
The duration of the beep in milliseconds.
Type
Description
filename
String
The path and name of the log file to
write to.
message
String
The log message to write.
2.10.6.3.3
Returns
Returns
Nothing.
true if successful, false otherwise.
2.10.6.1.4
Arguments
Argument
frequency
2.10.6.1.3
2.10.6.3.2
Constants
2.10.6.3.4
Example
2.10.6.4
messageBox(title, message, type)
2.10.6.4.1
Description
true if successful, false otherwise.
2.10.6.1.5
Example
2.10.6.2
blinkIcon(icon, duration)
2.10.6.2.1
Description
Displays a message box with the specified title and message. The type
argument specifies the number and type of buttons used.
2.10.6.4.2
Changes the notification icon color for the specified duration. After the
duration has elapsed the icon will return to the default color grey.
Argument
The operation is asynchronous, in other words, if blinkIcon is called
again before the duration for the first call has elapsed, the new icon is set
immediately by the second call.
2.10.6.2.2
Arguments
Argument
Type
Description
icon
Number
The icon color index.
duration
Number
The duration in milliseconds the color
should be displayed before restoring the
default color.
2.10.6.2.3
Arguments
Type
Description
title
String
The message box title.
message
String
The message to be displayed.
type
Number,
optional
The type of buttons to use.
2.10.6.4.3
Returns
A value from the constants in mbResults (see below) indicating the button clicked.
2.10.6.4.4
Constants
Use one of the following constants for the type argument:
Returns
Nothing.
2.10.6.2.4
Constants
2.10.6.2.5
Example
The possible return values are:
Please note the delay in the loop is needed to display each icon color for
half a second.
48
2.0 Getting Started
2.10.6.4.5
Example
2.10.6.6.4
Constants
Use one of the following values for the systemEvent argument:
2.10.6.5
playSound(filename, options)
2.10.6.5.1
Description
The possible values of the options argument:
Plays the sound specified by the filename argument.
2.10.6.5.2
Arguments
Argument
Type
Description
filename
String
The path and filename of the sound file.
options
Number
Specifies the behavior for the sound playback. Use the constants in soundOptions.
2.10.6.5.3
2.10.6.6.5
Example
2.10.6.7
send(data)
2.10.6.7.1
Description
Returns
true if successful, false otherwise.
2.10.6.5.4
Constants
Sends keyboard data.
2.10.6.7.2
Arguments
Argument
2.10.6.5.5
Example
Type
String
data
Description
The data to send.
The argument data is a string consisting of text, key names, and Unicode
characters.
Argument
Type
Description
text
“Rob was
here”
Regular characters.
2.10.6.6
playSystemSound(systemEvent, options)
Key Name
“{Enter}”
Key names corresponds to the keys
defined in the dialog Key Settings.
2.10.6.6.1
Description
Unicode
“{65}”
Character in Unicode decimal notation.
Unicode
“{0x0041}”
Character in Unicode hexadecimal
notation.
Plays the sound specified by the given system event. Different system
events can be mapped to sound files in the Control Panel.
2.10.6.6.2
Arguments
Argument
2.10.6.7.3
Type
Nothing.
Description
systemEvent
Number
The ID of the system event.
2.10.6.7.4
options
Number
Specifies the behavior for the sound playback. Use the constants in soundOptions.
None.
2.10.6.6.3
Returns
Returns
true if successful, false otherwise.
49
Constants
2.0 Getting Started
2.10.6.7.5
Example
2.10.6.9
sendSubscriberData(data, length)
2.10.6.9.1
Description
Sends data to subscribers.
If there are no subscribers, calling this method has no effect.
2.10.6.9.2
Arguments
Argument
Note:
•
•
•
When you want send() to send the characters \ and { you need
to escape those with a backslash. There is a helper method called
escapeData() in the supplied file extra.lua.
The data to send to the COM-port.
length
Number
The number of characters of data that
should be sent.
2.10.6.9.3
Nothing.
When sending data to certain applications they might miss key
presses if the key events are sent too fast or too early. You may
need to increase the setting Interkey Delay and/or intersperse
calls to send() with calls to sleep() or findWindow() depending on
the situation.
None.
sendSerialData(data, length)
2.10.6.8.1
Description
2.10.6.9.4
2.10.6.9.5
Sends serial data to the COM-port.
Note that Link*One needs to be configured to use a COM-port for this
method to work.
2.10.6.8.2
Arguments
Argument
Type
Description
data
String
The data to send to the COM-port.
length
Number
The number of characters of data that
should be sent.
2.10.6.8.3
Returns
Nothing.
2.10.6.8.4
Constants
None.
2.10.6.8.5
Example
50
Description
String
If you specify a key name for a key that is not defined, it will be
ignored.
2.10.6.8
Type
data
Returns
Constants
Example
2.0 Getting Started
2.10.7
Windows
2.10.7.3
getForegroundWindow()
2.10.7.1
enumWindows(handle)
2.10.7.3.1
Description
2.10.7.1.1
Description
Gets the handle of the foreground window.
2.10.7.3.2
Enumerates all windows.
2.10.7.1.2
handle
2.10.7.1.3
None.
Arguments
Argument
Type
Description
Number
The handle to the window whose child
windows should be enumerated. Specify
null (0) to enumerate all top level windows.
2.10.7.3.3
Returns
The window handle of the foreground window. In special circumstances
this can be null so you need to check the return value before further use
of it.
2.10.7.3.4
Constants
None.
Returns
A table containing all the window handles of the enumerated windows.
2.10.7.1.4
Arguments
2.10.7.3.5
Example
2.10.7.4
getWindowClass(handle)
2.10.7.4.1
Description
Constants
None.
2.10.7.1.5
Example
Gets the class name of the specified window.
2.10.7.4.2
2.10.7.2
findWindow(title, class)
2.10.7.2.1
Description
Argument
handle
2.10.7.4.3
Finds a window with the specified title and class.
2.10.7.2.2
Type
Description
2.10.7.4.4
title
String
The title of the sought window.
None.
class
String,
optional
The window class of the sought window.
2.10.7.4.5
2.10.7.2.3
Returns
The window handle if the window is found or null otherwise.
2.10.7.2.4
Constants
None.
2.10.7.2.5
Type
Number
Description
The handle of the window.
Returns
A string containing the class name of the window or an empty string if
the class name couldn’t be retrieved.
Arguments
Argument
Arguments
Example
51
Constants
Example
2.0 Getting Started
2.10.7.5
getWindowClass(handle)
2.10.7.7
setForegroundWindow(handle)
2.10.7.5.1
Description
2.10.7.7.1
Description
Gets the title of the specified window. This method also works on child
windows such as buttons, edit boxes, and similar controls.
2.10.7.5.2
2.10.7.7.2
Arguments
Argument
Type
Number
handle
2.10.7.5.3
Sets the specified window to be the foreground window.
Argument
Description
The handle of the window.
2.10.7.7.3
Returns
2.10.7.7.4
2.10.7.6
getWindowText(handle)
2.10.7.6.1
Description
Gets the title of the specified window. This method also works on child
windows such as buttons, edit boxes, and similar controls.
2.10.7.6.2
2.10.7.6.3
Type
Number
Description
Example
2.10.7.8
getWindowText(handle, text)
2.10.7.8.1
Description
Arguments
Argument
The handle of the window.
Returns
Type
Description
handle
Number
The handle of the window.
text
String
The title to set.
2.10.7.8.3
Returns
true if successful, false otherwise.
Constants
2.10.7.8.4
None.
2.10.7.6.5
2.10.7.7.5
2.10.7.8.2
A string containing the window title of the window or an empty string
if the window text couldn’t be retrieved.
2.10.7.6.4
Constants
Sets the title of the specified window. This method also works on child
windows such as buttons, edit boxes, and similar controls.
Arguments
Argument
handle
Returns
None.
None.
Example
Description
The handle of the window.
Nothing.
Constants
2.10.7.5.5
Type
Number
handle
A string containing the window title of the window or an empty string
if the window text couldn’t be retrieved.
2.10.7.5.4
Arguments
Constants
None.
Example
2.10.7.8.5
52
Example
2.0 Getting Started
2.10.7.9
windowOperation(handle, operation)
2.10.8
Clipboard
2.10.7.9.1
Description
2.10.8.1
getClipboardData()
Executes a window operation.
2.10.8.1.1
Description
2.10.7.9.2
Gets the text from the clipboard.
Arguments
Argument
Type
2.10.8.1.2
Description
handle
Number
The handle of the window.
None.
operation
Number
The operation to perform on the window.
2.10.8.1.3
2.10.7.9.3
The text contents on the clipboard as a string and the length of the data.
If the call fails or the clipboard doesn’t have any text, an empty string
and zero length is returned. Note that the terminating null is counted.
Constants
2.10.8.1.4
The following constants define the possible values of the operation argument:
2.10.7.9.5
Returns
Returns
Nothing.
2.10.7.9.4
Arguments
Constants
None.
2.10.8.1.5
Example
2.10.8.2
setClipboardData(text)
2.10.8.2.1
Description
Example
Sets the text on the clipboard.
2.10.8.2.2
Arguments
Argument
text
2.10.8.2.3
Type
String
Returns
Nothing.
2.10.8.2.4
Constants
None.
2.10.8.2.5
53
Example
Description
The text to set.
2.0 Getting Started
2.10.9
Application Launch
2.10.9.3
run(program, argument, delay)
2.10.9.1
closeAppHandle(handle)
2.10.9.3.1
Description
2.10.9.1.1
Description
Displays a message box with the specified title and message. The type
argument specifies the number and type of buttons used.
Closes the application handle.
2.10.9.1.2
Argument
Type
Number
handle
2.10.9.1.3
2.10.9.3.2
Arguments
The full
path to the
executable.
Description
The application handle.
Returns
Nothing.
2.10.9.1.4
Arguments
Constants
Type
program
String
The full path to the executable.
argument
String
The command line argument string.
delay
Number,
optional
The number of milliseconds to wait until
the started application is waiting for user
input. If this argument isn’t specified, the
default wait time is 10000 ms.
None.
2.10.9.1.5
Example
2.10.9.3.3
See the run() method.
Description
Returns
The application handle. Note that this handle needs to be closed with
the method closeAppHandle() to avoid memory leaks.
If the application couldn’t be started, a runtime error occurs.
2.10.9.3.4
2.10.9.2
isAppRunning(handle)
None.
2.10.9.2.1
Description
2.10.9.3.5
Determines if an application is still running.
2.10.9.2.2
Arguments
Argument
handle
2.10.9.2.3
Type
Number
Description
The application handle.
Returns
Nothing.
2.10.9.2.4
Constants
true if the application is still running, false otherwise.
2.10.9.2.5
Example
See the run() method.
54
Constants
Example
2.0 Getting Started
2.10.10
2.10.10.1
Serial Port
2.10.10.3
closePort()
2.10.10.3.1 Description
getRTS()
Gets the status of the RTS signal of the serial port. RTS is an output
signal.
2.10.10.1.1 Description
Closes the serial port.
2.10.10.3.2 Arguments
2.10.10.1.2 Arguments
None.
None.
2.10.10.3.3 Returns
2.10.10.1.3 Returns
A boolean which indicates the RTS signal status (true = high, false =
low).
Nothing.
2.10.10.1.4 Constants
2.10.10.3.4 Constants
None.
None.
2.10.10.1.5 Example
2.10.10.3.5 Example
See the openPort() method.
See the getDTR() method.
2.10.10.2
2.10.10.4 openPort()
getDTR()
2.10.10.2.1 Description
2.10.10.4.1 Description
Gets the status of the DTR signal of the serial port. DTR is an output
signal.
Opens the serial port.
None.
openPort() and closePort() can be used when you need to release
the serial port, start an application that uses the port for a while, and
then reopen the port.
2.10.10.2.3 Returns
2.10.10.4.2 Arguments
A boolean which indicates the DTR signal status (true = high, false
= low).
None.
2.10.10.2.4 Constants
None.
A boolean indicating if the port could be opened. If the port is being
held open by another application a call to this method will return false.
2.10.10.2.5 Example
2.10.10.4.4 Constants
2.10.10.2.2 Arguments
2.10.10.4.3 Returns
None.
2.10.10.4.5 Example
Note:
55
This is only a code fragment.
2.0 Getting Started
2.10.11
Miscellaneous
2.10.10.5.1 Description
2.10.11.1
ean128(data, strict)
Sets the status of the DTR signal. DTR is an output signal.
2.10.11.1.1 Description
2.10.10.5.2 Arguments
Parses the contents of a GS1-128 code (earlier called UCC-128 or EAN128). For variable length fields followed by another field, the data must
be delimited by a Group Separator (GS, ASCII 29, hex 1D).
2.10.10.5
setDTR(status)
Argument
Type
Boolean
status
Description
The status to set, (true = high, false =
low).
Please refer to http://www.gs1.org for information about GS1 Application Identifiers.
2.10.10.5.3 Returns
2.10.11.1.2 Arguments
Nothing.
Argument
2.10.10.5.4 Constants
None.
2.10.10.5.5 Example
Type
Description
data
String
The GS1-128 data to be parsed and split
into separate fields.
strict
Boolean
In strict mode, spaces are not allowed in
alphanumeric fields.
See the getDTR() method.
2.10.11.1.3 Returns
2.10.10.5.1 Description
A table where the keys are the Application Identifiers (AIs) and the values are the contents of the fields. If the parsing fails, a nil value is returned. The parsing can fail if the code is not a GS1 code or if the code
doesn’t follow the standard.
Sets the status of the RTS signal. RTS is an output signal.
2.10.11.1.4 Constants
2.10.10.5.2 Arguments
None.
2.10.10.6
setRTS(status)
Argument
status
Type
Boolean
2.10.11.1.5 Example
Description
The status to set, (true = high, false =
low).
2.10.10.5.3 Returns
Nothing.
2.10.10.5.4 Constants
None.
2.10.10.5.5 Example
See the getRTS() method.
2.10.11.2
exit()
2.10.11.2.1 Description
Exits Link*One. Please note that the exit is not immediate, Link*One
will exit as soon as the current script has finished executing.
2.10.11.2.2 Arguments
None.
2.10.11.2.3 Returns
Nothing.
2.10.11.2.4 Constants
None.
2.10.11.2.5 Example
56
2.0 Getting Started
2.10.11.3
exitWindows(options)
2.10.11.5
getTickCount()
2.10.11.3.1 Description
2.10.11.5.1 Description
Either logs off the current user, shuts down the PC, or shuts down and
restarts the PC.
Gets the number of milliseconds elapsed since the system was started.
This method can for example be used to take time between events in
Link*One.
2.10.11.3.2 Arguments
Argument
options
Type
Number,
optional
2.10.11.5.2 Arguments
Description
None.
Type of action to be performed.
2.10.11.5.3 Returns
The number of milliseconds elapsed since the system was started.
2.10.11.3.3 Returns
2.10.11.5.4 Constants
Nothing.
None.
2.10.11.3.4 Constants
2.10.11.5.5 Example
The following constants define the type of action to be performed:
Please note that the default value for options is Logoff (0). The Force
(4) value must be used in combination with Logoff (0), Shutdown (1),
Reboot (2), or Poweroff (8). Use Force (4) with care since it will end applications without asking the user to save data.
2.10.11.3.5 Example
2.10.11.6
2.10.11.4
getProfile()
lockWorkStation()
2.10.11.6.1 Description
2.10.11.4.1 Description
Locks Windows.
Gets the current Link*One profile.
2.10.11.6.2 Arguments
2.10.11.4.2 Arguments
None.
None.
2.10.11.6.3 Returns
2.10.11.4.3 Returns
true if successful, false otherwise.
A string containing the name of the current profile.
2.10.11.6.4 Constants
2.10.11.4.4 Constants
None.
None.
2.10.11.6.5 Example
2.10.11.4.5 Example
57
2.0 Getting Started
2.10.11.7
setProfile(profile)
2.10.11.9
sleep(duration)
2.10.11.7.1 Description
2.10.11.9.1 Description
Sets the current profile in Link*One.
Delays the script for the specified time.
Please note that a profile change reinitializes the Lua script engine and
because of this, any information held in global variables will be lost. If
you need any information to survive over a profile switch, you will need
to store it in a file.
2.10.11.9.2 Arguments
Argument
duration
The actual switch is delayed until the script has finished executing the
current method.
Type
String
profile
Description
The time to wait.
2.10.11.9.3 Returns
Nothing.
2.10.11.7.2 Arguments
Argument
Type
Number
2.10.11.9.4 Constants
Description
None.
The name of the profile to switch to.
2.10.11.9.5 Example
2.10.11.7.3 Returns
Nothing.
2.10.11.7.4 Constants
None.
2.10.11.7.5 Example
2.10.12
Notification Area Icon
When started, Link*One adds an icon to the notification area (also
called the Systray sometimes). It is used to indicate different states and
events. Please note that the icon can also be modified by a script.
Appearance
Explanation
Link*One is idle.
2.10.11.8
setTimer(interval)
2.10.11.8.1 Description
Data was received from the serial port.
Sets the script timer to the specified interval. This is the same setting as
on the Misc tab in the Settings dialog. To turn off the timer, specify zero
as the interval.
Data was sent to the serial port.
2.10.11.8.2 Arguments
Argument
interval
Type
Number
A serial hardware pin event was triggered.
OR
Description
Data was received through a keyboard
capture definition.
The timer interval to set.
2.10.11.8.3 Returns
The serial port specified in the profile could
not be opened.
Nothing.
2.10.11.8.4 Constants
None.
2.10.11.8.5 Example
58
2.0 Getting Started
2.10.13
Migration guide WLinq 3.x to
Link*One
Link*One has no character translation table, instead you can record a
custom key sequence and give it a name. See Section 2.9.4.2.2 Key
Settings for instructions on creating a custom key sequence.
Link*One is based on the earlier product called WLinq. Many functions
present in WLinq (3.x) has been removed in Link*One. The reason for
this is to simplify Link*One and to avoid confusion if there are more
than one way to achieve a task.
The key name can then be used as an expression in the string passed to
the send() method:
This guide is meant to ease the transition from WLinq 3.x data formats
to the new script based approach in Link*One. Other types of features
that has been affected are also explained in this chapter.
2.10.13.1
2.10.13.4
Send Pre- and Postfix Keys
This feature mainly existed for the integration of WLinq to Freefloat
Access*One. When activated, the key sequence Ctrl + Alt + 1 was sent
before the data string and Ctrl + Alt + 2 was sent after the data string. It
enabled Access*One to distinguish between keyboard and barcode data.
To achieve the same result, record the key sequences and given them the
names {Prefix} and {Postfix} and then use them in an expression:
Duplicate String Filter
The Duplicate String Filter function has been removed from the
Communications tab in the Settings window. The equivalent
function can be achieved in a script:
2.10.13.5
Lock Output Window
The Lock Output Window function can be implemented in a script.
The following script only sends data to a window who’s title contain the
text “- Notepad”:
2.10.13.6
Initialization String
The Initialization String can be used for sending a command to for
example a barcode scanner that needs some enabling or configuration
command at startup.
2.10.13.2
In Link*One, the following script could instead be used to send commands to the equipment attached to the serial port:
Case Setting
The Case Setting function has been removed from the Keyboard
tab in the Settings window. To achieve the same in a script, use the
appropriate sample from below:
Note:
onStart() is called when a profile is activated. This happens
when Link*One starts but also when you click OK in the Settings dialog. Similarly, onEnd() is called when Link*One is
exited and also when the Settings dialog is entered by clicking
the Settings button in the main window.
2.10.13.7
2.10.13.3
Filter Unknown Data Strings
In WLinq 3.x, if no data editing format matched the input data, the option Filter Unknown Data Strings determined whether the input data
should be discarded or let through unmodified. The same effect can easily be implemented in a Link*One script:.
Character Translation
In WLinq 3.x, the only way to have WLinq press special keys like Home,
Page Down, and similar was awkward. First you had to choose a character position, then redefine that position to map the character to for
example the Home key. Then in the data output format, you had to use
that character in the output string, for example: Input() + “\x81”.
59
2.0 Getting Started
The above script makes Link*One filter all input data that doesn’t start
with the characters K06.
2.10.13.8
2.10.13.10 Data Format Output
In a WLinq 3.x data format, expressions was entered into the data format
output edit box and combined with plus (+). In Link*One, all the string
operations are using the facilities of the embedded script language. To
make Link*One simulate a possibly modified string as keyboard output,
you need to pass the string to the method app.send().
Input Data Replacements
The replacement function in earlier WLinq versions was quite easy to
use. But it lacked power and flexibility. Below is an example of a simple
substring replacement. It replaces all occurrences of the character K
with the character X.
Use the table below as a guide for converting expressions in WLinq 3.x
to Link*One. Most string operations in WLinq 3.x operated on the data
input string implicitly. In Link*One, the data string is an argument sent
to the script methods onData(), onKeyboardCapture(), and onExternalData().
Multiple replacements can be done by storing the result in a string variable and repeat the process. Here K is replaced with X and A is replaced
with TEST.
Constant String
WLinq 3.x
Link*One
“ABC”
“ABC”
Extract a substring from the start of the string
2.10.13.9
Criteria
WLinq 3.x
Link*One
Left( 3 )
string.sub( data, 1, 3 )
string.sub( data, -3 )
In the previous WLinq generation, a data format was activated for a data
string when the criteria of the data format matched. Two types of criteria were supported, length and pattern.
In Link*One the same function as a length criteria is implemented using
an if-statement.
WLinq 3.x
Link*One
Right( 3 )
string.sub( data, -3 )
Extract characters from position three up to position four.
Please note the difference in parameters!
An alternative approach could be:
WLinq 3.x
Link*One
Mid( 3, 2 )
string.sub( data, 3, 4 )
From the first A in the string, extract five characters including the A
WLinq 3.x
Link*One
Mid( “A”, 5 )
string.gsub( data, “.*(A....).*”, “%1” )
Extracts characters from position six to the end of the string
A pattern criteria like the one above could be implemented using the
string.find() pattern matching method:
WLinq 3.x
Link*One
Mid( 6 )
string.sub( data, 6 )
Scans for the first string and extracts all characters up to
the second string.
23 and CD is not included in the result.
The format used for patterns in string.find() and the format in WLinq
3.x is different. Please refer to the Lua documentation for the Lua pattern format.
A big advantage with scripting in Link*One is that more complex decisions can be made, for example mixing length and pattern matching,
something that was not possible in WLinq 3.x. Multiple criteria used in
WLinq 3.x can be implemented by chaining if-elseif-statements:
WLinq 3.x
Link*One
SubStr( “23”, “CD” )
string.gsub( data, “.*23(.*)CD.*”, “%1” )
The entire data string
WLinq 3.x
Link*One
Input()
data
Inserts the current date in the specified format
60
WLinq 3.x
Link*One
Date( “%Y-%m-%d” )
os.date( “%Y-%m-%d” )
2.0 Getting Started
There is no direct equivalent function for the WLinq 3.x WaitForWindow. Below is a full example of a script which waits for a Notepad window to appear, activates the window, and after a small delay sends the
data to the window.
Inserts the current time in the specified format
WLinq 3.x
Link*One
Time( “%H:%M” )
os.date( “%H:%M” )
Some common situations where you need to wait for a window are when
waiting for an Open dialog to appear (after sending Ctrl+O) or when
you have launched an application with app.run() and need to wait for it
to be ready to receive input.
Concatenations of expressions
WLinq 3.x
Link*One
“X” + Left( 2 ) + Right(
2)
“X” .. string.sub( data, 1, 2 ) .. string.sub(
data, -2 )
Wait for a window to appear
Control characters
WLinq 3.x
WLinq 3.x
Link*One
“”
“{13}{9}”
WaitForWindow(
“*Notepad”,
3000 )
“\x09”
“{9}”
“\d013”
“{13}
Link*One
Combining text and key presses
WLinq 3.x
Link*One
Input() + “1”
data .. “{Tab}1{Enter}”
Reboot Windows
WLinq 3.x
Link*One
Reboot()
app.exitWindows( exitWindowsOpts[“REBOOT”] )
Reboot Windows (forced)
WLinq 3.x
Link*One
RebootForced()
app.exitWindows( exitWindowsOpts[“FORCE”] )
No direct equivalent function for WaitForAppExit() exists in Link*One.
The same result can be achieved by using app.isAppRunning().
Starts the specified program
WLinq 3.x
Link*One
RunApp( “notepad.
exe” )
h = app.run( “notepad.exe” )
closeAppHandle( h )
Even though the sample below demonstrates a script that pauses until
you exits Notepad, Link*One is not intended to have a script that interact with the user (except for app.messageBox()) since there may be side
effects.
app.isAppRunning() is intended to be used to synchronize the script
with an external application that does its job and then exits.
Please note that the Link*One sample code below more realistically
demonstrates what is needed when switching to another application. A
small delay is needed before sending input to the activated window or
characters may be lost. Also the example avoids an unnecessary delay
when the target window already is the foreground window.
Wait for a window to appear
WLinq 3.x
WaitForAppExit(
30000 )
Activates the first window that has a caption that matches
the window caption pattern
WLinq 3.x
Link*One
Link*One
SetFocus( “*Notepad” )
If a script calls app.closePort(), the script can start an external application that uses the same serial port. When that external application
is exited, the script can re-open the serial port by calling app.openPort().
61
2.0 Getting Started
The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.
Open the serial port
WLinq 3.x
Link*One
OpenPort()
app.openPort()
THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY
OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Close the serial port
WLinq 3.x
Link*One
ClosePort()
app.closePort()
Send data to the serial port
WLinq 3.x
Link*One
SendData( “abc” )
data = “abc”
app.sendSerialData( data, data:len() )
Note:
2.10.16
The profile switch is performed when the script has finished its
execution.
Switch profile
WLinq 3.x
Link*One
SetProfile( “Profile2” )
app.setProfile( “Profile2” )
2.10.14
Version
Changes
Date
5.0
Major upgrade, product name changed, and OEM
version created.
2008-11-26
5.1
Changed name of Lua DLL file to make it compatible
with a Lua addon.
2009-03-06
5.2
Added the wizard.
Updates to the manual.
2009-04-02
5.3
When “{65}” was used as a character notation there
was a bug in the parser that sometimes made the
character disappear.
On slow systems with a single CPU core there could
be a race condition between the main program module and the licenser module.
2009-10-29
5.4
Added 30-day trial period.
Added scan codes for all default key sequence definitions. This was done to avoid problems sending Tab
and similar keys in a thin-client environment.
2010-10-05
Fixed problem with empty hot key sequences.
Support for Thin Clients, Java
Applications, and Flash Applications
Normally, Link*One uses a Windows API function called SendInput to
simulate key presses to the active application. This API is recommended
by Microsoft because it takes care of differences between different keyboard locales. For example, on a French keyboard, the letter A is positioned where the letter Q is on a US/UK keyboard layout.
However, this technique of simulating keys doesn’t work with all environments and applications used on the Windows platform. So far, problems have been spotted with thin clients (Terminal Services or Citrix),
Java applications, and Flash applications.
5.5
OEM version released for testing.
2010-12-22
5.6
OEM version with extra tab in Settings dialog for
easier configuration of scanner key.
2011-05-05
5.7
Now blocks key sequences named {numbers} since
they won’t work. The reason is that the syntax {number} is used as a format to specify the ASCII/Unicode
code for characters in the string sent to app.send().
Added built-in support for applications/environments not supporting the way Link*One simulates
most keys. Added appendix that explains how this
feature is activated and how it works.
2011-05-10
5.8
Removed remnants of code for overlapped I/O that
wasn’t used. It made third-party serial drivers upset
and caused Link*One to hang. This problem was
noticed when trying to use Link*One together with
BlueSoleil Bluetooth software.
2011-11-01
To address this issue, key sequences for digits, lower case and upper case
letters has been recorded and is present in the default configuration of
Link*One. Script functions for translating digits and letters to key sequences are provided in extra.lua. Also, the function sendData in
the default script.txt contains information about how to activate this
feature.
Please note that the key sequences are tailored for the most common
keyboard layouts, QWERTY with non-shifted keys for digits. You need
to modify some of these key sequences to make it work on for example
AZERTY (French) and QWERTZ (German) keyboard layouts.
2.10.15
Version History
Lua Copyright
Copyright © 1994-2008 Lua.org, PUC-Rio.
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without
limitation the rights to use, copy, modify, merge, publish, distribute,
sublicense, and/or sell copies of the Software, and to permit persons to
whom the Software is furnished to do so, subject to the following conditions:
62
3.0 Operating the3.0
Unit
Operating the Unit
3.1
GPS Instructions
3.1.1
Requirements:
The WWAN module of the M9010 includes a GPS.
3.1.2
Set up to use the GPS
To use the GPS, the WWAN module must be either fully turned on, or
in airplane mode.
To ensure WWAN is ON or in Airplane Mode:
1. Open DAP Configuration Center
2. Select the Power Options tab
6. Select Sierra Wireless NMEA Port (COM12), then OK. The following screenshot shows 2 satellites are detected (not enough):
3. Ensure you are in one of the following combinations:
•
Global airplane mode is OFF and WWAN is ON or in Airplane
•
Global airplane mode is ON and WWAN was either ON or in
Mode
Airplane Mode
Here are some acceptable settings:
Once the GPS is able to get a fix (enough satellites), Fastrax shows
something like:
The GPS Monitor shows:
4. Open the GPS monitor (Fn + F6), and click on the ‘play’ button:
7. Clicking on the third button shows a map.
8. GPS is now ready.
You’ll get Session started, waiting for fix…
5. To get more detailed information:
a. Run Fastrax GPS Workbench available from the desktop
b. Select File > Connect:
63
3.0 Operating the Unit
3.1.3
3.2
Integration to Windows 7
The GPS is handled as a standard sensor in Windows 7:
3.2.1
DAP-Imager Instructions
What is DAP-Imager
DAP-Imager allows taking pictures using the built-in camera. It also
features a barcode decoding engine to read 1D and 2D barcodes, usually
used with ScannerManager.
If the Weather gadget is opened, it will update with a city nearby.
3.2.2
Selecting the Right Mode
The upper right icon (or lower left if unit is in portrait) is used to select
the mode:
The portrait, landscape and macro modes are used to take pictures,
whereas barcode mode is used to read barcodes. Mode settings are defined in the INI file. Refer to that section for more details.
3.2.3
Pictures
3.2.3.1
How to Take a Picture
To take a picture, press and release the trigger button on the back of the
unit. Alternatively, you can click on Capture.
3.2.3.2
DAP-Imager uses the same method to get the current position in order
to geotag images.
Flash
The flash can be turned on or off using the flash menu.
No automatic flash is supported at this time.
64
3.0 Operating the Unit
3.2.3.3
The coordinates are shown on top after having added the file to the list.
Geotagging
3.2.3.4
The geotagging menu allows enabling the feature and showing a map
centered on the current position. The current coordinates are written at
the bottom of the menu.
To open the folder where images are saved, choose “Actions > Show Image Folder” from the ‘more’ menu.
Once a picture has been taken, the current location is saved as an EXIF
metadata in the JPEG file (GPS sub-IFD).
3.2.3.3.1
How to Locate a Saved Picture
3.2.3.5
General Options
To access the general options, choose “Options > General…” from the
‘more’ menu:
How to enable the GPS
DAP-Imager has been built to work with the standard location sensors
supported by Windows 7. The WWAN module is equipped with a GPS,
which maps to “Sierra Wireless NMEA Port” in the “Location and Other Sensors” section of the control panel. You may also use the “Geosense
Location Sensor” that retrieves the current position by looking to the
WLAN used.
Option screen:
Refer to Section 3.1 GPS Instructions for more information.
Once a fix is available, DAP-Imager should show the current position in
the geotagging menu.
Refer to the GPS section of the user’s manual for more information on
troubleshooting the GPS.
3.2.3.3.2
How to View Geotagging Data
The file name and target folder templates can be changed here. They
define where the image is to be saved. The list of variables can be found
in the TargetFolder option of the [General] section.
To view the location where the picture has been taken, you may use any
geotagging software. For example, the “geotag” software is an open
source java program that can be run from the web (open http://geotag.sourceforge.net , then click on “Run it now”).
The default camera mode is the mode chosen when opening DAP-Imager.
The flash light duration is the number of milliseconds the flash light
remains lit when pressing the  button.
3.2.4
Barcodes
DAP-Imager supports the following barcode symbologies:
65
1D:
Code 11, Code 39 (+extended), Code 93, Interleaved 2 of 5,
Codabar, Code 128, EAN13, EAN8, PatzchCode, UPC-A and
UPC-E.
2D:
PDF417, DataMatrix, QR Code and MicroQR Code
Postal:
AustrialiaPost, IntelligentMail, Planet, Postnet and RM4SCC
3.0 Operating the Unit
DAP-Imager can be used as a standalone application, or used in conjunction with ScannerManager. In both cases, you will probably want
to leave the application hidden to wedge barcodes.
3.2.4.1
3.2.4.1.2
Using DAP-Imager as a Stand-Alone Application
DAP-Imager can be used without ScannerManager. In that case, ScannerManager must not be running, so that the trigger will be used exclusively for DAP-Imager.
How to Scan Barcodes
If you have used ScannerManager before, the keyboard wedge
will have been disabled. To enable it, turn “KbWedge” ON in
the INI file. Check the “.INI Configuration File” section for
more information.
NOTE:
To scan barcodes, first ensure DAP-Imager is in barcode mode. To do
that, open the application (double click the icon in the notification area)
and select Barcode from the mode menu.
You can scan barcodes the same way it’s done in ScannerManager even
if using DAP-Imager separately.
3.2.4.2
Decoder Configuration
The Symbols button shows the decoder properties configuration
screen. It allows enabling or disabling specific barcode types and setting advanced parameters.
The main window shows a preview and a text box with the results
scanned. At this point we can start scanning to test the capabilities.
Steps:
•
Press and hold the trigger.
•
Move the unit so that it is almost perpendicular to the barcode.  The
barcode should fill 30% to 75% of the preview window, depending on
the density of the barcode.
•
If the image is not on focus, move unit to force an automatic focus.
•
It usually takes around 1 second to decode a barcode.  On a successful
decode attempt, the barcode is surrounded by a green box and a single
beep is heard. Two beeps indicate failure.
Double click on an item to change its value. If it’s an ON/OFF value, the
change is applied immediately. For other value types, set the value in
the “Value” field, and then click on Apply.
An asterisk (*) indicates default values.
Enabling all barcode types will make decoding slower. You may start
the configuration by selecting a preset (Presets button).
Close DAP-Imager with the top right X button; the program remains in
background.
3.2.4.1.1
The Options button pops up the Decoder Options screen.
Using ScannerManager
Normally you will want to use ScannerManager, like in the following
screen:
These parameters should not be changed, except if suggested by a DAP
technical support representative.
3.2.5
ScannerManager configures DAP-Imager automatically and takes care
of the wedging.
.INI Configuration File
DAP-Imager uses a .INI configuration file located, by default, in
C:\ProgramData\DAP-Imager\DAP-Imager.ini
When DAP-Imager is in background, it shows a live preview as long
as the trigger is held down. It helps ensuring the focus, position and
distance are correct. As soon as the barcode can be decoded, ScannerManager receives the data and wedge it (if the output is set to Keyboard
Wedge).
Before changing it, you must unload DAP-Imager by clicking its icon
in the notification area and choosing Quit. Otherwise, the program
rewrites the INI file when it quits.
If no DAP-Imager.ini file is found in the directory, a new one is automatically created with default values.
66
3.0 Operating the Unit
3.2.6
[General]
3.2.6.7
3.2.6.1
TargetFolder = %PICTURES%\%YEAR%%MONTH%-%DAY%
Determines the key that must be pressed in combination with Func1VirtualKey.
Func1KeyModifiers = 0
To scan barcodes, first ensure DAP-Imager is in barcode mode. To do
that, open the application (double click the icon in the notification area)
and select “Barcode” from the mode menu.
3.2.6.8
Func2KeyModifiers = 0
Specifies the path where the picture is to be taken.
3.2.6.9
Supported variables:
When set to 1, the main trigger key is registered as a global hotkey, so
that DAP-Imager captures it even if another application has the focus.
Determines the key that must be pressed in combination with Func2VirtualKey. Use the key modifiers shown for Func1VirtualKey.
Variables
Func1KeySystemWide = 1
Name
Description
3.2.6.10
%YEAR%
4-digit year
%MONTH%
2-digit month
When set to 1, the second trigger key is registered as a global hotkey, so
that DAP-Imager captures it even if another application has the focus.
%DAY%
2-digit day of month
%DAYOFWEEK%
Name of the week day
3.2.7
%HOUR%
Hour
%MINUTE%
2-digit minute
Options specific to the camera modes that take a picture.
%SECOND%
2-digit second
%INDEX%
Sequential index, incremented each time a
picture is taken. The number is saved in “C:\ProgramData\DAP-Imager\NextImageIndex.txt”.
%PICTURE%
Path of the default Windows folder to save pictures (C:\Users\username\Pictures)
3.2.6.2
3.2.7.1
[Camera]
InactiveTimeBeforeStandbyLevel1 =
10000
Number of milliseconds before the camera is stopped when the application is in background. Waking up the camera takes a few seconds. If
you use the camera often, you may want to increase this value. Decrease
it to save power.
3.2.7.2
FileNameTemplate =
%HOUR%h%MINUTE%m%SECOND%s
ActivateDapImagerOnTrigger = OFF
When in a camera mode (portrait, landscape or macro), the trigger key
is never global, except if this option is set. If set and Func1KeySystemWide is 1, pressing the trigger will show up DAP-Imager. Pressing another time takes a picture.
Specifies the file name of images taken. Supports the same variables
than TargetFolder.
3.2.6.3
Func2KeySystemWide = 0
DefaultImagerMode = Portrait
3.2.7.3
Name of the imager mode to be selected when DAP-Imager starts. Notice
that if ScannerManager is present, it starts DAP-Imager in barcode mode.
ShowImageNameOnPreview = OFF
When ON, the image file path is written on the image when the picture
is taken.
Default supported values: Portrait, Landscape, Macro, Barcode
They correspond to the name of the corresponding section
[ImagerMode:XXXX].
3.2.8
3.2.6.4
Options specific to the barcode mode.
FlashLightDurationMs = 10000
Number of milliseconds the flash light remains lit when its button is
clicked (any camera mode).  The flash light is automatically turned off
after a delay to save power.
3.2.6.5
3.2.8.1
EnableAutoPreview = ON
When ON, DAP-Imager shows the camera preview in a top level window while the trigger key is pressed.
Func1VirtualKey = 135
3.2.8.2
Virtual key code used for the main trigger key. For the integration with
ScannerManager to work, you must use the default value (corresponds
to the trigger on back of the unit).
PreviewWndRect = 0 0 320 240
Size of the auto preview window. Should not be changed.
3.2.8.3
For other virtual-key codes, refer to the “Virtual-Key Codes” section of
the Windows Application UI Development guide. Notice that the codes
here are in DECIMAL.
3.2.6.6
[Barcodes]
UIPolicy = Legacy
Sets the way the trigger key is handled. Only the “Legacy” UI policy
is officially supported, but you may experiment with the other modes.
UIPolicy
Func2VirtualKey = 117
Sets the key used to force an autofocus.
For other virtual-key codes, refer to the “Virtual-Key Codes” section of
the Windows Application UI Development guide. Notice that the codes
here are in DECIMAL.
67
Name
Description
Legacy
Works like a regular handheld scanner: press and
hold the trigger key to decode, release to cancel.
Standard
Press and release the trigger key to decode. DAPImager makes MaxNbrAttempts decoding attempts.
DecTrigUp
Attempts to decode when the trigger key is released.
3.0 Operating the Unit
3.2.8.4
DefaultFocus = 3733
3.2.8.19
MinGainWithMovieLight = 1000
Not used in this version of DAP-Imager.
Not used in this version of DAP-Imager.
3.2.8.5
3.2.8.20
Aimer = ON
MaxGain = 4000
Not used in this version of DAP-Imager.
Not used in this version of DAP-Imager.
3.2.8.6
3.2.8.21
DecodeAfterAutofocus = ON
GainStep = 200
Not used in this version of DAP-Imager.
Not used in this version of DAP-Imager.
3.2.8.7
3.2.8.22
MaxNbrResults = 1
IdealGain = 2000
When several barcodes are visible in an image, the decoder can return
more than one result. Set this value to the maximum number of results
that are considered. If 1, the first result is returned and the others are
discarded.
Not used in this version of DAP-Imager.
3.2.8.8
3.2.8.24
3.2.8.23
FlashIntensityStep = 100
Not used in this version of DAP-Imager.
DecodeTimeoutMs = 1500
MaxFlashIntensity = 100
Maximum duration of a decode operation, in milliseconds. If the decode operation takes longer, it is cancelled. Using a small timeout won’t
allow decoding most barcodes. Using a higher value may have an impact on the user interface responsiveness.
Not used in this version of DAP-Imager.
3.2.8.9
3.2.8.26
3.2.8.25
MaxShutter = 4000
Not used in this version of DAP-Imager.
MaxNbrAttempts = 1
ShutterStep = 260
In the Standard or DecTrigUp UI policies, number of attempts DAPImager tries to decode before returning NO READ.
Not used in this version of DAP-Imager.
3.2.8.10
Not used in this version of DAP-Imager.
3.2.8.27
InactiveTimeBeforeStandbyLevel1 =
10000
3.2.8.28
Number of milliseconds before the flash light is turned off.
3.2.8.11
3.2.9
KbWedge = OFF
AddTab = OFF
AddEnter = ON
[ImagerModes]
3.2.8.1
ModeList = Portrait,Landscape,Macro,B
arcode,
3.2.11
When KbWedge is ON and a barcode is wedged, simulates a RETURN
key after the barcode data.
3.2.8.15
3.2.10
Lists the modes that appear in the camera mode menu. The modes specified here must be defined in the sections that follow.
When KbWedge is ON and a barcode is wedged, simulates a TAB key
after the barcode data.
3.2.8.14
[OCR]
OCR not yet supported in this version of DAP-Imager.
Set this option to ON if you don’t use ScannerManager and want to
wedge barcodes.
3.2.8.13
AppendSymbology = OFF
When ON, DAP-Imager will wedge the name of the symbology after
the barcode data. It can be used to find out the symbology of a barcode.
InactiveTimeBeforeStandbyLevel2 =
10000
Number of milliseconds before the camera is stopped when the trigger
is not pressed. Waking up the camera takes a few seconds. If you scan
barcodes often, you may want to increase this value. Decrease it to save
power.
3.2.8.12
IdealShutter = 575
[ImagerMode:XXXX]
This sections defines a given imager mode (XXXX), as listed in ModeList.  Not all values are used; it depends on the ModeType option.
Preamble =
When KbWedge is ON and a barcode is wedged, this value is prefixed
to the barcode data.
3.2.11.1
3.2.8.16
A value of 1 is for barcode decoding.
Postamble =
When KbWedge is ON and a barcode is wedged, this value is appended
to the barcode data.
3.2.8.17
3.2.11.2
IconID = 142
Resource ID of the icon to be shown in the mode menu. You can use a
resource editor to view the icons that are available (for example: http://
www.resedit.net/).
InterCharDelay = 0
When KbWedge is ON and a barcode is wedged, sets the delay between
each key that is simulated, in milliseconds.
3.2.8.18
ModeType = 0
A value of 0 indicates that it’s a mode to take pictures.
3.2.11.3
MaxGainWithoutMVLight = 2500
SelectionButtonImageFileName = res\
button-mode-portrait80.png
File path of the image shown when the mode is selected (mode button).
Not used in this version of DAP-Imager.
68
3.0 Operating the Unit
3.2.11.4
Set to ON to preview in JPEG format, or OFF to preview in YUV format.
Enabled = ON
3.2.11.23 CompressionRatio = 13
ON if the mode is enabled. If disabled, it will be grayed out in the mode
menu.
3.2.11.5
Not supported by the camera.
AutoFlash = ON
3.2.11.24 FocusPosition = 500
Not used in this version of DAP-Imager.
3.2.11.6
Defines where to focus (0: infinite, 10000: closest position). Not used
when Autofocus is ON.
GpsReportTypes = 1
Set this option to 1 to enable geotagging, or 0 to disable it.
3.2.11.25 Autofocus = ON
3.2.11.7
Enables or disables continuous autofocus. When the camera is moved,
it automatically tries to autofocus.
PreviewWidth = 640
Size of the image preview. Should not be changed.
3.2.11.8
3.2.11.26 WhiteBalancePreset = 0
PreviewHeight = 480
Defines how colors are balanced.
Size of the image preview. Should not be changed.
3.2.11.9
Variables
StillWidth = 1600
Width of the images captured (resolution).
3.2.11.10
StillHeight = 1200
Height of the images captured (resolution).
3.2.11.11
ColorSpace = 16
Name
Description
Automatic
Fluorescent
Incandescent
Sunny
Not used, leave unchanged.
Cloudy
3.2.11.12
Movie Light
Flash
Hybrid
FrameRate = 30.000000
Not used, leave unchanged.
3.2.11.13
Shutter = 10000
Exposition duration, when AutoExposure is OFF. The value must be
between 0 and 10000.
3.2.11.27 ManualWhiteBalance = OFF
3.2.11.14
Set to ON to use WhiteBalanceKelvin. Otherwise, WhiteBalancePreset
applies.
Brightness = 5000
Brightness level. It shifts pixel values so that the image is either lighter
or darker. The value must be between 0 and 10000 (higher is lighter).
3.2.11.15
3.2.11.28 WhiteBalanceKelvin = 8267
White balance value; 0 is the coldest (bluish), 10000 is the warmest.
GlobalGain = 0
Not yet supported by the camera.
3.2.11.29 PreviewToWindow = ON
3.2.11.16
Set to ON to have DirectShow paint the preview (improves performances). Should not be ON in barcode mode.
Exposure = 5000
Not yet supported by the camera.
3.2.11.17
FlipMode = 1
Not supported.
3.2.11.18
AutoExposure = ON
[Permissions]
3.2.12.1
Option(More) = 3
Set this value to 0 to prevent a user from accessing the “more” menu
after the geotagging icon. When clicked, it simply shows the About box.
When ON, the camera finds the best exposition and gain for the current lighting conditions. Using OFF allows setting Shutter manually,
but since the camera doesn’t support the GlobalGain option, it should
not be used.
3.2.11.19
3.2.12
A value of 3 grants all permissions.
LightingMode = 0
0: Flash (light pulse)
1: Continuous lighting (flash light)
3.2.11.20 LightingPower = 0
The lighting power must be 0 (turned off) or 100 (turned on).
3.2.11.21 Aimer = OFF
Not supported by the camera.
3.2.11.22 Compression = ON
69
3.0 Operating the Unit
3.3
Command-Line Options
DAP-Imager includes several commands to control it from an external
application.
3.3.1
Syntax
DAP-Imager [configFilePath] [-b] [-q] [-NextImageFilePath FilePath]
[-OneShotCapture] [-SelectMode \”modeName\”] [-SetAutoFlash state]
[-WaitUntilWndClosed] [-SetTopMost]
Command-Line Arguments
Argument
Description
configFilePath
.ini file to load (optional; default path is C:\
ProgramData\DAP-Imager\DAP-Imager.ini).
-b
Execute in background
-q
Quit any instance already running
-NextImageFilePath
Sets the path of the next image file saved
(one-shot). Normally used with “-OneShotCapture”.
-OneShotCapture
Shows the preview, let the user press the
trigger and take a picture. When taken,
DAP-Imager hides. Can be used with “-NextImageFilePath” to allow a user taking a
picture that is then retrieved by an external
application.
-SelectMode
The next parameter is the name of the
mode to select (Portrait, Landscape, Macro,
Barcode)
-ResetOptions:
Ignores DAP-Imager.ini and use the default
settings
-WaitUntilWndClosed
Shows DAP-Imager and do not return before
it’s hidden
70
4.0 Programming the Unit
4.1
Bar Code Parameter Menus
This chapter describes the programmable parameters, provides bar
codes for programming, and hexadecimal equivalents for host parameter programming through SSI.
custom defaults, scan the Write to Custom Defaults bar code. The factory default or custom default parameter values can be recalled by
scanning the SET FACTOR DEFAULT bar code or the RESTORE DEFAULTS bar code on page 8-10.
Operational Parameters
– or –
The SE-955 is shipped with the factory default settings shown in Table
8-1 on page 8-5. These factory default values are stored in non-volatile
memory and are preserved even when the scanner is powered down.
Changes to the factory default values can be stored as custom defaults.
These values are also stored in non-volatile memory and are preserved
even when the scanner is powered down.
•
To change the parameter values:
•
The table below lists the factory defaults for all parameters. To change
any option, scan the appropriate bar code(s).
Scan the appropriate bar codes included in this chapter. The new
values replace the existing memory values. To set the new values as
Parameter
Send the parameter through the scan engine’s serial port using the
SSI command PARAM_SEND. Hexadecimal parameter numbers are
shown in this chapter below the parameter title, and options appear
in parenthesis beneath the accompanying bar codes. Instructions for
changing parameters using this method are found in Chapter 9, Simple Serial Interface.
Parameter Number (Hex)
Set Factory Default
Beeper Volume
Beeper Tone
Beeper Frequency Adjustment
Factory Default
Section Number
All Defaults
4.2.1
0x8C
Medium
4.2.2
0x91
Medium Frequency
4.2.3
0xF0 0x91
2500 Hz
4.2.4
Laser On Time
0x88
3.0 sec
4.2.5
Aim Duration
0xED
0.0 sec
4.2.6
Scan Angle
0xBF
Medium (46°)
4.2.7
4.2.8
Power Mode
0x80
Low Power
Trigger Mode
0x8A
Level
4.2.9
Time-out Between Same Symbol
0x89
1.0 sec
4.2.10
Beep After Good Decode
0x38
Enable
4.2.11
Transmit “No Read” Message
0x5E
Disable
4.2.12
Parameter Scanning
0xEC
Enable
4.2.13
Linear Code Type Security Levels
0x4E
4.2.14
Bi-directional Redundancy
0x43
Disable
4.2.15
UPC/EAN
5.1
UPC-A
0x01
Enable
5.1.1
UPC-E
0x02
Enable
5.1.2
UPC-E1
0x0C
Disable
5.1.3
EAN-8
0x04
Enable
5.1.4
EAN-13
0x03
Enable
5.1.5
Bookland EAN
0x53
Disable
5.1.6
Decode UPC/EAN Supplementals
0x10
Ignore
5.1.7
0x50 7
8-25
5.1.8
Transmit UPC-A Check Digit
0x28
Enable
5.1.9
Transmit UPC-E Check Digit
0x29
Enable
5.1.10
Transmit UPC-E1 Check Digit
0x2A
Enable
5.1.11
Decode UPC/EAN Supplemental Redundancy
UPC-A Preamble
0x22
System Character
5.1.12
UPC-E Preamble
0x23
System Character
5.1.13
UPC-E1 Preamble
0x24
System Character
5.1.14
71
4.0 Programming the Unit
Parameter No. (Hex)
Factory Default
Page Number
Convert UPC-E to A
Parameter
0x25
Disable
5.1.15
Convert UPC-E1 to A
0x26
Disable
5.1.16
EAN-8 Zero Extend
0x27
Disable
5.1.17
Convert EAN-8 to EAN-13 Type
0xE0
Type is EAN-13
5.1.18
UPC/EAN Security Level
0x4D
5.1.19
UCC Coupon Extended Code
0x55
Disable
5.1.20
Code 128
5.2
Code-128
0x08
Enable
5.2.1
UCC/EAN-128
0x0E
Enable
5.2.2
ISBT 128
0x54
Enable
5.2.3
Code 39
0x00
Enable
5.3.1
Trioptic Code 39
0x0D
Disable
5.3.2
Convert Code 39 to Code 32
0x56
Disable
5.3.3
Code 32 Prefix
0xE7
Disable
5.3.4
Set Length(s) for Code 39
0x12
2-55
5.3.5
5.3.6
Code 39
5.3
0x13
Code 39 Check Digit Verification
0x30
Disable
Transmit Code 39 Check Digit
0x2B
Disable
5.3.7
Code 39 Full ASCII Conversion
0x11
Disable
5.3.8
Code 93
0x09
Disable
5.4.1
Set Length(s) for Code 93
0x1A
0x1B
4-55
5.4.2
Code 11
0x0A
Disable
5.5.1
Set Lengths for Code 11
0x1C
0x1D
4 to 55
5.5.2
Code 11 Check Digit Verification
0x34
Disable
5.5.3
Transmit Code 11 Check Digit(s)
0x2F
Disable
5.5.4
Code 93
5.4
Code 11
5.5
Interleaved 2 of 5
5.6
Interleaved 2 of 5
0x06
Enable
5.6.1
Set Length(s) for I 2 of 5
0x16
0x17
14
5.6.2
Interleaved 2 of 5 Check Digit Verification
0x31
Disable
5.6.3
Transmit Interleaved 2 of 5 Check Digit
0x2C
Disable
5.6.4
Convert Interleaved 2 of 5 to EAN 13
0x52
Disable
5.6.5
Discrete 2 of 5
0x05
Disable
5.7.1
Set Length(s) for Discrete 2 of 5
0x14
0x15
12
5.7.2
0xF0 0x98
Disable
5.8.1
Discrete 2 of 5
5.7
Chinese 2 of 5
5.8
Chinese 2 of 5
72
4.0 Programming the Unit
Parameter
Parameter No. (Hex)
Factory Default
Page Number
Codabar
0x07
Disable
5.9.1
Set Lengths for Codabar
0x18
0x19
5-55
5.9.2
CLSI Editing
0x36
Disable
5.9.3
NOTIS Editing
0x37
Disable
5.9.4
MSI
0x0B
Disable
5.10.1
Set Length(s) for MSI
0x1E
0x1F
6-55
5.10.2
5.10.3
Codabar
5.9
MSI
5.10
MSI Check Digits
0x32
One
Transmit MSI Check Digit
0x2E
Disable
5.10.4
MSI Check Digit Algorithm
0x33
Mod 10/Mod 10
5.10.5
RSS-14
0xF0
0x52
Disable
5.11.1
RSS-Limited
0xF0
0x53
Disable
5.11.2
RSS-Expanded
0xF0
0x54
Disable
5.11.3
RSS
5.11
Data Options
5.12
Transmit Code ID Character
0x2D
Prefix/Suffix Values
  Prefix
  Suffix 1
  Suffix 2
None
5.12.1
5.12.2
Scan Data Transmission Format
0x69
0x68
0x6A
NULL
LF
CR
0xEB
Data as is
Serial Interface
5.12.3
5.13
Baud Rate
0x9C
9600
5.13.1
Parity
0x9E
None
5.13.2
Software Handshaking
0x9F
Enable
5.13.3
Decode Data Packet Format
0xEE
Unpacketed
5.13.4
Host Serial Response Time-out
0x9B
2 sec
5.13.5
Stop Bit Select
0x9D
5.13.6
Intercharacter Delay
0x6E
5.13.7
Host Character Time-out
0xEF
200 msec
5.13.8
Decode Event 0xF0
0x00
Disable
5.14.1
Boot Up Event 0xF0
0x02
Disable
5.14.2
Parameter Event 0xF0
0x03
Disable
5.14.3
Event Reporting*
5.14
Numeric Bar Codes
5.15
Cancel
5.15.1
*See Table 9-9 on page 9-20 for formatting of any parameter whose number is 0x100 or greater.
73
4.0 Programming the Unit
4.2
Bar Code Settings
4.2.1
4.2.3
Parameter # 0x91
Set Default Parameter
To select a decode beep frequency (tone), scan the appropriate bar code.
The SE-955 can be reset to two types of defaults: factory defaults or custom defaults. Scan the appropriate bar code below to reset the SE-955 to
its default settings and/or set the scanner’s current settings as the custom default.
•
Beeper Tone
Restore Defaults - Scan this bar code to reset all default parameters
as follows.
Low Frequency (0x02)
– If custom defaults were set by scanning Write to Custom Defaults, scan Restore Defaults to retrieve and restore the scanner’s custom default settings.
– If no custom defaults were set, scan Restore Defaults to restore
the factory default values.
*Medium Frequency (0x01)
Restore Defaults
•
High Frequency (0x00)
Set Factory Defaults - Scan this bar code to restore the factory de-
fault values. If custom defaults were set, they are eliminated.
4.2.4
Beeper Frequency Adjustment
Parameter # 0xF0 0x91
This parameter adjusts the frequency of the high beeper tone from the
nominal 2500 Hz to another frequency matching the resonances of the
installation. It is programmable in 10 Hz increments from 1220 Hz to
3770 Hz.
Set Factory Defaults
•
Write to Custom Defaults - Scan this bar code to store the current
To increase the frequency, scan the bar code below, then scan three
numeric bar codes in Section 5.5 on page 95 that correspond to the
desired frequency adjustment divided by 10. For example, to set the frequency to 3000 Hz (an increase of 500 Hz), scan numeric bar codes 0, 5,
0, corresponding to 50, or (500/10).
scanner settings as custom defaults. Once custom default settings are
stored, they can be recovered at any time by scanning Restore Defaults.
To decrease the frequency, scan the bar code below, then scan three
numeric bar codes in Section 5.5 on page 95 that correspond to the
value (256 - desired adjustment/10). For example, to set the frequency
to 2000 Hz (a decrease of 500 Hz), scan numeric bar codes 2, 0, 6, corresponding to 206, or (256 - 500/10).
Write to Custom Defaults
4.2.2
Beeper Volume
To change the selection or cancel an incorrect entry, scan the Cancel bar
code in Section 5.5.1 on page 95.
Parameter # 0x8C
To select a decode beep volume, scan the appropriate bar code.
Beeper Frequency Adjustment
(Default: 2500 Hz)
Low (0x02)
*Medium (0x01)
High (0x00)
74
4.0 Programming the Unit
4.2.5
4.2.7
Laser On Time
Scan Angle
Parameter # 0x88
Parameter # 0xBF
This parameter sets the maximum time decode processing continues
during a scan attempt. It is programmable in 0.1 second increments
from 0.5 to 9.9 seconds.
This parameter sets the scan angle to narrow, medium or wide.
To set a Laser On Time, scan the bar code below. Next scan two numeric
bar codes in Section 5.5 on page 95 that correspond to the desired on
time. Single digit numbers must have a leading zero. For example, to set
an on time of 0.5 seconds, scan the bar code below, then scan the “0” and
“5” bar codes. To change the selection or cancel an incorrect entry, scan
the Cancel bar code in Section 5.5.1 on page 95.
Narrow Angle (35°)
(0x05)
*Medium Angle (46°)
(0x06)
Laser On Time
(Default: 3.0 sec.)
4.2.6
Aim Duration
Parameter # 0xED
Wide Angle (53°)
(0x07)
When a scanner with an aim mode (see Table 9-10 on page 9-22) is triggered either by a trigger pull, or a START_DECODE command, this parameter sets the duration the aiming pattern is seen before a a scan attempt
begins. It does not apply to the aim signal or the AIM_ON command. It is
programmable in 0.1 second increments from 0.0 to 9.9 seconds. No aim
pattern is visible when the value is 0.0.
4.2.8
Power Mode
Parameter # 0x80
This parameter determines the power mode of the engine.
To set an aim duration, scan the bar code below. Next scan two numeric
bar codes beginning on page 8-71 that correspond to the desired aim
duration. Single digit numbers must have a leading zero. For example,
to set an aim duration of 0.5 seconds, scan the bar code below, then scan
the “0” and “5” bar codes. To change the selection or cancel an incorrect
entry, scan the Cancel bar code in Section 5.5 on page 95.
In Low Power mode, the scanner enters into a low power consumption
Sleep power state whenever possible (provided all WAKEUP commands
have been released).
In Continuous Power mode, the scan engine remains in the Awake state
after each decode attempt.
The Sleep and Awake commands can be used to change the power state
in either the Low Power mode or the Continuous Power mode.
Aim Duration
(Default: 0.0 sec.)
Continuous Power (0x00)
Low Power (0x01)
75
4.0 Programming the Unit
4.2.9
Triggering Modes
4.2.10
Time-out Between Same Symbol
Parameter # 0x8A
Parameter # 0x89
Choose one of the options below to trigger the scan engine. Bar codes
and option numbers are on the following page.
When in Continuous triggering mode, this parameter sets the minimum time that must elapse before the scanner decodes a second bar
code identical to one just decoded. This reduces the risk of accidently
scanning the same symbol twice. It is programmable in 0.1 second increments from 0.0 to 9.9 seconds.
•
Scan (Level) - A trigger pull activates the laser and decode processing. The laser remains on and decode processing continues until a
trigger release, a valid decode, or the Laser On Time-out is reached.
To set a time-out between same symbol, scan the bar code below. Next
scan two numeric bar codes beginning on page 8-71 that correspond to
the desired time-out. Single digit values must have a leading zero. For
example, to set a time-out of 0.5 seconds, scan the bar code below, then
scan the “0” and “5” bar codes. To change the selection or cancel an
incorrect entry, scan the Cancel bar code in Section 5.5.1 on page 95.
*Level (0X00)
•
Scan (Pulse) - A trigger pull activates the laser and decode processing. The laser remains on and decode processing continues until a
valid decode or the Laser On Time-out is reached.
Time-out Between Same Symbol
(Default: 1.0 sec.)
4.2.11
Pulse (0X02)
•
Beep After Good Decode
Parameter # 0x38
Continuous - The laser is always on and decoding.
Scan this symbol to set the scanner to beep after a good decode.
Continuous (0X04)
•
*Beep After Good Decode
(0x01)
Blink - This trigger mode is used for triggerless operation. Scanning
range is reduced in this mode. This mode cannot be used with scanners that support an aim mode.
Scan this symbol to set the scanner not to beep after a good decode. The
beeper still operates during parameter menu scanning and indicates error conditions.
Blinking (0X07)
•
Host - A host command issues the triggering signal. The scan engine
interprets an actual trigger pull as a Level triggering option.
Do Not Beep After Good Decode
(0x00)
4.2.12
Transmit “No Read” Message
Parameter # 0x5E
Enable this option to transmit “NR” if a symbol does not decode during
the timeout period or before the trigger is released. Any enabled prefix
or suffixes are appended around this message.
Host (0X08)
Enable No Read
(0x01)
When disabled, and a symbol cannot be decoded, no message is sent to
the host.
*Disable No Read
(0x00)
76
4.0 Programming the Unit
4.2.13
Parameter Scanning
Linear Security Level 3
Code types other than the following must be successfully read twice
before being decoded. The following codes must be read three times:
Parameter # 0xEC
To disable decoding of parameter bar codes, scan the bar code below.
The Set Defaults parameter bar code can still be decoded. To enable decoding of parameter bar codes, either scan *Enable Parameter Scanning
(0x01), Set Factory Defaults or set this parameter to 0x01 via a serial
command.
Code Type
Length
MSI
4 or less
D 2 of 5
8 or less
I 2 of 5
8 or less
*Enable Parameter Scanning
(0x01)
Linear Security Level 3
(0x03)
Disable Parameter Scanning
(0x00)
4.2.14
Linear Security Level 4
All code types must be successfully read three times before being decoded.
Linear Code Type Security Level
Parameter # 0x4E
The SE-955 offers four levels of decode security for linear code types (e.g.
Code 39, Interleaved 2 of 5). Select higher security levels for decreasing
levels of bar code quality. As security levels increase, the scanner’s aggressiveness decreases. Select the security level appropriate for your bar
code quality.
Linear Security Level 4
(0x04)
Linear Security Level 1
The following code types must be successfully read twice before being
decoded:
Code Type
Length
Codabar
All
MSI
4 or less
D 2 of 5
8 or less
I 2 of 5
8 or less
4.2.15
Bi-directional Redundancy
Parameter # 0x43
Enable this option to transmit “NR” if a symbol does not decode during
the timeout period or before the trigger is released. Any enabled prefix
or suffixes are appended around this message.
Enable Bi-directional Redundancy
(0x01)
*Linear Security Level 1
(0x01)
When disabled, and a symbol cannot be decoded, no message is sent to
the host.
Linear Security Level 2
All code types must be successfully read twice before being decoded.
*Disable Bi-directional Redundancy
(0x00)
Linear Security Level 2
(0x02)
77
5.0 UPC Types
5.1
5.1.1
5.0 UPC Types
UPC / EAN
5.1.4
Enable/Disable UPC-A :
Parameter # 0x01
Enable/Disable EAN-8 :
Parameter # 0x04
To enable or disable EAN-8, scan the appropriate bar code below.
To enable or disable UPC-A, scan the appropriate bar code below.
*Enable EAN-8
(0x01)
*Enable UPC-A
(0x01)
Disable EAN-8
(0x00)
Disable UPC-A
(0x00)
5.1.2
5.1.5
Enable/Disable UPC-E :
Parameter # 0x02
Enable/Disable EAN-13 :
Parameter # 0x03
To enable or disable EAN-13, scan the appropriate bar code below.
To enable or disable UPC-E, scan the appropriate bar code below.
*Enable EAN-13
(0x01)
*Enable UPC-E
(0x01)
Disable EAN-13
(0x00)
Disable UPC-E
(0x00)
5.1.3
NOTE: UPC-E1 is not a UCC (Uniform Code Council) approved
symbology.
Enable/Disable UPC-E1 :
Parameter # 0x0C
5.1.6
To enable or disable UPC-E1, scan the appropriate bar code below.
Enable/Disable Bookland EAN :
Parameter # 0x53
To enable or disable EAN Bookland, scan the appropriate bar code below.
Enable UPC-E1
(0x01)
Enable Bookland EAN
(0x01)
*Disable UPC-E1
(0x00)
*Disable Bookland EAN
(0x00)
NOTE: UPC-E1 is not a UCC (Uniform Code Council) approved
symbology.
78

Source Exif Data:
File Type                       : PDF
File Type Extension             : pdf
MIME Type                       : application/pdf
PDF Version                     : 1.6
Linearized                      : Yes
Create Date                     : 2014:04:23 07:44:14-07:00
Creator                         : Adobe InDesign CS5 (7.0)
Modify Date                     : 2014:04:23 07:44:21-07:00
XMP Toolkit                     : Adobe XMP Core 5.4-c005 78.147326, 2012/08/23-13:03:03
Metadata Date                   : 2014:04:23 07:44:21-07:00
Creator Tool                    : Adobe InDesign CS5 (7.0)
Format                          : application/pdf
Document ID                     : uuid:fb1b69f4-e081-412b-9dbf-adab6d4ec518
Instance ID                     : uuid:74e95486-1785-4a57-a424-462fac537234
Producer                        : Adobe PDF Library 9.9
Page Count                      : 38
EXIF Metadata provided by EXIF.tools
FCC ID Filing: FIH76007

Navigation menu