RF Communication in TinyOS2X
㈜한백전자
Background
IEEE 802 LAN/MAN Standards Committee802.1Higher
802.1Higher Layer LAN Protocols Working Group
802.11Wireless Local Area Network Working Group
802.15Wireless Personal Area Network Working Group
802.20MBWA Working Group
TG1 WPAN/Bluetooth Task Group
TG2 Coexistence Task Group
TG3 WPAN High Rate Task Group
TG4 WPAN Low Rate Task Group
… … … …
+ ZigBee
IEEE 802.15.4 TG4
Low Rate Wireless Personal Area Networks
LR-WPAN A LR-WPAN is a simple, low-cost communication network that allows
wireless connectivity in applications with limited power
Main objectives of an LR-WPAN Easy installation
Reliable data transfer
Short-range operation
Low cost
Reasonable battery life,
Simple protocol.
Table1 cited in 29 of standard
BAND COVERAGE DATARATE CHANNELS
2.4 GHz ISM Worldwide 250 kbps 16
915 MHz ISM Americas 40 kbps 10
868 MHz Europe 20 kbps 1
The IEEE Standard 802.15.4 A low-rate wireless personal area network
low-cost, very low-power short-range wireless communication LR-WPAN’s important goal
“cost” “power consumption”
Applications Industry controlling Home automation, networking Personal healthcare Vehicle communication
IEEE 802.15.4a
Scope Detecting distance (<1m) / low power / low-cost
Alternative PHY UWB
CSS: Chirp Spread Spectrum
IEEE 802.15.4b
Scope Extension previous IEEE 802.15.4-2003
Beacon mode, beacon schedule
Security
Remove unnecessary descriptions
Current Beacon IEEE 802.15.4-2006 (publish)
6LoWPAN (IPv6 over Low Power Wireless PAN)
Implement IPv6 technology on USN
Issue 15.4 PDU -> 102 byte, IPv6 MTU -> 1280byte
Shim layer for fragmenting and assembling MTU
802.15.4 and Zigbee
802.15.4 Define PHY and MAC
ZigBee Define Network, Security
and Applications
PHY868MHz / 915MHz / 2.4GHz
MAC
NetworkStar / Mesh / Cluster-Tree
Security32- / 64- / 128-bit encryption
Application
API
ZigBeeAlliance
IEEE 802.15.4
Customer
Silicon Stack App
CC2420
About Chipcon CC2420
CC2420 Features Support 2.4 GHZ IEEE 802.15.4
DSSS modem, 250 kbps, 50 registers, 368 byte RAM
Low power consumption (RX: 19.7mA, TX:17.4mA)
Separate transmit and receive FIFOs (each 128 byte)
Easy configuration interface (4-wire SPI interface)
802.15.4 MAC hardware support: Automatic preamble generator, Synchronization word insertion/detection
CRC-16 computation and checking over the MAC payload
Clear Channel Assessment
Energy detection / digital RSSI
Link Quality Indication
Full automatic MAC security
About Chipcon CC2420
CC2420 power consumption and switch delay
State Consumption
Voltage Off 1 uA
Power Down 20 uA
IDLE Mode 426 uA
Receive Mode 19.7 mA
Transmit Mode
P = -25 dBm
P = -15 dBm
P = -10 dBm
P = −5 dBm
P = 0 dBm
8.5 mA
9.9 mA
11 mA
14 mA
17.4 mA
states Delay
Startup time 300 ~ 500 uS
Startup time (V on) 100 uS
Setting time 2 uS
CC2420 Receive Mode 1
Receive Mode Set SRXON register
RX check by SFD, FIFO, FIFOP pin In TinyOS, use FIFOP pin
SFLUSHRX command flush RX RAM
CC2420 Receive Mode 2
Data in RXFIFO Data in RXFIFO includes MPDU as well as RSSI and QLI
RSSI and QLI are inserted instead of CRC filed
CC2420 Transmit Mode
Transmit Mode Set STXON register
TX check by SFD pin In TinyOS, do not use interrupt pin
SFLUSHTX command flush TX RAM
CC2420 Radio Chip
RSSI, LQI, CCA
RSSI (Received Signal Strength Indicator) 8 bit values in RSSI_VAL register (need 8 symbol)
P = RSSI_VAL – RSSI_OFFSET (-45) [dBm]
LQI (Link Quality indication) LQI is limited from 0 to 255, however CC2420 support 0~110 correlation
base on the incoming packets LQI = (CORR – a) x b
CCA (Clear Channel Assessment) CS threshold level is programmed by CCA_THR register
CCA 3 modes are assigned CCA_POLARITY register
RF Communication
RF functions in TinyOS2X
Flooding Protocol
Flooding
Flooding is that all nodes participate with data forwarding without fixed
routing path.
Firstly, source node broadcasts its data packet including destination
address, and other neighbor nodes forward it.
Finally, destination node can receive the data packet
Drawback of Flooding
Flooding’s limitations Nodes can receive same packets because of broadcast
All nodes should participate flooding for transmitting one data packet
Even if the destination node received data packet, the flooding protocol is
not finished
It has serious collision problem because all nodes participate flooding
Other approach for overcoming flooding
LAR By using location information, flooding
region is limited
Gossiping By using probability, data forwarding decision is changed
Hierarchical Routing Select coordinator
Only coordinator participate flooding
p.23
Gradient-Based or Tree-Based Routing
GBR (Gradient-Based Routing) or Tree Routing The interest packet is required to record the number of hops from the sink.
Each node calculates the minimum number of hops, called height.
A gradient is defined as the difference between a node's height and that of its
neighbor.
Data packet is forwarded on the link
with the largest gradient.
Homework
Ubi-HomeNet Exercise Hanback_TestTree. Read 15 chapter (ZigbeX’s textbook)
Understand 15 chapter example
Experiment 15 chapter tests
Report Searching some special codes to force multihop in Hanback TestTree
Changing the example not to work forced multihop in Hanback TestTree
Draw function diagram of tree routing components
Q & A