Renesas PTX1xxR IoT-Reader API Version 7.3.1
Renesas Software Stack for IoT-Reader Applications
Data Structures | Macros | Typedefs | Enumerations | Functions
Collaboration diagram for NSC IoT-Reader API:

Data Structures

struct  ptxIoTRd_ChipConfig
 Chip RF- and System-Configuration Identifiers. More...
 
struct  ptxIoTRd_BitRates
 Available higher bitrate identifiers. More...
 
struct  ptxIoTRd_HBRConfig_Int
 Available higher bitrates in Rx- and Tx-direction. More...
 
struct  ptxIoTRd_HBRConfig
 Higher bitrate configuration. More...
 
struct  ptxIoTRd_DiscConfigTypeFPollCmdParams
 Custom Type-F Polling Command Parameters. More...
 
struct  ptxIoTRd_DiscConfig
 Configuration for RF-Discovery Loop. More...
 
struct  ptxIoTRd_NSCInitConfig
 Configuration for NSC Init. More...
 
struct  ptxIoTRd_CardAParams
 RF-Technology Type-A Card Parameters. More...
 
struct  ptxIoTRd_CardBParams
 RF-Technolgy Type-B Card Parameters. More...
 
struct  ptxIoTRd_CardFParams
 RF-Technolgy Type-F Card Parameters. More...
 
struct  ptxIoTRd_CardVParams
 RF-Technolgy Type-V Card Parameters. More...
 
struct  ptxIoTRd_CardExtensionParams
 RF-Technolgy Extension Card Parameters (Prototype/RFU) More...
 
union  ptxIoTRd_CardTechParams
 General Card RF-Technology specific Parameters. More...
 
struct  ptxIoTRd_SupportedRFProt
 Card Supported RF-Protocols. More...
 
struct  ptxIoTRd_CardParams
 General Card Parameters (=> Card Registry Entry) More...
 
struct  ptxIoTRd_CardRegistry
 Card Registry structure. More...
 
struct  ptxIoTRd_Extension
 
struct  ptxIoTRd_ComInterface_Params
 Parameters for Communication/Host Interface Initialization. More...
 
struct  ptxIoTRd_InitStack_Params
 Structure containing stack initialization parameters directly set by the user. More...
 

Macros

#define PTX_IOTRD_MAX_SUPPORTED_DEVICES   (uint8_t)50
 
#define PTX_IOTRD_MAX_SUPPORTED_RF_PROTOCOLS   (uint8_t)4
 
#define PTX_IOTRD_TECH_A_SENSRES_MAX_SIZE   (uint8_t)2
 
#define PTX_IOTRD_TECH_A_NFCID1_MAX_SIZE   (uint8_t)10
 
#define PTX_IOTRD_TECH_B_SENSB_MAX_SIZE   (uint8_t)13
 
#define PTX_IOTRD_TECH_F_SENSF_MAX_SIZE   (uint8_t)20
 
#define PTX_IOTRD_TECH_V_UID_MAX_SIZE   (uint8_t)8
 
#define PTX_IOTRD_TECH_EXT_PARAM_MAX_SIZE   (uint8_t)32
 
#define PTX_IOTRD_PROT_ISO_DEP_ATS_MAX_SIZE   (uint8_t)21
 
#define PTX_IOTRD_PROT_ISO_DEP_ATTRIB_RES_MAX_SIZE   (uint8_t)16
 
#define PTX_IOTRD_PROT_NFC_DEP_ATR_RES_MAX_SIZE   (uint8_t)65
 
#define PTX_IOTRD_HIGH_LEVEL_PROT_MAX_SIZE   PTX_IOTRD_PROT_NFC_DEP_ATR_RES_MAX_SIZE
 
#define PTX_IOTRD_RF_BAILOUT_TECH_A   (uint8_t)1
 
#define PTX_IOTRD_RF_BAILOUT_TECH_B   (uint8_t)2
 
#define PTX_IOTRD_RF_BAILOUT_TECH_F   (uint8_t)4
 
#define PTX_IOTRD_RF_DISCOVER_STATUS_NO_CARD   (uint8_t)0
 
#define PTX_IOTRD_RF_DISCOVER_STATUS_CARD_ACTIVE   (uint8_t)1
 
#define PTX_IOTRD_RF_DISCOVER_STATUS_DISCOVER_RUNNING   (uint8_t)2
 
#define PTX_IOTRD_RF_DISCOVER_STATUS_DISCOVER_DONE   (uint8_t)3
 
#define PTX_IOTRD_RF_DISCOVER_STATUS_UNDEFINED   (uint8_t)0xFF
 
#define PTX_IOTRD_RF_DEACTIVATION_TYPE_IDLE   (uint8_t)0
 
#define PTX_IOTRD_RF_DEACTIVATION_TYPE_DISCOVER   (uint8_t)1
 
#define PTX_IOTRD_RF_DEACTIVATION_TYPE_SLEEP   (uint8_t)2
 
#define PTX_IOTRD_RF_DEACTIVATION_TYPE_SLEEP_NON_BLOCKING   (uint8_t)3
 
#define PTX_IOTRD_RF_DEACTIVATION_TYPE_NO_RF_RESET   (uint8_t)4
 
#define PTX_IOTRD_RF_DEACTIVATION_TYPE_IDLE_PROTOCOL   (uint8_t)5
 
#define PTX_IOTRD_RF_DEACTIVATION_TYPE_DISCOVER_PROTOCOL   (uint8_t)6
 
#define PTX_IOTRD_RF_DEACTIVATION_SLEEP_ONGOING   (uint8_t)0
 
#define PTX_IOTRD_RF_DEACTIVATION_SLEEP_DONE   (uint8_t)1
 

Typedefs

typedef enum ptxIoTRd_RevisionType ptxIoTRd_RevisionType_t
 NSC Revision-Info Types.
 
typedef enum ptxIoTRd_ChipConfigID ptxIoTRd_ChipConfigID_t
 Chip RF- and System-Configuration Identifiers.
 
typedef enum ptxIoTRd_SysInfoType ptxIoTRd_SysInfoType_t
 System Info Identifiers.
 
typedef struct ptxIoTRd_ChipConfig ptxIoTRd_ChipConfig_t
 Chip RF- and System-Configuration Identifiers.
 
typedef struct ptxIoTRd_BitRates ptxIoTRd_BitRates_t
 Available higher bitrate identifiers.
 
typedef struct ptxIoTRd_HBRConfig_Int ptxIoTRd_HBRConfig_Int_t
 Available higher bitrates in Rx- and Tx-direction.
 
typedef struct ptxIoTRd_HBRConfig ptxIoTRd_HBRConfig_t
 Higher bitrate configuration.
 
typedef enum ptxIoTRd_CardRFTechType ptxIoTRd_CardRFTechType_t
 Card RF-Technology Type.
 
typedef enum ptxIoTRd_CardProtocol ptxIoTRd_CardProtocol_t
 Card RF-Protocol Type.
 
typedef struct ptxIoTRd_DiscConfigTypeFPollCmdParams ptxIoTRd_DiscConfigTypeFPollCmdParams_t
 Custom Type-F Polling Command Parameters.
 
typedef struct ptxIoTRd_DiscConfig ptxIoTRd_DiscConfig_t
 Configuration for RF-Discovery Loop.
 
typedef struct ptxIoTRd_NSCInitConfig ptxIoTRd_NSCInitConfig_t
 Configuration for NSC Init.
 
typedef struct ptxIoTRd_CardAParams ptxIoTRd_CardAParams_t
 RF-Technology Type-A Card Parameters.
 
typedef struct ptxIoTRd_CardBParams ptxIoTRd_CardBParams_t
 RF-Technolgy Type-B Card Parameters.
 
typedef struct ptxIoTRd_CardFParams ptxIoTRd_CardFParams_t
 RF-Technolgy Type-F Card Parameters.
 
typedef struct ptxIoTRd_CardVParams ptxIoTRd_CardVParams_t
 RF-Technolgy Type-V Card Parameters.
 
