NXP Designs Knowledge Base

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

NXP Designs Knowledge Base

Discussions

Sort by:
This post entry provides a detailed description of how a Bluetooth Low Energy (BLE) pairing solution via NFC was developed using two of our reference development boards: The NTAG I 2 C plus kit for Arduino pinout The Freedom KW41Z board. This document has been structured as follows: NFC for easy one-tap pairing solution NFC pairing is one popular feature you can find in cameras, speakers, printer, routers, wearables and many more. Just bringing two NFC-enabled devices close together is all it takes to create a connection. Just to mention a few of examples, with just a swipe you can: Connect your phone to a wireless speaker. Connect your new devices to the home network. Connect accessories to the control unit. In all these scenarios… NFC and Bluetooth are a perfect combination, since the pairing process with NFC becomes: Faster compared to the traditional pairing methods. Easier, reducing technical support More reliable, making sure you connect to the right device. The technical basis for this “tap to connect” process is provided in the NFC Connection Handover specification running atop the NFC Forum protocol stack. It defines a framework of messages and data containers that allow bootstrapping of alternative (i.e., other than NFC) carrier connections in a standardized way. For this reason, NFC pairing solution offers a unified user experience and interoperability across different manufacturers.  NFC solutions to implement secure simple pairing There are two types of solutions recommended to add NFC pairing functionality to designs: NFC static pairing with NTAG 213 The first solution is embedding an NTAG 213 NFC label. In such a case, the pairing credentials need to be previously loaded in to the tag memory as well as in the device MCU during manufacturing. NFC dynamic pairing with NTAG I2C plus The second solution is embedding an NTAG I 2 C plus tag. In such a case, the pairing credentials can be dynamically updated by the device MCU during the product lifetime. In addition, other features such as an automatic wake-up field detection signal are possible. Precisely, the combination of a passive NFC interface with a contact I2C interface allows the product to behave as a tag and be read via NFC and to connect to a host or application processor via  I 2 C. In addition, NDEF messages can be generated and updated by the host MCU depending on the application requirements. Later, these NDEF messages can be read by any NFC phone, including iOS devices with the latest OS version. Hardware setup Mapping the previous diagram to the demo hardware, we have: The NTAG I 2 C plus tag, using the Arduino pinout kit The MCU, using Kinetis KW41Z. The applicatiob logic, which updates the NDEF contents based on different use cases. Some details about the hardware used in the next sections: Kinetis KW41Z The Kinetis KW41Z is a high integrated chip with multi-protocol radio features enabling Bluetooth Low Energy (BLE) and 802.15.4 radio protocols such as Thread. KW41Z has as large memory of 512KB that can support multiple radio protocols running in a single application instace and implements nine low-power modes and a wide operating voltage range (0.9V/4.2V), for optimum current consumption. Finally, the software support package includes: BLE, Thread and 802.15.4 generic network stacks, several sample demo apps, support for RTOS and full integration in MCUXpresso. The Kinetis KW41Z evaluation is supported with the FRDM-KW41Z development board. The board main components are: a reference crystal, an accelerometer, an Arduino header, some LEDs and buttons, a JTAG and OpenSDA connectors,and an external flash memory. NTAG I2C plus kit for Arduino pinout The NTAG I 2 C plus Arduino kit consist of two PCBs stacked together: The upper PCB is the antenna board with the connected tag The lower PCB is an interface adaptor board to the Arduino pinout. This kit can be used to connect and evaluate the NTAG I 2 C plus  into many popular MCUs with Arduino compliant headers, for example:  Kinetis (e.g. KW41Z, i.MX (e.g. UDOO Neo, i.MX 6UL, i.MX 6 ULL, i.MX 7D) and LPC MCUs (e.g. LPCXpresso MAX, V2 and V3 boards). The kit support package includes several software examples, including the BT pairing example based on KW41Z.  The OM29110ARD is a generic interface board which offers support for connection to any PCB implementing Arduino connectors. It exposes: 3.3V and 5V power supply pins. I 2 C , SPI and UART host interfaces. Generic GPIOs (e.g. to be used for field detect, interrupts, reset pins or others) As such, it allows the NTAG I 2 C plus to be plugged into Arduino devices seamlessly. Once the NTAG I 2 C plus  board is stacked on the KW41Z, the pining routing between the two boards is as follows. It uses:  The  I 2 C  interface pins. The 3.3V supply pin. One GPIO is routed for the field detection pin. The Vout, for the energy harvesting pin. The ground reference. BLE pairing with NFC on KW41Z and NTAG I2C plus This section details how the Bluetooth Low Energy (BLE) pairing with NFC on KW41Z and NTAG I 2 C plus works. The following block diagram is a simplified representation of the demo that shows: The Bluetooth and NFC interfaces The buttons and LEDs involved in the process. Starting BLE advertising After SW4 is pressed: The application goes from IDLE to searching mode, advertising the BLE device The LED 3 starts blinking in RED color. Writing BLE pairing NDEF message Once the BLE advertising is activated, the next step is for the KW41 to write the pairing message into the NTAG I 2 C  plus memory. After SW3 is pressed: The KW41 uses the  I 2 C interface with the NTAG I 2 C plus to load a pre-defined NDEF message with the BLE pairing details. At the same time, the LED 4 is set to GREEN. Pairing with the BLE device While the LED 4 is set to green, the BLE pairing message is exposed through the NTAG I 2 C plus  RF interface. During this interval, any NFC-enabled device: Can read out the NDEF pairing message. Pass the BT credentials to the Android system or the host processor. And automatically create a Bluetooth link according to the exchanged network credentials. In case of an Android system, no third-party implementation is needed on this part as long as the pairing message follows the NFC Forum specifications. Writing default NDEF message Once the pairing information is read out of the NTAG I²C plus, the KW41Z removes the pairing content and turns back to normal operation mode. In addition, in this specific demo, the NDEF pairing message is programmed to remain in the NTAG I²C plus memory for only ten seconds. After these 10 seconds: The green LED is switched off. And the pairing NDEF message is overwritten by the default NDEF about the NTAG I²C plus demo app. Video The following video shows how the Bluetooth Low Energy (BLE) pairing with NFC on KW41Z and NTAG I 2 C plus works. How to integrate NTAG I2C plus into FRDM-KW41Z hid_device sample project In this section, we describe, step by step, how NFC is integrated in an existing default demo application taken from the KW41Z support package.   FRDM-KW41Z startup In the board website, there are very clear instructions on how to get started www.nxp.com/demoboard/FRDM-KW41Z. For instance: How to test KW41Z. How to get the tools, in our case: MCUXpresso, and the SDK for KW41Z. How to import, build and runn the examples included in the SDK for KW41Z, in our case: the ones inside the wireless_examples folder Importing FRDM-KW41Z SDK and hid_device sample project After that, we import the FRDM-KW41Z SDK and we import the sample project used as a basis for adding NTAG I 2 C plus support, this is the hid_device example located under the wireless/Bluetooth folder. Importing NTAG I2C plus middelware The NTAG I 2 C plus  middleware can be easily imported as a new folder in the project tree using the MCUXpresso File / Import menu. Once imported, the internal structure of the middleware should have this structure: HAL_I2C: The HAL_I2C files support access to the Kinetis I 2 C interface. HAL_ISR:  The HAL_ISR files support the interrupt handling and callback registration for the Kinetis MCU. HAL_NTAG: The HAL_NTAG source files provide an API that allow you to communicate with the NTAG chip and implements the NTAG command set to perform memory access operations from the I 2 C interface.  For instance, this API can be used to perform: Read / Write memory operations on EEPROM and SRAM (for example, to read data, you just need to indicate the memory address and length of the data to be read) Read / Write access to NTAG I 2 C plus registers (for example, you just need to indicate the register macro to be read). Functions for enabling the pass-through mode and handling the data exchange between interfaces (setting the data transfer direction is as easy as using this function). HAL_TMR: The HAL_TMR files support access to the timing hardware of the Kinetis MCU. Adding / changing GPIO pin settings All pin and GPIO settings are defined within the pin_mux.c file. For our application, the I 2 C pins need and a GPIO for the field detection need to be enabled.  Regarding the host interface: the I 2 C  pins for NTAG communication are configured using the BOARD_InitI2C() function, it sets the required I 2 C  port (port 0 for this MC) and set the right mode for the clock (SCL) and data (SDA) lines. Regarding the field detection: it is defined within the source code even though it is not used so far. It is left defined for future use. Within the pin_mux.c file, there are other functions which initialize; for instance, the buttons, LEDs, etc. These functions are called during the hardware initialization. NTAG I2C plus software and hardware initialization We move to the main_application, where some pieces of code need to be added. All code that has been added, is inside the #ifdef NTAG_I2C clause. First, we added: The I 2 C_driver and the ntag_app header files . The ntag_handle handler declaration. Then, the HW initialization is performed calling I2C_initDevice and the NFC_Initdevice() function is called to fill the  ntag_handle software handler. HID_device demo extensions The BLE demo application is written in the hid_device.c file and the whole behavior is handled in this file. The C-code printout in the blue box  below shows the content of the BleApp_HandleKeys() function, which handles the BLE activity and the changes made related to the NFC use case. Similarly, all new code additions are within the #ifdef NTAG_I2C clause. Mainly, the BleApp_HandleKeys() function function was extended to: Copy the pairing NDEF message to the NTAG I 2 C plus chip when the button SW3 is pressed. Set the LED 3 to green while the pairing NDEF message is available. Start a timer counter from the moment the SW3 button is pressed In addition, when the time counter is expired (expiration was defined to 10 seconds): The memory content of the NTAG I 2 C plus chip is overwritten by default NDEF message. The LED 3 is set to off. NDEF message for BLE pairing definition The last part missing to cover the NFC integration into the KW41Z refers to the files created within the application to declare the NDEF pairing and NDEF messages. The NFC Data Exchange Format (NDEF) is the NFC Forum specification defining an interoperable, common data format for information stored in NFC tags and NFC devices. The spec also details how to enable tags to deliver instructions to an NFC device so that the device will perform a specific action when a particular tag is read (open a browser, initiate a phone call, pairing, etc.). Every NDEF message can be automatically processed by any NFC device and execute the appropriate action without requiring the installation of any customized software / application and independently of the hardware manufacturer. There are several NDEF record formats that you can use in your implementation. Each NDEF record indicates to the application processor which kind of payload the message carries. In our demo app, the default NDEF message used belongs to a smart poster record and the NDEF pairing message, follows the protocol defined in the NFC Forum connection handover specification. Going to the source code, two application files for the NDEF handling were created: The app_ntag.h declares the two NDEF messages used in this demo. The app_ntag.c, implements a function which writes the NDEF message into the tag. As mentioned, the NDEF used for this BLE pairing was built according to the Connection Handover and BT secure simple pairing specifications and rules. On the image below, we copied the declaration of the NDEF pairing message. This is actually the hex bytes that are written into the tag memory. To highlight son relevant parts: We find the capability container and the NDEF TLV. These two fields are used by the NFC device to detect if the tag is loaded with NDEF formatted data into a Type 2 tag (like the NTAG I 2 C plus). After that, we find the record type name. This is the MIME type for the Bluetooth out of band pairing (written in its ASCII representation). It is followed by the device Bluetooth MAC address, and the complete local name (Freescale HID). The terminator TLV In case you are interested to know more about the NDEF message structure, you can check the NFC Forum specifications The data (MAC address 00:04:9F:00:00:04 & device name FSL_HID) read by the NFC device is sent to the Bluetooth controller to establish the Bluetooth connection. Default NDEF message definition  The NDEF used as thedefault_ndef message consist of two records: The first record was built according to the SmartPoster specification from the NFC Forum, which describe how to store a plain message followed by an URL. The second record is what is called Android Application record. On the image below, we copied the declaration of the NDEF default message. To highlight son relevant parts:   As the NDEF BLE message, the first data fields we find correspond to the container and the NDEF TLV structure for a Type 2 Tag. Then, we find the smart poster record, which includes a text field. In this example, it codes the text “NTAG I2C Explorer”  and a URI field which codes a the NTAG Explorer kit website URL. After that, we find the Android application record, which is used to automatically launch the app  or, if the app is not installed, redirect the user to Google Play. Finally, the terminator TLV. After 10 seconds, the application removes the BLE pairing NDEF and replaces it by the above described NDEF message. This can be easily demonstrated by tapping the phone after these 2 seconds, and validate that the NTAG I 2 C plus demo is automatically opened. Video recorded session   Available resources BLE pairing with NFC on KW41 and NTAG I 2 C plus source code www.nxp.com/downloads/en/snippets-boot-code-headers-monitors/SW4223.zip NTAG I 2 C plus kit for Arduino pinout www.nxp.com/demoboard/OM23221ARD FRDM-KW41Z board www.nxp.com/demoboard/FRDM-KW41Z
View full article
This post entry provides a detailed description of how the Device-to-device communication demo was developed so that you can leverage this knowledge to integrate NFC into your own system. This document has been structured as follows:   Introduction Device-to-device communication demo functionality NFC for communication with a batteryless unit NFC for communication between two devices mounted in close proximity NFC for communication with a rotating part as a cable replacement solution Hardware details Base board based on CLRC663 plus Rotating disk based on NTAG I2C plus Application logic Reader module to rotating disk communication Rotating disk to reader module communication MCU code details NTAG I2C plus pass-through mode data exchange synchronization considerations Reader module MCU code NTAG_Device2DeviceDemo  application workflow Rotating disk MCU code NTAG_I2C _Explorer_01_LEDs_ButtonXample application workflow Video recorded session Available resources Introduction The Device-to-device communication demo shows how NFC can be used as a cable replacement between two units or devices. It is based on the CLRC663 plus NFC Frontend and the NTAG I 2 C plus connected tag solutions. It demonstrates how NFC is used for: Wireless communication with a batteryless unit. Wireless communication between two devices mounted in close vicinity that need to be completely isolated (e.g. dust or water proof). Wireless communication with a rotating part and as a cable replacement solution.   Device-to-device communication demo functionality The purpose of the demo is to illustrate how to enable device-to-device communication via NFC. It consist of: A base board of 14x12 cm, which embeds the CLRC663 plus NFC reader IC for the RF field generation. A sensor embedded on a separate, rotating sensor disk of 8 cm diameter, which embeds the NTAG I 2 C plus connected tag.   The base board and the rotating sensor disk communicate via NFC and optionally, a tablet display can be connected via a Bluetooth Low Energy (BLE) connection (the BLE connection is beyond the scope of this post entry).     NFC for communication with a batteryless unit The first scenario demonstrates the use of NFC for communication with a batteryless unit or sensor. Energy from the RF field generated by an NFC reader can be harvested to power up small devices so that a battery or other power supply no longer needs to be included.   In this demo, only the base board is powered using a 5V supply input (e.g. USB battery bank) while the rotating disk electronics are powered using only the harvested energy from the RF field generated by the base board. To maximize energy transfer and avoid possible interference caused by the electronics, both the rotating disk and base board antennas are placed on the edges. In the following video, you can observe how as soon as the base board is supplied, it starts generating an RF field and automatically. Then,  all the electronics on the rotating disk are powered and its LED turns GREEN.   http://wpc.08c9.edgecastcdn.net/0008C9/twistage-production/f54/f54337d597118_12181097.mp4?d273d3b84ae78c6b0b40b4df7e407772944048591ee44914b69449116aeb54387b9f NFC for communication between two devices mounted in close proximity The second scenario demonstrates the use of NFC for communication between two devices mounted in close proximity. For instance, any machine or device where sensors are inside or in close vicinity and the sensor needs to be completely sealed (e.g. waterproof, dustproof, etc).   In this demo, the bidirectional communication between the two units is demonstrated using push buttons, which light up LEDs on the opposite unit. For the base board to rotating disk communication direction: While action button 1 is pressed, the LED on the rotating disk turns BLUE. While action button 2 is pressed, the LED on the rotating disk turns RED. While action button 1 and button 2 are pressed, the LED on the rotating disk turns WHITE.   http://wpc.08c9.edgecastcdn.net/0008C9/twistage-production/912/912db3bd13b06_12160248.mp4?d273d3b84ae78c6b0b40b4df7e407772944048591ee44914b69449116aeb54387c99 With the other way around, for the rotating disk to base board communication direction: While action button 3 is pressed, a pattern on the LED circle will appear.   http://wpc.08c9.edgecastcdn.net/0008C9/twistage-production/d0b/d0b0072da0120_12160391.mp4?d273d3b84ae78c6b0b40b4df7e407772944048591ee44914b69449116aeb54387e98   NFC for communication with a rotating part as a cable replacement solution The third and last scenario demonstrates the use of NFC to communicate wirelessly with two moving parts where cables may break. For instance, any solution consisting of a main unit and a sensing part recording mechanical-stress readings on moving parts.   In this demo, the accelerometer on the rotating disk continuously sends its coordinates to the base board, which lights up a specific LED according to the calculated angle between the two units. In the following video, you can see that the LED circle "follows" the movement of the rotating disk.   http://wpc.08c9.edgecastcdn.net/0008C9/twistage-production/c0e/c0e3daf347aed_12160349.mp4?d273d3b84ae78c6b0b40b4df7e407772944048591ee44914b69449116aeb5438709a   Hardware details This section shows the architecture and main components of the base board and rotating disk.  The PCB schematics are attached at the end of this post entry.   Base board based on CLRC663 plus The disk has been dismounted so you can better appreciate the different components of the base board. The base board is driven by an LPC11U68 MCU, which is a low-cost Cortex-M0 USB solution, with 256 kB of flash memory, up to 80 GPIOs and several host interfaces (more details on the LPC11U68 product website).   From the LPC11U68 MCU, some of the GPIOs are used to connect the action buttons and the 12 LEDs of the circle, an SPI port is used to connect the CLRC663 plus NFC Frontend and, a USART port is used for connecting a BLE chip based on NXP's QN9021 chip.     The NFC functionality is provided by our CLRC663 plus reader IC, an NXP high performance multi-protocol reader. It is the evolution of CLRC663, with a larger LPCD detection range, more output power (2x times higher transmitter current), larger temperature operating range and pin-to-pin compatibility with the former version.   Rotating disk based on NTAG I 2 C plus The rotating disk is based on NXP solutions as well. This PCB board is driven by an LPC11U24 MCU, which is a low-cost Cortex M0 32 bit MCU, with 32 kB of flash memory, up to 40 GPIOs and several host interfaces (more details on the LPC11U24 product website).   From the LPC11U24 MCU, some of the GPIOs are used to connect the action button 3 and the RGB LED. In addition, an I 2 C interface port is shared to connect a temperature sensor, the accelerometer and the NTAG I 2 C plus.     The NTAG I 2 C plus is a family of connected NFC tags that combines a memory, a passive NFC interface with a contact I 2 C interface.  Functionally, the NTAG I 2 C plus behaves as a dual port memory. Therefore, the data can pass from an external NFC device to the embedded system. In addition, to this dual interface solution, it has more features: A field detection pin, to send a wake up signal The Energy harvesting, to power external devices The SRAM, a memory without writing cycles limitation The pass-through mode, for fast data exchange between interfaces Several memory access management settings from both NFC and I2C interfaces And an originality signature, to protect against clones.   Application logic This section describes how data is exchanged between the reader module (base board) and the rotating disk using NTAG I 2 C plus as a bridge (pass-through mode) between the two embedded systems.   Reader module to rotating disk communication In this demo, the reader module sends data to the rotating disk when any of its two action buttons are pressed. The NTAG I 2 C plus is configured in pass-through mode and the SRAM memory is used as conduit between the twto units.  The figure below illustrates a simplified representation of NTAG I 2 C plus memory seen from the NFC perspective (organized in pages of 4 bytes each). The red area represents the EEPROM memory while the yellow one represents the SRAM memory location. While the button 1 is pressed: The GPIO 4 of the LPC11U68 is in high level. The CLRC663 plus writes one byte into the SRAM memory (last page, value = 0x01). The LPC11U24 on the rotating disk reads the SRAM. The LPC11U24 changes the GPIO 18 status to high level. The RGB LED turns blue.   The operation that takes place while button 2 is pressed is pretty similar. Basically, it changes: the data written by the CLRC663 plus in the SRAM and the GPIO activated by the LPC11U24 on the rotating disk. More precisely, the steps are: The GPIO 5 of the LPC11U68 is in high level. The CLRC663 plus writes one byte into the SRAM memory (last page, value = 0x02). The LPC11U24 on the rotating disk reads the SRAM. The LPC11U24 changes the GPIO 16 status to high level and sets GPIO 18 to low level. The RGB LED turns red.     In the same way, while the two buttons are pressed at the same time: The LPC11U68 detects that GPIO 4 and 5 are in high level The CLRC663 plus programs a different value on the last SRAM byte (0x03). The LPC11U24 on the rotating disk reads the SRAM. The LPC11U24 sets to high the three GPIOs (16,17,18) controlling the RGB LED. The RGB LED turns white The key message is that: what it is written in the SRAM controls the behavior of the rotating disk LED, demonstrating wireless data exchange between the two embedded systems.   Rotating disk to reader module communication In this demo, the rotating disk keeps sending data to the reader module for as long as it is powered by the RF field. Precisely, it continuously sends the disk position (via the accelerometer axis coordinates) and the measured temperature value. Additionally, an extra byte is sent while the button 3 is pressed. The actual steps are: First, the LPC11U24 MCU triggers a read operation to the temperature sensor and accelerometer. The temperaturre reading occupies 2 bytes while the accelerometer axis coordinates occupy 6 bytes. This data is transfered the LPC11U24 via the I 2 C shared bus. The LPC11U24 writes these 8 bytes into the SRAM in page addresses 0xFD, 0xFE and 0xFF (see the figure below). The CLRC663 plus reads the SRAM when the LPC11U24 has finished writing it. With the read information, the LPC11U68 base board MCU calculates the angle and sets the appropriate GPIO to high level. Since the LED circle contains 12 LEDs, the base board is able to represent position changes of 30 degrees (360º / 12 LEDs).   As mentioned, this data transfer keeps going for as long as the disk is powered. The key concept here is that the LED circle operation is directly controlled by the disk position and the axis coordinates which are exchanged via the NTAG I 2 C plus SRAM at any given moment. To illustrate this, the disk is rotated 90 º clockwise. The steps that take place are: The LPC11U24 MCU triggers the next reading command, the accelerometer axis coordinates have changed to different ones representing the new disk position (in red in the memory map figure below). The LPC11U24 writes into the SRAM again these 8 bytes (now with the updated accelerometer axis coordinates) The CLRC663 plus reads the SRAM when the LPC11U24 has finished writing it. With this new reading, the LPC11U68 MCU recalculates the angle and applies a different GPIO configuration (which leads to a different LED turned on in the circle).     Last, while button 3 is pressed: The LPC11U24 GPIO 12 is set to high value. The LPC11U24 checks GPIO 12 pin status before writing into the SRAM. While it is high level, it adds an additional byte into the SRAM (third byte on page 0xFF- value=0x01). The CLRC663 plus reads the SRAM, getting the latest data from the moving part. With the current firmware, while the third byte on page address 0xFF is set to 0x01, the LPC11U68 performs a LED pattern activating all the GPIOs simultaneously (all the LEDs are ON).     MCU code details This section explains the firmware implementation details for both the base board (CLRC663 plus) and the rotating disk (NTAG I 2 C plus). Before going into the firmware implementation details, a few considerations for data exchange synchronization when using the NTAG I 2 C plus pass-through mode are explained.   NTAG I 2 C plus pass-through mode data exchange synchronization considerations In the demo, the pass-through mode is used to exchange data between the base board and the rotating disk. The pass-through mode provides the SRAM for data communication and the mechanisms for the synchronization of the data transfer. This signalling can be done through the field detection pin or by polling the equivalent registers over the I 2 C interface. For the NFC to I 2 C direction, the synchronization can be done: By checking the SRAM_I2C_READY register to learn if new data has been written by the RF interface. By checking the filed detection pin changing from HIGH to LOW voltage.   For I 2 C interface to NFC direction, the synchronization can be done: By checking the SRAM_RF_READY register to learn if new data has been written by the I 2 C interface. By checking the filed detection pin changing from LOW to HIGH voltage.   The following table includes register bits which can be used for communication synchronization. In addition, there is a dedicated application note providing more details on how NTAG I 2 C plus can be used for bidirectional data communication.   Register bit Use PTHRU_ON_OFF Detects if the pass-through mode is still enabled (gets reset in case of RF or I2C power down). TRANSFER_DIR Defines the data flow direction for the data transfer. I2C_LOCKED Detects if memory access is currently locked to I2C. RF_LOCKED Detects if Memory access is currently locked to RF. SRAM_I2C_READY Detects if there is data available in the SRAM buffer to be fetched by the I²C side. SRAM_RF_READY Detects if there is data available in the SRAM buffer to be fetched by the RF interface. RF_FIELD_PRESENT Shows if a RF field strong enough to read the tag is there.   Reader module MCU code The MCU firmware was developed using our LPCXpresso platform, which provides a complete development environment for LPC MCU and LPC boards. In the source code, there are five project folders: The FreeRTOS project folder, which is an open source real-time operating system (RTOS) for embedded systems supporting many different architectures and compiler toolchains The Lpc_chip_11u6x_lib and nxp_lpcxpresso_11u68b project folders, which belong to the LPCOpen libraries supporting the LPC11U68 MCU and PCB board, the MCU chip integrated in the Explorer board. If you use another MCU, you should replace them by the specific LPCOpen libraries. The NTAG_Device2DeviceDemo  project folder, which implements the logic supporting the device-to-device communication demo for the reader module. The NxpNfcRdLib project folder, which is the NXP's NFC Reader Library software stack supporting the implementation of the demo, the contactless protocols, the LPC MCU host interfaces and the CLRC663 drivers.   The reader module MCU code leverages on the NFC Reader Library. The NFC Reader Library is a software stack for creating and developing contactless applications for NXP's NFC readers. This API facilitates the most common operations required in NFC applications such as: reading or writing data into contactless cards, exchanging data with other NFC-enabled devices and emulating cards.   In order to use the NFC Reader Library, a stack of components has to be built up from the bottom to the top layer. Precisely, the application requirements define which modules need to be enabled and which do not. For the reader module firmware: The FreeRTOS is used. The SPI is used as host interface. A CLRC663 plus reader IC is used. And, communication with NTAG I 2 C plus is needed ( ISO14443 Type A card and NFC Forum Type 2 Tag compliant)   As a result, the software components that need to be enabled within the NFC Reader Library are depicted in the following picture: NTAG_Device2DeviceDemo  application workflow The reader module firmware starts its execution as soon as it is connected to the power bank. The firmware initializes the GPIOs, the UART for the tablet connection and the NFC Reader Library for the contactless operation. After all these initializations, the firmware code generates a new thread in charge of dealing with the disk operation. In this separate thread, the discovery loop for detection of Type A and Type V cards is configured and started. After that, the firmware keeps listening until the NTAG I 2 C plus is detected (i.e. the disk is mounted). On detection, the operation with the rotating disk starts: The reader module waits until the SRAM is available for the RF interface. The SRAM is available for the RF interface while the pass-through mode is enabled (PTHROUGH_ON_OFF register is set) and the RF to I 2 C direction is set (TRANSFER_DIR register bit). The board buttons are checked and the SRAM is written with the corresponding information.   At this point, the program awaits to receive data from the rotating disk. For that, it keeps polling if new data was written in the SRAM by the I 2 C interface (SRAM_RF_READY register bit is set). If new data is available, the SRAM is read and the data is processed: The accelerometer axis coordinates are read, the angle is calculated and the appropriate LED on the circle is activated. While the button 3 is pressed, the MCU triggers the LED pattern on the circle. Optionally, if the tablet connection is established, data is also sent using the BLE channel.   The following figure depicts the reader module application workflow in detail:   Rotating disk MCU code The MCU firmware was also developed using the LPCXpresso platform.  In the source code, there are four project folders: The Lpc_chip_11uxx_lib and nxp_lpcxpresso_11u24h_board_lib project folders belong to the LPCOpen libraries supporting the LPC11U24 MCU and PCB board, the MCU chip integrated in the Explorer board. If you use another MCU, you should replace them by the specific LPCOpen libraries. The NTAG_I 2 C _API project folder is a library providing a set of functions and procedures that allow you to communicate with the NTAG I 2 C from the I 2 C interface. Among others, functions to perform memory operations on EEPROM, SRAM, registers and for enabling the pass through mode The NTAG_I 2 C _Explorer_01_LEDs_ButtonXample project folder implements the logic for the rotating disk of this demo.   NTAG_I 2 C _Explorer_01_LEDs_ButtonXample application workflow The rotating disk firmware starts its execution as soon as it harvests enough energy from the reader's module RF field. The first operation taken is to enable the pass-through mode. Then, the firmware stays on a loop for as long as it is energized.   In this loop, it sets the SRAM into RF to I 2 C direction (TRANSFER_DIR register bit) and waits until the base board has written data. After data has been written from the RF side, it reads the SRAM and checks the last byte: While the last byte value is 0x01, it means the button 1 is pressed and the firmware sets the RGB LED to blue While the last byte value is 0x02, it means the button 2 is pressed and the firmware sets the RGB LED to red While the last byte value is 0x03, it means the button 1 and 2 are pressed and the firmware sets the RGB LED to white.   After receiving data from the base board, it prepares to send data back. For that: it checks the button status, it reads the temperature value and the accelerometer position. Once all the data has been collected: It changes the SRAM to I 2 C to RF direction (TRANSFER_DIR register bit). It writes into the SRAM and waits until the RF has read the data (SRAM_RF_READY register is cleared).   This loop is repeated for as long as the disk is powered. The following figure depicts the rotating disk application workflow in detail:     Video recorded session On 9 March 2017, a live session explaining the device-to-device communication demo was recorded. You can watch the recording here:   http://wpc.08c9.edgecastcdn.net/0008C9/twistage-production/149/149fee5f5e282_12181079.mp4?d273d3b84ae78c6b0b40b4df7e407772944048591ee44914b69449116aeb5439ff51 Available resources   Schematics Please see attached in the separate attachment section below. Device-to-device demo source code Please see attached in the separate attachment section below. Quick-start guide for showing the demo Please see attached in the separate attachment section below Android app The android app can be used on a tablet or smart phone connected via BLE to this demo to show additional parameters, and to have a bigger screen for demonstrations. You find it in Google play ("device2devicedemo") and attached below.  
View full article
This post entry provides a detailed description of how an NFC DIN rail demo was developed so that you can leverage this knowledge to integrate NFC into your own system. This document has been structured as follows: Introduction The NFC DIN rail demo shows how NFC can be used for handling complex device settings on a mobile touchscreen. It is based on the NTAG I 2 C plus solution and demonstrates how NFC is used for: Wireless parametrization and zero power configuration. Wireless product diagnosis and troubleshooting. Wireless firmware update. NFC DIN rail demo functionality Industrial equipment such as circuit breakers, time relays, power units, sensors, etc typically come with limited user interfaces but with advanced settings and configurations. As NFC use becomes universal in smartphones and other handheld devices, these devices can be used as an external touchscreen interface enabling sophisticated interactions and configurability at a little cost. The NFC DIN rail demo could represent industrial equipment in charge of controling a lighting system. As a simplification, here it controls only three light bulbs. This DIN module consists of a power switch (220 V), an NFC interface and an LCD screen. Additionally, a dedicated phone application has been developed to interact with the NFC DIN rail for enabling wireless parametrization, wireless diagnosis and wireless firmware update via NFC. Wireless parametrization and zero power operation NFC can be used to save configuration settings so that equipment may be customized at any moment during its lifetime. Additionally, the energy harvesting feature, intrinsic to NFC, allow us to save product settings even if the device is unpowered (also called zero-power operation). In this NFC DIN rail demo, the Android app let us set the light bulb status to ON, OFF or BLINKING and set the LCD language as well. After selecting the different settings on the screen, we tap the phones and the settings are saved into the module. The following video shows how this functionality works, also with the unit powered and unpowered. Wireless product diagnosis - Read light bulbs switching counters NFC can be used to get instant readouts of device status, usage, statistics and diagnosis data without dismounting the casing and even after a breakdown situation. In this NFC DIN rail demo, the Android app lets us retrieve the switching counter values (the number of times the light bulbs have been switched ON / OFF). The following video shows how reading NFC DIN rail product diagnosis only takes one tap. Wireless product diagnosis - Reset light bulbs switching counters Additionally,  the Android app lets us reset the switching counter values with a phone tap. Wireless firmware update With NFC, firmware upgrades can be done wirelessly, without cables, disks or other means of data transfer.  It therefore, saves time since it is not necessary to dismount the device. In this NFC DIN rail demo, the Android app lets us select the binary file to be flashed. This implementation is robust since you can retry as many times as needed, even if a failure occurs in the flashing operation. The following video shows how the NFC DIN rail firmware is updated to a firmware version introducing a faster light bulb blinking speed. NFC DIN rail hardware details Dismounting the DIN module is quite straightforward, especially if you are familiar with DIN casing. We unscrew and release the power wires coming from the power supply unit We unscrew and release the light bulb power wires We dismount the module from the rail and release it from the rail We open the boxing and see what is inside The NFC DIN rail module consists of three PCBs: the Transformer PCB, the switching PCB and the Explorer board with a flex antenna   Transformer PCB The transformer PCB includes three electromechanical relays that directly control the light bulbs. It also includes a transformer which converts the 220V AC supply from a standard socket to 12V AC. This 12V AC supply is used to power the switching PCB. Switching PCB The switching PCB converts the 12V AC to 12V and 3V DC voltage supply. The 12V DC voltage is used to control the electromechanical relays, which in turn switches the light bulbs ON/ OFF. On the other hand, the 3V DC output is used to supply the Explorer board. Explorer board and flex antenna The Explorer board and flex antenna are part of the NTAG I 2 C plus support package. The Explorer board comes with: 5 push buttons, a temperature sensor, an LPC11U24 MCU, JTAG interface, LCD and I 2 C connectors. The NTAG I 2 C plus comes embedded in the Class 6 Flex antenna All the design files for the Explorer board as well as the Flex antennas can be found in NT3H2111/2211|NXP  Application logic and how NTAG I 2 C plus solution is used Before going into the implementation details, we briefly describe the NTAG I 2 C plus product. NTAG I 2 C plus product features The NTAG I 2 C plus is a family of connected NFC tags that combine a memory, a passive NFC interface with a contact I 2 C interface. As such, it supports full bidirectional communication between an NFC-enabled device and the host system's microcontroller, making it an ideal solution for NFC implementations that interface with a wide range of electronic devices. Additional to this dual interface solution, it has more features: A field detection pin to trigger external / connected devices. The energy harvesting, to power low consuming devices from the RF field. The SRAM buffer, a volatile memory without writing cycles limitations. The SRAM mirroring, for dynamic content update. The pass through mode, for fast data exchange between interfaces. Several memory access management settings from both NFC and I 2 C interfaces. And an originality check to detect clones. More product details about NTAG I 2 C plus can be found at NT3H2111/2211|NXP and technical recorded videos are available in our training academy NFC Webinars|NXP. How the NTAG I 2 C plus is used for wireless parametrization and zero power operation The NTAG I 2 C plus EEPROM memory is used to store DIN module settings. The phone application is able to overwrite these bytes with the desired configuration. On power up, the MCU reads the saved settings and applies the corresponding configuration. In this demo, one byte is used to configure each light bulb status ('0' - light bulb ON, '1' - light bulb OFF, '2' - light bulb BLINKS) and one byte used for the language configuration ( '0'- Deutsch, '1' -Babarian, '2' - Swiss, '3'- English, '4' - French). Using the Zero Power Config Android app tab, we define the desired settings. With a tap, the phone writes 4 bytes into the EEPROM memory (page addresses 0x34 - 0x35) On power up, the NFC DIN module reads the EEPROM memory and: Changes the GPIO 17, 18 and 19 output configuration to HIGH or LOW accordingly Changes the language message on the LCD display. Finally, the MCU updates the light bulbs switching counters by writing the EEPROM memory. Two bytes are used for the counters (page addresses 0x35-0x37)- How the NTAG I 2 C plus is used for product diagnosis The product diagnosis provides two functionalities: read switching counters values and reset switching counters values. With a tap, the phone reads the EEPROM to retrieve the latest switching counter values. Clicking on the Reset button and with a phone tap, we are actually overwriting the EEPROM by setting the switching counter values to '0'. How the NTAG I 2 C plus is used for wireless firmware update The NFC wireless firmware update capability in this demo leverages on two main aspects: First, the LPCs MCU capability to re-program the flash in the field without being removed from the PCB. Second, the NTAG I 2 C plus tag as a bridge to transfer data between the phone and the DIN module MCU.   The MCU flash memory can be re-programed using these two methods: In-System programming (ISP), which can program the on-chip flash memory using the system primary boot loader and programming interface. For instance, in the Explorer board, this can be done by connecting it via USB to a laptop (could also be UART, serial interface, etc). In-Application (IAP) programming, means that the application itself, the end-user code, can re-program the on-chip Flash memory   The LPC11U24 flash memory is grouped in 8 sectors of 4 kB each. The flash memory should be reprogrammed at the sector level.  Another critical requirement is that the implementation must allow multiple FW updates and protection against failed FW update processes. For this, the firmware consists of two applications residing in flash: The first: the secondary bootloader application. This application is a piece of code starting at memory Sector 0. It implements the IAP functions allowing a certain flash memory area to be flashed and the logic to handle the NFC data transmission.  This source code occupies 4 sectors. The second: is the user application code. It starts at the next free memory sector (in this case, it resides in sector 4 onwards), and is the flash memory area, which is overwritten when the NFC wireless firmware update is performed.   In this approach, the secondary bootloader application is not overwritten. Thanks to this, it supports multiple FW updates or you can re-try as many times as needed without breaking the system. Regarding the NTAG I 2 C plus, it can be used as a bridge between NFC / I 2 C interfaces. The wireless firmware update consists of transferring the binary file to be flashed from one interface to the other. For transmission of large files, the NTAG I 2 C plus offers the pass-through mode, where the data is transferred using the 64 byte SRAM buffer. This buffer offers fast write access and unlimited write endurance as well as an easy handshake mechanism between the two interfaces. This buffer is mapped directly at the end of the Sector 0 of NTAG I 2 C plus (0x0F to 0xFF). The data flow direction must be set with the TRANSFER_DIR session register. These pass-through direction settings avoid locking the memory access during the data transfer from one interface to the SRAM buffer.  NTAG I 2 C plus introduces the FAST_READ command as FAST_WRITE command. With this new command, the whole SRAM can be written at once, which improves the total pass-through performance significantly.  There is a dedicated application note detailing how to use the NTAG I 2 C plus for bidirectional communication http://www.nxp.com/documents/application_note/AN11579.pdf. The wireless firmware update process goes as follows: The user selects from the phone application the binary file to be flashed. The phone splits the binary file in chunks of 64 bytes. With a tap, the phone writes 64 bytes in the SRAM. The MCU stores chunks of 64 bytes until it has one entire flash sector complete. Once a whole sector is received, the MCU executes the IAP functions to flash a memory sector This process is repeated until the whole binary file is transmitted MCU / Embedded software integration The MCU firmware was developed using our LPCXpresso platform, which provides a complete development environment for LPC MCU and LPC boards. If you import the source code, you will see 6 project folders.  The Lpc_chip_11uxx_lib and nxp_lpcxpresso_11u24h_board_lib project folders belong to the LPCOpen libraries supporting the LPC11U24 MCU and PCB board, the MCU chip integrated in the Explorer board. If you use another MCU, you should replace them by the specific LPCOpen libraries. The NTAG_I 2 C _API is a piece of code that provides a set of functions and procedures that allow you to communicate with the NTAG I 2 C from the I 2 C interface. The NTAG_Explorer_bootloader implements the secondary bootloader application we described previously. In this piece of code you will find the IAP functions implementation and the code handling SRAM data transfer.  And then, we include two end-user application examples: The NTAG_Explorer_demo, which implements the DIN module use cases The NTAG_Explorer_blink, which is a dummy application displaying a text message on the LCD when an RF field is detected. This application is provided to illustrate the NFC flashing functionality and its binary image is provided embedded by default into the Android app NTAG_I 2 C_Explorer_bootloader application workflow This is the first application executed when the Explorer board is powered up.  Then, this application decides the next step: If the right button is not pressed, it jumps to sector 4 and executes the DIN module application. Otherwise, if the right button is pressed, it enters in firmware upgrade mode As soon as the binary file is selected from the app, and we tap the phone, we start the transmission. The process goes as follows: The MCU reads chunks of 64 bytes of SRAM until a sector is received. Once a full sector is received, we flash an MCU sector using the IAP functions. When the entire file in transmitted, the flash operation status is shown on the LCD and the MCU is reset so that the new binary file flash takes effect. NTAG_I 2 C_Explorer_demo application workflow If the right button was not pressed, the NTAG_I 2 C_Explorer_demo application is executed. The first step executed by the MCU is to read the stored EEPROM configuration and apply these settings accordingly.Then, using a dedicated NTAG I2C plus register, it checks whether an RF field is present: If RF field is present, it means the user is currently configuring the DIN module. Thus, the memory access is locked so that the MCU cannot write on it. When the field is OFF, it means the user has finished the configuration. The MCU can read and apply the EEPROM settings once again. If there is no RF field present, the DIN module also allows a manual configuration using its buttons. These manual button configurations perform the following actions: While the left button is pressed, all the GPIOs are set to low, so the light bulbs are switched OFF While the middle button is pressed, all the GPIOs are set to high, so the light bulbs are switched ON While the right button is pressed, the board LED is switched ON. At any moment… if an RF field is detected, this loop is skipped and access to memory is locked for the I 2 C side since the user is configuring via the NFC interface Phone / NFC device software integration There is an Android project available which can be easily imported into Android Studio IDE. The app is developed so that it is supported by any phone running an Android version 4 and beyond. The source code is organized in such a way that you can clearly distinguish the different activities from the NTAG I 2 C API. In the NTAG I 2 C API, you will find functions for: All the NFC commands are implemented. So you can easily perform read / write operations using the READ/ WRITE and FAST READ / FAST WRITE commands. But also, the SECTOR_SELECT or PWD_AUTH Dedicated functions to READ / WRITE the registers Additional functions specially developed to make the read/write operations on SRAM easier. NFC DIN rail Android demo application workflow The Android phone application consists of a splash activity that leads us to a main activity with three tabs on the top side. If we keep the zero power configuration tab on, the desired settings can be selected. As soon as the phone is tapped, it executes a WRITE EEPROM command to save the configuration If we go to the diagnostics tab, a READ EEPROM operation is performed as soon as the phone is tapped. Or a WRITE EEPROM operation to overwrite the counters, if the reset button on the screen was pressed beforehand. Finally, if we go to the flash firmware tab, the binary file can be selected, and WRITE SRAM operations are used until the whole file has been transferred. Video recorded session On 21 February 2017, a live session explaining the NFC DIN rail demo was recorded. You can watch the recording here: Available resources I hope this entry has been useful. If you are interested in developing your own NFC solution, all the resources are available: NTAG I 2 C plus Explorer kit http://www.nxp.com/products/wireless-connectivity/nfc-and-reader-ics/connected-tag-solutions/ntag-ic-plus-explorer-kit-with-nfc-reader-development-kit:OM5569-NT322ER NTAG I 2 C plus Flex kit with additional antennas http://www.nxp.com/products/wireless-connectivity/nfc-and-reader-ics/connected-tag-solutions/ntag-ic-plus-flex-kit-containing-additional-flex-antennas:OM5569-NT322F Explorer board and Flex antenna HW design files http://www.nxp.com/documents/software/SW3641.zip http://www.nxp.com/documents/software/SW3639.zip http://www.nxp.com/documents/software/SW3638.zip NFC DIN module source code http://nxp.com/assets/downloads/data/en/software/DINRailDemo_SourceCode.zip NTAG I 2 C plus Explorer kit reference source code http://www.nxp.com/documents/software/SW3648.zip http://www.nxp.com/documents/software/SW3647.zip
View full article
Flomio was able to take our SLN-POS-RDR and develop their first EASyPOS prototype in 2 short months! What is an EASyPOS? EASyPOS is an item level point of sale. A light weight terminal that connects wirelessly to the payment network to securely process transactions and unlock from products for consumers to take. EASyPOS is the first of it’s kind and though placing a POS on every item may seem impractical, it offers several advantages. For one the device is able to monitor it’s location with a high degree of accuracy, guiding shoppers directly to the products they seek and consistently delivering positive purchase experiences. Also, inventory accuracy is all but guaranteed so omnichannel commerce and other popular retail trends are supported. Finally, EASyPOS has lights and sound alerts to enable smart filtering and encourage impulse buys.     How do I use it? Using the EASyPOS is —in fact— “easy”. Follow these steps to complete your purchase: - Grab the product you want to purchase.  - Place your Contactless Payment credential on the surface of the contactless payment logo and wait for 4 LEDs to blink green. EASyPOS is now disarmed. - Slide apart the magnetic halves and remove your from your purchase.     How is it built? The EASyPOS was built by Flomio, an expert in mobile NFC device design. It operates at very low power while actively monitoring for payment engagements, remote notifications, tamper attacks, and location changes throughout the retail environment. Smaller than a deck of cards, the EASyPOS is a payments certifiable device leverages the hardened security and miniaturization advances of NXP Semiconductors. It’s split in two assemblies, the top hosting active components like the freakishly loud 90dB speaker and the bottom containing the wireless recharging power system.   Short Video: https://www.youtube.com/watch?v=FQrnTWPpRHE About Flomio, Inc. Disney’s Magic Band™ technology revolutionized their theme park business. Companies eager to “Disney-fy” their businesses without their own team of imagineers and billions to invest turn to Flomio, imagineers for the rest of us. Flomio creates proximity ID solutions that help enterprise clients and developers cross the chasm to the next web, the Internet of Things (IoT). Funded by TechStars, Flomio is fundamentally changing the way people engage with the spaces around them by making proximity ID simple to integrate, easy to deploy, and fun to use. Soon, 50 billion devices will regularly connect to the internet. Flomio’s platform empowers enterprise customers and developers to create applications that communicate with these devices. The future is ubiquitous connectivity. Flomio makes sure businesses take advantage of it.
View full article
Demo Ricardo Anguiano describes a memory game demo built by Mentor Graphics for their Embedded Systems Division's 20th Anniversary. The game uses 36 FRDM-K64F boards with Adafruit 2.8" capacitive touchscreens in a 6 x 6 grid. The FRDM-K64F boards run the Nucleus RTOS from Mentor Graphics. The FRDM-K64F boards are connected over Ethernet to a touchscreen-driven Boundary Devices BD-SL-i.MX6 (formerly the SABRE Lite board) game controller which also runs the Nucleus RTOS. Players start the game by viewing and studying the position of all 36 digital cards, the cards are flipped and the player must touch matching pairs for points before time expires. The memory game generated lots of interest with players coming back multiple times. It was a great way to introduce the ARM TechCon crowd to the Nucleus RTOS, which enjoys wide success in a number of vertical markets and product categories like industrial, medical, IoT, wearables and automotive. The safety-certified version, Nucleus SafetyCert has been verified and documented to meet the certification requirements for device manufacturers developing safety related software for avionics requiring DO-178C Level A, industrial requiring IEC 61508 SIL 3, medical requiring IEC 62304 Class C, and automotive requiring ISO 26262 ASIL B. Features • A fun memory game built on Mentor Graphics' Nucleus RTOS, deployed on over 3 billion devices worldwide. • NXP FRDM-K64F and i.MX6 based hardware NXP products ARM Cortex-M4|Kinetis K64 120 MHz 32-bit MCUs i.MX6Q|i.MX 6Quad Processors|Quad Core Tools FRDM-K64F|Freedom Development Platform|Kinetis MCUs https://boundarydevices.com/product/sabre-lite-imx6-sbc/  Mentor Graphics Links https://www.mentor.com/embedded-software/nucleus/ https://www.mentor.com/embedded-software/nucleus/safety https://blogs.mentor.com/embedded/blog/2016/10/31/testing-your-memory-at-arm-techcon/ 
View full article
Demo These state-of-the-art devices are single-chip solutions for contact, contactless, and NFC operation, and can be loaded with fully-custom applications. Optimized antenna operation and low-power modes enable best-in-class performance. This NFC & BLE hospitality demo showcases a physical access scenario in hospitality with ultimate contactless connectivity through NXP NFC and BLE solutions and superior security with MIFARE DESFire on cards, mobile and wearables Product Features • Total interoperability with smart devices – NFC/BLE • Ultimate contactless connectivity through NXP NFC and BLE solutions • Superior contactless experience and security with MIFARE DESFire on cards, mobile and wearables NXP Recommends PN746X_736X_SERIES|NXP  Ultra low power Bluetooth LE system-on-chip solutio|NXP 
View full article
What’s it like to sit in a state-of-the art eCockpit? Put on a virtual reality headset and find out! Here, the virtual world meets the real world as live video content from 4 displays -- a HUD, cluster, infotainment and rear seat entertainment systems – is processed and streamed realtime from a single i.MX 8 applications processor.  i.MX 8 series will transform interactions in ways you’ve never imagined   NXP product recommended i.MX 8 ARMCortex-A53 Processor|NXP 
View full article
NXP Content: PN7462, NTAG I²C plus NXP Recommends: PN7462, NTAG I²C plus The NFC Cube is a universal demo with which all 3 basic NFC operation modes can be shown: Interaction between a device and a card or tag Interaction between 2 electronic devices (NFC as cable replacement) Interaction between a device and an NFC phone Value Propositions The NFC Cube is a universal NFC demo Support Under https://nxp.box.com/NFCcube you find more information and a video showing the NFC Cube in action.
View full article
Demo FlexIO Demos below: Title Link Luminaire: A tale of woe https://www.hackster.io/0xtj/luminaire-a-tale-of-woe-263189 FlexIO Based Multi-Copter Rotor Control https://www.hackster.io/agent-titanium-c6063b/flexio-based-multi-copter-rotor-control-57d124 Automated water level https://www.hackster.io/andre-pereira-da-silva/automated-water-level-2fb900 IOT" Hydrometer E-mailer" https://www.hackster.io/benf2/iot-hydrometer-e-mailer-7a7ca5 FlexIO 3D Printer https://www.hackster.io/BigLazyPlayer/flexio-3d-printer-7e9d57 IoT with Kinetis FlexIO https://www.hackster.io/bltrobotics/iot-with-kinetis-flexio-0d4c3e Air Quality Control https://www.hackster.io/claude4/air-quality-control-2e7d65 Wireless Digital scale https://www.hackster.io/dhq/wireless-digital-scale-238e83 FRDMK82F Servo and Brushless Motor Control https://www.hackster.io/ElvisWolcott/frdmk82f-servo-and-brushless-motor-control-6461fb FRDM-K82F Camera Based Parking Assistant https://www.hackster.io/inakizi/frdm-k82f-camera-based-parking-assistant-9dfa6f KD2 Droid https://www.hackster.io/jreese/kd2-droid-7fbed1 NXP Kinetics Smart Web Multimedia IoT - Flexduino Platform https://www.hackster.io/mhanuel/nxp-kinetics-smart-web-multimedia-iot-flexduino-platform-1a76f7 Ultimate Hardware Expansion Board https://www.hackster.io/myriaddev/ultimate-hardware-expansion-board-494906 MIDI-USB Theremin https://www.hackster.io/razulued/midi-usb-theremin-65b521 Marveloucycle  https://www.hackster.io/skywalker-efe247/marveloucycle-4aafdb Port MySensors Library https://www.hackster.io/storycrafter/port-mysensors-library-1df3b6 Face match doorbell https://www.hackster.io/user015606/face-match-doorbell-db49bc Twitter Bot https://www.hackster.io/user1713477/twitter-bot-0687fe Agricultural flow estimator https://www.hackster.io/uLipe/agricultural-flow-estimator-1ad21d Directional Motion-Detecting USB Web Cam Using a FRDM-K82F https://www.hackster.io/stephanick/directional-motion-detecting-usb-web-cam-using-a-frdm-k82f-f81b81 How to build an Air Mouse with NXP K82F https://www.hackster.io/asadzia/how-to-build-an-air-mouse-with-nxp-k82f-56fb60 Intelligent Elbow Motion-Assistance Actuator https://www.hackster.io/hal-flynn-f79994/intelligent-elbow-motion-assistance-actuator-6a6c73 Water quality flow control https://www.hackster.io/mikey0000/water-quality-flow-control-030b2e Flex-WS2812B https://www.hackster.io/momososo/flex-ws2812b-a6beaf Freedom K82F Sport Kit Companion https://www.hackster.io/nghiajenius_iot/freedom-k82f-sport-kit-companion-319878 Freedom Maraca https://www.hackster.io/wesee/freedom-maraca-6f7bfc Twinkle Twinkle Little Star Musical Cup https://www.hackster.io/wesee/twinkle-twinkle-little-star-musical-cup-45a584 Smart DICE: The Physical + Digital RNG https://www.hackster.io/whatnick/smart-dice-the-physical-digital-rng-18ee03 Navisys https://www.hackster.io/YasithLokuge/navisys-03aa5f Flash! https://www.hackster.io/acylbotr/flash-6c1959 Freedom Flight Controller for Autonomus Drones https://www.hackster.io/bluetiger9/freedom-flight-controller-for-autonomus-drones-9efba4 Camera modules for Self-Driving Car. https://www.hackster.io/gawad/camera-modules-for-self-driving-car-fb37fb The Freedom Infinity Mirror https://www.hackster.io/MarcelK/the-freedom-infinity-mirror-9a2c13 Kinetis FlexIO Ultrasonic Radar https://www.hackster.io/mirkix/kinetis-flexio-ultrasonic-radar-573b40 Self-powered weather station https://www.hackster.io/user52242/self-powered-weather-station-b4252d Android Guided Vehicle https://www.hackster.io/11bharath11/android-guided-vehicle-6892d3 PHYSICALLY REGULATED OPERATING SUITE LIMB https://www.hackster.io/20321/physically-regulated-operating-suite-limb-89a61e Energy Efficient Cooler for home https://www.hackster.io/20986/energy-efficient-cooler-for-home-de0dc5 FRDM K82F-Play X-0 Game https://www.hackster.io/akashchandran30/frdm-k82f-play-x-0-game-0ebccb Working With FRDM-K82F https://www.hackster.io/akashchandran30/working-with-frdm-k82f-9459cd The Portable All Season Clothes Dryer https://www.hackster.io/alz190/the-portable-all-season-clothes-dryer-76626a NXP Scarab Robot https://www.hackster.io/asokfair/nxp-scarab-robot-eb6c6d Tip Tap Game https://www.hackster.io/bharathegr/tip-tap-game-e700e1 Read accelerometer x and y axis readings from the FRDM K82F https://www.hackster.io/gauravmishra/read-accelerometer-x-and-y-axis-readings-from-the-frdm-k82f-b47cc6 VIRTUAL SPEECH FOR VOCALLY CHALLENGED https://www.hackster.io/JagadeeshKumar/virtual-speech-for-vocally-challenged-5233cb Alexa Intelligent Personal Assistant / Home Automation Usi https://www.hackster.io/lalitnandandiwakar/alexa-intelligent-personal-assistant-home-automation-usi-862ea8 Musical Alarm Clock https://www.hackster.io/LiLShReDdeR/musical-alarm-clock-83edfc Eternal Pose to Antarctica: South Pointing Smart LED Compass https://www.hackster.io/PSoC_Rocks/eternal-pose-to-antarctica-south-pointing-smart-led-compass-5fb86f Gesture Drive: Accelerate with Freedom  https://www.hackster.io/PSoC_Rocks/gesture-drive-accelerate-with-freedom-e9dde1 Setting Up GPIO, PWM, I2C for K82 Freedom Board in KDS https://www.hackster.io/PSoC_Rocks/setting-up-gpio-pwm-i2c-for-k82-freedom-board-in-kds-e5b73d Accident Alert system https://www.hackster.io/ROBINTHOMAS/accident-alert-system-e97f34 NeerAssure: Water Usage Statistics https://www.hackster.io/Shachindra/neerassure-water-usage-statistics-03268b Getting Started with FRDM-K82F https://www.hackster.io/sowmith/getting-started-with-frdm-k82f-05b3ed FlexIO Car https://www.hackster.io/SURESH_V_S/flexio-car-13a692 FlexIO Based Smart Helmet https://www.hackster.io/taifur/flexio-based-smart-helmet-82efe9 SMART BAND https://www.hackster.io/user355388807/smart-band-6d3d31 Theft Alarm K82F TSI_LAUNCHPAD https://www.hackster.io/Vignesh_Jaishankar/theft-alarm-k82f-tsi-launchpad-2ff06c FlexIO security keypad https://www.hackster.io/nxp/flexio-security-keypad-15d9fd NXP Recommends http://www.nxp.com/products/microcontrollers-and-processors/arm-processors/kinetis-cortex-m-mcus/k-series/k8x-scalable-secure-mcus:K8X-SCALABLE-SECURE-MCU?cof=0&am=0 AN5275: Using FlexIO for parallel Camera Interfacehttp://cache.nxp.com/files/microcontrollers/doc/app_note/AN5275.pdf?fsrch=1&sr=1&pageNum=1 AN5280: Using Kinetis FlexIO to drive a Graphical LCD Training
View full article
Video Link : 6084 Description: Teensy 3.1 and Teensy-LC are a complete USB-based development tools featuring respectively the Kinetis 32-bit Cortex-M4 K20 and Cortex-M0+ KL26 devices running @ 72 and 48 MHz. Teensy 3.1 is equipped with 256KB flash and 64KB RAM. Teensy-LC board is equipped with 62KB flash and 8KB RAM. Value Propositions * Very small footprint development tools * Very Low Cost dev tool * They are able to implement many different projects * Open source SDKs Teensy board with very high extended-Arduino compatible performance levels and libraries taking advantage of Kinetis features like low power modes and internal DMA. Libraries for LED (WS2811) and 16bit 44.1kHz audio quality is where Makers go when they need quality, performance and small size. FEATURES Hardware Specifications Specification Teensy LC Teensy 3.0 Teensy 3.1 & 3.2 Units Processor MKL26Z64VFT4 32 bit ARM Cortex-M0+ 48 MHz MK20DX128 32 bit ARM Cortex-M4 48 MHz MK20DX256 32 bit ARM Cortex-M4 72 MHz Flash Memory 62 128 256 kbytes RAM Memory 8 16 64 kbytes EEPROM 1/8 (emu) 2 2 kbytes I/O 46, 5 Volt 34, 3.3 Volt 34, 3.3V, 5V tol Analog In 8 14 21 PWM 9 10 12 UART,I2C,SPI 1,1,1 3,1,1 3,2,1 Price $24.00 $19.00 $19.80 USD Software Enablement Teensy 3.2 & 3.1: New Features https://www.pjrc.com/store/teensylc.html RECOMMENDED PRODUCTS Product Description Kinetis K Microcontroller Kinetis L Microcontroller RESOURCES Title Type PJRC (Teensy Official Website) Web Page
View full article
KL25Z    FRDM-KL25Z|Freedom Development Platform|Kinetis MCU|NXP K64F FRDM-K64F|Freedom Development Platform|Kinetis MCUs|NXP Links to MBED FRDM-KL25Z | mbed FRDM-K64F | mbed
View full article
Demo This development board for RF power products is now available from Richardson, one of NXPs distributors Demo / product features This next generation board provides RF design engineers with best efficiency, a range of frequencies and voltage. Richardson has a combined depth of real-world RF technical experience and a solid partnership with NXP that enables us to serve the unique needs of the RF design engineer. Richardson and NXP serve customers across a similar set of vertical markets, including aerospace and defense, military, wireless infrastructure, mobile, broadcast and ISM. Links RF | NXP Richardson RFPD - NXP Semiconductors
View full article
New Family of Doherty IC Power Amplifiers Coupled with a Dual-Path Pre-distortion Linearizer Demo / product features A2I20D040N 5 W final 42% efficiency 1.8-2.2 GHz wideband Doherty NXP’s A2I20D040N The Maxim SC2200 dual path linearizer enhances the already high linearity of the NXP devices with LTE signals as wide as 3x20 MHZ Maxim’s solution provides improvement of up to 28 dB in ACLR and 38 dBm in IMD NXP Recommends A2I20D040Nhttp://www.nxp.com/products/rf/rf-power-transistors/rf-cellular-infrastructure/1450-2200-mhz/1400-2200-mhz-5-w-avg.-28-v-wideband-integrated-rf-ldmos-amplifier:A2I20D040N?fsrch=1&sr=1&pageNum=1 SC2200: www.maximintegrated.com/SC2200 Fast-track 5G with NXP Application Note AN5296 - Effective Small Cell Solutions for MIMO Radios
View full article
Demo NXP has a full range of high power LDMOS ICs for powering outdoor small cell base stations. Our small cell portfolio delivers industry leading performance with powerful, efficient and diverse range of outdoor small cells targeting rapidly growing frequencies and regions in the world. This demo features new devices that cover all cellular bands from 700 to 3800 MHz     Outdoor Small Cells for Cellular Infrastructure - YouTube        Demo / product features A2I08H040N 9 W IC Final Small Cell Solution Frequency 728-960 MHz Gain 30.7 dB Efficiency 46% TO-270WB-15 plastic package   A2I20H060N 5 W IC Final Small Cell Solution Frequency 1800–2200 MHz Doherty performance at 8 dB OBO 1805-1880 MHz Gain 28.5 dB Efficiency 44% Peak 48.5 dBm TO-270WB-15 plastic package   A2I25H060N 5 W IC Final Small Cell Solution Frequency 2300–2690 MHz Doherty performance at 8 dB OBO 2496-2690 MHz Gain 27.5 dB Efficiency 41% Peak 48.2 dBm TO-270WB-17 plastic package   A2I35H060N 5 W IC Final Small Cell Solution Frequency 3400–3800 MHz Doherty performance at 8 dB OBO 3400-3600 MHz Gain 24 dB Efficiency 33% Peak 48 dBm TO-270WB-17 plastic package   A2I25D025N 5 W IC Final Small Cell Solution Frequency 2100–2900 MHz Doherty performance at 8 dB OBO 2400-2600 MHz Gain 29.1 dB Efficiency 40% Peak 45.8 dBm TO-270WB-15 plastic package   A2I25D012N 2.2 W IC Final Small Cell Solution Frequency 2100-2900 MHz Gain 27.7 dB Efficiency 40% TO-270WB-15 plastic package   A2I20D040N 5 W IC Final Small Cell Solution Frequency 1400–2300 MHz Doherty performance at 8 dB OBO 1850-1950 MHz Gain 29.7 dB Efficiency 46% Peak 47.6 dBm TO-270WB-17 plastic package   A2I20D020N 2.5 W Final Small Cell Solution Frequency 1400-2300 MHz Gain 29.7 dB Efficiency 43% TO270WB-17 plastic package   NXP Recommends A2I08H040N A2I20H060N A2I25H060N A2I35H060N A2I25D025N A2I25D012N A2I20D040N A2I20D020N   Fast Track 5G with NXP   Fast-Track 5G with NXP - YouTube 
View full article
Demo   Virtualized Network Platforms demonstrates the capability of QorIQ® Layerscape processors in virtualized Customer Premises and Provider edge solutions using Open System Architecture and Open Standards like OF, ODP and OPNFV. NXP’s Layerscape processors represent the ideal union of processing power and hardware acceleration engines for SDN and NFV applications. Layerscape processors are SDN and NFV ready with Dynamic Service Chaining support which enables a customizable network, meaning operators can add new services more quickly than legacy equipment would allow. Dynamic VNFs provide end-to-end network virtualization and offload processing from edge to cloud. The Layerscape platform software includes 3rd party commercial applications like Trend Micro™ and optimized open source applications which take advantage of NXP’s integrated hardware acceleration engines, Data Path Acceleration Architecture (DPAA) and AIOP to accelerate the data plane. The platform is user programmable and supports standard APIs such as ODP for easy application portability.   Features Demonstration of an SDN and NFV-based Virtualized Network Platform that enables bi-directional, dynamic and on-demand service delivery – by connecting access appliances (wired and wireless) to edge appliances and showcases traffic flow from different virtual network functions.   The access equipment can virtualize network processing such as firewall, anti-virus, and deep packet inspection (DPI) to the bigger network equipment (edge appliances) and enable service providers to push services (network appliances) to the access equipment. This solution demonstrates an "intelligent edge" such as a vCPE, empowered by the dynamic re-distribution of network processing by the virtualized access platform. Service-chaining, Trend-Micro (DPI) and Quality of Service (QoS) are also demonstrated.   Demonstrates Docker® virtualization support on LS2085ARDB by running Docker-based virtual network function using SEC Hardware acceleration for showcasing Openssl benchmarking from vNF.   This Virtualized Customer Premise Equipment (vCPE) solution is implemented with Open-Contrail, OpenNFV, OpenStack, OpenDaylight, OpenFlow, OpenVswitch and runs on NXP's QorIQ Layerscape LS Series 64-bit ARM platform. Specific solutions include the QorIQ LS1043 Wireless Gateway and the LS2085 Virtualized Edge Appliance.
View full article
Demo Features: Based on latest SOM Colibri i.MX7D 512 MB from Toradex Heterogeneous architecture: Qt on top of Linux on ARM® Cortex®-A7 core Realtime control loop on FreeRTOS on ARM® Cortex®–M4  Balancing control loop and mechanics by Antmicro  Face emotions using Qt 5.6 beta done by The Qt Company ______________________________________________________________________________________________________________________ NXP Featured Products: NXP i.MX 7 - Computer | System on Modules ______________________________________________________________________________________________________________________ C78
View full article
LPC54114 Audio and Voice Recognition Kit The LPC54114 Audio and Voice Recognition Kit provides a complete hardware and software platform for developers to evaluate and prototype with the LPC54114 processor family. It has been developed by NXP® to provide all that you need to develop an always-on low power voice triggering product. Features: LPCXpresso54114 (OM13089) development board with: LPC54114 dual-core (M4F and dual M0) MCU running at up to 100 MHz in LQFP64 package. Hi-speed USB based debug probe with CMSIS-DAP and SEGGER J-Link OB protocol options. Connectivity for external debug probes. Micro USB connector for LPC54114 USB device operation. Tri-color LED. Target Reset, ISP and interrupt/user buttons. On-board 1.8 V / 3.3 V or external power supply options. 8 Mb Macronix MX25R SPI flash. FTDI UART connector and built-in UART to USB bridge options. Built-in MCU power consumption and supply voltage measurement for LPC54114 device. UART, I²C and SPI port bridging from LPC54114 target to USB via Link2 device. FTDI UART connector. Digital Mic/Audio codec/OLED display (“MAO”) shield with: Knowles SPH0641LM4H digital microphone. Cirrus Logic (Wolfson) WM8904 audio codec with stereo line in/out sockets. Monochrome OLED display (160 x160 pixels). Demos: Include USB/I2S audio demo, as well as voice recognition demos leveraging partner technology (Malaspina and Sensory) http://cache.nxp.com/documents/application_note/AN11855.zip Videos: These videos showcase the NXP’s LPC54114 MCU in a kit designed for customers to evaluate its capabilities for audio and voice processing _______________________________________________________________________________________________________ Featured NXP Products: Product Link LPC54000 Series LPC54000|Power Efficient 32-bit Microcontrollers (MCUs)|Cortex®-M4 Core | NXP  LPC54114 Audio and Voice Recognition Kit https://www.nxp.com/design/microcontrollers-developer-resources/lpcxpresso-boards/lpc54114-audio-and-voice-recognition-kit:OM13090?&fsrch=1&sr=1&pageNum=1 _______________________________________________________________________________________________________
View full article
Demo This demo features NXP’s new Sensor Toolbox - The complete ecosystem for product development with NXP sensors. It encompasses NXP's wide spectrum of new sensor boards and software tools across various compatible Kinetis microcontrollers, enabling ‘out of box’ sensor demonstrations, sensor evaluation, sensor application development and prototyping. Check out a variety of impressive 'Out of Box' Sensor Demonstrations and Sensor Fusion, all enabled by NXP’s new Sensor Toolbox.  Also, don’t miss the Sensor Fusion Demo now running on the LPC platform Features Plug and Play ‘Out of the Box’ Demonstrations with 6 different sensor hardware demo kits using the Sensor Toolbox Community Edition (STB-CE) software. Showcasing the ease of quickly visualizing sensor data. 6 Sensor Demo kits include : FRDM-K64F-AGM01  (Sensor Toolbox Demo Kit for 9-Axis Solution) FRDM-K22F-SA9500  (Sensor Toolbox Demo Kit for FXLC95000CL Intelligent Motion Sensor) FRDMKL25-A8471 (Sensor Toolbox Demo Kit for FXLS8471Q  3-Axis linear Accelerometer) FRDMKL25-A8491 (Sensor Toolbox Demo Kit for MMA8491Q  3-Axis Digital Accelerometer) FRDMKL25-P3115 (Sensor Toolbox Demo Kit for MPL3115A2 Pressure Sensor/ Altimeter) RD-KL25-AGMP01 ( Sensor Toolbox 10-Axis Data Collection Board) Sensor Fusion Demo (Part of the Sensor Toolbox-CE software) Demo showcasing device orientation detection in real time using 3, 6 and 9-Axis Sensor Fusion options. (Rotating 3D PCB display) Showcasing no cost, open source and the most complete Sensor Fusion solution available. Showcasing sensor fusion running on both Kinetis and LPC MCU platforms with NXP’s 9-axis sensor board  (AGM01-Kinetis Board and AGM01-LPC Board) _______________________________________________________________________________________________________ Featured NXP Products: Sensor Toolbox|NXP _______________________________________________________________________________________________________
View full article
Demo The NTAG21x family provides a particularly well suited portfolio for NFC enhanced smart consumer products, driving the integration between physical objects and the Internet of Things. These smart products enable deeper customer relationships, real-time customer service, brand protection, condition monitoring and much more. A simple tap with an NFC enabled phone on the product can connect the consumer to the brand (opening a webpage, starting an application, providing additional information) and show the authenticity of a product       Features: Fully NFC Forum tag type 2 compliant Multiple memory options from 48 – 888 Bytes to support simple, complex and multi-purpose applications 32-bit password authentication to protect data stored into the tag UID ASCII mirror, which maps the IC unique serial number as an ASCII encoded string to a stored NDEF message to simplify tag serialization A 24-bit NFC counter, along with an ASCII mirror to improve tag usage analytics Integrated originality signature to enable the detection of unauthorized NTAG copies (and hence of unauthorized products the tags are attached to) Fast read command to speed up tag registration in inline processes such as print media or product label manufacturing   _______________________________________________________________________________________________________   Featured NXP Products: NTAG|NXP UCODE|NXP ICODE|NXP _______________________________________________________________________________________________________
View full article
Demo This demo shows how the FRDM-K82F board along with an OV7670 Camera module can be utilized to create a USB web camera application. The demo application software is delivered as part of the KSDK software enablement. The FS USB video class demonstration can deliver images to PCs or tablets. Features: USB Video device class demonstration application included in Kinetis SDK Easy connection to PC or tablet  display and process video captured from the device FlexIO camera driver utilized to interface to OV7670 camera module _______________________________________________________________________________________________________ Featured NXP Products: ARM Cortex-M4 Cores|Kinetis K8x MCUs|NXP AN5275: Using FlexiO for Parallel Camera Interface AN5280: Using Kinetis FlexIO to drive a Graphical LCD _______________________________________________________________________________________________________
View full article