NXP Reader Library  v17.1.0.2535

Describes the Custom commands of ISO15693 products. More...

Collaboration diagram for Commands_Custom:

Modules

 Defines
 Description of options to be used for Custom command sets.
 
 CommandCodes
 

Functions

phStatus_t phpalSli15693_InventoryRead (void *pDataParams, uint8_t bFlags, uint8_t bAfi, uint8_t *pMask, uint8_t bMaskBitLen, uint8_t bBlockNo, uint16_t wNoOfBlocks, uint8_t *pUid, uint8_t *pUidLen, uint8_t *pData, uint16_t *pDataLen)
 Perform ICODE SLI InventoryRead command. More...
 
phStatus_t phpalSli15693_InventoryReadExtended (void *pDataParams, uint8_t bFlags, uint8_t bAfi, uint8_t *pMask, uint8_t bMaskBitLen, uint8_t bExtendedOptions, uint8_t *pCID, uint8_t bBlockNo, uint16_t wNoOfBlocks, uint8_t *pCidOut, uint8_t *pUid, uint8_t *pUidLen, uint8_t *pData, uint16_t *pDataLen)
 Perform ICODE SLI InventoryRead command in extended mode. More...
 
phStatus_t phpalSli15693_FastInventoryRead (void *pDataParams, uint8_t bFlags, uint8_t bAfi, uint8_t *pMask, uint8_t bMaskBitLen, uint8_t bBlockNo, uint16_t wNoOfBlocks, uint8_t *pUid, uint8_t *pUidLen, uint8_t *pData, uint16_t *pDataLen)
 Perform ISO15693 FastInventoryRead command. More...
 
phStatus_t phpalSli15693_FastInventoryReadExtended (void *pDataParams, uint8_t bFlags, uint8_t bAfi, uint8_t *pMask, uint8_t bMaskBitLen, uint8_t bExtendedOptions, uint8_t *pCID, uint8_t bBlockNo, uint16_t wNoOfBlocks, uint8_t *pCIDOut, uint8_t *pUid, uint8_t *pUidLen, uint8_t *pData, uint16_t *pDataLen)
 Perform ICODE SLI FastInventoryRead command in extended mode. More...
 
phStatus_t phpalSli15693_InventoryPageRead (void *pDataParams, uint8_t bFlags, uint8_t bAfi, uint8_t *pMask, uint8_t bMaskBitLen, uint8_t bPageNo, uint16_t wNoOfPages, uint8_t *pUid, uint8_t *pUidLen, uint8_t *pData, uint16_t *pDataLen)
 Perform ISO15693 InventoryPageRead command. More...
 
phStatus_t phpalSli15693_FastInventoryPageRead (void *pDataParams, uint8_t bFlags, uint8_t bAfi, uint8_t *pMask, uint8_t bMaskBitLen, uint8_t bPageNo, uint16_t wNoOfPages, uint8_t *pUid, uint8_t *pUidLen, uint8_t *pData, uint16_t *pDataLen)
 Perform ISO15693 FastInventoryPageRead command. More...
 
phStatus_t phpalSli15693_StayQuietPersistent (void *pDataParams)
 Perform ICODE SLI Stay quite persistent command. More...
 

Detailed Description

Describes the Custom commands of ISO15693 products.

Function Documentation

◆ phpalSli15693_InventoryRead()

phStatus_t phpalSli15693_InventoryRead ( void *  pDataParams,
uint8_t  bFlags,
uint8_t  bAfi,
uint8_t pMask,
uint8_t  bMaskBitLen,
uint8_t  bBlockNo,
uint16_t  wNoOfBlocks,
uint8_t pUid,
uint8_t pUidLen,
uint8_t pData,
uint16_t pDataLen 
)

