connecting things to the web using programmable low-power wifi modules

12
Connecting Things to the Web using Programmable Low-power WiFi Modules Benedikt Ostermaier, Matthias Kovatsch, Silvia Santini {ostermaier | kovatsch | santinis}@inf.ethz.ch Sunday, 12 June 2011 Institute for Pervasive Computing / Distributed Systems Group

Upload: matthias-kovatsch

Post on 03-Jul-2015

3.019 views

Category:

Technology


4 download

DESCRIPTION

Presentation at the Second International Workshop on the Web of Things (WoT 2011), San Francisco, CA, USA. http://www.webofthings.org/wot/2011/

TRANSCRIPT

Page 1: Connecting Things to the Web using Programmable Low-power WiFi Modules

Connecting Things to the Web using Programmable Low-power WiFi ModulesBenedikt Ostermaier, Matthias Kovatsch, Silvia Santini{ostermaier | kovatsch | santinis}@inf.ethz.ch

Sunday, 12 June 2011 Institute for Pervasive Computing / Distributed Systems Group

Page 2: Connecting Things to the Web using Programmable Low-power WiFi Modules

Internet of Things

Matthias Kovatsch 2

Optimized LoWPANs WiFi infrastructure

Connecting Things to the Web using Programmable Low-power WiFi Modules

NowNow

Page 3: Connecting Things to the Web using Programmable Low-power WiFi Modules

Programmable low-power WiFi module 44 MHz 32-bit RISC CPU 128 kB RAM, 2 kB non-volatile RAM 2 MB ROM, 8 MBit flash

Built-in IEEE 802.11b/g transceiver with on-board antenna Rates of up to 54 Mbit/s WEP, WPA-PSK and WPA2-PSK

Interfaces UART, SPI, SDIO, RFID 10 GPIOs, 8 analog sensor I/Fs

Runs eCos withlwIP TCP/IP stack

Platform: Roving RN-131G

3

RN-131

Matthias Kovatsch Connecting Things to the Web using Programmable Low-power WiFi Modules

37 mm / 1.46 in

Page 4: Connecting Things to the Web using Programmable Low-power WiFi Modules

Platform: Low-power

Current consumption 212 mA when active (max. TX) 4 µA when sleeping

Hardware support Power Management Unit Wake-up on sensor or timer events

Sleep mode 2 kB battery-backed RAM Short wake-up time

(~35 ms until connected)

4Matthias Kovatsch Connecting Things to the Web using Programmable Low-power WiFi Modules

Page 5: Connecting Things to the Web using Programmable Low-power WiFi Modules

Connecting to Things

Matthias Kovatsch 5Connecting Things to the Web using Programmable Low-power WiFi Modules

Light switch Chair sensor

Room signPower outlet

Pow

er s

uppl

yG

ridB

atte

ries

Physical connectionelectronic attached

sleepingvs.

always on

prototype vs. ad-hoc

Page 6: Connecting Things to the Web using Programmable Low-power WiFi Modules

Connecting Things to the Web

6

REST: maps nicelyto physical resources

Single-threadedWeb server

RESTful ,RESTful API for sensors,actuators, configuration

HTTP callbacks(Webhooks)

Matthias Kovatsch Connecting Things to the Web using Programmable Low-power WiFi Modules

Page 7: Connecting Things to the Web using Programmable Low-power WiFi Modules

7

Putting Things Togetherhttp://lightswitch

/

/position

http://poweroutlet

//power

/callback

/consumption

Matthias Kovatsch Connecting Things to the Web using Programmable Low-power WiFi Modules

Page 8: Connecting Things to the Web using Programmable Low-power WiFi Modules

HTTP Callbacks on Sensor Events

8

http://poweroutlet/power

Sat, 01 Feb 2011 12:45:26 GMT

POST /power HTTP/1.1Host: poweroutletContent-Length: 4Content-Type: text/plainConnection: closeReferer: http://lightswitch/positionUser-Agent: WiFiNode 0.4Date: Sat, 01 Feb 2011 12:45:26 GMTLast-Modified: Sat, 01 Feb 2011 12:45:26 GMTX-SensorEvent-Count: 12X-Last-Uptime: 88

true

http://lightswitch/

Matthias Kovatsch Connecting Things to the Web using Programmable Low-power WiFi Modules

Page 9: Connecting Things to the Web using Programmable Low-power WiFi Modules

Energy Efficiency

Up to 212 mA when active Maximize sleep time Only report events Optimize wake-up and uptime

Problem: Availability Sleeping for sensors only Heartbeats Poll configuration updates Setup with /sleep resource

or “double-click”

9Matthias Kovatsch Connecting Things to the Web using Programmable Low-power WiFi Modules

ZZ

Z Z Z

Button “sensor“ prototype

Page 10: Connecting Things to the Web using Programmable Low-power WiFi Modules

Evaluation

Wake-up Cycle1. Enable CPU and RAM2. Boot application3. Find AP and connect*4. Run DHCP*5. Run DNS*6. Open TCP socket7. Perform HTTP callback8. Close TCP socket9. Go to sleep

10

0

50

100

150

200

250

300

350

400

450

Office Home1 Home2

Aver

age

uptim

e[m

s]

OtherCallbackDNSDHCPWiFi

Matthias Kovatsch Connecting Things to the Web using Programmable Low-power WiFi Modules

* can be optimized

Page 11: Connecting Things to the Web using Programmable Low-power WiFi Modules

Results

Matthias Kovatsch 11Connecting Things to the Web using Programmable Low-power WiFi Modules

Battery-powered sensors

>99% data reception rate without retries

~300‘000 Callbacks with two AAA batteries

~8 years with 100 callbacks per day

Grid-powered actuators ~24 ms round trip time (~19 ms for Apache)

Real-time support

WiFi Plogg prototype

Reed and PIR sensor

Page 12: Connecting Things to the Web using Programmable Low-power WiFi Modules

Conclusions and Outlook

Sufficient battery life for event-based sensing WiFi infrastructure greatly reduces deployment costs However, may also introduce some hard-to-trace problems Hardware support for real energy savings

Future Work RFID bootstrapping JavaScript programming

12Matthias Kovatsch Connecting Things to the Web using Programmable Low-power WiFi Modules

Subtle notificationdevice prototype