typedef struct ptxIoTRd_CardExtensionParams ptxIoTRd_CardExtensionParams_t
 RF-Technolgy Extension Card Parameters (Prototype/RFU)
 
typedef union ptxIoTRd_CardTechParams ptxIoTRd_CardTechParams_t
 General Card RF-Technology specific Parameters.
 
typedef struct ptxIoTRd_SupportedRFProt ptxIoTRd_SupportedRFProt_t
 Card Supported RF-Protocols.
 
typedef struct ptxIoTRd_CardParams ptxIoTRd_CardParams_t
 General Card Parameters (=> Card Registry Entry)
 
typedef struct ptxIoTRd_CardRegistry ptxIoTRd_CardRegistry_t
 Card Registry structure.
 
typedef enum ptxIoTRd_CheckPresType ptxIoTRd_CheckPresType_t
 Type of Check Presence Mechanism.
 
typedef enum ptxIoTRd_StatusType ptxIoTRd_StatusType_t
 Generic Status / State Identifier.
 
typedef enum ptxIoTRd_RSSI_Mode ptxIoTRd_RSSI_Mode_t
 RSSI Mode.
 
typedef uint16_t(* pExtProcessNTF_t) (void *extCtx, void *iotRdComp, void *nscEvent)
 Extension Prototype (RFU): Handler for NTF Processing at API-level.
 
typedef uint16_t(* pExtActivateCMD_t) (void *extCtx, void *iotRdComp, ptxIoTRd_CardParams_t *cardParams, ptxIoTRd_CardProtocol_t protocol)
 Extension Prototype (RFU): Handler for Activate-/Select-Command Processing at API-level.
 
typedef struct ptxIoTRd_Extension ptxIoTRd_Extension_t
 
typedef struct ptxIoTRd_ComInterface_Params ptxIoTRd_ComInterface_Params_t
 Parameters for Communication/Host Interface Initialization.
 
typedef struct ptxIoTRd_InitStack_Params ptxIoTRd_InitStack_Params_t
 Structure containing stack initialization parameters directly set by the user.
 

Enumerations

enum  ptxIoTRd_RevisionType {
  RevInfo_C_Stack , RevInfo_Local_Changes , RevInfo_DFY_Code , RevInfo_DFY_Toolchain ,
  RevInfo_ChipID , RevInfo_ProductID
}
 NSC Revision-Info Types.
 
enum  ptxIoTRd_ChipConfigID {
  RF_Wavebank0 , RF_Wavebank1 , RF_Wavebank2 , RF_Wavebank3 ,
  RF_Wavebank4 , RF_Wavebank5 , RF_Wavebank6 , RF_Wavebank7 ,
  RF_Wavebank8 , RF_Wavebank9 , RF_Wavebank10 , RF_Wavebank11 ,
  RF_Wavebank12 , RF_Wavebank13 , RF_Wavebank14 , RF_Wavebank15 ,
  RF_Wavebank16 , RF_Wavebank17 , RF_Wavebank18 , RF_Wavebank19 ,
  RF_Misc , RF_PollA106 , RF_PollA212 , RF_PollA424 ,
  RF_PollA848 , RF_PollB106 , RF_PollB212 , RF_PollB424 ,
  RF_PollB848 , RF_PollF212 , RF_PollF424 , RF_PollV ,
  SYS_ThermalThreshold = 100 , SYS_OvercurrentThreshold , SYS_ConClockSrc , SYS_ConVarLBS ,
  SYS_ConNHost , SYS_ConNHosCE
}
 Chip RF- and System-Configuration Identifiers.
 
enum  ptxIoTRd_SysInfoType { SysInfo_VDPA_Calibration_Result }
 System Info Identifiers.
 
enum  ptxIoTRd_CardRFTechType {
  Tech_TypeA = 0 , Tech_TypeB = 1 , Tech_TypeF = 2 , Tech_TypeV = 6 ,
  Tech_TypeExtension = 10
}
 Card RF-Technology Type.
 
enum  ptxIoTRd_CardProtocol {
  Prot_Undefined = 0 , Prot_T2T = 2 , Prot_T3T = 3 , Prot_ISODEP = 4 ,
  Prot_NFCDEP = 5 , Prot_T5T = 6 , Prot_Extension = 10
}
 Card RF-Protocol Type.
 
enum  ptxIoTRd_CheckPresType { PresCheck_A , PresCheck_B }
 Type of Check Presence Mechanism. More...
 
enum  ptxIoTRd_StatusType {
  StatusType_System , StatusType_Discover , StatusType_DeactivateSleep , StatusType_LastRFError ,
  StatusType_LPCDNtfCounter , StatusType_HCE_Discover_State
}
 Generic Status / State Identifier.
 
enum  ptxIoTRd_RSSI_Mode { RSSI_Mode_Enabled , RSSI_Mode_Disabled }
 RSSI Mode. More...
 

Functions

PTX_API_LIBFUNC void * ptxIoTRd_Allocate_Stack (void)
 Reserve memory for the main component of the stack, and return the allocated-memory as pointer to the caller.
 
PTX_API_LIBFUNC uint16_t ptxIoTRd_Init_Stack (void *stackComp, ptxIoTRd_InitStack_Params_t *initStackParams)
 Initialize the stack.
 
PTX_API_LIBFUNC uint16_t ptxIoTRd_Get_Revision_Info (void *stackComp, ptxIoTRd_RevisionType_t revisionType, uint32_t *revisionInfo)
 Get various revisions of system (C-Stack, DFY-Code/-Toolchain, Chip-ID, Local changes, Product-ID etc.).
 
PTX_API_LIBFUNC uint16_t ptxIoTRd_Enable_RT_Log (void *stackComp, uint8_t mode, const char *logFile)
 Enables / Disables the Realtime-Logging Feature i.e. every logging-entry will be immediately written to a file.
 
PTX_API_LIBFUNC uint16_t ptxIoTRd_Close_Stack (void *stackComp, char *logFile)
 Close the stack.
 
PTX_API_LIBFUNC uint16_t ptxIoTRd_Init_NSC (void *stackComp, ptxIoTRd_NSCInitConfig_t *initConfig)
 Initialize NSC.
 
PTX_API_LIBFUNC uint16_t ptxIoTRd_Update_ChipConfig (void *stackComp, uint8_t nrConfigs, ptxIoTRd_ChipConfig_t *configParams)
 Updates the RF- and System-Configuration parameters of the NFC hardware.
 
PTX_API_LIBFUNC uint16_t ptxIoTRd_ConfigHBR (void *stackComp, ptxIoTRd_HBRConfig_t *configParams)
 Configures HBR.
 
PTX_API_LIBFUNC uint16_t ptxIoTRd_Initiate_Discovery (void *stackComp, ptxIoTRd_DiscConfig_t *discConfig)
 Initiate RF-Discovery according to NFC-Forum.
 
PTX_API_LIBFUNC uint16_t ptxIoTRd_Get_Card_Registry (void *stackComp, ptxIoTRd_CardRegistry_t **cardRegistry)
 Access the internal card registry.
 
PTX_API_LIBFUNC uint16_t ptxIoTRd_Activate_Card (void *stackComp, ptxIoTRd_CardParams_t *cardParams, ptxIoTRd_CardProtocol_t protocol)
 Activates a specific card.
 
PTX_API_LIBFUNC uint16_t ptxIoTRd_Data_Exchange (void *stackComp, uint8_t *tx, uint32_t txLength, uint8_t *rx, uint32_t *rxLength, uint32_t msAppTimeout)
 Exchange data with an already activated card.
 
PTX_API_LIBFUNC uint16_t ptxIoTRd_Bits_Exchange_Mode (void *stackComp, uint8_t enable)
 Enable or disable Bits Exchange Option.
 
PTX_API_LIBFUNC uint16_t ptxIoTRd_Bits_Exchange (void *stackComp, uint8_t *tx, uint8_t *txPar, uint32_t txLength, uint8_t *rx, uint8_t *rxPar, uint32_t *rxLength, uint32_t *numTotBits, uint32_t msAppTimeout)
 Exchanges Type-A RF-technology aligned raw RF bit-streams in state "DATA EXCHANGE" based on Cards / Tags supporting the T2T protocol.
 
