Domoleaf est un logiciel libre de domotique. Il s’installe sur un ordinateur utilisé comme serveur domotique.
Il est composé de plusieurs modules :
- Une Interface Web
- Une API Json
- Un Daemon de contrôle
- Plusieurs daemons liés chacun à un protocole
Il est possible de lier plusieurs boitiers domotique afin de contrôler une installation plus grande ou comportant plusieurs protocoles.
Prérequis
Matériel
Le logiciel a été testé sur architecture X64 et armhf. Il a été testé sur les systèmes suivants :
- BeagleBone Black
- i386/amd64
- Raspberry Pi B/B+/2
Pour le serveur :
- 500 MHz
- 128mo de mémoire
- 1go de stockage
- Un port Ethernet
Interfaces domotique:
- KNX : IP/USB/Série
- EnOcean : USB/Série
Système
Le logiciel a été développé pour les systèmes basés sur Debian GNU/Linux.
Systèmes supportés :
- Debian 7 Wheezy Linux
- Debian 8 Jessie Linux
- Ubuntu 12.04 Precise
- Ubuntu 14.04 Trusty
- Ubuntu 15.10 Wily
Systèmes non supportés :
- Debian 8 Jessie GNU Hurd
- Debian 8 Jessie KFreeBSD
Logiciel
Pré requis logiciels
Panel web
- Nginx
- Mariadb ou MySQL
- PHP >= 5.3
- Librairie PHP : apc, curl et gd
- Gettext
Apache n’est pas officiellement supporté. Il suffit juste d’adapter la réécriture d’URL. Le panel Web est développé avec PDO mais les autres scripts ne supportent que Mariadb/MySQL.
Daemon
- Python >= 3.3
- Librairies python : crypto, mysql, pyasn1, pycurl, rsa et scapy
- Cron
Installation
Création des paquets
Les paquets créés peuvent être installés sur tous les systèmes ayant pour base Debian.
Au préalable les paquets de développement de KNX (knxd-dev et knxd-tools) doivent être installés (https://github.com/knxd/knxd).
On clone le dépôt
git clone https://github.com/V-Paranoiaque/Domoleaf.git cd Domoleaf
Installation des dépendances et création des paquets
make
Pour Ubuntu 12.04 et les anciens systèmes.
make ubuntu1204
Installation des paquets
On commence par installer le paquet « slave ».
dpkg -i domoslave_*.deb apt-get -f install
Puis le paquet « master ».
dpkg -i domomaster_*.deb apt-get -f install
Redémarrez, l’interface d’administration sera alors accessible depuis l’IP de votre serveur.