OpenHAB

Last updated
open Home Automation Bus (openHAB)
Initial release2011
Stable release
4.0.3 [1]   OOjs UI icon edit-ltr-progressive.svg / 9 September 2023;30 days ago (9 September 2023)
Repository github.com/openhab
Written in Java
Operating system Linux, Windows, Mac OS X, Unix, Solaris, OpenBSD, FreeBSD
Type Home automation
License Eclipse Public License
Website www.openhab.org

open Home Automation Bus (openHAB) is an open source home automation software written in Java. It is deployed on premises and connects to devices and services from different vendors. As of 2019, close to 300 bindings are available as OSGi modules. [2] Actions, such as switching on lights, are triggered by rules, voice commands, or controls on the openHAB user interface. The openHAB project started in 2010. In 2013, the core functionality became an official project of the Eclipse Foundation under the name Eclipse SmartHome. [3] openHAB is based on Eclipse SmartHome and remains the project for the development of bindings. According to Black Duck Open Hub, it is developed by one of the largest open-source teams in the world. [4] It also has an active user community. [5]

Contents

Features

Installation and runtime

OpenHAB requires a JVM and can be deployed on servers running various operating systems, a dedicated Raspberry Pi instance, or some network-attached storage systems. [6] [7] The required bindings can be added at runtime via OSGi. OpenHAB supports a number of persistence backends for storing and querying the smart home data, including relational and time series databases. By default openHAB uses rrd4j for persistence. [8]

Discovery and configuration

After installation, openHAB scans the local network and discovers devices that can be included in the smart home solution. [9] Users can provide credentials and meaningful device names via an administration user interface.

Things and Items

Since major version 2 of openHAB the connections to physical devices is split in 2 levels. "Things" are the interface elements to a specific physical device (e.g. an interface to a home automation network like KNX, Z-Wave or Zigbee). Within these things, one or more "Items" can then be defined or discovered. These "Items" correspond to one specific component like a relay controlling a light, the desired temperature of a heating system or a dimmer percentage.

Sitemaps

Sitemaps allow the user to determine how the devices in the smart home are arranged. A sitemap groups devices by floor and room and determines how they are visualized and controlled. The following example illustrates what a typical sitemap definition might look like:

sitemap demo label="My home automation" {     Frame label="Date" {         Text item=Date     }     Frame label="Demo" {         Switch item=Lights icon="light"         Text item=LR_Temperature label="Livingroom [%.1f °C]"         Group item=Heating         Text item=LR_Multimedia_Summary label="Multimedia [%s]" icon="video" {             Selection item=LR_TV_Channel mappings=[0="off", 1="DasErste", 2="BBC One", 3="Cartoon Network"]             Slider item=LR_TV_Volume         }     } } 

User interface

Once the system is configured, openHAB users can view data and perform actions using a number of user interfaces. These include a browser based interface as well as apps for Android, Windows 10, and iOS. [10] [11] [12] All of these UIs are defined by the sitemap mechanism.

Rules

An event, condition, action rule-based system is used to automate the smart home. The following example turns off a light once the sun rises at the configured location.

rule"Start wake up light on sunrise"whenChannel"astro:sun:home:rise#event"triggeredthenswitch(receivedEvent.getEvent()) {         case "START": {             Light.sendCommand(OFF)         } } end

openHAB Cloud

OpenHAB Cloud is a companion cloud service and backend for openHAB. It provides secure remote access and enables openHAB users to remotely monitor, control and steer their homes through the internet. The openHAB foundation provides a demo system without SLA guarantees. [13]

Version 3 improvements

In 2020, the code was forked for a major rework, separating to 2.5 version from the upcoming 3.0 branch. [14] Apart from some technical code changes (e.g. use of java 11), several functional improvements are foreseen:

The main drawback is that backward compatibility to openHAB add-ons for version 1 is dropped.

Version 3.0 has been released as of 21 December 2020. [15]

Security

Many security and privacy concerns have been raised with home automation and IoT in general. OpenHAB's on-premises engine and open source character are answers to these concerns. [16] However, it was criticized for its use of default configurations. [17]

Reception

OpenHAB won the IoT Challenge 2013 [18] and the JavaOne Duke's Choice Award 2013. [19] It was nominated for the JAX Innovation Award 2014 [20] and was the People's Choice Winner at the Postscapes IoT Awards 2014/15. [21]

See also