PTX_API_LIBFUNC uint16_t ptxIoTRd_RF_PresenceCheck (void *stackComp, ptxIoTRd_CheckPresType_t presCheckType)
 Check the presence of Activated Card.
 
PTX_API_LIBFUNC uint16_t ptxIoTRd_T5T_IsolatedEoF (void *stackComp, uint8_t *rx, uint32_t *rxLength, uint32_t msAppTimeout)
 This function sends EoF command to a T5T activated card and waits for an answer.
 
PTX_API_LIBFUNC uint16_t ptxIoTRd_T3T_SENSFRequest (void *stackComp, uint16_t systemCode, uint8_t requestCode, uint8_t tsn, uint8_t *rx, uint32_t *rxLength, uint32_t msAppTimeout)
 This function sends a polling-command (SENSF_REQ) to an already activated FeliCa/T3T card.
 
PTX_API_LIBFUNC uint16_t ptxIoTRd_Reader_Deactivation (void *stackComp, uint8_t deactivationType)
 Perform generic reader deactivation.
 
PTX_API_LIBFUNC uint16_t ptxIoTRd_Set_Power_Mode (void *stackComp, uint8_t newPowerMode)
 Set reader power mode.
 
PTX_API_LIBFUNC uint16_t ptxIoTRd_Get_System_Info (void *stackComp, ptxIoTRd_SysInfoType_t infoType, uint8_t *infoBuffer, uint32_t *infoBufferLength)
 Get System-internal Information.
 
PTX_API_LIBFUNC uint16_t ptxIoTRd_TempSensor_Calibration (void *stackComp, uint8_t Tambient, uint8_t *Tshutdown)
 Perform PTX1K integrated temperature sensor calibration and calculate calibrated temperature shutdown temperature. The outcome of this process is the calibrated temperature shutdown temperature value, returned in Tshutdown parameter. This value is used in every further call to ptxIoTRd_Init_NSC.
 
PTX_API_LIBFUNC uint16_t ptxIoTRd_SWReset (void *stackComp)
 SW Reset.
 
PTX_API_LIBFUNC uint16_t ptxIoTRd_Get_Status_Info (void *stackComp, ptxIoTRd_StatusType_t statusType, uint8_t *statusInfo)
 Get various status- and state-information.
 
ptxStatus_t ptxIoTRd_Get_HCE_Component (void *stackComp, ptxHCE_t **hceComp)
 Retrieves the HCE component from the stack.
 
PTX_API_LIBFUNC uint16_t ptxIoTRd_Set_RSSI_Mode (void *stackComp, ptxIoTRd_RSSI_Mode_t rssiMode, uint8_t *rssiRefreshPeriodInt)
 This function puts the system / stack into RSSI-mode or deactivates the RSSI-mode.
 
PTX_API_LIBFUNC uint16_t ptxIoTRd_Get_RSSI_Value (void *stackComp, uint16_t *rssiValue)
 This function reads the current RSSI-value.
 
PTX_API_LIBFUNC uint16_t ptxIoTRd_Register_Extension (void *stackComp, uint8_t extensionID, ptxIoTRd_Extension_t *extension)
 Register an IoT-Extension (Prototype/RFU).
 
PTX_API_LIBFUNC uint16_t ptxIoTRd_DeRegister_Extension (void *stackComp, uint8_t extensionID)
 De-Register an IoT-Extension (Prototype/RFU).
 

Generic Defines (independent of Product Type)

#define PTX_STATUS_UNDEFINED   (uint16_t)0xFFFF
 
#define PTX_STATUS_OK   (uint16_t)0
 
#define PTX_STATUS_FILE_NOT_FOUND   (uint16_t)18
 
#define PTX_STATUS_ERR_RF_TIMEOUT   (uint16_t)5
 
#define PTX_STATUS_ERR_RF_NTF   (uint16_t)34
 
#define PTX_SYSTEM_STATUS_OK   (uint8_t)0
 
#define PTX_SYSTEM_STATUS_ERR_OVERCURRENT   (uint8_t)1
 
#define PTX_SYSTEM_STATUS_ERR_TEMPERATURE   (uint8_t)2
 

Defines of possible RF error codes

#define PTX_RF_ERROR_NTF_CODE_NO_ERROR   (uint8_t)0x00
 
#define PTX_RF_ERROR_NTF_CODE_UNKNOWN_ERROR   (uint8_t)0xFF
 
#define PTX_RF_ERROR_NTF_CODE_WARNING_PA_OVERCURRENT_LIMIT   (uint8_t)0x09
 
#define PTX_RF_ERROR_NTF_CODE_ERR_EMV_COLL   (uint8_t)0x11
 
#define PTX_RF_ERROR_NTF_CODE_ERR_TIMEOUT   (uint8_t)0x12
 
#define PTX_RF_ERROR_NTF_CODE_ERR_TRANSMISSION   (uint8_t)0x13
 
#define PTX_RF_ERROR_NTF_CODE_ERR_PROTOCOL   (uint8_t)0x14
 
#define PTX_RF_ERROR_NTF_CODE_ERR_COMM_INTERFACE   (uint8_t)0xFE
 

Hardware Product-IDs

#define PTX_HW_PRODUCT_ID_PTX100X   (uint8_t)0x00
 
#define PTX_HW_PRODUCT_ID_PTX105X   (uint8_t)0x01
 
#define PTX_HW_PRODUCT_ID_PTX130X   (uint8_t)0x02
 

(Host) Interface-Types

#define PTX_IOTRD_READER_INTERFACE_TYPE_UART   (uint8_t)1
 
#define PTX_IOTRD_READER_INTERFACE_TYPE_SPI   (uint8_t)2
 
#define PTX_IOTRD_READER_INTERFACE_TYPE_I2C   (uint8_t)3
 

Platform-dependent I2C speeds/bitrates (Attention: Bitrates highly dependent on the target system and might require adaption!)

#define PTX_IOTRD_HOST_SPEED_I2C_100000   (100000UL)
 
#define PTX_IOTRD_HOST_SPEED_I2C_400000   (400000UL)
 
#define PTX_IOTRD_HOST_SPEED_I2C_1000000   (1000000UL)
 
#define PTX_IOTRD_HOST_SPEED_I2C_3400000   (3400000UL)
 
#define PTX_IOTRD_HOST_SPEED_I2C_MAX   PTX_IOTRD_HOST_SPEED_I2C_3400000
 

Platform-dependent UART speeds/bitrates (Attention: Bitrates highly dependent on the target system and might require adaption!)

#define PTX_IOTRD_HOST_SPEED_UART_9600   (9600UL)
 
#define PTX_IOTRD_HOST_SPEED_UART_14400   (14400UL)
 
#define PTX_IOTRD_HOST_SPEED_UART_19200   (19200UL)
 
#define PTX_IOTRD_HOST_SPEED_UART_28800   (28800UL)
 
#define PTX_IOTRD_HOST_SPEED_UART_38400   (38400UL)
 
#define PTX_IOTRD_HOST_SPEED_UART_57600   (57600UL)
 
#define PTX_IOTRD_HOST_SPEED_UART_115200   (115200UL)
 
#define PTX_IOTRD_HOST_SPEED_UART_230400   (230400UL)
 
#define PTX_IOTRD_HOST_SPEED_UART_460800   (460800UL)
 
#define PTX_IOTRD_HOST_SPEED_UART_921600   (921600UL)
 
#define PTX_IOTRD_HOST_SPEED_UART_1843200   (1843200UL)
 
#define PTX_IOTRD_HOST_SPEED_UART_3000000   (3000000UL)
 
#define PTX_IOTRD_HOST_SPEED_UART_MAX   PTX_IOTRD_HOST_SPEED_UART_3000000
 

Platform-dependent SPI speeds/bitrates (Attention: Bitrates highly dependent on the target system and might require adaption!)

