mirror of
https://github.com/anklimov/lighthub
synced 2026-10-28 11:15:00 +00:00
70 lines
6.3 KiB
Markdown
70 lines
6.3 KiB
Markdown
# LightHub на разном железе
|
||
|
||
> Источник: Wiki LightHub (lazyhome.ru), страница «lighthub\_на\_разном\_железе». Снапшот от 2026-10-02.
|
||
|
||
Прошивка может компилироваться и работать на следующих аппаратных платформах:
|
||
|
||
1. AVR Arduino MEGA 2560 - первая платформа, на которой была реализована. Прошивка оттестирована на этом железе. Но в настоящее время, уже не рекомендуется по причине ограниченной оперативной памяти. (не получится использовать всю периферию, но для небольших инсталляций подойдет)
|
||
|
||
2. Arduino DUE - в настоящее время, базовая платформа. Используется в контроллерах LightHub. Прошивка тщательно оттестирована на этом железе. Все новые функции изначально внедряются под эту платформу.
|
||
|
||
3. ESP8266 - Достаточно полнофункциональная стабильная сборка.
|
||
|
||
4. ESP32 - Достаточно полнофункциональная стабильная сборка.
|
||
|
||
5. NRF52840 - пилотная сборка, поддерживающая базовый функционал
|
||
|
||
6. STM32 - сборка с ограниченной функциональностью, является базовой для устройства LightSpot (минимальное LightHub устройство без IP стека, которое взаимодействует с внешним миром через полноценные устройства LightHub по шинне CAN)
|
||
|
||
Базовые возможности прошивки LightHUB поддерживаются на любом железе. К ним относится:
|
||
|
||
* Единообразное конфигурирование с использованием JSON
|
||
* Поддержка MQTT и интеграция, фактически, с любой системой Умного Дома, поддерживающей данный протокол, включая, сенсоры, выключатели, термостаты(теплые полы), кондиционеры.
|
||
* Поддержка всего расширенного набора команд, группы каналов, сохранение цвета/яркости и пр
|
||
* Восстановление состояния контроллера и каналов при перезапуске из MQTT
|
||
* Локальное управление каналами (даже при отсутствии сетевого соединения)
|
||
* Термостаты (до 20-ти, в пределах кол-ва дискретных выходов)
|
||
* Гибкая настройка работы с выключателями/кнопками, включая распознавание одинарного, двойного, тройного нажатия, длительного нажатия, кратковременного выключения
|
||
|
||
Возможности прошивки, зависящие от железа:
|
||
|
||
| Возможность | Mega2560 | DUE | ESP8266 | ESP32 | NRF52840 | STM32 | CONTROLLINO |
|
||
|---|---|---|---|---|---|---|---|
|
||
|DMX512 In|+|+|-|-|-|-|-|
|
||
|DMX512 Out|+|+|+|+|-|-|-|
|
||
|Artnet|+|+|+|-|?|?|+|
|
||
|1-Wire software|+|+|+|+|+|?|+|
|
||
|1-Wire DS2482-100|+|+|+|+|+|+|+|
|
||
|MCP23017 - I2C расширитель портов|+|+|+|?|?|?|?|
|
||
|Wiznet 5100 Ethernet|+|+|+|+|-|+|+|
|
||
|Wiznet 5500 Ethernet|+|+|+|+|+|+|-|
|
||
|Wi-Fi|-|-|+|+|-|-|-|
|
||
|Modbus Master|+|+|+|+|+|+|+|
|
||
|DHT-22|+|+|+|+|+|?|+|
|
||
|CCS811 & HDC1080 - сенсоры влажности и eCO2|+|+|+|+|+|?|+|
|
||
|Управление кондиционерами Haier через UART|+|+|+|+|+|+|+|
|
||
|Управление задвижками вентиляции с резистором ОС|+|+|+|+|?|?|+|
|
||
|SPI-LED адресные ленты|+|+|+|+|+|+|+|
|
||
|Watchdog|+|+|?|?|?|?|+|
|
||
|Сохранение конфигурации во FLASH|+|+|+|+|-|?|+|
|
||
|CAN|-|+|-|+|-|+|-|
|
||
|Дискретных входов||||||||
|
||
|Аналоговых входов||||||||
|
||
|Дискретных выходов||||||||
|
||
|PWM выходов||||||||
|
||
|OTA|+-Optiboot bootloader|+|+|+|-|-|-|
|
||
|Плавное управление DMX|-|+|-|-|-|-|-|
|
||
|
||
(Легенда: `+` — поддерживается, `-` — не поддерживается, `?` — не проверено / зависит от конкретной реализации.)
|
||
|
||
---
|
||
|
||
## Сверка с кодом (2026-10-02)
|
||
|
||
- Перечень платформ в тексте (Mega2560, DUE, ESP8266, ESP32, NRF52840, STM32) **совпадает** с окружениями `platformio.ini`: `mega2560`/`mega2560slim`/`mega2560-optiboot`/`mega2560-5100`, `due`/`lighthub21`, `esp8266-wifi`, `esp32-wifi`/`esp32c3-wifi`/`m5stack`, `nrf52840`, `stm32`/`stm32-enc2860`/`stm32-noip`, а также `controllino`.
|
||
- Текст не упоминает **ESP32-C3** (env `esp32c3-wifi`) и **M5Stack** (env `m5stack`, ESP32-based) — в таблице возможностей у них стоит колонка ESP32; фактически это отдельные сборки.
|
||
- **STM32 / LightSpot**: в `platformio.ini` есть `stm32-noip` — сборка без IP-стека (LightSpot), что соответствует описанию в п. 6.
|
||
- **CAN**: в таблице отмечен только для DUE и ESP32/STM32. В `lighthub21`/`due` используется библиотека `collin80/due_can` (см. `platformio.ini`), для ESP32 — `anklimov/arduino-CAN`, для STM32 (stm32-noip) — `pazi88/STM32_CAN`. Совпадает.
|
||
- **Wi-Fi** только у ESP8266/ESP32 — подтверждается наличием `WIFI_ENABLE`/`WiFiManager` только в ESP-окружениях.
|
||
- **Сохранение конфигурации во FLASH** не поддержано у NRF52840 в таблице — в env `nrf52840` используется `NRFFlashStorage`/`d00616/arduino-NVM`, что требует уточнения (в таблице стоит `-`/`?`).
|