FAQ: Augusta Quick Chip Keyboard (QCKB)

Overview

The Augusta can output both chip card and swipe data in a keyboard emulation format, which allows the product to be used in a plug-and-play situation. This is a general FAQ for the Augusta when it is used in the QC KB format. For more detailed support/questions, please email support@idtechproducts.com.

Common Custom Configs/Output:

For the most up-to-date list, all tags below should be covered in the 80000503-001 ID TECH TLV Tag Reference Guide document.

Tag

Definition

Length

Recommended Default

Example

Description / Usage

Tag

Definition

Length

Recommended Default

Example

Description / Usage

DFEF62

Controls whether MSR card with a chip on it can be swiped

1

00

DFEF620100

0: Allows swipe from chip card. 1: Disallows swipe from chip card.

DFED0A

Outputs Fallback Reason

1

01

DFED0A0101

0: Switch is off, does not output fallback reason. 1: Switch is on, does output fallback reason

DFEF65 

Controls Error Reporting

1

01

DFEF650101

0: Switch is off, does not output errors / mutes. 1: Switch is on, does output errors

DFEF62

Controls whether MSR card with a chip on it can be swiped

1

00

DFEF620100

0: Allows swipe from chip card. 1: Disallows swipe from chip card.

DFEF7D 

Controls the number of times the reader will allow another insert after a bad insert

1

03

DFEF7D0103

Configure up to 5 maximum times for the fallback. More information is available on the IDTECH KB:

Product Integration Topic - Augusta QuickChip KeyBoard fallback behavior

DFEF7E 

Controls the status messages returned by the device while the device is in fallback.

6

50 01 50 05 50 36

DFEF7E06500150055036

Leave as the recommended default value.

DFEF5A 

Controls output of tags in QC KB mode

variable

See below

See below

This tag is used for Augusta QC KBs output. The contents of the tag should include all tags that you'd like to see output on a successful dip.

We recommend that you put only the bare minimum necessary, as each tag added will increase the time spent/amount of information to process.

DFED20

Company Name

0-16

69 64 74 65 63 68

DFED2006696474656368

To use, Add this to the DFEF5A output (see further below) after you specify this in the terminal configurations.

Use this TLV for meta data for company name; recommended to use this to store some identifier to track who configured the device.



DFED21

Configure Date

3

042018

DFED2103042018

To use, Add this to the DFEF5A output (see further below) after you specify this in the terminal configurations.

Use this TLV for tracking the configuration date - recommended to use this to track date of config if the key injection / config are done at separate dates.

Noe that the output in HEX is the actual value, does not need to be converted.

DFED22

Current Configuration Version / Misc field

0-32

68 65 6C 6C 6F 2D 74 68 69 73 2D 69 73 2D 69 64 74 65 63 68 2D 63 6F 6E 66 69 67 75 72 65 64 21

DFED222068 65 6C 6C 6F 2D 74 68 69 73 2D 69 73 2D 69 64 74 65 63 68 2D 63 6F 6E 66 69 67 75 72 65 64 21

To use, Add this to the DFEF5A output (see further below) after you specify this in the terminal configurations.

Use this TLV for anything that might help you uniquely identify the terminal and device.



DFEF57

FW Version for QC KB

variable

N / A

DF EF 57 0A 56 31 2E 30 32 2E 30 30 32 2A

To use, Add this to the DFEF5A output (see further below). This value will be pulled from the device.

DFEE17

Terminal Entry Mode output control

1

05

DFEE170105

This configured the output value for 9F39, which is the POS entry mode. If you include 9F39 in the DFEF5A tag, you can expect to see the contents of DFEE17 returned.

Q: How do I configure Augusta QC KB?

A: Consult our guide on the IDTECH KB: How Do I Enable/Disable Quick Chip for KeyBoard Emulation (QCKB) on the Augusta?

Q: Why is the terminal entry mode (9F39) returning the incorrect value? How do I resolve this?