#define PTX_IOTRD_HOST_SPEED_SPI_1M   (1000000UL)
 
#define PTX_IOTRD_HOST_SPEED_SPI_5M   (5000000UL)
 
#define PTX_IOTRD_HOST_SPEED_SPI_10M   (10000000UL)
 
#define PTX_IOTRD_HOST_SPEED_SPI_MAX   PTX_IOTRD_HOST_SPEED_SPI_10M
 

API Extension Definitions

#define PTX_IOTRD_MAX_EXTENSIONS   (1u)
 

Detailed Description

Macro Definition Documentation

◆ PTX_HW_PRODUCT_ID_PTX100X

#define PTX_HW_PRODUCT_ID_PTX100X   (uint8_t)0x00

Product ID for PTX100x series

◆ PTX_HW_PRODUCT_ID_PTX105X

#define PTX_HW_PRODUCT_ID_PTX105X   (uint8_t)0x01

Product ID for PTX105x series

◆ PTX_HW_PRODUCT_ID_PTX130X

#define PTX_HW_PRODUCT_ID_PTX130X   (uint8_t)0x02

Product ID for PTX130x series

◆ PTX_IOTRD_HIGH_LEVEL_PROT_MAX_SIZE

#define PTX_IOTRD_HIGH_LEVEL_PROT_MAX_SIZE   PTX_IOTRD_PROT_NFC_DEP_ATR_RES_MAX_SIZE

max. General Length of protocol parameter

◆ PTX_IOTRD_HOST_SPEED_I2C_100000

#define PTX_IOTRD_HOST_SPEED_I2C_100000   (100000UL)

I2C Standard (100 kHz).

◆ PTX_IOTRD_HOST_SPEED_I2C_1000000

#define PTX_IOTRD_HOST_SPEED_I2C_1000000   (1000000UL)

I2C Fast-Mode-Plus (up to 1 MHz).

◆ PTX_IOTRD_HOST_SPEED_I2C_3400000

#define PTX_IOTRD_HOST_SPEED_I2C_3400000   (3400000UL)

I2C High-Speed-Mode (up to 3.4 MHz).

◆ PTX_IOTRD_HOST_SPEED_I2C_400000

#define PTX_IOTRD_HOST_SPEED_I2C_400000   (400000UL)

I2C Fast-Mode (400 kHz).

◆ PTX_IOTRD_HOST_SPEED_I2C_MAX

#define PTX_IOTRD_HOST_SPEED_I2C_MAX   PTX_IOTRD_HOST_SPEED_I2C_3400000

I2C Max. Speed/Bitrate

◆ PTX_IOTRD_HOST_SPEED_SPI_10M

#define PTX_IOTRD_HOST_SPEED_SPI_10M   (10000000UL)

SPI 10 MBit/s.

◆ PTX_IOTRD_HOST_SPEED_SPI_1M

#define PTX_IOTRD_HOST_SPEED_SPI_1M   (1000000UL)

SPI 1 MBit/s.

◆ PTX_IOTRD_HOST_SPEED_SPI_5M

#define PTX_IOTRD_HOST_SPEED_SPI_5M   (5000000UL)

SPI 5 MBit/s.

◆ PTX_IOTRD_HOST_SPEED_SPI_MAX

#define PTX_IOTRD_HOST_SPEED_SPI_MAX   PTX_IOTRD_HOST_SPEED_SPI_10M

SPI Max. Speed/Bitrate

◆ PTX_IOTRD_HOST_SPEED_UART_115200

#define PTX_IOTRD_HOST_SPEED_UART_115200   (115200UL)

UART 115200 Baud.

◆ PTX_IOTRD_HOST_SPEED_UART_14400

#define PTX_IOTRD_HOST_SPEED_UART_14400   (14400UL)

UART 14400 Baud.

◆ PTX_IOTRD_HOST_SPEED_UART_1843200

#define PTX_IOTRD_HOST_SPEED_UART_1843200   (1843200UL)

UART 1843200 Baud.

◆ PTX_IOTRD_HOST_SPEED_UART_19200

#define PTX_IOTRD_HOST_SPEED_UART_19200   (19200UL)

UART 19200 Baud.

◆ PTX_IOTRD_HOST_SPEED_UART_230400

#define PTX_IOTRD_HOST_SPEED_UART_230400   (230400UL)

UART 230400 Baud.

◆ PTX_IOTRD_HOST_SPEED_UART_28800

#define PTX_IOTRD_HOST_SPEED_UART_28800   (28800UL)

UART 28800 Baud.

◆ PTX_IOTRD_HOST_SPEED_UART_3000000

#define PTX_IOTRD_HOST_SPEED_UART_3000000   (3000000UL)

UART 3000000 Baud.

◆ PTX_IOTRD_HOST_SPEED_UART_38400

#define PTX_IOTRD_HOST_SPEED_UART_38400   (38400UL)

UART 38400 Baud.

◆ PTX_IOTRD_HOST_SPEED_UART_460800

#define PTX_IOTRD_HOST_SPEED_UART_460800   (460800UL)

UART 460800 Baud.

◆ PTX_IOTRD_HOST_SPEED_UART_57600

#define PTX_IOTRD_HOST_SPEED_UART_57600   (57600UL)

UART 57600 Baud.

◆ PTX_IOTRD_HOST_SPEED_UART_921600

#define PTX_IOTRD_HOST_SPEED_UART_921600   (921600UL)

UART 921600 Baud.

◆ PTX_IOTRD_HOST_SPEED_UART_9600

#define PTX_IOTRD_HOST_SPEED_UART_9600   (9600UL)

UART 9600 Baud.

◆ PTX_IOTRD_HOST_SPEED_UART_MAX

#define PTX_IOTRD_HOST_SPEED_UART_MAX   PTX_IOTRD_HOST_SPEED_UART_3000000

UART Max. Speed/Bitrate

◆ PTX_IOTRD_MAX_EXTENSIONS

#define PTX_IOTRD_MAX_EXTENSIONS   (1u)

Max. amount of Extensions supported in parallel

◆ PTX_IOTRD_MAX_SUPPORTED_DEVICES

#define PTX_IOTRD_MAX_SUPPORTED_DEVICES   (uint8_t)50

Max. supported Cards / RF-Devices

◆ PTX_IOTRD_MAX_SUPPORTED_RF_PROTOCOLS

#define PTX_IOTRD_MAX_SUPPORTED_RF_PROTOCOLS   (uint8_t)4

Max. supported RF-Protocols

◆ PTX_IOTRD_PROT_ISO_DEP_ATS_MAX_SIZE

#define PTX_IOTRD_PROT_ISO_DEP_ATS_MAX_SIZE   (uint8_t)21

max. Length of Type-A ISO-DEP.ATS parameter

◆ PTX_IOTRD_PROT_ISO_DEP_ATTRIB_RES_MAX_SIZE

#define PTX_IOTRD_PROT_ISO_DEP_ATTRIB_RES_MAX_SIZE   (uint8_t)16

max. Length of Type-B ISO-DEP.ATTRIB_RES parameter

◆ PTX_IOTRD_PROT_NFC_DEP_ATR_RES_MAX_SIZE

#define PTX_IOTRD_PROT_NFC_DEP_ATR_RES_MAX_SIZE   (uint8_t)65

max. Length of Type-A/F NFC-DEP.ATR_RES parameter

◆ PTX_IOTRD_READER_INTERFACE_TYPE_I2C

#define PTX_IOTRD_READER_INTERFACE_TYPE_I2C   (uint8_t)3

(Host) Interfacce Type I2C

◆ PTX_IOTRD_READER_INTERFACE_TYPE_SPI

#define PTX_IOTRD_READER_INTERFACE_TYPE_SPI   (uint8_t)2

(Host) Interfacce Type SPI

◆ PTX_IOTRD_READER_INTERFACE_TYPE_UART

#define PTX_IOTRD_READER_INTERFACE_TYPE_UART   (uint8_t)1

(Host) Interfacce Type UART

◆ PTX_IOTRD_RF_BAILOUT_TECH_A

