BALTECH SDK wrapper functions reference
iso15.h
Go to the documentation of this file.
1 
26 #ifndef __BRP_BALTECH_SDK_CMDS_ISO15_H__
27 #define __BRP_BALTECH_SDK_CMDS_ISO15_H__
28 #include "../typedefs.h"
32 #define BRP_Iso15_ErrNoTag BRP_ERR_STATUS(0x2100, 0x01)
33 
39 #define BRP_Iso15_ErrCollision BRP_ERR_STATUS(0x2100, 0x02)
40 
43 #define BRP_Iso15_ErrHf BRP_ERR_STATUS(0x2100, 0x04)
44 
47 #define BRP_Iso15_ErrLabel BRP_ERR_STATUS(0x2100, 0x05)
48 
51 #define BRP_Iso15_ErrCom BRP_ERR_STATUS(0x2100, 0x10)
52 #ifdef BALTECH_SDK_INTERNAL
53 
56 #define BRP_Iso15_ErrCmd BRP_ERR_STATUS(0x2100, 0x20)
57 #endif // BALTECH_SDK_INTERNAL
58 
61 #define BRP_Iso15_ErrParamNotSupported BRP_ERR_STATUS(0x2100, 0x23)
62 
65 #define BRP_Iso15_ErrMem BRP_ERR_STATUS(0x2100, 0x24)
66 
69 #define BRP_Iso15_ErrLabelBlocksize BRP_ERR_STATUS(0x2100, 0x25)
70 #ifdef BALTECH_SDK_INTERNAL
71 
74 #define BRP_Iso15_ErrHwNotSupported BRP_ERR_STATUS(0x2100, 0x26)
75 #endif // BALTECH_SDK_INTERNAL
76 typedef struct {
79  bool TXMode;
93 #ifdef BRP_SUPPORT_LEGACY_METHODS
94 brp_errcode brp_Iso15_SetParam(brp_protocol protocol, bool _input_ModulationIndex, bool _input_TXMode, bool _input_HighDataRate, bool _input_DualSubcarrier);
95 #else
97 #endif
98 typedef struct {
101  bool* TXMode;
115 #ifdef BRP_SUPPORT_LEGACY_METHODS
116 brp_errcode brp_Iso15_GetParam(brp_protocol protocol, bool* ModulationIndex, bool* TXMode, bool* HighDataRate, bool* DualSubcarrier);
117 #else
119 #endif
120 typedef struct {
122  bool EnAFI;
123  bool NextBlock;
124  bool AutoQuiet;
125  bool EnDSFID;
126  bool En16Slots;
127  unsigned AFI;
128  unsigned* More;
130  size_t* Labels_len;
155 #ifdef BRP_SUPPORT_LEGACY_METHODS
156 brp_errcode brp_Iso15_GetUIDList(brp_protocol protocol, bool _input_EnAFI, bool _input_NextBlock, bool _input_AutoQuiet, bool _input_EnDSFID, bool _input_En16Slots, unsigned _input_AFI, unsigned* More, brp_Iso15_GetUIDList_Labels_Entry** Labels, size_t* Labels_len, brp_mempool *mempool);
157 #else
159 #endif
160 typedef struct {
181 #ifdef BRP_SUPPORT_LEGACY_METHODS
182 brp_errcode brp_Iso15_SetMode(brp_protocol protocol, brp_Iso15_SetMode_Mode _input_Mode, brp_buf _input_UID);
183 #else
185 #endif
186 typedef struct {
195 #ifdef BRP_SUPPORT_LEGACY_METHODS
197 #else
199 #endif
200 #ifdef BALTECH_SDK_INTERNAL
201 typedef struct {
202  brp_protocol protocol;
203  unsigned BlockID;
204  unsigned BlockNum;
205  bool EnBlockSec;
206  unsigned* LabelStat;
207  unsigned* BlockLen;
208  brp_Iso15_ReadBlock_Data_Entry** Data;
209  size_t* Data_len;
210  brp_mempool *mempool;
211 } brp_Iso15_ReadBlock_t;
230 #ifdef BRP_SUPPORT_LEGACY_METHODS
231 brp_errcode brp_Iso15_ReadBlock(brp_protocol protocol, unsigned _input_BlockID, unsigned _input_BlockNum, bool _input_EnBlockSec, unsigned* LabelStat, unsigned* BlockLen, brp_Iso15_ReadBlock_Data_Entry** Data, size_t* Data_len, brp_mempool *mempool);
232 #else
233 brp_errcode brp_Iso15_ReadBlock(brp_Iso15_ReadBlock_t params);
234 #endif
235 typedef struct {
236  brp_protocol protocol;
237  unsigned BlockID;
238  unsigned BlockNum;
239  unsigned BlockLen;
240  bool OptionFlag;
241  brp_buf* Data;
242  size_t Data_len;
243  unsigned* LabelStat;
244 } brp_Iso15_WriteBlock_t;
262 #ifdef BRP_SUPPORT_LEGACY_METHODS
263 brp_errcode brp_Iso15_WriteBlock(brp_protocol protocol, unsigned _input_BlockID, unsigned _input_BlockNum, unsigned _input_BlockLen, bool _input_OptionFlag, brp_buf* _input_Data, size_t _input_Data_len, unsigned* LabelStat);
264 #else
265 brp_errcode brp_Iso15_WriteBlock(brp_Iso15_WriteBlock_t params);
266 #endif
267 #endif // BALTECH_SDK_INTERNAL
268 typedef struct {
270  unsigned BlockID;
272  unsigned* LabelStat;
285 #ifdef BRP_SUPPORT_LEGACY_METHODS
286 brp_errcode brp_Iso15_LockBlock(brp_protocol protocol, unsigned _input_BlockID, bool _input_OptionFlag, unsigned* LabelStat);
287 #else
289 #endif
290 typedef struct {
292  unsigned* LabelStat;
303 #ifdef BRP_SUPPORT_LEGACY_METHODS
304 brp_errcode brp_Iso15_ResetToReady(brp_protocol protocol, unsigned* LabelStat);
305 #else
307 #endif
308 typedef struct {
310  unsigned AFI;
312  unsigned* LabelStat;
325 #ifdef BRP_SUPPORT_LEGACY_METHODS
326 brp_errcode brp_Iso15_WriteAFI(brp_protocol protocol, unsigned _input_AFI, bool _input_OptionFlag, unsigned* LabelStat);
327 #else
329 #endif
330 typedef struct {
333  unsigned* LabelStat;
345 #ifdef BRP_SUPPORT_LEGACY_METHODS
346 brp_errcode brp_Iso15_LockAFI(brp_protocol protocol, bool _input_OptionFlag, unsigned* LabelStat);
347 #else
349 #endif
350 typedef struct {
352  unsigned DSFID;
354  unsigned* LabelStat;
367 #ifdef BRP_SUPPORT_LEGACY_METHODS
368 brp_errcode brp_Iso15_WriteDSFID(brp_protocol protocol, unsigned _input_DSFID, bool _input_OptionFlag, unsigned* LabelStat);
369 #else
371 #endif
372 typedef struct {
375  unsigned* LabelStat;
387 #ifdef BRP_SUPPORT_LEGACY_METHODS
388 brp_errcode brp_Iso15_LockDSFID(brp_protocol protocol, bool _input_OptionFlag, unsigned* LabelStat);
389 #else
391 #endif
392 typedef struct {
394  unsigned* LabelStat;
395  bool* EnICRef;
396  bool* EnMemSize;
397  bool* EnAFI;
398  bool* EnDSFID;
400  unsigned* DSFID;
401  unsigned* AFI;
402  unsigned* BlockNum;
403  unsigned* BlockSize;
404  unsigned* ICRef;
427 #ifdef BRP_SUPPORT_LEGACY_METHODS
428 brp_errcode brp_Iso15_GetSystemInformation(brp_protocol protocol, unsigned* LabelStat, bool* EnICRef, bool* EnMemSize, bool* EnAFI, bool* EnDSFID, brp_buf* SNR, unsigned* DSFID, unsigned* AFI, unsigned* BlockNum, unsigned* BlockSize, unsigned* ICRef, brp_mempool *mempool);
429 #else
431 #endif
432 typedef struct {
434  unsigned BlockID;
435  unsigned BlockNum;
436  unsigned* LabelStat;
437  unsigned** BlockStat;
438  size_t* BlockStat_len;
455 #ifdef BRP_SUPPORT_LEGACY_METHODS
456 brp_errcode brp_Iso15_GetSecurityStatus(brp_protocol protocol, unsigned _input_BlockID, unsigned _input_BlockNum, unsigned* LabelStat, unsigned** BlockStat, size_t* BlockStat_len, brp_mempool *mempool);
457 #else
459 #endif
460 typedef struct {
462  unsigned Cmd;
463  unsigned Opt;
464  unsigned MFC;
465  unsigned TO;
468  unsigned* LabelStat;
491 #ifdef BRP_SUPPORT_LEGACY_METHODS
492 brp_errcode brp_Iso15_CustomCommand(brp_protocol protocol, unsigned _input_Cmd, unsigned _input_Opt, unsigned _input_MFC, unsigned _input_TO, brp_buf _input_RequestData, size_t _input_RequestData_len, unsigned* LabelStat, brp_buf* ResponseData, size_t* ResponseData_len, brp_mempool *mempool);
493 #else
495 #endif
496 typedef struct {
498  unsigned BlockID;
500  unsigned* LabelStat;
502  size_t* Payload_len;
519 #ifdef BRP_SUPPORT_LEGACY_METHODS
520 brp_errcode brp_Iso15_ReadSingleBlock(brp_protocol protocol, unsigned _input_BlockID, bool _input_EnBlockSec, unsigned* LabelStat, brp_buf* Payload, size_t* Payload_len, brp_mempool *mempool);
521 #else
523 #endif
524 typedef struct {
526  unsigned BlockID;
527  unsigned BlockLen;
531  unsigned* LabelStat;
547 #ifdef BRP_SUPPORT_LEGACY_METHODS
548 brp_errcode brp_Iso15_WriteSingleBlock(brp_protocol protocol, unsigned _input_BlockID, unsigned _input_BlockLen, bool _input_OptionFlag, brp_buf _input_SingleBlockData, size_t _input_SingleBlockData_len, unsigned* LabelStat);
549 #else
551 #endif
552 #ifdef BALTECH_SDK_INTERNAL
553 typedef struct {
554  brp_protocol protocol;
555  bool EnRxWait;
556  bool EnCRCRX;
557  bool EnCRCTX;
558  unsigned Len;
559  unsigned Timeout;
560  brp_buf Data;
561  unsigned RxWait;
562  brp_buf* LabelData;
563  size_t* LabelData_len;
564  brp_mempool *mempool;
565 } brp_Iso15_TransparentCmdLegacy_t;
586 #ifdef BRP_SUPPORT_LEGACY_METHODS
587 brp_errcode brp_Iso15_TransparentCmdLegacy(brp_protocol protocol, bool _input_EnRxWait, bool _input_EnCRCRX, bool _input_EnCRCTX, unsigned _input_Len, unsigned _input_Timeout, brp_buf _input_Data, unsigned _input_RxWait, brp_buf* LabelData, size_t* LabelData_len, brp_mempool *mempool);
588 #else
589 brp_errcode brp_Iso15_TransparentCmdLegacy(brp_Iso15_TransparentCmdLegacy_t params);
590 #endif
591 #endif // BALTECH_SDK_INTERNAL
592 typedef struct {
594  unsigned FirstBlockId;
598  unsigned* LabelStat;
611 #ifdef BRP_SUPPORT_LEGACY_METHODS
612 brp_errcode brp_Iso15_WriteMultipleBlocks(brp_protocol protocol, unsigned _input_FirstBlockId, brp_Iso15_WriteMultipleBlocks_WriteBlocks_Entry* _input_WriteBlocks, size_t _input_WriteBlocks_len, bool _input_OptionFlag, unsigned* LabelStat);
613 #else
615 #endif
616 typedef struct {
618  unsigned FirstBlockId;
619  unsigned BlockCount;
621  unsigned* LabelStat;
623  size_t* RecvBlocks_len;
624  unsigned** BlocksSecData;
645 #ifdef BRP_SUPPORT_LEGACY_METHODS
646 brp_errcode brp_Iso15_ReadMultipleBlocks(brp_protocol protocol, unsigned _input_FirstBlockId, unsigned _input_BlockCount, bool _input_EnBlockSec, unsigned* LabelStat, brp_Iso15_ReadMultipleBlocks_RecvBlocks_Entry** RecvBlocks, size_t* RecvBlocks_len, unsigned** BlocksSecData, size_t* BlocksSecData_len, brp_mempool *mempool);
647 #else
649 #endif
650 typedef struct {
653  size_t SendData_len;
654  unsigned Timeout;
655  bool EnCrcRx;
656  bool EnCrcTx;
657  unsigned RxWait;
659  size_t* RecvData_len;
679 #ifdef BRP_SUPPORT_LEGACY_METHODS
680 brp_errcode brp_Iso15_TransparentCmd(brp_protocol protocol, brp_buf _input_SendData, size_t _input_SendData_len, unsigned _input_Timeout, bool _input_EnCrcRx, bool _input_EnCrcTx, unsigned _input_RxWait, brp_buf* RecvData, size_t* RecvData_len, brp_mempool *mempool);
681 #else
683 #endif
684 #endif
685 
brp_errcode brp_Iso15_WriteSingleBlock(brp_Iso15_WriteSingleBlock_t params)
This command writes a single block to a label.
brp_errcode brp_Iso15_WriteMultipleBlocks(brp_Iso15_WriteMultipleBlocks_t params)
Sends the "WriteMultipleBlocks" to the card to store the data passed in WriteBlocks to the data block...
bool ModulationIndex
Definition: iso15.h:78
brp_protocol protocol
Definition: iso15.h:525
unsigned BlockID
Definition: iso15.h:270
brp_Iso15_GetUIDList_Labels_Entry ** Labels
Definition: iso15.h:129
brp_protocol protocol
Definition: iso15.h:121
brp_Iso15_WriteMultipleBlocks_WriteBlocks_Entry * WriteBlocks
Definition: iso15.h:595
brp_Iso15_ReadMultipleBlocks_RecvBlocks_Entry ** RecvBlocks
Definition: iso15.h:622
brp_errcode brp_Iso15_GetSystemInformation(brp_Iso15_GetSystemInformation_t params)
This command gets the system information of a VICC.
brp_protocol protocol
Definition: iso15.h:497
brp_protocol protocol
Definition: iso15.h:99
brp_buf * ResponseData
Definition: iso15.h:469
brp_protocol protocol
Definition: iso15.h:351
unsigned int brp_errcode
This type is used library-wide for passing error codes in the return value of functions.
Definition: errorcodes.h:23
unsigned * LabelStat
Definition: iso15.h:354
bool * DualSubcarrier
Definition: iso15.h:103
brp_protocol protocol
Definition: iso15.h:461
brp_mempool * mempool
Definition: iso15.h:131
struct brp_protocol_t * brp_protocol
This is a generic handle of a protocol.
Definition: protocol.h:34
brp_errcode brp_Iso15_GetParam(brp_Iso15_GetParam_t params)
This command reads the configuration of the reader chip.
brp_Iso15_SetMode_Mode
Communication mode for label addressing.
Definition: typedefs.h:5047
brp_protocol protocol
Definition: iso15.h:77
brp_errcode brp_Iso15_TransparentCmd(brp_Iso15_TransparentCmd_t params)
This command sends a data stream to a label and returns the communication status and the received lab...
brp_errcode brp_Iso15_GetSecurityStatus(brp_Iso15_GetSecurityStatus_t params)
This command retrieves the block security status of a label.
struct brp_mempool_object_t * brp_mempool
mempool handle.
Definition: mempool.h:29
brp_errcode brp_Iso15_LockBlock(brp_Iso15_LockBlock_t params)
This command permanently locks the block with ID BlockID.
brp_mempool * mempool
Definition: iso15.h:660
bool * HighDataRate
Definition: iso15.h:102
brp_errcode brp_Iso15_LockAFI(brp_Iso15_LockAFI_t params)
This command locks the AFI value permanently into the reader's memory.
bool DualSubcarrier
Definition: iso15.h:81
unsigned * LabelStat
Definition: iso15.h:468
brp_mempool * mempool
Definition: iso15.h:471
unsigned * LabelStat
Definition: iso15.h:333
brp_errcode brp_Iso15_CustomCommand(brp_Iso15_CustomCommand_t params)
This command executes any ISO 15693 manufacturer proprietary commands, so-called custom-commands.
Definition: typedefs.h:5034
brp_errcode brp_Iso15_LockDSFID(brp_Iso15_LockDSFID_t params)
This command locks the DSFID value permanently into the reader's memory.
brp_protocol protocol
Definition: iso15.h:187
brp_protocol protocol
Definition: iso15.h:269
brp_protocol protocol
Definition: iso15.h:373
unsigned * More
Definition: iso15.h:128
brp_protocol protocol
Definition: iso15.h:309
brp_protocol protocol
Definition: iso15.h:651
unsigned * LabelStat
Definition: iso15.h:312
brp_protocol protocol
Definition: iso15.h:291
Definition: typedefs.h:5092
brp_errcode brp_Iso15_GetUIDList(brp_Iso15_GetUIDList_t params)
This command scans for ISO 15693 labels which are in the field of the readers antenna and which are n...
size_t * Labels_len
Definition: iso15.h:130
brp_errcode brp_Iso15_StayQuiet(brp_Iso15_StayQuiet_t params)
This command puts a label into the quiet-state.
brp_protocol protocol
Definition: iso15.h:331
Definition: typedefs.h:5105
unsigned AFI
Definition: iso15.h:310
brp_errcode brp_Iso15_ReadMultipleBlocks(brp_Iso15_ReadMultipleBlocks_t params)
This command reads one or multiple blocks from a label.
brp_errcode brp_Iso15_ReadSingleBlock(brp_Iso15_ReadSingleBlock_t params)
This command reads a single block from a label.
unsigned * LabelStat
Definition: iso15.h:292
brp_mempool * mempool
Definition: iso15.h:503
brp_mempool * mempool
Definition: iso15.h:439
unsigned char * brp_buf
represents a pointer to a protocol data buffer.
Definition: common.h:61
brp_protocol protocol
Definition: iso15.h:161
brp_errcode brp_Iso15_WriteAFI(brp_Iso15_WriteAFI_t params)
This commands writes the AFI value into the label's memory.
brp_errcode brp_Iso15_SetParam(brp_Iso15_SetParam_t params)
This command configures the reader chip.
brp_errcode brp_Iso15_SetMode(brp_Iso15_SetMode_t params)
This command configures the mode to address a label.
unsigned * LabelStat
Definition: iso15.h:375
bool * ModulationIndex
Definition: iso15.h:100
unsigned * LabelStat
Definition: iso15.h:272
brp_errcode brp_Iso15_WriteDSFID(brp_Iso15_WriteDSFID_t params)
This commands writes the DSFID value into the label's memory.
brp_errcode brp_Iso15_ResetToReady(brp_Iso15_ResetToReady_t params)
This command puts a label into ready-state , according to the VICC state transition diagram from the ...
brp_Iso15_SetMode_Mode Mode
Definition: iso15.h:162
size_t * ResponseData_len
Definition: iso15.h:470