What Is the Ultimate Button?

One of my post popular books is Home Attitude: Everything You Need To Know To Make Your Home Smart. There are, admittedly, mixed opinions about making your house smart. Some people, including my wife of 53 years, prefer a not-so-smart house where you can pull a lamp chain, flip a switch, visit doors and windows when it is time to make sure they are closed and locked, and activate the security system by entering a code and hear the confirming beep indicating the house security system is armed. Then there are people like me who love the experience of having the house do these things on its own at set times or based on a sensor being triggered, an algorithm determining it is time to take certain actions, or a press of The Ultimate Button. To me, home automation enables your smart home to do things which enhance your safety, security, enjoyment, and convenience.

My favorite home automation action is what I call “Good Morning”. I would like to share what the action does. First, I will explain some home automation basics for those who may not be familiar. The heart of a home automation system is called a hub. The hub is software on a smartphone, tablet, laptop or desktop computer, or even a USB key. I have several different hubs, but the main hub runs on the Apple iMac in my office. The hub uses a software app called Indigo.

The hub keeps track of and manages multiple devices such as digital door locks, ceiling fan controllers, smart outlets and switches, wall keypads, garage door opener control, entertainment devices, and sensors which detect temperature, humidity, luminance, and motion. In my house there are almost 150 devices. Indigo can cause a device to do something based on a schedule. Turn on the outside lights at 15 minutes after sunset every day. Indigo can also respond to triggers. If someone walks into a room, turn on the lights, and then turn them off an hour later. The possibilities of the automation are limited only by the imagination.

An action can be set to take place based on a variable. For example, the hub might contain a variable called security status. The value could be set to armed or disarmed. Another variable might be homeStatus with values of home or away. If you are away and the security system is armed, an action could put your lighting in a random mode, so lights go on and off at random during specified hours to make it look as though you are at home. Another action by Indigo could be a notification, which can be done by text, email, or a voice announcement. The message could be about a water leak detected in the basement or reporting the weekly backup generator test failed to run and attention is required.

Indigo can also execute a group of actions. For example, the hub might contain a Good Night action group which includes actions to turn off smart home lights, lower the volume of music for ten minutes and then turning it off, set thermostats to a night setting, and lock the doors.

There is no limit to what you can do with a group of actions. For a complex set of actions, I like to use a script. What follows is an example of a script I developed to execute when I push The Ultimate Button shown in the picture above. One press of the button causes the Good Morning script to begin (two presses starts the Good Night script). I wrote the script using the popular computer programming language called Python. The list of actions the script performs are shown in plain language to make it clearer.

  • Start the Good Morning actions.
  • Get the season, date, and time from the hub.
  • Retrieve current and forecasted weather from the Dark Sky service.
  • Raise the motorized solar shade.
  • Wait 15 seconds and then turn on the night table lamp.
  • Wait 10 minutes and then turn on the ceiling fan light (ease into the day).
  • Wait 15 minutes and then set thermostats based on the morning temperature variable for the current season.
  • Wait 15 minutes and then unlock all doors.
  • Prepare the good morning announcement.
  • Format the date like Saturday, September 25.
  • Format the temperature, humidity, and wind. Remove F from the temperatures and convert wind directions, like ESE, to east south east.
  • String together the components of the good morning announcement.
  • Submit the announcement to the Polly artificial intelligence service at Amazon Web Services to create an announcement using an incredibly human-like voice’ There are many. I use Salli.
  • Use the Sonos feature in Indigo to play the announcement from the master bedroom speaker.
  • “Good morning. Today is Saturday, September 25. The time is seven o’clock. The temperature is fifty-two degrees, and the humidity is 80 percent. Today’s forecast is sunshine and some clouds during the day. The high will be seventy-five, with winds west northwest at 5 to 10 miles per hour with gusts up to 15 miles per hour. The chance of rain is six percent. Have a nice day in Danbury.”
  • Make a music selection at random from a list of favorite playlists at Spotify and Sirius XM. If it is Sunday, select at random from a list of Baroque music sources.
  • Play the selected music on Sonos speakers throughout the house. Set volume levels based on a stored preference for each room.

The Ultimate Button makes my day. If you get interested in home automation, start simple. Push a button and let the music begin. Add things to your action groups or scripts as you gain confidence things are working the way you want. The advantage of Do-It-Yourself is you can experiment with new capabilities, and then modify or scrap them as desired. A great device to start out with is The Ultimate Button by FIBARO. Available on Amazon for $44.50.