RFID API Documentation  1.0
Reference guide for RFID API
Impinj

Functions

RFID_STATUS WINAPI RFID_ImpinjQTWrite (RFID_HANDLE32 readerHandle, UINT8 *pTagID, UINT32 tagIDLength, LPIMPINJ_QT_WRITE_PARAMS lpQTWriteParams, LPACCESS_FILTER lpAccessFilter, LPANTENNA_INFO lpAntennaInfo, LPVOID rsvd)
 This function writes the QT data to Impinj Monza QT tags. More...
 
RFID_STATUS WINAPI RFID_ImpinjQTRead (RFID_HANDLE32 readerHandle, UINT8 *pTagID, UINT32 tagIDLength, LPIMPINJ_QT_READ_PARMS lpQTReadParams, LPACCESS_FILTER lpAccessFilter, LPANTENNA_INFO lpAntennaInfo, LPTAG_DATA lpTagData, LPVOID rsvd)
 This function read the QT data from Impinj Monza QT tags. More...
 

Detailed Description

Function Documentation

◆ RFID_ImpinjQTWrite()

RFID_STATUS WINAPI RFID_ImpinjQTWrite ( RFID_HANDLE32  readerHandle,
UINT8 pTagID,
UINT32  tagIDLength,
LPIMPINJ_QT_WRITE_PARAMS  lpQTWriteParams,
LPACCESS_FILTER  lpAccessFilter,
LPANTENNA_INFO  lpAntennaInfo,
LPVOID  rsvd 
)

This function writes the QT data to Impinj Monza QT tags.

Parameters
[in]readerHandle
Handle to the RFID device.
[in]pTagID
Pointer to the byte array containing Tag ID
[in]tagIDLength
Length of the byte array containing Tag ID
[in]lpQTWriteParams
Pointer to LPIMPINJ_QT_WRITE_PARAMS structure containing the QT Data
[in]lpAccessFilter
Pointer to Access filter structure specifying the tag-filter criteria for the current Access operation
[in]lpAntennaInfo
Pointer to ANTENNA_INFO structure specifying the Antenna IDs on which the access operation is to be performed
[in]rsvd
Reserved for future use
Returns
If the function succeeds the return value is RFID_API_SUCCESS. If the function fails the return value is one of the following:
  • RFID_API_INVALID_HANDLE Handle provided is invalid
  • RFID_API_PARAM_ERROR Parameter is invalid.
  • RFID_ACCESS_IMPINJ_QT_WRITE_FAILED QT Write Operation Failed
Remarks
See also
See RFID_ImpinjQTRead
Remarks
Example:
// Code Snippets for QT Data Write
RFID_HANDLE32 readerHandle;
CONNECTION_INFO connectionInfo;
connectionInfo.version = RFID_API3_5_1;
if(RFID_API_SUCCESS == RFID_Connect(&readerHandle, TEXT("157.235.207.191"), 0, 0, &connectionInfo))
{
// Perform Inventory to get the tags
RFID_PerformInventory(readerHandle, NULL, ANTENNA_LIST, NULL, NULL);
Sleep(300);
RFID_StopInventory(GOOD_HANDLE);
// Short range is FALSE and MemoryMap is TRUE
// Set 0x00 to set Short_range: FALSE and MemoryMap:FALSE
// Set 0x4000 to set Short_range: FALSE and MemoryMap:TRUE
qtData.QTControlData = 0x4000;
IMPINJ_QT_WRITE_PARAMS impinjQtParams;
impinjQtParams.accessPassword = 0x00;
impinjQtParams.QTPersist = TRUE;
impinjQtParams.qtdata = qtData;
// Apply QT Write in each of the tags read
while (RFID_GetReadTag(readerHandle, pTagData) == RFID_API_SUCCESS)
{
TagIDLength = pTagData->tagIDLength;
memcpy(TagID, pTagData->pTagID, TagIDLength);
rfidStatus = RFID_ImpinjQTWrite(readerHandle, TagID, TagIDLength, &impinjQtParams,NULL,NULL,NULL);
}
}

◆ RFID_ImpinjQTRead()

RFID_STATUS WINAPI RFID_ImpinjQTRead ( RFID_HANDLE32  readerHandle,
UINT8 pTagID,
UINT32  tagIDLength,
LPIMPINJ_QT_READ_PARMS  lpQTReadParams,
LPACCESS_FILTER  lpAccessFilter,
LPANTENNA_INFO  lpAntennaInfo,
LPTAG_DATA  lpTagData,
LPVOID  rsvd 
)

This function read the QT data from Impinj Monza QT tags.

Parameters
[in]readerHandle
Handle to the RFID device.
[in]pTagID
Pointer to the byte array containing Tag ID
[in]tagIDLength
Length of the byte array containing Tag ID
[in]lpQTReadParams
Pointer to LPIMPINJ_QT_READ_PARMS structure containing the QT Data
[in]lpAccessFilter
Pointer to Access filter structure specifying the tag-filter criteria for the current Access operation
[in]lpAntennaInfo
Pointer to ANTENNA_INFO structure specifying the Antenna IDs on which the access operation is to be performed
[in]lpTagData
Pointer to TAG_DATA structure
[in]rsvd
Reserved for future use
Returns
If the function succeeds the return value is RFID_API_SUCCESS. If the function fails the return value is one of the following:
  • RFID_API_INVALID_HANDLE Handle provided is invalid
  • RFID_API_PARAM_ERROR Parameter is invalid.
  • RFID_ACCESS_IMPINJ_QT_READ_FAILED QT Read failed
