daniel-2k / ioBroker.nanoleaf-lightpanels

ioBroker Adapter for nanoleaf Light Panels / Canvas
MIT License
11 stars 4 forks source link
canvas iobroker iobroker-adapter lines nanoleaf nanoleaf-aurora nanoleaf-canvas nanoleaf-controller nanoleaf-light-panels nanoleaf-lights nanoleaf-openapi shapes smarthome

Logo

ioBroker.nanoleaf-lightpanels Adapter

=================

NPM version Downloads Test and Release

NPM

This is an ioBroker adapter to control nanoleaf devices which support OpenAPI.

Suported models

Connection to the nanoleaf controller:

  1. In the adapter settings you have to set the IP address or hostname and port of the nanoleaf controller. You can use the search function to discover all nanoleaf devices, which are supported, in your network.
  2. The nanoleaf OpenAPI needs an authorization token to grant access to the OpenAPI. If you have already one, you can enter the token here and skip the next step.
  3. If you don't have an authorization token, you need to request it from the nanoleaf OpenAPI. To do this, set the nanoleaf controller into pairing mode by pressing and holding the power button at the device for 5-7 seconds until the LEDs flash alternately. Then click on the button 'Obtain authorization token' within 30 seconds (pairing mode stops after 30 seconds). The adapter must be running! If it was successful, the authorization token should be seen in the field 'Authentication token'. If an error occurred you get a pop up with the error message (details you can see in the log).
  4. Save the settings.
  5. Have fun!

Direct Status update via Server Sent Events (SSE)

Since Light Panels firmware version > 3.1.0 and Canvas firmware version > 1.1.0 Server Sent Events (SSE) can be used for direct status updates. For Canvas, Shapes and Element devices touch events are supported.

Please note: to detect if a nanoleaf device is still alive, SSDP notify messages were sent from nanoleaf device every 60 seconds. Please ensure that you can receive UDP multicast messages on port 1900 (check firewall and routing). Otherwise you will get error messages in the adapter that connection was lost. If you have problems with keep alive, please set the correct adapter interface in admin settings for the nanoleaf adapter. For searching devices please ensure you can receive traffic on UDP port 5000. I noticed that some nanoleaf devices suddenly stop sending the SSDP notify messages so connection will not be detected anymore. This is an issue with the nanoleaf device itself. People having this problem, can enable the usage of the keep alive polling mechanism instead of SSDP notify messages in the additional adapter settings.

The setting for the status update polling interval only affects devices with lower firmware versions, where polling is used for status updates or if the SSE function is disabled in the additional adapter settings.

Alexa

You can control the nanoleaf devices with Alexa via ioBroker (Cloud-Adapter). Power on/off, brightness, color and color temperature is supported. You have to set up the data points

in Cloud adapter under the same smartname.

ioBroker Visualization

The nanoleaf devices can be controlled in ioBroker Visualization by using basic widgets as "Radiobuttons on/off" or sliders for controlling the power sate, the brightness, hue, saturation and color temperature states.

For effects you can use the "Select ValueList" widget to use it as a drop down list and then map the effectsList state to the value and text property of the widget (type: "{nanoleaf-lightpanels.0.LightPanels.effectsList}" -> the curly braces are important!)

To control and visualize the color you have to install the color picker style Widgets. You can map the RGB ID to the colorRGB state or use the three HSV states as well.

You can use the nanoleaf vis demo project found in the /vis subfolder on github.

Changelog

1.5. (2024-04-21)

1.4.0 (2023-07-16)

1.3.1 (2021-12-05)

1.3.0 (2021-11-28)

1.2.1 (2021-06-20)

1.2.0 (2021-01-03)

1.1.1 (2020-12-27)

1.1.0 (2020-12-27)

1.0.6 (2020-09-14)

1.0.5 (2020-09-13)

1.0.4 (2020-09-06)

1.0.3 (2020-08-30)

1.0.2 (2020-07-06)

1.0.1 (2020-07-05)

1.0.0 (2020-06-18)

0.8.2 (2019-08-02)

0.8.1 (2019-01-31)

0.8.0 (2019-01-27)

0.7.0 (2019-01-20)

0.6.1 (2018-10-13)

0.6.0 (2018-09-02)

0.5.0 (2018-08-10)

0.4.1 (2018-07-13)

0.4.0 (2018-06-11)

0.3.0 (2018-05-12)

0.2.0 (2018-05-03)

0.1.0 (2018-04-23)

License

The MIT License (MIT) Copyright (c) 2023 daniel_2k daniel_2k@outlook.com (MIT) Copyright (c) 2021 daniel_2k daniel_2k@outlook.com