Perform ICODE SLI InventoryRead command.

  • When receiving the INVENTORY READ request, the ICODE SLI tag performs the same as the anti-collision sequence, with the difference that instead of the UID and the DSFID, the requested memory content is re-transmitted from the ICODE SLI. If an error is detected, the ICODE SLI tag remains silent.
  • If the Option Flag is not set, n blocks of data are re-transmitted.
  • If the Option Flag is set, n blocks of data and the part of the UID which is not part of the mask are re-transmitted. Additionally the slot number in case of 16 slots, are returned. Instead of padding with zeros up to the next byte boundary, the corresponding bits of the UID are returned.
  • The number of bits of the re-transmitted UID can be calculated as follows:
    • 16 slots: 60 bits (bit 64 to bit 4) - mask length rounded up to the next byte boundary.
    • 1 slot: 64 bits - mask length rounded up to the next byte boundary.
Returns
Status code
Return values
PH_ERR_SUCCESSOperation successful.
PH_ERR_INVALID_DATA_PARAMSIf DataParams is null.
PH_ERR_INVALID_PARAMETERIf the buffers are null.
PH_ERR_PROTOCOL_ERRORInvalid response received.
XXXX
  • Depending on status codes return by PICC.
  • Other Depending on implementation and underlying component.
Parameters
[in]pDataParams[In] Pointer to this layers parameter structure.
[in]bFlags[In] Request flags byte. Refer below set of flags
[in]bAfi[In] Application Family Identifier.
[in]pMask[In] UID mask, holding known UID bits.
[in]bMaskBitLen[In] Number of UID bits within pMask.
[in]bBlockNo[In] Block number of first block to read.
[in]wNoOfBlocks[In] Number of blocks to read
[out]pUid[Out] Received UID
[out]pUidLen[Out] Length of bytes available in pUid buffer.
[out]pData[Out] Received data.
[out]pDataLen[Out] Length of bytes available in pData buffer.

◆ phpalSli15693_InventoryReadExtended()

phStatus_t phpalSli15693_InventoryReadExtended ( void *  pDataParams,
uint8_t  bFlags,
uint8_t  bAfi,
uint8_t pMask,
uint8_t  bMaskBitLen,
uint8_t  bExtendedOptions,
uint8_t pCID,
uint8_t  bBlockNo,
uint16_t  wNoOfBlocks,
uint8_t pCidOut,
uint8_t pUid,
uint8_t pUidLen,
uint8_t pData,
uint16_t pDataLen 
)

Perform ICODE SLI InventoryRead command in extended mode.

  • When receiving the INVENTORY READ request, the ICODE SLI tag performs the same as the anti-collision sequence, with the difference that instead of the UID and the DSFID, the requested memory content is re-transmitted from the ICODE SLI. If an error is detected, the ICODE SLI tag remains silent.
  • If the Option Flag is not set, n blocks of data are re-transmitted.
  • If the Option Flag is set, n blocks of data and the part of the UID which is not part of the mask are re-transmitted. Additionally the slot number in case of 16 slots, are returned. Instead of padding with zeros up to the next byte boundary, the corresponding bits of the UID are returned.
  • The number of bits of the re-transmitted UID can be calculated as follows:
    • 16 slots: 60 bits (bit 64 to bit 4), mask length rounded up to the next byte boundary.
    • 1 slot: 64 bits, mask length rounded up to the next byte boundary.
  • Depending on different values of Extended Options the API behaves differently.
    Bit Value Description
    b1 0 Label responds independent from the EAS status.
    1 Only labels will respond which have the EAS enabled.
    **Corresponding definition is EAS**
    b2 0 UID will be transmitted as in regular mode.
    1 Complete UID will be transmitted.
    **Corresponding definition is UID**
    b3 0 No CID is transmitted in the command.
    1 16 bits CID will be transmitted in the command and only matching tags should reply.
    **Corresponding definition is CID In Command**
    b4 0 CID will not be transmitted in the response from the tag.
    1 CID will be transmitted in the response from the tag.
    **Corresponding definition is CID In Response**
    b5 0 Tag will add the user memory block in the response as requested.
    1 No user memory data is requested from the tag.
    **Corresponding definition is Skip Data**
    b6 & b7 00 Remain in current state.
    01 Go to persistent quiet state after response.
    **Corresponding definition is Persistent Quiet**
    10 Go to quiet state after response.
    **Corresponding definition is Quiet**
    11 Only tags in the PERSISTENT QUIET state will respond to the command.
    b8 0 RFU
