Eclipse Technologies for the Internet of Things and the Smart Home

Posted by Kai Kreuzer on May 12, 2013
The Internet of Things (IoT) is one of the big hypes at the moment - and as usual with such a buzzword, it does not mean much at all (or rather it means something different, depending on who you talk to).

IoT is often used synonymously with M2M (machine-to-machine). From my point of view, this is not a valid equation - the IoT is trifold, M2M just being one part of it. M2M was coined by the telco operators and thus it usually meant in the past to stick a SIM-card on a remote device and have it communicate through the GSM network. Work was usually done in customer projects which had the goal to remotely administrate and monitor distributed devices, be it solar panels, trucks or coffee machines. None of these solutions actually wanted to connect anything to the Internet, they were usually proprietary and closed - or if you want to formulate it positively: they were targeting vertical markets.

A step towards more openness of M2M is the Open Source M2M initiative at Eclipse led by Benjamin Cabé. This will hopefully help on standardizing the used communication protocols and make it much easier for many people to program embedded devices and make them connected. Nonetheless, the focus here is still on connecting proprietary devices through unreliable and low-bandwidth networks (like GSM), so it is a good match for the classical M2M use cases mentioned above.

Another "movement" that likes using the term IoT is all the cloud-enabled gadgets ( I call them Cloudy Things) that are popping up here and there. Think of things like NestKoubachi, Withings, Fitbit, WeMo etc - each of these gadgets comes with its own cloud service, for which you need to register a user account, install a separate app and let all your data flow to some cloud service. Ok, these gadgets are connected to the Internet, but effectively they are totally disconnected from each other. The user serves as the point of integration, using his smartphone, switching from one app to another. Is this really the ultimate answer?

No, there is one more thing to it - a big part of what is the Internet to all of us is actually the private part that is under our own control: The Intranet! Nobody wants to make his printer, scanner, VoIP telephone etc. publicly available on the Internet - and yet they are part of the Internet, merely behind the firewall of the local router.

And here we enter the space of the Smart Home - Smart Home technologies again are a part of the Internet of Things, but they are neither M2M nor Cloudy Things - they are the Intranet of Things. There are two simple reasons: Firstly, you don't want your house become unusable just because your DSL connection is down - things still have to work when you are offline! Secondly, you want to be in control of the data and process it the way you need. It shouldn't be a dozen of cloud services that grab your data exclusively and then decide, what you will at all see of it and how you are allowed to use it.

Actually the three parts (M2M - Cloudy Things - Intranet of Things) are not disjunct, but also clearly overlap. Yet, the intention behind them is quite different.

Let me give you an example that everybody should be familiar with: The Smart Meter. In the European Union Smart Meters are aggressively pushed to the households. But what is the intention?
M2M: Smart Meters are a mandatory part of the smart grids through which the utility companies want to move towards a distributed system of power generation, driven by the renewable energies. A possible way of connecting the meters is via GSM using a SIM-card. This is clearly M2M: The companies need the data from these distributed remote devices for their own purpose, the customer does not have any benefit.
Cloudy Thing: As the customer does not have any benefit from the original M2M use case, the utility companies try to offer him at least something - they visualize the gathered consumption data in a nice chart that the customer can view after login at the companies cloud service, right next to his invoices. How this is presented and with which granularity is completely up to the company. The raw data is not available to the customer.
Intranet of Things: A Smart Meter is only really interesting for the customer, if he himself can get hold of the data. Unfortunately this is not really in the focus of the utility companies. Otherwise, you could have use cases like: Is the "idle" consumption a few hundred watts higher than usual? -> possibly something was not turned off! Is the current consumption higher than what the photovoltaics produce? -> maybe a bad time to start the washing machine. Is my average daily consumption lower than last month? The investment in the new fridge might pay off.

You may wonder, how you can avoid relying on Cloudy Things for your Smart Home - well, this is what I founded openHAB for! It is the missing part of your Intranet to give you (and not the cloud services) full control of your devices and your data. It already supports a long list of devices, like KNX, Homematic, Philips Hue and many more. Others are currently under development like digitalSTROM, EnOcean, AVM Fritz DECT ULE, Z-Wave etc.), so soon there should hardly be anything missing what is currently hip in the Smart Home market.

Having mentioned Eclipse M2M above: openHAB is not a competition, but a perfect complement to it - while the Eclipse M2M projects allow building devices, openHAB brings them (and many others) together and introduces the user to the network of "machines". openHAB itself is built on Eclipse technologies: Equinox, Jetty, EMF, RCP, Xtend, Xtext, Xbase,... Once the openHAB MQTT binding is ready, this can be a really cool combination!

If you have read up to here, I am convinced that you share my enthusiasm that openHAB is the missing piece to make the IoT really useful to the end user - please therefore support us and vote for openHAB at the IOT challenge, where we participate - it is just a simply click. I count on you!