Skip to content

Автоматическое изменение яркости экрана для проекта ESP32 Ready4Sky (R4S) Gateway for Redmond+ devices

Notifications You must be signed in to change notification settings

artt652/Circadian-Lighting-for-ESP32-R4S-gate

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 

Repository files navigation

Circadian-Lighting-for-ESP32-R4S-gate

Яркость экрана которая комфортная для глаз днём, в большинстве случаев слишком высокая для вечера и ночи. Сначала хотел сделать автоматизацию на изменение яркости по времени, или привязать автоматизацию к заходу / восхода солнца, а потом вспомнил что есть шикарная готовая интеграция Circadian Lighting, которая это все делает сама в автоматическом режиме.

Однако оказалось что яркость шлюза регулируется в домене number, т.к на текущий момент это единственная возможность передать и принять число по mqtt, но с которым эта интеграция (пока?) не работает.

Решение оказалось простым - использовать стандартный компонент ХА - Template Light. Для этого в configuration.yaml нужно прописать следующий код, и в тексте r4s5_gate заменить "5" на номер своего шлюза:

light:
  - platform: template
    lights:
      r4sxx_gate_screen:
        friendly_name: "Подсветка экрана"
        availability_template: "{{states('sensor.r4s5_gate_rssi') | int}}"
        turn_off:
          service: number.set_value
          data:
            value: '0'
            entity_id: number.r4s5_gate_screen
        turn_on:
          service: number.set_value
          data:
            value: '10' # начальная яркостьэкрана при включении (0-100)
            entity_id: number.r4s5_gate_screen
        set_level:
          service: number.set_value
          data:
            value: "{{ brightness }}"
            entity_id: number.r4s5_gate_screen

и добавить в конфигурацию запись для интеграции Circadian Lighting:

switch:
  - platform: circadian_lighting
    max_brightness: 20 # (1-100) значение максимальной яркости
    name: Автояркость экрана
    lights_brightness:
       - light.r4sxx_gate_screen

кроме того, можно сюда же ещё добавить и выключатель для перезагрузки ESP32:

  - platform: template
    switches:
      r4sxx_gate_restart: # В явном виде кнопки нет. Но возможность рестарта по мктт есть. 
                          # Для этого в топик screen нужно записать restart, reset или reboot.
        friendly_name: Перезагрузка ESP32
        value_template: "{{ is_state('sensor.r4s5_gate_rssi', '0') }}" # после перезагрузки шлюза выключатель возвращается в "off"
        availability_template: "{{states('sensor.r4s5_gate_rssi') | int}}" # возвращает статус "unavaliable" если нет сигнала rssi
        turn_on:
          service: mqtt.publish
          data:
            topic: r4s5/screen
            payload: restart
        turn_off:

После перезагрузки ХА появятся 3 новых объекта:

  1. Новый источник света, light.r4sxx_gate_screen, это и есть подсветка шлюза, с регулировкой яркости;
  2. Выключатель адаптивной яркости, switch.circadian_lighting_avtoiarkost_ekrana, после его включения яркость экрана начинает подстравивается под время суток автоматически.
  3. Выключатель для перезагрузки ESP32 switch.r4sxx_gate_restart.

Также можно настроить:

Автообновляемый прогноз погоды на экране

Обсуждение в телеграм

About

Автоматическое изменение яркости экрана для проекта ESP32 Ready4Sky (R4S) Gateway for Redmond+ devices

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published