Returns
Status code
Return values
PH_ERR_SUCCESSOperation successful.
PH_ERR_INVALID_DATA_PARAMSIf DataParams is null.
PH_ERR_INVALID_PARAMETERIf the buffers are null.
PH_ERR_PROTOCOL_ERRORInvalid response received.
XXXX
  • Depending on status codes return by PICC.
  • Other Depending on implementation and underlying component.
Parameters
[in]pDataParams[In] Pointer to this layers parameter structure.
[in]bFlags[In] Request flags byte. Refer below set of flags
[in]bAfi[In] Application Family Identifier.
[in]pMask[In] UID mask, holding known UID bits.
[in]bMaskBitLen[In] Number of UID bits within pMask.
[in]bExtendedOptions[In] Refer Extended Inventory Flags for supported values.
[in]pCID[In] Two byte CID -> if marked in extended options
[in]bBlockNo[In] Block Number from where start reading
[in]wNoOfBlocks[In] Number of blocks to read
[out]pCidOut[Out] Received CustomId
[out]pUid[Out] Received UID.
[out]pUidLen[Out] Length of bytes available in pUid buffer.
[out]pData[Out] Received Data.
[out]pDataLen[Out] Length of bytes available in pData buffer.

◆ phpalSli15693_FastInventoryRead()

phStatus_t phpalSli15693_FastInventoryRead ( void *  pDataParams,
uint8_t  bFlags,
uint8_t  bAfi,
uint8_t pMask,
uint8_t  bMaskBitLen,
uint8_t  bBlockNo,
uint16_t  wNoOfBlocks,
uint8_t pUid,
uint8_t pUidLen,
uint8_t pData,
uint16_t pDataLen 
)

Perform ISO15693 FastInventoryRead command.

When receiving the Fast Inventory Read command the ICODE SLI tag behaves the same as the Inventory Read command with the exceptions that the data rate in the direction ICODE SLI tag to the reader is twice than defined in ISO/IEC 15693-3 depending on the DataRate flag 53 kbit (high data rate) or 13 kbit (low data rate).

Returns
Status code
Return values
PH_ERR_SUCCESSOperation successful.
PH_ERR_INVALID_DATA_PARAMSIf DataParams is null.
PH_ERR_INVALID_PARAMETERIf the buffers are null.
PH_ERR_PROTOCOL_ERRORInvalid response received.
XXXX
  • Depending on status codes return by PICC.
  • Other Depending on implementation and underlying component.
Parameters
[in]pDataParams[In] Pointer to this layers parameter structure.
[in]bFlags[In] Request flags byte. Refer below set of flags
[in]bAfi[In] Application Family Identifier.
[in]pMask[In] UID mask, holding known UID bits.
[in]bMaskBitLen[In] Number of UID bits within pMask.
[in]bBlockNo[In] Block number of first block to read.
[in]wNoOfBlocks[In] Number of blocks to read
[out]pUid[Out] Received UID
[out]pUidLen[Out] Length of bytes available in pUid buffer.
[out]pData[Out] Received data.
[out]pDataLen[Out] Length of bytes available in pData buffer.

◆ phpalSli15693_FastInventoryReadExtended()

phStatus_t phpalSli15693_FastInventoryReadExtended ( void *  pDataParams,
uint8_t  bFlags,
uint8_t  bAfi,
uint8_t pMask,
uint8_t  bMaskBitLen,
uint8_t  bExtendedOptions,
uint8_t pCID,
uint8_t  bBlockNo,
uint16_t  wNoOfBlocks,
uint8_t pCIDOut,
uint8_t pUid,
uint8_t pUidLen,
uint8_t pData,
uint16_t pDataLen 
)

