NXP NFC Reader Library  v4.040.05.011646
phacDiscLoop_Sw_DataParams Struct Reference

Discovery loop parameter structure. More...

Data Fields

uint16_t wId
 ID for this component, not to be modified. More...
 
uint8_t bPasPollTechCfg
 Technologies to poll for in passive mode. More...
 
uint8_t bActPollTechCfg
 Technologies to poll for in active mode. More...
 
uint8_t bPasPollBailOut
 Bail out for various technologies in Passive mode. More...
 
uint8_t bPasLisTechCfg
 Technologies to listen for in passive listen mode. More...
 
uint8_t bActLisTechCfg
 Technologies to listen for in active listen mode. More...
 
phacDiscLoop_Sw_PollState_t bPollState
 Discovery loop stage to start with while in poll mode. More...
 
uint8_t baPasConDevLim [PHAC_DISCLOOP_PASS_POLL_MAX_TECHS_SUPPORTED]
 Contains device limits for different technologies in passive poll mode. More...
 
uint16_t waPasPollGTimeUs [PHAC_DISCLOOP_PASS_POLL_MAX_TECHS_SUPPORTED]
 Contains guard times for different technologies in passive poll mode. More...
 
uint16_t wActPollGTimeUs
 Contains guard times for different technologies in Active poll mode. More...
 
uint8_t bCollPend
 Flag to indicate whether collision is pending or not. More...
 
uint8_t bLpcdEnabled
 Enable/Disable Low Power Card Detection. More...
 
uint8_t bUseAntiColl
 Enable/Disable anti-collision for Type A for passive poll mode. More...
 
uint8_t bOpeMode
 Operation mode of discovery loop. More...
 
uint8_t bNumOfCards
 Number of cards detected in passive poll mode. More...
 
uint8_t bFelicaBaud
 Current FELICA baud rate.
 
uint8_t bNfcActivityVersion
 Supported NFC Activity version. More...
 
uint8_t bDetectedTechs
 Detected technologies during poll mode. More...
 
phStatus_t wErrorCode
 Hold error received from lower layer when phacDiscLoop_Run returns PHAC_DISCLOOP_FAILURE. More...
 
void * pHalDataParams
 Pointer to the HAL data parameter. More...
 
void * pPal1443p3aDataParams
 Pointer to the 14443P3A layer PAL data parameter. More...
 
void * pPalFelicaDataParams
 Pointer to the Felica PAL data parameter. More...
 
void * pPal1443p3bDataParams
 Pointer to the 14443P3B PAL data parameter. More...
 
void * pPal14443p4DataParams
 Pointer to the 14443P4 PAL data parameter. More...
 
void * pPal1443p4aDataParams
 Pointer to the 14443P4A PAL data parameter. More...
 
void * pPalSli15693DataParams
 Pointer to the 15693 PAL data parameter. More...
 
void * pPal18000p3m3DataParams
 Pointer to the 18000P3M3 PAL data parameter. More...
 
void * pAl18000p3m3DataParams
 Pointer to the 18000P3M3 AL data parameter. More...
 
void * pPal18092mPIDataParams
 Pointer to 18092MPI PAL data parameter. More...
 
void * pAlT1TDataParams
 Pointer to T1T AL data parameter. More...
 
phacDiscLoop_Sw_TypeA_Info_t sTypeATargetInfo
 Information gathered from TYPE A devices/tags in poll mode. More...
 
phacDiscLoop_Sw_TypeF_Info_t sTypeFTargetInfo
 Information gathered from TYPE F devices/tags in poll mode. More...
 
phacDiscLoop_Sw_TypeB_Info_t sTypeBTargetInfo
 Information gathered from TYPE B devices/tags in poll mode. More...
 
phacDiscLoop_Sw_TypeV_Info_t sTypeVTargetInfo
 Information gathered from TYPE V (15693) devices/tags in poll mode. More...
 
phacDiscLoop_I18000p3m3_Info_t sI18000p3m3TargetInfo
 Information gathered from 18000P3M3 devices/tags in poll mode. More...
 
phacDiscLoop_Sw_TargetParams_t sTargetParams
 Information gathered from listen mode. More...
 

Detailed Description

Discovery loop parameter structure.

Field Documentation

§ wId

uint16_t phacDiscLoop_Sw_DataParams::wId

ID for this component, not to be modified.

