Welcome!

Web 2.0 Authors: Pat Romanski, Michael Bushong, Esmeralda Swartz, Kevin Benedict, Alex Forbes

Related Topics: Web 2.0, Java, Wireless, SOA & WOA, Cloud Expo, Security

Web 2.0: Article

Why Home Automation Needs a Real-Time Service Provider

Using a real-time service provider rather than a custom, in-house built real-time solution has numerous advantages

You may not realize it, but your house is getting smarter. Devices that were once entirely manually controlled, whether it's your thermostat, the locks on your doors, or your porch lights, are now entering an era of autonomy, and the list of devices in the home automation spectrum is continuing to grow. Now that the masses are armed with smartphones, why shouldn't you be able to control your home...when you're not home?

Home automation is getting more advanced, smarter, and more streamlined by the day. When you flip a light switch, you expect that light bulb to turn on instantly. For a home automation solution, you need that exact same functionality when controlling your home from a smartphone app; the same speed and reliability.

It's gone beyond just being able to schedule your lights to turn on at a certain time. Users now expect to be able to monitor their home's "health," make changes on the fly, and operate and command their home remotely at the exact moment they want to. As a result, real-time interaction through a real-time network is now a key component of home automation. Without being able to signal your home in real-time, whether you're on a phone or iPad, you're not getting that real-time connection and functionality you need.

So where exactly does real-time come into play?

Say you have an event that occurs, like hitting a certain threshold or being located within a specific proximity from your home. You need a system that is bidirectional, one that can constantly send updates through a dedicated channel relaying photonic/thermo sensor broadcasts, but also a signaling channel that can trigger events (a light bulb turning on, a thermostat adjusting temperature, or a garage door opening as you approach it). You need real-time signaling for that on both the send side and the receive side.

What Issues Will A Developer Run Into When Building a Home Automation Solution?
To allow users to control their home in real-time, you need to establish an open connection between Point A and Point B to allow that signaling. Today there are open source technologies like SignalR and Socket.io that use this web socket technology. However, with these technologies, it's tricky to scale and maintain a system with an always-on heartbeat. With home automation, a user needs to be able to immediately interact with their home when they want to, so an open connection is vital to the functionality of the home automation solution.

Using a real-time service provider rather than a custom, in-house built real-time solution has numerous advantages, including reliability, easy scalability, and security, the most important being reliabiltiy. When you flip that switch, or that threshold is triggered, that signal needs to go through, 100% of the time. This can only be achieved if it's backed by a redundant, distributed system. The best way to do that is through a globally distributed network with multiple physical buildings around Earth, with fallbacks in the event that one of these datacenters fails.

Let's just say, if you lock your door through a home automation app, you want that door to lock, every time.

When using a custom solution, you can't get this unless you invest a substantial amount of money and build a massive real-time infrastructure. That can be challenging to maintain on your own, especially in terms of cost and technology requirements.

How to Use PubNub to Power a Home Automation Solution
PubNub allows you to keep a reliable and redundant connection open between the user and their home automation solution. The PubNub Real-Time Network can easily power the real-time functionality of any home automation solution. By embedding PubNub into a microprocessor, the device has the power and capability to to communicate with your house. With an active, outbound connection through PubNub, 100% firewall closed (so you don't need to open ports, like Skype or VOIP), you can directly signal your house commands securely in real-time.

See how easy it is to Publish and Subscribe. Here is the copy-and-paste ready code.

To get started, it's the same function calls as all of PubNub's other SDKs, a simple two functions, publish and subscribe, send and receive. As always, our APIs are easy to use and implement. I recommend checking out our arduino SDK, https://github.com/pubnub/arduino.

More Stories By Stephen Blum

Stephen Blum is the founder and CTO of PubNub. His vision and strong technical chops drove the initial architecture of PubNub, building a core engine that has successfully scaled to the some of the largest real-time deployments in the world. Stephen has been a successful software entrepreneur his whole life, starting his first company, LTSun, at age 17, and joining Microsoft after its acquisition. Stephen was the chief architect for TrustedOpinion.com, a 50-language social recommendations site that grew to over 1 million users across over 100 countries.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.