From c9529ed52b339755d669811595b6369e61eb103e Mon Sep 17 00:00:00 2001 From: John Ogle Date: Sat, 6 Dec 2025 14:49:03 -0800 Subject: [PATCH] Clarify that Adaptive Lighting integration is optional Update blueprint and README to make it clear that the Adaptive Lighting switch can be left empty, in which case lights will use simple on/off control. Add clarifications to input descriptions and enhance documentation with better examples. --- README.md | 16 ++++++++++------ occupancy_controlled_lights.yaml | 6 +++--- 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index bf1c33b..6c65445 100644 --- a/README.md +++ b/README.md @@ -36,7 +36,7 @@ https://git.johnogle.info/johno/home-assistant-blueprints/raw/branch/main/occupa |-------|-------------|---------| | **Occupancy Sensor** | Binary sensor that detects occupancy/presence | Required | | **Lights** | Light entities to control | Required | -| **Adaptive Lighting Switch** | Adaptive lighting switch for this room | Optional | +| **Adaptive Lighting Switch** | Adaptive lighting switch for this room. Leave empty to use simple on/off without adaptive lighting. | Optional | | **Turn On Transition** | Transition time when turning lights on (seconds) | 5 | | **Turn Off Transition** | Transition time when turning lights off (seconds) | 15 | | **Adapt Brightness** | Whether to adapt brightness with adaptive lighting | Yes | @@ -53,14 +53,18 @@ https://git.johnogle.info/johno/home-assistant-blueprints/raw/branch/main/occupa - **Turn On Transition**: 3 seconds - **Turn Off Transition**: 10 seconds -#### Example 2: Multiple Lights without Adaptive Lighting +#### Example 2: Simple On/Off Mode (without Adaptive Lighting) + +**Use Case**: Control lights with simple on/off without adaptive lighting adjustments. **Configuration**: - **Occupancy Sensor**: `binary_sensor.kitchen_motion` - **Lights**: `light.kitchen_ceiling`, `light.kitchen_under_cabinet` -- **Adaptive Lighting Switch**: Leave empty +- **Adaptive Lighting Switch**: Leave empty (default) - **Turn On Transition**: 1 second - **Turn Off Transition**: 5 seconds +- **Adapt Brightness**: Not applicable (no adaptive lighting switch) +- **Adapt Color**: Not applicable (no adaptive lighting switch) #### Example 3: Bedroom with Gentle Transitions @@ -74,9 +78,9 @@ https://git.johnogle.info/johno/home-assistant-blueprints/raw/branch/main/occupa ### How It Works 1. **Occupancy Detected**: When the sensor state changes to "on" (occupied): - - If adaptive lighting is configured, applies adaptive lighting settings - - If no adaptive lighting, turns lights on with specified transition - + - If an Adaptive Lighting switch is configured AND enabled, applies adaptive lighting settings + - If the Adaptive Lighting switch is left empty OR is disabled, turns lights on with simple on/off using the specified transition time + 2. **No Occupancy**: When the sensor state changes to "off" (not occupied): - Turns off all specified lights with configured transition time diff --git a/occupancy_controlled_lights.yaml b/occupancy_controlled_lights.yaml index eee8a07..0627164 100644 --- a/occupancy_controlled_lights.yaml +++ b/occupancy_controlled_lights.yaml @@ -20,7 +20,7 @@ blueprint: domain: light adaptive_lighting_switch: name: Adaptive Lighting Switch - description: Adaptive lighting switch entity for this room + description: (Optional) Adaptive lighting switch entity for this room. If left empty, lights will turn on/off directly without adaptive lighting adjustments. default: {} selector: entity: @@ -48,13 +48,13 @@ blueprint: unit_of_measurement: seconds adapt_brightness: name: Adapt Brightness - description: Whether to adapt brightness when turning on lights + description: Whether to adapt brightness when turning on lights (only applies when an Adaptive Lighting switch is configured) default: true selector: boolean: adapt_color: name: Adapt Color - description: Whether to adapt color when turning on lights + description: Whether to adapt color when turning on lights (only applies when an Adaptive Lighting switch is configured) default: true selector: boolean: