Sign In | Register
We migrated all our documentation and advise you to use our new OpenRemote Community Page as entry to all references and documentation on OpenRemote Designer.
For Installing OpenRemote 2.5 controller on Raspberry Pi see Raspberry Pi documentation
Added by Juha Lindfors
, last edit by Pierre Kil
on Jan 10, 2017 21:55
Sep 22, 2012
I had issues with icedtea-7-jre-cacao. Drools did not work as the current version only works with jre6, not jre7. sudo aptitude install icedtea-6-jre-cacao fixed it.
Step "4. Set JAVA_HOME environment variable" was not necessary.
May 08, 2013
I try to install Java using the command
$ sudo apt-get install icedtea-7-jre-cacao
It's asking me to install some packages but when I said [Yes] it' don't find the files.
Below my log:
pi@raspberrypi ~ $ sudo apt-get install icedtea-7-jre-cacao
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
ca-certificates-java java-common libnspr4 libnss3 libnss3-1d
openjdk-7-jre-headless openjdk-7-jre-lib tzdata-java
default-jre equivs libnss-mdns sun-java6-fonts ttf-dejavu-extra
fonts-ipafont-gothic fonts-ipafont-mincho ttf-wqy-microhei ttf-wqy-zenhei
The following NEW packages will be installed:
ca-certificates-java icedtea-7-jre-cacao java-common libnspr4 libnss3
libnss3-1d openjdk-7-jre-headless openjdk-7-jre-lib tzdata-java
0 upgraded, 9 newly installed, 0 to remove and 18 not upgraded.
Need to get 1,742 kB/33.8 MB of archives.
After this operation, 93.1 MB of additional disk space will be used.
Do you want to continue \[Y/n\]? y
Err http://mirrordirector.raspbian.org/raspbian/ wheezy/main libnspr4 armhf 2:4.9.1-1
404 Not Found
Err http://mirrordirector.raspbian.org/raspbian/ wheezy/main libnss3 armhf 2:3.13.5-1
404 Not Found
Err http://mirrordirector.raspbian.org/raspbian/ wheezy/main libnss3-1d armhf 2:3.13.5-1
404 Not Found
Err http://mirrordirector.raspbian.org/raspbian/ wheezy/main ca-certificates-java all 20120608
404 Not Found
Failed to fetch http://mirrordirector.raspbian.org/raspbian/pool/main/n/nspr/libnspr4_4.9.1-1_armhf.deb 404 Not Found
Failed to fetch http://mirrordirector.raspbian.org/raspbian/pool/main/n/nss/libnss3_3.13.5-1_armhf.deb 404 Not Found
Failed to fetch http://mirrordirector.raspbian.org/raspbian/pool/main/n/nss/libnss3-1d_3.13.5-1_armhf.deb 404 Not Found
Failed to fetch http://mirrordirector.raspbian.org/raspbian/pool/main/c/ca-certificates-java/ca-certificates-java_20120608_all.deb 404 Not Found
E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?
What can I try?
Sep 27, 2012
Did you try to install jre6 instead of jre7 as suggested by Sebastian? At least it fixed it also on my Raspberry
Oct 18, 2012
Start "raspi-config" and execute "update".
After that I was able to install icedtea.
You have to use jre-6 since our drools version does not run on jdk7 yet.
Oct 08, 2012
Thanks for the feedback everyone. Have updated the document by downgrading it to Java6 which is what we currently use for testing, included a note about proprietary Oracle VM with JIT for extra performance and updated the startup script to include cd'ing to bin directory before starting the controller to avoid issues with paths.
Oct 29, 2012
As noted in the article, the Oracle JRE currently requires you to run Soft-float Debian Wheezy, not Raspbian Wheezy.
May 05, 2013
I'd like to suggest updating the page to include mention of the Java SE 8 (with JavaFX) Developer Preview for ARM, just as Bob, I've been running it for months without issues, scheduling macros included.
May 06, 2013
Yes, this has been done.
Feb 20, 2013
I have been using Java SE 8 (with JavaFX) Developer Preview for ARM for the past couple of weeks without issue (Mea Culpa: I'm not actually knowledgeable enough to know how an issue would present itself though). As I understand it, JDK 8 supports hard float and JIT processing. When I intially installed OpenRemote on my RPi I used Iced Tea and then later switched to JDK 8. My impression was that OpenRemote ran more smoothly and started up quicker.
Savage Home Automation has a very good writeup on how to install it and was what I used.
Have updated the page with information about Java SE 8 developer preview. Thanks for sharing this tip and let us know if you find any issues as you go forward.
The current set of page updates are now complete. Additional feedback, comments and corrections are welcome as usual.
May 15, 2013
Hi - I'd like to add something that may be useful to others when trying to install any of the Oracle versions of Java. When I followed the instructions at the links provided above on the Oracle site, I found I had to perform a few additional steps. These are mainly required if you intend to use the start up service script.
On a fresh install of Debian wheezy for the PI, the instructions given leave you at a point where Java 6 is installed in directory called /home/pi/java . This is fine when you intend to run any Java jars by providing the full path to the JVM
(example /home/pi/java/ejre1.6.0_38/bin/java -jar testjavaprogram.jar)
However, init scripts run as root on boot up, and seems to expect the JVM executable to be in /usr/bin/java
To get around this, I used Debian's built in "alternative" method. I entered the following commands:
pi@raspberrypi ~ $ sudo update-alternatives --install "/usr/bin/java" "java" "/home/pi/java/ejre1.6.0_38/bin/java" 1
pi@raspberrypi ~ $ sudo update-alternatives --set java /home/pi/java/ejre1.6.0_38/bin/java
Then, I also added the following to the file /etc/environment
And finally, I added the following to /home/pi/.bashrc
Now everything works fine for me. Open-remote and three of my other java apps all now run correctly on start-up. I was using Java 6 above, but i'm sure if the file paths are altered for any of the other java versions, this should also work. You can even install all the JVMs and use the 'alternative' method to switch between them for comparison.
Perhaps I missed an instruction somewhere already and maybe you wont need to do the above, but as it took me a little while to figure it out, I thought i'd share my experience...
As a new user to open remote, I just wanted to thank the guys for creating it, Its an amazing product to give away for free! Thanks guys!
Thanks for going through the steps and documenting your changes here.
Jun 03, 2013
Sorry for my bad english, I use google translation.
Some remarks on this tutorial that does not know linux:
1°/ what command must be run in the console "putty" to install the Java version (apt-wget ...) to simplify the tutorial?
2°/ a where to install java, which folder?
3°/ what command must be run in the console "putty" to install the "controller" (wget apt-...) to simplify the tutorial?
4°/ Beware of "7" is the way "~ Cd / Desktop/OpenRemote-Controller-2.0.2/bin" whereas "9" the path is "cd / home/pi/Desktop/OpenRemote-Controller- 2.0.0/bin "and it will not start
Jun 28, 2013
In OpenRemote, the version of drools is 5.1.1.
With version 5.3.0, java 7 is supported.
Sep 23, 2013
I am trying to get OR running on my RP after not playing with it for a while.
On http://www.raspberrypi.org/downloads, they no longer offer separate hard float and soft float versions of raspbian. I believe that they are all hard float compiled now.
Also, Oracle now offers a version 7 hard float, but I haven't tried it yet.
Nov 22, 2013
The only working Java edition for a Raspberry Pi that works together with OpenRemote and with the RaZberyy ZWave platform is OpenJDK (IcedTea6 Zero VM).
The RaZberry software requires a hard-float installation which excludes the Oracle SE 6 VM (only available for soft float configuration).
Oracle SE 7 is incompatible with the Drools rule engine 5.1.1 that is currently used by OpenControl 2.0, 2.1 (and soon 2.2).
Also Java SE 8 has problem with the Drools rule engine 5.1.1, even if this may not be immediately visible. But rules that are reading sensor values are not working (it has me taken multiple evenings to figure out this!):
rule "Show Event" when
$evt : Event(source == "TestAlarmTriggerStatus")
execute.command("LogStatus", $evt.getValue().toString() );
OpenJDK (IcedTea6 Zero VM) is slower than Oracle Java, but it is available for hard float installation and the Drools rule engine 5.1.1 works.
I hope OpenRemote will be soon updated to Drools 5.5 that should again be compatible with Oracle Java 8.
Jan 14, 2014
so which is the preferred version of java for the current hard float wheezy ?
the java SE 8 or the hard float icedtea ?
Nov 30, 2013
When I found out about Openremote I decided to try it by installing the controller on a Mac. I was very positively surpised by all what openremote offers, and I am decided to use it for a small home automation project. Then I decided to buy a Raspberry Pi and install the controller on it, but I was a little bit scared by all the issues related to Java versions and Hard vs. Soft Float described in this section. Fortunately it ended up being much easier than I expected.
The Raspbian image that comes with NOOBS image of November 2nd, is hard float and comes with Oracle Java 7 already installed. With it, insallation of the controller in the Raspberry Pi has been as easy as in the Mac. So far I haven't stressed it too much, but it's running smoothly and reliably.
Dec 12, 2013
Will this same process work on the beaglebone?
Haven't tested but it should be fairly similar as far as I understand.
Would you be interested in trying and documenting differences?
Sure. I'm a bit of a novice when it comes to Linux and my Beaglebone hasn't even arrived yet but I'll see what I can do when the thing arrives in the next couple days. I'm super excited.
Thanks for the quick reply. I'll probably have more questions once I get started.
Jan 02, 2014
I'm trying to use the RP with OR and I have a problem with the webconsole. It is not working with chromium, midori, iceweasel, konqueror, ... The buttons for "Search", "Add" and "Settings" are displayed, but it is not possible to select them.
The only way to select the controller is the access from another PC from the same network. However I want to use a display from chalkboard together with the RP.
I tried java 6, 7 and 8 but it is no difference. The server is always starting (Upload and Sync is possible), but I can not select the controller in the webconsole. With Windows and Firefox it is working.
Have somebody a hint for me? Thanks!
Jan 03, 2014
I assume you are running the browsers on the RPi as well? If you are then it sounds like the useragent is making the webconsole assume it is a mobile device and so it starts automatically in fullscreen mode with no sliding toolbar on the left hand side of the screen. In mobile mode the webconsole expects touch events not click events.
Unfortunately some browsers report touch and click events so the decision was made to only listen for one or the other; I will look to see if there is a reliable way to determine what is supported.
Can you post the useragent strings that the browsers are reporting by visiting and copying the top part: -
Jan 04, 2014
Yes, the browsers are running on the RP as well as the server. I think you are right with the mobile device, because of the fullscreen mode and the missing toolbar. I have connected a touch display from chalkboard, but neither the touch nor the mouse is working correctly, together or alone. If I connect the system to another screen without touch it is also not working.
Here you get the useragent strings:
Mozilla/5.0 (X11; Linux armv6l; rv:17.0) Gecko/20131017 Firefox/17.0 Iceweasel/17.0.9
Mozilla/5.0 (X11; Linux armv6l) AppleWebKit/537.4 (KHTML, like Gecko) Chrome/22.0.1229.94 Safari/537.4
Mozilla/5.0 (X11; Linux armv6l; rv:17.0) Gecko/20131017 Firefox/17.0 Iceweasel/17.0.9
Thanks a lot & Have a nice weekend!
Yes the "armv" string will be identifying the browsers as mobile; I suspect that none of those browsers support touch events irrespective of what hardware you have connected, I've made a slight change to the webconsole which will hopefully not mark your browser as being a mobile device, you can download this at: -
Delete existing webconsole.war and webconsole directory from webapps dir then insert new one and restart tomcat.
Jan 05, 2014
Now it is working in the normal mode, both with mouse and touch.
Thank you for your great support.
Feb 22, 2014
Install Native Libraries for ARM
pi@raspberrypi / $ cp /usr/lib/jni/librxtxSerial.so [path to OpenRemote Controller]/\OpenRemote-Controller-2.0.2/webapps/controller/WEB-INF/lib/native/librxtxSerial.so
When I type in the above command, I get this...
cp: target `Controller]/OpenRemote-Controller-2.0.2/webapps/controller/WEB-INF/lib/native/librxtxSerial.so' is not a directory
What am I missing?
Your copy target still contains the string '[path to OpenRemote Controller]' which is still visible in the error message:
cp: target `Controller]/OpenRemote-Controller-2.0.1/...
You need to replace the [path to OpenRemote Controller] with an actual path where you have installed your OpenRemote files, for example:
cp /usr/lib/jni/librxtxSerial.so /home/pi/Desktop/OpenRemote-Controller-2.0.2/webapps/controller/WEB-INF/lib/native/librxtxSerial.so
Where /home/pi/Desktop is the directory where you unzipped the OR controller.
Thanks Juha, I knew it was something like that but since I forgot to unzip the .zip file, I didn't have a directory path to point to...obviously I'm new to this and learning.
I signed up for an account to download the openremote program, do I have to have a separate account for the designer?
Feb 23, 2014
Trying to get the Complete Service Script Example working, I am getting this error.
pi@raspberrypi /etc/init.d $ sudo update-rc.d orstartstop defaults
update-rc.d: using dependency based boot sequencing
insserv: warning: script 'mathkernel' missing LSB tags and overrides
Can you help me get this resolved?
Ok, added the LSB tags and the warning went away...
Now I just have to figure out how to get the functionality to stop and restart on my remote???
Apr 18, 2014
Hi I have just installed openremote on my new Raspberry Pi overclock to 800Mhz, I used java 1.8.0_20 and i don't use Rules.
The install was fine, and openremote is working ok, abit slow.
The sync to the beehive takes some minuts, and when I open the app on my Ipad, it takes about 10sec, it's not the best, but I hope it gets better in futere releases.
The problem is when the app is loaded it comes with an error: "Warning - Occured unknown error, satus code is 0 Using cached content."
What is that, and what do I do about it?
Jul 13, 2014
Couple of ideas as far as RPi performance:-
1. use the overclock option
2. dont load anything you dont need - especially networking/remote tools
Also dont know if anyone else has seen the 8080 error on RPi - I updated mine to 8688 - this is changed from Connector port="8080" to Connector port="8688" in server.xml
Sep 01, 2014
Oracle JDK 8 the easy way...
Nov 05, 2014
Hi, Debian Wheezy (Soft FloatI) isn't not avialable anymore. Do any updates with the new release Raspian Wheezy (Hard Float)...??? Thank, I'm having too many problems dealing with Raspian and JDK 8
May 10, 2015
An update of this page indeed would be appropriate! Maybe people can share working configurations (e.g. Java versions)?
Totally agreed on the need for update. Short version of the current state is that OR loads and runs well on the latest with very little effort. Whatever issues had been with Oracle Java 8 seem to be gone. And an RPi2 seems like a very nice platform. Next up, I'm setting it up as a full local server (beehive, designer, etc), so we'll see how that goes. A full article on that would be nice to have.
Apr 17, 2015
Perhaps worth adding: the latest version of Wheezy (as of Feb, 2015) is ready to add Java without any gymnastics. Just sudo apt-get install oracle-java7-jdk. It's not the beta; and it's version 8; but it seems to work great with OR on RPi2.
If you're going down this road, here's the basics I've documented to get rolling on a fresh SD after firing up Wheezy:
1. Expand the card
4. I also like to be able to "RDP" to the box for testing stuff, so
5. I downloaded OR from the browser inside the RPi and moved it from Download folder to Desktop and tested it. All worked great from command-line (./openremote.sh run) but, of course, my devices weren't set up yet. Stopped it (Ctrl-C)
6. Set up Russound and ISY by editing ~/Desktop/openremote/webapps/controller/WEB-INF/classes/config.properties then restarted. Devices work.
7. Moved the folder into /opt/ (seems like a better place than the Pi Desktop)
8. set up the script as above in last section and rebooted. All works.
EDIT: forgot about setting a static IP address on the Pi. I'd put in a command list, but a couple of them might not make sense (/Why/ does it manually want the network and broadcast? Those are implied by address and mask.) I just used this link:
May 31, 2016
Thanks for this instruction. I like to give you back my positive experience.
Two weeks ago I have installed a new Debian on a raspberry pi2. This version already has Java: version "1.8.0_65". I didn't install another java and didn't set a parameter.
First I installed tightvncserver and samba to control de RPi from my Windows pc.
After that I copied the OpenRemote files to /home/pi/ORC.
I started OpenRemote using PuTTY with: "./ORC/bin/openremote.sh run". Immediately, I could find the openremote server on an android tablet with the Openremote app.
Because I started the script in PuTTY directly, the script stopped when PuTTY did exit. It took me some time to realize that. Using the command "sh openremotecontroller.sh start" solved the problem.
My openremote server connects to a KNX router. It runs two weeks now without an interruption. With another open source application the connection was frequently lost and I had to restart the server.
At this moment I have set up just one light. I am awaiting the book "How to smart home". When I receive the book I will continue.
This documentation is obsolete with the new v2.5.0 as directs you to create a 2.5.0 designer accoutn and download legacy 2.1.0 version..
Be careful when reading.