Crate nfc1_sys

Crate nfc1_sys 

Source

Structs§

nfc_barcode_info
@struct nfc_barcode_info @brief Thinfilm NFC Barcode information
nfc_context
@struct nfc_context @brief NFC library context Struct which contains internal options, references, pointers, etc. used by library
nfc_dep_info
@struct nfc_dep_info @brief NFC target information in D.E.P. (Data Exchange Protocol) see ISO/IEC 18092 (NFCIP-1)
nfc_device
@struct nfc_device @brief NFC device information
nfc_driver
nfc_felica_info
@struct nfc_felica_info @brief NFC FeLiCa tag information
nfc_iso14443a_info
@struct nfc_iso14443a_info @brief NFC ISO14443A tag (MIFARE) information
nfc_iso14443b2ct_info
@struct nfc_iso14443b2ct_info @brief NFC ISO14443-2B ASK CTx tag information
nfc_iso14443b2sr_info
@struct nfc_iso14443b2sr_info @brief NFC ISO14443-2B ST SRx tag information
nfc_iso14443b_info
@struct nfc_iso14443b_info @brief NFC ISO14443B tag information
nfc_iso14443bi_info
@struct nfc_iso14443bi_info @brief NFC ISO14443B’ tag information
nfc_iso14443biclass_info
@struct nfc_iso14443biclass_info @brief NFC ISO14443BiClass tag information
nfc_jewel_info
@struct nfc_jewel_info @brief NFC Jewel tag information
nfc_modulation
@struct nfc_modulation @brief NFC modulation structure
nfc_target
@struct nfc_target @brief NFC target structure
nfc_user_defined_device
pn53x_command
pn53x_data
@internal @struct pn53x_data @brief PN53x data structure
pn53x_io
@internal @struct pn53x_io @brief PN53x I/O structure

Constants§

