There’s a lot of hardware out there for the connected home and while many of these devices come with their own platforms for logic, control, and remote access, they don’t always speak the same language as devices from other vendors. Some devices only give you restricted control over your home because it’s simply too hard for a vendor to guess every single way a person might want to use their product. That, coupled with a concern for security mean that these devices aren’t as flexible and connected as they could be.
Luckily, there are a few platforms out there that are taking a crack at fixing the problem of getting home automation devices to talk to each other. When we can connect devices together from different vendors, it gives us the ability to choose the best products from each of them. And I speak from personal experience when I say that connecting these technologies can feel very empowering.
In this post, I’m going to share three of these platforms. No doubt, there are a few others out there, and you can even “roll your own,” if you want. If there’s one that you recommend, please leave a comment on this post below.
Perhaps the most beginner friendly, IFTTT (pronounced like “gift” without the “g”) stands for “if this, then that.” Simply put, if action x happens, then do y. After creating an account, you can activate channels which represent your presence different platforms like Facebook, Instagram, Gmail, Twitter, and text messaging. There are also channels for weather, news, and RSS feeds. For the connected home, IFTTT has channels for Withings (body scale and blood pressure monitor), WeMo (appliance switches and motion sensors), SmartThings (locks, switches, and presence sensors), Philips (light bulbs), and Netatmo (environmental sensors).
As an example, I created a trigger from IFTTT’s weather channel to turn on my living room lights within 15 minutes of sunset:
Setting up this logic is just a series of clicks. IFTTT makes it clear that it’s about connecting triggers and actions. And a channel can have triggers as well as actions. For instance, I can have IFTTT listen for a text message from me or even send me a message when something happens. IFTTT even goes beyond this to take parameters from a trigger and pass them along to the action. For instance, if I weigh myself with the Withings scale, it can send my weight as a new tweet so that I’m publicly accountable for keeping my weight in check.
If you want to work with Arduino for the physical side of your connected home, Temboo is another possible platform to use. Its main goal is to standardize the way different service APIs communicate and to store your authentication information so that you don’t have to get tangled up in different API methods and OAuth complications. It does this by offering interfaces called choreos, which they define as “code shortcuts and standalone workflows that send and retrieve data from virtually any open API, database, email server, and more.”
As of right now, Temboo doesn’t interface with many consumer connected home devices (I only noticed Withings on the list). But for bridging to the physical world, there are a lot of resources for the Yún, Arduino’s newest Wifi-enabled board. If you wire up your own sensors to the Yún, you can have it trigger many different services. Or have other services control pins on the Yún. This means you could control lamps and appliances with a relay circuit or PowerSwitch Tail.
If you don’t have a lot of programming experience, you can still use Temboo. Their newest feature, the Sketch Builder, lets you pick from a menu of options to customize the behavior of your device. It will generate code which you can then upload to your board. Check it out in this video below:
And if there’s a connected home device that doesn’t have a choreo, you can try Temboo’s Twyla, their development environment for creating new choreos. As long as the service that you’re connecting to has an API, you should be able to interface it with the other choreos within Temboo.
The Thing System
Another platform that’s geared more towards developers is The Thing System (disclosure: MAKE contributor Alasdair Allan is a founder). However, unlike Temboo, it’s designed from the ground up to connect physical things together. Alasdair noticed that with the proprietary cloud services for current consumer home automation devices out there, “we’re not building an Internet of Things anymore, we’re building a series of islands of things.” If you watch Alasdair’s Ignite talk, you’ll get a lot of the philosophy behind The Thing System:
At the core of the platform is the steward, the server software which listens for events from devices and also triggers devices. You can install the steward on an always-on computer on your network or they’ve even provided disk images so that you can easily run the steward on a Raspberry Pi or BeagleBone. One big advantage of The Thing System is that this software is entirely open source, so that you can customize how your installation works and even add your own features. It also means that you’re not beholden to another company’s servers—once you have it running the way you want, only you could pull the plug.
The Thing System supports an impressive list of devices which includes Nest (the thermostat and smoke alarm), Netatmo (environmental sensors), Tesla Motors (electric cars), and INSTEON (power outlet relays, dimmers, LED bulbs) In the full list, they’ve even laid out which devices are being worked on now and which ones have support coming soon. Not only can the steward communicate over the network to Wifi and ethernet devices but with the right hardware it can also talk via USB, Bluetooth Low Energy, Z-Wave, and a few others.
As for a user interface, you can use their example web client called d3 as a starting point. It will help you configure the steward and do some basic control operations. If you want more advanced functionality, you’ll have to create a client yourself (there’s an iOS demo app, for instance and d3 itself is a good example), or wait for someone else to create one for you.
And the List Goes On…
Between IFTTT, Temboo, and The Thing System, there’s a wide breadth of options at different skill levels and customizability. But there are many other possible platforms that you could use such as openHAB, Spacebrew, Xively, BERG Cloud, and ThingSpeak.
All of these platforms act as the connective tissue between the different types of devices in our home, something we definitely need if we’re going to take full advantage of what our technology affords. Even with all of these platforms, my bet is that we’re witnessing only the very early stages of this domain with a lot more innovation—and competition—to come.