Monitoring your Hue Smart Home system #
The Hue Smart Home system provides a REST based API to access your Hue Smart Home devices. The Telegraf inputs.huebridge Plugin makes use of this API to monitor your Hue Smart Home devices.
See the plugin’s README.md about how to configure the plugin and start to collecting the status of your Hue Smart Home devices. The easiest and most efficient way is to access the bridge directly.
Determine the IP address or DNS name of your bridge and retrieve the bridge ID via the following command:
curl -k https://<bridge IP address or DNS name>/api/config/0
Afterwards press the bridge’s link button and issue the following command to create the necessary credentials (esp. the user name) to access the bridge:
curl -k -X POST http://<bridge IP address or DNS name>/api \
-H 'Content-Type: application/json' \
-d '{"devicetype":"huebridge-telegraf-plugin"}'
Now add the bridge to the plugin’s bridges
option using the following scheme:
address://<bridge ID>:<user name>@<bridge IP address or DNS name>/
After restarting Telegraf, the plugin should start to collect data. Check the Telegraf log to verify the plugin works as expected.
Note regarding ‘huebridge-telegraf-plugin’ #
This plugin was initially developed as an external plugin. I have reworked the plugin to eventually become a stock plugin of Telegraf from v1.34.0 on. During this process I also externalized the actual API access code to make it available for all kind of Hue API based tools. Further development will only happen on the stock plugin. The external plugin will no longer receive any updates.
Displaying the collected data using Grafana #
To visualize the data within Grafana you may use the Hue Smart Home dashboard.
This dashboard shows per configured Hue Bridge the status per type of device. Use the Bridge Id selector to switch between multiple bridges.
Lights #
Per room the status of the lights.
Motion #
Per room the status of the motion detector. Please note, there is currently no option to assign a room to a motion detector. Therefore the plugin provides
the room_assignments
to assign a room manually in such cases.
Light Levels #
Per room the monitored light levels.
Temperatures #
Per room the monitored temperatues.
Power Levels #
The power level for all battery powered devices.