Command Syntax
All DMCC commands are formed of a stream of ASCII printable characters with the following syntax:
command-header command [arguments] footer
For example:
||>trigger on\CR\LF
Command Header Syntax
||checksum:command-id>
All options are colon separated ASCII text. A header without the header-option block will use header defaults.
checksum
0: no checksum (default)
1: last byte before footer is XOR of bytes
command-id
An integer command sequence that can be reported back in acknowledgement.
Header Examples
| Example | Description |
| ||> | Default Header |
| ||0:123> | Header indicating no-checksum and ID of 123 |
| ||1> | Header indicating checksum after command and data. |
Command
The command is an ASCII typable string possibly followed by data. All command names and public parameters data are case insensitive. Only a single command can be issued within a header-footer block. Commands, parameters and arguments are separated by a space character.
Commands
Short names specifying an action. A commonly used command is GET or SET followed by a Parameter and Value.
Parameters
Short names specifying a device setting. Parameter names are organized with a group of similar commands with one level of structural organization separated by a period ('.').
Arguments
Boolean: ON or OFF
Integer: 123456
String: ASCII text string enclosed by quotes (“).The string content is passed to a function to translate the string to the final format. The following characters must be backslash escaped: quote (\”), backslash (\\), pipe (\|), tab (\t), CR(\r), LF (\n).
Footer
The footer is a carriage return and linefeed (noted as \CR\LF or \r\n).
Reader Response
The reader will have one of several response formats. The choice of response format is configured using the SET COM.DMCC-RESPONSE command.
Silent: (0, Default) No response will be sent from the reader. Invalid commands are ignored without feedback. Command responses are sent in space delimited ASCII text without a header or footer.
Extended: (1) The reader responds with a header data footer block similar to the command format.
||checksum:command-id[status]
checksum
The response uses the same checksum format as the command sent to the reader.
0: no checksum
1: last byte before footer is XOR of bytes
command-id
The command-id sent to the reader is returned in the response header.
status
An integer in ASCII text format.
0: no error
1: reader initiated read-string
100: unidentified error
101: command invalid
102: parameter invalid
103: checksum incorrect
104: parameter rejected/altered due to reader state
105: reader unavailable (offline)
Examples
| Command | Silent Response | Extended Response | Description |
| ||>GET SYMBOL.DATAMATRIX\r\n | ON | ||[0]ON\r\n | Is the DataMatrix symbology enabled? |
| ||>SET SYMBOL.DATAMATRIX ON\r\n | no response | ||[0]\r\n | Enable the DataMatrix symbology. |
| ||>TRIGGER ON\r\n | decoded data or no-read response | ||[0]\r\n ||[1]decoded data or no-read response in base64\r\n | Trigger Command |