From 2c4cefaa97d54f0e4bfb311810629137297d6f33 Mon Sep 17 00:00:00 2001 From: Pieter Viljoen Date: Thu, 15 Oct 2026 07:32:39 -0700 Subject: [PATCH 1/2] Gate the CeilSense Boot LED on the Vendor's Self-Test Switch The vendor made its startup LED self-test opt-in, gating both the phase 1 loading effect and the final turn-off on the Startup LED Self-Test switch. The template's stand-in for the unimported wifi.yaml phase 1 still turned the effect on unconditionally, so with the switch off nothing turned it off and the ring kept spinning after boot. Phase 1 now checks the same switch. Co-Authored-By: Claude Opus 5.5 --- templates/smarthome-ceilsense.yaml | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/templates/smarthome-ceilsense.yaml b/templates/smarthome-ceilsense.yaml index 69df155..b4945b4 100644 --- a/templates/smarthome-ceilsense.yaml +++ b/templates/smarthome-ceilsense.yaml @@ -41,14 +41,19 @@ esphome: project: !remove # Stands in for the unimported wifi.yaml boot phase 1, without its BLE actions. # The remaining self-test phases come from the sub-packages' own on_boot entries. + # The LED is gated on the same switch as base.yaml's final phase, the only step that turns it off. on_boot: - priority: 600 then: - lambda: 'id(startup_phase) = 1;' - - light.turn_on: - id: status_led - brightness: 80% - effect: "Circular Loading Effect" + - if: + condition: + switch.is_on: startup_led_test_enabled + then: + - light.turn_on: + id: status_led + brightness: 80% + effect: "Circular Loading Effect" - wait_until: condition: wifi.connected: From 5807786df7e741e41b79223bbcee684fd4159b7e Mon Sep 17 00:00:00 2001 From: Pieter Viljoen Date: Thu, 15 Oct 2026 07:34:25 -0700 Subject: [PATCH 2/2] Describe the CeilSense phase 1 LED gate as the vendor's own Co-Authored-By: Claude Opus 5.5 --- templates/smarthome-ceilsense.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/templates/smarthome-ceilsense.yaml b/templates/smarthome-ceilsense.yaml index b4945b4..abeafa7 100644 --- a/templates/smarthome-ceilsense.yaml +++ b/templates/smarthome-ceilsense.yaml @@ -41,7 +41,7 @@ esphome: project: !remove # Stands in for the unimported wifi.yaml boot phase 1, without its BLE actions. # The remaining self-test phases come from the sub-packages' own on_boot entries. - # The LED is gated on the same switch as base.yaml's final phase, the only step that turns it off. + # The LED turns on only while the Startup LED Self-Test switch is on, as in the vendor's own phase 1. on_boot: - priority: 600 then: