This page is part of archived documentation for openHAB 3.4. Go to the current stable version

# Installation Overview

openHAB is written completely in Java. As such, it only depends on a Java Virtual Machine, which is available for most platforms. openHAB can be run on different versions of macOS and Windows and many different variants of Linux (Ubuntu, Raspbian, etc.).

Please be aware of the fact that openHAB is continuously updated and improved. Therefore, tutorials and help you may find on the Internet for it may be outdated! Always keep this in mind when searching for help and solutions.

# Platform Recommendations

  1. You are new to openHAB and just want to give it a try?

    • Set up openHAB on your local PC or Mac in just a few steps or
    • use a Raspi with openHABian
  2. You've gained some experience and want to use openHAB to seriously control your home? Typical hardware and software requirements are:

    • 24/7 availability: A dedicated system connected by Ethernet and running continuously.
    • Energy and space efficient: A device capable of performing the task at hand without being excessive for your needs.
    • Extendibility: Your system should be capable of running additional software like an MQTT broker or persistence and graphing software.
    • Peripherals: Depending on your home automation hardware, you may need the ability to connect additional peripheral devices such as a WiFi interface or a special USB radio module.

Many devices are suited to host a continuous installation of openHAB. Experiences with different devices and environments can be found in the community forum hardware section (opens new window).

We recommend to get a dedicated Raspberry Pi 4 and to use openHABian for quick setup. openHABian is also available to kickstart your openHAB experience on existing Debian x86 based Linux systems.

# Prerequisites

Make sure that you have an up to date Java 11 JVM platform installed on your host system. We recommended to use the openjdk package that comes with your Linux distro. If in doubt, explicitly install a JVM based on OpenJDK. You could also download Azul Zulu (opens new window) Installation (opens new window) instructions can be found on Azul Systems' Zulu website. Oracle Java is also suitable for most configurations but it's not recommended. Licensing restrictions may apply.

WARNING

Please note that versions of Java higher than 11 are not supported at the moment.

Java Platform Advantages Disadvantages
Azul Zulu (opens new window) Open source, fully certified Java SE compliant build of OpenJDK, embedded version optimized for ARM devices available here (opens new window)
Oracle Java (opens new window) Full openHAB support on all platforms Licensing restrictions (opens new window), manual installation required on many Linux systems: Ubuntu (opens new window), Mint (opens new window), and Debian (opens new window) are some examples
AdoptOpenJDK (opens new window) Open Source JDK backed by many large companies

Please download and install the Java 11 version of the JVM. Note that openHAB 3 will run under Java 11, and you can use it with openHAB 2.X as well. But be aware that although developers are working hard to make this work, there might be problems with the oldest parts of openHAB 2.x, such as some of the v1 bindings, due to non-backward compatible changes in Java 11.

The 64-bit version of the JVM is only recommended on platforms using a 64-bit OS and an Intel or AMD processor.

The 32-bit version of the JVM is recommended on ARM platforms such as the Raspberry Pi. The 32-bit JVM performs better on the ARM platform. Some add-ons use libraries that do not work with a 64-bit JVM on ARM.

Check your current Java version by opening a command line console and typing java -version:

openjdk version "11.0.9.1" 2020-11-04 LTS
OpenJDK Runtime Environment Zulu11.43+55-CA (build 11.0.9.1+1-LTS)
OpenJDK 64-Bit Server VM Zulu11.43+55-CA (build 11.0.9.1+1-LTS, mixed mode)

# Setup variants

Before you can start, two decisions have to be made:

  1. openHAB is available as a platform independent archive file or through a package repository:

    • Manual setup: Download and extract a platform independent zip archive: macOS, Windows, Linux
    • Package setup: Install from a package repository, using a package manager such as apt or yum. This option is only available for certain Linux distributions such as Debian or Ubuntu derivatives, but allows you to take advantage of automatic updates and is the recommended choice: Linux (apt/deb)
  2. Stable release or cutting edge:

# Installation

Please follow the instructions in the installation article matching your platform (see the menu to the left).

# Getting installation info

For many actions you need to know the pathes where openHAB checks for files, or where you need to install additional packages. To find out where these locations are, e.g. where $OPENHAB_CONF points to, use the console (opens new window):

openhab-cli info

will result in e.g. for an openHABian (opens new window) installation

Version:     3.0.2 (Build)

User:        openhab (Active Process 7466)
User Groups: openhab tty dialout audio bluetooth gpio

Directories: Folder Name      | Path                        | User:Group
             -----------      | ----                        | ----------
             OPENHAB_HOME     | /usr/share/openhab          | openhab:openhab
             OPENHAB_RUNTIME  | /usr/share/openhab/runtime  | openhab:openhab
             OPENHAB_USERDATA | /var/lib/openhab            | openhab:openhab
             OPENHAB_CONF     | /etc/openhab                | openhab:openhab
             OPENHAB_LOGDIR   | /var/log/openhab            | openhab:openhab

URLs:        http://169.254.63.209:8080
             https://169.254.63.209:8443

# Additional Steps

After you get openHAB set up and running, there are a few additional setup steps you should consider:

# Getting started

With the openHAB distribution up and running, you should now continue with the Beginner Tutorial or by working on your own configuration.

# Help

The very active openHAB Community Forum (opens new window) can provide you with many more details, hints, and tips. If you run into any problems, use the search function in the forum or open a new thread with your detailed question.