This is initialized with PHAC_DISCLOOP_SW_ID in the initialization function phacDiscLoop_Sw_Init. This is used for validating the data parameter structure and to make sure that discovery loop APIs are called after initialization.

§ bPasPollTechCfg

uint8_t phacDiscLoop_Sw_DataParams::bPasPollTechCfg

Technologies to poll for in passive mode.

PHAC_DISCLOOP_POS_BIT_MASK_A -> Detect Type A.
PHAC_DISCLOOP_POS_BIT_MASK_B -> Detect Type B.
PHAC_DISCLOOP_POS_BIT_MASK_F212 -> Detect Type FELICA @ 212 kbps.
PHAC_DISCLOOP_POS_BIT_MASK_F424 -> Detect Type FELICA @ 424 kbps.
PHAC_DISCLOOP_POS_BIT_MASK_V -> Detect Type V / ISO 15693.
PHAC_DISCLOOP_POS_BIT_MASK_18000P3M3 -> Detect ISO 18000p3m3/ EPC Gen2.
Use phacDiscLoop_SetConfig with PHAC_DISCLOOP_CONFIG_PAS_POLL_TECH_CFG option to configure above values.

§ bActPollTechCfg

uint8_t phacDiscLoop_Sw_DataParams::bActPollTechCfg

Technologies to poll for in active mode.

PHAC_DISCLOOP_ACT_POS_BIT_MASK_106 -> Detect active target @ 106 kbps
PHAC_DISCLOOP_ACT_POS_BIT_MASK_212 -> Detect active target @ 212 kbps
PHAC_DISCLOOP_ACT_POS_BIT_MASK_424 -> Detect active target @ 424 kbps
Use phacDiscLoop_SetConfig with PHAC_DISCLOOP_CONFIG_ACT_POLL_TECH_CFG option to configure above values.

§ bPasPollBailOut

uint8_t phacDiscLoop_Sw_DataParams::bPasPollBailOut

Bail out for various technologies in Passive mode.

PHAC_DISCLOOP_POS_BIT_MASK_A -> Bail out for Type A.
PHAC_DISCLOOP_POS_BIT_MASK_B -> Bail out for Type B.
PHAC_DISCLOOP_POS_BIT_MASK_F212 -> Bail out for Type FELICA @ 212 kbps.
PHAC_DISCLOOP_POS_BIT_MASK_F424 -> Bail out for Type FELICA @ 424 kbps.
PHAC_DISCLOOP_POS_BIT_MASK_V -> Bail out for Type V / ISO 15693.
PHAC_DISCLOOP_POS_BIT_MASK_18000P3M3 -> Bail out for ISO 18000p3m3/ EPC Gen2.
Use phacDiscLoop_SetConfig with PHAC_DISCLOOP_CONFIG_BAIL_OUT option to configure above values.

§ bPasLisTechCfg

uint8_t phacDiscLoop_Sw_DataParams::bPasLisTechCfg

Technologies to listen for in passive listen mode.

PHAC_DISCLOOP_POS_BIT_MASK_A -> Listen for Type A.
PHAC_DISCLOOP_POS_BIT_MASK_B -> Listen for Type B. [Reserved. Not supported currently]
PHAC_DISCLOOP_POS_BIT_MASK_F212 -> Listen for Type FELICA @ 212 kbps.
PHAC_DISCLOOP_POS_BIT_MASK_F424 -> Listen for Type FELICA @ 424 kbps.
PHAC_DISCLOOP_POS_BIT_MASK_V -> Listen for Type V / ISO 15693.[Reserved. Not supported currently]
PHAC_DISCLOOP_POS_BIT_MASK_18000P3M3 -> Listen for ISO 18000p3m3/ EPC Gen2.[Reserved. Not supported currently]
Use phacDiscLoop_SetConfig with PHAC_DISCLOOP_CONFIG_PAS_LIS_TECH_CFG option to configure above values.

§ bActLisTechCfg

uint8_t phacDiscLoop_Sw_DataParams::bActLisTechCfg

Technologies to listen for in active listen mode.

