enabling smarter homes for everyone ratul mahajan
TRANSCRIPT
![Page 1: Enabling smarter homes for everyone Ratul Mahajan](https://reader035.vdocument.in/reader035/viewer/2022062511/551a97d3550346b52d8b6150/html5/thumbnails/1.jpg)
Enabling smarter homes for everyone
Ratul Mahajan
![Page 2: Enabling smarter homes for everyone Ratul Mahajan](https://reader035.vdocument.in/reader035/viewer/2022062511/551a97d3550346b52d8b6150/html5/thumbnails/2.jpg)
Partners in crime
A.J. Brush
Bongshin LeeSharad Agarwal Stefan Saroiu
Colin Dixon
![Page 3: Enabling smarter homes for everyone Ratul Mahajan](https://reader035.vdocument.in/reader035/viewer/2022062511/551a97d3550346b52d8b6150/html5/thumbnails/3.jpg)
Smarthomes
![Page 4: Enabling smarter homes for everyone Ratul Mahajan](https://reader035.vdocument.in/reader035/viewer/2022062511/551a97d3550346b52d8b6150/html5/thumbnails/4.jpg)
Connected devices for the home
Inexpensive
Need “no new wires”– Use regular voltage or batteries– Wireless communication
Use maturing, reliable standards– Z-Wave, ZigBee, Powerline
![Page 5: Enabling smarter homes for everyone Ratul Mahajan](https://reader035.vdocument.in/reader035/viewer/2022062511/551a97d3550346b52d8b6150/html5/thumbnails/5.jpg)
Study to understand the gapVisited homes with modern automation systems
Inventory Semi-Structured Interview
Questionnaire Home Tour
Interviewed 31 people across 14 homes
[Home automation in the wild: Challenges and opportunities, CHI 2011]
![Page 6: Enabling smarter homes for everyone Ratul Mahajan](https://reader035.vdocument.in/reader035/viewer/2022062511/551a97d3550346b52d8b6150/html5/thumbnails/6.jpg)
Why smarthomes?
“It allows me to be lazy”
Convenience Peace of mind Control
“I like just being in control”
“I can track things when I’m not there and know
that…it’s…secure”
![Page 7: Enabling smarter homes for everyone Ratul Mahajan](https://reader035.vdocument.in/reader035/viewer/2022062511/551a97d3550346b52d8b6150/html5/thumbnails/7.jpg)
Extensibility
or
Why not smart homes?
Manageability
![Page 8: Enabling smarter homes for everyone Ratul Mahajan](https://reader035.vdocument.in/reader035/viewer/2022062511/551a97d3550346b52d8b6150/html5/thumbnails/8.jpg)
Existing abstractions for home tech
Network of devices– Interoperability protocols
• DLNA, Z-Wave, Speakeasy, …• Open, low-level device access
Appliance– Monolithic systems
• Crestron, Control4, EasyLiving, …• Fixed tasks over fixed devices
Climate control
Remote monitoring
Management is still hard• Users must manage each device/task• Developers must deal directly w/ h/w
Extensibility is still hard• Closed set of tasks• Closed set of devices
![Page 9: Enabling smarter homes for everyone Ratul Mahajan](https://reader035.vdocument.in/reader035/viewer/2022062511/551a97d3550346b52d8b6150/html5/thumbnails/9.jpg)
Our abstraction
View the home as a computer• Networked devices =~ peripherals• Tasks over these devices =~ applications
• Adding devices =~ adding a peripheral• Adding tasks =~ installing an application• Managing networked devices =~ managing files
[The home needs an operating system (and an app store), HotNets 2010]
![Page 10: Enabling smarter homes for everyone Ratul Mahajan](https://reader035.vdocument.in/reader035/viewer/2022062511/551a97d3550346b52d8b6150/html5/thumbnails/10.jpg)
HomeOS overview
HomeHub
Security ……..
HomeStore
Z-Wave, DLNA, WiFi, etc.
HomeHub centralizes all devices for users
and apps
HomeStore helps find compatible
devices and apps
HomeCloud
HomeCloud enables remote
access and control
Climate
![Page 11: Enabling smarter homes for everyone Ratul Mahajan](https://reader035.vdocument.in/reader035/viewer/2022062511/551a97d3550346b52d8b6150/html5/thumbnails/11.jpg)
HomeHub layering model
Device discovery, pairing, and comm. for multiple protocols (e.g., DLNA, Z-Wave)
Device capabilities are exported as services• Decouples apps and device protocols• Allows for differentiation by vendors
Primitives are specialized to home setting• Simplifies management
Apps use high-level abstractions• Simplifies app development• Manifests enable compatibility checksApplication
Mgmt. and access control
Device functionality
Device connectivity
. . . . .
[An operating system for the home, NSDI 2012]
![Page 12: Enabling smarter homes for everyone Ratul Mahajan](https://reader035.vdocument.in/reader035/viewer/2022062511/551a97d3550346b52d8b6150/html5/thumbnails/12.jpg)
Prototype
Built using .NET and C#– ~20K LoC (~3K kernel)– 18 diverse apps (~300 lines
per app)
Support for several protocols and devices
– Z-Wave, UPnP, DLNA, custom– Dimmers, light switches,
cameras, motion sensors, d/w sensors, ….
![Page 13: Enabling smarter homes for everyone Ratul Mahajan](https://reader035.vdocument.in/reader035/viewer/2022062511/551a97d3550346b52d8b6150/html5/thumbnails/13.jpg)
12 homes running HomeOS for 4-8 months– Using different devices and applications
• E.g., Cameras, light controllers, door-window sensors
42 student developers across 10 research groups– Developed new drivers and apps
• E.g., energy meters, IM, appliance controllers
Field experience with HomeOS
![Page 14: Enabling smarter homes for everyone Ratul Mahajan](https://reader035.vdocument.in/reader035/viewer/2022062511/551a97d3550346b52d8b6150/html5/thumbnails/14.jpg)
Example third-party applications
For videos, see
http://research.microsoft.com/homeos/
![Page 15: Enabling smarter homes for everyone Ratul Mahajan](https://reader035.vdocument.in/reader035/viewer/2022062511/551a97d3550346b52d8b6150/html5/thumbnails/15.jpg)
Field experience: The good
Users could manage their HomeOS deployments
Users particularly liked the ability to organically extend their technology
Developers found the programming abstractions and layering to be “natural”
![Page 16: Enabling smarter homes for everyone Ratul Mahajan](https://reader035.vdocument.in/reader035/viewer/2022062511/551a97d3550346b52d8b6150/html5/thumbnails/16.jpg)
Field experience: The bad
Users found it hard to diagnose faults
Interoperability protocols can be fragile
Not all device features may be exposed over the network
![Page 17: Enabling smarter homes for everyone Ratul Mahajan](https://reader035.vdocument.in/reader035/viewer/2022062511/551a97d3550346b52d8b6150/html5/thumbnails/17.jpg)
Recap
Extensibility and manageability challenges are keeping smart, connected homes out of the mainstream
HomeOS addresses them by providing a computer-like abstraction for home technology
![Page 18: Enabling smarter homes for everyone Ratul Mahajan](https://reader035.vdocument.in/reader035/viewer/2022062511/551a97d3550346b52d8b6150/html5/thumbnails/18.jpg)
Many problems are still open
Predictability
Security & privacyRobustness
User programming
Domain characteristicsNon-expert “admins”
Heterogeneous devices and networksInteraction with the physical world
![Page 19: Enabling smarter homes for everyone Ratul Mahajan](https://reader035.vdocument.in/reader035/viewer/2022062511/551a97d3550346b52d8b6150/html5/thumbnails/19.jpg)
Back to the future: Forecasting program behavior for predictable control
![Page 20: Enabling smarter homes for everyone Ratul Mahajan](https://reader035.vdocument.in/reader035/viewer/2022062511/551a97d3550346b52d8b6150/html5/thumbnails/20.jpg)
More partners in crime
Jason Croft Matt Caesar Madan Musuvathi
![Page 21: Enabling smarter homes for everyone Ratul Mahajan](https://reader035.vdocument.in/reader035/viewer/2022062511/551a97d3550346b52d8b6150/html5/thumbnails/21.jpg)
Living with HA today is an adventure
“At one point I had a rule that would turn on the heat, disarm the alarm, turn on some lights, etc. at 8am in the morning on weekdays. What I didn’t consider was the fact that I wouldn’t want this to happen when I was on vacation. I came home from vacation to find a warm, inviting, insecure, well lit house that had been that way for a week. I didn’t realize until then that I needed the morning setup process to only apply when the alarm was set in sleep mode which I set every night before I go to bed. That’s just one example, but the point is that it has taken me literally YEARS of these types of mistakes to iron out all the kinks.”
![Page 22: Enabling smarter homes for everyone Ratul Mahajan](https://reader035.vdocument.in/reader035/viewer/2022062511/551a97d3550346b52d8b6150/html5/thumbnails/22.jpg)
Reasoning about the behavior of HA programs is difficult
motionFrontPorch.Detected:if (Now - timeLastMotion < 1 secs && lightMeter.LightLevel < 20)
FrontPorchLight.Set(On);timeLastMotion = Now;
frontPorchLight.StateChange:if (frontPorchState == On)
timerFrontPorchLight.Reset(5 mins);
timerFrontPorchLight.Fired:if (Now.Hour > 6AM && Now.Hour < 6PM)
FrontPorchLight.Set(Off);
Dependence on time
Dependence on env. factors
Rule interaction
Dependence on device state
![Page 23: Enabling smarter homes for everyone Ratul Mahajan](https://reader035.vdocument.in/reader035/viewer/2022062511/551a97d3550346b52d8b6150/html5/thumbnails/23.jpg)
Predictable control through virtual fast forwarding
Explore all possible future script behaviors
Challenge: Anything can happen anytime
Our approach:– Use timed automata to reason about time– Use program analysis to reduce input space
![Page 24: Enabling smarter homes for everyone Ratul Mahajan](https://reader035.vdocument.in/reader035/viewer/2022062511/551a97d3550346b52d8b6150/html5/thumbnails/24.jpg)
timeLastMotion values:
Timed automata
FSAs extended with virtual clocks (VCs)– Divide time into indifference regions
motionFrontPorch.Detected:if (Now - timeLastMotion < 1 secs && lightMeter.LightLevel < 20)
FrontPorchLight.Set(On);timeLastMotion = Now;
∞1 sec0 sec
![Page 25: Enabling smarter homes for everyone Ratul Mahajan](https://reader035.vdocument.in/reader035/viewer/2022062511/551a97d3550346b52d8b6150/html5/thumbnails/25.jpg)
DeLorean: Our FF engine
Input: HA script, FF duration, invariants (optional)Output: final states, violations
1. Transform HA programs– Model devices
2. Program analysis (using Pex)– Model time-related activities as VCs– Partition input (event, environmental state) space
3. Explicit state model checking– Subject a state to all possible stimuli and a delay
![Page 26: Enabling smarter homes for everyone Ratul Mahajan](https://reader035.vdocument.in/reader035/viewer/2022062511/551a97d3550346b52d8b6150/html5/thumbnails/26.jpg)
Evaluation using real HA programs
Fast forwarding rate: 3.6-36,000xFound 4 bugs in 2 HA programs
![Page 27: Enabling smarter homes for everyone Ratul Mahajan](https://reader035.vdocument.in/reader035/viewer/2022062511/551a97d3550346b52d8b6150/html5/thumbnails/27.jpg)
Connected devices are everywhere
http://blogs.cisco.com/news/the-internet-of-things-infographic/
![Page 28: Enabling smarter homes for everyone Ratul Mahajan](https://reader035.vdocument.in/reader035/viewer/2022062511/551a97d3550346b52d8b6150/html5/thumbnails/28.jpg)
Backup
![Page 29: Enabling smarter homes for everyone Ratul Mahajan](https://reader035.vdocument.in/reader035/viewer/2022062511/551a97d3550346b52d8b6150/html5/thumbnails/29.jpg)
Program exploration
ratul | rws | june '12
![Page 30: Enabling smarter homes for everyone Ratul Mahajan](https://reader035.vdocument.in/reader035/viewer/2022062511/551a97d3550346b52d8b6150/html5/thumbnails/30.jpg)
Connected devices in the home
Home Automation and Monitoring, ABI Research, 2011
2010 2011 2012 2013 2014 2015 2016 0
2,000
4,000
6,000
8,000
10,000
12,000
14,000
Middle East & AfricaLatin AmericaAsia-PacificEuropeNorth America
(000
s)
Forecasted shipment of home automation systems