#define PTX_IOTRD_RF_BAILOUT_TECH_A   (uint8_t)1

RF-Discover Parameter: Bail out after Technology A

◆ PTX_IOTRD_RF_BAILOUT_TECH_B

#define PTX_IOTRD_RF_BAILOUT_TECH_B   (uint8_t)2

RF-Discover Parameter: Bail out after Technology B

◆ PTX_IOTRD_RF_BAILOUT_TECH_F

#define PTX_IOTRD_RF_BAILOUT_TECH_F   (uint8_t)4

RF-Discover Parameter: Bail out after Technology F

◆ PTX_IOTRD_RF_DEACTIVATION_SLEEP_DONE

#define PTX_IOTRD_RF_DEACTIVATION_SLEEP_DONE   (uint8_t)1

RF-Deactivation sleep is done

◆ PTX_IOTRD_RF_DEACTIVATION_SLEEP_ONGOING

#define PTX_IOTRD_RF_DEACTIVATION_SLEEP_ONGOING   (uint8_t)0

RF-Deactivation sleep is ongoing

◆ PTX_IOTRD_RF_DEACTIVATION_TYPE_DISCOVER

#define PTX_IOTRD_RF_DEACTIVATION_TYPE_DISCOVER   (uint8_t)1

Rf-Deactivation Type 1 - Restart RF-Discovery

◆ PTX_IOTRD_RF_DEACTIVATION_TYPE_DISCOVER_PROTOCOL

#define PTX_IOTRD_RF_DEACTIVATION_TYPE_DISCOVER_PROTOCOL   (uint8_t)6

Rf-Deactivation Type 6 - Use protocol-specific Deactivation, RF-Discovery started afterwards

◆ PTX_IOTRD_RF_DEACTIVATION_TYPE_IDLE

#define PTX_IOTRD_RF_DEACTIVATION_TYPE_IDLE   (uint8_t)0

Rf-Deactivation Type 0 - Turn off RF-field

◆ PTX_IOTRD_RF_DEACTIVATION_TYPE_IDLE_PROTOCOL

#define PTX_IOTRD_RF_DEACTIVATION_TYPE_IDLE_PROTOCOL   (uint8_t)5

Rf-Deactivation Type 5 - Use protocol-specific Deactivation, IDLE afterwards

◆ PTX_IOTRD_RF_DEACTIVATION_TYPE_NO_RF_RESET

#define PTX_IOTRD_RF_DEACTIVATION_TYPE_NO_RF_RESET   (uint8_t)4

Rf-Deactivation Type 4 - Common RF Deactivate but no Field Reset

◆ PTX_IOTRD_RF_DEACTIVATION_TYPE_SLEEP

#define PTX_IOTRD_RF_DEACTIVATION_TYPE_SLEEP   (uint8_t)2

Rf-Deactivation Type 2 - Put remote device to sleep (blocking)

◆ PTX_IOTRD_RF_DEACTIVATION_TYPE_SLEEP_NON_BLOCKING

#define PTX_IOTRD_RF_DEACTIVATION_TYPE_SLEEP_NON_BLOCKING   (uint8_t)3

Rf-Deactivation Type 3 - Put remote device to sleep (non-blocking)

◆ PTX_IOTRD_RF_DISCOVER_STATUS_CARD_ACTIVE

#define PTX_IOTRD_RF_DISCOVER_STATUS_CARD_ACTIVE   (uint8_t)1

Rf-Discover State. Card Activated

◆ PTX_IOTRD_RF_DISCOVER_STATUS_DISCOVER_DONE

#define PTX_IOTRD_RF_DISCOVER_STATUS_DISCOVER_DONE   (uint8_t)3

Rf-Discover State. Cards discover process finished

◆ PTX_IOTRD_RF_DISCOVER_STATUS_DISCOVER_RUNNING

#define PTX_IOTRD_RF_DISCOVER_STATUS_DISCOVER_RUNNING   (uint8_t)2

Rf-Discover State. Cards being discovered

◆ PTX_IOTRD_RF_DISCOVER_STATUS_NO_CARD

#define PTX_IOTRD_RF_DISCOVER_STATUS_NO_CARD   (uint8_t)0

Rf-Discover State. No Card found in discovery loop

◆ PTX_IOTRD_RF_DISCOVER_STATUS_UNDEFINED

#define PTX_IOTRD_RF_DISCOVER_STATUS_UNDEFINED   (uint8_t)0xFF

Rf-Discover State. Undefined

◆ PTX_IOTRD_TECH_A_NFCID1_MAX_SIZE

#define PTX_IOTRD_TECH_A_NFCID1_MAX_SIZE   (uint8_t)10

max. Length of NFCID1 parameter

◆ PTX_IOTRD_TECH_A_SENSRES_MAX_SIZE

#define PTX_IOTRD_TECH_A_SENSRES_MAX_SIZE   (uint8_t)2

max. Length of Type-A SENS_RES parameter

◆ PTX_IOTRD_TECH_B_SENSB_MAX_SIZE

#define PTX_IOTRD_TECH_B_SENSB_MAX_SIZE   (uint8_t)13

max. Length of SENSB_RES parameter

◆ PTX_IOTRD_TECH_EXT_PARAM_MAX_SIZE

#define PTX_IOTRD_TECH_EXT_PARAM_MAX_SIZE   (uint8_t)32

max. Length of Extension Card Parameters

◆ PTX_IOTRD_TECH_F_SENSF_MAX_SIZE

#define PTX_IOTRD_TECH_F_SENSF_MAX_SIZE   (uint8_t)20

max. Length of SENSF_RES parameter

◆ PTX_IOTRD_TECH_V_UID_MAX_SIZE

#define PTX_IOTRD_TECH_V_UID_MAX_SIZE   (uint8_t)8

max. Length of UID TYPE V

◆ PTX_RF_ERROR_NTF_CODE_ERR_COMM_INTERFACE

#define PTX_RF_ERROR_NTF_CODE_ERR_COMM_INTERFACE   (uint8_t)0xFE

Host interface communication error NTF code: communication channel error

◆ PTX_RF_ERROR_NTF_CODE_ERR_EMV_COLL

#define PTX_RF_ERROR_NTF_CODE_ERR_EMV_COLL   (uint8_t)0x11

RF error NTF code: EMV coll error

◆ PTX_RF_ERROR_NTF_CODE_ERR_PROTOCOL

#define PTX_RF_ERROR_NTF_CODE_ERR_PROTOCOL   (uint8_t)0x14

RF error NTF code: Protocol error

◆ PTX_RF_ERROR_NTF_CODE_ERR_TIMEOUT

#define PTX_RF_ERROR_NTF_CODE_ERR_TIMEOUT   (uint8_t)0x12

RF error NTF code: Timeout error

◆ PTX_RF_ERROR_NTF_CODE_ERR_TRANSMISSION

#define PTX_RF_ERROR_NTF_CODE_ERR_TRANSMISSION   (uint8_t)0x13

RF error NTF code: Transmission error

◆ PTX_RF_ERROR_NTF_CODE_NO_ERROR

#define PTX_RF_ERROR_NTF_CODE_NO_ERROR   (uint8_t)0x00

RF error NTF code: No error

◆ PTX_RF_ERROR_NTF_CODE_UNKNOWN_ERROR

#define PTX_RF_ERROR_NTF_CODE_UNKNOWN_ERROR   (uint8_t)0xFF

RF error NTF code: Unknown error

◆ PTX_RF_ERROR_NTF_CODE_WARNING_PA_OVERCURRENT_LIMIT

#define PTX_RF_ERROR_NTF_CODE_WARNING_PA_OVERCURRENT_LIMIT   (uint8_t)0x09

RF error NTF code: Warning PA overcurrent error

◆ PTX_STATUS_ERR_RF_NTF

#define PTX_STATUS_ERR_RF_NTF   (uint16_t)34

RF Timeout or Transmission Error (Protocol).

◆ PTX_STATUS_ERR_RF_TIMEOUT

