computer engineering and networks laboratory btnodes directions in hard- and software architecture...

22
Computer Engineering Computer Engineering and Networks and Networks Laboratory Laboratory BTnodes Directions in Hard- and Software Architecture Jan Beutel, Oliver Kasten, Matthias Ringwald

Upload: hilary-parrish

Post on 06-Jan-2018

216 views

Category:

Documents


1 download

DESCRIPTION

BTnodes - Jan Beutel and Oliver Kasten May 27, 2003 Slide 3 Bluetooth Piconets Communication organized in piconets –controlled by one master –up to 7 active slaves –255 inactive (parked) slaves Master-Slave –implements centralized control –synchronization of all slaves –only master-slave communication Multiple piconets –separate channels –no coordination S1’’S2’’ S3’’ M’’ S1 S2 S3 M S2' S1' M'

TRANSCRIPT

Page 1: Computer Engineering and Networks Laboratory BTnodes Directions in Hard- and Software Architecture Jan Beutel, Oliver Kasten, Matthias Ringwald

Computer EngineeringComputer Engineeringand Networks and Networks LaboratoryLaboratory

BTnodesDirections in

Hard- and Software Architecture

Jan Beutel, Oliver Kasten, Matthias Ringwald

Page 2: Computer Engineering and Networks Laboratory BTnodes Directions in Hard- and Software Architecture Jan Beutel, Oliver Kasten, Matthias Ringwald

May 27, 2003Slide 2

BTnodes - Jan Beutel and Oliver Kasten

Initial Projects

Smart everyday objectsby attaching sensor nodes:– self aware– context sensitive– cooperative– integration into computing environment

Ad hoc networking scenarios– integrated application protocols– scalable multi-hop routing

Page 3: Computer Engineering and Networks Laboratory BTnodes Directions in Hard- and Software Architecture Jan Beutel, Oliver Kasten, Matthias Ringwald

May 27, 2003Slide 3

BTnodes - Jan Beutel and Oliver Kasten

Bluetooth Piconets

Communication organized in piconets– controlled by one master– up to 7 active slaves– 255 inactive (parked) slaves

Master-Slave– implements centralized control– synchronization of all slaves– only master-slave communication

Multiple piconets– separate channels– no coordination

S1’’ S2’’

S3’’M’’

S1 S2

S3M

S2'

S1'M'

Page 4: Computer Engineering and Networks Laboratory BTnodes Directions in Hard- and Software Architecture Jan Beutel, Oliver Kasten, Matthias Ringwald

May 27, 2003Slide 4

BTnodes - Jan Beutel and Oliver Kasten

Bluetooth v1.1 Scatternets

S2'M1‘ = S4

S1 S2

S3M1

Using gateway nodes No coordination Role switch necessary

Problems – synching to two FH

piconets– connected Slaves are

invisible– limited flexibility– Slave/Slave not possible

Networking has not yet been defined and is up to the application

S3’’

S1’’

S2’’

M1’’ = S1’

Page 5: Computer Engineering and Networks Laboratory BTnodes Directions in Hard- and Software Architecture Jan Beutel, Oliver Kasten, Matthias Ringwald

May 27, 2003Slide 5

BTnodes - Jan Beutel and Oliver Kasten

Future Bluetooth v1.2 Scatternets

Draft v1.2 in final voting phase

Participating in different Piconets on TDMA base

Supporting best effort traffic

Problems – distributed scheduling not

fully defined– networking not included– hardware not available

Page 6: Computer Engineering and Networks Laboratory BTnodes Directions in Hard- and Software Architecture Jan Beutel, Oliver Kasten, Matthias Ringwald

May 27, 2003Slide 6

BTnodes - Jan Beutel and Oliver Kasten

Bluetooth Host Controller Interface– standard interface for protocol software – providing access to lower levels of the protocol stack

HCI_COMMANDHCI_EVENT

Bluetooth module

Host processor

Physical interfaceHost Controller Interface

RFBaseband

Audio Link Manager

L2CAP

SDP

Applications

RFCOMM ...

UART

OGF OCF PARAMETERS

Page 7: Computer Engineering and Networks Laboratory BTnodes Directions in Hard- and Software Architecture Jan Beutel, Oliver Kasten, Matthias Ringwald

May 27, 2003Slide 7

BTnodes - Jan Beutel and Oliver Kasten

Bluetooth Connections

Managed by the host controller

Statemachine for each connection

Link Layer Control & Adaptation (L2CAP)– connection-oriented– connectionless data– protocol multiplexing for a

single “air interface”– packet segmentation and reassembly– channel abstraction– encryption– Security– …

RF

BasebandAudio Link Manager

RFCOMM

Host Controller Interface

SDP ...

Applications

L2CAP

Connected

Disconnected

Req DiscReq Conn

Page 8: Computer Engineering and Networks Laboratory BTnodes Directions in Hard- and Software Architecture Jan Beutel, Oliver Kasten, Matthias Ringwald

