The Blog of Ian Mercer.

If your house could talk to you, what would it say?

Cover Image for If your house could talk to you, what would it say?

Photo credit: tompagenet

Suppose for a minute that your house could talk.  What would you want it to tell you?

That's a question I've been considering over the past few years because unlike most of you, my house can talk!  There are ceiling speakers in many rooms, the house knows which rooms are occupied, and it talks to you when it has information it needs to communicate.

I've experimented with many different announcements over the years, some of which turned out to be useless, some which just became annoying after too many repetitions, and a few that withstood the test of time and daily usage to become fixtures in my smart home.

Here's a list of some of the current announcements my house makes:-

​1. It announces who is calling.  "Talking Caller ID" if you will, except this one has a database behind it and whenever it sees a number it doesn't recognize it will ask you who it is so it knows how to speak their name next time.  (The asking is done over instant messenger or email, a separate topic I'll write about soon.)

​2. It announces that you have missed phone calls.  It does this when the house has been unoccupied for a while and you walk back in.  It doesn't do it right away because you are probably carrying stuff and banging doors.  Instead, it waits a moment and then when it detects you moving again in the house it announces all the calls you missed while you were away.

​3. It announces the weather for the day in the morning when you get up and head into the bathroom.

​4. It announces the weather for tomorrow if it's already afternoon time today and you turn on any media zone.  But, of course, only if it hasn't announced it for a while (repetition gets boring fast!).

​5. It can announce the artist and title of each song as it is playing.  A simple chat command 'dj on' enables this feature.  At the start of every song it 'ducks' the music, announces the song, and then brings the volume back up, just like a professional voice-over announcement.

​6. It tells you if the traffic is bad on the way into Bellevue this morning, where 'bad' is defined as more than seven minutes above the average for this day of the week.  Knowing that it's bad on Monday morning isn't useful.  Knowing that it's much worse than normal is.

​7. It announces the time every 10 minutes in the bathroom in the morning rush helping everyone stay on track.

​8. It announces when it's time to wake up using a schedule defined on Google calendar.  This means you can adjust the alarm clock as easily as you can change an appointment, no fiddly black on black buttons under an alarm clock to push.  It also means that the alarm can handle weekdays vs weekends and holidays.

​9. It announces if there has been fresh snow overnight at the local ski resort: time to go skiing!  But it also warns you if the pass is closed as it sometimes is in winter after a heavy snowfall overnight.

​10. It announces that it's garbage collection day if it thinks you haven't taken the trash out.

​11. It warns you that the garage doors are open if you try to go upstairs in the evening leaving them open.  That's a bit like HAL controlling the pod bar doors but in reverse: it tells you to close them!

​12. It complains that the fish are hungry if nobody has opened the door to their tank for 24 hours.  Each 6 hours after that the announcements become more urgent, culminating in a "mine mine mine" audio clip from Finding Nemo.  (All our other pets do a fine job at indicating their hunger but the fish lacked this ability until now).

​13. It says "good night" when you turn the lights off at the end of the day :)

​14. You can also ask it to remind you of anything with a verbal reminder, e.g. the command 'remind me in 15 minutes say "Turn oven on" in study' does exactly what it says.

​15. It tells us if anyone goes into our barn unexpectedly.

​16. It can also scare intruders when it detects unusual motion that doesn't fit the normal pattern - nobody expects a house to talk to them when they are burglarizing it!  Fortunately I've never had to test this feature.

Crucially it does very few of these announcements when it detects that we have visitors.  Party music should not be interrupted by home automation announcements!  It also learned early on that any announcement in a bedroom when the owners were asleep was a very, very bad idea punishable by instant termination and recompilation!

Related Stories

Cover Image for Time Series Data Compression

Time Series Data Compression

This new technique to compress the time series data collected by my home automation system seems to be working really well.

Ian Mercer
Ian Mercer
Cover Image for Home Automation

Home Automation

I've been working on home automation for over 15 years and I'm close to achieving my goal which is a house that understands where everyone is at all times, can predict where you are going next and can control lighting, heating and other systems without you having to do or say anything. That's a true "smart home".

Ian Mercer
Ian Mercer
Cover Image for Natural Language Processing

Natural Language Processing

I could not find a Natural Language Processing engine when I needed one for my home automation system so I developed my own. After 10 years of on and off development I now have a unique NLP engine for .NET that is easy to configure but incredibly powerful for precise command and control applications. It doesn't use a tokenizer so it doesn't care if you run words together.

Ian Mercer
Ian Mercer
Cover Image for Home Automation Sensors

Home Automation Sensors

An overview of the many sensors I've experimented with for home automation including my favorite under-floor strain gauge, through all the usual PIR, beam and contact sensors to some more esoteric devices like an 8x8 thermal camera.

Ian Mercer
Ian Mercer
Cover Image for Collinearity test for sensor data compression

Collinearity test for sensor data compression

One way to reduce the volume of sensor data is to remove redundant points. In a system with timestamped data recorded on an irregular interval we can achieve this by removing co-linear points.

Ian Mercer
Ian Mercer
Cover Image for Event blocks

Event blocks

Home automation systems need to respond to events in the real world. Sometimes it's an analog value, sometimes it's binary, rarely is it clean and not susceptible to problems. Let's discuss some of the ways to convert these inputs into actions.

Ian Mercer
Ian Mercer
Cover Image for Logistic function - convert values to probabilities

Logistic function - convert values to probabilities

Another super useful function for handling sensor data and converting to probabilities is the logistic function 1/(1+e^-x). Using this you can easily map values onto a 0.0-1.0 probability range.

