Design and Deployment od Wireless Networked Embeddd Systems · [Law2003,Vergetis2003], comparative...

Preview:

Citation preview

8-Nov-05

BTnodesDesign and Deployment of Wireless Networked Embedded Systems

Jan BeutelComputer Engineering and Networks Lab, ETH Zurich

2

Visions 1991 1999 20001996 20032001 2004

Wireless Sensor Networks

Applications 20042000 20032001

Military Surveillance

ZebraNetSensor Webs

Argo

Duck Island

Shooter LocalizationJames Reserve

UbiquitousVision

PicoRadioWireless Overlay

PaintableComputing

Scale FreeNetworks

Terminodes

Smart DustDirectedDiffusion COTS Dust

3

Visions 1991 1999 20001996 20032001 2004

Wireless Sensor Networks

Applications 20042000 20032001

Military Surveillance

ZebraNetSensor Webs

Argo

Duck Island

Shooter LocalizationJames Reserve

UbiquitousVision

PicoRadioWireless Overlay

PaintableComputing

Scale FreeNetworks

Terminodes

Smart DustDirectedDiffusion COTS Dust

Prototypes, Experiments and Research Demos

WSN Community

4

Visions 1991 1999 20001996 20032001 2004

Wireless Sensor Networks

Applications 20042000 20032001

Military Surveillance

ZebraNetSensor Webs

Argo

Duck Island

Shooter LocalizationJames Reserve

UbiquitousVision

PicoRadioWireless Overlay

PaintableComputing

Scale FreeNetworks

Terminodes

Smart DustDirectedDiffusion COTS Dust

ProductionApplications

Prototypes, Experiments and Research Demos

WSN CommunityOtherPeople

5

Argo – Global Ocean Observation StrategyGlobal array of temperature/salinity profiling floats

Satellite data relay to data centers on shoreOperational since 2000Developed and maintained mainly by oceanographers

6

Anti-Submarine Surveillance

Distributed acoustic monitoring and surveillanceAdvanced signal processingMostly wireline and analogFixed installations and mobile unitsMilitary development since the cold war

7

Globally Networked Weather Stations

8

Visions 1991 1999 20001996 20032001 2004

Wireless Sensor Networks

Applications 20042000 20032001

Military Surveillance

ZebraNetSensor Webs

Argo

Duck Island

Shooter LocalizationJames Reserve

UbiquitousVision

PicoRadioWireless Overlay

PaintableComputing

Scale FreeNetworks

Terminodes

Smart DustDirectedDiffusion COTS Dust

9

The WSN Evolution

“I have Motes.”Aka I write simulation papers.

“I have downloaded the TOS installer.”

“I checked out a demo example.”

“I changed a line of code.”“I use CVS and contribute.”

Peop

le/P

aper

s

10

WSN Development Reality

It is hard to deploy anywhere beyond 10-20 nodes today.

Coordinated methods and tools are missing today.

11

Deployment-support networkOperational conceptFeasibility study, experiments

Outline

Design and Development

Prototype and Pilot

Launch and Ramp Production Service and

SupportConcept/Theory

BTnode platform for fast-prototypingMetrics and comparison of existing platformsDesign of hard- and software based on standardized interfaces and event driven interaction

Bluetooth multihop networkingTree topology control mechanismsField ExperimentsXTC mesh networking

12

Deployment-support networkOperational conceptFeasibility study, experiments

Outline

Design and Development

Prototype and Pilot

Launch and Ramp Production Service and

SupportConcept/Theory

BTnode platform for fast-prototypingMetrics and comparison of existing platformsDesign of hard- and software based on standardized interfaces and event driven interaction

Bluetooth multihop networkingTree topology control mechanismsField ExperimentsXTC mesh networking

13

Wireless Sensor Network Systems Today

14

Large application domainNo unified one-size-fits-all solution [Römer2004]

