+27 (0)11 022 5323 +27 (0)64 681 8495
- -
NFC Extend Click (Go to Parent Category)

NFC Extend Click

NFC Extend Click is NFC tag interface device with possibility of using any shape and size external antenna, offering 16 Kbit of electrically erasable programmable memory (EEPROM). This Click Board™ offer two communication interfaces. The first one is an I2C serial link and can be operated from a DC power supply. The second one is a RF link activated when Click Board™ act as a contactless memory powered by the received carrier electromagnetic wave. It is perfectly suited for using in wide variety of applications, such as NFC enabled business cards, stickers, wristbands, key fobs, pens, movie passes, hang tags, medication bottles, and many more.

NFC Extend Click board™ is supported by a mikroSDK compliant library, which includes functions that simplify software development. This Click board™ comes as a fully tested product, ready to be used on a system equipped with the mikroBUS™ socket.

For any functionality NFC Extend click have to be used with one of NFC antenna.

R115  Qty:
Price ex. VAT. Weight: 16g. Stock: Available in 5-10 working days [i]. mikroE Icon

How does it work?

The active NFC tag component on NFC Extend Click is the ST25DV16K - the compact NFC tag IC from STMicroelectronics. The Click board™ itself has a reasonably small number of components because most of the interface and EEPROM memory circuitry is already integrated on the ST25DV16K IC. The I2C / SMBus compatible serial interface lines, along with the GPO pin, which also works in the open drain configuration, are pulled up by the on-board resistors. The 2-Wire lines are routed to the respective I2C lines of the mikroBUS™ (SCK and SDA), while the GPO pin of the main IC is routed to the INT pin of the mikroBUS™.

Shop Click Boards Wireless Connectivity RFID/NFC NFC Extend Click

Depending on the application requirements various shapes and sizes of 13.56 MHz external antenna can be used by connecting them to CN1 (male U.FL) connector. This Click can utilize new antennas that we have recently released.

The ST25DV16K uses the I2C/SMBus compatible communication interface, offering a fast transfer mode (FTM), to achieve a fast link between RF and contact worlds, via a 256 byte buffer called Mailbox. This mailbox dynamic buffer of 256 byte can be filled or emptied via either RF or I2C.

There is also the INT pin available, which indicates incoming event to the contact side, like RF Field changes, RF activity in progress, RF writing completion or Mailbox message availability. The built in energy harvesting element can deliver µW of power when external conditions make it possible. The integrated RF management allows the NFC Extend Click to ignore RF requests.

All these features can be programmed by setting static and/or dynamic registers of the ST25DV16K. ST25DV16K can be partially customized using configuration registers located in the E2 system area. More information about all the registers can be found in the ST25DV16K datasheet. However, provided library contains functions that simplify the use of the NFC Extend Click. The included application example demonstrates their functionality and it can be used as a reference for custom design.

The Click board™ can be supplied and interfaced with both 3.3V and 5V without the need for any external components. The onboard SMD jumper labeled as VCC SEL allows voltage selection for interfacing with both 3.3V and 5V MCUs.


Applications NFC enabled business cards, stickers, wristbands, key fobs, pens, movie passes, hang tags, medication bottles, and many more.
On-board modules ST25DV16K - the compact NFC tag IC from STMicroelectronics
Key Features Fast data transfer between I2C and RF interfaces, half-duplex 256-byte dedicated buffer, energy harvesting, data protection features, custom size and shape external antenna.
Interface I2C
Compatibility mikroBUS
Click board size S (28.6 x 25.4 mm)
Input Voltage 3.3V or 5V

Pinout diagram

This table shows how the pinout on NFC Extend Click corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).

Notes Pin Mikrobus logo.png Pin Notes
NC 2 RST INT 15 INT Interrupt output
NC 3 CS RX 14 NC
NC 5 MISO SCL 12 SCL I2C Clock
Power Supply 3.3V 7 3.3V 5V 10 5V Power supply
Ground GND 8 GND GND 9 GND Ground

Onboard settings and indicators

Label Name Default Description
PWR LED GREEN - Power LED Indicator
JP1 VCC/SEL Left Power supply voltage selection: left position 3V3, right position 5V

Software Support

We provide a library for the NFC Extend Click on our LibStock page, as well as a demo application (example), developed using MikroElektronika compilers. The demo can run on all the main MikroElektronika development boards.

Library Description

Library contains function for getting INT pin state, for getting and setting registers via I2C, for presenting and writing password, for enabling/disabling mailbox and RF functionalities and for device initialization.

Key functions:

  • uint8_t nfcextend_password_present ( uint8_t *password_bytes ) - Presenting password to device.
  • uint8_t nfcextend_init ( void ) - Initializing the device.
  • uint8_t nfcextend_enable_mailbox ( uint8_t enable_mailbox ) - Enabling or disabling mailbox.

Examples description

The application is composed of three sections :

  • System Initialization - Initializes GPIO pins, I2C and LOG modules.
  • Application Initialization - Initializes I2C driver, presents password to the device and initializes the device.
  • Application Task - Checks if RF placed a message to mailbox and if it did, checks message length and logs message bytes.

void application_init ( )
    nfcextend_i2c_driver_init( (nfcextend_obj_t)&_MIKROBUS1_GPIO, (nfcextend_obj_t)&_MIKROBUS1_I2C, NFCEXTEND_I2C_SLAVE_ADDRESS );
    Delay_ms( 500 );
    nfcextend_password_present( &default_password[ 0 ] );
    Delay_ms( 100 );

    init_status_flag = nfcextend_init( );
    Delay_ms( 100 );

    if ( init_status_flag == 1 )
        mikrobus_logWrite( "> App init fail", _LOG_LINE );
    else if ( init_status_flag == 0 )
        mikrobus_logWrite( "> App init done", _LOG_LINE );

Additional Functions :

  • nfcextend_wait_for_int( void ) - waits for INT pin to go LOW and than HIGH for time period of 300ms

The full application code, and ready to use projects can be found on our LibStock page.

Other mikroE Libraries used in the example:

  • I2C
  • UART
  • Conversions

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. The terminal available in all MikroElektronika compilers, or any other terminal application of your choice, can be used to read the message.


This Click board™ is supported with mikroSDK - MikroElektronika 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.