Найти в Дзене

elkBLEDOM и разный другой bluetooth

Оглавление

Что можно подарить любимому мужу на новый год? Конечно же ещё один румбокс в дополнение к предыдущему. В роли любимого мужа выступал я, в роли второго румбокса - Sakura Station. Конструктор неспешно, в течение недели, был собран и настала пора его оживлять, так же, как и первый. И вот тут меня поджидал пушной зверь.

В том же радиомагазине, где были куплены предыдущие контроллеры MagicHome, был куплен ещё один RGBW-контроллер, точно такой же, как и для предыдущего румбокса. Но, как оказалось, нет. Новый контроллер, последний, с витрины, оказался на 12-24 вольта, в то время как старый был на 5+ вольт. Ну вот куда мне 12 вольт на три светодиода (на самом деле даже два в новом румбоксе)? Правильно, незачем. Попытки заказать похоже на Озоне и Яндекс.Маркете привели к тому же результату - в продаже только модели от 12 вольт. Пришлось думать.

Впрочем, долго думать не пришлось, на Озоне была заказана пара недорогих (около 300 рублей за штуку) контроллеров bluetooth, которые, по отзывам, должны быть поддержаны в Home Assistant.

Комплект аскетичный - контроллер в пакетике и больше ничего. Даже гребёнку не положили, благо их есть у меня от вайфайных контроллеров.

Ну что ж, контроллеры пришли, с телефона управляются, минимальное напряжение - 5 вольт. Казалось бы - что ещё нужно?

Но нет, снова не тут-то было.

Контроллеры работают из-под интеграции ElkBLEDOM, а она требует штатную интеграцию bluetooth в HomeAssistant. А у меня кастомный ble_monitor, который я подключал ещё давным давно для термогигрометров Xiaomi. Настроить две интеграции на один bluetooth-стик у меня не получилось. Настроить одновременно два из тех, что у меня были в наличии - тоже, один постоянно отваливался. Возможно помогла бы покупка нового usb-bluetooth из рекомендованного списка, но я зачем-то подошёл к вопросу более радикально.

Ранее для датчика движения Linptech я покупал мультифункциональный шлюз от Xiaomi, который после подключения уже предлагал мне подтянуть мои термогигрометры (и даже подтянул, хотя я говорил ему, что не надо). Я решил воспользоваться этим и проанализировал, что из моих ble-устройств в принципе требует кастомную интеграцию. Поняв, что, в принципе, ничего, я удалил кастомный ble_monitor и пару дней потратил на перезатаскивание своих bluetooth-устройств либо в штатную интеграцию bluetooth, либо через шлюз Xiaomi.

Что у меня получилось:

Всё это добро даже не потребовало каких-то усилий по переинтеграции - оно само всё обнаружилось и успешно добавилось после добавления usb-bluetooth-донгла в Home Assistant под штатной интеграцией bluetooth. Только названия сенсоров надо было подставить старые, чтобы оно участвовало в карточках и автоматизациях.

Ну вот теперь можно добавить новые контроллеры и начать оживлять наш румбокс.

Собственно, интеграция

Для работы контроллера понадобилась кастомная интеграция elkbledom HA Integration. После установки интеграции, спустя пару минут Home Assistant автоматически обнаруживает включенные контроллеры и предлагает их добавить. Добавляем.

Появляется новое устройство:

-2

Настройками не блещет, только вкл-выкл и скорость эффектов.

При нажатии на выключатель появляется стандартное расширенное меню:

-3

Здесь можно поиграться с цветом, эффектами и всё такое. Всё ровно то же самое, что и у вайфаевых контроллеров MagicHouse, так что можно далее переходить к автоматизациям.

Автоматизация

Пока кровь горяча и энтузиазм запален мощным переходом всех bluetooth-устройств, давайте сразу и автоматизации перешаманим.

Предыдущий опыт показал, что работа через вспомогательные ползунки избыточна и не несёт полезного функционала. В принципе, ползунки и нужны были в первую очередь для того, чтобы ограничить яркость светодиодов и предотвратить их перегорание. Но после впаивания резисторов проблема ушла и необходимости отдельно регулировать каналы больше не стало, а значит - можно захардкодить значения яркости каждого канала и избавиться от ненужных сущностей.

Светильников в румбоксе так же три, поэтому определяем три триггера, по которым будут происходить изменения. У меня сейчас это:

  • основной свет в детской комнате - включает общий свет
  • свет в туалете - включает лампу у магазинчика (не спрашивайте, почему так)
  • телевизор в детской или яндекс-колонка там же - включает подсветку в трамвайчике.

От слайдеров мы избавились, поэтому вся автоматизация осталась из двух элементов - триггеры и запуск скрипта на изменение состояния лампочек:

-4

Скрипт тоже претерпел изменения:

-5

Теперь в каналах RGB в темплейтах мы берём не значения слайдеров, а состояние выключателей и умножаем их на значение яркости для этого канала. Яркость можно поставить максимальную, можно подобрать по вкусу. У меня штатные светодиоды от конструктора очень мощные, поэтому там яркость сбавлена до 100 из 255. А светодиод, который я воткнул в трамвайчик, слабый, его жжём на полную мощность.

-6

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

А вы пока лайкайте, подписывайтесь, пишите комментарии и заглядывайте в телеграм.