ISO7816_C_APDU_COMMAND_HEADER_LEN
ISO7816_SHORT_APDU_MAX_DATA_LEN
ISO7816_SHORT_C_APDU_MAX_LEN
ISO7816_SHORT_C_APDU_MAX_OVERHEAD
ISO7816_SHORT_R_APDU_MAX_LEN
ISO7816_SHORT_R_APDU_RESPONSE_TRAILER_LEN
NFC_BUFSIZE_CONNSTRING
NFC_ECHIP
NFC_EDEVNOTSUPP
NFC_EINVARG
NFC_EIO
NFC_EMFCAUTHFAIL
NFC_ENOTIMPL
NFC_ENOTSUCHDEV
NFC_EOPABORTED
NFC_EOVFLOW
NFC_ERFTRANS
NFC_ESOFT
NFC_ETGRELEASED
NFC_ETIMEOUT
NFC_LOG_GROUP_CHIP
NFC_LOG_GROUP_COM
NFC_LOG_GROUP_CONFIG
NFC_LOG_GROUP_DRIVER
NFC_LOG_GROUP_GENERAL
NFC_LOG_GROUP_LIBUSB
NFC_LOG_PRIORITY_DEBUG
NFC_LOG_PRIORITY_ERROR
NFC_LOG_PRIORITY_INFO
NFC_LOG_PRIORITY_NONE
NFC_SUCCESS
PN53X_CACHE_REGISTER_MAX_ADDRESS
PN53X_CACHE_REGISTER_MIN_ADDRESS
PN53X_CACHE_REGISTER_SIZE
PN53X_REG_CIU_AnalogTest
PN53X_REG_CIU_AutoTest
PN53X_REG_CIU_BitFraming
PN53X_REG_CIU_CRCResultLSB
PN53X_REG_CIU_CRCResultMSB
PN53X_REG_CIU_CWGsP
PN53X_REG_CIU_Coll
PN53X_REG_CIU_CommIEn
PN53X_REG_CIU_CommIrq
PN53X_REG_CIU_Command
PN53X_REG_CIU_Control
PN53X_REG_CIU_Demod
PN53X_REG_CIU_DivIEn
PN53X_REG_CIU_DivIrq
PN53X_REG_CIU_Error
PN53X_REG_CIU_FIFOData
PN53X_REG_CIU_FIFOLevel
PN53X_REG_CIU_FelNFC1
PN53X_REG_CIU_FelNFC2
PN53X_REG_CIU_GsNOFF
PN53X_REG_CIU_GsNOn
PN53X_REG_CIU_ManualRCV
PN53X_REG_CIU_MifNFC
PN53X_REG_CIU_ModGsP
PN53X_REG_CIU_ModWidth
PN53X_REG_CIU_Mode
PN53X_REG_CIU_RFCfg
PN53X_REG_CIU_RFlevelDet
PN53X_REG_CIU_RxMode
PN53X_REG_CIU_RxSel
PN53X_REG_CIU_RxThreshold
PN53X_REG_CIU_SIC_CLK_en
PN53X_REG_CIU_Status1
PN53X_REG_CIU_Status2
PN53X_REG_CIU_TCounterVal_hi
PN53X_REG_CIU_TCounterVal_lo
PN53X_REG_CIU_TMode
PN53X_REG_CIU_TPrescaler
PN53X_REG_CIU_TReloadVal_hi
PN53X_REG_CIU_TReloadVal_lo
PN53X_REG_CIU_TestADC
PN53X_REG_CIU_TestBus
PN53X_REG_CIU_TestDAC1
PN53X_REG_CIU_TestDAC2
PN53X_REG_CIU_TestPinEn
PN53X_REG_CIU_TestPinValue
PN53X_REG_CIU_TestSel1
PN53X_REG_CIU_TestSel2
PN53X_REG_CIU_TxAuto
PN53X_REG_CIU_TxBitPhase
PN53X_REG_CIU_TxControl
PN53X_REG_CIU_TxMode
PN53X_REG_CIU_TxSel
PN53X_REG_CIU_TypeB
PN53X_REG_CIU_Version
PN53X_REG_CIU_WaterLevel
PN53X_REG_Control_switch_rng
PN53X_SFR_P3
PN53X_SFR_P7
PN53X_SFR_P3CFGA
PN53X_SFR_P3CFGB
PN53X_SFR_P7CFGA
PN53X_SFR_P7CFGB
PN53x_ACK_FRAME__LEN
PN53x_EXTENDED_FRAME__DATA_MAX_LEN
PN53x_EXTENDED_FRAME__OVERHEAD
PN53x_NORMAL_FRAME__DATA_MAX_LEN
PN53x_NORMAL_FRAME__OVERHEAD
nfc_baud_rate_NBR_106
nfc_baud_rate_NBR_212
nfc_baud_rate_NBR_424
nfc_baud_rate_NBR_847
nfc_baud_rate_NBR_UNDEFINED
nfc_dep_mode_NDM_ACTIVE
nfc_dep_mode_NDM_PASSIVE
nfc_dep_mode_NDM_UNDEFINED
nfc_mode_N_INITIATOR
nfc_mode_N_TARGET
nfc_modulation_type_NMT_BARCODE
nfc_modulation_type_NMT_DEP
nfc_modulation_type_NMT_END_ENUM
nfc_modulation_type_NMT_FELICA
nfc_modulation_type_NMT_ISO14443A
nfc_modulation_type_NMT_ISO14443B
nfc_modulation_type_NMT_ISO14443B2CT
nfc_modulation_type_NMT_ISO14443B2SR
nfc_modulation_type_NMT_ISO14443BI
nfc_modulation_type_NMT_ISO14443BICLASS
nfc_modulation_type_NMT_JEWEL
nfc_property_NP_ACCEPT_INVALID_FRAMES
If this option is enabled, frames that carry less than 4 bits are allowed. According to the standards these frames should normally be handles as invalid frames.
nfc_property_NP_ACCEPT_MULTIPLE_FRAMES
If the NFC device should only listen to frames, it could be useful to let it gather multiple frames in a sequence. They will be stored in the internal FIFO of the PN53X chip. This could be retrieved by using the receive data functions. Note that if the chip runs out of bytes (FIFO = 64 bytes long), it will overwrite the first received frames, so quick retrieving of the received data is desirable.
nfc_property_NP_ACTIVATE_CRYPTO1
The internal CRYPTO1 co-processor can be used to transmit messages encrypted. This option is automatically activated after a successful MIFARE Classic authentication.
nfc_property_NP_ACTIVATE_FIELD
This option can be used to enable or disable the electronic field of the NFC device.
nfc_property_NP_AUTO_ISO14443_4
This option can be used to enable or disable the auto-switching mode to ISO14443-4 is device is compliant. In initiator mode, it means that NFC chip will send RATS automatically when select and it will automatically poll for ISO14443-4 card when ISO14443A is requested. In target mode, with a NFC chip compliant (ie. PN532), the chip will emulate a 14443-4 PICC using hardware capability
nfc_property_NP_EASY_FRAMING
Use automatic frames encapsulation and chaining.
nfc_property_NP_FORCE_ISO14443_A
Force the chip to switch in ISO14443-A
nfc_property_NP_FORCE_ISO14443_B
Force the chip to switch in ISO14443-B
nfc_property_NP_FORCE_SPEED_106
Force the chip to run at 106 kbps
nfc_property_NP_HANDLE_CRC
Let the PN53X chip handle the CRC bytes. This means that the chip appends the CRC bytes to the frames that are transmitted. It will parse the last bytes from received frames as incoming CRC bytes. They will be verified against the used modulation and protocol. If an frame is expected with incorrect CRC bytes this option should be disabled. Example frames where this is useful are the ATQA and UID+BCC that are transmitted without CRC bytes during the anti-collision phase of the ISO14443-A protocol.
nfc_property_NP_HANDLE_PARITY
Parity bits in the network layer of ISO14443-A are by default generated and validated in the PN53X chip. This is a very convenient feature. On certain times though it is useful to get full control of the transmitted data. The proprietary MIFARE Classic protocol uses for example custom (encrypted) parity bits. For interoperability it is required to be completely compatible, including the arbitrary parity bits. When this option is disabled, the functions to communicating bits should be used.
nfc_property_NP_INFINITE_SELECT
The default configuration defines that the PN53X chip will try indefinitely to invite a tag in the field to respond. This could be desired when it is certain a tag will enter the field. On the other hand, when this is uncertain, it will block the application. This option could best be compared to the (NON)BLOCKING option used by (socket)network programming.
nfc_property_NP_TIMEOUT_ATR
Timeout between ATR_REQ and ATR_RES When the device is in initiator mode, a target is considered as mute if no valid ATR_RES is received within this timeout value. Default value for this property is 103 ms on PN53x based devices.
nfc_property_NP_TIMEOUT_COM
Timeout value to give up reception from the target in case of no answer. Default value for this property is 52 ms).
nfc_property_NP_TIMEOUT_COMMAND
Default command processing timeout Property value’s (duration) unit is ms and 0 means no timeout (infinite). Default value is set by driver layer
pn53x_modulation_PM_BARCODE_106
Thinfilm NFC Barcode (Not supported by PN531)
pn53x_modulation_PM_FELICA_212
JIS X 6319-4 (Sony Felica) http://en.wikipedia.org/wiki/FeliCa
pn53x_modulation_PM_FELICA_424
JIS X 6319-4 (Sony Felica) http://en.wikipedia.org/wiki/FeliCa
pn53x_modulation_PM_ISO14443A_106
ISO14443-A (NXP MIFARE) http://en.wikipedia.org/wiki/MIFARE
pn53x_modulation_PM_ISO14443B_106
ISO14443-B http://en.wikipedia.org/wiki/ISO/IEC_14443 (Not supported by PN531)
pn53x_modulation_PM_ISO14443B_212
ISO14443-B http://en.wikipedia.org/wiki/ISO/IEC_14443 (Not supported by PN531 nor PN532)
pn53x_modulation_PM_ISO14443B_424
ISO14443-B http://en.wikipedia.org/wiki/ISO/IEC_14443 (Not supported by PN531 nor PN532)
pn53x_modulation_PM_ISO14443B_847
ISO14443-B http://en.wikipedia.org/wiki/ISO/IEC_14443 (Not supported by PN531 nor PN532)
pn53x_modulation_PM_JEWEL_106
Jewel Topaz (Innovision Research & Development) (Not supported by PN531)
pn53x_modulation_PM_UNDEFINED
Undefined modulation
pn53x_operating_mode_IDLE
pn53x_operating_mode_INITIATOR
pn53x_operating_mode_TARGET
pn53x_power_mode_LOWVBAT
pn53x_power_mode_NORMAL
pn53x_power_mode_POWERDOWN
pn53x_target_mode_PTM_DEP_ONLY
Configure the PN53x to accept to be initialized only as DEP target
pn53x_target_mode_PTM_ISO14443_4_PICC_ONLY
Configure the PN532 to accept to be initialized only as ISO/IEC14443-4 PICC
pn53x_target_mode_PTM_NORMAL
Configure the PN53x to accept all initiator mode
pn53x_target_mode_PTM_PASSIVE_ONLY
Configure the PN53x to accept to be initialized only in passive mode
pn53x_target_type_PTT_DEP_ACTIVE_106
DEP active 106 kbps
pn53x_target_type_PTT_DEP_ACTIVE_212
DEP active 212 kbps
pn53x_target_type_PTT_DEP_ACTIVE_424
DEP active 424 kbps
pn53x_target_type_PTT_DEP_PASSIVE_106
DEP passive 106 kbps
pn53x_target_type_PTT_DEP_PASSIVE_212
DEP passive 212 kbps
pn53x_target_type_PTT_DEP_PASSIVE_424
DEP passive 424 kbps
pn53x_target_type_PTT_FELICA_212
FeliCa 212 kbps card
pn53x_target_type_PTT_FELICA_424
FeliCa 424 kbps card
pn53x_target_type_PTT_GENERIC_PASSIVE_106
Generic passive 106 kbps (ISO/IEC14443-4A, mifare, DEP)
pn53x_target_type_PTT_GENERIC_PASSIVE_212
Generic passive 212 kbps (FeliCa, DEP)
pn53x_target_type_PTT_GENERIC_PASSIVE_424
Generic passive 424 kbps (FeliCa, DEP)
pn53x_target_type_PTT_ISO14443_4A_106
Passive 106 kbps ISO/IEC 14443-4A
pn53x_target_type_PTT_ISO14443_4B_106
Passive 106 kbps ISO/IEC14443-4B
pn53x_target_type_PTT_ISO14443_4B_TCL_106
Passive 106 kbps ISO/IEC 14443-4B with TCL flag
pn53x_target_type_PTT_JEWEL_106
Innovision Jewel tag
pn53x_target_type_PTT_MIFARE
Mifare card
pn53x_target_type_PTT_UNDEFINED
Undefined target type
pn53x_type_PN53X
pn53x_type_PN531
pn53x_type_PN532
pn53x_type_PN533
pn53x_type_RCS360
pn532_sam_mode_PSM_DUAL_CARD
pn532_sam_mode_PSM_NORMAL
pn532_sam_mode_PSM_VIRTUAL_CARD
pn532_sam_mode_PSM_WIRED_CARD
scan_type_enum_INTRUSIVE
scan_type_enum_NOT_AVAILABLE
scan_type_enum_NOT_INTRUSIVE

