Use Of Unique 40-bit MAC Address In Kinetis Wireless . - NXP

6m ago
21 Views
1 Downloads
632.21 KB
8 Pages
Last View : 14d ago
Last Download : 3m ago
Upload by : Aydin Oneil
Transcription

NXP Semiconductors Application Note Document Number: AN12272 Rev. 0, 10/2018 Use of Unique 40-bit MAC Address in Kinetis Wireless Microcontrollers 1. Introduction For IEEE standard based wireless devices, device address is required to be unique to ensure transmitted data is received by the intended recipient. To meet this requirement, NXP's Kinetis wireless microcontroller series (KW) ships a pre-programmed address that can be used to form a global unique address. This feature allows a static firmware image to be programmed during manufacturing, alleviating the need for companies to program a dynamic firmware image which only differs by the address. This application note describes how IEEE MAC addresses are handled in the Bluetooth low energy (BLE) and IEEE 802.15.4 that are the foundation of Thread and Zigbee mesh networking protocols. It also describes how these addresses are handled in NXP’s protocol stacks and how to utilize the unique 40-bit MAC address factory programmed by NXP into each Kinetis KW device to generate a global unique address for a companies end product. 2018 NXP B.V. Contents 1. 2. 3. Introduction . 1 IEEE Addresses for BLE and IEEE 802.15.4. 2 Kinetis W Factory Programmed 40-bit Unique MAC Address . 3 3.1 Uniqueness . 3 3.2 Registers. 4 3.3 Software . 5 4. Conclusion . 7

IEEE Addresses for BLE and IEEE 802.15.4 2. IEEE Addresses for BLE and IEEE 802.15.4 Before explaining how to use the unique 40-bit MAC address provided in NXP Kinetis Wireless Microcontrollers Series, it is useful to know how addresses are formed for BLE and IEEE 802.15.4 based wireless protocols. BLE addresses (BD ADDR) are unique 48-bit addresses assigned to each Bluetooth device by the manufacturer. The upper half of a BLE address (most-significant 24 bits) is called the Organizationally Unique Identifier (OUI) and is used to determine the manufacturer of a device. OUI prefixes are assigned by the Institute of Electrical and Electronic Engineers (IEEE) and are unique to each company. A company is assigned a block of addresses and thus will have multiple OUIs. The lower half (LAP) of a BLE address (least-significant 24 bits) is where a unique value is programmed into each device manufactured by the company. This provides 2 24 or over 16 M unique addresses. If a company ships over 2 24 devices to the market, the OUI will need to change to ensure devices with the same address are not shipped. Figure 1 shows a BLE address diagram. Figure 1. BLE Address For information on the company assigned numbers, visit: numbers IEEE 802.15.4 based wireless protocols, like Thread and Zigbee, use a unique 64-bit MAC address which consists of a 24-bit Organizationally Unique Identifier (OUI), and a 40-bit unique value provided by the company which assures 2 40 unique addresses for the devices shipped by each company. If a company ships over 2 40 devices to the market, the OUI will need to change to ensure devices with the same address are not shipped. Use of Unique 40-bit MAC Address in Kinetis Wireless Microcontrollers, Application Note, Rev. 0, 10/2018 2 NXP Semiconductors

Kinetis W Factory Programmed 40-bit Unique MAC Address Figure 2 shows a 64-bit IEEE 802.15.4 MAC address. Figure 2. IEEE 802.15.4 MAC Address 3. Kinetis W Factory Programmed 40-bit Unique MAC Address 3.1 Uniqueness NXP's Kinetis wireless microcontroller series (KW) include a unique 40-bit MAC address factory programmed which can be used to form a global unique address for BLE and IEEE 802.15.4 based wireless protocols. It is included in KW40Z/30Z/20Z, KW41Z/31Z/21Z, KW35A/36A, KW35Z/36Z and K32W0x microcontrollers. 40-bit MAC address ensures uniqueness and tracks the device ID with the unique value associated for that device. NXP guarantees no duplication across the Kinetis Wireles connectivity devices for the unique 40-bit MAC address for the first 2 40 shipped microcontrollers. Use of Unique 40-bit MAC Address in Kinetis Wireless Microcontrollers, Application Note, Rev. 0, 10/2018 NXP Semiconductors 3

Kinetis W Factory Programmed 40-bit Unique MAC Address 3.2 Registers For KW41Z/31Z/21Z, KW35A/36A, KW35Z/36Z and KW40Z/30Z/20Z microcontrollers, the 40-bit MAC address is stored in MAC ADDR LSB and MAC ADDR MSB read only registers as shown in Figure 3. Figure 3. . MAC ADDR LSB and MAC ADDR MSB For K32W0x microcontrollers, the 40-bit MAC address is stored in RFADDRL (Figure 4) and RFADDRH (Figure 5) registers. Figure 4. RFADDRL Use of Unique 40-bit MAC Address in Kinetis Wireless Microcontrollers, Application Note, Rev. 0, 10/2018 4 NXP Semiconductors

