Keyboard/barcode reader emulation settings
A list of all valid configuration settings which relate to sending pass information over a keyboard/barcode reader emulation interface for the config.txt file.
If KBLogMode=1 and KBSource is set, you can open an application on the computer connected to the VTAP reader, and pass or card data that is read will be typed to the screen. KBSource determines whether keyboard wedge/barcode mode is triggered only by mobile pass reads, or cards/tag reads too. You might need a KBDelayMS value to insert an additional delay between key presses, to suit your receiving application.
KBPrefix and KBPostfix can be optionally used to add extra characters before or after a pass read, to suit your application. These include adding pass type, as explained below:
Pass type character
Pass type is a single character to describe the source of a received pass payload, which may be an Apple VAS pass or Google ST pass, a particular type of NFC card, or other source such as a barcode scanner. The values that returned are:
A - Apple VAS pass
G - Google ST pass
0 - MIFARE card/tag
2 - NFC type 2 card/tag
4 - NFC type 4 card/tag
6 - NFC type 5 card/tag
E - Card emulation
Q - Scanner input
X - Apple Wallet Access iPhone
W - Apple Wallet Access Watch
When KBPassMode=1, a character delimited section of the pass payload will be extracted. The delimiting character defaults to | but this can be changed to another character using KBPassSeparator. The payload is then considered as comprising a number of sections, any of which can be selected using KBPassSection. By identifying a KBContentSeparator this process can be repeated at a lower level, within a section. There is a simple example in the section Extract only part of the pass data.
KBMap optionally points to a separate file, where a list of key codes corresponding to particular characters, can be used to translate between the VTAP default US keyboard emulation and the keyboard language setting used by the host computer.
KBEnable=0 allows you to disable the keyboard device function of a VTAP reader, which can be helpful if you are working with Android devices using the USB COMPort, to avoid a clash with the on‑screen keyboard.
Settings below:
KBDelayMS | KBEnable | KBMap | KBLogMode | KBPassContentMode | KBPassContentSection | KBPassContentSeparator | KBPassLength | KBPassMode | KBPassSection | KBPassSeparator | KBPassStart | KBPostfix | KBPrefix | KBSource
Definition:
Inserts a number of milliseconds delay between key down and key up and between consecutive key presses in the keyboard output.
Options:
Adjust to suit your receiving application between 5ms and 255ms.
Default value: =5
Example value: =10
Definition:
Option to disable the USB keyboard device function of a VTAP reader. This can be useful in Android USB serial integrations, where the presence of a USB keyboard device can disable the on-screen keyboard, which would then need to be overridden in settings.
Options:
=1 (default) will enable the USB keyboard device of a VTAP reader.
=0 will disable the USB keyboard device of a VTAP reader.
Note: The VTAP reader must be rebooted for a change to take effect, with the keyboard device added/removed from the composite device. When the VTAP reader reboots as a new device type it may be assigned different COM ports or drive letters.
Default value: =1
Example value: =0
Definition:
Points to a keyboard map file and/or section of that file, which lists key codes corresponding to particular characters, in order to translate to a keyboard language setting used by the host computer. (Without this setting the VTAP keyboard emulation uses a US English keyboard mapping.)
Options:
KBMap=<section>@<file_name> is the syntax for this setting
<file_name> defaults to kbmap.txt if omitted.
<section> refers to a particular keyboard language such as en-uk, as the file may contain maps for multiple languages although the KBMap setting can only use one at a time.
If you need to use this feature please contact vtap-support@dotorigin.com for suitable kbmap.txt example files.
Default value:
N/A
Example value: =en-uk@kbmap.txt
Definition:
Turns keyboard emulation on or off.
Options:
=1 starts keyboard emulation,
=0 switches it off (default)
Default value: =0
Example value: =1
Definition:
Turns on a subdivision of a data section into smaller content sections.
Options:
=0 off (default),
=1 on
To use this mode you must also supply KBPassContentSeparator if the default % is not the separator you want to use and KBPassContentSection.
Default value: =0
Example value: =1
Definition:
Identifies the content section of interest, by finding KBPassContentSeparator characters. The first content section, before the first separator, is numbered 0.
Options:
Used only if KBPassContentMode=1.
Default value: =0
Example value: =1
Definition:
Identifies the content separator character in the data which bounds content sections.
Options:
Used only if KBPassContentMode=1 and a KBPassContentSection is set.
Default value: =%
Example value: =%
Definition:
Number of characters of data to extract, starting from the position defined by KBPassStart.
Options:
Defaults to 0 meaning do not truncate data, send all available characters from the pass data, or extracted section of pass data.
Default value: =0
Example value: =10
Definition:
Sets whether to extract parts of the data from the mobile NFC pass.
Options:
=0 does not extract a character delimited section of the pass payload (KBPassSection is ignored).
=1 uses the KBPassSection value to extract a character delimited section of the pass payload.
Default value: =0
Example value: =1
Definition:
Identifies the section of interest, based on finding KBPassSeparator characters. The first section, before the first separator, is numbered 0.
Options:
Used only if KBPassMode=1.
Default value: =0
Example value: =2
Definition:
Identifies the separator character in the data which bounds sections.
Options:
Used only if KBPassMode=1 and a KBPassSection is set.
Default value: =|
Example value: =|
Definition:
Number of characters into pass data to start reading, where first character is 0.
Options:
May be used with KBPassLength.
Default value: =0
Example value: =5
Definition:
Adds special characters after data, if needed.
Options:
Use standard
ASCII hex characters to describe the keystrokes to append.
%0D in the example adds a carriage return after the data,
%0A adds a new line after every pass or tag entry.
$t would include the pass type.
$$t would append '$t' to the output.
$t$n will follow the pass type character with a digit for VAS merchant ID/ST collector ID index (1 to 6) and a digit for keyslot used (1 to 6).
$u adds the UID as 8, 14 or 16 hex ASCII digits.
(For a Pass type explainer - click here)
Pass type character
Pass type is a single character to describe the source of a received pass payload, which may be an Apple VAS pass or Google ST pass, a particular type of NFC card, or other source such as a barcode scanner. The values that returned are:
A - Apple VAS pass
G - Google ST pass
0 - MIFARE card/tag
2 - NFC type 2 card/tag
4 - NFC type 4 card/tag
6 - NFC type 5 card/tag
E - Card emulation
Q - Scanner input
X - Apple Wallet Access iPhone
W - Apple Wallet Access Watch
Default value: =%0A
Example value: =end%0D
Definition:
Adds special characters before the data, if needed.
Options:
Use standard ASCII hex characters to describe the keystrokes to append.
%0A in the example adds a new line linefeed before the data.
$t would include the pass type .
$$t would prefix the output with '$t'.
$t$n will follow the pass type character with a digit for VAS merchant ID/ST collector ID index (1 to 6) and a digit for keyslot used (1 to 6).
$u adds the UID as 8, 14 or 16 hex ASCII digits.
(For a Pass type explainer - click here)
Pass type character
Pass type is a single character to describe the source of a received pass payload, which may be an Apple VAS pass or Google ST pass, a particular type of NFC card, or other source such as a barcode scanner. The values that returned are:
A - Apple VAS pass
G - Google ST pass
0 - MIFARE card/tag
2 - NFC type 2 card/tag
4 - NFC type 4 card/tag
6 - NFC type 5 card/tag
E - Card emulation
Q - Scanner input
X - Apple Wallet Access iPhone
W - Apple Wallet Access Watch
Default value: [Empty]
Example value: =%0Astart
Definition:
Controls which types of event data (pass reads, card/tag reads, serial commands) are sent as a keyboard entries.
Options:
The values are determined from a bitwise combination of the following hexadecimal values. Source options include these bit values for mobile passes and tag UIDs:
Bit 7 (0x80) = Mobile Pass (Apple VAS/Google Wallet Smart Tap)
Bit 6 (0x40) = STUID
Bit 5 (0x20) = Write to card emulation mode (CardEmulationMode=1 see VTAP NFC tag emulation settings)
Bit 4 (0x10) = RFU
Bit 3 (0x08) = RFU
Bit 2 (0x04) = Scanners
Bit 1 (0x02) = Command interface messages (>interface:type:message see Dynamic configuration commands)
Bit 0 (0x01) = Card/Tag UID
Default value: =A5
Example value:
=80 (hex) will send only mobile NFC pass data
=A1 to send data from NFC passes and NFC cards/tags and card emulation
=83 to send passes, cards/tags and serial commands