May 27, 2003Slide 8

BTnodes - Jan Beutel and Oliver Kasten

Hardware RequirementsAutonomous wireless communication and computing

platform based on a Bluetooth radio module and a microcontroller.

Requirements– small form factor, low component count– standardized wireless interface– flexible and cost effective deployment of large quantities of

networking nodes

Page 9: Computer Engineering and Networks Laboratory BTnodes Directions in Hard- and Software Architecture Jan Beutel, Oliver Kasten, Matthias Ringwald

May 27, 2003Slide 9

BTnodes - Jan Beutel and Oliver Kasten

61 mm

40 m

m

Hardware DetailsIntegrated

PIFA AntennaLEDs,Reset,Clocks

CommunicationEricsson Bluetooth Module

Generic Sensor Interfaces

UART and I2C Data Interfaces

Power Management

Memory128 kB Flash244 kB SRAM4 kB EEPROM

CPUAtmel ATmega 128L MCU8-Bit RISC (max. 8 MHz ~8MIPS)

Page 10: Computer Engineering and Networks Laboratory BTnodes Directions in Hard- and Software Architecture Jan Beutel, Oliver Kasten, Matthias Ringwald

May 27, 2003Slide 10

BTnodes - Jan Beutel and Oliver Kasten

Designing for Power Aware OperationFeatures

– optional switchable power supply for Bluetooth module– MCU with 6 power down modes– frequency scaling: 7.3 MHz - 57 kHz – low idle/sleep current

– single power supply (3.6 – 16 V), single internal voltage (3.3 V) – battery charge indicator– direct current access shunts for all components– internal Vcc available at every connector to power external sensor

modules

Power consumption @ 3.3V, 7.3 MHz [mW] max. typ. Lifetime [h]*– Bluetooth Connected/CPU On 250 160 12-19– Bluetooth Idle/CPU On 95 67 32-45– Bluetooth Off/CPU Idle 15 12 202-252– Bluetooth Off/CPU Sleep 6 <0.5 504-6048

*on 840 mAh Li-ion

Page 11: Computer Engineering and Networks Laboratory BTnodes Directions in Hard- and Software Architecture Jan Beutel, Oliver Kasten, Matthias Ringwald

May 27, 2003Slide 11

BTnodes - Jan Beutel and Oliver Kasten

Power Consumption Details

SensingTX/RX

Idle SensingTX/RX

Sensor Network Example: 10% duty cycle

Operation Power consumption [mW] Lifetime [h]*

4 sec sensing 12 2522 sec communication 160 1954 sec idle 0.5 6048

Total duty cycle ~ 6.5 mW 421*on 840 mAh Li-ion

t

P

Page 12: Computer Engineering and Networks Laboratory BTnodes Directions in Hard- and Software Architecture Jan Beutel, Oliver Kasten, Matthias Ringwald

May 27, 2003Slide 12

BTnodes - Jan Beutel and Oliver Kasten

Lightweight OS– event-driven application model– cooperative multithreading– device drivers (UART, RTC, ADC, ...)

Programming– standard C language– high-level Bluetooth interface– system software available as library – emulation environment on Linux

System Software

Page 13: Computer Engineering and Networks Laboratory BTnodes Directions in Hard- and Software Architecture Jan Beutel, Oliver Kasten, Matthias Ringwald

May 27, 2003Slide 13

BTnodes - Jan Beutel and Oliver Kasten

Multiple Drivers and the Dispatcher

received_irq()

Hardware

void handler( /* ... */ ) {}void main() { btn_disp_ev_reg( RECEIVE_EV, handler, 0 ); btn_disp_run();}

Application

Driver

handler()

read buffer

event buffer

Dispatcher

EVENT, handler funcRECEIVE_EV, handler()OTHER_EV, func2()

btn_disp_run()

RECEIVE_EV

handler()

read()

Page 14: Computer Engineering and Networks Laboratory BTnodes Directions in Hard- and Software Architecture Jan Beutel, Oliver Kasten, Matthias Ringwald

May 27, 2003Slide 14

BTnodes - Jan Beutel and Oliver Kasten

Getting going on BTnodes …

Documentation available on the Web– design documents– API documentation– mailing list

Software development tools– Gnu toolchain– avr-gcc, avr-libc, downloader, gdb– available for Linux, Windows and Mac OS X

BTnode System Software– snapshot packages and CVS repository– Linux emulation on x86 and iPAQ

.c

.o

.elf

.hex

.o.a

Page 15: Computer Engineering and Networks Laboratory BTnodes Directions in Hard- and Software Architecture Jan Beutel, Oliver Kasten, Matthias Ringwald

May 27, 2003Slide 15

BTnodes - Jan Beutel and Oliver Kasten

Bluetooth enabled AppliancesCommunication with other Bluetooth enables devices

– standard Bluetooth profiles for SMS, object push and RFCOMM

