Releases: Pythm/ad-Lightwand
This fixes motionlights when using Adaptive Lighting
Lightwand Update: Zigbee2MQTT v2.0.0 Support, Enhanced Logic, and Adaptive Lighting Improvements
Release Notes for Lightwand
-
Compatibility Update:
FixedOutLuxMQTT_2
andRoomLuxMQTT
to ensure compatibility with Zigbee2MQTT v2.0.0. -
Improved Logic:
- Rewritten underlying logic for better configurability and ease of use when setting up lights.
- The default state for all automations and modes is now
none
, which activates if conditions are met. Theturn_on
state is no longer required to turn lights on.
-
Simplified Configuration:
- No need to define a state when:
- Using
offset
. - Turning lights on.
- Using
- Adjusting light modes on motion detection now dims the brightness if the new mode specifies a lower brightness level.
- No need to define a state when:
-
New Feature: Adaptive Motion Control:
- Added support for
noMotion: True
in modes to prevent motion events from activating motion lighting. This is particularly useful when integrating with Adaptive Lighting. - Adaptive light brightness comparisons now convert max brightness percentages to better align with 0-255 brightness scales.
- Added support for
Updates and bugfix on Adaptive Lighting
Added option to use 'noMotion: True' in mode to prevent motion to activate when that mode is active.
Improvements to the changes between mode and motion when using Adaptive Lighting to set brightness and color temp.
v.1.3.7 introduced a Breaking Change when configuring max and min setting to be configured with 'max_brightness_pct' and 'min_brightness_pct' to better differentiate that they are in percent.
A wiki page has been added with documentation for configuring the use of Adaptive Lighting with Lightwand.
https://github.com/Pythm/ad-Lightwand/wiki/Combining-Lightwand-with-Adaptive-Lighting-Custom-Component
Breaking change in configuration of Adaptive Lighting
What's Changed
- Adaptive lighting max and min setting is now 'max_brightness_pct' and 'min_brightness_pct' to better differentiate that they are in percent as suggested by @pointlevel
- Setting mode with higher brightness than motion should now work
Workaround for issue #16
A workaround for issue #16
Check issue for documentation on how to avoid brightness turning down when motion.
Define Adaptive Lighting for light instead of room
You can now define adaptive lighting for each light in addition to room, if you want to use multiple Adaptive lighting settings in your room.
# The swiches can be configured in the room
adaptive_switch: switch.adaptive_lighting_yourName
adaptive_sleep_mode: switch.adaptive_lighting_sleep_mode_yourName
# Or in lights
- lights:
- light.yourLight
adaptive_switch: switch.adaptive_lighting_yourName
adaptive_sleep_mode: switch.adaptive_lighting_sleep_mode_yourName
Fixed the bug where max and min brightness was not set in mode.
Updating max and min brightness to adaptive lighting from app
What's Changed
This is a continuation of the release to use Adaptive Lighting custom component to control brightness and color temp with support to set the 'max_brightness' and 'min_brightness' from automation, motion and modes.
If max_brightness is not defined with state adaptive the app will set values back to initial startup values as you configured in Adaptive Lighting. In addition to max_brightness you can define min_brightness. The app will not react to min_brightness if not max_brightness is also configured. Typical use case is to differentiate light when motion is detected, and also keep a dimmed down light in rooms that are not occupied, or dim further down with modes activated when TV/media player is turned on.
There is no need to configure Adaptive Lighting with 'detect_non_ha_changes' or 'take_over_control' when you set it up, if you only use Lightwand and Adaptive Lighting as automations for light. Lightwand will set manual control with the provided "Adaptive Lighting" switch that you'll need to define in your room with if a state or mode does not use Adaptive lighting.
adaptive_switch: switch.adaptive_lighting_yourName
The normal 'automations' is a list. To include max and min brightness it looks like this:
automations:
- state: adaptive
max_brightness: 60
min_brightness: 10
To use when motion configure with:
motionlights:
state: adaptive
max_brightness: 80
min_brightness: 30
To use in mode configure with:
light_modes:
- mode: your_mode
state: adaptive
max_brightness: 100
min_brightness: 1
Automatic setting of Adaptive Lighting's "Sleep Mode" is now also implemented. All you need to do is define the switch in room with:
adaptive_sleep_mode: switch.adaptive_lighting_sleep_mode_yourName
The switch will then be activated when night mode is called and keep light at a minimum as configured in Adaptive light, instead of turning it off. This applies to both 'night' and 'night_' + appName.
I do not use Adaptive Lighting actively so please report any unwanted behaviour.
Support for Adaptive Lighting Custom Component
What's Changed
This release starts the support to use Adaptive Lighting custom component to control your brightness and color control for automation, motion or mode with setting state to 'adaptive'.
There is no need to configure Adaptive Lighting with 'detect_non_ha_changes' when you set it up. Lightwand will set manual control in the provided switch "Adaptive Lighting" that you'll need to define in your room with:
adaptive_switch: switch.adaptive_lighting_yourName
The normal 'automations' is a list. Minimum configuration is with:
automations:
- state: adaptive
To use when motion configure with:
motionlights:
state: adaptive
Both 'automations' and 'motionlights' support list with times and states so you can configure Adaptive Lighting only to be active during specific times if needed to.
To use in mode configure with:
light_modes:
- mode: your_mode
state: adaptive
Automatic setting of Adaptive Lighting's "Sleep Mode" is not implemented. If you plan to use this make sure that your automation or mode is set to the adaptive state.
I do not use Adaptive Lighting actively so please report any unwanted behaviour.
Other bugfixes:
- Zigbee2mqtt version 2.0.0 does no longer support 'illuminance_lux' for illuminance values. This has been updated in the code to support 'illuminance'.
- Fixed bug where motion was already detected resulting in not turning brightness up when selecting new light mode with higher brightness.
Random delay to turn on off lights.
What's Changed
- Implemented
random_turn_on_delay
defined with an int to randomly turn on/off lights between 0 and given number in seconds, to prevent flooding of network traffic when to many lights is turned on/off at the same time. Closes #10 - Sets room lightmode to normal if called mode is 'normal_'+ self.name or 'reset_'+ self.name or 'reset' also when mode_turn_off_delay and mode_turn_on_delay for room is configured.
Just another bugfix
This fixes a bug when calling a new mode before the mode_turn_off_delay
or mode_turn_on_delay
had completed.