Files
2026-10-11 01:27:15 +03:00

6.3 KiB
Raw Permalink Blame History

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, что требует уточнения (в таблице стоит -/?).