Install-the-Controller-s

Install the Controller

After creating your online Designer account, you need to install a controller. You can install a controller on your existing computer hardware. We currently test OpenRemote distributions with Microsoft Windows, Mac OS X and Debian-based Linux distributions. Instructions for a wide range of systems can be found below.

Steps for installation on different systems

For the OpenRemote Designer, you need the OpenRemote Controller. First login into your OpenRemote Designer Account, you have already created. Select the ‘Download Resources’ button at the upper right corner of the user interface, and a GitHub window with the latest binary and source code files for OpenRemote Controller will open. In the section of the most recent release you go to Downloads and select the file OpenRemote_Controller.zip.

Next, uncompress the file and copy its directory tree to a folder (e.g. shProject) in your home directory. Under Windows, as well as under OS X, the home directory is the one you are in when opening a terminal window. The top level OpenRemote directory, which is called something like OpenRemote-Controller-2.6.0, you should best rename to a simpler name ORC260. With that, you have the start script for the OpenRemote controller below:

shProject/ORC260/bin/openremote.sh (the OS X, Linux start script) shProject/ORC260/bin/openremote.bat (the Windows start script)
Mac OS X
On a Mac you start by opening an OS X Terminal window selecting Applications — Utilities. If you have not worked with the terminal application before, there are a few fundamental commands you need to know in order to be able to start:
ls -lDisplay listing with the option – l (l for long), displays the content of the current directory, including hidden files and permissions
ls -aDisplay listing with the option -a also shows hidden files (e.g. all files starting with a period such as .bash profile are hidden)
pwdPrint working directory – displays the path of the current directory
cd ..Change directory followed by a space and two dots – gets us one directory hierarchy up
cdJust typing cd gets us back to our home directory
cd /targetChanges to the specified directory
mkdir nameCreate (make) directory
man mdcShow the manual entry for a command
./The leading dot in a directory specification means “relative to the current directory”

Java: Verification and Installation

First you need to verify if you have Java installed. To do this use the command:

java -version
On a new Mac, you will not find Java installed, because since version 10.8 it is no more part of OS X. In response to the above command OS X will alert you that you need to download Java in order to execute this command. If you select more information in the alert window, you will be taken to to the Oracle Java website. There you select JDK Download, and after accepting the Oracle License Agreement you can download and install the JDK version for Mac OS X. While you will not conduct Java development work, just installing the Java Runtime Environment (JRE) is not sufficient for the instructions to follow and for the integrated rules environment Drools. So do install the JDK (Java Development Kit) package and not the JRE (Java Runtime Environment) software.

When you now open System Preferences on your Mac, you will see a Java icon, the Java Control Panel. If you select General and About the Java version you have installed is being displayed.

If you are using Safari as your browser, make sure to also enable Java by selecting Preferences and Security. Then open Plug-in Settings… and add Java to the list of approved Plug-ins. You will now be able to verify your installed Java version with Safari using the link https://www.java.com/en/download/installed.jsp.


Setting the $JAVA_HOME variable

There is one more thing you need to do before you can start the OpenRemote controller, which is setting the $JAVA_HOME variable. $JAVA_HOME is used by Java programs to find the path of the Java files and needs to contain the full path to our Java installation. Under OS X and Linux, the list of locations or paths, which a program uses to search for executables is stored in the $PATH variable. There is a system wide and a user specific $PATH definition. We will just use the user specific $PATH variable at this point. The user specific $PATH definitions under OS X are contained in the file .bash_profile file in the user home directory. The (hidden) file .bash_profile might not exist yet in your home directory, which is why you probably will need to create it. (Type: ls -a in your home directory to list the hidden files.) We enter the following two commands in the terminal window:

touch ~/.bash_profile open ~/.bash_profile
The command touch along with a filename creates an empty file and the command open plus a filename opens the specified file in the default text editor, which on a Mac is TextEdit. Now you need to add the line that sets $JAVA_HOME to contain the directory of your JDK installation. The best way to do this is to use the command
java_home, which automatically returns a path suitable for the $JAVA_HOME environment variable. The command can be found in the directory /usr/libexec/. If you open a Terminal window, move to /usr/libexec/ and enter the command ./java_home, you will get something like:
/Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home
With that the entry for the file .bash_profile using java_home looks like the following:
export JAVA_HOME=$(/usr/libexec/java_home)
You enter the above line and save .bash_profile in TextEdit, close the terminal window and open it up again (which forces the system to process the new $PATH definition), and test your work by entering echo $PATH and echo $JAVA_HOME.
$JAVA_HOME -bash: /Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home: is a directory

