Прошиваем esp8266 прошивкой esp8266_milight_hub и управляем светодиодной лентой из HomeAssistant

MiLight — это множество лампочек и контроллеров для led лент.

esp8266_milight_hub — это прошивка для esp8266, которая превращает есп в milight хаб и позволяющая управлять всеми устройствами milight, включая пульты

Для управления всеми этими устройствами нужен хаб, который стоит в два раза дороже чем есп, и он не поддерживает mqtt. Есть хаб в виде ночника и в виде коробка, очень похожего на rgb контроллер, только чуть больше размером.

В HomeAssistant есть поддержка MiLight, но управляться все это добро будет по протоколу UDP, тогда как прошивка  esp8266_milight_hub  позволяет управлять и через UDP и через MQTT

Итак, нам нужна esp8266, в моем случае Nodemcu v2, и радиомодуль NRF24L01

Схема подключения:

Далее, чтобы прошить есп, скачаем свежую прошивку esp8266_milight_hub 

Когда прошивка будет завершена, есп перезагрузится в режиме точки доступа, у меня это ESP5439838

Подключаемся, переходим по адресу 192.168.4.1 и вводим данные своей сети wifi

После есп перезагрузится, и найдя присвоенный ей ip адрес мы попадаем в веб интерфейс:

Чтобы добавить новую лампочку или контроллер, нужно в течении 1-5 сек после включения его в сеть нажать  кнопку «+ Pair» в Milight Hub, предварительно выбрав группу, тип, и введя номер, например 1.

В Settings > MQTT вводим данные брокера, а в графах MQTT topic pattern и MQTT state topic pattern пишем:

MQTT topic pattern:

milight/:device_id/:device_type/:group_id

 

milight/states/:device_id/:device_type/:group_id

Сохраняем.

Если все управляется из webUI Milight Hub то можно переходить к настройке в HomeAssistant.

В коде уже прописаны комментарии по добавлению:

добавить в lights.yaml:

# Тест MiLight
- name: milight_test_strip
    # The command topic is derived by substituting real values for the
    # tokens in the setting mqtt_topic_pattern (e.g., "rgb_cct" for
    # ":device_type"):
    #                      ______________ Device ID
    #                            ________ Device Type
    #                     |     |     ___ Group ID
    #                     |     |    |
    #                     v     v    v
  command_topic: milight/0x1/rgb_cct/1

    # This is the same structure as above, but for the setting
    # mqtt_state_topic_pattern. esp8266_milight_hub sends state updates
    # to this topic.
  state_topic: milight/states/0x1/rgb_cct/1

    # Use a YAML anchor for common settings so we can just reference
    # them for other lights.
  <<: &MILIGHT_PARAMS
    platform: mqtt
    schema: json
    color_temp: true
    rgb: true
    brightness: true
    effect: true
    effect_list:
      - white_mode
      - night_mode
      - 0
      - 1
      - 2
      - 3
      - 4
      - 5
      - 6
      - 7
      - 8

Думаю, тут и так все ясно.

Скорость реагирования можно посмотреть на видео:

3
Оставить комментарий

avatar
2 Цепочка комментария
1 Ответы по цепочке
0 Последователи
 
Популярнейший комментарий
Цепочка актуального комментария
3 Авторы комментариев
АлексейkvvПавел Авторы недавних комментариев

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.

  Подписаться  
новее старее большинство голосов
Уведомление о
Павел
Гость
Павел

В чем преимущество MQTT в отличии от UPD ? Обратная связь?

Алексей
Гость

В оригинальной статье схема подключения немного отличается:
D2 (GPIO4) — CE