Ian Mercer
Ian Mercer
Cover Image for ATAN curve for probabilities

ATAN curve for probabilities

In a home automation system we often want to convert a measurement into a probability. The ATAN curve is one of my favorite curves for this as it's easy to map overything onto a 0.0-1.0 range.

Ian Mercer
Ian Mercer
Cover Image for Probabilistic Home Automation

Probabilistic Home Automation

A probabilistic approach to home automation models the probability that each room is occupied and how many people are in that room.

Ian Mercer
Ian Mercer
Cover Image for Multiple hypothesis tracking

Multiple hypothesis tracking

A statistical approach to understanding which rooms are occupied in a smart house

Ian Mercer
Ian Mercer
Cover Image for A state machine for lighting control

A state machine for lighting control

An if-this-then-that style rules machine is insufficient for lighting control. This state machine accomplishes 90% of the correct behavior for a light that is controlled automatically and manually in a home automation system.

Ian Mercer
Ian Mercer
Cover Image for Home Automation States

Home Automation States

Understanding the many different 'states' a house can have is critical to creating great home automation

Ian Mercer
Ian Mercer
Cover Image for Graphing gigabytes of home automation data with tableau

Graphing gigabytes of home automation data with tableau

Some interesting charts from the gigabytes of data my home automation system produces

Ian Mercer
Ian Mercer
Cover Image for iBeacons for Home Automation

iBeacons for Home Automation

My investigations into using iBeacons for home automation

Ian Mercer
Ian Mercer
Cover Image for iBeacon meetup in Seattle - January 2015

iBeacon meetup in Seattle - January 2015

My notes on the iBeacon meetup in Seattle held in January 2015

Ian Mercer
Ian Mercer
Cover Image for Home Automation Systems as a Graph

Home Automation Systems as a Graph

Using nodes and links to represent a home and all the devices in it

Ian Mercer
Ian Mercer
Cover Image for N-Gram Analysis of Sensor Events in Home Automation

N-Gram Analysis of Sensor Events in Home Automation

Using n-gram analysis to spot patterns in sensor activations

Ian Mercer
Ian Mercer
Cover Image for Xamarin Forms Application For Home Automation

Xamarin Forms Application For Home Automation

Building a Xamarin Forms application to control my home automation system

Ian Mercer
Ian Mercer
Cover Image for The Internet of Hubs (and things)

The Internet of Hubs (and things)

Maybe it should be called the Internet of Hubs instead

Ian Mercer
Ian Mercer
Cover Image for Showing home status with just a single RGB LED

Showing home status with just a single RGB LED

Multicolored LEDs can convey a lot of information in a small space

Ian Mercer
Ian Mercer
Cover Image for A wireless sensor network using Moteino boards

A wireless sensor network using Moteino boards

The diminutive Arduino boards include a powerful transmitter/receiver

Ian Mercer
Ian Mercer
Cover Image for The home as a user interface

The home as a user interface

Ian Mercer
Ian Mercer

A RESTful API for sensor data

POSTing data to a home automation system from Arduino devices

Ian Mercer
Ian Mercer
Cover Image for The Internet of Boilers

The Internet of Boilers

An experiment to measure every aspect of an HVAC / boiler system

Ian Mercer
Ian Mercer

VariableWithHistory - making persistence invisible, making history visible

A novel approach to adding history to variables in a programming language

Ian Mercer
Ian Mercer
Cover Image for A Quantified House - My Talk to the Seattle Quantified Self Meetup

A Quantified House - My Talk to the Seattle Quantified Self Meetup

My talk to the Seattle Quantified Self meetup

Ian Mercer
Ian Mercer

Integrating an Android phone into my home automation system

Some new features for my home automation using an Android phone

Ian Mercer
Ian Mercer
Cover Image for The Internet of Dogs

The Internet of Dogs

Connecting our dog into the home automation

Ian Mercer
Ian Mercer
Cover Image for GreenGoose Review

GreenGoose Review

A review of the now defunct GreenGoose sensor system

Ian Mercer
Ian Mercer
Cover Image for Home power meters revisited

Home power meters revisited

Ian Mercer
Ian Mercer
Cover Image for Home Automation Calendar Integration

Home Automation Calendar Integration

Ian Mercer
Ian Mercer

Smart home energy savings - update for 2010

Ian Mercer
Ian Mercer
Cover Image for A smart power strip

A smart power strip

Ian Mercer
Ian Mercer
Cover Image for What does a Smart House do at Halloween?

What does a Smart House do at Halloween?

My favorite home automation features for Halloween

Ian Mercer
Ian Mercer
Cover Image for Home Automation Top Features

Home Automation Top Features

Ian Mercer
Ian Mercer
Cover Image for Weather Forecasting for Home Automation

Weather Forecasting for Home Automation

Ian Mercer
Ian Mercer
Cover Image for How can I tell if my house is smart?

How can I tell if my house is smart?

Ian Mercer
Ian Mercer

Home Automation Block Diagram

Ian Mercer
Ian Mercer

World's Smartest House Demonstration

Ian Mercer
Ian Mercer

Future proof your home with a new conduit system?

Running conduit can be expensive but maybe you don't need one to every room

Ian Mercer
Ian Mercer
Cover Image for New Home Automation Server

New Home Automation Server

Ian Mercer
Ian Mercer
Cover Image for World's Smartest House

World's Smartest House

Over 15 years of experimentation with home automation

Ian Mercer
Ian Mercer
Cover Image for World's Smartest House Videos

World's Smartest House Videos

A collection of videos about my smart home efforts

Ian Mercer
Ian Mercer