Computer EngineeringComputer Engineeringand and NetworksNetworks LaboratoryLaboratory
BTnodesApplications and Architecture
Compared
Jan Beutel, Oliver Kasten, Matthias Ringwald
Juli 10, 2003
Slide 2
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
Wearable Computing
Juli 10, 2003
Slide 3
Consumer Electronics Integration
PDA
BTnode PC Peripherals
BTnodeMobile Phone
Camera
Juli 10, 2003
Slide 4
Backend Connectivity
Bluetooth Gateway
Internet
LocalApplication
Connectivity to– application servers– other networks
Clusters of mobile networks– using GSM– using SMS services– Wireless LAN– interfacing to other sensor
networks
BTnodes
Juli 10, 2003
Slide 5
Bluetooth Piconets
S1’’ S2’’
S3’’M’’
S1 S2
S3M
S2'
S1'
M'
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
Juli 10, 2003
Slide 6
Bluetooth Host Controller Interface– standard interface for protocol software – providing access to lower levels of the protocol stack
HCI_COMMANDHCI_EVENT
OGF OCF PARAMETERS
Bluetooth module
Host processor
Physical interfaceHost Controller Interface
RFBaseband
Audio Link Manager
L2CAP
SDP
Applications
RFCOMM ...
UART
Juli 10, 2003
Slide 7
Bluetooth Connections
Connected
Disconnected
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– …
Req Conn Req Disc
RFCOMM
RF
Baseband
Audio Link Manager
Applications
SDP ...
L2CAP
Host Controller Interface
Juli 10, 2003
Slide 8
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
Juli 10, 2003
Slide 9
Hardware Details
61 mm
40 m
m
Generic Sensor Interfaces
UART and I2C Data Interfaces
Memory128 kB Flash244 kB SRAM4 kB EEPROM
IntegratedPIFA Antenna
LEDs,Reset,Clocks
CommunicationEricsson Bluetooth Module
CPUAtmel ATmega 128L MCU8-Bit RISC (max. 8 MHz ~8MIPS)
Power Management
Juli 10, 2003
Slide 10
Designing for Power Aware OperationFeatures
– optional switchable power supply for Bluetooth module– MCU with 6 power down modes, low idle/sleep current– frequency scaling: 7.3 MHz - 57 kHz
– 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 @ 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
Juli 10, 2003
Slide 11
Power Consumption Details
P
SensingTX/RX
Idle SensingTX/RX
t
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
Juli 10, 2003
Slide 12
System Software
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
Juli 10, 2003
Slide 13
Multiple Drivers and the Dispatcher
void handler( /* ... */ ) {}void main() {
btn_disp_ev_reg( RECEIVE_EV, handler, 0 );btn_disp_run();
}
handler()
read buffer
event buffer
Dispatcher
EVENT, handler funcRECEIVE_EV, handler()OTHER_EV, func2()
btn_disp_run()
RECEIVE_EV
Application handler()
read()
Driver
received_irq()Hardware
Juli 10, 2003
Slide 14
Better Avalanche Rescue through Sensors
#7#2
#4
#292
80
9 m
3 2 45 1
No Airpoc
ket
orientation, mobility
air pocket detection
heart rate, oxygen saturation
oxygen sensor
accelerometer, inclination
oximeter
Juli 10, 2003
Slide 15
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
Juli 10, 2003
Slide 16
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
Juli 10, 2003
Slide 17
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 60 USDAssembly 5 USDBluetooth 45 USD
Unit cost @ 200 units 110 USD
Juli 10, 2003
Slide 18
Hands-on experience
From tool installation to first application in less than a day
20 student projects completed
Bootcamp held
twice for related
research projects