PHAC_DISCLOOP_POS_BIT_MASK_A -> Listen for Type A.
PHAC_DISCLOOP_POS_BIT_MASK_B -> Listen for Type B.[Reserved. Not supported currently]
PHAC_DISCLOOP_POS_BIT_MASK_F212 -> Listen for Type FELICA @ 212 kbps.
PHAC_DISCLOOP_POS_BIT_MASK_F424 -> Listen for Type FELICA @ 424 kbps.
PHAC_DISCLOOP_POS_BIT_MASK_V -> Listen for Type V / ISO 15693.[Reserved. Not supported currently]
PHAC_DISCLOOP_POS_BIT_MASK_18000P3M3 -> Listen for ISO 18000p3m3/ EPC Gen2.[Reserved. Not supported currently]
Use phacDiscLoop_SetConfig with PHAC_DISCLOOP_CONFIG_ACT_LIS_TECH_CFG option to configure above values.

§ bPollState

phacDiscLoop_Sw_PollState_t phacDiscLoop_Sw_DataParams::bPollState

Discovery loop stage to start with while in poll mode.

PHAC_DISCLOOP_POLL_STATE_DETECTION -> Start with detection phase as per NFC Forum Activity Specification.
PHAC_DISCLOOP_POLL_STATE_COLLISION_RESOLUTION -> Start with collision resolution as per NFC Forum Activity Specification.
PHAC_DISCLOOP_POLL_STATE_REMOVAL -> Start with card removal phase (in EMVCo mode).
When phacDiscLoop_Run gives PHAC_DISCLOOP_MULTI_TECH_DETECTED in poll mode, application shall select one technology and start poll mode again in collision resolution state.

Use phacDiscLoop_SetConfig with PHAC_DISCLOOP_CONFIG_NEXT_POLL_STATE option to configure above states.

§ baPasConDevLim

uint8_t phacDiscLoop_Sw_DataParams::baPasConDevLim[PHAC_DISCLOOP_PASS_POLL_MAX_TECHS_SUPPORTED]

Contains device limits for different technologies in passive poll mode.

PHAC_DISCLOOP_CONFIG_TYPEA_DEVICE_LIMIT -> Device limit for Type A.
PHAC_DISCLOOP_CONFIG_TYPEB_DEVICE_LIMIT -> Device limit for Type B.
PHAC_DISCLOOP_CONFIG_TYPEF_DEVICE_LIMIT -> Device limit for Type F.
PHAC_DISCLOOP_CONFIG_TYPEV_DEVICE_LIMIT -> Device limit for Type V.
PHAC_DISCLOOP_CONFIG_18000P3M3_DEVICE_LIMIT -> Device limit for ISO 18000p3m3/ EPC Gen2.
Use phacDiscLoop_SetConfig with above options to configure device limit. Maximum device limit is PHAC_DISCLOOP_CFG_MAX_CARDS_SUPPORTED.

§ waPasPollGTimeUs

uint16_t phacDiscLoop_Sw_DataParams::waPasPollGTimeUs[PHAC_DISCLOOP_PASS_POLL_MAX_TECHS_SUPPORTED]

Contains guard times for different technologies in passive poll mode.

PHAC_DISCLOOP_CONFIG_GTA_VALUE_US -> Guard time for Type A.
PHAC_DISCLOOP_CONFIG_GTB_VALUE_US -> Guard time for Type B.
PHAC_DISCLOOP_CONFIG_GTFB_VALUE_US -> Guard time for Type F. Guard time is applied when polling for Type B is preceded by polling for Type F.
PHAC_DISCLOOP_CONFIG_GTBF_VALUE_US -> Guard time for Type F. Guard time is applied when polling for Type F is preceded by polling for Type B.
PHAC_DISCLOOP_CONFIG_GTV_VALUE_US -> Guard time for Type V.
PHAC_DISCLOOP_CONFIG_GT18000P3M3_VALUE_US -> Guard time for ISO 18000p3m3/ EPC Gen2.
Use phacDiscLoop_SetConfig with above options to configure guard time.

§ wActPollGTimeUs

uint16_t phacDiscLoop_Sw_DataParams::wActPollGTimeUs

Contains guard times for different technologies in Active poll mode.

PHAC_DISCLOOP_CONFIG_GT_ACTIVE_US -> Guard time for Active mode polling Default value is 5100 micro seconds.

Use phacDiscLoop_SetConfig with above options to configure guard time.

§ bCollPend

uint8_t phacDiscLoop_Sw_DataParams::bCollPend

Flag to indicate whether collision is pending or not.

