Алгоритм обработки кнопочных выключателей в модулях WB-MDM3, WB-LED

Здравствуйте.
Пытаюсь программно настроить на движке wb-rules алгоритм обработки кнопочных нажатий, идентичный тому, что запрограммирован в диммерах WB-MDM3 и WB-LED.
Необходимость такая возникла из-за того, что часть кнопок подключено напрямую к модулям и обрабатываются без контроллера, а другая часть кнопок (“проходные выключатели”) подключены через модули WB-MCM8 и соответственно их надо обрабатывать программно.
Хочется добиться одинаковой работы, но не получается подобрать шаг увеличения/уменьшения яркости и задержку.
Есть ли где-то в документации детальное описание алгоритма обработки кнопок модулями? Примеры из вики и из модуля wb-press-actions не подошли :frowning:

Добрый день.

А почему не подошёл пример из документации?
Какой интервал вы указываете в startTicker? И какой шаг изменения?
Соответствуют ли указанные значения параметрам, указанным в настройках:

  • WB-MDM3 — Скорость увеличения/уменьшения яркости канала 1 (мс/%)
  • WB-LED — Время увеличения/уменьшения значения c 0 до 100% в мс

В startTicker 75 мс.
В настройках модулей ничего не указываю, всё по умолчанию.
На глаз по-разному работает через модуль и через контроллер.

Если интервал у startTicker — 75 мс и шаг — 1 как в примере, то от 0 до 100 % время изменения будет равно 7500 мс.
У WB-MDM3 по-умолчанию скорость увеличения/уменьшения — 10 мс на 1 %, т.е от 0 до 100 % время изменения будет равно 1000 мс. Для startTicker необходимо изменить интервал на 10 мс.
У WB-LED по-умолчанию время увеличения/уменьшения с 0 до 100 % — 100 мс. В этом случае необходимо установить интервал startTicker равным 1. При удержании кнопки по-умолчанию — 20 мс/ед, получается что от 0 до 100 % время изменения будет равно 2000 мс. Соответственно для startTicker необходимо изменить интервал на 20 мс.
В случае если параметры настроены — необходимо посчитать время изменения и поменять интервал у startTicker на соответствующий.

1 лайк