Related Research Articles

<span class="mw-page-title-main">OSGi</span> Open standards organisation

OSGi is an open specification and open source project under the Eclipse Foundation.

<span class="mw-page-title-main">Jakarta EE</span> Set of specifications extending Java SE

Jakarta EE, formerly Java Platform, Enterprise Edition and Java 2 Platform, Enterprise Edition (J2EE), is a set of specifications, extending Java SE with specifications for enterprise features such as distributed computing and web services. Jakarta EE applications are run on reference runtimes, that can be microservices or application servers, which handle transactions, security, scalability, concurrency and management of the components they are deploying.

<span class="mw-page-title-main">VxWorks</span> Real-time operating system

VxWorks is a real-time operating system developed as proprietary software by Wind River Systems, a subsidiary of Aptiv. First released in 1987, VxWorks is designed for use in embedded systems requiring real-time, deterministic performance and, in many cases, safety and security certification for industries such as aerospace, defense, medical devices, industrial equipment, robotics, energy, transportation, network infrastructure, automotive, and consumer electronics.

<span class="mw-page-title-main">Home automation</span> Building automation for a home

Home automation or domotics is building automation for a home. A home automation system will monitor and/or control home attributes such as lighting, climate, entertainment systems, and appliances. It may also include home security such as access control and alarm systems.

Zigbee is an IEEE 802.15.4-based specification for a suite of high-level communication protocols used to create personal area networks with small, low-power digital radios, such as for home automation, medical device data collection, and other low-power low-bandwidth needs, designed for small scale projects which need wireless connection. Hence, Zigbee is a low-power, low data rate, and close proximity wireless ad hoc network.

<span class="mw-page-title-main">Eclipse (software)</span> Software development environment

Eclipse is an integrated development environment (IDE) used in computer programming. It contains a base workspace and an extensible plug-in system for customizing the environment. It is the second-most-popular IDE for Java development, and, until 2016, was the most popular. Eclipse is written mostly in Java and its primary use is for developing Java applications, but it may also be used to develop applications in other programming languages via plug-ins, including Ada, ABAP, C, C++, C#, Clojure, COBOL, D, Erlang, Fortran, Groovy, Haskell, JavaScript, Julia, Lasso, Lua, NATURAL, Perl, PHP, Prolog, Python, R, Ruby, Rust, Scala, and Scheme. It can also be used to develop documents with LaTeX and packages for the software Mathematica. Development environments include the Eclipse Java development tools (JDT) for Java and Scala, Eclipse CDT for C/C++, and Eclipse PDT for PHP, among others.

<span class="mw-page-title-main">Z-Wave</span> Wireless standard for intelligent building networks

Z-Wave is a wireless communications protocol used primarily for residential and commercial building automation. It is a mesh network using low-energy radio waves to communicate from device to device, allowing for wireless control of smart home devices, such as smart lights, security systems, thermostats, sensors, smart door locks, and garage door openers. The Z-Wave brand and technology are owned by Silicon Labs. Over 300 companies involved in this technology are gathered within the Z-Wave Alliance.

<span class="mw-page-title-main">Profinet</span> Computer network protocol

Profinet is an industry technical standard for data communication over Industrial Ethernet, designed for collecting data from, and controlling equipment in industrial systems, with a particular strength in delivering data under tight time constraints. The standard is maintained and supported by Profibus and Profinet International, an umbrella organization headquartered in Karlsruhe, Germany.

The Internet of things (IoT) describes devices with sensors, processing ability, software and other technologies that connect and exchange data with other devices and systems over the Internet or other communications networks. The Internet of things encompasses electronics, communication and computer science engineering. Internet of things has been considered a misnomer because devices do not need to be connected to the public internet, they only need to be connected to a network, and be individually addressable.

EclipseLink is the open source Eclipse Persistence Services Project from the Eclipse Foundation. The software provides an extensible framework that allows Java developers to interact with various data services, including databases, web services, Object XML mapping (OXM), and enterprise information systems (EIS). EclipseLink supports a number of persistence standards including:

<span class="mw-page-title-main">Spring Roo</span> Open-source software tool

Spring Roo is an open-source software tool that uses convention-over-configuration principles to provide rapid application development of Java-based enterprise software. The resulting applications use common Java technologies such as Spring Framework, Java Persistence API, Thymeleaf, Apache Maven and AspectJ. Spring Roo is a member of the Spring portfolio of projects.

