Top Banner
DOT3 Radio Stack Jaein Jeong, Sukun Kim Nest Retreat January 16, 2003
27

DOT3 Radio Stack

Jan 13, 2016

Download

Documents

Tanner

DOT3 Radio Stack. Jaein Jeong, Sukun Kim Nest Retreat January 16, 2003. Introduction. A wireless sensor sample analog/digital signals communicate with other nodes in wireless. MICA is the current platform in Berkeley. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: DOT3 Radio Stack

DOT3 Radio Stack

Jaein Jeong, Sukun Kim

Nest Retreat

January 16, 2003

Page 2: DOT3 Radio Stack

Introduction

• A wireless sensor– sample analog/digital signals

– communicate with other nodes in wireless.

• MICA is the current platform in Berkeley.

• MICA has been useful, but not enough for large scale app due to short range

Outdoor range of MICA (256 packets)

0.0%

20.0%

40.0%

60.0%

80.0%

100.0%

0 50 100 150 200 250 300 350 400

Distance (ft)

Rat

io o

f re

ceiv

ed p

acke

ts

One side of Cory Hall (240 ft)

Page 3: DOT3 Radio Stack

Mote with CC1000 Radio

• DOT3 is a new platform with ChipCon CC1000 radio chip.

• MICA2 is a variation of DOT3 that has full features of MICA.

• We aim to have a working network stack for motes with ChipCon radio in nesC.

A DOT3 with its radio chip in the middle

A MICA2 mote

Page 4: DOT3 Radio Stack

Design of Chipcon Radio Stack

Calculates CRC.

Retransmit dropped packetsusing Acknowledgement

Sends and receives data in bytesand notifies data arrival

Setting the parameters forCC1000 radio chip

Packet decomposition and reassembly

*:newly made or modified from existing network stack

ReliableCommGenericCommAMStandard

RadioCRCPacketRFComm

ChipconSpiByteFifoCSecDedEncoding

ChannelMonC

Application

Radio

**

*

*

*

• Components accessing the radio were modified

• Components for reliable communication were added.

Page 5: DOT3 Radio Stack

Packet decomposition and reassembly• The application level uses a packet

whereas the underlying radio uses a byte as a data unit.

• Thus, a packet needs to be decomposed to bytes and reassembled from bytes.

• Since a packet is received as a sequence of bytes, we need a way to tell the beginning of the packet.

• The byte data can be transferred in half duplex mode.

Page 6: DOT3 Radio Stack

Packet decomposition and reassembly• Packet decomposition and reassembly can be

implemented using a state machine in the below:

• Send mode consists of one state– IDLE state: sends a byte when the byte buffer is empty

• Receive mode consists of two states– FIND_SYNC state : detects the start of a packet using

preamble and start symbol

– READING state: reads the remaining bytes and triggers an event when all the bytes are read.

IDLESend a packet

READINGReceive a byte FIND_SYNC

Detected Preamble

DetectedStart Symbol

Not detectedStart Symbol

Init

A packetis received

Page 7: DOT3 Radio Stack

Interface to CC1000

• Microprocessor transfers data to and from the radio using byte level interface called SPI.

• The microprocessor needs to communicate with CC1000 radio chip to configure or monitor the status of it.

• The properties like operating frequency and power consumption can be set up by changing the CC1000 status registers.

ChipconM(for configuration)

SpiByteFifoC(for data transfer)

Micro-processor

Radio

ByteBuffer StatusReg

WriteByte

ReadByte

Bufferfilled?

SPIInterrupt

PALE PDATA

DataSPI Clock

PCLK

Page 8: DOT3 Radio Stack

Using multiple channels

• CC1000 can operate in several different bands: 433, 866 and 916 MHz using corresponding capacitors and inductors.

• Within each band, CC1000 can operate in different frequencies according to the status register values.

• Using multiple channels can help reducing the interference between nodes.

• We found working frequencies in 433 MHz band and here are the examples:

CH 1 CH 2 CH 3 CH 4 MICA

TX Frequency(MHz) 433.02433.6

4434.2

0434.7

1916.50

RX Frequency (MHz) 433.09433.7

1434.2

7434.7

8916.50

Page 9: DOT3 Radio Stack

• Add source address and Ack number to packets.• Receiver keeps track of senders to handle duplicate pa

ckets

Ready

WaitSend Done

Time Out

BeginSuccess (Ack received)Fail (Repeated timeout)

Sender Receiver

Data

Ack

Src #1 Acknum #1

Src #2 Acknum #2

Src #n Acknum #n

Ack table

Send

How to transmit messages reliably?

Page 10: DOT3 Radio Stack

Evaluation

• Evaluation Methods– Sends a number of packets and counts the

packets received as we vary the environment.

– Ratio of received packets is our metric.

– In outdoor tests, we vary the distance.

– In indoor tests, we vary the number of nodes and number of channels used.

0ft 300ft600ft 900ft 1200ft

Page 11: DOT3 Radio Stack

Effectiveness of ECC

• Transmission with error correction code, no packets were dropped within 800ft compared to 500ft for non-ECC version.

The effectiveness of ECC (256 packets)

0%

20%

40%

60%

80%

100%

100

200

300

400

500

600

700

800

900

1000

1100

1200

Distance (ft)

Rat

io o

f re

ceiv

ed p

acke

ts

