← Команды | Содержание | Далее: Расширенные функции →
Web UI, MQTT & HTTP — DimmerLink Native Tasmota Driver
Использование веб-интерфейса
Панель управления

Слайдеры яркости
Когда обнаружено одно или несколько устройств DimmerLink, главная страница Tasmota (http://) отображает слайдер яркости для каждого активного канала.
Расположение слайдеров:
- Для одного устройства слайдеры обозначены
DL Ch1,DL Ch2и т.д. - Для нескольких устройств слайдеры обозначены
DL1 Ch1,DL1 Ch2,DL2 Ch1и т.д.
Слайдеры имеют диапазон от 0 (выкл) до 100 (полная яркость). Перетаскивание слайдера и его отпускание отправляет команду DlDim на соответствующий канал. Слайдер отражает текущий уровень яркости, хранящийся в драйвере, и обновляется при изменении уровня из любого источника (команда, MQTT и т.д.).
Отображение сенсора
Раздел сенсора на главной странице показывает таблицу состояния только для чтения для каждого устройства:
| Метка строки | Показываемое значение | Пример |
|---|---|---|
DimmerLink1 Ch1 |
Яркость и кривая | 75% (LOG) |
DimmerLink1 Ch2 |
Яркость и кривая | 30% (RMS) |
DimmerLink1 AC |
Обнаруженная частота сети | 50 Hz |
DimmerLink1 Fade |
Время затухания (исходное и в секундах) | 10 (1.0s) |
DimmerLink1 Temp |
Температура и тепловое состояние | 42 C (NORMAL) |
Строка Temp появляется только если функция температуры доступна на аппаратном обеспечении. Все строки обновляются при каждом обновлении веб-страницы; раздел сенсора не является живой лентой с push-обновлениями.
Телеметрия MQTT
Публикация телеметрии
Драйвер участвует в периодическом сообщении Tasmota tele/ (хук FUNC_JSON_APPEND). Интервал телеметрии управляется настройкой TelePeriod Tasmota (по умолчанию 300 секунд).
Структура JSON — одно устройство
{
"Time": "2026-04-16T12:00:00",
"DimmerLink1": {
"Addr": "0x50",
"ACFreq": 50,
"Fade": 10,
"Ch1": {"Level": 75, "Curve": "LOG"},
"Ch2": {"Level": 30, "Curve": "RMS"},
"Ch3": {"Level": 0, "Curve": "LINEAR"},
"Ch4": {"Level": 0, "Curve": "LINEAR"},
"Temp": 42,
"Thermal": "NORMAL"
}
}Структура JSON — несколько устройств
Когда присутствует несколько устройств, все они отображаются как отдельные ключи в одном и том же сообщении SENSOR:
{
"Time": "2026-04-16T12:00:00",
"DimmerLink1": {
"Addr": "0x50",
"ACFreq": 50,
"Fade": 0,
"Ch1": {"Level": 75, "Curve": "LINEAR"},
"Ch2": {"Level": 0, "Curve": "LINEAR"},
"Ch3": {"Level": 0, "Curve": "LINEAR"},
"Ch4": {"Level": 0, "Curve": "LINEAR"}
},
"DimmerLink2": {
"Addr": "0x51",
"ACFreq": 50,
"Fade": 5,
"Ch1": {"Level": 50, "Curve": "LOG"},
"Ch2": {"Level": 0, "Curve": "LINEAR"},
"Ch3": {"Level": 0, "Curve": "LINEAR"},
"Ch4": {"Level": 0, "Curve": "LINEAR"}
}
}Описание полей
| Поле | Тип | Описание |
|---|---|---|
Addr |
строка | Адрес I2C в шестнадцатеричном формате, например "0x50" |
ACFreq |
целое | Обнаруженная частота сети, 50 или 60 Гц |
Fade |
целое | Текущая настройка времени затухания (0-255, единицы 100 мс) |
Ch1 ... Ch4 |
объект | Данные по каждому каналу |
Ch1.Level |
целое | Яркость в процентах (0-100) |
Ch1.Curve |
строка | Кривая диммирования: "LINEAR", "RMS" или "LOG" |
Temp |
целое | Температура в Цельсиях (только если аппаратное обеспечение поддерживает) |
Thermal |
строка | Состояние тепловой защиты (только с датчиком температуры) |
Поля Temp и Thermal опускаются, если прошивка MCU не имеет включённого FEATURE_TEMPERATURE или если регистр температуры возвращает 0xFF.
Отправка команд через MQTT
Команды отправляются на cmnd/ с полезной нагрузкой в качестве аргумента:
Topic: cmnd/my-device/DlDim
Payload: 75
Topic: cmnd/my-device/DlDim
Payload: 2,30
Topic: cmnd/my-device/DlCurve
Payload: 2
Topic: cmnd/my-device/DlFade
Payload: 10Ответы на команды публикуются в stat/:
{"DlDim1":{"Ch1":75,"Ch2":30,"Ch3":0,"Ch4":0}}HTTP API
Все команды Tasmota доступны через HTTP GET с использованием конечной точки /cm.
Синтаксис
http:///cm?cmnd=%20 Пробел между командой и аргументом должен быть закодирован как %20 в URL.
Примеры с curl
# Set device 1, channel 1 to 75%
curl "http://192.168.1.100/cm?cmnd=DlDim%2075"
# Set device 1, channel 2 to 30%
curl "http://192.168.1.100/cm?cmnd=DlDim%202,30"
# Set device 2, channel 1 to 50%
curl "http://192.168.1.100/cm?cmnd=DlDim2%2050"
# Set dimming curve to LOG on channel 1
curl "http://192.168.1.100/cm?cmnd=DlCurve%202"
# Set fade time to 1 second (value 10)
curl "http://192.168.1.100/cm?cmnd=DlFade%2010"
# Query full status of device 1
curl "http://192.168.1.100/cm?cmnd=DlStatus"
# Query full status of device 2
curl "http://192.168.1.100/cm?cmnd=DlStatus2"
# Recalibrate AC frequency on device 1
curl "http://192.168.1.100/cm?cmnd=DlRecalibrate"
# Change device 1 I2C address to 0x51
curl "http://192.168.1.100/cm?cmnd=DlAddress%200x51"Формат ответа
Все ответы в формате JSON, возвращаются с HTTP 200:
{"DlDim1":{"Ch1":75,"Ch2":30,"Ch3":0,"Ch4":0}}Ответ об ошибке (неверный номер устройства, аргумент вне диапазона и т.д.):
{"Command":"Error"}