#define PTX_STATUS_ERR_RF_TIMEOUT   (uint16_t)5

RF Timeout Error (Raw-Data).

◆ PTX_STATUS_FILE_NOT_FOUND

#define PTX_STATUS_FILE_NOT_FOUND   (uint16_t)18

RF- or System-configuration file not found.

◆ PTX_STATUS_OK

#define PTX_STATUS_OK   (uint16_t)0

No error. Operation successful.

◆ PTX_STATUS_UNDEFINED

#define PTX_STATUS_UNDEFINED   (uint16_t)0xFFFF

Undefined/Unknown error.

◆ PTX_SYSTEM_STATUS_ERR_OVERCURRENT

#define PTX_SYSTEM_STATUS_ERR_OVERCURRENT   (uint8_t)1

System Status Overcurrent error.

◆ PTX_SYSTEM_STATUS_ERR_TEMPERATURE

#define PTX_SYSTEM_STATUS_ERR_TEMPERATURE   (uint8_t)2

System Status Temperature error.

◆ PTX_SYSTEM_STATUS_OK

#define PTX_SYSTEM_STATUS_OK   (uint8_t)0

System Status OK.

Typedef Documentation

◆ ptxIoTRd_DiscConfigTypeFPollCmdParams_t

Custom Type-F Polling Command Parameters.

Note: Overwriting the internal default parameters may lead to inconsistencies with NFC Forum compliance!

Enumeration Type Documentation

◆ ptxIoTRd_CheckPresType

Type of Check Presence Mechanism.

Enumerator
PresCheck_A 

Mechanism A. Presence Check. ISO-DEP NACK.

PresCheck_B 

Mechanism B. Presence Check. ISO-DEP EMPTY FRAME.

◆ ptxIoTRd_RSSI_Mode

RSSI Mode.

Enumerator
RSSI_Mode_Enabled 

Enable RSSI-Mode

RSSI_Mode_Disabled 

Disable RSSI-Mode

Function Documentation

◆ ptxIoTRd_Activate_Card()

PTX_API_LIBFUNC uint16_t ptxIoTRd_Activate_Card ( void * stackComp,
ptxIoTRd_CardParams_t * cardParams,
ptxIoTRd_CardProtocol_t protocol )

Activates a specific card.

This function has to be used to activate / select a specific card in case multiple cards are available in the card registry.

Parameters
[in]stackCompPointer to an initialized instance of the main component in the stack.
[in]cardParamsPointer to Card (-parameters) to activate.
[in]protocol(RF-)Protocol to use.
Returns
Status, indicating whether the operation was successful.

◆ ptxIoTRd_Allocate_Stack()

PTX_API_LIBFUNC void * ptxIoTRd_Allocate_Stack ( void )

Reserve memory for the main component of the stack, and return the allocated-memory as pointer to the caller.

This function must be called before any other API function. The value returned has to be kept by caller and be provided to all other API functions as input parameter.

Returns
Allocated and not initialized instance of the main component in the stack.

◆ ptxIoTRd_Bits_Exchange()

PTX_API_LIBFUNC uint16_t ptxIoTRd_Bits_Exchange ( void * stackComp,
uint8_t * tx,
uint8_t * txPar,
uint32_t txLength,
uint8_t * rx,
uint8_t * rxPar,
uint32_t * rxLength,
uint32_t * numTotBits,
uint32_t msAppTimeout )

Exchanges Type-A RF-technology aligned raw RF bit-streams in state "DATA EXCHANGE" based on Cards / Tags supporting the T2T protocol.

This function is a blocking function; It means that I will return either when a raw bitstream is received or when an Error occurs (e.g. TimeOut Error, RfError ).

Parameters
[in]stackCompPointer to an initialized instance of the main component in the stack.
[in]txBuffer containing payload bytes to be sent.
[in]txParBuffer containing parity bits to be sent.
[in]txLengthLength of /ref tx and /ref txPar. Lenght must be the same for /ref tx and /ref txPar.
[out]rxBuffer provided by caller to be filled in with payload bytes.
[out]rxParBuffer provided by caller to be filled in with parity bits.
[in,out]rxLengthAs input parameter, capacity of /ref rx and /ref rxPar. As output parameter, bytes written on /ref rx and /ref rxPar.
[out]numTotBitsTotal number of bits processed.
[in]msAppTimeoutApplication-timeout in ms that the function is going to wait for receiving bitstream from the card.
Returns
Status, indicating whether the operation was successful.

◆ ptxIoTRd_Bits_Exchange_Mode()

PTX_API_LIBFUNC uint16_t ptxIoTRd_Bits_Exchange_Mode ( void * stackComp,
uint8_t enable )

Enable or disable Bits Exchange Option.

Note
This function enables/disables the Type-A bit-exchange mode in state "DATA EXCHANGE" (sometimes also referred to as state POLL_ACTIVE). This mode can be used only for Cards / Tags which supports the RF-protocol "T2T". The bit-exchange mode works stand-alone i.e. it needs to be enabled before usage and disabled after usage - at least before the next call to /ref ptxIoTRd_Data_Exchange.
Parameters
[in]stackCompPointer to an initialized instance of the main component in the stack.
[in]enableIf 1 = enable, 0 = disable. Other value error.
Returns
Status, indicating whether the operation was successful.

◆ ptxIoTRd_Close_Stack()

PTX_API_LIBFUNC uint16_t ptxIoTRd_Close_Stack ( void * stackComp,
char * logFile )

Close the stack.

This function closes the stack and release the resources used. It has to be called last function before stop using the library. It writes in the file the internal log of the library.

Parameters
[in]stackCompPointer to an allocated instance of the main component in the stack.
[in]logFilePath to the log file. If NULL, no log-file will be created.
Returns
Status, indicating whether the operation was successful.

◆ ptxIoTRd_ConfigHBR()

PTX_API_LIBFUNC uint16_t ptxIoTRd_ConfigHBR ( void * stackComp,
ptxIoTRd_HBRConfig_t * configParams )

Configures HBR.

This function allows to configure HBR parameters

Parameters
[in]stackCompPointer to an initialized instance of the main component in the stack.
[in]configParamsPointer to configurations.
Returns
Status, indicating whether the operation was successful.

◆ ptxIoTRd_Data_Exchange()

PTX_API_LIBFUNC uint16_t ptxIoTRd_Data_Exchange ( void * stackComp,
uint8_t * tx,
uint32_t txLength,
uint8_t * rx,
uint32_t * rxLength,
uint32_t msAppTimeout )

Exchange data with an already activated card.

This function is blocking function, it means that I will return either when a response is received or when the TimeOut provided elapses.

Note
In case the ISO- or NFC-DEP protocol is used, the system takes internally care of the timeout when the reader communicates with a card or remote device. In this case the caller has still to provide a meaningful value (e.g. multiple seconds). If a card reported a max. timeout of less than a second, the function will return after this timeout has expired even if the timeout parameter has been set to e.g. 5 seconds.
Parameters
[in]stackCompPointer to an initialized instance of the main component in the stack.
[in]txBuffer containing the data to send.
[in]txLengthLength of "tx".
[out]rxPointer to buffer where the data will be received.
[in,out]rxLengthAs input, capacity of "rx". As output, actual number of bytes written on "rx".
[in]msAppTimeoutApplication-timeout in ms that the function is going to wait for receiving data from the card.
Returns
Status, indicating whether the operation was successful.

◆ ptxIoTRd_DeRegister_Extension()

PTX_API_LIBFUNC uint16_t ptxIoTRd_DeRegister_Extension ( void * stackComp,
uint8_t extensionID )

De-Register an IoT-Extension (Prototype/RFU).

Parameters
[in]stackCompPointer to an initialized instance of the main component in the stack.
[in]extensionIDID of Extension to be de-registered within component.
Returns
Status, indicating whether the operation was successful. See ptxStatus_t.

◆ ptxIoTRd_Enable_RT_Log()

PTX_API_LIBFUNC uint16_t ptxIoTRd_Enable_RT_Log ( void * stackComp,
uint8_t mode,
const char * logFile )

