OpenHAB

Description
''The open Home Automation Bus (openHAB) project aims at providing a universal integration platform for all things around home automation. It is a pure Java solution, fully based on OSGi. The Equinox OSGi runtime and Jetty as a web server build the core foundation of the runtime.''

''It is designed to be absolutely vendor-neutral as well as hardware/protocol-agnostic. openHAB brings together different bus systems, hardware devices and interface protocols by dedicated bindings. These bindings send and receive commands and status updates on the openHAB event bus. This concept allows designing user interfaces with a unique look&feel, but with the possibility to operate devices based on a big number of different technologies. Besides the user interfaces, it also brings the power of automation logics across different system boundaries.''

OpenHAB is the first contribution of the brand-new Eclipse Smart Home project.

Liens

 * Website: https://code.google.com/p/openhab/
 * Online Demo: http://demo.openhab.org:8080/greent/
 * Code Metrics : (130 Kloc) http://www.ohloh.net/p/openhab

Projets @ AIR

 * Smart Doll House

Configuration
La structure est la suivante :

./webapps/images --> icones des items et des groupes (l'icone type-val.png sera affiché si l'item a la value val) ./configurations/items/demo.items --> liste de groupes et des items ./configurations/items/demo.sitemap --> structure du panneau de navigation (classicUI, greentUI) ./configurations/items/demo.rules --> regles ECA ./configurations/persistence/demo.* --> regles de persistence

Pour GreenT ./configurations/items/greent.items ./webapps/greent.war

Installation et Démarrage
Téléchargez les .zip de la dernière distribution d'OpenHAB (1.3.1 dans l'exemple) dans un répertoire OpenHAB https://code.google.com/p/openhab/downloads/list

OPENHAB_VERSION=1.3.1 cd ./openhab-runtime-$OPENHAB_VERSION

cp -R ../openhab-demo-configuration-$OPENHAB_VERSION/addons. cp -R ../openhab-demo-configuration-$OPENHAB_VERSION/configurations.

chmod 775 start.sh

./start.sh

Depuis la console Equinox Gogo d'OpenHAB help lb

Ouvrir un navigateur sur http://localhost:8080/openhab.app?sitemap=demo

Depuis la console VisualVM jvisualvm

Pour aller plus loin, vous pouvez ajouter les addons (qui sont des bundles OSGi) de la distribution openhab-addons-$OPENHAB_VERSION dans ./openhab-runtime-$OPENHAB_VERSION/addons

La documentation de ces addons est sur
 * https://code.google.com/p/openhab/wiki/Bindings
 * https://code.google.com/p/openhab/wiki/Persistence

ls ../openhab-addons-$OPENHAB_VERSION/

org.openhab.action.mail-1.3.1.jar org.openhab.action.nma-1.3.1.jar org.openhab.action.prowl-1.3.1.jar org.openhab.action.twitter-1.3.1.jar org.openhab.action.xbmc-1.3.1.jar org.openhab.action.xmpp-1.3.1.jar org.openhab.binding.asterisk-1.3.1.jar org.openhab.binding.bluetooth-1.3.1.jar org.openhab.binding.comfoair-1.3.1.jar org.openhab.binding.configadmin-1.3.1.jar org.openhab.binding.cups-1.3.1.jar org.openhab.binding.digitalstrom-1.3.1.jar org.openhab.binding.dmx-1.3.1.jar org.openhab.binding.dmx.lib485-1.3.1.jar org.openhab.binding.dmx.ola-1.3.1.jar org.openhab.binding.enocean-1.3.1.jar org.openhab.binding.epsonprojector-1.3.1.jar org.openhab.binding.exec-1.3.1.jar org.openhab.binding.fritzaha-1.3.1.jar org.openhab.binding.fritzbox-1.3.1.jar org.openhab.binding.homematic-1.3.1.jar org.openhab.binding.http-1.3.1.jar org.openhab.binding.hue-1.3.1.jar org.openhab.binding.ihc-1.3.1.jar org.openhab.binding.knx-1.3.1.jar org.openhab.binding.koubachi-1.3.1.jar org.openhab.binding.milight-1.3.1.jar org.openhab.binding.modbus-1.3.1.jar org.openhab.binding.mpd-1.3.1.jar org.openhab.binding.mqtt-1.3.1.jar org.openhab.binding.networkhealth-1.3.1.jar org.openhab.binding.nibeheatpump-1.3.1.jar org.openhab.binding.nikobus-1.3.1.jar org.openhab.binding.novelanheatpump-1.3.1.jar org.openhab.binding.ntp-1.3.1.jar org.openhab.binding.onewire-1.3.1.jar org.openhab.binding.onkyo-1.3.1.jar org.openhab.binding.opensprinkler-1.3.1.jar org.openhab.binding.owserver-1.3.1.jar org.openhab.binding.piface-1.3.1.jar org.openhab.binding.plcbus-1.3.1.jar org.openhab.binding.plugwise-1.3.1.jar org.openhab.binding.pulseaudio-1.3.1.jar org.openhab.binding.rfxcom-1.3.1.jar org.openhab.binding.samsungtv-1.3.1.jar org.openhab.binding.serial-1.3.1.jar org.openhab.binding.snmp-1.3.1.jar org.openhab.binding.sonos-1.3.1.jar org.openhab.binding.squeezebox-1.3.1.jar org.openhab.binding.systeminfo-1.3.1.jar org.openhab.binding.tcp-1.3.1.jar org.openhab.binding.tinkerforge-1.3.1.jar org.openhab.binding.urtsi-1.3.1.jar org.openhab.binding.vdr-1.3.1.jar org.openhab.binding.wol-1.3.1.jar org.openhab.binding.zwave-1.3.1.jar org.openhab.io.dropbox-1.3.1.jar org.openhab.io.multimedia.tts.freetts-1.3.1.jar org.openhab.io.multimedia.tts.marytts-1.3.1.jar org.openhab.persistence.cosm-1.3.1.jar org.openhab.persistence.db4o-1.3.1.jar org.openhab.persistence.exec-1.3.1.jar org.openhab.persistence.gcal-1.3.1.jar org.openhab.persistence.logging-1.3.1.jar org.openhab.persistence.mqtt-1.3.1.jar org.openhab.persistence.rrd4j-1.3.1.jar org.openhab.persistence.sense-1.3.1.jar org.openhab.persistence.sql-1.3.1.jar org.openhab.persistence.sql.mysql-1.3.1.jar

Distribution Felix
Téléchargez et copiez dans le répertoire ./addons les bundles suivants de la distribution de Apache Felix (http://felix.apache.org/downloads.cgi)
 * La web console d'administration OSGi et ses plugins
 * Remote Shell
 * le modèle de composants iPOJO
 * UPnP Base Driver

Ajoutez les propriétés de configuration dans le fichier ./start.sh OPTIONS="$OPTIONS -Djava.awt.headless=false"
 * 1) For Apache Felix UPnP Tester

OPTIONS="$OPTIONS -Dobr.repository.url=http://felix.apache.org/obr/releases.xml"
 * 1) For Apache Felix Bundle Repository

Distribution Karaf
Téléchargez la dernière distribution de la plateforme Apache Karaf. Copiez les bundles de Karaf suivants dans ./addons