BRP example frames

Here are a few examples to show you how BRP command and response frames may look.

Sys.GetInfo

Command

In this example, we run Sys.GetInfocall_made to retrieve the reader's firmware version. We'll execute it without a checksum algorithm and in standard mode.

Diagram: Example command frame for the BRP Sys.GetInfo command

So, the complete command frame is:

0C 00 04 00 00

Response

The reader's response may look like this:

0C 00 04 29 00 31 31 30 30 20 49 44 45 20 5A 20 20 20 20 20 31 2E 31 
34 2E 30 30 20 31 32 2F 31 38 2F 31 39 20 34 33 38 39 33 31 32 36 00

To understand it, we'll break it down into the parts of the response frame.

Diagram: Example response frame for the BRP Sys.GetInfo command

In this example, the command was executed successfully, and the reader returns its firmware version. The Sys.GetInfo reference pagecall_made tells you that the payload is ASCII-encoded text.

Sys.GetInfo with checksum

Command

Now, we'll run the same command, but with a checksum created using CRC-16. Differences are highlighted in blue.

Diagram: Example command frame for the BRP Sys.GetInfo command with a CRC-16 checksum

So, the new command frame is:

2C 00 04 00 00 4E 53

Response

Accordingly, the reader's response looks slightly different, too:

2C 00 04 29 00 31 31 30 30 20 49 44 45 20 5A 20 20 20 20 20 31 2E 31 
34 2E 30 30 20 31 32 2F 31 38 2F 31 39 20 34 33 38 39 33 31 32 36 00 E8 84

Here's what it looks like when broken down.

Diagram: Example response frame for the BRP Sys.GetInfo command with a CRC-16 checksum

VHL.Select

Command

In this example, we run VHL.Selectcall_made to select a card in the reader's antenna field for further operations. We want the reader to scan for all card families, but ignore already processed cards as well as BALTECH ConfigCards.
We'll execute the command without a checksum algorithm and in standard mode.

Diagram: Example command frame for the BRP VHL.Select command

So, the complete command frame is:

0C 01 00 04 00 FF FF 00 00

Response

The reader's response may look like this:

8C 01 00 01 00 01

To understand it, we'll break it down into the parts of the response frame.

Diagram: Example response frame for the BRP VHL.Select command

This response tells you that the command wasn't executed successfully as no card was detected in the antenna field. In the list of VHL status codescall_made, you can see what the status code returned by the reader means.

VHL.Select in continuous mode

Command

Now, we'll run the same command, but in continuous mode instead of standard mode. Differences are highlighted in blue.

Diagram: Example command frame for the BRP VHL.Select command run in continuous mode

So, the new command frame is:

0E 01 00 04 00 FF FF 00 00

Responses

In continuous mode, the reader may send the following status and response frames.

CmdWork

If execution isn't successful within 50 ms, the reader sends the following status frame.

8C 01 00 01 00 40

Here's what it looks like when broken down.

Diagram: Example work status frame for the BRP VHL.Select command run in continuous mode

This indicates that the reader is still trying to execute the command. This status code is one of the general BRP status codes call_made.

Abortion

The host can abort the retry mechanism, e.g. by sending an invalid frame. In this case, the reader's response frame may look like this:

8E 01 00 01 00 82

Here's what it looks like when broken down.

Diagram: Example status frame after a BRP VHL.Select command run in continuous mode has been aborted

This response tells you that the reader has received an invalid command frame and thus stops trying to execute the command. This status code is one of the general BRP status codes call_made.

Success

When the execution was successful, the reader sends a response frame such as the following:

0E 01 00 01 00 10

Here's what it looks like when broken down.

Diagram: Example response frame after a BRP VHL.Select command run in continuous mode was successful

This indicates that the reader has identified a MIFARE Classic card in its antenna field. The VHL.Select reference page call_made helps you find out which response represents which card type.