mirror of
https://github.com/anklimov/lighthub
synced 2026-10-28 11:15:00 +00:00
sprinkler - dry mode presistence, states initial publishing. Mercury - longer timer, dox
This commit is contained in:
@@ -1,8 +1,9 @@
|
||||
# 📚 Полный индекс документации LightHub (v2.0)
|
||||
# 📚 Полный индекс документации LightHub (v2.1)
|
||||
|
||||
> **Версия**: 2.0 (Актуально согласно wiki.lazyhome.ru)
|
||||
> **Дата обновления**: 2025-01-24
|
||||
> **Всего документов**: 17
|
||||
> **Версия**: 2.1 (Актуально согласно wiki.lazyhome.ru)
|
||||
> **Дата обновления**: 2026-06-17
|
||||
> **Всего документов**: 18
|
||||
> **Типов каналов**: 24 (CH_DIMMER 0 - CH_SPRINKLER 23)
|
||||
|
||||
---
|
||||
|
||||
@@ -54,7 +55,7 @@
|
||||
|
||||
| Файл | Размер | Описание |
|
||||
|------|--------|---------|
|
||||
| **[channel_types_reference.md](channel_types_reference.md)** | 400 стр | Справочник типов каналов (0-22) |
|
||||
| **[channel_types_reference.md](channel_types_reference.md)** | 400 стр | Справочник типов каналов (0-23) |
|
||||
| **[technical_channel_types_table.md](technical_channel_types_table.md)** | 350 стр | Технические таблицы параметров |
|
||||
|
||||
**Использование**: При создании новых каналов, для понимания параметров
|
||||
@@ -218,7 +219,7 @@
|
||||
| Управлять AC через MQTT | mqtt_quick_reference.md | Управление кондиционером |
|
||||
| Создать конфигурацию JSON | light_hub_полное_инженерное_описание_json_конфигурации_v2.md | Все секции |
|
||||
| Найти суффикс для типа | suffixes_reference_v2.md | Таблица применимости |
|
||||
| Увидеть все примеры | configuration_examples.md | Все типы (0-22) |
|
||||
| Увидеть все примеры | configuration_examples.md | Все типы (0-23) |
|
||||
| Интегрировать с Home Assistant | mqtt_api_reference.md | MQTT структура |
|
||||
| Перейти со старой версии | MIGRATION_GUIDE.md | Все типы |
|
||||
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 178 KiB |
+42
-36
@@ -1,8 +1,8 @@
|
||||
# LightHub: Инженерная документация (Индекс)
|
||||
|
||||
> **Полная инженерная документация системы LightHub**
|
||||
> Версия ядра: CH_DIMMER (0) - CH_MERCURY (22)
|
||||
> Дата актуализации: 2025-01-24
|
||||
> Версия ядра: CH_DIMMER (0) - CH_SPRINKLER (23)
|
||||
> Дата актуализации: 2025-06-17
|
||||
|
||||
---
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
|
||||
### Основные документы
|
||||
|
||||
1. **[light_hub_полное_инженерное_описание_json_конфигурации_v2.md](light_hub_полное_инженерное_описание_json_конфигурации_v2.md)** ⭐ **НАЧНИТЕ ОТСЮДА**
|
||||
1. **[light\_hub\_полное\_инженерное\_описание\_json\_конфигурации_v2.md](light_hub_полное_инженерное_описание_json_конфигурации_v2.md)** ⭐ **НАЧНИТЕ ОТСЮДА**
|
||||
- Полное описание структуры JSON конфигурации
|
||||
- Все секции: mqtt, topics, modbus, items, in
|
||||
- Инженерные принципы конфигурирования
|
||||
@@ -20,50 +20,50 @@
|
||||
|
||||
**🆕 MQTT API и топики:**
|
||||
|
||||
2. **[mqtt_api_reference.md](mqtt_api_reference.md)** — ⭐ ПОЛНЫЙ справочник MQTT API
|
||||
2. **[mqtt\_api\_reference.md](mqtt_api_reference.md)** — ⭐ ПОЛНЫЙ справочник MQTT API
|
||||
- Структура MQTT топиков: `root/[id или bcst или out]/item/[subitem]/suffix`
|
||||
- Три типа топиков: широковещательные команды, индивидуальные команды, статусные
|
||||
- Таблица суффиксов с применимостью
|
||||
- HTTP API endpoints (`/item/<name>`, `/config.json`, `/command`)
|
||||
- HTTP API endpoints (`/item/<name>`, `/config.json`, `/$command`)
|
||||
- Примеры MQTT команд и HTTP curl запросов
|
||||
- Восстановление состояния при старте контроллера
|
||||
- Диагностика MQTT подключения
|
||||
|
||||
3. **[suffixes_reference_v2.md](suffixes_reference_v2.md)** — ⭐ ИСПРАВЛЕННЫЙ справочник суффиксов
|
||||
3. **[suffixes\_reference\_v2.md](suffixes_reference_v2.md)** — ⭐ ИСПРАВЛЕННЫЙ справочник суффиксов
|
||||
- Правильная структура суффиксов согласно wiki.lazyhome.ru
|
||||
- 7 категорий: основные, цветовые, AC, Multivent, PID, ШИМ, управление состоянием
|
||||
- Таблица применимости по типам каналов (CH_DIMMER, CH_RGB, CH_AC и др.)
|
||||
- Таблица применимости по типам каналов (CH\_DIMMER, CH\_RGB, CH\_AC и др.)
|
||||
- Диапазоны значений: 0-100 vs 0-255, /hue 0-365°, /sat 0-100%
|
||||
- Примеры сценариев для каждого типа канала
|
||||
|
||||
**Основные справочники:**
|
||||
|
||||
4. **[channel_types_reference.md](channel_types_reference.md)** — Справочник типов каналов (0-22)
|
||||
4. **[channel\_types\_reference.md](channel_types_reference.md)** — Справочник типов каналов (0-23)
|
||||
- Таблица всех типов каналов с кодами
|
||||
- Текстовые обозначения и английские названия
|
||||
- Синтаксис конфигурации для каждого типа
|
||||
- Визуализация иерархии типов
|
||||
|
||||
5. **[suffixes_reference.md](suffixes_reference.md)** — Справочник суффиксов параметров (архив)
|
||||
- Старая версия справочника (см. suffixes_reference_v2.md)
|
||||
5. **[suffixes\_reference.md](suffixes_reference_v2.md)** — Справочник суффиксов параметров
|
||||
|
||||
|
||||
6. **[technical_channel_types_table.md](technical_channel_types_table.md)** — Подробные технические таблицы
|
||||
6. **[technical\_channel\_types\_table.md](technical_channel_types_table.md)** — Подробные технические таблицы
|
||||
- Таблицы параметров для каждого типа
|
||||
- Значения по умолчанию и ограничения
|
||||
- Специфика работы каждого типа
|
||||
|
||||
### Модули и компоненты
|
||||
|
||||
7. **[modules_description.md](modules_description.md)** — Описание модулей
|
||||
7. **[modules\_description.md](modules_description.md)** — Описание модулей
|
||||
- out_Multivent — многозональная вентиляция
|
||||
- out_AC — управление кондиционером
|
||||
- out_PID — PID регулятор
|
||||
- out_Motor — управление двигателем
|
||||
- И другие модули...
|
||||
|
||||
8. **[multivent_module_description.md](multivent_module_description.md)** — Многозональная вентиляция (подробно)
|
||||
8. **[multivent\_module\_description.md](multivent_module_description.md)** — Многозональная вентиляция (подробно)
|
||||
|
||||
9. **[modules_real_config.md](modules_real_config.md)** — Реальные конфигурации модулей
|
||||
9. **[modules\_real\_config.md](modules_real_config.md)** — Реальные конфигурации модулей
|
||||
|
||||
---
|
||||
|
||||
@@ -71,10 +71,10 @@
|
||||
|
||||
### Задача: Управлять LED светом через MQTT
|
||||
|
||||
1. Откройте [mqtt_api_reference.md](mqtt_api_reference.md) — чтобы понять структуру топиков
|
||||
1. Откройте [mqtt\_api\_reference.md](mqtt_api_reference.md) — чтобы понять структуру топиков
|
||||
2. Выберите тип канала: CH_RGB (10), CH_RGBW (11) или CH_RGBWW (12)
|
||||
3. Найдите примеры в [configuration_examples.md](configuration_examples.md)
|
||||
4. Используйте MQTT команды из [suffixes_reference_v2.md](suffixes_reference_v2.md):
|
||||
3. Найдите примеры в [configuration\_examples.md](configuration_examples.md)
|
||||
4. Используйте MQTT команды из [suffixes\_reference_v2.md](suffixes_reference_v2.md):
|
||||
```
|
||||
myhome/in/rgb_lamp/hue → 240 (установить синий)
|
||||
myhome/in/rgb_lamp/sat → 100 (полная насыщенность)
|
||||
@@ -89,9 +89,9 @@
|
||||
|
||||
### Задача: Управлять кондиционером через MQTT
|
||||
|
||||
1. Откройте [mqtt_api_reference.md](mqtt_api_reference.md) — раздел "Суффиксы кондиционера (AC)"
|
||||
2. Найдите CH_AC (13) в [configuration_examples.md](configuration_examples.md)
|
||||
3. Используйте MQTT команды из [suffixes_reference_v2.md](suffixes_reference_v2.md):
|
||||
1. Откройте [mqtt\_api\_reference.md](mqtt_api_reference.md) — раздел "Суффиксы кондиционера (AC)"
|
||||
2. Найдите CH_AC (13) в [configuration\_examples.md](configuration_examples.md)
|
||||
3. Используйте MQTT команды из [suffixes\_reference_v2.md](suffixes\_reference_v2.md):
|
||||
```
|
||||
myhome/in/ac_main/cmd → ON (включить)
|
||||
myhome/in/ac_main/mode → HEAT (режим нагрева)
|
||||
@@ -107,15 +107,15 @@
|
||||
|
||||
### Задача: Настроить многозональную вентиляцию
|
||||
|
||||
1. Прочитайте [multivent_module_description.md](multivent_module_description.md)
|
||||
2. Найдите CH_MULTIVENT (18) в [configuration_examples.md](configuration_examples.md)
|
||||
1. Прочитайте [multivent\_module\_description.md](multivent_module_description.md)
|
||||
2. Найдите CH_MULTIVENT (18) в [configuration\_examples.md](configuration_examples.md)
|
||||
3. Добавьте зоны в массив `"зоны": {...}`
|
||||
4. Настройте PID параметры `[Kp, Ki, Kd, dT]`
|
||||
5. Привяжите MQTT топики через `"emit"`
|
||||
|
||||
### Задача: Создать систему с входами (кнопки, датчики)
|
||||
|
||||
1. Прочитайте раздел "Секция `in`" в [light_hub_полное_инженерное_описание_json_конфигурации_v2.md](light_hub_полное_инженерное_описание_json_конфигурации_v2.md)
|
||||
1. Прочитайте раздел "Секция `in`" в [light\_hub\_полное\_инженерное\_описание\_json\_конфигурации\_v2.md](light_hub_полное_инженерное_описание_json_конфигурации_v2.md)
|
||||
2. Определите GPIO пины входов (37, 38, 39, и т.д.)
|
||||
3. Привяжите их к объектам через `"item": "имя_канала"`
|
||||
4. Используйте команды `scmd`, `rcmd` для действий
|
||||
@@ -145,12 +145,12 @@
|
||||
| 15 | UARTBRDG | UART Мост | [⬇️](configuration_examples.md#ch_uartbridge-15---uart-мост) |
|
||||
| 16 | RELAYX | Медленный PWM реле | [⬇️](configuration_examples.md#ch_relayx-16---медленный-pwm-через-реле) |
|
||||
| 17 | DMXRGBWW | RGBWW через DMX | [⬇️](configuration_examples.md#ch_rgbww-17---dmx-rgbww) |
|
||||
| 18 | VENTS | Многозональная вентиляция | [⬇️](configuration_examples.md#ch_multivent-18---многозональная-вентиляция) |
|
||||
| 18 | VENTS | Многозональная вентиляция/кондиционер | [⬇️](configuration_examples.md#ch_multivent-18---многозональная-вентиляция) |
|
||||
| 19 | ELEVATOR | Лифт | - (TBD) |
|
||||
| 20 | COUNTER | Счётчик импульсов | [⬇️](configuration_examples.md#ch_counter-20---счётчик-импульсов) |
|
||||
| 20 | COUNTER | Счётчик импульсов или времени | [⬇️](configuration_examples.md#ch_counter-20---счётчик-импульсов) |
|
||||
| 21 | HUM | Увлажнитель | [⬇️](configuration_examples.md#ch_humidifier-21---управление-увлажнителем) |
|
||||
| 22 | MERCURY | Счётчик энергии | [⬇️](configuration_examples.md#ch_mercury-22---счётчик-энергии-mercury) |
|
||||
|
||||
| 23 | SPRINKLER| многозональная система полива
|
||||
---
|
||||
|
||||
## 📊 Таблица суффиксов MQTT
|
||||
@@ -158,14 +158,14 @@
|
||||
| Суффикс | Назначение | Применимо к |
|
||||
|---------|-----------|-----------|
|
||||
| `/cmd` | Команда управления | Все типы |
|
||||
| `/val` | Текущее значение (статус) | Все типы |
|
||||
| `/val` | Входное значение | THERMO, PID, MBUS, SPRINKLER|
|
||||
| `/set` | Установка значения | Диммеры, регуляторы |
|
||||
| `/hue` | Оттенок (0-359°) | RGB/RGBW/RGBWW |
|
||||
| `/sat` | Насыщенность (0-100%) | RGB/RGBW/RGBWW |
|
||||
| `/temp` | Температура цвета (K) | RGB/RGBW/RGBWW |
|
||||
| `/fan` | Скорость вентилятора | AC, Multivent, Vacom |
|
||||
| `/temp` | Температура цвета (Mirids) | RGB/RGBW/RGBWW |
|
||||
| `/fan` | Скорость вентилятора 0-255| AC, Multivent, Vacom |
|
||||
| `/mode` | Режим работы | AC, Multivent |
|
||||
| `/raw` | JSON формат (отладка) | Все типы |
|
||||
| `/raw` | JSON формат (отладка) | TBD |
|
||||
|
||||
---
|
||||
|
||||
@@ -195,10 +195,12 @@ python3 -m json.tool config.json
|
||||
### Логирование Modbus
|
||||
|
||||
Если Modbus устройство не отвечает:
|
||||
|
||||
1. Проверьте baudrate (по умолчанию 9600)
|
||||
2. Проверьте адрес устройства
|
||||
3. Проверьте регистры (должны быть доступны для чтения)
|
||||
4. Включите syslog для отладки
|
||||
4. Включите уровень логгирование 9 для отладки
|
||||
5. Можно откомпилировать прошивку с ключем, выдающим обмен Modbus в порт консоли в 16-ти ричном виде
|
||||
|
||||
### MQTT Отладка
|
||||
|
||||
@@ -241,11 +243,14 @@ MQTT привязка (через "emit")
|
||||
// myhome/dev/lights_all/cmd → ON
|
||||
```
|
||||
|
||||
### Правило 4: Подробное имя = легче найти
|
||||
### Правило 4: Слишком длинное имя = меньше влезет
|
||||
|
||||
```json
|
||||
"lamp_bedroom_ceiling": [0, 1], // ✓ Хорошо
|
||||
"lamp1": [0, 1] // ✗ Плохо
|
||||
|
||||
"lamp1": [0, 1] // ✗ Плохо, слишком коротко и непонятно
|
||||
"lamp_bedroom_ceiling": [0, 1], // ✗ Плохо, занимает много оперативной памяти, дольше в поиске
|
||||
"lampbedr1": [0, 1], // ✓ Нормально
|
||||
"ledbedr1": [0, 1], // ✓ Нормально
|
||||
```
|
||||
|
||||
---
|
||||
@@ -263,6 +268,7 @@ MQTT привязка (через "emit")
|
||||
| Версия | Дата | Изменения |
|
||||
|--------|------|----------|
|
||||
| 2.0 | 2025-01-24 | Полная актуализация документации для ядра CH_DIMMER (0) - CH_MERCURY (22) |
|
||||
| 2.1 | 2026-06-17 | Добавлен новый тип канала CH_SPRINKLER (23) — система полива |
|
||||
| 1.0 | 2024-12-16 | Исходная версия |
|
||||
|
||||
---
|
||||
@@ -273,7 +279,7 @@ MQTT привязка (через "emit")
|
||||
- [ ] Все GPIO пины уникальны (нет конфликтов)
|
||||
- [ ] Все Modbus адреса доступны
|
||||
- [ ] MQTT брокер доступен и запущен
|
||||
- [ ] Все типы каналов в диапазоне 0-22
|
||||
- [x] Все типы каналов в диапазоне 0-23
|
||||
- [ ] Содержатся ли необходимые секции (mqtt, items)
|
||||
- [ ] Проверены все MQTT топики
|
||||
- [ ] Запасная копия конфигурации сохранена
|
||||
@@ -291,7 +297,7 @@ MQTT привязка (через "emit")
|
||||
- Не устанавливайте poll менее 50 мс для RS485
|
||||
|
||||
⚠️ **СОВМЕСТИМОСТЬ**:
|
||||
- Эта документация актуальна для ядра с типами 0-22
|
||||
- Эта документация актуальна для ядра с типами 0-23
|
||||
- Убедитесь, что ваша версия LightHub поддерживает нужные типы
|
||||
|
||||
---
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
# ⭐ ДОКУМЕНТАЦИЯ ОБНОВЛЕНА — Версия 2.0
|
||||
# ⭐ ДОКУМЕНТАЦИЯ ОБНОВЛЕНА — Версия 2.1
|
||||
|
||||
> **Важно**: Документация LightHub полностью актуализирована для ядра с типами каналов CH_DIMMER (0) - CH_MERCURY (22)
|
||||
> **Важно**: Документация LightHub полностью актуализирована для ядра с типами каналов CH_DIMMER (0) - CH_SPRINKLER (23)
|
||||
>
|
||||
> **🆕 Новое**: Добавлена полная документация MQTT API согласно wiki.lazyhome.ru
|
||||
> **🆕 Новое**: Добавлен новый тип канала — система полива (CH_SPRINKLER)
|
||||
|
||||
---
|
||||
|
||||
@@ -36,7 +37,7 @@
|
||||
|
||||
### 3️⃣ [light_hub_полное_инженерное_описание_json_конфигурации_v2.md](light_hub_полное_инженерное_описание_json_конфигурации_v2.md) ⭐ **АКТУАЛЬНО**
|
||||
- **Полное описание JSON конфигурации**
|
||||
- Все 23 типа каналов (0-22)
|
||||
- Все 24 типа каналов (0-23)
|
||||
- Все секции: mqtt, topics, modbus, items, in
|
||||
- Инженерные правила
|
||||
- Полный пример системы
|
||||
@@ -46,7 +47,7 @@
|
||||
## 🔍 Справочники (используйте как шпаргалку)
|
||||
|
||||
### 4️⃣ [channel_types_reference.md](channel_types_reference.md)
|
||||
- **Справочник типов каналов 0-22**
|
||||
- **Справочник типов каналов 0-23**
|
||||
- Таблица с кодами и текстовыми обозначениями
|
||||
- Синтаксис конфигурации для каждого типа
|
||||
- Визуализация иерархии
|
||||
@@ -62,7 +63,7 @@
|
||||
## 💡 Примеры (готовые к использованию)
|
||||
|
||||
### 6️⃣ [configuration_examples.md](configuration_examples.md)
|
||||
- **JSON примеры для всех 23 типов каналов**
|
||||
- **JSON примеры для всех 24 типов каналов**
|
||||
- Для каждого типа: синтаксис + MQTT команды
|
||||
- Полная реальная система
|
||||
- **Скопируй-вставь готовые примеры**
|
||||
@@ -123,7 +124,7 @@
|
||||
|
||||
---
|
||||
|
||||
## 📋 Таблица типов каналов (0-22)
|
||||
## 📋 Таблица типов каналов (0-23)
|
||||
|
||||
| № | Тип | Описание | Справочник |
|
||||
|---|-----|---------|-----------|
|
||||
@@ -176,7 +177,7 @@
|
||||
- [ ] Все GPIO пины уникальны
|
||||
- [ ] Все Modbus адреса доступны
|
||||
- [ ] MQTT брокер запущен
|
||||
- [ ] Все типы каналов в диапазоне 0-22
|
||||
- [x] Все типы каналов в диапазоне 0-23
|
||||
- [ ] Необходимые секции присутствуют
|
||||
- [ ] MQTT топики проверены
|
||||
- [ ] Резервная копия конфигурации сохранена
|
||||
@@ -184,5 +185,5 @@
|
||||
---
|
||||
|
||||
**Документация обновлена**: 24 января 2026 г.
|
||||
**Версия ядра**: LightHub с CH_DIMMER (0) - CH_MERCURY (22)
|
||||
**Версия ядра**: LightHub с CH_DIMMER (0) - CH_SPRINKLER (23)
|
||||
**Статус**: ✅ Актуально и готово к использованию
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# LightHub: Справочник типов каналов (Items)
|
||||
|
||||
> **Инженерный справочник** соответствия цифровых кодов типов каналов к текстовым обозначениям и функциональности.
|
||||
> Актуально для версии ядра с типами DIMMER (0) до MERCURY (22).
|
||||
> Актуально для версии ядра с типами DIMMER (0) до SPRINKLER (23).
|
||||
> Источник: [lighthub/item.h](../lighthub/item.h)
|
||||
|
||||
---
|
||||
@@ -33,6 +33,7 @@
|
||||
| **20** | `COUNTER` | Generic Counter | Счётчик импульсов (электроэнергия, газ, вода) | `[инкремент_на_один_отсчет, период_для_автоинкремента_режим_ON]` |
|
||||
| **21** | `HUM` | Humidifier | Управление увлажнителем воздуха | Конфигурация по типу увлажнителя |
|
||||
| **22** | `MERCURY` | Mercury Energy Meter | Счётчик энергии Mercury по RS485/Modbus | `[адрес, baudrate, формат, сдвиг, [флаги], timeout]` |
|
||||
| **23** | `SPRINKLER` | Irrigation System | Система автоматического полива с многозональным управлением | `[имя_устройства, конфигурация_зон]` |
|
||||
|
||||
---
|
||||
|
||||
@@ -230,6 +231,38 @@
|
||||
// Timeout: 10000 мс
|
||||
```
|
||||
|
||||
### CH_SPRINKLER (23) - Система полива
|
||||
|
||||
```json
|
||||
"irrigation_system": [23, [
|
||||
"main_sprinkler",
|
||||
{
|
||||
"": {
|
||||
"cmd": {"emit": "sprinkler/cmd"},
|
||||
"val": {"emit": "sprinkler/state"}
|
||||
},
|
||||
"north_zone": {
|
||||
"enabled": {"emit": "sprinkler/north/enabled"},
|
||||
"time": {"emit": "sprinkler/north/time"},
|
||||
"progress": {"emit": "sprinkler/north/progress"},
|
||||
"cycle": {"emit": "sprinkler/north/cycle"}
|
||||
},
|
||||
"south_zone": {
|
||||
"enabled": {"emit": "sprinkler/south/enabled"},
|
||||
"time": {"emit": "sprinkler/south/time"},
|
||||
"progress": {"emit": "sprinkler/south/progress"},
|
||||
"cycle": {"emit": "sprinkler/south/cycle"}
|
||||
},
|
||||
"drip_zone": {
|
||||
"enabled": {"emit": "sprinkler/drip/enabled"},
|
||||
"time": {"emit": "sprinkler/drip/time"},
|
||||
"progress": {"emit": "sprinkler/drip/progress"},
|
||||
"cycle": {"emit": "sprinkler/drip/cycle"}
|
||||
}
|
||||
}
|
||||
]]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Заметки по конфигурации
|
||||
@@ -284,6 +317,7 @@ ITEMS (каналы)
|
||||
├── Каналы с множеством подканалов
|
||||
│ ├── CH_SPILED "SPILED"(11)
|
||||
│ ├── CH_MULTIVENT "VENTS"(18)
|
||||
│ ├── CH_SPRINKLER "SPRINKLER"(23)
|
||||
│ └── CH_HUMIDIFIER "HUM"(21)
|
||||
│
|
||||
├── Modbus/RS485 Slaves/UART
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# LightHub: Примеры конфигурации для всех типов каналов (0-22)
|
||||
# LightHub: Примеры конфигурации для всех типов каналов (0-23)
|
||||
|
||||
> **Практический справочник** с готовыми примерами JSON конфигурации для каждого типа канала.
|
||||
> Каждый пример показывает полный синтаксис, включая MQTT топики и все параметры.
|
||||
@@ -30,6 +30,7 @@
|
||||
- [CH_COUNTER (20)](#ch_counter-20---счётчик-импульсов)
|
||||
- [CH_HUMIDIFIER (21)](#ch_humidifier-21---управление-увлажнителем)
|
||||
- [CH_MERCURY (22)](#ch_mercury-22---счётчик-энергии-mercury)
|
||||
- [CH_SPRINKLER (23)](#ch_sprinkler-23---система-полива)
|
||||
|
||||
---
|
||||
|
||||
@@ -61,7 +62,6 @@
|
||||
```
|
||||
myhome/dev/lamp_bedroom/cmd ← ON, OFF, TOGGLE, SET
|
||||
myhome/dev/lamp_bedroom/set ← 150 (яркость 0-255)
|
||||
myhome/dev/lamp_bedroom/val ← текущая яркость
|
||||
myhome/s_out/lamp_bedroom/val → опубликованная яркость
|
||||
```
|
||||
|
||||
@@ -96,7 +96,7 @@ myhome/s_out/lamp_bedroom/val → опубликованная яркость
|
||||
myhome/dev/rgb_light/hue ← 240 (0-359°)
|
||||
myhome/dev/rgb_light/sat ← 100 (0-100%)
|
||||
myhome/dev/rgb_light/val ← 200 (0-255)
|
||||
myhome/dev/rgb_light/temp ← 6500 (температура цвета, K)
|
||||
myhome/dev/rgb_light/temp ← 6500 (температура цвета, Mirids)
|
||||
myhome/dev/rgb_light/RGB ← 255,0,0 (красный)
|
||||
myhome/dev/rgb_light/RGB ← 255,0,0,100 (RGB+White)
|
||||
```
|
||||
@@ -152,7 +152,7 @@ myhome/dev/mood_light/HSV ← 120,100,100 (зелёный в HSV)
|
||||
|
||||
```
|
||||
myhome/dev/pwm_dim/set ← 128
|
||||
myhome/dev/pwm_dim/val ← текущее значение
|
||||
myhome/dev/pwm_dim/cmd ← ON
|
||||
```
|
||||
|
||||
---
|
||||
@@ -211,7 +211,7 @@ myhome/dev/pwm_dim/val ← текущее значение
|
||||
|
||||
```
|
||||
myhome/dev/thermo_bath/set ← 35 (установить целевую T)
|
||||
myhome/dev/thermo_bath/val ← 1 (нагревается) или 0
|
||||
myhome/dev/thermo_bath/val ← передать измерянную температуру с удаленного сенсора
|
||||
myhome/dev/thermo_bath/cmd ← ON, OFF
|
||||
```
|
||||
|
||||
@@ -219,7 +219,7 @@ myhome/dev/thermo_bath/cmd ← ON, OFF
|
||||
|
||||
## CH_RELAY (6) - GPIO Реле
|
||||
|
||||
**Назначение**: Простое электромагнитное реле ON/OFF
|
||||
**Назначение**: Простое электромагнитное реле ON/OFF или иное дискретное устройство
|
||||
|
||||
### Синтаксис
|
||||
|
||||
@@ -244,7 +244,6 @@ myhome/dev/thermo_bath/cmd ← ON, OFF
|
||||
|
||||
```
|
||||
myhome/dev/relay_water/cmd ← ON, OFF, TOGGLE
|
||||
myhome/dev/relay_water/val ← 1 (включено) или 0 (выключено)
|
||||
```
|
||||
|
||||
---
|
||||
@@ -304,13 +303,7 @@ myhome/dev/lights_all/cmd ← SET 100 (установит яркость
|
||||
|
||||
```json
|
||||
{
|
||||
"modbus": {
|
||||
"vacom_10": {
|
||||
"baud": 9600,
|
||||
"serial": "8N1",
|
||||
"poll": {"regs": [[0, 50]], "delay": 1000}
|
||||
}
|
||||
},
|
||||
|
||||
"items": {
|
||||
"fan_heat": [8, [96, 0]], // Vacom адрес 96, экземпляр 0
|
||||
"fan_cool": [8, [96, 1]] // Vacom адрес 96, экземпляр 1
|
||||
@@ -329,10 +322,7 @@ myhome/dev/lights_all/cmd ← SET 100 (установит яркость
|
||||
```json
|
||||
{
|
||||
"items": {
|
||||
"vent_motor": [9, [96, {
|
||||
"mode": {"emit": "vent/mode"},
|
||||
"speed": {"emit": "vent/speed"}
|
||||
}]]
|
||||
"vent_motor": [9, [96, ??]]
|
||||
}
|
||||
}
|
||||
```
|
||||
@@ -779,6 +769,271 @@ myhome/dev/energy_mercury/val ← текущие показания энерг
|
||||
|
||||
---
|
||||
|
||||
## CH_SPRINKLER (23) - Система полива
|
||||
|
||||
**Назначение**: Многозональная система автоматического полива с контролем воды и насосов
|
||||
|
||||
### Синтаксис
|
||||
|
||||
```json
|
||||
"sprinkler_name": [23, [{параметры_системы}, {зоны_полива}]]
|
||||
```
|
||||
|
||||
### Полный пример конфигурации
|
||||
|
||||
```json
|
||||
{
|
||||
"items": {
|
||||
"sprinkler": [23, {
|
||||
"": {
|
||||
"vIn": 3,
|
||||
"wMax": 44,
|
||||
"wMin": 46,
|
||||
"rDren": 23,
|
||||
"fbDren": 63,
|
||||
"rPump": 24,
|
||||
"fbPump": 62,
|
||||
"wCtr": 49
|
||||
},
|
||||
"nord": {
|
||||
"pin": 6,
|
||||
"set": 60,
|
||||
"cmd": 1
|
||||
},
|
||||
"south": {
|
||||
"pin": 7,
|
||||
"set": 100,
|
||||
"cmd": 1
|
||||
},
|
||||
"trees": {
|
||||
"pin": 10,
|
||||
"set": 60,
|
||||
"cmd": 2
|
||||
},
|
||||
"outlets": {}
|
||||
}]
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### MQTT Команды управления
|
||||
|
||||
#### Запуск/остановка цикла полива
|
||||
```
|
||||
root/name/sprinkler/cmd ← ON # Запустить цикл полива всех зон
|
||||
root/name/sprinkler/cmd ← OFF # Остановить полив
|
||||
root/name/sprinkler/cmd ← RESET # Сбросить счётчики - инициирует старт полива
|
||||
|
||||
root/name/sprinkler/cmd ← FREEZE # Полная блокировка на зиму
|
||||
root/name/sprinkler/cmd ← UNFREEZE # Разблокировка
|
||||
root/name/sprinkler/cmd ← DRY # Режим осушения системы перед зимой
|
||||
root/name/sprinkler/cmd ← ENABLE # Разрешить полив
|
||||
root/name/sprinkler/cmd ← DISABLE # Запретить полив (например, после дождя)
|
||||
```
|
||||
|
||||
#### Управление конкретной зоной
|
||||
```
|
||||
root/name/sprinkler/nord/cmd ← ON # Включить полив северной зоны
|
||||
root/name/sprinkler/nord/cmd ← OFF # Выключить полив
|
||||
root/name/sprinkler/nord/set ← 60 # Требуемый объём полива
|
||||
root/name/sprinkler/nord/set ← 0 # Без лимита (для розеток)
|
||||
|
||||
root/name/sprinkler/south/cmd ← ON # Включить южную зону
|
||||
root/name/sprinkler/south/set ← 100 # Требуемый объём
|
||||
|
||||
root/name/sprinkler/trees/cmd ← ON # Включить капельное орошение
|
||||
root/name/sprinkler/trees/set ← 60 # Требуемый объём
|
||||
```
|
||||
|
||||
#### Специальные команды
|
||||
```
|
||||
root/name/sprinkler/val ← -1 # Температура < 0 → автоматический FREEZE
|
||||
root/name/sprinkler/ctrl ← FREEZE # Установить режим FREEZE
|
||||
root/name/sprinkler/ctrl ← UNFREEZE # Снять режим FREEZE
|
||||
```
|
||||
|
||||
### MQTT Статусные топики (выходные)
|
||||
|
||||
#### Состояние системы
|
||||
```
|
||||
root/s_out/sprinkler/$state → SP_UNKNOWN, SP_OFF, SP_DREN_ON, SP_DREN_OPERATE,
|
||||
SP_DREN_EMPTY, SP_VIN, SP_FULL, SP_FAULT_VIN, SP_FAULT_DREN
|
||||
root/s_out/sprinkler/$fault → код ошибки (если есть)
|
||||
root/s_out/sprinkler/$wMax → ON/OFF - бак полный (поплавок макс)
|
||||
root/s_out/sprinkler/$wMin → ON/OFF - бак пуст (поплавок мин)
|
||||
```
|
||||
|
||||
#### Состояние насосов и клапанов
|
||||
```
|
||||
root/s_out/sprinkler/$rPump → ON/OFF - реле основного насоса включено
|
||||
root/s_out/sprinkler/$fbPump → ON/OFF - основной насос работает (датчик)
|
||||
root/s_out/sprinkler/$rDren → ON/OFF - реле дренажного насоса включено
|
||||
root/s_out/sprinkler/$fbDren → ON/OFF - дренажный насос работает (датчик)
|
||||
root/s_out/sprinkler/$rVIN → ON/OFF - клапан налива из водопровода открыт
|
||||
root/s_out/sprinkler/set → текущее значение счётчика воды
|
||||
```
|
||||
|
||||
#### Состояние зон полива
|
||||
```
|
||||
root/s_out/sprinkler/nord/$state → ON/OFF - зона в данный момент поливается
|
||||
root/s_out/sprinkler/nord/cmd → ON/OFF - состояние команды включения
|
||||
root/s_out/sprinkler/nord/set → требуемый объём полива
|
||||
root/s_out/sprinkler/nord/val → выполненный объём полива (накапливается)
|
||||
|
||||
root/s_out/sprinkler/south/$state → ON/OFF - южная зона поливается
|
||||
root/s_out/sprinkler/south/cmd → ON/OFF
|
||||
root/s_out/sprinkler/south/set → требуемый объём
|
||||
root/s_out/sprinkler/south/val → выполненный объём
|
||||
|
||||
root/s_out/sprinkler/trees/$state → ON/OFF - капельная зона поливается
|
||||
root/s_out/sprinkler/trees/cmd → ON/OFF
|
||||
root/s_out/sprinkler/trees/set → требуемый объём
|
||||
root/s_out/sprinkler/trees/val → выполненный объём
|
||||
|
||||
root/s_out/sprinkler/outlets/$state → ON/OFF - розетка активна
|
||||
```
|
||||
|
||||
### Примеры использования
|
||||
|
||||
#### Запуск полива с установкой объёмов
|
||||
```bash
|
||||
# Установить объёмы для каждой зоны
|
||||
mosquitto_pub -t root/name/sprinkler/nord/set -m 60
|
||||
mosquitto_pub -t root/name/sprinkler/south/set -m 100
|
||||
mosquitto_pub -t root/name/sprinkler/trees/set -m 60
|
||||
|
||||
# Запустить цикл полива
|
||||
mosquitto_pub -t root/name/sprinkler/cmd -m ON
|
||||
```
|
||||
|
||||
#### Запрет полива после дождя и восстановление
|
||||
```bash
|
||||
# Запретить полив
|
||||
mosquitto_pub -t root/name/sprinkler/cmd -m DISABLE
|
||||
|
||||
# Разрешить полив
|
||||
mosquitto_pub -t root/name/sprinkler/cmd -m ENABLE
|
||||
```
|
||||
|
||||
#### Подготовка к зиме (блокировка + осушение)
|
||||
```bash
|
||||
# 1. Перейти в режим DRY для осушения
|
||||
mosquitto_pub -t root/name/sprinkler/cmd -m DRY
|
||||
|
||||
# 2. Открыть розетки для слива
|
||||
mosquitto_pub -t root/name/sprinkler/outlets/cmd -m ON
|
||||
|
||||
# 3. После полного слива - заморозить систему
|
||||
mosquitto_pub -t root/name/sprinkler/cmd -m FREEZE
|
||||
```
|
||||
|
||||
#### Сброс счётчиков (инициирует новый цикл полива)
|
||||
```bash
|
||||
mosquitto_pub -t root/name/sprinkler/cmd -m RESET
|
||||
```
|
||||
|
||||
### Интеграция с Home Assistant
|
||||
|
||||
```yaml
|
||||
sensor:
|
||||
- name: "Полив бак Макс"
|
||||
state_topic: "root/s_out/sprinkler/$wMax"
|
||||
|
||||
- name: "Полив бак Мин"
|
||||
state_topic: "root/s_out/sprinkler/$wMin"
|
||||
|
||||
- name: "Полив состояние"
|
||||
state_topic: "root/s_out/sprinkler/$state"
|
||||
|
||||
- name: "Полив ошибка"
|
||||
state_topic: "root/s_out/sprinkler/$fault"
|
||||
|
||||
- name: "Полив север выполнено"
|
||||
state_topic: "root/s_out/sprinkler/nord/val"
|
||||
|
||||
- name: "Полив юг выполнено"
|
||||
state_topic: "root/s_out/sprinkler/south/val"
|
||||
|
||||
- name: "Полив капельный выполнено"
|
||||
state_topic: "root/s_out/sprinkler/trees/val"
|
||||
|
||||
switch:
|
||||
- name: "Полив"
|
||||
state_topic: "root/s_out/sprinkler/cmd"
|
||||
command_topic: "root/air/sprinkler/cmd"
|
||||
availability_topic: "root/air/$state"
|
||||
payload_available: "ready"
|
||||
payload_not_available: "disconnected"
|
||||
|
||||
- name: "Полив север"
|
||||
state_topic: "root/s_out/sprinkler/nord/cmd"
|
||||
command_topic: "root/air/sprinkler/nord/cmd"
|
||||
|
||||
- name: "Полив юг"
|
||||
state_topic: "root/s_out/sprinkler/south/cmd"
|
||||
command_topic: "root/air/sprinkler/south/cmd"
|
||||
|
||||
- name: "Полив капельный"
|
||||
state_topic: "root/s_out/sprinkler/trees/cmd"
|
||||
command_topic: "root/air/sprinkler/trees/cmd"
|
||||
|
||||
button:
|
||||
- name: "Полив сброс"
|
||||
command_topic: "root/air/sprinkler/cmd"
|
||||
payload_press: "RESET"
|
||||
|
||||
- name: "Полив блокировка (FREEZE)"
|
||||
command_topic: "root/air/sprinkler/cmd"
|
||||
payload_press: "FREEZE"
|
||||
|
||||
- name: "Полив разблокировка"
|
||||
command_topic: "root/air/sprinkler/cmd"
|
||||
payload_press: "UNFREEZE"
|
||||
|
||||
- name: "Полив запретить (дождь)"
|
||||
command_topic: "root/air/sprinkler/cmd"
|
||||
payload_press: "DISABLE"
|
||||
|
||||
- name: "Полив разрешить"
|
||||
command_topic: "root/air/sprinkler/cmd"
|
||||
payload_press: "ENABLE"
|
||||
|
||||
- name: "Полив осушение (DRY)"
|
||||
command_topic: "root/air/sprinkler/cmd"
|
||||
payload_press: "DRY"
|
||||
|
||||
number:
|
||||
- name: "Полив север объём"
|
||||
state_topic: "root/s_out/sprinkler/nord/set"
|
||||
command_topic: "root/air/sprinkler/nord/set"
|
||||
min: 0
|
||||
max: 6000
|
||||
|
||||
- name: "Полив юг объём"
|
||||
state_topic: "root/s_out/sprinkler/south/set"
|
||||
command_topic: "root/air/sprinkler/south/set"
|
||||
min: 0
|
||||
max: 6000
|
||||
|
||||
- name: "Полив капельный объём"
|
||||
state_topic: "root/s_out/sprinkler/trees/set"
|
||||
command_topic: "root/air/sprinkler/trees/set"
|
||||
min: 0
|
||||
max: 6000
|
||||
```
|
||||
|
||||
### Особенности и советы
|
||||
|
||||
| Особенность | Описание |
|
||||
|-----------|---------|
|
||||
| **Водяная розетка** | Настройте зону с `set: 0` — она будет работать неограниченно и всегда под давлением |
|
||||
| **Счётчик воды** | Если `wCtr` не установлен, система отсчитывает время в секундах вместо объёма |
|
||||
| **Приоритет дренажа** | Система сначала наполняет бак из дренажного колодца, потом из водопровода |
|
||||
| **Автозащита от мороза** | Отправьте `/val ← -1` или `FREEZE` при угрозе мороза |
|
||||
| **DISABLE vs FREEZE** | DISABLE блокирует только запуск, FREEZE полностью замораживает систему |
|
||||
| **Режим DRY** | Используйте перед зимой: включает насос без наполнения, зоны можно открыть вручную |
|
||||
| **RESET** | Сбрасывает счётчики всех зон в 0 и инициирует новый цикл полива |
|
||||
|
||||
## Полная реальная конфигурация (интеграция всех типов)
|
||||
|
||||
```json
|
||||
@@ -845,12 +1100,12 @@ myhome/dev/energy_mercury/val ← текущие показания энерг
|
||||
|
||||
## Полезные ссылки
|
||||
|
||||
- [Справочник типов каналов](channel_types_reference.md) — типы 0-22
|
||||
- [Справочник типов каналов](channel_types_reference.md) — типы 0-23
|
||||
- [Справочник суффиксов](suffixes_reference.md) — /cmd, /val, /set, /hue, /sat, /temp
|
||||
- [Полное описание конфигурации](light_hub_полное_инженерное_описание_json_конфигурации_v2.md)
|
||||
- [Исходный код item.h](../lighthub/item.h)
|
||||
|
||||
---
|
||||
|
||||
**Версия документа**: 1.0
|
||||
**Дата обновления**: 2025-01-24
|
||||
**Версия документа**: 1.2
|
||||
**Дата обновления**: 2025-06-17
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# LightHub: Полное инженерное описание JSON‑конфигурации контроллера
|
||||
|
||||
> **Документ актуален для ядра LightHub с типами каналов CH_DIMMER (0) - CH_MERCURY (22)**
|
||||
> **Документ актуален для ядра LightHub с типами каналов CH_DIMMER (0) - CH_SPRINKLER (23)**
|
||||
>
|
||||
> Предназначен для инженеров автоматизации, интеграторов и разработчиков.
|
||||
> Основан **строго** на официальной документации LazyHome / LightHub и исходном коде.
|
||||
@@ -31,7 +31,7 @@ JSON‑конфигурация LightHub — это **единственный
|
||||
- **Сетевую интеграцию** (MQTT, syslog)
|
||||
- **Подключённые физические интерфейсы** (DMX, RS485, GPIO, 1-Wire)
|
||||
- **Библиотеки Modbus‑устройств** (шаблоны с параметрами)
|
||||
- **Логические объекты (items)** — каналы управления (0-22 типов)
|
||||
- **Логические объекты (items)** — каналы управления (0-23 типов)
|
||||
- **Маршрутизацию данных и команд** между MQTT и локальными объектами
|
||||
|
||||
❗ **В LightHub нет runtime‑конфигурации** — всё задаётся декларативно при загрузке файла.
|
||||
@@ -79,6 +79,7 @@ JSON‑конфигурация LightHub — это **единственный
|
||||
|
||||
### Параметры (позиционные!)
|
||||
|
||||
|
||||
| № | Назначение | Тип | Обязателен | Пример |
|
||||
|--|--|--|--|--|
|
||||
| 0 | MQTT Client ID | string | **✓** | `"lighthub-07"` |
|
||||
@@ -392,12 +393,12 @@ myhome/s_out/lamp1/hue # текущий оттенок RGB лампы
|
||||
|
||||
| Элемент | Назначение | Обязателен | Тип |
|
||||
|--|--|--|--|
|
||||
| 0 | **TYPE** — тип канала (0-22) | **✓** | int или string |
|
||||
| 0 | **TYPE** — тип канала (0-23) | **✓** | int или string |
|
||||
| 1 | **CONFIG** — конфигурация (зависит от типа) | **✓** | int, string, или array |
|
||||
| 2 | Начальное значение (preset) | - | int или array |
|
||||
| 3 | Начальная команда | - | int |
|
||||
|
||||
### Типы каналов (0-22)
|
||||
### Типы каналов (0-23)
|
||||
|
||||
**Полный справочник типов каналов см. в [channel_types_reference.md](channel_types_reference.md)**
|
||||
|
||||
@@ -689,5 +690,5 @@ LightHub использует **жёстко структурированную,
|
||||
|
||||
**Версия документа**: 2.0
|
||||
**Дата обновления**: 2025-01-24
|
||||
**Актуально для**: LightHub с CH_DIMMER (0) - CH_MERCURY (22)
|
||||
**Актуально для**: LightHub с CH_DIMMER (0) - CH_SPRINKLER (23)
|
||||
**Источник**: [item.h](../lighthub/item.h), [item.cpp](../lighthub/item.cpp)
|
||||
|
||||
@@ -20,6 +20,7 @@
|
||||
- [out_Counter](#out_counter---счётчик-импульсов)
|
||||
- [out_SPILed](#out_spiled---управление-светодиодами)
|
||||
- [out_Mercury](#out_mercury---счётчик-меркурий)
|
||||
- [out_Sprinkler](#out_sprinkler---система-полива)
|
||||
- [out_UARTBridge](#out_uartbridge---uart-мост)
|
||||
|
||||
2. [Входные модули (In)](#входные-модули)
|
||||
@@ -628,6 +629,182 @@ home/meter/night_power - Ночное потребление
|
||||
|
||||
---
|
||||
|
||||
---
|
||||
|
||||
## out_Sprinkler — Система полива
|
||||
|
||||
### Описание
|
||||
|
||||
Модуль управления многозональной системой автоматического полива с независимым управлением каждой зоной, таймерами и мониторингом.
|
||||
|
||||
**Основные функции:**
|
||||
- Управление несколькими зонами полива независимо
|
||||
- Установка длительности полива для каждой зоны
|
||||
- Таймеры и расписания для автоматизации
|
||||
- Мониторинг прогресса выполнения
|
||||
- Поддержка ручного управления и автоматических режимов
|
||||
- Контроль состояния клапанов и электромагнитных выключателей
|
||||
|
||||
### Тип в JSON
|
||||
```
|
||||
[23, ["device_name", {zones_configuration}]]
|
||||
```
|
||||
|
||||
### Формат конфигурации
|
||||
|
||||
```json
|
||||
"irrigation_system": [
|
||||
23,
|
||||
[
|
||||
"main_sprinkler",
|
||||
{
|
||||
"": {
|
||||
"cmd": {"emit": "sprinkler/cmd"},
|
||||
"val": {"emit": "sprinkler/state"}
|
||||
},
|
||||
"north_zone": {
|
||||
"enabled": {"emit": "sprinkler/north/enabled"},
|
||||
"time": {"emit": "sprinkler/north/time"},
|
||||
"progress": {"emit": "sprinkler/north/progress"},
|
||||
"cycle": {"emit": "sprinkler/north/cycle"}
|
||||
},
|
||||
"south_zone": {
|
||||
"enabled": {"emit": "sprinkler/south/enabled"},
|
||||
"time": {"emit": "sprinkler/south/time"},
|
||||
"progress": {"emit": "sprinkler/south/progress"},
|
||||
"cycle": {"emit": "sprinkler/south/cycle"}
|
||||
},
|
||||
"drip_zone": {
|
||||
"enabled": {"emit": "sprinkler/drip/enabled"},
|
||||
"time": {"emit": "sprinkler/drip/time"},
|
||||
"progress": {"emit": "sprinkler/drip/progress"},
|
||||
"cycle": {"emit": "sprinkler/drip/cycle"}
|
||||
}
|
||||
}
|
||||
]
|
||||
]
|
||||
```
|
||||
|
||||
### Компоненты системы
|
||||
|
||||
| Компонент | Выход/Вход | Назначение |
|
||||
|-----------|-----------|-----------|
|
||||
| **Бак полива** | wMax, wMin | Поплавки макс/мин уровня воды |
|
||||
| **Основной насос** | rPump, fbPump | Реле включения, датчик тока |
|
||||
| **Клапаны зон** | pin (для каждой зоны) | Оптореле открытия клапана |
|
||||
| **Клапан налива** | vIn | Оптореле подачи воды из водопровода |
|
||||
| **Дренажный насос** | rDren, fbDren | Реле включения, датчик тока |
|
||||
| **Водосчётчик** | wCtr (опционально) | Счётчик объёма воды |
|
||||
|
||||
### Параметры конфигурации
|
||||
|
||||
| Параметр | Тип | Описание |
|
||||
|----------|-----|---------|
|
||||
| `vIn` | int | GPIO клапана налива из водопровода |
|
||||
| `wMax` | int | GPIO поплавка максимума в баке |
|
||||
| `wMin` | int | GPIO поплавка минимума в баке |
|
||||
| `rDren` | int | GPIO реле дренажного насоса |
|
||||
| `fbDren` | int | GPIO датчика дренажного насоса |
|
||||
| `rPump` | int | GPIO реле основного насоса полива |
|
||||
| `fbPump` | int | GPIO датчика основного насоса |
|
||||
| `wCtr` | int | GPIO счётчика воды (опционально) |
|
||||
|
||||
### Параметры зоны полива
|
||||
|
||||
| Параметр | Тип | Описание |
|
||||
|----------|-----|---------|
|
||||
| `pin` | int | GPIO клапана зоны |
|
||||
| `set` | int | Требуемый объём полива или время (сек). 0 = неограниченно |
|
||||
| `cmd` | int | Начальное состояние (0=OFF, 1=ON, 2=другое) |
|
||||
|
||||
### Состояния системы налива
|
||||
|
||||
| Состояние | Описание |
|
||||
|-----------|---------|
|
||||
| `SP_UNKNOWN` | Неизвестное состояние |
|
||||
| `SP_OFF` | Система выключена |
|
||||
| `SP_DREN_ON` | Дренажный насос включен |
|
||||
| `SP_DREN_OPERATE` | Дренажный насос работает |
|
||||
| `SP_DREN_EMPTY` | Дренажный колодец пуст |
|
||||
| `SP_VIN` | Наполнение из водопровода |
|
||||
| `SP_FULL` | Бак наполнен |
|
||||
| `SP_FAULT_VIN` | Ошибка: бак не наполнился из водопровода |
|
||||
| `SP_FAULT_DREN` | Ошибка: бак не наполнился из дренажа |
|
||||
|
||||
### MQTT топики управления
|
||||
|
||||
#### Управление циклом полива (команды)
|
||||
```
|
||||
root/name/sprinkler/cmd ← ON # Запустить цикл полива
|
||||
root/name/sprinkler/cmd ← OFF # Остановить цикл полива
|
||||
root/name/sprinkler/cmd ← XON # Включить (может быть заблокировано DISABLE)
|
||||
root/name/sprinkler/cmd ← XOFF # Выключить
|
||||
root/name/sprinkler/cmd ← RESET # Сбросить счётчики всех зон
|
||||
root/name/sprinkler/cmd ← FREEZE # Блокировка на зиму
|
||||
root/name/sprinkler/cmd ← UNFREEZE # Разблокировка
|
||||
root/name/sprinkler/cmd ← DRY # Режим осушения системы
|
||||
```
|
||||
|
||||
#### Управление конкретной зоной (например, "north")
|
||||
```
|
||||
root/name/sprinkler/north/cmd ← ON # Включить полив зоны
|
||||
root/name/sprinkler/north/cmd ← OFF # Выключить полив зоны
|
||||
root/name/sprinkler/north/set ← 60 # Требуемый объём/время полива (секунды или единицы счётчика)
|
||||
```
|
||||
|
||||
#### Режимы системы (установка в /ctrl)
|
||||
```
|
||||
root/name/sprinkler/ctrl ← ENABLE # Разрешить полив
|
||||
root/name/sprinkler/ctrl ← DISABLE # Запретить полив (например, после дождя)
|
||||
root/name/sprinkler/ctrl ← FREEZE # Полная блокировка на зиму
|
||||
root/name/sprinkler/ctrl ← UNFREEZE # Снять блокировку зимы
|
||||
```
|
||||
|
||||
#### Автоматическая блокировка по температуре
|
||||
```
|
||||
root/name/sprinkler/val ← -1 # При температуре < 0 система автоматически переходит в FREEZE
|
||||
```
|
||||
|
||||
### MQTT топики мониторинга (статус)
|
||||
|
||||
```
|
||||
root/s_out/sprinkler/$state # Состояние системы налива воды (SP_*)
|
||||
root/s_out/sprinkler/$fault # Код ошибки (если есть)
|
||||
root/s_out/sprinkler/$wMax # ON/OFF - бак полный (поплавок макс)
|
||||
root/s_out/sprinkler/$wMin # ON/OFF - бак пуст (поплавок мин)
|
||||
root/s_out/sprinkler/$rPump # ON/OFF - реле основного насоса включено
|
||||
root/s_out/sprinkler/$fbPump # ON/OFF - основной насос работает (датчик тока)
|
||||
root/s_out/sprinkler/$rDren # ON/OFF - реле дренажного насоса включено
|
||||
root/s_out/sprinkler/$fbDren # ON/OFF - дренажный насос работает (датчик тока)
|
||||
root/s_out/sprinkler/$rVIN # ON/OFF - клапан налива из водопровода открыт
|
||||
root/s_out/sprinkler/set # Текущее значение счётчика воды
|
||||
|
||||
root/s_out/sprinkler/north/$state # ON/OFF - зона поливается в настоящее время
|
||||
root/s_out/sprinkler/north/cmd # ON/OFF - состояние команды включения зоны
|
||||
root/s_out/sprinkler/north/set # Требуемый объём/время полива
|
||||
root/s_out/sprinkler/north/val # Текущий выполненный объём/время полива зоны
|
||||
|
||||
root/s_out/sprinkler/south/$state # ON/OFF - зона поливается
|
||||
root/s_out/sprinkler/south/cmd # ON/OFF - состояние команды
|
||||
root/s_out/sprinkler/south/set # Требуемый объём/время
|
||||
root/s_out/sprinkler/south/val # Выполненный объём/время
|
||||
|
||||
# Аналогично для остальных зон (например, "trees", "outlets" и т.д.)
|
||||
```
|
||||
|
||||
### Особенности
|
||||
|
||||
| Особенность | Описание |
|
||||
|-----------|---------|
|
||||
| **Динамическое управление** | Все параметры можно изменять через MQTT в реальном времени |
|
||||
| **Восстановление состояния** | Значения `set` и `val` восстанавливаются из топиков `s_out` при перезагрузке |
|
||||
| **Водяная розетка** | Зона с `set=0` работает неограниченно (используется для розеток с шлангом) |
|
||||
| **Приоритет дренажа** | Система сначала пытается наполнить бак из дренажного колодца, затем из водопровода |
|
||||
| **Автозащита от мороза** | Значение `/val < 0` автоматически активирует режим FREEZE |
|
||||
| **Двухступенчатая блокировка** | DISABLE блокирует команды, FREEZE полностью заморозит систему |
|
||||
|
||||
---
|
||||
|
||||
## out_UARTBridge — UART мост
|
||||
|
||||
### Описание
|
||||
@@ -791,6 +968,7 @@ home/meter/night_power - Ночное потребление
|
||||
| out_Counter | 6 | Счётчик импульсов | GPIO-счёт |
|
||||
| out_SPILed | 10 | Адресуемые светодиоды | SPI/GPIO |
|
||||
| out_Mercury | 45 | Электросчётчик | Modbus RTU |
|
||||
| out_Sprinkler | 23 | Система полива | GPIO + MQTT |
|
||||
| out_UARTBridge | 55 | UART-мост | UART↔UART |
|
||||
| in_CCS811_HDC1080 | 100 | Качество воздуха | I2C |
|
||||
|
||||
|
||||
@@ -65,9 +65,10 @@ myhome/in/led_strip/10-20/set (установить значение пи
|
||||
```
|
||||
|
||||
**Пример для состояния (условное выполнение)**:
|
||||
|
||||
```
|
||||
myhome/in/floor/AUTO/set (команда для теплых полов в режиме AUTO)
|
||||
myhome/in/floor/OFF/set (команда для теплых полов в режиме OFF)
|
||||
myhome/in/floor/AUTO/set (применится для теплых полов в режиме AUTO)
|
||||
myhome/in/floor/OFF/set (применится для теплых полов в режиме OFF)
|
||||
```
|
||||
|
||||
#### 5. **suffix** (суффикс) — параметр объекта
|
||||
@@ -80,20 +81,20 @@ myhome/in/floor/OFF/set (команда для теплых пол
|
||||
|
||||
| Суффикс | Тип | Назначение | Применимость |
|
||||
|---------|-----|-----------|--------------|
|
||||
| **`/cmd`** | Command | Основная команда управления (ON, OFF, TOGGLE и др.) | Все типы |
|
||||
| **`/set`** | Parameter | Установка параметра (яркость, температура и др.) | Диммеры, регуляторы, термостаты |
|
||||
| **`/val`** | Status | Текущее значение (в статусных топиках) | Все типы |
|
||||
| **`/hue`** | Color | Оттенок (0-365°, HSV формат) | RGB/RGBW/RGBWW |
|
||||
| **`/sat`** | Color | Насыщенность (0-100%, HSV формат) | RGB/RGBW/RGBWW |
|
||||
| **`/hsv`** | Color | Полный цвет (hue,saturation,volume) | RGB/RGBW/RGBWW |
|
||||
| **`/rgb`** | Color | Цвет в RGB/RGBW нотации | RGB/RGBW/RGBWW |
|
||||
| **`/fan`** | Control | Скорость вентилятора (HIGH, MEDIUM, LOW) | AC, Multivent |
|
||||
| **`/mode`** | Control | Режим работы (HEAT, COOL, DRY, FAN, AUTO) | AC, Thermostat, Multivent |
|
||||
| **`/lock`** | Control | Блокировка (ON, OFF) | AC |
|
||||
| **`/swing`** | Control | Направление воздушного потока (ON, OFF) | AC |
|
||||
| **`/quiet`** | Control | Тихий режим (ON, OFF) | AC |
|
||||
| **`/ctrl`** | Control | Управление состоянием (FREEZE, UNFREEZE, ENABLE, DISABLE) | Специальное |
|
||||
| **`/del`** | Delayed | Команда с задержкой | Все команды |
|
||||
| **`/cmd`** | Command, Status | Основная команда управления (ON, OFF, TOGGLE и др.) | Все типы |
|
||||
| **`/set`** | Command, Status | Установка параметра (яркость, температура и др.) | Диммеры, регуляторы, термостаты |
|
||||
| **`/val`** | Command | Текущее значение регулируемого параметра направляется с сенсора сюда | PID, MULTIVENT, THERMOSTAT, SPRINKLER|
|
||||
| **`/hue`** | Command | Оттенок (0-365°, HSV формат) | RGB/RGBW/RGBWW |
|
||||
| **`/sat`** | Command | Насыщенность (0-100%, HSV формат) | RGB/RGBW/RGBWW |
|
||||
| **`/hsv`** | Command | Полный цвет (hue,saturation,volume) | RGB/RGBW/RGBWW |
|
||||
| **`/rgb`** | Command | Цвет в RGB/RGBW нотации | RGB/RGBW/RGBWW |
|
||||
| **`/fan`** | Command, Status | Скорость вентилятора 0-255 или (HIGH, MEDIUM, LOW, OFF) | AC, Multivent |
|
||||
| **`/mode`** | Command, Status | Режим работы (HEAT, COOL, DRY, FAN, AUTO) | AC, Thermostat, Multivent |
|
||||
| **`/lock`** | Command, Status | Блокировка (ON, OFF) | AC |
|
||||
| **`/swing`** | Command, Status | Направление воздушного потока (ON, OFF) | AC |
|
||||
| **`/quiet`** | Command, Status | Тихий режим (ON, OFF) | AC |
|
||||
| **`/ctrl`** | Command, Status | Управление состоянием (FREEZE, UNFREEZE, ENABLE, DISABLE) | Специальное |
|
||||
| **`/del`** | Command, Status | Команда с задержкой | Все команды |
|
||||
|
||||
---
|
||||
|
||||
@@ -237,13 +238,13 @@ myhome/s_out/<item>/<суффикс>
|
||||
|
||||
| Формат | Описание | Пример |
|
||||
|--------|---------|--------|
|
||||
| `<0..100>` | Яркость (OpenHab стиль) | `myhome/in/lamp/set → 50` |
|
||||
| `<0..255>` | Яркость/PWM (новый стиль) | `myhome/in/lamp/set → 128` |
|
||||
| `<H>,<S>,<V>` | HSV формат | `myhome/in/rgb/hsv → 240,100,200` |
|
||||
| `<H>,<S>` | HSV без изменения яркости | `myhome/in/rgb/hsv → 240,100` |
|
||||
| `#RRGGBB` | RGB hex (Home Remote) | `myhome/in/rgb/cmd → #FF0000` |
|
||||
| `<R>,<G>,<B>` | RGB формат | `myhome/in/rgb/rgb → 255,0,0` |
|
||||
| `<R>,<G>,<B>,<W>` | RGBW формат | `myhome/in/rgb/rgb → 255,0,0,100` |
|
||||
| `<0..100>` | Яркость (OpenHab стиль) | `myhome/in/lamp → 50` |
|
||||
| `<0..255>` | Яркость/PWM/температура/значение счетчика/... (новый стиль) | `myhome/in/lamp/set → 128` |
|
||||
| `<H>,<S>,<V>` | HSV формат | `myhome/in/led/hsv → 240,100,200` |
|
||||
| `<H>,<S>` | HSV без изменения яркости | `myhome/in/led/hsv → 240,100` |
|
||||
| `#RRGGBB` | RGB hex (Home Remote) | `myhome/in/led/rgb → #FF0000` |
|
||||
| `<R>,<G>,<B>` | RGB формат | `myhome/in/led/rgb → 255,0,0` |
|
||||
| `<R>,<G>,<B>,<W>` | RGBW формат | `myhome/in/led/rgb → 255,0,0,100` |
|
||||
|
||||
### Расширенные команды
|
||||
|
||||
@@ -264,12 +265,12 @@ myhome/s_out/<item>/<суффикс>
|
||||
|
||||
| Команда | Описание | Применимость |
|
||||
|---------|---------|--------------|
|
||||
| `AUTO` | Автоматический режим | AC, Thermostat |
|
||||
| `HEAT` | Нагрев | AC, Thermostat |
|
||||
| `COOL` | Охлаждение | AC |
|
||||
| `DRY` | Осушение | AC |
|
||||
| `FAN_ONLY` | Только вентилятор | AC |
|
||||
| `HIGH`, `MED`, `LOW` | Скорость вентилятора | AC |
|
||||
| `AUTO` | Автоматический режим | AC, Thermostat, Multivent |
|
||||
| `HEAT` | Нагрев | AC, Thermostat, Multivent |
|
||||
| `COOL` | Охлаждение | AC, Multivent |
|
||||
| `DRY` | Осушение | AC, Multivent, IRRIGATOR |
|
||||
| `FAN_ONLY` | Только вентилятор | AC, Multivent |
|
||||
| `HIGH`, `MED`, `LOW` | Скорость вентилятора | AC, MULTIVENT |
|
||||
|
||||
### Команды с задержкой
|
||||
|
||||
@@ -294,6 +295,7 @@ myhome/in/light/cmd → "ON 3000"
|
||||
```
|
||||
|
||||
**Взаимно-обратные команды**:
|
||||
|
||||
- `ON` ↔ `OFF`
|
||||
- `TOGGLE` ↔ `TOGGLE`
|
||||
- `REST` ↔ `HALT`
|
||||
@@ -319,20 +321,19 @@ myhome/in/light/cmd → "ON 3000"
|
||||
**Пример**:
|
||||
- Получена команда: `ON` на RGB канал
|
||||
- Контроллер восстанавливает последний цвет (HSV из памяти)
|
||||
- Публикует в статусный топик: `hue=240, sat=100, val=200` (вместо просто `ON`)
|
||||
- Публикует в статусный топик: `240,100,200` (вместо просто `ON`)
|
||||
|
||||
### Различие /set и /cmd (с версии 3.0.0)
|
||||
|
||||
| Что | /cmd | /set |
|
||||
### Различие нового подхода (/set и /cmd) и старого (общий топик, совместимо с шиной OpenHab)
|
||||
| Что | новый | openHab |
|
||||
|-----|:----:|:----:|
|
||||
| Команда управления | ✓ | - |
|
||||
| Диапазон значений | 0-255 | 0-255 (новый) или 0-100 (старый) |
|
||||
| Для OpenHab совместимости | Используется конец топика | 0-100 |
|
||||
| Для новых систем | - | 0-255 |
|
||||
| Команда управления | в /cmd| в общем топике |
|
||||
| Команда установки значения | в /set| в общем топике |
|
||||
| Диапазон значений | 0-255 | 0-100 |
|
||||
|
||||
|
||||
**Практика**:
|
||||
- `/set` используется для установки **значения** (яркость 0-255)
|
||||
- `/cmd` используется для **команд** (ON, OFF, TOGGLE)
|
||||
- `/set` используется для установки **значения** (например, яркость 0-255)
|
||||
- `/cmd` используется для **команд** (ON, OFF, TOGGLE ...)
|
||||
|
||||
---
|
||||
|
||||
@@ -355,22 +356,22 @@ http://<controller_ip>/item/<item_name>[/subitem][/suffix]
|
||||
|
||||
```bash
|
||||
# Включить лампу
|
||||
curl -X POST http://192.168.1.10/item/lamp1/cmd -d "ON"
|
||||
curl --user arduino:password -X POST http://192.168.1.10/item/lamp1/cmd -d "ON"
|
||||
|
||||
# Установить яркость
|
||||
curl -X POST http://192.168.1.10/item/lamp1/set -d "150"
|
||||
curl --user arduino:password -X POST http://192.168.1.10/item/lamp1/set -d "150"
|
||||
|
||||
# Установить цвет RGB
|
||||
curl -X POST http://192.168.1.10/item/rgb_light/rgb -d "255,0,0"
|
||||
curl --user arduino:password -X POST http://192.168.1.10/item/rgb_light/rgb -d "255,0,0"
|
||||
|
||||
# Получить текущий статус
|
||||
curl -X GET http://192.168.1.10/item/lamp1/val
|
||||
curl --user arduino:password -X GET http://192.168.1.10/item/lamp1
|
||||
|
||||
# Многозональная вентиляция - установить T в спальне
|
||||
curl -X POST http://192.168.1.10/item/multivent/bedroom/set -d "22"
|
||||
curl --user arduino:password -X POST http://192.168.1.10/item/multivent/bedroom/set -d "22"
|
||||
|
||||
# Кондиционер - установить режим
|
||||
curl -X POST http://192.168.1.10/item/ac_main/mode -d "HEAT"
|
||||
curl --user arduino:password -X POST http://192.168.1.10/item/ac_main/mode -d "HEAT"
|
||||
```
|
||||
|
||||
### Дополнительные endpoints
|
||||
@@ -380,7 +381,7 @@ curl -X POST http://192.168.1.10/item/ac_main/mode -d "HEAT"
|
||||
| `/config.json` | GET, POST | Загрузить/сохранить конфигурацию |
|
||||
| `/config.bin` | GET, POST | Системная конфигурация |
|
||||
| `/sketch` | POST | Загрузить прошивку (OTA) |
|
||||
| `/command/<cmd>` | POST | Выполнить CLI команду |
|
||||
| `/$command/<cmd>` | POST | Выполнить CLI команду |
|
||||
| `/` | GET | Переадресация на PWA приложение |
|
||||
|
||||
---
|
||||
@@ -421,26 +422,28 @@ curl -X POST http://192.168.1.10/item/ac_main/mode -d "HEAT"
|
||||
```
|
||||
# Включить лампу
|
||||
→ myhome/in/lamp_bedroom/cmd: ON
|
||||
← myhome/s_out/lamp_bedroom/val: 100 (восстановленная яркость)
|
||||
← myhome/s_out/lamp_bedroom/set: 100 (восстановленная яркость)
|
||||
← myhome/s_out/lamp_bedroom/cmd: ON
|
||||
|
||||
# Установить яркость RGB
|
||||
→ myhome/in/rgb_light/set: 200
|
||||
← myhome/s_out/rgb_light/val: 200
|
||||
← myhome/s_out/rgb_light/set: 0,0,200,500 (в статусный топик запишется полный набор параметров канала)
|
||||
|
||||
# Установить цвет
|
||||
→ myhome/in/rgb_light/hue: 240
|
||||
← myhome/s_out/rgb_light/hue: 240
|
||||
← myhome/s_out/rgb_light/set: 240,100,200,500 (в статусный топик запишется полный набор параметров канала)
|
||||
|
||||
# Установить насыщенность
|
||||
→ myhome/in/rgb_light/sat: 50
|
||||
← myhome/s_out/rgb_light/set: 240,50,200,500 (в статусный топик запишется полный набор параметров канала)
|
||||
|
||||
# Включить кондиционер в режим HEAT
|
||||
→ myhome/in/ac_main/cmd: ON
|
||||
← myhome/s_out/ac_main/cmd: ON
|
||||
→ myhome/in/ac_main/mode: HEAT
|
||||
← myhome/s_out/ac_main/mode: HEAT
|
||||
→ myhome/in/ac_main/cmd: HEAT
|
||||
← myhome/s_out/ac_main/cmd: HEAT (запишется в статусный топик)
|
||||
|
||||
# Установить температуру
|
||||
→ myhome/in/ac_main/set: 22
|
||||
← myhome/s_out/ac_main/set: 22
|
||||
← myhome/s_out/ac_main/set: 22 (запишется в статусный топик)
|
||||
```
|
||||
|
||||
---
|
||||
@@ -466,5 +469,5 @@ mosquitto_sub -h 192.168.1.100 -t "myhome/s_out/#" -v
|
||||
|
||||
---
|
||||
|
||||
**Версия документа**: 2.0 (актуально для работа_с_mqtt из wiki.lazyhome.ru)
|
||||
**Версия документа**: 2.1 (актуально для работа_с_mqtt из wiki.lazyhome.ru)
|
||||
**Источники**: [MQTT wiki](https://www.lazyhome.ru/dokuwiki/doku.php?id=%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B0_%D1%81_mqtt), [API wiki](https://www.lazyhome.ru/dokuwiki/doku.php?id=api)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# LightHub: Полная техническая таблица типов каналов
|
||||
|
||||
> **Инженерный справочник** — полная таблица всех типов каналов (0-22) с параметрами, синтаксисом и примерами кода.
|
||||
> Источник: [lighthub/item.h](../lighthub/item.h), строки 47-69
|
||||
> **Инженерный справочник** — полная таблица всех типов каналов (0-23) с параметрами, синтаксисом и примерами кода.
|
||||
> Источник: [lighthub/item.h](../lighthub/item.h), строки 47-72
|
||||
|
||||
---
|
||||
|
||||
@@ -32,6 +32,7 @@
|
||||
| 20 | COUNTER | Counter | Счётчик импульсов | int/array | `0` или `[0.02, 1.2]` |
|
||||
| 21 | HUM | Humidifier | Увлажнитель | object | `{humidity:{...}}` |
|
||||
| 22 | MERCURY | Mercury Meter | Счётчик энергии Mercury | array | `[1, 9600, "8N1", ...]` |
|
||||
| 23 | SPRINKLER | Irrigation System | Система полива | array | `["main", {zones}]` |
|
||||
|
||||
---
|
||||
|
||||
@@ -61,7 +62,8 @@
|
||||
#define CH_COUNTER 20
|
||||
#define CH_HUMIDIFIER 21
|
||||
#define CH_MERCURY 22
|
||||
#define CH_MAX 22
|
||||
#define CH_SPRINKLER 23
|
||||
#define CH_MAX 23
|
||||
```
|
||||
|
||||
---
|
||||
@@ -305,9 +307,22 @@
|
||||
| **Flags** | Массив флагов (обычно [2,2,2,2,2,2]) |
|
||||
| **Timeout** | Таймаут опроса (мс) |
|
||||
|
||||
### CH_SPRINKLER (23) — Система полива
|
||||
|
||||
| Параметр | Значение |
|
||||
|----------|----------|
|
||||
| **Назначение** | Многозональная система автоматического полива |
|
||||
| **Конфигурация** | array `["device_name", {zones_config}]` |
|
||||
| **Зоны** | Независимое управление каждой зоной |
|
||||
| **Параметры зоны** | enabled (вкл/выкл), time (длит. полива), progress (прогресс), cycle (режим) |
|
||||
| **Команды** | ON, OFF, START_ZONE, STOP_ZONE, SCHEDULE |
|
||||
| **События** | Изменение состояния, завершение полива, ошибки |
|
||||
| **Интеграция** | MQTT топики для каждой зоны |
|
||||
| **Таймер** | Встроенные таймеры для автоматизации |
|
||||
|
||||
---
|
||||
|
||||
## Суффиксы (Suffixes)
|
||||
|
||||
|
||||
Из [item.h](../lighthub/item.h):
|
||||
|
||||
@@ -346,6 +361,7 @@
|
||||
| 13 (PID) | ✓ | ✓ | ✓ | - | - | - | - | - | - |
|
||||
| 14 (MBUS) | ✓ | ✓ | ✓ | - | - | - | - | - | - |
|
||||
| 16 (RELAYX) | ✓ | ✓ | ✓ | - | - | - | - | - | - |
|
||||
| 23 (SPRINKLER) | ✓ | ✓ | ✓ | - | - | - | - | - | - |
|
||||
| 17 (RGBWW) | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | - | - | ✓ |
|
||||
| 18 (MULTIVENT) | ✓ | ✓ | ✓ | - | - | - | ✓ | ✓ | - |
|
||||
| 20 (COUNTER) | - | ✓ | - | - | - | - | - | - | - |
|
||||
|
||||
Reference in New Issue
Block a user