Chapter 1
Introduction to the Development Kit
16
© NXP Semiconductors 2017
JN-UG-3121 v1.1
1.2.5 Wireless Network Protocol Stack
The software which runs on a wireless network node deals with both application-
specific tasks (e.g. temperature measurement) and networking tasks (e.g. assembling
a message to send to another node). The software on a node is organised as a
number of layers, forming a stack, with the user application at the top. The basic layers
of a wireless network protocol stack are typically as illustrated in
The stack layers are outlined below, from top to bottom:
Application layer:
Contains the user applications which run on the network
node and provides an interface to the lower layers
Network layer:
Provides the networking functionality and an interface to the
IEEE 802.15.4 layers (see below) - for example, this layer could be provided by
the ZigBee PRO protocol, but is not required for a pure IEEE 802.15.4 network
Data Link layer:
Provided by the MAC (Media Access Control) layer of the
IEEE 802.15.4 standard, and responsible for message assembly/disassembly
and addressing (e.g. specifying the destination of outgoing messages)
Physical layer:
Provided by the PHY (Physical) layer of the IEEE 802.15.4
standard and concerned with interfacing to the physical transmission medium
(radio, in this case)
A number of C APIs (Application Programming Interfaces) are provided to allow a user
application to easily interact with the layers of the stack. The required APIs depend on
the protocol used (e.g. IEEE 802.15.4, ZigBee PRO) and are supplied in the relevant
NXP Software Developer’s Kit (SDK) - see
The software components that implement the Data Link and Physical layers of the
stack are pre-programmed in on-chip ROM. The user application is developed and
built on a PC. The resulting application binary file also incorporates the Network layer
of the stack and is loaded into the Flash memory of the node.
In order to use the ZigBee Smart Home Demonstration that is pre-loaded in the
JN517x-DK005 Development Kit boards, no knowledge of the protocol software is
required. However, you should familiarise yourself with the software for your chosen
protocol before starting your own application development - refer to
details of the user documentation for the different protocols.
Figure 6: Basic Layers of Stack
Data Link layer
Network layer
Application layer
Physical layer