Automated tools common in EDA communityE.g. semi-automatic design space exploration [Künzli2005,Anliker2004]

Current WSN community approachDevice characterization, e.g. Mote family [Polastre2005,Shnayder2004]

Tiered architectures [Estrin2003], WSN device classes [Hill2004]

Good platform?Suitable solution?Optimum match?

Metrics of WSN Platforms

Applications ?RequirementPlatform MetricsComparisons

15

State-of-the-Art Platforms – System Core

Mica2

Tmote Sky

Mica2Dot

Imote

Lack of Flexibility

16

State-of-the-Art Platforms – Radio Systems

Mica2

Tmote Sky

Mica2Dot

Imote

2 st

rate

gies

Packet oriented

Bitstream oriented

Event-based Interaction

Rea

l-tim

e pr

oces

sing

17

State-of-the-Art Platform Comparison

ImoteTmote SkyMica2Dot

System Core

Mica2

Radio Systems

Is there room for another platform?

Multipurposeradio?

Balancedcomputing resources?

18

Deployment-support networkOperational conceptFeasibility study, experiments

Outline

Design and Development

Prototype and Pilot

Launch and Ramp Production Service and

SupportConcept/Theory

BTnode platform for fast-prototypingMetrics and comparison of existing platformsDesign of hard- and software based on standardized interfaces and event driven interaction

Bluetooth multihop networkingTree topology control mechanismsField ExperimentsXTC mesh networking

19

The BTnode Platform

Prototype

IO/Peripherals

2nd Generation 3rd Generation

Communication Computation

20

58 mm

BTnode rev3 Architecture Details

32.5

mm

System coreAtmel ATmega128256 kB SRAMGeneric IO/PeripheralsSwitchable power supplies

Dual radio system

Bluetooth radio2.4 GHz Zeevo ZV4002

Low-power radio433-915 MHz ISMChipcon CC1000

21

State-of-the-Art Platforms Comparison

Tmote SkyMica2Dot Imote BTnode rev3

System Core

Mica2

Radio Systems

22

BTnut System Software

Versatile and flexible fast-prototypingLightweight operating system support in plain CLinux-to-AVR embedded emulationDemo applications and tutorial

simulate

emulate upload

compile

Built on top of multi-threaded Nut/OS frameworkNon-preemptive, cooperativemulti-threadingEvents, timersPriorities for threadsDynamic heap allocationInterrupt driven streaming I/O

23

Industrial technology transferCommercialization with ETH spin-off “Art of Technology”Commercial replicas resulting from open source policy

BTnodes in EducationDifferent labs and demosGraduate lab in embedded systems (120 participants)30-40 successfully completed student projects

BTnodes in Research Domains25+ wearable and ubiquitous computing applications and demosWireless (sensor) network research40+ scientific publications based on or related to BTnodes

BTnode Platform Success

0 100 200 300 400 500 600 700 800 900 100010

15

20

25

30

35

40

45

50

Slave sniff

Master sniff

Slave active

Master active

mA

samplesStandby

BTnode dev kit € 500

24

Deployment-support networkOperational conceptFeasibility study, experiments

Outline

Design and Development

Prototype and Pilot

Launch and Ramp Production Service and

SupportConcept/Theory

BTnode platform for fast-prototypingMetrics and comparison of existing platformsDesign of hard- and software based on standardized interfaces and event driven interaction

Bluetooth multihop networkingTree topology control mechanismsField ExperimentsXTC mesh networking

25

Deployment of Network Services

Example: Location Management Finding position based on radionavigationRobust network-based trilateration

Robust connectivityReliable data link layer

Service deployment functions Re-programmingSupervision, control and monitoringMeasurements, benchmarking

Requirement

26

Bluetooth Multihop Network Topologies

Constructing ad hoc network topologiesLarge networks, many devicesAll devices connectedTransparent multihop transport

