BALTECH SDK wrapper functions reference
vhl.h File Reference

VHL stands for Very High Level card access. More...

#include "../typedefs.h"

Go to the source code of this file.

Data Structures

struct  brp_VHL_Select_t
 
struct  brp_VHL_GetSnr_t
 
struct  brp_VHL_Read_t
 
struct  brp_VHL_Write_t
 
struct  brp_VHL_IsSelected_t
 
struct  brp_VHL_ExchangeAPDU_t
 
struct  brp_VHL_Setup_t
 
struct  brp_VHL_CheckReconfigErr_t
 
struct  brp_VHL_ExchangeLongAPDU_t
 
struct  brp_VHL_GetFileInfo_t
 
struct  brp_VHL_GetATR_t
 
struct  brp_VHL_ResolveFilename_t
 
struct  brp_VHL_GetCardType_t
 

Macros

#define BRP_VHL_ErrNoTag   BRP_ERR_STATUS(0x0100, 0x01)
 This status code occurs in the following cases: More...
 
#define BRP_VHL_ErrCardNotSelected   BRP_ERR_STATUS(0x0100, 0x02)
 The command can't be run because no card is selected. More...
 
#define BRP_VHL_ErrHf   BRP_ERR_STATUS(0x0100, 0x03)
 Communication problems with the card occurred. More...
 
#define BRP_VHL_ErrConfig   BRP_ERR_STATUS(0x0100, 0x04)
 The VHL file structure in the reader configuration is invalid or the specified VHL file isn't available. More...
 
#define BRP_VHL_ErrAuth   BRP_ERR_STATUS(0x0100, 0x05)
 An authentication error occurred. More...
 
#define BRP_VHL_ErrRead   BRP_ERR_STATUS(0x0100, 0x06)
 The communication sequence was OK, but reading failed. More...
 
#define BRP_VHL_ErrWrite   BRP_ERR_STATUS(0x0100, 0x07)
 The communication sequence was OK, but writing failed. More...
 
#define BRP_VHL_ConfcardRead   BRP_ERR_STATUS(0x0100, 0x08)
 A BALTECH ConfigCard has been detected successfully and will be read after this command. More...
 
#define BRP_VHL_ErrHw   BRP_ERR_STATUS(0x0100, 0x0C)
 An error occurred while communicating with the reader chip/SAM. More...
 
#define BRP_VHL_ErrApdu   BRP_ERR_STATUS(0x0100, 0x0D)
 Card communication error: The command has been aborted, or the response hasn't been read completely. More...
 

Functions

brp_errcode brp_VHL_Select (brp_VHL_Select_t params)
 This command selects a card or tag in the antenna field for further operations. More...
 
brp_errcode brp_VHL_GetSnr (brp_VHL_GetSnr_t params)
 This command returns the serial number (UID) of the currently selected card. More...
 
brp_errcode brp_VHL_Read (brp_VHL_Read_t params)
 This command reads data from a card based on a VHL file. More...
 
brp_errcode brp_VHL_Write (brp_VHL_Write_t params)
 This command writes data to a card based on a VHL file. More...
 
brp_errcode brp_VHL_IsSelected (brp_VHL_IsSelected_t params)
 This command checks if the card/label selected by the last execution of the brp_VHL_Select() command is still in the HF field of the antenna. More...
 
brp_errcode brp_VHL_ExchangeAPDU (brp_VHL_ExchangeAPDU_t params)
 This command sends APDUs to the currently selected card. More...
 
brp_errcode brp_VHL_Setup (brp_VHL_Setup_t params)
 This command creates a VHL file dynamically and transfers it to the reader's RAM. More...
 
brp_errcode brp_VHL_CheckReconfigErr (brp_VHL_CheckReconfigErr_t params)
 This command returns the status of the last reconfiguration with a ConfigCard using the brp_VHL_Select() command. More...
 
brp_errcode brp_VHL_ExchangeLongAPDU (brp_VHL_ExchangeLongAPDU_t params)
 This command sends basic Inter-Industry commands to the currently selected card in accordance with the ISO/IEC 7816-4 standard. More...
 
brp_errcode brp_VHL_GetFileInfo (brp_VHL_GetFileInfo_t params)
 This command returns the available size of the VHL-file whose ID is specified by the ID parameter. More...
 
brp_errcode brp_VHL_GetATR (brp_VHL_GetATR_t params)
 This command returns the Answer to Reset (ATR) of the currently selected card as defined in the PC/SC specification, version 2. More...
 
brp_errcode brp_VHL_ResolveFilename (brp_VHL_ResolveFilename_t params)
 This command returns the ID of a VHL file based on its filename. More...
 
brp_errcode brp_VHL_GetCardType (brp_VHL_GetCardType_t params)
 This command returns the card type of the currently selected card. More...
 

Detailed Description

VHL stands for Very High Level card access.

With this command group, you can handle nearly all aspects of the card technology used in your project while avoiding complex low-level command sequences.

You cannot mix VHL and low-level commands.

For more details on how to implement VHL, please see our VHL workflow overview.

Definition in file vhl.h.