Тест новой прошивки (3.0.0) для диммера WB-MRGBW-D

Добрый день!

Мы начинаем тестирование бета-версии прошивки 3.0.0 для WB-MRGBW-D диммера.

Пока использовать новую прошивку можно только совместно с контроллером Wiren Board и нашим шаблоном, документация и описание карты регистров ещё не готовы.

Установить новую прошивку можно командой:

wb-mcu-fw-updater update-fw --branch feature-new_modes --version 3.0.0-rc02 /dev/ttyRS485-1 -a1

Новый шаблон (положить в папку /etc/wb-mqtt-serial.conf.d/templates):

В этой прошивке кардинально изменилось практически всё:

  • 11 режимов работы, которые позволяют управлять различными типами светодиодных лент в различных комбинациях их подключения к диммеру
  • Обработка 4 типов нажатий для кнопок:
    • Короткое (одиночное)
    • Долгое (удержание кнопки)
    • Двойное
    • Короткое нажатие, затем удержание (нажал-отпустил-нажал-держишь)
  • Выбор действия для каждой кнопки и каждого типа нажатия. Есть 7 типов действий:
    • Игнорирование нажатия
    • Включение Coil
    • Выключение Coil
    • Переключение Coil
    • Увеличение значения Holding
    • Уменьшение значения Holding
    • Увеличение/уменьшение (поочередно) значения Holding
  • Настройка времени изменения параметра (fading) для каждого параметра в отдельности на включение (увеличение) и выключение (уменьшение)
  • Настройка времени обработки двойных и долгих нажатий для кнопок

Режим работы диммера выбирается в разделе Channels:

В зависимости от выбранного режима нужно соблюдать схему подключения светодиодных лент к диммеру:
image

В зависимости от выбранного режима работы можно настроить действия кнопок из выпадающего списка. Например, для режима RGB+W выбор такой:

В текущем шаблоне представлены все возможные действия для данного режима. В дальнейшем их список, возможно, будет уменьшен.

На этой же странице можно настроить время включения/выключения для каждого канала:


Это время в миллисекундах, за которое яркость изменится от 0 до максимума (как в прошивке 1.3.х). То есть, если яркость менять от 0 до 50%, она измениться за 500 мс при данной настройке.

Различные типы нажатий (время реакции на двойное, долгое нажатие) настраиваются в разделе Button parameters.

Также в разделе Debug можно включить опрос регистров с “сырыми” данными ШИМ и наблюдать за ними или менять при необходимости.

Из известных проблем:

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

Будем рады обратной связи, отзывы можете писать в этой теме.

7 Likes

Моя основная проблема не решена в этой прошивке:
Лента загорается только с 4% яркости, а после 70% яркости нет изменений по светимости. Я не могу установить минимальную яркость через кнопку… лента не светит, в регистре записано 1%. Нужны регистры для нижнего/верхнего порога диммирования (типа как вы это сделали в mdm3).
Такая настройка будет крайне полезной: я не хочу юзать ленты на 100%, брал с большим запасом по яркости, надо ограничить их на 75%, так они дольше прослужат. И еще один кейс: есть ночное освещение, на 1% яркости - слишком тускло, диод горит, но света нет, я бы тоже предпочел ограничить нижним порогом в 10%.

У меня 32 метра ленты, подключена через noname усилитель. 24кГц ШИМ он не поддерживает, не диммируется лента, я выставил 4кГц. Возможно проблема шкалы яркости именно в усилителе.

p.s. чуть позже попробую подключить через ваш модуль усилителя ленты, может быть все решится
update: подключил через WB-AMPLED усилитель, изменение яркости корректное от 1 до 100%

Что мне очень понравилось:

  • яркость по шкале от 1 до 100;
  • кнопки можно привязывать к любым каналам, ничего не надо физически менять;
  • теперь можно отключать долгий клик, иногда нужно просто on/off без диммирования;
  • CCT протестировал, работает отлично, поддержка “из коробки”, очень сильно упростила все мои автоматизации;
  • время плавного включения и выключения на каждый канал: поставил чтобы ночное освещение включалось быстро и отключалось медленно, теперь никаких компромиссов между каналами не надо закладывать;
4 Likes

поддерживаю запрос про диапазоны диммирования. если в конкретной инсталляции полезный диапазон (такой, в котором есть смысл с точки зрения предназначения светильника) меньше диапазона 0…100%, “ловить” при управлении с кнопок подходящее значение сложно. а так можно было бы ограничить, например, 10%…60% и весь диапазон растягивался бы на этот интервал (то есть если ползунок яркости стоит в 100%, в реальности лента светит на 60%).