Perform ICODE SLI FastInventoryRead command in extended mode.

  • When receiving the Fast Inventory Read command the ICODE SLI tag behaves the same as the Inventory Read Extended command with the exceptions that the data rate in the direction ICODE SLI tag to the reader is twice than defined in ISO/IEC 15693-3 depending on the DataRate flag 53 kbit (high data rate) or 13 kbit (low data rate).
  • If the Option Flag is not set, n blocks of data are re-transmitted.
  • If the Option Flag is set, n blocks of data and the part of the UID which is not part of the mask are re-transmitted. Additionally the slot number in case of 16 slots, are returned. Instead of padding with zeros up to the next byte boundary, the corresponding bits of the UID are returned.
  • The number of bits of the re-transmitted UID can be calculated as follows:
    • 16 slots: 60 bits (bit 64 to bit 4) - mask length rounded up to the next byte boundary.
    • 1 slot: 64 bits - mask length rounded up to the next byte boundary.
  • Depending on different values of Extended Options the API behaves differently.
    Bit Value Description
    b1 0 Label responds independent from the EAS status.
    1 Only labels will respond which have the EAS enabled.
    **Corresponding definition is EAS**
    b2 0 UID will be transmitted as in regular mode.
    1 Complete UID will be transmitted.
    **Corresponding definition is UID**
    b3 0 No CID is transmitted in the command.
    1 16 bits CID will be transmitted in the command and only matching tags should reply.
    **Corresponding definition is CID In Command**
    b4 0 CID will not be transmitted in the response from the tag.
    1 CID will be transmitted in the response from the tag.
    **Corresponding definition is CID In Response**
    b5 0 Tag will add the user memory block in the response as requested.
    1 No user memory data is requested from the tag.
    **Corresponding definition is Skip Data**
    b6 & b7 00 Remain in current state.
    01 Go to persistent quiet state after response.
    **Corresponding definition is Persistent Quiet**
    10 Go to quiet state after response.
    **Corresponding definition is Quiet**
    11 Only tags in the PERSISTENT QUIET state will respond to the command.
    b8 0 RFU
Returns
Status code
Return values
PH_ERR_SUCCESSOperation successful.
PH_ERR_INVALID_DATA_PARAMSIf DataParams is null.
PH_ERR_INVALID_PARAMETERIf the buffers are null.
PH_ERR_PROTOCOL_ERRORInvalid response received.
XXXX
  • Depending on status codes return by PICC.
  • Other Depending on implementation and underlying component.
Parameters
[in]pDataParams[In] Pointer to this layers parameter structure.
[in]bFlags[In] Request flags byte. Refer below set of flags
[in]bAfi[In] Application Family Identifier.
[in]pMask[In] UID mask, holding known UID bits.
[in]bMaskBitLen[In] Number of UID bits within pMask.
[in]bExtendedOptions[In] Refer Extended Inventory Flags for supported values.
[in]pCID[In] Two byte CID -> if marked in extended options
[in]bBlockNo[In] Block Number from where start reading
[in]wNoOfBlocks[In] Number of blocks to read
[out]pCIDOut[Out] Received UID.
[out]pUid[Out] Received UID.
[out]pUidLen[Out] Length of bytes available in pUid buffer.
[out]pData[Out] Received Data.
[out]pDataLen[Out] Length of bytes available in pData buffer.

◆ phpalSli15693_InventoryPageRead()

phStatus_t phpalSli15693_InventoryPageRead ( void *  pDataParams,
uint8_t  bFlags,
uint8_t  bAfi,
uint8_t pMask,
uint8_t  bMaskBitLen,
uint8_t  bPageNo,
uint16_t  wNoOfPages,
uint8_t pUid,
uint8_t pUidLen,
uint8_t pData,
uint16_t pDataLen 
)

Perform ISO15693 InventoryPageRead command.

  • When receiving the Inventory Page Read request, the ISO15693 tag performs the same as in the anti-collision sequence, with the difference that instead of the UID and the DSFID the requested memory content is re-transmitted from the tag.
    • If an error is detected the ISO15693 tag remains silent.
    • If the Option Flag is not set, n pages of data including page protection status (password protection condition) are re-transmitted.
    • If the Option Flag is set, n pages (4 blocks = 16 byte) of data including page protection status (password protection condition) and the part of the UID which is not part of the mask are re-transmitted. Additionally the slot number in case of 16 slots, are returned.
    • The number of bits of the re-transmitted UID can be calculated as follows:
      • 16 slots: 60 bits (bit 64 to bit 4) - mask length rounded up to the next byte boundary.
      • 1 slot: 64 bits - mask length rounded up to the next byte boundary.
    • If a requested page is protected with the Read password and the valid Read password has not been transmitted before, the page is not read and only protection status (0x0F) is returned.