Statics§

acr122_pcsc_driver
acr122_usb_driver
acr122s_driver
arygon_driver
pcsc_driver
pn53x_ack_frame
pn53x_commands
pn53x_nack_frame
pn53x_usb_driver
pn71xx_driver
pn532_i2c_driver
pn532_spi_driver
pn532_uart_driver

Functions§

iso14443a_crc
iso14443a_crc_append
iso14443a_locate_historical_bytes
iso14443b_crc
iso14443b_crc_append
nfc_abort_command
nfc_close
nfc_context_free
nfc_context_new
nfc_device_free
nfc_device_get_connstring
nfc_device_get_information_about
nfc_device_get_last_error
nfc_device_get_name
nfc_device_get_supported_baud_rate
nfc_device_get_supported_baud_rate_target_mode
nfc_device_get_supported_modulation
nfc_device_new
nfc_device_set_property_bool
nfc_device_set_property_int
nfc_exit
nfc_free
nfc_idle
nfc_init
nfc_initiator_deselect_target
nfc_initiator_init
nfc_initiator_init_secure_element
nfc_initiator_list_passive_targets
nfc_initiator_poll_dep_target
nfc_initiator_poll_target
nfc_initiator_select_dep_target
nfc_initiator_select_passive_target
nfc_initiator_target_is_present
nfc_initiator_transceive_bits
nfc_initiator_transceive_bits_timed
nfc_initiator_transceive_bytes
nfc_initiator_transceive_bytes_timed
nfc_list_devices
nfc_open
nfc_perror
nfc_register_driver
nfc_strerror
nfc_strerror_r
nfc_target_init
nfc_target_receive_bits
nfc_target_receive_bytes
nfc_target_send_bits
nfc_target_send_bytes
nfc_version
pn53x_InAutoPoll
pn53x_InDeselect
pn53x_InJumpForDEP
pn53x_InListPassiveTarget
pn53x_InRelease
pn53x_PowerDown
pn53x_RFConfiguration__MaxRetries
pn53x_RFConfiguration__MaxRtyCOM
pn53x_RFConfiguration__RF_field
pn53x_RFConfiguration__Various_timings
pn53x_SetParameters
pn53x_TgInitAsTarget
pn53x_build_frame
pn53x_check_ack_frame
pn53x_check_communication
pn53x_check_error_frame
pn53x_data_free
pn53x_data_new
pn53x_decode_firmware_version
pn53x_decode_target_data
pn53x_get_information_about
pn53x_get_supported_baud_rate
pn53x_get_supported_modulation
pn53x_idle
pn53x_init
pn53x_initiator_deselect_target
pn53x_initiator_init
pn53x_initiator_init_iclass_modulation
pn53x_initiator_poll_target
pn53x_initiator_select_dep_target
pn53x_initiator_select_passive_target
pn53x_initiator_target_is_present
pn53x_initiator_transceive_bits
pn53x_initiator_transceive_bits_timed
pn53x_initiator_transceive_bytes
pn53x_initiator_transceive_bytes_timed
pn53x_read_register
pn53x_set_parameters
pn53x_set_property_bool
pn53x_set_property_int
pn53x_set_tx_bits
pn53x_strerror
pn53x_target_init
pn53x_target_receive_bits
pn53x_target_receive_bytes
pn53x_target_send_bits
pn53x_target_send_bytes
pn53x_transceive
pn53x_unwrap_frame
pn53x_wrap_frame
pn53x_write_register
pn532_SAMConfiguration
pn532_initiator_init_secure_element
str_nfc_baud_rate
str_nfc_modulation_type
str_nfc_target

Type Aliases§

nfc_baud_rate
@enum nfc_baud_rate @brief NFC baud rate enumeration
nfc_connstring
Connection string
nfc_dep_mode
@enum nfc_dep_mode @brief NFC D.E.P. (Data Exchange Protocol) active/passive mode
nfc_mode
@enum nfc_mode @brief NFC mode type enumeration
nfc_modulation_type
@enum nfc_modulation_type @brief NFC modulation type enumeration
nfc_property
Properties
pn53x_modulation
@enum pn53x_modulation @brief NFC modulation enumeration
pn53x_operating_mode
@enum pn53x_operating_mode @brief PN53x operatin mode enumeration
pn53x_power_mode
@enum pn53x_power_mode @brief PN53x power mode enumeration
pn53x_target_mode
@enum pn53x_target_mode @brief PN53x target mode enumeration
pn53x_target_type
@enum pn53x_target_type @brief NFC target type enumeration
pn53x_type
pn532_sam_mode
@enum pn532_sam_mode @brief PN532 SAM mode enumeration
scan_type_enum

Unions§

nfc_target_info
@union nfc_target_info @brief Union between all kind of tags information structures.