Enables / Disables the Realtime-Logging Feature i.e. every logging-entry will be immediately written to a file.

Caller has to provide a buffer of at least 512 bytes length.

Parameters
[in]stackCompPointer to an initialized instance of the main component in the stack.
[in]modeEnables (value != 0) or disables (value == 0) Reatlime-Logging Feature.
[in]logFilePath to the log file.
Returns
Status, indicating whether the operation was successful.

◆ ptxIoTRd_Get_Card_Registry()

PTX_API_LIBFUNC uint16_t ptxIoTRd_Get_Card_Registry ( void * stackComp,
ptxIoTRd_CardRegistry_t ** cardRegistry )

Access the internal card registry.

This function can be used to access the internal card registry to retrieve a cards detailed information.

Parameters
[in]stackCompPointer to an initialized instance of the main component in the stack.
[out]cardRegistryPointer to a pointer holding the internal card registry.
Returns
Status, indicating whether the operation was successful.

◆ ptxIoTRd_Get_HCE_Component()

ptxStatus_t ptxIoTRd_Get_HCE_Component ( void * stackComp,
ptxHCE_t ** hceComp )

Retrieves the HCE component from the stack.

Parameters
[in]stackCompPointer to the initialised main component in the stack
[out]hceCompPointer to store the reference to the component in

◆ ptxIoTRd_Get_Revision_Info()

PTX_API_LIBFUNC uint16_t ptxIoTRd_Get_Revision_Info ( void * stackComp,
ptxIoTRd_RevisionType_t revisionType,
uint32_t * revisionInfo )

Get various revisions of system (C-Stack, DFY-Code/-Toolchain, Chip-ID, Local changes, Product-ID etc.).

Note: Chip-ID can only be called after successful execution of "ptxIoTRd_Init_NSC", otherwise ID is set to 0.

Note: Product-ID can only be called after successful execution of "ptxIoTRd_Init_NSC", otherwise ID is set to 0xFF.

Parameters
[in]stackCompPointer to an initialized instance of the main component in the stack.
[in]revisionTypeType of Revision.
[out]revisionInfoRevision information. Product-ID: 0x00: PTX100x 0x01: PTX105x 0x02: PTX130x 0xFF: Unknown/Invalid Product-ID Others: RFU
Returns
Status, indicating whether the operation was successful. See ptxStatus_t.

◆ ptxIoTRd_Get_RSSI_Value()

PTX_API_LIBFUNC uint16_t ptxIoTRd_Get_RSSI_Value ( void * stackComp,
uint16_t * rssiValue )

This function reads the current RSSI-value.

To call this function properly, the RSSI-mode needs to be enabled upfront via ptxIoTRd_Set_RSSI_Mode and disabled afterwards using the same function.

Parameters
[in]stackCompPointer to an initialized instance of the main component in the stack.
[out]rssiValueMeasured RSSI-Value
Returns
Status, indicating whether the operation was successful.

◆ ptxIoTRd_Get_Status_Info()

PTX_API_LIBFUNC uint16_t ptxIoTRd_Get_Status_Info ( void * stackComp,
ptxIoTRd_StatusType_t statusType,
uint8_t * statusInfo )

Get various status- and state-information.

This function represents a common getter-function to check the status of

  • the overall System: This status indicates whether the PTX1xxR is operational or if a critical system error like overcurrent- or temperature-error occurred. In case of an error, the system must be restarted via a call to "ptxIoTRd_SWReset".
  • the RF-Discovery: This status indicates whether the RF-Discovery procedure has discovered a card or if (for example) an EMV collision occurred.
  • the status of DEACTIVATE(SLEEP_NON_BLOCKING): This status indicates whether the requested halt/sleep procedure (non-blocking) is finished.
Parameters
[in]stackCompPointer to an initialized instance of the main component in the stack.
[in]statusTypeDefines type of status / state info to get.
[out]statusInfoStatus / State info.
StatusType_System (General PTX1K System-State):
0x00 = PTX1xxR Operational / OK.
0x01 = PTX1xxR Halted => Overcurrent Error.
0x02 = PTX1xxR Halted => Temperature Error.
StatusType_Discover (Status of RF-Discovery procedure):
0x00 = No card discovered
0x01 = Card found and activated
0x02 = Multiple cards found, discovery ongoing
0x03 = Multiple cards found, discovery finished - user needs to select which card to activate
StatusType_DeactivateSleep (Status of DEACTIVATE(SLEEP_NON_BLOCKING)):
0x00 = Deactivate (Sleep non-blocking) operation ongoing / not finished.
0x01 = Deactivate (Sleep non-blocking) operation finished.
StatusType_LastRFError (Last received RF-Error):
0x00 = No Error.
0xFF = Unknown Error.
0x09 = PA Overcurrent limiter activated.
0x11 = RF Collision error (valid for EMVCo poll mode).
0x12 = RF Timeout error.
0x13 = RF Transmission error (CRC/Parity).
0x14 = RF Protocol error.
Others = RFU.
StatusType_HCE_Discover_State (Status of HCE Activation status):
0x01 = Activated in Type-A Listen-mode.
0x00 = Listen-mode not activated/active.
StatusType_LPCDNtfCounter (Number of received LPCD-Notifications):
Returns
Status, indicating whether the operation was successful.

◆ ptxIoTRd_Get_System_Info()

PTX_API_LIBFUNC uint16_t ptxIoTRd_Get_System_Info ( void * stackComp,
ptxIoTRd_SysInfoType_t infoType,
uint8_t * infoBuffer,
uint32_t * infoBufferLength )

Get System-internal Information.

This function is used to retrieve system internal information (mostly related to HW-settings). Currently Supported are: a) VDPA-Calibration Result..: Number of desired calibration-cycles to be stored at infoBuffer[0] prior to call

Parameters
[in]stackCompPointer to an initialized instance of the main component in the stack.
[in]infoTypeRequested type of information.
[out]infoBufferPointer to buffer where information shall be stored.
[in,out]infoBufferLengthSize of buffer (in), Length of information (out)
Returns
Status, indicating whether the operation was successful.

◆ ptxIoTRd_Init_NSC()

PTX_API_LIBFUNC uint16_t ptxIoTRd_Init_NSC ( void * stackComp,
ptxIoTRd_NSCInitConfig_t * initConfig )

Initialize NSC.

This function initializes and configures NFC hardware.

Parameters
[in]stackCompPointer to an initialized instance of the main component in the stack.
[in]initConfigPointer to initialization structure.
Returns
Status, indicating whether the operation was successful.

◆ ptxIoTRd_Init_Stack()

PTX_API_LIBFUNC uint16_t ptxIoTRd_Init_Stack ( void * stackComp,
ptxIoTRd_InitStack_Params_t * initStackParams )

Initialize the stack.

This function has to be called after ptxIoTRd_Allocate_Stack and before other API functions.

Parameters
[in]stackCompPointer to an allocated instance of the main component in the stack.
[in]initStackParamsStruct containing the initialization parameters
Returns
Status, indicating whether the operation was successful.

◆ ptxIoTRd_Initiate_Discovery()

PTX_API_LIBFUNC uint16_t ptxIoTRd_Initiate_Discovery ( void * stackComp,
ptxIoTRd_DiscConfig_t * discConfig )

Initiate RF-Discovery according to NFC-Forum.

This function starts the RF-Discovery procedure as defined in the NFC-Forum.

Parameters
[in]stackCompPointer to an initialized instance of the main component in the stack.
[in]discConfigPointer to RF-Discovery structure (if set to NULL - default values will be used).
Returns
Status, indicating whether the operation was successful.

◆ ptxIoTRd_Reader_Deactivation()

PTX_API_LIBFUNC uint16_t ptxIoTRd_Reader_Deactivation ( void * stackComp,
uint8_t deactivationType )

Perform generic reader deactivation.

This function performs three types of deactivation. Value 1: The Reader will automatically restart the RF-Discover procedure. Value 2: The Reader tries to put the remote Target into Sleep-state (blocking). Value 3: The Reader tries to put the remote Target into Sleep-state (non-blocking, Status to be polled via Get_Status-function). Others: The Reader will turn off the RF-Field and move back to IDLE-state

