Skip to content
REST API Plugin to control ZigBee lights like Philips Hue and dresden elektroniks wireless electronic ballasts
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Change wontfix label to stale Nov 23, 2018
img
linux/deCONZ Make sure after installing homebridge homebridge variable is set to m… Mar 6, 2019
.gitignore Ignore .qmake.stash, created under RaspBian Stretch. Oct 8, 2017
LICENSE.txt Fix license file to BSD Clause-3 license Jul 28, 2017
README.md README.md: Use version 2.05.60 Mar 10, 2019
authorisation.cpp Fix Hue Essentials supports full api mode Jan 9, 2019
bindings.cpp Let IKEA lights report 'sw build id' every 30 minutes Mar 10, 2019
bindings.h Attribute reporting for _Instantaneous Demand_. Mar 16, 2018
change_channel.cpp Support restoring previous Zigbee configurations Feb 10, 2019
colorspace.cpp Fix various app crashed related to resource system May 18, 2017
colorspace.h Added Rgb2xy function to colorspace class Feb 22, 2017
connectivity.cpp Initial commit of all V2_03 files Mar 19, 2016
connectivity.h Initial commit of all V2_03 files Mar 19, 2016
database.cpp Expose lumi.vibration.aq1 as ZHAVibration Mar 9, 2019
daylight.cpp Support Daylight sensor with additional state.status Mar 10, 2018
daylight.h Support Daylight sensor with additional state.status Mar 10, 2018
de_otau.cpp
de_web.pro
de_web_plugin.cpp Whitelist newer model Heiman gas sensor Mar 14, 2019
de_web_plugin.h Fix backup save/restore issues Jan 1, 2019
de_web_plugin_private.h Added encrypted wifi variables Feb 26, 2019
de_web_widget.cpp
de_web_widget.h Cleanup REST API plugin widget and display install code Sep 10, 2017
de_web_widget.ui
description_in.xml Echo requires Philips manufacturer in description.xml Nov 2, 2018
device_setup.cpp Add ubisys Device Setup Cluster Nov 12, 2018
discovery.cpp Ensure no-update state on non arm, todo enable for Ubuntu Jan 2, 2019
event.cpp Support id() method for RGroup resources used in rules Oct 22, 2017
event.h Refactor rules handling based on events (experimental) Sep 2, 2017
event_queue.cpp Refactor rules handling based on events (experimental) Sep 2, 2017
firmware_update.cpp Fix fwneedupdate flag not refreshed (etag) Feb 10, 2019
gateway.cpp Fix some clang warnings and code cosmetic Jan 3, 2019
gateway.h Cascade On/Off for IKEA Trådfri remote Jan 4, 2018
gateway_scanner.cpp Refactor gateway scanner, use UPnP and /api/config results Nov 20, 2017
gateway_scanner.h
general.xml Update general.xml Mar 9, 2019
group.cpp
group.h
group_info.cpp Improve scene handling, use unicast add scene commands instead of sto… Sep 18, 2016
group_info.h Improve scene handling, use unicast add scene commands instead of sto… Sep 18, 2016
gw_uuid.cpp Initial commit of all V2_03 files Mar 19, 2016
ias_zone.cpp Improve OSRAM/CentraLite Motion Sensor-A Feb 10, 2019
ikea-ota-download.py Add IKEA OTA download script Aug 11, 2017
json.cpp
json.h add plugin content and update LICENSE Jul 23, 2013
light_node.cpp Don't expose state.colormode for GLEDOPTO GL-C-009 Feb 16, 2019
light_node.h Refactor light color code (1) Jan 16, 2019
permitJoin.cpp Improve joining and removing lights Jan 2, 2019
poll_manager.cpp Poll manager: raise delay between two poll seqences from 50ms to 500ms Feb 18, 2019
poll_manager.h Fix poll timer non-stop idle loop, and gettings stuck Feb 4, 2019
reset_device.cpp Fix some clang warnings and code cosmetic Jan 3, 2019
resource.cpp REST resources for lumi.vibration.aq1 Mar 9, 2019
resource.h REST resources for lumi.vibration.aq1 Mar 9, 2019
resourcelinks.cpp
resourcelinks.h Add /resourcelinks REST API Jul 18, 2017
rest_capabilities.cpp
rest_configuration.cpp Renamed some variable values Feb 27, 2019
rest_devices.cpp Add REST-API /devices endpoint (experimental, RFC) Jan 6, 2019
rest_devices.h Add REST-API /devices endpoint (experimental, RFC) Jan 6, 2019
rest_gateways.cpp Bring back guards for api endpoints Dec 12, 2018
rest_groups.cpp Ensure white space is removed from resource names on creation and update Feb 5, 2019
rest_info.cpp Add timezones to info and capabilities api, add empty scenes node, an… Dec 3, 2018
rest_lights.cpp
rest_node_base.cpp RestNodeBase remove unused m_available Oct 25, 2018
rest_node_base.h Exec bindings and reporting configuration only when needed Mar 10, 2019
rest_resourcelinks.cpp Prevent resourcelink 'description' being null, instead empty string "" Jan 6, 2019
rest_rules.cpp Support /rules as action address in a rule Jan 27, 2019
rest_scenes.cpp Extend strict api mode to: normal, strict, amazon echo, philips hue app Dec 16, 2018
rest_schedules.cpp Use QLatin1String in schedules API check Jan 15, 2019
rest_sensors.cpp Expose lumi.vibration.aq1 as ZHAVibration Mar 9, 2019
rest_touchlink.cpp Extend strict api mode to: normal, strict, amazon echo, philips hue app Dec 16, 2018
rest_userparameter.cpp
rule.cpp Fix operator 'in/not in' default weekdays Jan 20, 2019
rule.h
scene.cpp Fix in the store scene API (2) Aug 29, 2017
scene.h Fix in the store scene API (2) Aug 29, 2017
sensor.cpp Xiaomi round button (WXKG01LM) support hold (1001) and long release (… Jan 15, 2019
sensor.h Add RAttrManufacturerName as resource items Jan 6, 2019
thermostat.cpp Update thermostat.cpp Mar 8, 2019
time.cpp Fix build for older Qt version (3) Dec 9, 2018
upnp.cpp urn:schemas bugfix, use same socket for outgoing messages, and refactor Nov 2, 2018
websocket_server.cpp websocket_server.cpp: fix clang warnings, lower debug level Aug 22, 2018
websocket_server.h Investigate in stucked websocket buffer transmission (wip) Jun 11, 2018
window_covering.cpp
zcl_tasks.cpp

README.md

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 like the dresden elektronik Wireless Light Control system, Xiaomi Aqara, IKEA TRÅDFRI and Philips Hue.

As hardware the RaspBee Zigbee Shield for Raspberry Pi or a ConBee USB-dongle is used to directly communicate with the Zigbee devices.

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

Phoscon App

The Phoscon App is the successor of the 2016 WebApp (Wireless Light Control), it's browser based and supports more sensors and switches. For more information and screenshots check out:

Precompiled deCONZ packages

The deCONZ application is available for the following platforms and contains the main application and the pre-compiled REST-API plugin.

Installation Raspberry Pi

Supported platforms
  • Raspbian Jessie
  • Raspbian Stretch
Supported devices

A uncomplete list of supported devices can be found here:

https://github.com/dresden-elektronik/deconz-rest-plugin/wiki/Supported-Devices

Install deCONZ

Important If you're updateing 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

  1. Download deCONZ package

     wget http://www.dresden-elektronik.de/rpi/deconz/beta/deconz-2.05.60-qt5.deb
    
  2. Install deCONZ package

     sudo dpkg -i deconz-2.05.60-qt5.deb
    

Important this step might print some errors that's ok and will be fixed in the next step.

  1. Install missing dependencies

     sudo apt update
     sudo apt install -f
    
Install deCONZ development package (optional)

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.

  1. Download deCONZ development package

     wget http://www.dresden-elektronik.de/rpi/deconz-dev/deconz-dev-2.05.60.deb
    
  2. Install deCONZ development package

     sudo dpkg -i deconz-dev-2.05.60.deb
    
  3. Install missing dependencies

     sudo apt update
     sudo apt install -f
    
Get and compile the plugin
  1. Checkout the repository

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

     cd deconz-rest-plugin
     git checkout -b mybranch V2_05_60
    
  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
    

Headless support

The beta version 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

The dresden elektronik Raspbian sd-card image autostarts deCONZ GUI.

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

On older versions of deCONZ this can be done by removing the X11 Autostart file.

$ rm -f /home/pi/.config/autostart/deCONZ.desktop

Software requirements

  • Raspbian Jessie or Raspbian Stretch with Qt5

Important The serial port must be configured as follows to allow communication with the RaspBee.

$ sudo raspi-config

() Interfacting Options > Serial

    * Would you like a login shell accessible over serial?
      > No
    * Would you like the serial port hardware to be enabled?
      > Yes

After changing the settings reboot the Raspberry Pi.

Hardware requirements

  • Raspberry Pi 1, 2 or 3
  • RaspBee Zigbee Shield for Raspberry Pi
  • ConBee 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.

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.