Scatternet formation algorithmsBlueMesh [Petrioli2002], BlueStars [Petrioli2003], BlueRings [Foo2002], BlueTrees [Zaruba2001], mesh topologies [Guerin2003]

Single-hop connectivity [Law2003]

Complexity analysis [Law2003,Vergetis2003], comparative study [Basagni2004]

Mostly static, no (large-scale) implementation reports

27

Bluetooth Multihop Network Topologies

Initial experimentsTime-multiplexed, dumbbell-like connections

XHOPLarge, connected topologiesSimple, top-down tree-building

TreeNetDistributed tree topology formationRandom connection pointsStreaming data

DSNtrees

28

Simple Scatternet Tree Construction

Link layer connectivityRandom search and connect

Distributed coordinationInquiry() and connect() operations can exhibit long delaysNo a priori guarantee for successSerialization of parallel processes

loop {while (my_slaves < max_degree) dofound_nodes = inquiry();forall nodes in found_nodes doconnect();

}}

29

Making a Seven Line Algorithm Work

+ Adaptation to devicesRoot lockup, cycle elimination

+ Error handlingDeadlocks, timeouts

+ Robustness, performanceGreedy behavior, heuristics

loop {while (my_slaves < max_degree) do

found_nodes = inquiry();forall nodes in found_nodes do

connect();}

}

#define HEX2BYTE(c) ((u_char)(((c)<='9') ? (c)-'0' : tolower(c) - 'a' + 10))typedef struct _jaws_stack {

FILE *uart_terminal;HANDLE table_changed_event;bt_addr_t my_addr;struct btstack* bt_stack;bt_l2cap_stack_t *l2cap_stack;

} jaws_stack_t;jaws_stack_t* _jaws_stack;//int foo __attribute__ ((section (".noinit")));//int foo2 __attribute__ ((section (".eeprom")));void bt_print_bt_addr(bt_addr_t addr)

DEBUGT("%.2x:%.2x:%.2x:%.2x:%.2x:%.2x", addr[5], addr[4], addr[3], addr[2], addr[1], addr[0]);const char *bt_addr_to_string( char *buf, bt_addr_t addr)

sprintf_P( buf, PSTR("%.2x:%.2x:%.2x:%.2x:%.2x:%.2x"),addr[5], addr[4], addr[3], addr[2], addr[1], addr[0]);

return buf;}u_char* string_to_bt_addr(u_char* str, u_char* addr){

char i;u_char *strp = str;// skip whitespacewhile(*strp == ' ')

strp++;for(i = BD_ADDR_LEN-1; i >= 0; i--){

if(isxdigit(strp[0]) && isxdigit(strp[1])){addr[(u_char) i] = HEX2BYTE(strp[0]) << 4 |

HEX2BYTE(strp[1]);strp+=2;

}else{break;

}// skip ':'if(i > 0){

if(*strp == ':')strp++;

elsebreak;

}}

