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
Structure
./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
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
Compléments
XBMC
GStreamer
VLC
Equinox
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
# For Apache Felix UPnP Tester OPTIONS="$OPTIONS -Djava.awt.headless=false" # For Apache Felix Bundle Repository OPTIONS="$OPTIONS -Dobr.repository.url=http://felix.apache.org/obr/releases.xml"
Distribution Karaf
Téléchargez la dernière distribution de la plateforme Apache Karaf. Copiez les bundles de Karaf suivants dans ./addons ()