Upload
others
View
1
Download
0
Embed Size (px)
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, ¶meter);
if (parameter & UART_ERRORS) {errors = (u_char) (parameter & UART_ERRORS);// set error flags back to normalparameter = UART_ERRORS;_ioctl(_fileno(stream), UART_SETSTATUS, ¶meter);
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