BTnode enabled Egg Carton SMS from Egg Carton Interactive Dialog

Page 16: Computer Engineering and Networks Laboratory BTnodes Directions in Hard- and Software Architecture Jan Beutel, Oliver Kasten, Matthias Ringwald

May 27, 2003Slide 16

BTnodes - Jan Beutel and Oliver Kasten

#7#2

#4

#292

80

9 m

3 2 45 1

No Airpoc

ket

Better Avalanche Rescue through Sensors

orientation, mobility

air pocket detection

heart rate, oxygen saturation

oxygen sensor

accelerometer, inclination

oximeter

Page 17: Computer Engineering and Networks Laboratory BTnodes Directions in Hard- and Software Architecture Jan Beutel, Oliver Kasten, Matthias Ringwald

May 27, 2003Slide 17

BTnodes - Jan Beutel and Oliver Kasten

Physical Activity Detection NetworkIdea: Many sensors reveal „more context“

– Use multiple motion sensors for context awareness

– Architecture required to combine those sensors

– Map hierarchical topology to human body

Page 18: Computer Engineering and Networks Laboratory BTnodes Directions in Hard- and Software Architecture Jan Beutel, Oliver Kasten, Matthias Ringwald

May 27, 2003Slide 18

BTnodes - Jan Beutel and Oliver Kasten

WURM - Wearable Unit with RC Modules

WURM hardware architectureCPU for:

– legacy C-code, binary only code

– low-intensity, background tasks

Reconfigurable unit for:– high-performance tasks– low-power tasks

Case study: Bluetooth/Ethernet-Bridge

• IP access point for WURM modules using Btnodes

• Soft CPU (LEON, 32bit SPARC)• HW minimal TCP/IP stack• HW Ethernet MAC

Page 19: Computer Engineering and Networks Laboratory BTnodes Directions in Hard- and Software Architecture Jan Beutel, Oliver Kasten, Matthias Ringwald

May 27, 2003Slide 19

BTnodes - Jan Beutel and Oliver Kasten

XHOP/R-DSR Multihop NetworkBluetooth multihop source routing prototype

– integrated scalable application protocol

– based on Dynamic Source Routing (CMU)

– routing across piconet borders to support >8 nodes

Remote topology discovery– script like command

language in the payload

Performance– 1-2 sec per hop,

depending on inquiries

Page 20: Computer Engineering and Networks Laboratory BTnodes Directions in Hard- and Software Architecture Jan Beutel, Oliver Kasten, Matthias Ringwald

May 27, 2003Slide 20

BTnodes - Jan Beutel and Oliver Kasten

Over-the-air Software UpdatesBootloader support of the MCU

– new firmware in XHOP payload– Flash reprogramming from pre-

cached data– reprogramming of single node

and by network flooding

Per-hop performance– transmitting 10 kB: ~0.8 sec– writing 10kB to Flash: ~0.2 sec

Overall performance– ~10s to transmit, write and

reboot with 80 kB firmware

Page 21: Computer Engineering and Networks Laboratory BTnodes Directions in Hard- and Software Architecture Jan Beutel, Oliver Kasten, Matthias Ringwald

May 27, 2003Slide 21

BTnodes - Jan Beutel and Oliver Kasten

Other Projects using BTnodes

200 units with 16 research groups– smart objects– routing– wearable computing– perceptual computing– operating systems

VTT, FI DSG, ETH Zurich, CH

PCCV, ETH Zurich, CHTecO, University of Karlsruhe, GE

PLAY, Interactive Institute, SE TIK, ETH Zurich, CH

IFE Wearable Lab, ETH Zurich, CHNTT DoCoMo, Munich, GE

Ptolemy Group, UC Berkeley, USAArt of Technology, Zurich, CH

DistLab, Diku, Copenhagen, DKLAP, EPF Lausanne, CH

CS Department, Lancaster University, UKLSL, EPF Lausanne, CH

TinyOS Group, UC Berkeley, USAUniversity of Uppsala, SE

Bill of material 50 parts

Parts 90 CHFAssembly 15 CHFBluetooth 65 CHF

Unit cost @ 200 units 170 CHF

Page 22: Computer Engineering and Networks Laboratory BTnodes Directions in Hard- and Software Architecture Jan Beutel, Oliver Kasten, Matthias Ringwald

May 27, 2003Slide 22

BTnodes - Jan Beutel and Oliver Kasten

The road to rev3 Current Bluetooth is an End-of-Life product

– Evaluate other BT solution– BT with embedded ARM core???

Extension with multiple radio frontends (BT, WiseNet, Motes…)

Shrinking the design by advanced packaging technology– next generation packaging saves 30-50% on component area– I/O and antenna become the size constraints– better battery integration and mounting holes

Power – drop Vcc to 3.0 and beyond Implement adaptive power/frequency control in software

Dispatcher needs rethinking Remote analysis, debugging and management functions

Rewrite system software for stability, especially Bluetooth portions