Starting OpenRemote Controller for the First Time

The start script for the OpenRemote controller is openremote.sh in /shProject/ORC260/bin. When you do a long listing (ls -l) of the files in the ORC260/bin directory you can see that you do not yet have the execution right for the startup file yet. In case you are new to file permissions: File permissions in OS X and Linux are set in three groups (owner, group, everyone) with three symbols for each group receiving permissions. The symbols can contain:

– … no permissiom r … read permission w … write permission x … execute permission
The first letter of the file listing is not a permission, but shows whether the line entry references a file (-) or a directory (d). So the permissions start actually at the second letter of the below listing:
ls -l ./shProject/ORC260/bin total 48 -rw-r–r–@ 9854 10 Mar 2016 openremote.bat -rw-r–r–@ 12039 10 Mar 2016 openremote.sh
You see that you have only read and write rights for openremote.sh. With the command chmod +x you set the execution rights:
chmod +x ./shProject/ORC260/bin/openremote.sh
and can now start the OpenRemote controller by entering:
./openremote.sh run
In the terminal window, you now see a lot of text running by until it stops with a line, displaying something like
INFO: Server startup in 3159 ms
Your OpenRemote controller is now up and running for th first time. You validate our installation by accessing the controller web interface at the URL http://localhost:8688/controller The below screen will show up. Before you synchronize your local controller installation for the first time with a mobile client design, you need to configure the OpenRemote Designer as described in Step 4 ‘Build your first App’.
Install-Controller-MacOSX
Windows XP/7/8/10
Under MS Windows (XP/7/8/10) at first you need to make sure you have a Java Development Kit (JDK) package installed. To find out if you have an installation on your computer, select Start – Control Panel – Add or Remove Programs . If you do not have Java installed, you need to download the JDK package from the Oracle Java website. After installing the JDK determine the exact directory path of your Java installation. It should be something like
C:\Program Files\Java\jdk1.8.0_45\
Next go to the Windows menu for environment variables. Open System in Control Panel. (or simply type advanced system in the search bar). Open the Advanced tab, select Environment Variables. Select New to add a new variable name and value. Enter JAVA_HOME as variable name and the path to your Java directory. Be very careful to make no mistakes when setting the environment variable. The controller will not start up if the environment variable does not point to the correct directory. With the command set from a terminal window you can validate the settings of your environment variable:
set JAVA_HOME=C:\Program Files\Java\jdk1.8.0_45
To open a terminal window under Windows 10 simply type command in the search bar. Now you can start up the controller for the first time. In the terminal window change to the directory /shProject/ORC260/bin/ and enter openremote.bat run
You will now see a lot of text running by, which eventually will stop displaying something like:
INFO: Server startup in 3159 ms
Your OpenRemote controller is now up and running for the first time. You validate your installation by accessing the controller web interface at the URL http://localhost:8688/controller The below screen will show up. Before you synchronize your local controller installation for the first time with a mobile client design, you need to configure the OpenRemote Designer as described in Step 4 ‘Build your first App’.
Install-Controller-MacOSX
Raspberry Pi

For instructions please see: Raspberry Pi

Synology NAS

For instructions please see: Synology NAS

Netgear ReadyNAS
QNAP NAS
OpenElec on CuBox
Ubuntu

For x86 CPU Architecture: Linux install instructions For ARM CPU Architecture follow instructions: Raspberry Pi

Fedora

For x86 CPU Architecture: Linux install instructions For ARM CPU Architecture follow instructions: Raspberry Pi

Debian

For x86 CPU Architecture: Linux install instructions For ARM CPU Architecture follow instructions: Raspberry Pi

For additional instructions for other operating system variants, please use the OpenRemote Community Website for documentation and support.

Moving on to the next step

Now that you have completed the Controller installation, it is time to head to Step 3: Download the Apps

Different Needs, Tailored Solutions

From a straightforward single account setup to your personal fully branded solution, including back-end services, OpenRemote provides you with the perfect solution.

Compare Products

News Feed

Last Tweets