<span class="mw-page-title-main">HomeKit</span> Software framework by Apple for home automation

HomeKit, also known as Apple Home, is a software framework and communication protocol developed by Apple Inc. that lets users configure, communicate with and control smart-home appliances using Apple devices. It provides users with a way to automatically discover such devices and configure them. By designing rooms, items and actions in HomeKit, users can enable automations in the home through a voice command to Siri or through the Home app. With HomeKit, developers are able to create complex applications in order to manage accessories at a high level.

oneM2M

oneM2M is a global partnership project founded in 2012 and constituted by 8 of the world's leading ICT standards development organizations, notably: ARIB (Japan), ATIS, CCSA (China), ETSI (Europe), TIA (USA), TSDSI (India), TTA (Korea) and TTC (Japan). The goal of the organization is to create a global technical standard for interoperability concerning the architecture, API specifications, security and enrolment solutions for Machine-to-Machine and IoT technologies based on requirements contributed by its members.

Reactive Blocks is a visual model-driven development environment based on Activity Diagrams supporting formal model analysis, automated code generation, hierarchical modelling, and an extensive library of ready-to-use components for the Java platform.

Matter is an open-source connectivity standard for smart home and Internet of things devices, which aims to improve their compatibility and security.

<span class="mw-page-title-main">Home Assistant</span> Home automation software

Home Assistant is free and open-source software for home automation designed to be a central control system for smart home devices with a focus on local control and privacy. It can be accessed through a web-based user interface by using companion apps for Android and iOS, or by voice commands via a supported virtual assistant such as Google Assistant or Amazon Alexa.

<span class="mw-page-title-main">Develco Products</span> Danish wireless technology producer

Develco Products is a B2B wireless technology producer, headquartered in Aarhus, Denmark. The company was established in 2007 and develops white label devices for B2C solution providers and has over 3,500,000 devices deployed worldwide... Their main business areas are home care, security, and smart energy. They are a member of the Connectivity Standards Alliance as their main technological expertise lies in Zigbee-based devices that communicate through a mesh network. The company claims their most popular product is the Squid.link gateway.

References

  1. "Release 4.0.3". 9 September 2023. Retrieved 18 September 2023.
  2. "openHAB Add-on Reference". openHAB Foundation e.V. Retrieved 26 November 2019.
  3. "Eclipse SmartHome - A Flexible Framework for the Smart Home" . Retrieved 26 November 2019.
  4. "Project Summary: Factoids - Open Hub". Black Duck Software, Inc. Retrieved 26 November 2019.
  5. "About - openHAB Community". openHAB Foundation e.V. Retrieved 26 November 2019.
  6. "PINE A64 is a $15, 'high-performance' take on the Raspberry Pi". Engadget, Verizon Media. Retrieved 26 November 2019.
  7. "How to install openHAB 2 on Synology Diskstation". Smarthome Training. 8 March 2019. Retrieved 26 November 2019.
  8. "Persistence". www.openhab.org. Retrieved 2022-01-12.
  9. "Thing Discovery". www.openhab.org. Retrieved 2022-01-12.
  10. "openHAB - Apps on Google Play". Google Corporation. Retrieved 26 November 2019.
  11. "openHAB on the App Store". Apple Corporation. Retrieved 26 November 2019.
  12. "Get openHAB - Microsoft Store". Microsoft Corporation. Retrieved 26 November 2019.
  13. "Welcome to myopenHAB". openHAB Foundation e.V. Retrieved 26 November 2019.
  14. Development of openHAB 3.0.0 and 2.5.x
  15. "openHAB 3.0 Release". openHAB Foundation e.V.
  16. "Smart-Home Gadgets Need a Translator Real Bad—Here's How to Get One". Wired. May 2016. Retrieved 26 November 2019.
  17. "1990s technology exposes 32,000 smart homes, businesses to exploit". ZDNet. August 2018.
  18. "Announcement: The winner of the IoT Challenge 2013!!". Jakajima B.V. June 4, 2013.
  19. "2013 Duke's Choice Awards". Archived from the original on 2014-01-13. Retrieved 2014-01-13.
  20. "JAX Innovation Award Nomination". Software & Support Media GmbH. Retrieved 26 November 2019.
  21. "Postscapes IoT Awards 2014/15". Archived from the original on 2016-03-09. Retrieved 2016-05-31.