PHAC_DISCLOOP_POS_BIT_MASK_A -> Type A.
PHAC_DISCLOOP_POS_BIT_MASK_B -> Type B.
PHAC_DISCLOOP_POS_BIT_MASK_F212 -> FELICA @ 212 kbps.
PHAC_DISCLOOP_POS_BIT_MASK_F424 -> FELICA @ 424 kbps.
PHAC_DISCLOOP_POS_BIT_MASK_V -> Type V / ISO 15693.
PHAC_DISCLOOP_POS_BIT_MASK_18000P3M3 -> ISO 18000p3m3/ EPC Gen2.
Use phacDiscLoop_GetConfig with PHAC_DISCLOOP_CONFIG_COLLISION_PENDING option to get collision pending status.

§ bLpcdEnabled

uint8_t phacDiscLoop_Sw_DataParams::bLpcdEnabled

Enable/Disable Low Power Card Detection.

Use phacDiscLoop_SetConfig with PHAC_DISCLOOP_CONFIG_ENABLE_LPCD option to PH_ON / PH_OFF LPCD.

§ bUseAntiColl

uint8_t phacDiscLoop_Sw_DataParams::bUseAntiColl

Enable/Disable anti-collision for Type A for passive poll mode.

Use phacDiscLoop_SetConfig with PHAC_DISCLOOP_CONFIG_ANTI_COLL option to PH_ON / PH_OFF anti-collision.

§ bOpeMode

uint8_t phacDiscLoop_Sw_DataParams::bOpeMode

Operation mode of discovery loop.

RD_LIB_MODE_EMVCO -> Run in EMVCO mode as per the EMVCo 2.5 Digital specification.
RD_LIB_MODE_NFC -> Run in NFC mode as per NFC Forum Activity Specification 1.1. This is the default mode.
Use phacDiscLoop_SetConfig with PHAC_DISCLOOP_CONFIG_OPE_MODE option to configure above modes.

§ bNumOfCards

uint8_t phacDiscLoop_Sw_DataParams::bNumOfCards

Number of cards detected in passive poll mode.

Use phacDiscLoop_GetConfig with PHAC_DISCLOOP_CONFIG_NR_TAGS_FOUND option to get number of tags.

§ bNfcActivityVersion

uint8_t phacDiscLoop_Sw_DataParams::bNfcActivityVersion

Supported NFC Activity version.

PHAC_DISCLOOP_NFC_ACTIVITY_VERSION_1_0 -> Run in NFC Forum Activity 1.0 mode.
PHAC_DISCLOOP_NFC_ACTIVITY_VERSION_1_1 -> Run in NFC Forum Activity 1.1 mode. This is the default.
Use phacDiscLoop_SetConfig with PHAC_DISCLOOP_CONFIG_ACTIVITY_VERSION option to configure above modes.

§ bDetectedTechs

uint8_t phacDiscLoop_Sw_DataParams::bDetectedTechs

Detected technologies during poll mode.

Passive technologies:
PHAC_DISCLOOP_POS_BIT_MASK_A -> Detected Type A.
PHAC_DISCLOOP_POS_BIT_MASK_B -> Detected Type B.
PHAC_DISCLOOP_POS_BIT_MASK_F212 -> Detected FELICA @ 212 kbps.
PHAC_DISCLOOP_POS_BIT_MASK_F424 -> Detected FELICA @ 424 kbps.
PHAC_DISCLOOP_POS_BIT_MASK_V -> Detected Type V / ISO 15693.
PHAC_DISCLOOP_POS_BIT_MASK_18000P3M3 -> Detected ISO 18000p3m3/ EPC Gen2.
Active technologies:
PHAC_DISCLOOP_ACT_POS_BIT_MASK_106 -> Detected active target @ 106 kbps.
PHAC_DISCLOOP_ACT_POS_BIT_MASK_212 -> Detected active target @ 212 kbps.
PHAC_DISCLOOP_ACT_POS_BIT_MASK_424 -> Detected active target @ 424 kbps.
Use phacDiscLoop_GetConfig with PHAC_DISCLOOP_CONFIG_TECH_DETECTED option to get detected technologies.

§ wErrorCode

phStatus_t phacDiscLoop_Sw_DataParams::wErrorCode

Hold error received from lower layer when phacDiscLoop_Run returns PHAC_DISCLOOP_FAILURE.

Use phacDiscLoop_GetConfig with PHAC_DISCLOOP_CONFIG_ADDITIONAL_INFO option to get error from lower layer.

§ pHalDataParams

void* phacDiscLoop_Sw_DataParams::pHalDataParams

Pointer to the HAL data parameter.

Application should initialize this pointer with address of HAL data parameter structure.

§ pPal1443p3aDataParams