Modify this in the terminal configs: IDTECH defined tag DFEE17 to set the value of 9F39.

In your current terminal configs (example below), change the value of DFEE17 from 7 to 5. This tag was set to 7 in the default example as ID TECH products have the same EMV L2 kernel being used across our contact/contactless family.

To modify this, pull up your existing terminal configurations and edit the value of DFEE17. That should cause all your transactions to be flagged correctly as 5 rather than 7.

Q: How do I set particular tags to show up in the Augusta QC KB output?

IDTECH has defined tag DFEF5A to allow you to control which TLVs are returned during a KBQC transaction. Use this custom tag to specify the tags you want returned. Read or write this tag when you read or write Terminal Settings. For example, consider the Terminal Settings block shown below.

DFEF5A is a TLV that defines ALL the output tags for the Augusta. The default value of DFEF5A is what comes out of the Augusta QC KB on an insert when this value has not been defined. In the example below - following TLV structure, we have DFEF5A 02 XXXX ... etc. 02 defines the length of the tag names. 

For another example, if you only wanted a single tag (9F1E) output in the return tags. See the DFEF5A TLV in the following terminal config (example only):

5F3601029F1A0208409F3501219F33036028C89F4005F000F0A0019F1E085465726D696E616C9F150212349F160F3030303030303030303030303030309F1C0838373635343332319F4E2231303732312057616C6B65722053742E20437970726573732C204341202C5553412EDF260101DF1008656E667265737A68DF110100DF270100DFEE150101DFEE160100DFEE170107DFEE180180DFEE1E08D09C20D0C41E1600DFEE1F0180DFEE1B083030303135313030DFEE20013CDFEE21010ADFEE2203323C3CDFEF4B037F0000DFEF620101DFEF7D0103DFEF7E06500150055036DFEF5A029F1E

The output from the Augusta QC KB would now only have 9F1E.  The length of DFEF5A depends on the included TLVs. 

Q: 9F02 is returning the wrong amount/0. What should I do? 

9F02 indicates the pre-agreed-upon amount. This value is typically discussed between you and your acquirer. 

9F02 is set to 00 00 00 00 00 00 by default. Add this to your terminal configs to update the default amount to a non-zero amount, or the amount that you need.

Add this to your terminal config for ($1): 9F02 06 0000000000100

Q: What are all these proprietary tags? Where do I find more information about these? 

Proprietary tags are documented in ID TECH document 800000503-001, the TLV Tag Reference Guide.

Q: Can I have ID TECH create a custom part number reader, with my custom tags, to save me time, or can I order this custom configuration from distribution? 