u_char get_uart_errors(FILE* stream){u_long parameter;u_char errors;// check driver status_ioctl(_fileno(stream), UART_GETSTATUS, &parameter);

if (parameter & UART_ERRORS) {errors = (u_char) (parameter & UART_ERRORS);// set error flags back to normalparameter = UART_ERRORS;_ioctl(_fileno(stream), UART_SETSTATUS, &parameter);

Seven lines

2000 lines~87 kbyte + Application support

Basic OS functionsDebugging, visualization, monitoringStepwise testing + deployment

30

DSNtrees – Field Experiments

Deployment using 70+ nodes on an office floor

Largest connected Bluetooth Scatternet

31

XTC – Bluetooth Mesh Networking

Bluetooth Mesh Networking based on BTnode Spec

Paper-grade algorithm to robust implementation

Experiments, measurements and

evaluation are ongoing

[Wattenhofer2004]

32

Deployment-support networkOperational conceptFeasibility study, experiments

Outline

Design and Development

Prototype and Pilot

Launch and Ramp Production Service and

SupportConcept/Theory

BTnode platform for fast-prototypingMetrics and comparison of existing platformsDesign of hard- and software based on standardized interfaces and event driven interaction

Bluetooth multihop networkingTree topology control mechanismsField ExperimentsXTC mesh networking

33

WSN Development Reality

It is hard to deploy anywhere beyond 10-20 nodes today.

Coordinated methods and tools are missing today.

34

Virtualization and EmulationEmStar [Ganesan2004]

BEE [Chang2003,Kuusilinna2003]

Today's WSN Design and Development

Sca

le

Figure abridged from D. Estrin/J. ElsonReality

SimulationTOSSIM [Levis2003]

PowerTOSSIM [Shnayder2004]

Avrora [Titzer2005]

Test GridsmoteLab [Werner-Allen2005]

Emstar arrays [Cerpa03/04]

Kansei [Dutta2005]

Closing in on the“real” experience

Specializedsimulation tools for WSN applications

Fast-prototyping in a controlled environment

35

Virtualization and EmulationEmStar [Ganesan2004]

BEE [Chang2003,Kuusilinna2003]

Today's WSN Design and Development

Sca

le

Figure abridged from D. Estrin/J. ElsonReality

SimulationTOSSIM [Levis2003]

PowerTOSSIM [Shnayder2004]

Avrora [Titzer2005]

Test GridsmoteLab [Werner-Allen2005]

Emstar arrays [Cerpa03/04]

Kansei [Dutta2005]

DeploymentIn-network reprogramming [Levis2004,Hui2004]

Calibration and Verification[Szewczyk2004]

Trial-and-error [Mainwaring2004,Hemingway2004,Cerpa2001]

Dependence on infrastructure[Szewczyk2004]

36

From Proof-of-concept to Real-world WSNs

Traditional test gridWiredImmobileNot scalable

In-network toolsUnreliable

Self-organizing backbone network

with deployment-support

services

Deployment-Support Network

37

Target Sensor Network

Next-Generation Deployment-Support

Developer Workstation

Deployment-Support NetworkTemporary, minimal invasiveVirtual connections to nodesReliable, wireless, scalable

38

WSN TargetApplication

JAWS Application Partitioning

JAWS ApplicationTopology Control

Connection Management

Data Transport

Caching

Node Management

Target AdapterTarget ControlProgrammingLogging

MonitorThreads/IRQsHigh level context

Codesize 100 kB

4 kB

2 kB

39

JAWS Application Example

Next steps: Distributed, time-synched, tracing

Test Setup: 20+ nodes Event TracingContext switchesInterrupts

40

Acknowledgements

BTnode Core TeamOliver Kasten, Matthias Ringwald, Kay Römer, Friedemann MatternPhilipp Blum, Matthias Dyer, Kevin Martin, Lennart Meier, Luca Negri, Martin Hinz, Lothar Thiele

MICS Algorithms CollaborationRegina O’ Dell-Bischoff, Fabian Kuhn, Aaron Zollinger, Roger Wattenhofer

Related publicationsL. Negri, J. Beutel and M. Dyer. The Power Consumption of Bluetooth Scatternets. CCNC 2006.J. Beutel, M. Dyer, L. Meier, and L. Thiele. Scalable topology control for deployment-sensor networks. IPSN 2005.J. Beutel. Robust Topology Formation using BTnodes. Computer Communications 2005.J. Beutel, M. Dyer, M. Hinz, L. Meier, M. Ringwald. Next-Generation Prototyping of Sensor Networks. SenSys 2004.J. Beutel, O. Kasten, F. Mattern, K. Römer, F. Siegemund, and L. Thiele. Prototyping wireless sensor network applications with BTnodes. EWSN 2004.J. Beutel, O. Kasten and M. Ringwald. BTnodes - A Distributed Platform for Sensor Nodes. SenSys 2003.

41

To probe further…

http://www.btnode.ethz.ch