Kinetis W Factory Programmed 40-bit Unique MAC Address Figure 5. RFADDRH 3.3 Software Addresses handling in the NXP connectivity protocol stacks for all Kinetis Wireless microcontrollers series (KW) could make use of the UID (Unique Identification for the Device) to generate address instead of the 40-bit MAC address. Unique Identification value can be found in all Kinetis families but it’s not a tracked ID so it is not recommended to form a global unique address for the wireless protocol. The recommendation is to use the unique 40-bit MAC address which is a tracked ID. NOTE 40-bit MAC address is not included for KW01Z and KW2xD microcontrollers. UID can be used in this case. Use of Unique 40-bit MAC Address in Kinetis Wireless Microcontrollers, Application Note, Rev. 0, 10/2018 NXP Semiconductors 5

Kinetis W Factory Programmed 40-bit Unique MAC Address Below examples show how addresses are generated to make use of the 40-bit MAC address in KW41 KSDK for BLE and Zigbee wireless protocol stacks. Example 1. Change the Bluetooth Address using the UID An example taken from KW41 BLE connectivity stack “SDK 2.2 FRDM-KW41Z” downloaded from https://mcuxpresso.nxp.com make use of the function “ControllerSetBD ADDR” to change the Bluetooth Address using the UID as shown in Figure 6. Figure 6. UID to set ble address Example 2. 40-bit MAC address implementation Figure 7 shows an example of 40-bit MAC address implementation where “ControllerSetBD ADDR” function was modified to support it. Figure 7. 40-bit MAC address to set bluettoth addres Use of Unique 40-bit MAC Address in Kinetis Wireless Microcontrollers, Application Note, Rev. 0, 10/2018 6 NXP Semiconductors

Conclusion Other example taken from the same KW41 connectivity software, it is for Zigbee where the MAC address is generated in “APP vSetMacAddr” function that makes use of the UID. For this example, MAC address is loaded in u64IeeeAddr variable. If 40-bit MAC address implementation is needed, then “APP vSetMacAddr” function needs to be modified by only setting u64IeeeAddr with the 40-bit MAC address and with the OUI portion. 4. Conclusion The use of unique address in each device trough the diverse wireless protocols is a necessity in the market; To fill this need, each microcontroller must have a unique identifier to be used for this purpose. NXP Kinetis Wireless Microcontrollers Series helps to provide devices in market with unique identifiers to assure uniqueness in each device by including a 40-bit MAC unique address programmed in mcu’s flash. Use of Unique 40-bit MAC Address in Kinetis Wireless Microcontrollers, Application Note, Rev. 0, 10/2018 NXP Semiconductors 7

Information in this document is provided solely to enable system and software implementers to use NXP products. There are no express or implied copyright licenses granted hereunder to design or fabricate any integrated circuits based on the information in this document. NXP reserves the right to make changes without further notice to any products herein. How to Reach Us: Home Page: nxp.com Web Support: nxp.com/support . NXP makes no warranty, representation, or guarantee regarding the suitability of its products for any particular purpose, nor does NXP assume any liability arising out of the application or use of any product or circuit, and specifically disclaims any and all liability, including without limitation consequential or incidental damages. “Typical” parameters that may be provided in NXP data sheets and/or specifications can and do vary in different applications, and actual performance may vary over time. All operating parameters, including “typicals,” must be validated for each customer application by customer's technical experts. NXP does not convey any license under its patent rights nor the rights of others. NXP sells products pursuant to standard terms and conditions of sale, which can be found at the following address: nxp.com/SalesTermsandConditions. While NXP has implemented advanced security features, all products may be subject to unidentified vulnerabilities. Customers are responsible for the design and operation of their applications and products to reduce the effect of these vulnerabilities on customer’s applications and products, and NXP accepts no liability for any vulnerability that is discovered. Customers should implement appropriate design and operating safeguards to minimize the risks associated with their applications and products. NXP, the NXP logo, NXP SECURE CONNECTIONS FOR A SMARTER WORLD, COOLFLUX, EMBRACE, GREENCHIP, HITAG, I2C BUS, ICODE, JCOP, LIFE VIBES, MIFARE, MIFARE CLASSIC, MIFARE DESFire, MIFARE PLUS, MIFARE FLEX, MANTIS, MIFARE ULTRALIGHT, MIFARE4MOBILE, MIGLO, NTAG, ROADLINK, SMARTLX, SMARTMX, STARPLUG, TOPFET, TRENCHMOS, UCODE, Freescale, the Freescale logo, AltiVec, C 5, CodeTEST, CodeWarrior, ColdFire, ColdFire , C Ware, the Energy Efficient Solutions logo, Kinetis, Layerscape, MagniV, mobileGT, PEG, PowerQUICC, Processor Expert, QorIQ, QorIQ Qonverge, Ready Play, SafeAssure, the SafeAssure logo, StarCore, Symphony, VortiQa, Vybrid, Airfast, BeeKit, BeeStack, CoreNet, Flexis, MXC, Platform in a Package, QUICC Engine, SMARTMOS, Tower, TurboLink, and UMEMS are trademarks of NXP B.V. All other product or service names are the property of their respective owners. Arm, AMBA, Arm Powered, Artisan, Cortex, Jazelle, Keil, SecurCore, Thumb, TrustZone, and μVision are registered trademarks of Arm Limited (or its subsidiaries) in the EU and/or elsewhere. Arm7, Arm9, Arm11, big.LITTLE, CoreLink, CoreSight, DesignStart, Mali, Mbed, NEON, POP, Sensinode, Socrates, ULINK and Versatile are trademarks of Arm Limited (or its subsidiaries) in the EU and/or elsewhere. All rights reserved. Oracle and Java are registered trademarks of Oracle and/or its affiliates. The Power Architecture and Power.org word marks and the Power and Power.org logos and related marks are trademarks and service marks licensed by Power.org. 2018 NXP B.V. Document Number: AN12272 Rev. 0 10/2018

