Page 2
The material in this manual is subject to change without notices. KoamTac reserves the right to make changes to any product to improve reliability, function, or design. KoamTac doesn’t assume any product liability arising out of, or in connection with, the application or use of any product, circuit, or application described herein.
KDC100 Programming Manual Table of Contents Internal data buffer ......................... 4 Data Format ............................ 4 How many barcodes can be stored? ................. 6 What happens when the buffer is full? ................6 Commands Set ..........................7 ‘B’ (Read battery level) ......................
Page 4
Wedging Data Format and Handshake Mode ..............63 Barcode only format ........................ 63 Packet data format and disabled Handshake mode ..........63 Packet data format and enabled Handshake mode ..........63 Miscellaneous ..........................64 KDC100 sends "?" character ....................64 Contact Information ........................65...
KDC100 and resulting data for their application. Internal data buffer KDC100 has 190K bytes flash memory where it stores the read barcodes. Its capacity, in terms of number of barcodes, depends on the size of barcodes. Barcodes are stored sequentially as they are scanned in the internal flash memory.
Page 6
(2) The Hours range is 0 – 11 and AM/PM bit 0 means AM, and 1 means PM User Applications generated by Application Generator KDC100 stores the read barcodes in the internal flash memory in the following data format: …..
11 (barcode data) + 2 (length and type) + 4 (time stamp) = 17 bytes. The maximum number of UPCA barcodes that can be saved is 204,800/17 =12,047. However, the maximum number of barcodes can be stored is 10,240. Therefore, KDC100 can store 10,240 UPCA barcodes. What happens when the buffer is full? When the internal flash memory is full, KDC100 displays “Buffer Full”...
KDC100 Programming Manual Commands Set KDC100 has various commands and they are quite simple. They are shown in the following table. Command parameters are either character or hexadecimal numbers. Please read each command description and example carefully. 0xNN means one byte data “NN” in hexadecimal format. For example, 0x30 means hexadecimal number 30 which is equivalent to character “0”.
Page 9
Get barcode handling mode selected by command None value @ None string @ Get firmware version None Wake up KDC100 from sleep mode Select wedging data format (Barcode only, packet value # @ or ! data) value # @ or !
‘<value>@’ where <value> is the capacity of battery (0% to 100%) in hexadecimal and @ means the end of <value> Purpose: Read the current battery capacity of KDC100 [Example] Output: 0x00 0x00 0x00 0x64 0x40 Ignore the first three leading NULL bytes 64% in hexadecimal (100% in decimal) Hexadecimal 40 is “@”...
KDC100 Programming Manual ‘C’ (Set date and time) Parameters: Date and Time value to be set in KDC100 Format: ‘CYMDHmS’ where Y is year(0 means 2000), M is month(1-12), D is day(1-31), H is hour(0-23), m is minute(0-59) an S is second(0-59). Y, M, D, H, m and S are numbers in hexadecimal.
Hex No. 1970 ~ 1999 0x46 ~ 0x63 2000 ~ 2069 0x00 ~ 0x45 Purpose: Read current Date and Time of KDC100 [Example] Output: 0x00, 0x02, 0x03, 0x17, 0x0C, 0x01 0x00: Year 2000 0x02: February 0x03: 3 0x17: 23 Hour (Hexadecimal 17 is equal to 23 in decimal) 0x0C: 12 Min.
None Format: ‘D’ Output: ‘!’ – KDC100 internal flash memory is full or Reading is failed ‘@’ – Barcode reading success Purpose: Software trigger. It starts barcode scanning process. Scanning stops once a barcode is decoded or predefined scanning timeout occurs...
KDC100 Programming Manual ‘E’ (Erase all stored data) Parameters: None Format: ‘E’ Output: ‘@’ Purpose: Erases the internal flash memory completely. All stored data will be lost.
Parameters: None Format: ‘F’ Output: ‘@’ Purpose: To set KDC100 internal options and flag to the factory default setting [Note] The factory default settings are: All symbologies are enabled All options are disabled except − UPCE_ReturnCheckDigit − UPCA_ReturnCheckDigit − EAN8_ReturnCheckDigit −...
KDC100 Programming Manual ‘GC0’ (Disable port connection status display) Parameters: None Format: ‘GC0’ Output: ‘@’ Purpose: Disable Serial and USB connection status display. KDC100 does not display connected and disconnected message.
KDC100 Programming Manual ‘GC1’ (Enable port connection status display) Parameters: None Format: ‘GC1’ Output: ‘@’ Purpose: Enable Serial and USB connection status display. KDC100 displays connected and disconnected message.
KDC100 Programming Manual ‘GD0’ (Unlock date and time setting) Parameters: None Format: ‘GD0’ Output: ‘@’ Purpose: Unlock date and time setting. User can change date and time from KDC100 menu.
KDC100 Programming Manual ‘GD1’ (Lock date and time setting) Parameters: None Format: ‘GD1’ Output: ‘@’ Purpose: Lock date and time setting. User can not change date and time from KDC100 menu.
KDC100 Programming Manual ‘GM’ (Message start position) Parameters: row # and column # Format: ‘GM<row>;<column>#’, where 0 ≤ row≤ 3, 0 ≤ column ≤ 12 and # means the end of data Row/Colum Character Hex No. "0" ~ "9" 30 ~ 39 10~12 "1","0"...
KDC100 Programming Manual ‘GMS’ (Message display duration) Parameters: Message display duration in seconds Format: ‘GMS<sec>#, where 1≤ sec ≤ 60 and # means the end of <sec> Character Hex No. "1" ~ "9" 31 ~ 39 10~15 "A" ~ "F"...
KDC100 Programming Manual ‘GMT’ (Display message) Parameters: Character string to be displayed on KDC Format: ‘GMT<message><CR>, where message is limited to 52 characters Output: ‘@’ Purpose: Display message on KDC [Note] KDC returns @ upon receiving 52 characters. Line would be wrapped automatically if character per line is greater than 13.
KDC100 Programming Manual ‘GS1’ (Start Synchronization) Parameters: None Format: ‘GS1’ Output: ‘@’ Purpose: Acknowledge the start of Synchronization process. KDC becomes synchronization mode, lock buttons and accept only “N”, “W”, “p”, “G” commands from host.
Page 32
KDC100 Programming Manual GTS’ (Set termination character) Parameters: 0, 1, 2, 3 or 4 in character or 0x30, 0x31, 0x32 or 0x33 in hexadecimal number Format: ‘GTS<value>#, where <value> is between 0 and 4, and # means the end of <value>...
KDC100 Programming Manual ‘GTG’ (Read termination character) Parameters: None Format: ‘GTG’ Output: ‘<value>@’, where <value> is between 0 and 4, and @ means the end of <value> Termination value Character Hex No. Character NONE "0" "1" "2" CR/LF "3" "4"...
Output: ‘@’ Purpose: Enable or Disable menu password to prevent user access KDC100 menu [Note] User should enter menu password in 5 seconds [Example] Send 8 bytes data (0x47, 0x57, 0x55, 0x44, 0x55, 0x44, 0x53, 0x23) to enable handshake mode 0x47: ASCII code of character “G”...
KDC100 Programming Manual ‘GX1’ (Enable Auto Menu Exit) Parameters: None Format: ‘GX1’ Output: ‘@’ Purpose: Enables KDC100 to exit menu mode. KDC100 automatically exits from menu mode if it remains idle in menu mode for 5 minutes.
KDC100 Programming Manual ‘GY0’ (Display data, type, date and time) Parameters: None Format: ‘GY0’ Output: ‘@’ Purpose: Display barcode data, barcode type, date and time after scanning a barcode...
KDC100 Programming Manual ‘GY1’ (Display data, date and time, battery status) Parameters: None Format: ‘GY1’ Output: ‘@’ Purpose: Display barcode data, date and time, battery status after scanning a barcode...
Handshake mode is NOT applicable for ‘P’ command and wedging in data only format If handshake mode is enabled, − KDC100 expects HOST to send either success or failure response to KDC100 once HOST receives packet data from KDC100. −...
KDC100 Programming Manual ‘h’ (Read handshake mode) Parameters: None Format: ‘h’ Output: ‘<value>@’ where <value> is either 0 or 1 in hexadecimal, and @ means the end of <value> Purpose: Get the current setting of handshaking mode. 0 means disabled and 1 means enabled...
KDC100 Programming Manual ‘L’ (Set minimum barcode length) Parameters: Minimum length of barcode between 2 to 36 in hexadecimal “L<value>#” where <value> is defined in the following table and # means the end of Format: <value> Minimum Length Character Hex. Number "2"...
KDC100 Programming Manual ‘l’ (Read minimum barcode length) Parameters: None Format: ‘l’ Output: ‘<value>@’ where <value> is the minimum length of barcodes in hexadecimal and @ means the end of <value> Purpose: To get the current setting of minimum barcode length...
"7" "8" "9" Purpose: To get the serial number of KDC100 [Example] Output: 0x30, 0x38, 0x30, 0x33, 0x30, 0x30, 0x31, 0x32, 0x37, 0x39, 0x40 0x30: ASCII code of character “0” in hexadecimal 0x38: ASCII code of character “8” in hexadecimal 0x30: ASCII code of character “0”...
‘<value>@’ where <value> is the number of stored barcodes in hexadecimal and @ means the end of <value> Purpose: To get the number of stored barcodes in KDC100 internal flash memory [Example] Output: 0x00, 0x00, 0x01, 0x1C, 0x40 Ignore the first two leading NULL bytes 0x11C (284 in decimal) stored barcodes 0x40 is the ASCII code of character “@”...
KDC100 Programming Manual ‘O’ (Set barcode option) Parameters: The options (it is unsigned 32-bit number) Format: ‘O<value>#’ where <value> is the value of parameter in hexadecimal and # means the end of <value> Output: ‘!’ – invalid parameter ‘@’ – all other times...
‘<value>@’ where <value> is the selected barcode options in hexadecimal and @ means the end of <value> Purpose: To get the barcode options saved in KDC100. Please see the table of command ‘O’ for the detailed explanation of options [Example] Output: 0xFF, 0xFF, 0xFF, 0xFF, 0x40 0xFFFFFFFF: All options are enabled 0x40: ASCII code of character “@”...
Format: ‘P’ Output: A multi-byte string (see below) Purpose: Get all barcodes data stored in KDC100 internal flash memory. ‘P’ command does not erase the stored barcodes. [Note] The format of the output is as follows: Where N : Total number of bytes to be sent(3 bytes) C0, C1,…, Cn :...
Page 49
KDC100 Programming Manual to each other with no “empty” bytes between them. ‘P’ command does not support Handshake mode [Example] Output: 0x00, 0x00, 0x15, 0x11, 0x02, 0x30, 0x31, 0x32, 0x35, 0x34, 0x36, 0x36, 0x31, 0x32, 0x32, 0x39, 0x36, 0x00, 0x42, 0x17, 0x24...
"2","8","0","0" 32,38,30,30 Output: A multi-byte string defined in the following note. Purpose: Get the Nth barcode data stored in KDC100 memory. ‘p’ command does not erase the barcode in memory. [Note] Where: S : Start byte 0x03(1 byte) N : Total number of bytes to be sent(3 bytes)
Page 51
− Transmit time out is extended to 10 seconds from Firmware version 1.63(2.63) KDC100 tries multiple transmission up to 10 times if Handshake mode is enabled and KDC100 doesn’t get response from HOST within 1 second p command will output timeout result if user fails to send “p<value>#” string within 2 seconds −...
KDC100 Programming Manual ‘S’ (Select symbology) Parameters: The symbology selection (it is unsigned 32-bit number) Format: ‘S<value>#’, where the length of <value> is between 1 and 8, and # means the end of <value> The length of <value> is between 1 to 8 −...
Page 53
KDC100 Programming Manual 0x53: ASCII code of character “O” in hexadecimal 0x46: ASCII code of character “F” in hexadecimal 0x23: ASCII code of character “#” in hexadecimal SFFFFFFFF#...
KDC100 Programming Manual ‘s’ (Read selected symbology) Parameters: None Format: ‘s’ Output: ‘<value>@’, where <value> is 4 bytes and @ means the end of <value> <value> should be interpreted according to the following table. Option is selected if corresponding bit is “1”. Option is NOT selected if corresponding bit is “0”.
KDC100 Programming Manual ‘T’ (Set Timeout) Parameters: Time in msec. Format: “T<value>#”, where <value> is 1 to 4 bytes and # means the end of <value> <value> is between 100msec to 10sec (10000msec) Timeout Character Hex No. 500 (0x1F4) msec "1","F","4"...
KDC100 Programming Manual ‘t’ (Read timeout value) Parameters: None Format: ‘t’ Output: ‘<value>@’ where <value> is the timeout value for barcode read operation in hexadecimal @ means the end of <value> Purpose: To get the current read timeout setting [Example] Output: 0x00, 0x00, 0x07, 0xD0, 0x40 0x007D0: 10000 in decimal, 10sec (10000msec) 0x40: ASCII code of character “@”...
2: KDC100 stores scanned data in the memory but doesn’t transmit it to the host 3: KDC100 stores scanned data in the memory only if it succeeds to send read barcode to the host 4: KDC100 stores scanned date in the memory only if it fails to send read barcode to the host Output: ‘!’...
2: KDC100 stores scanned data in the memory but doesn’t transmit it to the host 3: KDC100 stores scanned data in the memory only if it succeeds to send read barcode to the host 4: KDC100 stores scanned data in the memory only if it fails to send read barcode to the host Purpose:...
KDC100 Programming Manual ‘V’ (Read firmware version) Parameters: None Format: “V” Output: ‘<string>@’ where <string> is KDC100 firmware version and @ means the end of data Purpose: To read the firmware version of KDC100...
None Format: “W” Output: ‘@’ Purpose: To wake up KDC100 from sleep mode [Note] KDC100 will not respond to “W” command if it is in sleep mode. It is required to send ‘W’ command multiple times until receiving ‘@’ output.
‘!’ – invalid parameter ‘@’ – all other times Purpose: KDC100 transmits scanned data to HOST if Wedge mode is enabled. User can set Wedge mode using ‘U’ command. KDC100 can send barcode data only or PACKET data [Note] KDC100 tries multiple transmission up to 10 times if Handshake mode is enabled and KDC100 doesn’t get response from HOST within 1 second...
KDC100 Programming Manual ‘Z’ (Set security level) Parameters: Security level Format: “Z<value>#”, <value> is between 1 and 4, and # means the end of <value> value Character Hex No. "1" "2" "3" "4" 1 is the lowest security level and 4 is the highest security level Output: ‘!’...
KDC100 Programming Manual ‘z’ (Read security level) Parameters: None Format: ‘z’ Output: ‘<value>@’ where <value> is the current security level in hexadecimal. 1 is the lowest security level and 4 is the highest security level. Purpose: Get the current security level value...
Packet data format and enabled Handshake mode KDC100 expects the HOST to send either success or failure response to KDC100 once HOST receives packet data from KDC100 if Wedging data format is packet data and handshake mode is enabled.
KDC100 Programming Manual Miscellaneous KDC100 sends "?" character “?” is sent by KDC100 when the device receives undefined character (command) from Host. Application ignores“?” character...
Need help?
Do you have a question about the KDC100 and is the answer not in the manual?
Questions and answers