Remarks
See also
See RFID_ImpinjQTWrite
Remarks
Example:
// Code Snippets for QT Data Write
RFID_HANDLE32 readerHandle;
CONNECTION_INFO connectionInfo;
connectionInfo.version = RFID_API3_5_1;
if(RFID_API_SUCCESS == RFID_Connect(&readerHandle, TEXT("157.235.207.191"), 0, 0, &connectionInfo))
{
// Perform Inventory to get the tags
RFID_PerformInventory(readerHandle, NULL, ANTENNA_LIST, NULL, NULL);
Sleep(300);
RFID_StopInventory(readerHandle);
IMPINJ_QT_READ_PARMS impinjQtReadParams;
impinjQtReadParams.accessPassword = 0x00;
// Apply QT READ in each of the tags read
while (RFID_GetReadTag(readerHandle, pTagData) == RFID_API_SUCCESS)
{
TagIDLength = pTagData->tagIDLength;
memcpy(TagID, pTagData->pTagID, TagIDLength);
rfidStatus = RFID_ImpinjQTRead(readerHandle, TagID, TagIDLength, &impinjQtReadParams,NULL,NULL,lpTagData, NULL);
}
}
RFID_API3_5_1
@ RFID_API3_5_1
RFID API3 - Dll version 5.1.xx.
Definition: rfidapiConstants.h:33
IMPINJ_QT_WRITE_PARAMS::qtdata
IMPINJ_QT_DATA qtdata
qtdata controls private or public memory map LPVOID lpReserved[4]; /**< Reserved for future.
Definition: rfidapiStructs.h:127
CONNECTION_INFO
This struct holds the information related to connection.
Definition: rfidapiStructs.h:52
IMPINJ_QT_READ_PARMS
Contains the Read Parameters for Impinj QT Read.
Definition: rfidapiStructs.h:137
IMPINJ_QT_WRITE_PARAMS
Contains the Write Parameters for Impinj QT Write.
Definition: rfidapiStructs.h:124
CONNECTION_INFO::version
RFID_VERSION version
RFIDAPI version to be used.
Definition: rfidapiStructs.h:53
RFID_HANDLE32
void * RFID_HANDLE32
Definition: rfidapiTypes.h:76
IMPINJ_QT_WRITE_PARAMS::accessPassword
UINT32 accessPassword
Access Password of the Impinj tag.
Definition: rfidapiStructs.h:125
RFID_API_SUCCESS
@ RFID_API_SUCCESS
Definition: rfidapiErrors.h:27
TAG_DATA::pTagID
UINT8 * pTagID
Tag ID, for C1G2 this field refers EPC Data.
Definition: rfidapiStructs.h:925
TRUE
#define TRUE
Definition: rfidapiTypes.h:58
RFID_ImpinjQTRead
RFID_STATUS WINAPI RFID_ImpinjQTRead(RFID_HANDLE32 readerHandle, UINT8 *pTagID, UINT32 tagIDLength, LPIMPINJ_QT_READ_PARMS lpQTReadParams, LPACCESS_FILTER lpAccessFilter, LPANTENNA_INFO lpAntennaInfo, LPTAG_DATA lpTagData, LPVOID rsvd)
This function read the QT data from Impinj Monza QT tags.
Definition: rfidapi.cpp:8567
IMPINJ_QT_READ_PARMS::accessPassword
UINT32 accessPassword
Access Password of the Impinj tag.
Definition: rfidapiStructs.h:138
RFID_Connect
#define RFID_Connect
Definition: rfidapi.h:51
IMPINJ_QT_DATA
Contains Impinj QT Data.
Definition: rfidapiStructs.h:113
RFID_STATUS
RFID_STATUS
Definition: rfidapiErrors.h:26
RFID_PerformInventory
RFID_STATUS WINAPI RFID_PerformInventory(RFID_HANDLE32 readerHandle, LPPOST_FILTER lpPostFilter, LPANTENNA_INFO lpAntennaInfo, LPTRIGGER_INFO lpTriggerInfo, LPVOID rsvd)
This function performs the inventory operation.
Definition: rfidapi.cpp:4156
TAG_DATA::tagIDLength
UINT32 tagIDLength
Tag ID Length (Number of Bytes).
Definition: rfidapiStructs.h:926
IMPINJ_QT_DATA::QTControlData
UINT16 QTControlData
QT Control bits.
Definition: rfidapiStructs.h:114
IMPINJ_QT_WRITE_PARAMS::QTPersist
BOOLEAN QTPersist
Indicates whether the QT control is written to nonvolatile (NVM) or volatile memory.
Definition: rfidapiStructs.h:126
RFID_ImpinjQTWrite
RFID_STATUS WINAPI RFID_ImpinjQTWrite(RFID_HANDLE32 readerHandle, UINT8 *pTagID, UINT32 tagIDLength, LPIMPINJ_QT_WRITE_PARAMS lpQTWriteParams, LPACCESS_FILTER lpAccessFilter, LPANTENNA_INFO lpAntennaInfo, LPVOID rsvd)
This function writes the QT data to Impinj Monza QT tags.
Definition: rfidapi.cpp:8464
RFID_GetReadTag
RFID_STATUS WINAPI RFID_GetReadTag(RFID_HANDLE32 readerHandle, LPTAG_DATA lpTagData)
This function returns a Tag if available.
Definition: rfidapi.cpp:3651
RFID_StopInventory
RFID_STATUS WINAPI RFID_StopInventory(RFID_HANDLE32 readerHandle)
This function stops the inventory operation.
Definition: rfidapi.cpp:4973