Автоматизация - Эффект рассвета в светильниках Yeelight Mijia Bedside lamp в Home Assistant

В приложении Yeelight для светильников Bedside lamp был режим пробуждения. В данном режиме задается расписание подъема утром, после чего светильник включается за 30 минут до подъема на минимальной яркости и минимальном значении цветовой температуры. Далее в течении 30 минут яркость и цветовая температура постепенно увеличиваются до, примерно, 90% яркости и 2500K - 3000K температуры цвета. Такой режим способствует более приятному пробуждению, нет неприятного ощущения при включении основного света в помещении, подъем становится более мягким и менее стрессовым для организма.

Mijia Bedside lamp это обновленная версия прикроватной лампы Yeelight Bedside lamp. В отличии от предшественника, светильник с логотипом Mijia подключается к сети и управляется по Wi-Fi, а также выступает как BLE шлюз для Bluetooth устройств производства компании Xiaomi. Внешне отличие в цвете нижней части светильника и нанесенном логотипе.
Подключение Mijia Bedside lamp к Home Assistant
Для подключения Mijia Bedside lamp к Home Assistant в приложении YeeLight на телефоне необходимо включить Управление по LAN
(он же Режим разработчика
). Если светильники не подключены в приложении, то их необходимо подключить! Управление по LAN включается в главном меню программы.

Начиная с версии 0.115 добавление в Home Assistant светильников YeeLight производится в меню Integrations
. Список поддерживаемых моделей можно посмотреть на сайте Home Assistant. Данная модель интегрируется как bslamp1
.


Создание эффекта рассвета
Сценарий эффекта выполним как скрипт, это удобно т.к. потом его можно использовать в разных автоматизациях и других сценариях. Сценарий рассчитан на 30 минут, каждые 3 минуты увеличиваем яркость на 9% и цветовую температуру на 100K. Уровень яркости устанавливается параметром brightness
, регулируется от 0 до 255. Последнее выставляемое значение яркости равняется 220, что будет соответствовать примерно 86%. Цветовая температура задается параметром kelvin
и находится в диапазоне 1700K - 6500K. Создаем скрипт Configuration -> Scripts -> +
или пишем непосредственно в файл scripts.yaml
.
sunrise_effect: alias: Sunrise Effect sequence: - service: light.turn_on entity_id: light.night_light data: brightness: 1 kelvin: 1700 - delay: 00:03:00 - service: light.turn_on entity_id: light.night_light data: brightness: 23 kelvin: 1800 - delay: 00:03:00 - service: light.turn_on entity_id: light.night_light data: brightness: 46 kelvin: 1900 - delay: 00:03:00 - service: light.turn_on entity_id: light.night_light data: brightness: 69 kelvin: 2000 - delay: 00:03:00 - service: light.turn_on entity_id: light.night_light data: brightness: 92 kelvin: 2100 - delay: 00:03:00 - service: light.turn_on entity_id: light.night_light data: brightness: 115 kelvin: 2200 - delay: 00:03:00 - service: light.turn_on entity_id: light.night_light data: brightness: 128 kelvin: 2300 - delay: 00:03:00 - service: light.turn_on entity_id: light.night_light data: brightness: 151 kelvin: 2400 - delay: 00:03:00 - service: light.turn_on entity_id: light.night_light data: brightness: 174 kelvin: 2500 - delay: 00:03:00 - service: light.turn_on entity_id: light.night_light data: brightness: 197 kelvin: 2600 - delay: 00:03:00 - service: light.turn_on entity_id: light.night_light data: brightness: 220 kelvin: 2700 mode: single icon: mdi:weather-sunset-up
light.night_light - Entuty ID светильника.
Автоматизация
Автоматизация должна срабатывать утром по будним дням, если подъем в 07:00 утра, то, с учетом 30 минут работы скрипта, автоматизация устанавливается на 06:25 - 06:30. Добавляем автоматизацию Configuration -> Automation -> + или в файл automations.yaml
.
- id: 'light_sunrise' alias: Light - Sunrise description: Освещение - Эффект рассвета trigger: - platform: time at: 06:30:00 condition: - condition: time weekday: - mon - tue - wed - thu - fri - condition: and conditions: - condition: sun before: sunrise action: - service: script.sunrise_effect data: {} mode: single
Автоматизация запускается каждый день в 06:30 утра, но запуск скрипта sunrise_effect
происходит только с понедельника по пятницу и пока не начался восход солнца за окном. В летний период, когда солнце встает раньше времени срабатывания триггера, автоматизация выполняться не будет.
Теперь о боли при создании автоматизации в мастере. В мастере автоматизации при создании условия time
нельзя указать день(дни) недели, чтобы их указать необходимо сохранить текущую автоматизацию, после чего открыть файл automations.yaml
, найти эту автоматизацию и добавить недостающие данные в условии как показано в примере выше.