OFF
MIKROE-6453
18 g
Status:
NFC 7 Click - I2C is an add-on board that integrates NFC functionality in various applications. This board features the PN7160 (PN7160A1HN/C100), a Near Field Communication (NFC) controller from NXP that is compliant with NFC Forum and NCI 2.0 standards. The board features an I2C communication interface, low-power consumption modes, and a new-generation RF contactless front-end design with high sensitivity and dynamic load modulation for reliable communication. It supports multiple NFC standards, including ISO/IEC 14443, ISO/IEC 15693, MIFARE, and FeliCa, and offers standalone card emulation functionality. Ideal for mobile devices, wearables, personal digital assistants, consumer electronics, and smart home gateways, NFC 7 Click ensures efficient and versatile NFC performance for modern applications.
NFC 7 Click is fully compatible with the mikroBUS™ socket and can be used on any host system supporting the mikroBUS™ standard. It comes with the mikroSDK open-source libraries, offering unparalleled flexibility for evaluation and customization. What sets this Click board™ apart is the groundbreaking ClickID feature, enabling your host system to seamlessly and automatically detect and identify this add-on board.
NOTE: This product is also available in an SPI interface version. For more information, please visit the NFC 7 Click - SPI product page.
This product is no longer in stock
Availability date:
NFC 7 Click is based on the PN7160, a Near Field Communication (NFC) controller from NXP. This versatile NFC solution is designed to comply with NFC Forum and NCI 2.0 standards, offering robust integration for a wide range of NFC-enabled applications. This version of NFC 7 Click communicates with the host MCU exclusively through an I2C interface (PN7160A1HN/C100) and provides an optimized architecture for low-power consumption. The PN7160 features multiple power-saving modes, including a Hard Power-Down state, a firmware-activated Standby state, and a low-power polling loop for automatic device discovery to ensure efficient energy use across various operating scenarios. NFC 7 Click is particularly well-suited for portable and low-power applications where reliable NFC functionality is essential, including mobile devices, wearable technology, personal digital assistants, consumer electronics, and smart home gateways.
At its core, the PN7160 incorporates a new generation RF contactless front-end, supporting transmission modes compliant with NFCIP-1 and NFCIP-2, as well as ISO/IEC 14443, ISO/IEC 15693, MIFARE, and FeliCa standards. This advanced design significantly enhances performance by delivering higher sensitivity and active load modulation capabilities. These improvements allow NFC 7 Click to maintain reliable communication even with small antenna designs, such as the one integrated into this board.
The PN7160 introduces Enhanced Dynamic Load Modulation Amplitude (DLMA), which adapts the modulation amplitude dynamically based on external field strength. This feature extends communication distances in card emulation mode, ensuring independent phase adjustments for Type A, B, and F communication with 5° precision. Additionally, dynamic power control enables the board to operate at maximum power in reader mode without surpassing standard-defined limits, even at zero distance. In standalone card functionality, the PN7160 can operate autonomously once configured by the host MCU, allowing Passive Integrated Circuit Card (PICC) features to function without requiring the host to remain powered on. This makes NFC 7 Click an ideal solution for energy-efficient and always-on NFC applications.
As mentioned, NFC 7 Click uses a standard 2-wire I2C communication protocol, allowing the host MCU to control the PN7160 with clock frequencies up to 3.4MHz in High-Speed mode. In this I2C version of the board, the ADDR SEL jumpers must be populated to select the desired I2C address, ensuring proper communication with the host device. Additionally, the back of the board features a set of resistors that need to be populated depending on the board version; in this case, only the resistors in the I2C positions are populated, as required for I2C functionality.
Besides the interface pins, NFC 7 Click incorporates the VEN pin, which places the device into Hard Power-Down mode to conserve energy when not in use. It also uses the IRQ pin to handle interrupt requests, providing a mechanism for the host MCU to respond promptly to events such as tag detection, completed operations, or errors, enhancing the overall responsiveness and efficiency of NFC-based applications.
This Click board™ can operate with either 3.3V or 5V logic voltage levels selected via the VCC SEL jumper. This way, both 3.3V and 5V capable MCUs can use the communication lines properly. Also, this Click board™ comes equipped with a library containing easy-to-use functions and an example code that can be used as a reference for further development.
Type
RFID/NFC
Applications
Ideal for mobile devices, wearables, personal digital assistants, consumer electronics, and smart home gateways
On-board modules
PN7160A1HN/C100 - Near Field Communication (NFC) controller from NXP
Key Features
Compliant with NFC Forum and NCI 2.0 standards, 2-wire I2C protocol with clock frequencies up to 3.4MHz, Hard Power-Down, firmware-activated Standby, and low-power polling loop for device discovery, high sensitivity and active load modulation, NFCIP-1, NFCIP-2, ISO/IEC 14443, ISO/IEC 15693, MIFARE, and FeliCa standards, and more
Interface
I2C
Feature
ClickID
Compatibility
mikroBUS™
Click board size
L (57.15 x 25.4 mm)
Input Voltage
3.3V or 5V
This table shows how the pinout on NFC 7 Click corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).
Label | Name | Default | Description |
---|---|---|---|
LD1 | PWR | - | Power LED Indicator |
JP1 | VCC SEL | Left | Power Voltage Level Selection 3V3/5V: Left position 3V3, Right position 5V |
JP2-JP3 | ADDR SEL | Left | I2C Address Selection 0/1: Left position 0, Right position 1 |
Description | Min | Typ | Max | Unit |
---|---|---|---|---|
Supply Voltage | 3.3 | - | 5 | V |
Subcarrier Frequency | - | 13.56 | - | MHz |
We provide a library for the NFC 7 Click - I2C as well as a demo application (example), developed using MIKROE compilers. The demo can run on all the main MIKROE development boards.
Package can be downloaded/installed directly from NECTO Studio Package Manager (recommended), downloaded from our LibStock™ or found on MIKROE github account.
Library Description
This library contains API for NFC 7 Click - I2C driver.
Key functions
nfc7i2c_wait_discovery
This function waits until remote NFC device is discovered.
nfc7i2c_presence_check
This function waits until the discovered target device is removed.
nfc7i2c_stop_discovery
This function stops the RF discovery process.
Example Description
This example demonstrates the use of NFC 7 Click - I2C by handling the detection and processing of various NFC technologies and protocols, and ensuring the application can respond to different NFC card types (A,B,F,V).
void application_task ( void )
{
nfc7i2c_rf_intf_t rf_intf;
log_printf( &logger, " WAITING FOR DEVICE DISCOVERYrnn" );
if ( NFC7I2C_OK == nfc7i2c_wait_discovery ( &nfc7i2c, &rf_intf ) )
{
if ( ( NFC7I2C_NCI_RF_TECH_PASSIVE_POLL_NFC_A == rf_intf.mode_tech ) ||
( NFC7I2C_NCI_RF_TECH_PASSIVE_POLL_NFC_B == rf_intf.mode_tech ) ||
( NFC7I2C_NCI_RF_TECH_PASSIVE_POLL_NFC_F == rf_intf.mode_tech ) ||
( NFC7I2C_NCI_RF_TECH_PASSIVE_POLL_15693 == rf_intf.mode_tech ) )
{
for ( ; ; )
{
nfc7i2c_display_card_info ( rf_intf );
switch ( rf_intf.protocol )
{
case NFC7I2C_NCI_RF_PROT_T2T:
{
nfc7i2c_handle_iso14443_3a ( &nfc7i2c );
break;
}
case NFC7I2C_NCI_RF_PROT_ISODEP:
{
nfc7i2c_handle_iso14443_4 ( &nfc7i2c );
break;
}
case NFC7I2C_NCI_RF_PROT_T5T:
{
nfc7i2c_handle_iso15693 ( &nfc7i2c );
break;
}
case NFC7I2C_NCI_RF_PROT_MIFARE:
{
nfc7i2c_handle_mifare ( &nfc7i2c );
break;
}
default:
{
break;
}
}
if ( !rf_intf.more_tags )
{
break;
}
nfc7i2c_reader_act_next ( &nfc7i2c, &rf_intf );
}
nfc7i2c_presence_check ( &nfc7i2c, &rf_intf );
log_printf ( &logger, " - CARD REMOVEDrnn" );
nfc7i2c_stop_discovery ( &nfc7i2c );
while ( NFC7I2C_OK != nfc7i2c_start_discovery ( &nfc7i2c ) );
}
else
{
log_printf ( &logger, " - WRONG DISCOVERYrnn" );
}
}
}
The full application code, and ready to use projects can be installed directly from NECTO Studio Package Manager (recommended), downloaded from our LibStock™ or found on MIKROE github account.
Other MIKROE Libraries used in the example:
Additional notes and informations
Depending on the development board you are using, you may need USB UART click, USB UART 2 Click or RS232 Click to connect to your PC, for development systems with no UART to USB interface available on the board. UART terminal is available in all MIKROE compilers.
This Click board™ is supported with mikroSDK - MIKROE Software Development Kit. To ensure proper operation of mikroSDK compliant Click board™ demo applications, mikroSDK should be downloaded from the LibStock and installed for the compiler you are using.
For more information about mikroSDK, visit the official page.
NOTE: Please be advised that any peripheral devices or accessories shown connected to the Click board™ are not included in the package. Check their availability in our shop or in the YMAN section below.