Best EffortBest Effort w/o ECC

RayleighFading

Page 12: DOT3 Radio Stack

Effectiveness of retransmission

• Retransmission reduced the packet losses with additional time costs.

The effectiveness of retransmission (256 packets)

0%

20%

40%

60%

80%

100%

100

200

300

400

500

600

700

800

900

1000

1100

1200

Distance (ft)

Rat

io o

f re

ceiv

ed p

acke

ts

Best EffortRetransmit 2Retransmit 3Retransmit 5

Page 13: DOT3 Radio Stack

Multiple Senders

Sender 1

Sender 2

Sender 3

Receiver

Page 14: DOT3 Radio Stack

Cases with multiple senders

• Retransmission reduced most of the packet losses due to collision.

The effects of retransmission on collisions(128 packets per node)

0%

20%

40%

60%

80%

100%

1 2 3 4Number of senders

Rat

io o

f suc

cess

fully

rece

ived

pac

kets

Best Effort

Retransmission

Page 15: DOT3 Radio Stack

Cases with multiple senders

• Retransmission paid a little high costs for increasing packet receiving rate (over 6 times in case of 4 senders).

Effects of retransmission on transmission time (128 packets per node)

0

20

40

60

80

100

120

140

1 2 3 4Number of senders

Tim

e to

com

plet

ion

(s) Best Effort

Retransmission

Page 16: DOT3 Radio Stack

Multiple Channels

Receiver 1

Receiver 4

Receiver 2

Receiver 3

Sender 1

Sender 2

Sender 3

Sender 4

Page 17: DOT3 Radio Stack

Cases with multiple channels

• Using multiple channels reduced the packet losses due to collision.

The effects of multiple channels on collision(128 pakcets per node)

0%

20%

40%

60%

80%

100%

1 2 4 (case 1) 4 (case 2)Number of channels used

Ra

tio o

f re

ceiv

ed

pa

cke

ts Best Effort

Retransmission

Page 18: DOT3 Radio Stack

Cases with multiple channels

• Using multiple channels reduced the time cost to achieve high receiving rate

The effects of multiple channels ontransmission time (128 packets per node)

0

50

100

150

200

250

300

1 2 4 (case 1) 4 (case 2)

Number of channels used

Tra

nsm

issi

on

tim

e (

s)

Best Effort

Retransmission

Page 19: DOT3 Radio Stack

Discussion & Future Works

• Comparison with MICA– Pros: Better coverage and reliability

– Cons: Slower transmission (60 sec vs. 9 sec for 512 packets) caused by

» Slower clock rate of radio (19Kbps vs. 40Kbps)

» Less efficient interrupt handler

– Modifying interrupt handler (from SPI to timer interrupt) will address this.

Page 20: DOT3 Radio Stack

Discussion & Future Works

Best EffortRetransmission(5 retransmission)

Retransmission(0 retransmission)

31 sec 64 sec 32 sec

Time to send/receive 512 packets

• Problems with our reliable transmission method

– Effective for moderate collision, but not for high collision.

– Introducing exponential back-off is expected to be helpful.

– Overhead of retransmission is negligible.

Page 21: DOT3 Radio Stack

Discussion & Future Works

• Using multiple channels– Reduces collision.

– Currently statically determined, vulnerable to misconfiguration.

– Dynamic frequency allocation is needed.

• Coding with error correction code– The theoretical lower bound of code word is 13-bits wit

hout considering preamble and start symbol.

– Existing implementation used 3 byte code word.

– Reducing the code word to 2 bytes will be helpful.

Page 22: DOT3 Radio Stack

End

• Questions?

Page 23: DOT3 Radio Stack

Extra Slides

Page 24: DOT3 Radio Stack

Overview of existing network stack (MICA)• Converts a packet to and from raw bytes

• Sends and receives bytes

• Calculates CRC for sanity check

• Codes data with ECC

Application

GenericCommAMStandard

RadioCRCPacketMicaHighSpeedRadioM

ChannelMonC SpiByteFifoC SecDedEncoding

Page 25: DOT3 Radio Stack

Data interface to the radio

• Microprocessor transfers data to and from the radio using byte level interface called SPI.

• SPI consists of byte buffer, status register and clock.

• At each clock interrupt, status register is checked for a received byte.

• With no incoming byte, the microprocessor can send a byte into the byte buffer by setting the data direction as send.

SpiByteFifoC(for data transfer)

Micro-processor

SPI

Radio

ByteBuffer

StatusReg

SPI Clock Data

WriteByte

ReadByte

Bufferfilled?

SPIInterrupt

Page 26: DOT3 Radio Stack

Configuring Chipcon Radio

• The microprocessor needs to communicate with CC1000 radio chip to configure or monitor the status of it.

• The properties like operating frequency and power consumption can be set up by changing the CC1000 status registers.

• By setting or clearing three pins, the microprocessor can send or read a byte to a CC1000 status register.

ChipconM(for configuration)

Microprocessor

Radio

WriteByte

ReadByte

PCLK PDATAPALE

Page 27: DOT3 Radio Stack

Rayleigh Fading

• The graphs in outdoor tests consistently had dips at 900 ft.

• Radio waves from the sender can take different paths and cancel each other when the waves are of opposite phase.

• This is called Rayleigh Fading.

Receiver

Sender

Some obstacle (e.g. building)

+