void* phacDiscLoop_Sw_DataParams::pPal1443p3aDataParams

Pointer to the 14443P3A layer PAL data parameter.

Application should initialize this pointer with address of 14443P3A PAL data parameter structure.

§ pPalFelicaDataParams

void* phacDiscLoop_Sw_DataParams::pPalFelicaDataParams

Pointer to the Felica PAL data parameter.

Application should initialize this pointer with address of Felica PAL data parameter structure.

§ pPal1443p3bDataParams

void* phacDiscLoop_Sw_DataParams::pPal1443p3bDataParams

Pointer to the 14443P3B PAL data parameter.

Application should initialize this pointer with address of 14443P3B PAL data parameter structure.

§ pPal14443p4DataParams

void* phacDiscLoop_Sw_DataParams::pPal14443p4DataParams

Pointer to the 14443P4 PAL data parameter.

Application should initialize this pointer with address of 14443P4 PAL data parameter structure.

§ pPal1443p4aDataParams

void* phacDiscLoop_Sw_DataParams::pPal1443p4aDataParams

Pointer to the 14443P4A PAL data parameter.

Application should initialize this pointer with address of 14443P4A PAL data parameter structure.

§ pPalSli15693DataParams

void* phacDiscLoop_Sw_DataParams::pPalSli15693DataParams

Pointer to the 15693 PAL data parameter.

Application should initialize this pointer with address of 15693 PAL data parameter structure.

§ pPal18000p3m3DataParams

void* phacDiscLoop_Sw_DataParams::pPal18000p3m3DataParams

Pointer to the 18000P3M3 PAL data parameter.

Application should initialize this pointer with address of 18000P3M3 PAL data parameter structure.

§ pAl18000p3m3DataParams

void* phacDiscLoop_Sw_DataParams::pAl18000p3m3DataParams

Pointer to the 18000P3M3 AL data parameter.

Application should initialize this pointer with address of 18000P3M3 AL data parameter structure.

§ pPal18092mPIDataParams

void* phacDiscLoop_Sw_DataParams::pPal18092mPIDataParams

Pointer to 18092MPI PAL data parameter.

Application should initialize this pointer with address of 18092MPI PAL data parameter structure.

§ pAlT1TDataParams

void* phacDiscLoop_Sw_DataParams::pAlT1TDataParams

Pointer to T1T AL data parameter.

Application should initialize this pointer with address of T1T AL data parameter structure.

§ sTypeATargetInfo

phacDiscLoop_Sw_TypeA_Info_t phacDiscLoop_Sw_DataParams::sTypeATargetInfo

Information gathered from TYPE A devices/tags in poll mode.

Application can access this directly to get information like UID, UID size, SAK etc. of all Type A devices/tags detected in poll mode.

§ sTypeFTargetInfo

phacDiscLoop_Sw_TypeF_Info_t phacDiscLoop_Sw_DataParams::sTypeFTargetInfo

Information gathered from TYPE F devices/tags in poll mode.

Application can access this directly to get information like ID, Baud rate, etc. of all Type F devices/tags detected in poll mode.

§ sTypeBTargetInfo

phacDiscLoop_Sw_TypeB_Info_t phacDiscLoop_Sw_DataParams::sTypeBTargetInfo

Information gathered from TYPE B devices/tags in poll mode.

Application can access this directly to get information like PUPI, ATQB, ATQB length etc. of all Type B devices/tags detected in poll mode.

§ sTypeVTargetInfo

phacDiscLoop_Sw_TypeV_Info_t phacDiscLoop_Sw_DataParams::sTypeVTargetInfo

Information gathered from TYPE V (15693) devices/tags in poll mode.

Application can access this directly to get information like UID, DSFID, etc. of all Type V devices/tags detected in poll mode.

§ sI18000p3m3TargetInfo

phacDiscLoop_I18000p3m3_Info_t phacDiscLoop_Sw_DataParams::sI18000p3m3TargetInfo

Information gathered from 18000P3M3 devices/tags in poll mode.

Application can access this directly to get information like StoredCRC, etc. of all 18000P3M3 devices/tags detected in poll mode.

§ sTargetParams

phacDiscLoop_Sw_TargetParams_t phacDiscLoop_Sw_DataParams::sTargetParams

Information gathered from listen mode.

Application can access this directly to get information like Request received, Request length etc. from AUTOCOLL in listen mode.


The documentation for this struct was generated from the following file: