The benefits of opensource for Home Automation

We talk a lot about opensource on this site and generally advocate Zigbee over other protocols. This may change in future as Z-Wave is about to opensource their protocol, nor is it unqualified. Zigbee is opensource though not all implimentations are completely standardised. In order to fully understand the benefits of opensource to smart home devices and appliances it's first neccesary to understand what this means.

What is opensource?

Opensource is the name given to computercode which has been licenced to grants users the rights to study, change, and distribute the software to anyone and for any purpose. The only restriction placed on the end user is that any code resulting from modification of the original must also be opensource.

Why does opensource matter for Home Automation?

Opensource code means that smart devices are afforded better security, have a level of longevity guarantee not otherwise possible from proritery code and are generally more compatible with each other.

Opensource and Security

Proprietary code relies on the principle of security through obscurity (STO) relying on the fact that nobody outside of its implementation group is allowed to know how it works, opensource code in contrast is visible to everyone not simply the developers.

While code being opensource does not guarantee that it will be more secure, bad code is bad code after all, it does mean that its not reliant only on the knowledge of a handful of developers and the assumption that no one has been able to reverse engineer it. Instead it opens the ability to review, identify issues and offer fixes to anyone with an internet connection and the technical knowledge to read the code.

The second benefit to opensource is the ability to get up and leave. Put simply while you might start off using Philips Hue bulbs or a Samsung SmartThings hub you aren't restricted to only these ecosystems. Their bulbs, door sensors, switches and plugs can easily be hooked up to another opensource hub which doesn't communicate outwith your network. This also offers longevity.

Longevity

If the company that manufactured your smart plug your smart phone or any other clients goes under or is purchased by another company and drops your devices it will be possible for someone else to come along and support your appliances. If for whatever reason the Smart Hub that you're currently using changes the way that it does things, starts to lock down functionality, or simply has a security risk that isn't being patched you are able to simply buy a new hub from a different manufacturer that does not share the same vulnerability and migrate all your devices.

As Sonos customers learned recently when the company announced that it would no longer be supporting speakers that were a decade or so old it's not always desirable, or profitable for a business to support devices longer term. At a certain point it's worth more to the business to get new customers than it is to try and keep their old customers happy. If your appliance is communicating via an opensource protocol it's possible for this to continue to be supported by someone other than the manufacturer. The DD-WRT Community is a great example of what can be achieved via an entirely open source code base.

Compatability

The ability to interconnect proprietary smart home devices is challenging and generally dependant on the provider maintaining an API (application programming interface). Unless an API is provided allowing control via means other than the companies own app the ecosystem is essentially closed to other devices making it impossible for automation to occur outwith the eco system

Similarly any changes made to how that API functions will require changes be made to any solutions thaty connect with it. In an opensource ecosystem interconnectivity is virtually guaranteed, and as detailed in longevity it is always possible to move devices to a different hub.

Opensource and Zigbee

Our preference for the most part is for zigbee appliances for these very simple reasons. While the code base attached to the various hubs can be very very locked down the nature of the opensource protocol means that you're not tied to a single provider that may cease to exist, change their business model or drop your devices.