Returns
Status code
Return values
PH_ERR_SUCCESSOperation successful.
PH_ERR_INVALID_DATA_PARAMSIf DataParams is null.
PH_ERR_INVALID_PARAMETERIf the buffers are null.
PH_ERR_PROTOCOL_ERRORInvalid response received.
XXXX
  • Depending on status codes return by PICC.
  • Other Depending on implementation and underlying component.
Parameters
[in]pDataParams[In] Pointer to this layers parameter structure.
[in]bFlags[In] Request flags byte. Refer below set of flags
[in]bAfi[In] Application Family Identifier.
[in]pMask[In] UID mask, holding known UID bits.
[in]bMaskBitLen[In] Number of UID bits within pMask.
[in]bPageNo[In] Block number of first page to read.
[in]wNoOfPages[In] Number of pages to read
[out]pUid[Out] Received UID
[out]pUidLen[Out] Length of bytes available in pUid buffer.
[out]pData[Out] Received data.
[out]pDataLen[Out] Length of bytes available in pData buffer.

◆ phpalSli15693_FastInventoryPageRead()

phStatus_t phpalSli15693_FastInventoryPageRead ( void *  pDataParams,
uint8_t  bFlags,
uint8_t  bAfi,
uint8_t pMask,
uint8_t  bMaskBitLen,
uint8_t  bPageNo,
uint16_t  wNoOfPages,
uint8_t pUid,
uint8_t pUidLen,
uint8_t pData,
uint16_t pDataLen 
)

Perform ISO15693 FastInventoryPageRead command.

  • When receiving the Fast Inventory Page Read command the ICODE SLI tag behaves the same as the Inventory Page Read command with the exceptions that the data rate in the direction ICODE SLI tag to the reader is twice than defined in ISO/IEC 15693-3 depending on the DataRate flag 53 kbit (high data rate) or 13 kbit (low data rate).
Returns
Status code
Return values
PH_ERR_SUCCESSOperation successful.
PH_ERR_INVALID_DATA_PARAMSIf DataParams is null.
PH_ERR_INVALID_PARAMETERIf the buffers are null.
PH_ERR_PROTOCOL_ERRORInvalid response received.
XXXX
  • Depending on status codes return by PICC.
  • Other Depending on implementation and underlying component.
Parameters
[in]pDataParams[In] Pointer to this layers parameter structure.
[in]bFlags[In] Request flags byte. Refer below set of flags
[in]bAfi[In] Application Family Identifier.
[in]pMask[In] UID mask, holding known UID bits.
[in]bMaskBitLen[In] Number of UID bits within pMask.
[in]bPageNo[In] Block number of first page to read.
[in]wNoOfPages[In] Number of pages to read
[out]pUid[Out] Received UID
[out]pUidLen[Out] Length of bytes available in pUid buffer.
[out]pData[Out] Received data.
[out]pDataLen[Out] Length of bytes available in pData buffer.

◆ phpalSli15693_StayQuietPersistent()

phStatus_t phpalSli15693_StayQuietPersistent ( void *  pDataParams)

Perform ICODE SLI Stay quite persistent command.

  • When receiving the Stay Quiet Persistent command, the tag enters the persistent quiet state and will not send back a response.
  • The Stay Quiet Persistent command provides the same behavior as the mandatory STAY QUIET command with the only difference at a reset (power off), the tag will turn to the ready state, if the power off time is exceeding the persistent time. Refer the corresponding ICODE SLI tag specification for the value of persistent time.

The tag will exit the persistent quiet state when:

  • Reset (power off) exceeding the persistent time.
  • Receiving a SELECT request. It shall then go to the Selected state.
  • Receiving a RESET TO READY request. It shall then go to the Ready state.
Returns
Status code
Return values
PH_ERR_SUCCESSOperation successful.
PH_ERR_INVALID_DATA_PARAMSIf DataParams is null.
PH_ERR_PROTOCOL_ERRORInvalid response received.
XXXX
  • Depending on status codes return by PICC.
  • Other Depending on implementation and underlying component.
Parameters
[in]pDataParams[In] Pointer to this layers parameter structure.