Getting Started

Learn how you can benefit from Eclipse SmartHome™ as a...

Hardware Manufacturers

The Problem

There is hardly any product category in the home appliances and consumer electronics space that is not affected by the trend to offer connectivity. In the Internet of Things (IoT) world, there is a "smart" version of everything and all manufacturer have to think about a connected version of almost every device in their product portfolio as they might otherwise lose their customers to competitors.

A very common problem is that Internet technologies are usually not core skills of such companies. But having to design a connected product means answering many questions:

  • What hardware platform to use?
  • Which programming language to use for the device firmware?
  • What (radio) protocol to use?
  • How to solve authentication and secure communication?

There are many different answers to these questions and they highly depend on the specific product. Most of it is somehow related to embedded hardware design and low-footprint firmware programming, which is still in reach of a typical hardware development team. The real problems start with the "I" of IoT:

  1. Customers need to access the device remotely, when not at home
  2. Apps need to be built for at least 2-3 different smartphone platforms in different languages
  3. Firmware updates must be remotely provisioned and installed
  4. A Smart Home requires the device to talk to a zillion other devices from different market segments.
  5. Applications and rules must be made available that support very specific use cases across all the different devices from different vendors.

All of this is nothing that a normal hardware manufacturer can design and build on its own - the ones trying to do so usually end up with a siloed solution with many constraints what does not really match the expectations of customers. It is therefore easier, to build the product in a way that it nicely integrates with existing smart home platforms of solution providers. But which one to choose? As a manufacturer you won't be dependent on the weal and woe or the business strategy of a single other company. Building the product compatible with multiple platforms at the same time can mean a lot of additional effort though.

How does Eclipse SmartHome™ help?

It first of all does not require you to adapt your hardware in any way. Instead, you use the existing connectivity features of your device and implement a connector (a so-called "binding") to Eclipse SmartHome, which integrates your device through the technical means that you have chosen.
Secondly, you benefit from the fact that more and more smart home solutions on the market are based on Eclipse SmartHome and thus share the APIs. This means that you only need to implement the binding once and by this you have achieved the technical pre-requisites to offer your devices foro many different solutions at the same time.

How to start

Solution Providers

The Problem

The Internet of Things - and specifically the Smart Home - promise to offer enormous business opportunities in the near future. There are therefore many companies trying to address this market, which leads to a wide variety of smart home solutions available to customers.

All of these solutions face a common problem: On the long run, customers do not accept a vendor lock-in regarding the supported devices. Instead, they are asking for integration with device X and appliance Y, since the real value of a smart home is only achieved when many different devices are made to work smoothly together.

Solution providers have multiple options to address this request:

  • Ignore it and lose customers to competitors
  • Implement, test and maintain the integration with the requested devices
  • License a commercial product that either already has support or which offers to implement the integration
  • Collaborate with others and share the efforts of the integration

Considering the huge number of different protocols, APIs, communication schemes, setup processes and device specific behaviors, it already means a tremendous effort to integrate just a small subset of what is available on the market. What makes it worse is the fact that the product cycles are so short that once an integration is done, a newer revision of the device might be shipped already.

How does Eclipse SmartHome help?

Being a neutral place, Eclipse SmartHome fosters industry collaboration for the benefit of all. Only a large base of active developers will be able to keep up with the speed of the market. It is evident that there are just a few companies large enough to establish their own smart home ecosystem with a developer community of significant size. Eclipse SmartHome builds a counterpart and brings together the developers from different smart home solutions, from device manufacturers and from a professional user community.

This effectively means that solutions based on Eclipse SmartHome™ share the same foundation, offer similar APIs and thus have access to the same growing developer community. Nonetheless, being a highly modular framework, every solution provider can customize his offer to his needs, add additional functionality and features and have real business differentiators on his value proposition.

How to start

  • Learn about the architecture of Eclipse SmartHome™, what features it brings and how the APIs look like.
  • Build a solution based on the Eclipse SmartHome™ OSGi bundles - what you need is an OSGi framework with an embedded HTTP server implementation and a few utility bundles. Check out openHAB 2 as the open source reference solution built with Eclipse SmartHome
  • .

Software Developers

The Problem

There isn't "the" software developer - every developer has a different background, a different goal and a different mindset. But what most have in common is that they are driven by a problem or task that needs to be solved. It does not matter whether the task is about solving a personal problem, about building a smart home prototype, about setting up a demo application or about doing any kind of research project, the expectations are very similar:

  • Building everything from scratch is too much effort and distracts from the real problem and thus is no option. A framework to start with is needed.
  • The framework should be freely available as no one likes to pay licenses for a project that does not generate any revenue itself.
  • The framework must be very flexible, so that it can be used for the specific use case at hand. Optimally, it is open source as this provides the highest degree of flexibility.

How does Eclipse SmartHome™ help?

Eclipse SmartHome™ and the open source reference solution openHAB 2 are perfect fits for these criteria. It enables developers to quickly solve their problem and to concentrate on it, while directly benefitting from all the other powerful features like user interfaces, automation rules, persistence mechanisms and device integrations that Eclipse SmartHome™ provides.

Additionally, Eclipse SmartHome™ has further advantages:

  • A large developer community exists, which might have solved similar problems already and can be a great source for tips and support.
  • Being a project hosted at the Eclipse Foundation ensures that the code can also be used commercially, if the own prototype eventually evolves into a real product. The EPL lets you decide whether your own extensions should be open or closed source.
  • Extensions that you have developed for yourself are compatible with all other solutions being built on Eclipse SmartHome. So while you might have e.g. implemented a binding for your own use on openHAB 2, you have the chance to offer this work to commercial platforms that use Eclipse SmartHome and thus possibly create revenue from your work.

How to start