Either option is possible. However, your sales rep and our support engineers will have to work with you to ensure that we understand exactly what your requirements are. The process can be made simpler by creating your configuration tool (using ID TECH's freely available Universal SDK) to scale your production pipeline and also afford you much more control in the long run. We additionally have a configuration utility that we equip our distribution partners with; contact your sales rep to learn more about this or email support@idtechproducts.com  

Q: I swiped a card on the Augusta QC KB, and I'm getting no response from the reader. Why? 

There are a few possible reasons for this behavior.

Scenario A:  

Provided you set your terminal configurations for DFEF61 to 1, the default behavior for swiping a chip card is no output (regardless of card brand). If the card does not have a chip on it, the reader should allow the swipe. 

Scenario B:

You need to enable MSR Auto Mode. To fix this, use the Universal SDK Demo utility or by issuing a low-level command to the device.  

Scenario C:

Your device is in USB HID mode. If you expect text output as if you typed on a keyboard, your device needs to be in USB-KB mode for it to function as so, along with being set to Auto Mode.

In USB HID mode, you would send a Start MSR command and get a response back with data. 

Scenario D:

You have an Augusta S device with no key injected. An SRED product (denoted by 'S') for the Augusta will not function properly until the device has a DEK injected (data encryption key). 

Scenario E:

DFEF62 is either not set or set to 0.

Q: How do I allow fallback when the device is missing an AID, has no matching AID, or if the card fails to read? 

The following tags and implementation are heavily covered in the Product Integration Topic - Augusta QuickChip KeyBoard fallback behavior

At a high level, you need to specify the following terminal configurations:

  • DF EF 62 01 01

  • DF EF 7D 01 03

  • DF EF 7E 06 50 01 50 05 50 36

Q: If the card fails to read (bad ICC card), what does the device do? How do I allow a swipe (with the same chip card) as a backup method? 

On the first bad insert, the Augusta is allowing a swipe OR another insert. (provided your terminal configurations are set up correctly according to the above question).

We validated this behavior is acceptable (AMEX / MasterCard had to weigh in) as the original intent behind an older test case/requirement was that the device had to prompt three times before fallback to MSR. They mentioned that it was more of a way to get people to try to insert cards rather than swiping as they were accustomed to.

The device will allow a swipe or insert the first three times. On the final time, the transaction terminates. The reader returns the status code F2 22 on the third try; your application can return a different code.

Q: Why the length of the fallback output doesn't match up with the BER-TLV standard? 

Due to the Augusta returning ASCII embedded in the return MSR data (as how our other readers function), the length you see is a character count rather than the actual length, including a carriage return.

We performed a bit of proof in this guide: Product Integration Topic - Augusta QuickChip KeyBoard fallback behavior

Q: How do I parse out DFEE23 when it is returned in a fallback swipe? 

For the chip error swipe and the candidate list swipe, look for the data contained between the start sentinel 02 to the end 03. To properly parse DFEE23 follow the BER-TLV format:

  • 80 denotes the length (in hex, which is ~128 in decimal)

  • Anything above 80 (ex: 81 or 82) denotes how many additional nibbles to read for the length.

  • 82 (80 + 2) indicates how many bytes after it is used for the length.

Chip Error fallback swipe:

9F390180DFEE238201F9: 01 F9 is length, which is 505. In the MSR payload, the length is 01 ED, which is 493.

Empty candidate list swipe:

9F390180DFEE2381DFDF is length, which is 223. 

MSR payload indicates that the length is 00 d3, which is 211.

For your use case, if you see 80 (or lower), that is your length.

If you see 81, the next byte is the length. 

If you see 82, the next two bytes is the length.

If you see 83, the next two bytes is the length.

For example:

For your empty candidate list swipe example, DFEE23 length was 81 DF: DF evaluates to 223 (in decimal). We read one additional nibble. For the chip error swipe, DFEE23 was 82 01 F9: 01 F9 evaluates to 505 (in decimal). We read two additional nibbles.

Q: The reader returns 80 as the value of 9F39. What does that mean? 

80 is Fallback to Magnetic Stripe. The other values of 9F39 can be found here:  What are the 'PAN Entry Modes' of tag 9F39?

Q: How do I configure my device to add a carriage return after the data on swipe and/or dip?  

You can use dotNetSDKDemo with the steps shown in the screenshot below to first confirm the reader is in the QuickChip KB mode and then send the “735301D302010D” command to Enable ICC Carriage Return:

image-20240130-003333.png

Send the 7253012A010D command with the Augusta in the HID mode using the Wrap NGA option (check the setting with 7252012A).

To enable MSR Carriage return if the Augusta is working in the KB MSR-only mode:

Send the 53D302010D command with the Augusta in the non-QuickChip KB mode using the Wrap ITP option (check the setting with 52D3).

To disable ICC Carriage return:

Send the 7253012A0100 command via uDemo with the Augusta in the HID mode using the Wrap NGA option (check the setting with 7252012A).

To disable MSR Carriage return:

Send the 53D30100 command via uDemo with the Augusta in the KB mode using the Wrap ITP option (check the setting with 52D3).