/deconz-rest-plugin

REST API Plugin to control ZigBee lights like Philips Hue and dresden elektroniks wireless electronic ballasts

Primary LanguageC++BSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

Introduction

The deCONZ REST plugin provides a REST-API to access Zigbee 3.0 (Z30), Zigbee Home Automation (ZHA) and Zigbee Light Link (ZLL) lights, switches and sensors from Xiaomi Aqara, IKEA TRÅDFRI, Philips Hue, innr, Samsung and many more vendors.

A list of supported Zigbee devices can be found on the Supported Devices page.

To communicate with Zigbee devices the RaspBee / RaspBee II Zigbee shield for Raspberry Pi, or a ConBee / ConBee II USB dongle is required.

To learn more about the REST-API itself please visit the REST-API Documentation page.

Phoscon App

The Phoscon App is a browser based web application and supports lights, sensors and switches. For more information and screenshots visit the Phoscon App Documentation.

Installation

Supported platforms
  • Raspbian Jessie, Stretch and Buster
  • Ubuntu Xenial and Bionic (AMD64)
  • Windows 7 and 10

Install deCONZ

You find the instructions for your platform and device on the Phoscon website:

Important: If you're updating from a previous version always make sure to create an backup in the Phoscon App and read the changelog first.

https://github.com/dresden-elektronik/deconz-rest-plugin/releases

Install deCONZ development package (optional, Linux only)

Important: The deCONZ package already contains the REST-API plugin, the development package is only needed if you wan't to modify the plugin or try the latest commits from master branch.

sudo apt install deconz-dev

Get and compile the plugin

  1. Checkout the repository

     git clone https://github.com/dresden-elektronik/deconz-rest-plugin.git
    
  2. Checkout the latest version

     cd deconz-rest-plugin
     git checkout -b mybranch HEAD
    
  3. Compile the plugin

     qmake && make -j2
    

Note On Raspberry Pi 1 use qmake && make

  1. Replace original plugin

     sudo cp ../libde_rest_plugin.so /usr/share/deCONZ/plugins
    

Precompiled deCONZ packages for manual installation

The deCONZ application packages are available for the following platforms and contain the main application and the pre-compiled REST-API plugin.

To manually install a Linux .deb package enter these commands:

sudo dpkg -i <package name>.deb
sudo apt-get install -f

Headless support for Linux

The deCONZ package contains a systemd script, which allows deCONZ to run without a X11 server.

  1. Enable the service at boot time
$ sudo systemctl enable deconz
  1. Disable deCONZ GUI autostart service

The dresden elektronik sd-card image and default installation method autostarts deCONZ GUI. The following commands disable the deCONZ GUI service:

$ sudo systemctl disable deconz-gui
$ sudo systemctl stop deconz-gui

Hardware requirements

  • Raspberry Pi 1, 2B, 3B, 3B+ or 4B
  • RaspBee Zigbee shield for Raspberry Pi
  • RaspBee II Zigbee shield for Raspberry Pi
  • ConBee USB dongle for Raspberry Pi and PC
  • ConBee II USB dongle for Raspberry Pi and PC

3rd party libraries

The following libraries are used by the plugin:

License

The plugin is available as open source and licensed under the BSD (3-Clause) license.