ZigBee/IEEE 802.15.
4
Overview
Y.-C. Tseng
CS/NCTU
國立交通大學 資訊工程系 曾煜棋 教授 1
New trend of wireless technology
Most Wireless industry focuses on increasing high data
throughput
A set of applications require simple wireless connectivity,
relaxed throughput, very low power, short distance and
inexpensive hardware.
Industrial
Agricultural
Vehicular
Residential
Medical
國立交通大學 資訊工程系 曾煜棋 教授 2
What is ZigBee Alliance?
An organization with a mission to define reliable, cost effective,
low-power, wirelessly networked, monitoring and control
products based on an open global standard
Alliance provides interoperability, certification testing, and
branding
國立交通大學 資訊工程系 曾煜棋 教授 3
IEEE 802.15 working group
國立交通大學 資訊工程系 曾煜棋 教授 4
Comparison between WPAN
國立交通大學 資訊工程系 曾煜棋 教授 5
ZigBee/IEEE 802.15.4 market feature
Low power consumption
Low cost
Low offered message throughput
Supports large network orders (<= 65k nodes)
Low to no QoS guarantees
Flexible protocol design suitable for many applications
國立交通大學 資訊工程系 曾煜棋 教授 6
ZigBee network applications
monitors TV VCR
sensors DVD/CD
INDUSTRIAL CONSUMER
automation & ELECTRONIC
Remote
control COMMERCIAL S control
monitors ZigBee mouse
diagnostics PERSONAL LOW DATA-RATE PC & keyboard
HEALTH RADIO DEVICES PERIPHERAL
sensors joystick
CARE S
security
consoles
HVAC
portables TOYS & HOME lighting
educational GAMES AUTOMATION closures
國立交通大學 資訊工程系 曾煜棋 教授 7
Wireless technologies
Range
Meters
GSM GPRS EDGE 3G 2000
10,000
2003-4
2005
1,000
802.11b 802.11a/g
100 ZigBee
Hiper
Bluetooth 2.0 LAN/2
Bluetooth
Bluetooth 1.5 WiMedia Bandwidth
10 kbps
10 100 1,000 10,000 100,000
國立交通大學 資訊工程系 曾煜棋 教授 8
ZigBee/802.15.4 architecture
ZigBee Alliance
45+ companies: semiconductor mfrs, IP providers, OEMs, etc.
Defining upper layers of protocol stack: from network to application, including
application profiles
First profiles published mid 2003
IEEE 802.15.4 Working Group
Defining lower layers of protocol stack: MAC and PHY
國立交通大學 資訊工程系 曾煜棋 教授 9
How is ZigBee related to IEEE
802.15.4?
ZigBee takes full advantage of a powerful physical radio
specified by IEEE 802.15.4
ZigBee adds logical network, security and application
software
ZigBee continues to work closely with the IEEE to ensure an
integrated and complete solution for the market
國立交通大學 資訊工程系 曾煜棋 教授 10
IEEE 802.15.4 overview
國立交通大學 資訊工程系 曾煜棋 教授 11
General characteristics
Data rates of 250 kbps , 20 kbps and 40kpbs.
Star or Peer-to-Peer operation.
Support for low latency devices.
CSMA-CA channel access.
Dynamic device addressing.
Fully handshaked protocol for transfer reliability.
Low power consumption.
Channels:
16 channels in the 2.4GHz ISM band,
10 channels in the 915MHz ISM band
1 channel in the European 868MHz band.
Extremely low duty-cycle (<0.1%)
國立交通大學 資訊工程系 曾煜棋 教授 12
IEEE 802.15.4 basics
802.15.4 is a simple packet data protocol for lightweight
wireless networks
Channel Access is via Carrier Sense Multiple Access with
collision avoidance and optional time slotting
Message acknowledgement
Optional beacon structure
Target applications
Long battery life, selectable latency for controllers, sensors, remote
monitoring and portable electronics
Configured for maximum battery life, has the potential to last as
long as the shelf life of most batteries
國立交通大學 資訊工程系 曾煜棋 教授 13
IEEE 802.15.4 Device Types
There are two different device types :
A full function device (FFD)
A reduced function device (RFD)
The FFD can operate in three modes by serving as
Device
Coordinator
PAN coordinator
The RFD can only serve as:
Device
國立交通大學 資訊工程系 曾煜棋 教授 14
FFD vs RFD
Full function device (FFD)
Any topology
Network coordinator capable
Talks to any other device
Reduced function device (RFD)
Limited to star topology
Cannot become a network coordinator
Talks only to a network coordinator
Very simple implementation
國立交通大學 資訊工程系 曾煜棋 教授 15
Star topology
Network
coordinator
Master/slave
Full Function Device (FFD)
Reduced Function Device (RFD)
Communications Flow
國立交通大學 資訊工程系 曾煜棋 教授 16
Peer to peer topology
Point to point Tree
Full Function Device (FFD)
Communications Flow
國立交通大學 資訊工程系 曾煜棋 教授 17
Device addressing
Two or more devices communicating on the same physical
channel constitute a WPAN.
A WPAN includes at least one FFD (PAN coordinator)
Each independent PAN will select a unique PAN identifier
Each device operating on a network has a unique 64-bit
extended address. This address can be used for direct
communication in the PAN
A device also has a 16-bit short address, which is allocated by
the PAN coordinator when the device associates with its
coordinator.
國立交通大學 資訊工程系 曾煜棋 教授 18
IEEE 802.15.4 physical layer
國立交通大學 資訊工程系 曾煜棋 教授 19
IEEE 802.15.4 PHY overview
PHY functionalities:
Activation and deactivation of the radio transceiver
Energy detection within the current channel
Link quality indication for received packets
Clear channel assessment for CSMA-CA
Channel frequency selection
Data transmission and reception
國立交通大學 資訊工程系 曾煜棋 教授 20
IEEE 802.15.4 PHY Overview
Operating frequency bands
868MHz/ Channel 0 Channels 1-10
2 MHz
915MHz
PHY
868.3 MHz 902 MHz 928 MHz
2.4 GHz
PHY Channels 11-26 5 MHz
2.4 GHz 2.4835 GHz
國立交通大學 資訊工程系 曾煜棋 教授 21
Frequency Bands and Data Rates
The standard specifies two PHYs :
868 MHz/915 MHz direct sequence spread spectrum (DSSS)
PHY (11 channels)
1 channel (20Kb/s) in European 868MHz band
10 channels (40Kb/s) in 915 (902-928)MHz ISM band
2450 MHz direct sequence spread spectrum (DSSS) PHY (16
channels)
16 channels (250Kb/s) in 2.4GHz band
國立交通大學 資訊工程系 曾煜棋 教授 22
PHY Frame Structure
PHY packet fields
Preamble (32 bits) – synchronization
Start of packet delimiter (8 bits) – shall be formatted as
“11100101”
PHY header (8 bits) –PSDU length
PSDU (0 to 127 bytes) – data field
Sync Header PHY Header PHY Payload
Start of Frame Reserve PHY Service
Preamble Packet Length (1 bit) Data Unit (PSDU)
Delimiter (7 bit)
4 Octets 1 Octets 1 Octets
0-127 Bytes
國立交通大學 資訊工程系 曾煜棋 教授 23
IEEE 802.15.4 MAC
國立交通大學 資訊工程系 曾煜棋 教授 24
Superframe
Beacon Beacon
CAP CFP
GTS GTS
Inactive
0 1
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
SD = aBaseSuperframeDuration*2 SO symbols (Active)
BI = aBaseSuperframeDuration*2 BO symbols
A superframe is divided into two parts
Inactive: all station sleep
Active:
Active period will be divided into 16 slots
16 slots can further divided into two parts
Contention access period
Contention free period
國立交通大學 資訊工程系 曾煜棋 教授 25
Superframe
Beacons are used for
starting superframes
synchronizing with other devices
announcing the existence of a PAN
informing pending data in coordinators
In a “beacon-enabled” network,
Devices use the slotted CSMA/CA mechanism to contend for the
usage of channels
FFDs which require fixed rates of transmissions can ask for
guarantee time slots (GTS) from the coordinator
國立交通大學 資訊工程系 曾煜棋 教授 26
Superframe
The structure of superframes is controlled by two parameters:
beacon order (BO) : decides the length of a superframe
superframe order (SO) : decides the length of the active potion in
a superframe
For a beacon-enabled network, the setting of BO and SO
should satisfy the relationship 0≦SO≦BO≦14
For channels 11 to 26, the length of a superframe can range
from 15.36 msec to 215.7 sec (= 3.5 min).
國立交通大學 資訊工程系 曾煜棋 教授 27
Superframe
Each device will be active for 2-(BO-SO) portion of the time, and
sleep for 1-2-(BO-SO) portion of the time
Duty Cycle:
BO-SO 0 1 2 3 4 5 6 7 8 9 ≧10
Duty cycle (%) 100 50 25 12 6.25 3.125 1.56 0.78 0.39 0.195 < 0.1
國立交通大學 資訊工程系 曾煜棋 教授 28
Data Transfer Model (I)
Data transferred from device to coordinator
In a beacon-enable network, a device finds the beacon to
synchronize to the superframe structure. Then it uses slotted
CSMA/CA to transmit its data.
In a non-beacon-enable network, device simply transmits its data
using unslotted CSMA/CA
Communication to a coordinator
In a non beacon-enabled network
Communication to a coordinator
In a beacon-enabled network
國立交通大學 資訊工程系 曾煜棋 教授 29
Data Transfer Model (II-1)
Data transferred from
coordinator to device in a
beacon-enabled network:
The coordinator indicates in
the beacon that some data
is pending.
A device periodically listens
to the beacon and transmits
a Data Requst command
using slotted CSMA/CA.
Then ACK, Data, and ACK
follow … Communication from a coordinator
In a beacon-enabled network
國立交通大學 資訊工程系 曾煜棋 教授 30
Data transfer model (II-2)
Data transferred from
coordinator to device in a
non-beacon-enable network:
The device transmits a
Data Request using
unslotted CSMA/CA.
If the coordinator has its
pending data, an ACK is
replied.
Then the coordinator Communication from a coordinator
transmits Data using in a non beacon-enabled network
unslotted CSMA/CA.
If there is no pending data,
a data frame with zero
length payload is
transmitted.
國立交通大學 資訊工程系 曾煜棋 教授 31
Channel Access Mechanism
Two type channel access mechanism:
beacon-enabled networks slotted CSMA/CA channel access
mechanism
non-beacon-enabled networks unslotted CSMA/CA channel
access mechanism
國立交通大學 資訊工程系 曾煜棋 教授 32
Slotted CSMA/CA algorithm
In slotted CSMA/CA
The backoff period boundaries of every device in the PAN shall
be aligned with the superframe slot boundaries of the PAN
coordinator
i.e. the start of first backoff period of each device is aligned with the
start of the beacon transmission
The MAC sublayer shall ensure that the PHY layer commences
all of its transmissions on the boundary of a backoff period
國立交通大學 資訊工程系 曾煜棋 教授 33
Slotted CSMA/CA algorithm (cont.)
Each device maintains 3 variables for each transmission
attempt
NB: number of times that backoff has been taken in this attempt
(if exceeding macMaxCSMABackoff, the attempt fails)
BE: the backoff exponent which is determined by NB
CW: contention window length, the number of clear slots that
must be seen after each backoff
always set to 2 and count down to 0 if the channel is sensed to be
clear
The design is for some PHY parameters, which require 2 CCA for
efficient channel usage.
Battery Life Extension:
designed for very low-power operation, where a node only
contends in the first 6 slots
國立交通大學 資訊工程系 曾煜棋 教授 34
Slotted CSMA/CA (cont.) need 2 CCA to
ensure no
collision
國立交通大學 資訊工程系 曾煜棋 教授 35
Why 2 CCAs to Ensure Collision-Free
Each CCA occurs at the boundary of a backoff slot (= 20
symbols), and each CCA time = 8 symbols.
The standard species that a transmitter node performs the
CCA twice in order to protect acknowledgment (ACK).
When an ACK packet is expected, the receiver shall send it after
a tACK time on the backoff boundary
tACK varies from 12 to 31 symbols
One-time CCA of a transmitter may potentially cause a collision
between a newly-transmitted packet and an ACK packet.
(See examples below)
國立交通大學 資訊工程系 曾煜棋 教授 36
Why 2 CCAs (case 1)
Backoff boundary
Existing
session
New CCA
transmitter
Backoff Detect
end here an ACK
New
transmitter CCA CCA
Backoff Detect
end here an ACK
國立交通大學 資訊工程系 曾煜棋 教授 37
Why 2 CCAs (Case 2)
Backoff boundary
Existing
session
New CCA
transmitter
Backoff Detect
end here an ACK
New
transmitter CCA
Backoff Detect
end here an DATA
國立交通大學 資訊工程系 曾煜棋 教授 38
Why 2 CCAs (Case 3)
Backoff boundary
Existing
session
New CCA CCA
transmitter
Backoff Detect
end here an ACK
New
transmitter CCA
Backoff Detect a
end here DATA
國立交通大學 資訊工程系 曾煜棋 教授 39
Unslotted
CSMA/CA
only one
CCA
國立交通大學 資訊工程系 曾煜棋 教授 40
GTS Concepts (I)
A guaranteed time slot (GTS) allows a device to operate on
the channel within a portion of the superframe
A GTS shall only be allocated by the PAN coordinator
The PAN coordinator can allocated up to 7 GTSs at the same
time
The PAN coordinator decides whether to allocate GTS based
on:
Requirements of the GTS request
The current available capacity in the superframe
國立交通大學 資訊工程系 曾煜棋 教授 41
GTS Concepts (II)
A GTS can be deallocated
At any time at the discretion of the PAN coordinator or
By the device that originally requested the GTS
A device that has been allocated a GTS may also operate in
the CAP
A data frame transmitted in an allocated GTS shall use only
short addressing
國立交通大學 資訊工程系 曾煜棋 教授 42
GTS Concepts (III)
Before GTS starts, the GTS direction shall be specified as
either transmit or receive
Each device may request one transmit GTS and/or one receive
GTS
A device shall only attempt to allocate and use a GTS if it is
currently tracking the beacon
If a device loses synchronization with the PAN coordinator, all
its GTS allocations shall be lost
The use of GTSs be an RFD is optional
國立交通大學 資訊工程系 曾煜棋 教授 43
Association Procedures (1/2)
A device becomes a member of a PAN by associating with its
coordinator
Procedures
Coordinator Device
Scan
Association req. channel
ACK
Make Beacon Wait for
decision (pending address) response
Data req.
ACK
Association resp.
ACK
國立交通大學 資訊工程系 曾煜棋 教授 44
Association Procedures (2/2)
In IEEE 802.15.4, association results are announced in an
indirect fashion.
A coordinator responds to association requests by appending
devices’ long addresses in beacon frames
Devices need to send a data request to the coordinator to
acquire the association result
After associating to a coordinator, a device will be assigned a
16-bit short address.
國立交通大學 資訊工程系 曾煜棋 教授 45
ZigBee Network Layer Protocols
國立交通大學 資訊工程系 曾煜棋 教授 46
ZigBee Network Layer Overview
Three kinds of networks are supported: star, tree, and mesh
networks
國立交通大學 資訊工程系 曾煜棋 教授 47
ZigBee Network Layer Overview
Three kinds of devices in the network layer
ZigBee coordinator: responsible for initializing, maintaining, and
controlling the network
ZigBee router: form the network backbone
ZigBee end device: must be connected to router/coordinator
In a tree network, the coordinator and routers can announce
beacons.
In a mesh network, there is no regular beacon.
Devices in a mesh network can only communicate with each
other in a peer-to-peer manner
國立交通大學 資訊工程系 曾煜棋 教授 48
Address Assignment
In ZigBee, network addresses are assigned to devices by a
distributed address assignment scheme
ZigBee coordinator determines three network parameters
the maximum number of children (Cm) of a ZigBee router
the maximum number of child routers (Rm) of a parent node
the depth of the network (Lm)
A parent device utilizes Cm, Rm, and Lm to compute a parameter
called Cskip
which is used to compute the size of its children’s address pools
1 + Cm ⋅ ( Lm − d − 1), if Rm = 1 (a)
Cskip ( d ) = 1 + Cm − Rm − Cm ⋅ Rm Lm − d −1
, Otherwise (b)
1 − Rm
國立交通大學 資訊工程系 曾煜棋 教授 49
Cskip=31 Total:127
For node C 0 1 32 63 94
125,126
node A 32
If a parent node at depth Cm=6
Addr = 64,
Cskip = 1
d has an address Aparent, Rm=4
Lm=3
Addr = 92
the nth child router is Addr = 125
assigned to address Addr = 63,
Aparent+(n- Addr = 30
Cskip = 7
Addr = 0,
1)×Cskip(d)+1 C Cskip = 31
nth child end device is Addr = 1,
Addr = 126
Cskip = 7
assigned to address A
Addr = 40,
Addr = 32,
Aparent+Rm×Cskip(d)+n Addr = 31
B Cskip = 7
Cskip = 1
Addr = 33,
Cskip = 1
C Addr = 45
Addr = 38
Addr = 39
國立交通大學 資訊工程系 曾煜棋 教授 50
ZigBee Routing Protocols
In a tree network
Utilize the address assignment to obtain the routing paths
In a mesh network:
Routing Capability: ZigBee coordinators and routers are said to have
routing capacity if they have routing table capacities and route
discovery table capacities
There are 2 options:
Reactive routing: if having “routing capacity”
Tree routing: if having no routing capacity
國立交通大學 資訊工程系 曾煜棋 教授 51
ZigBee Tree Routing
When a device receives a Cm=6
Addr = 64,
Cskip = 1
packet, it first checks if it is the Rm=4
Lm=3
destination or one of its child Addr = 92
Addr = 125
end devices is the destination
If so, accept the packet or Addr = 63,
Cskip = 7
forward it to a child Addr = 30
Addr = 0,
Otherwise, relay it along the Cskip = 31
tree Addr = 126
Addr = 1,
Cskip = 7
A
Example: Addr = 31
Addr = 32,
Addr = 40,
Cskip = 1
Cskip = 7
B
38 45 Addr = 33,
Cskip = 1
38 92 C Addr = 45
Addr = 38
Addr = 39
國立交通大學 資訊工程系 曾煜棋 教授 52
ZigBee Mesh Routing
Route discovery by AODV-like routing protocol
The cost of a link is defined based on the packet delivery
probability on that link
Route discovery procedure
The source broadcasts a route request packet
Intermediate nodes will rebroadcast route request if
They have routing discovery table capacities
The cost is lower
Otherwise, nodes will relay the request along the tree
The destination will choose the routing path with the lowest cost and
then send a route reply
國立交通大學 資訊工程系 曾煜棋 教授 53
Routing in a Mesh network: Example
國立交通大學 資訊工程系 曾煜棋 教授 54
Summary of ZigBee network layer
Pros Cons
Star 1. Easy to synchronize 1. Small scale
2. Support low power
operation
3. Low latency
Tree 1. Low routing cost 1. Route reconstruction is
2. Can form superframes to costly
support sleep mode 2. Latency may be quite long
3. Allow multihop
communication
Mesh 1. Robust multihop 1. Cannot form superframes
communication (and thus cannot support
2. Network is more flexible sleep mode)
3. Lower latency 2. Route discovery is costly
3. Needs storage for routing
table
國立交通大學 資訊工程系 曾煜棋 教授 55