Kinetis W Factory Programmed 40-bit Unique MAC Address Use of Unique 40-bit MAC Address in Kinetis Wireless Microcontrollers, Application Note, Rev. 0, 10/2018 6 NXP Semiconductors Below examples show how addresses are generated to make use of the 40-bit MAC address in KW41 KSDK for BLE and Zigbee wireless protocol stacks. Example 1.

Related Documents:

Windows XP Professional 32-Bit/64-Bit, Windows Vista Business 32-Bit/64-Bit, Red Hat Enterprise Linux WS v4.0 32-bit/64-bit, Red Hat Enterprise Desktop v5.0 32-bit/64-bit (with Workstation Option), SUSE Linux Enterprise (SLE) desktop and server v10.1 32-bit/64-bit Resources Configuration LUTs

8127FS–AVR–02/2013 4. Register Summary Note: 1. For compatibility with future devices, reserved bits should be written to zero if accessed. Reserved I/O memory addresses Address Name Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Page 0x3F SREG I T H S V N Z C Page 12 0x3E SPH Stack Poin

Microsoft Windows 7, 32-bit and 64-bit Microsoft Windows 8 & 8.1, 32-bit and 64-bit Microsoft Windows 10, 32-bit and 64-bit Microsoft Windows Server 2008 R2 Microsoft Windows Server 2012, 64-bit only RAM: Minimum 2 GB for the 32-bit versions of Microsoft Windows 7, Windows 8, Windows 8.1, and Windows 10.

Implementation o Load bit o Read logic o Write logic Multi-bit register Bit out load in if load(t-1) then out(t) in(t-1) else out(t) out(t-1) 1-bit register o Register’s width: a trivial parameter o Read logic o Write logic Bit. . . w-bit register out load in w w Bit Bit Aside: Hardware Simulation Relevant topics from the HW simulator tutorial:

Windows Desktop Windows 7 (32-bit and 64-bit) KB4054518 must be installed on Windows 7 (32-bit and 64-bit) systems. For more information, read the KB article here.* Windows 7 Embedded (32-bit and 64-bit) KB4054518 must be installed on Windows 7 Embedded (32-bit and 64-bit) systems. For more information, read the KB article here.*

Jan 25, 2016 · Windows 10 (32-bit and 64-bit) Windows 8.1 (32- bit and 64-bit) Windows 8 (32-bit and 64-bit) Windows 7 (32-bit and 64-bit) Java version of API and Wizard: Ubuntu 11.0.4, MacOS 10.7 and 10.8; Java 8 Supported Virtualization Environments: Support for

23. coupling for corkscrew and 24. lanyard hole 25. bit wrench 26. bit case with 27. – bit Hex 3 28. – bit Hex 4 29. – bit Phillips 0 30. – bit Phillips 3 31. – bit Torx 10 32. – bit Torx 15 33. space for additional bits 34. mini screwdriv

Avaya one-X Agent User Guide Work-at-Home and JDZ Users This document provides instructions on installing and using the Avaya one-X Agent application. Note: Avaya one-X Agent is currently supported by Windows 7 32-bit or 64-bit with Service Pack 1; Windows 8 32-bit or 64-bit; Windows 8.1 32-bit or 64-bit; and Windows 10 32-bit or 64-bit. Contents