Note: If the Reader has already successfully performed deactivation into Sleep-state (the Target is currently in Sleep-state), and this API is again called with deactivationType = Sleep, the API call shall now fail with RF Field turned off and the system turned into IDLE state.

Parameters
[in]stackCompPointer to an initialized instance of the main component in the stack.
[in]deactivationType1 = Restart RF-Discover, 2 = Sleep (blocking), 3 = Sleep (non-blocking), Others = IDLE
Returns
Status, indicating whether the operation was successful.

◆ ptxIoTRd_Register_Extension()

PTX_API_LIBFUNC uint16_t ptxIoTRd_Register_Extension ( void * stackComp,
uint8_t extensionID,
ptxIoTRd_Extension_t * extension )

Register an IoT-Extension (Prototype/RFU).

Parameters
[in]stackCompPointer to an initialized instance of the main component in the stack.
[in]extensionIDID of Extension to be registered within component.
[in]extensionPointer to Extension parameter structure.
Returns
Status, indicating whether the operation was successful. See ptxStatus_t.

◆ ptxIoTRd_RF_PresenceCheck()

PTX_API_LIBFUNC uint16_t ptxIoTRd_RF_PresenceCheck ( void * stackComp,
ptxIoTRd_CheckPresType_t presCheckType )

Check the presence of Activated Card.

Note
This function shall be called once that the card has been activated.
Parameters
[in]stackCompPointer to an initialized instance of the main component in the stack.
[in]presCheckTypeType of presence check mechanism on ISO-DEP protocol. If higher protocol is not ISO-DEP this parameter is ignored.
Returns
Status, indicating whether the operation was successful. See ptxStatus_t.

◆ ptxIoTRd_Set_Power_Mode()

PTX_API_LIBFUNC uint16_t ptxIoTRd_Set_Power_Mode ( void * stackComp,
uint8_t newPowerMode )

Set reader power mode.

This function puts the reader into one of the predefined power modes, to cut down energy consumption. Default mode is Active, which enables all the features and peripherals. In Active mode device exhibits full operability with highest power consumption. StandBy power mode is the mode with the lowest power consumption, with most of the features turned off. No RF communication possible. WakeUp from StandBy mode is possible only via communication interface.

Parameters
[in]stackCompPointer to an initialized instance of the main component in the stack.
[in]newPowerModePowerMode to be set: 0x00 = Active mode (WakeUp is automatically performed if device is in StandBy). 0x01 = StandBy mode.
Returns
Status, indicating whether the operation was successful.

◆ ptxIoTRd_Set_RSSI_Mode()

PTX_API_LIBFUNC uint16_t ptxIoTRd_Set_RSSI_Mode ( void * stackComp,
ptxIoTRd_RSSI_Mode_t rssiMode,
uint8_t * rssiRefreshPeriodInt )

This function puts the system / stack into RSSI-mode or deactivates the RSSI-mode.

The function takes an optional parameter "rssiRefreshPeriod" which determines the internal refresh-rate for the RSSI-measurement according to the equation "Refresh Rate in ms = 2 ^ (rssiRefreshPeriodInt - 1). If the parameter is not used (NULL), a default value of 1 ms is used.

Parameters
[in]stackCompPointer to an initialized instance of the main component in the stack.
[in]rssiModeDefines type of status / state info to get.
[in]rssiRefreshPeriodIntRefresh Period Integer (Valid Range 1 - 16 or NULL (= default value of 1 ms).
Returns
Status, indicating whether the operation was successful.

◆ ptxIoTRd_SWReset()

PTX_API_LIBFUNC uint16_t ptxIoTRd_SWReset ( void * stackComp)

SW Reset.

This function performs a Soft Reset operation and waits for the timeout to elapse as there is no response from the chip.

Parameters
[in]stackCompPointer to an initialized instance of the main component in the stack.
Returns
Status, indicating whether the operation was successful.

◆ ptxIoTRd_T3T_SENSFRequest()

PTX_API_LIBFUNC uint16_t ptxIoTRd_T3T_SENSFRequest ( void * stackComp,
uint16_t systemCode,
uint8_t requestCode,
uint8_t tsn,
uint8_t * rx,
uint32_t * rxLength,
uint32_t msAppTimeout )

This function sends a polling-command (SENSF_REQ) to an already activated FeliCa/T3T card.

This function is blocking function, it means that it will return either when a response is received or when the provided timeout elapsed.

Parameters
[in]stackCompPointer to an initialized instance of the main component in the stack.
[in]systemCodeSystem-Code.
[in]requestCodeRequest-Code.
[in]tsnTimeslot-Number.
[out]rxPointer to buffer where the APDU will be received.
[in,out]rxLengthAs input, capacity of "rx". As output, actual number of bytes written on "rx".
[in]msAppTimeoutApplication-timeout in ms that the function is going to wait for receiving data from the card.
Returns
Status, indicating whether the operation was successful.

◆ ptxIoTRd_T5T_IsolatedEoF()

PTX_API_LIBFUNC uint16_t ptxIoTRd_T5T_IsolatedEoF ( void * stackComp,
uint8_t * rx,
uint32_t * rxLength,
uint32_t msAppTimeout )

This function sends EoF command to a T5T activated card and waits for an answer.

This function is blocking function, it means that I will return either when a response is received or when the TimeOut provided elapses.

Parameters
[in]stackCompPointer to an initialized instance of the main component in the stack.
[out]rxPointer to buffer where the APDU will be received.
[in,out]rxLengthAs input, capacity of "rx". As output, actual number of bytes written on "rx".
[in]msAppTimeoutApplication-timeout in ms that the function is going to wait for receiving data from the card.
Returns
Status, indicating whether the operation was successful.

◆ ptxIoTRd_TempSensor_Calibration()

PTX_API_LIBFUNC uint16_t ptxIoTRd_TempSensor_Calibration ( void * stackComp,
uint8_t Tambient,
uint8_t * Tshutdown )

Perform PTX1K integrated temperature sensor calibration and calculate calibrated temperature shutdown temperature. The outcome of this process is the calibrated temperature shutdown temperature value, returned in Tshutdown parameter. This value is used in every further call to ptxIoTRd_Init_NSC.

The function ptxIoTRd_TempSensor_Calibration starts Temperature offset calculation, which has to be performed in controlled environment conditions - at a defined ambient temperature (typically in production at 25 degrees Celsius). Offset calculation has to be done at least once for every PTX1K IC. Expected over-temperature protection treshold has to be re-calculated with that offset. This is done automatically within this function call. Temperature treshold is set in PTX1K with ptxIoTRd_Init_NSC.

RECOMMENDATION: call ptxIoTRd_TempSensor_Calibration and store the result (compensated Tsht) for future use. Then, reuse the value in every further IoTRd Init procedure. No need to restart the whole Temperature Calibration procedure all over again.

Parameters
[in]stackCompPointer to an initialized instance of the main component in the stack.
[in]TambientAmbient temperature to be used in calculations. This is expected environment temperature when calibration takes place. Typically it is 25 degrees Celsius, but it is left to the user to decide.
[in,out]TshutdownInput: expected value of over-temperature treshold. Output: the result of sensor calibration - calibrated over-temperature treshold value.
Returns
Status, indicating whether the operation was successful.

◆ ptxIoTRd_Update_ChipConfig()

PTX_API_LIBFUNC uint16_t ptxIoTRd_Update_ChipConfig ( void * stackComp,
uint8_t nrConfigs,
ptxIoTRd_ChipConfig_t * configParams )

Updates the RF- and System-Configuration parameters of the NFC hardware.

This function allows to change RF- and System-Configuration parameters at runtime.

Parameters
[in]stackCompPointer to an initialized instance of the main component in the stack.
[in]nrConfigsNumber of chip configurations.
[in]configParamsPointer to chip configuration structures.
Returns
Status, indicating whether the operation was successful.