1 Like

Согласен, не хватает нижнего/верхнего порога яркости. Сейчас это решаю подключением выключателя к di-14 + node-red (работает не очень, но работает). хочется нативно.

1 Like

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

1 Like

Еще было бы круто добавить, в шаблон, mqtt Channel, по разным видам кликов - чтобы можно было использовать в автоматизациях. То есть, я хочу видеть, что сработал двойной клик, чтобы назначить на него свой сценарий, а не из предложенных.

В идеале, добавить топик “Button 1 action” с возможными вариантами: click, doubleclick, longpress

3 Likes

а еще может хотеться по одному из действий (двойное или долгое нажатие) выставлять фиксированное значение. то есть, например, поигрались со светом, а потом хочется быстро вернуть “как было”.

Да, счетчики на типы нажатий (или передавать код типа нажатия в регистр) очень пригодились бы для сторонней обработки, например, чтобы по дабл клику устанавливать ночной режим 10%.

1 Like

В спрутхаб как добавить ? Может кто уже сделал шаблон для SH ?

Disabling/enabling time, для меня не очень хорошо работает, хочется плавность выключения с 10% до 0: ставлю 10000мс, гасится за 1сек, что очень быстро, а при 100% гасится за 10сек, что очень медленно:) Я думаю, более логичным было бы абсолютное время, несмотря на текущую яркость. С 1% яркости, будет задержка, перед выключением.

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

Присоединяюсь…

1 Like

Вы имеете в виду включение/выключение канала через изменение coil делать всегда с одним временем, независимо от текущей яркости? А как быть, если яркость меняют с какого-то на какое-то значение через holding? Так же изменять всегда за фиксированное время? Боюсь, это не для всех подойдет, нужен какой-то компромиссный вариант. Интересны еще мнения на этот счёт.

Одно дело включить, другое выключить, а изменение яркости - это уже третье:)
Потому что странно, когда кнопка за разное время увеличивает/уменьшает яркость, только сейчас заметил это)
Не обойтись без третьего регистра - Increasing/Decreasing time, это для изменений когда стартовое или конечное значение не Отключено (не с нуля и не в ноль).

p.s. но важнее шаблон доработать, чтобы можно было ловить action кнопок в mqtt:)

p.s. но важнее шаблон доработать, чтобы можно было ловить action кнопок в mqtt:)

Сделаем, но это не только шаблон, но и прошивку нужно доработать, поэтому оптом с другими пожеланиями.

При выборе нового шаблона возникает ошибка в драйвере wb-mqtt-serial:

wb-mqtt-serial[21616]: ERROR: [serial] Error parsing config file: address: plain integer or ‘0x…’ hex string expected instead of ‘’

Перестает возникать, если в шаблоне удалить раздел:

            {
                "name": "Channels",
                "id": "",
                "oneOf": [
                    "w_w_w_w",
                    "w2_w_w",
                    "cct_w_w",
                    "w_w_w2",
                    "w2_w2",
                    "cct_w2",
                    "w_w_cct",
                    "w2_cct",
                    "cct_cct",
                    "rgb_w",
                    "w4"
                ],
                "device_type": "w_w_w_w"
            },

Контроллер Batch No - 6.6.0B 3G 393/1
Firmware version - 201912160826

Попробую обновиться.

UPD: Обновление до релиза wb-2110 помогло, ошибок нет.

Для этого шаблона нужен свежий wb-mqtt-serial, обновитесь до последнего стабильного релиза wb-2110. Как правильно обновиться, читайте в статье Обновление контроллера

1 Like

Не придется еще полтора года ждать 3.1 ? :slight_smile:

3.0 уже хороша, ничего не ломает, все ленты работают четко

Не придется. Соберем еще немного отзывов и займемся доработкой и релизом.

Пока план такой:

  1. Добавляем счетчики для каждого типа нажатий
  2. Добавляем регистры настройки минимального/максимального значения для каналов яркости. В интерфейсе остается та же шкала от 0 до 100% (0% = off; 1% = min; 100% = max)

а есть ли в планах обновить прошивку также для MDM3 чтобы тоже поддерживал типы нажатия?

Да, но только после того как сам механизм работы будет отлажен. То есть чтобы не распыляться - доведется MRGBW-D а потом уже решение распространится на все остальные.

1 Like