Инструменты пользователя

Инструменты сайта


как_lighthub_работает_с_файлом_конфигурации

Это старая версия документа!


Первое включение

По-умолчанию, контроллер получает динамический адрес локальной сети по DHCP При этом, он записывает его в энергонезависимую память. И если при очередном перезапуске, DHCP сервер не доступен - он будет использовать последний известный IP адрес.

Если надо определить статический адрес (а, также, GW, DNS, NetMask), это можно сделать при помощи команды ip в cli_интерфейс Адрес будет сохранен в энергонезависимую память контроллера.

При включении, контроллер сначала проверяет наличие записанного в памяти конфигурационного файла. (У нового контроллера, а также, после перезаливки прошивки, конфигурационный файл отсутствует (кроме mega2560, в случае этого контроллера, конфигурация не утрачивается в процессе перепрошивки)). Затем контроллер поднимает сетевые интерфейсы, подключается к интернету, идет на сайт lazyhome.ru и пытается скачать конфигурационный файл JSON для своего МАС-адреса. Для создания этого файла заходим на lazyhome.ru в свой аккаунт и на странице https://www.lazyhome.ru/portal создаем конфигурационный файл для своего контроллера, нажав кнопку «создать» и указав его mac_адрес Тогда контроллер при перезагрузке получит настройку и сможет начать работать в этой конфигурации.

Для того, чтобы настроить Контроллер умного дома LightHub также заходим на Личный Кабинет (после регистрации на сайте), Для того чтобы начать, можете просто использовать примеры https://www.lazyhome.ru/dokuwiki/doku.php?id=примеры_конфигураций, а затем доработать их по своему усмотрению

Далее, надо просто подключить контроллер к роутеру, имеющему выход в Интернет. После перезапуска, контроллер загрузит настройки с сайта lazyhome.ru.

Для того, чтобы быстро начать работу, этого достаточно.

В дальнейшем, Автоматическую загрузку конфига можно отменить при помощи команды

get OFF

в cli_интерфейс или через web интерфейс контроллера

Также, редактировать конфигурацию можно, зайдя в веб интерфейс на адрес контроллера по http через браузер (рекомендован firefox)

Сохранение настроек в постоянную память контроллера

По-умолчанию, успешно загруженный конфиг автоматически сохраняется в энергонезависимую память контроллера. После этого контроллер готов к автономной работе. При загрузке конфигурации проверяется наличие изменений - если в памяти сохранен тот же конфиг, что имеется на портале, повторная загрузка и сохранение не происходит.

Данное поведение можно изменить при помощи команды save в cli_интерфейс

save ON - включить автосохранение конфига (по умолчанию)
save OFF - выключить автосохранение конфига
save - сохранить текущий конфиг

Есть три способа подключения к контроллеру для управления сохранением конфига во встроенную память контроллера: по USB, через MQTT и через HTTP api. Рассмотрим их подробнее.

Подключение по USB

Подключаем контроллер USB кабелем к ноутбуку. Открываем эмулятор терминала (например для Макбука использую minicom, который устанавливается через homebrew). Для улучшения читаемости ответов контроллера в minicom нажимаем комбинацию Esc+U

$ minicom -D /dev/tty.usbmodem14201

Для windows можно использовать putty или терминал, входящий в среду разработки PlatfrmIO

Параметры подключения - 115200 бод, N-8-1

После подключения, контроллер отвечает:

Got IP address:192.168.88.44,  Default config server used: lazyhome.ru 
Config URI: http://lazyhome.ru/cnf/de-71-d5-9a-93-96.config.json                
HTTP Status code: 404                                                           
Config retrieving failed                                                        
Loading Config from EEPROM       No stored config 

Видим, что контроллер пытается считать конфиг для своего MAC-адреса de-71-d5-9a-93-96.config.json, и его там не находит (404 ошибка).

После того как мы сформировали конфиг на портале lazyhome.ru, контроллер нам ответит что все хорошо и сохранит конфиг.

Подключение по MQTT

Если контроллер уже успешно подключен к MQTT брокеру, то команду CLI можно направить в топик $command. см служебные_топики

Рабочий режим

During normal operation, controller:

  • Accepting incoming MQTT message flow and retrieving item name from topic name. For example, /myhome/in/item1 will control «item1»
  • Controlling items.
  • Most commands, accepted on INTOPIC passed throw to OUTTOPIC after interpretation. Interpretation is converting of high level commands like ON OFF HALT REST to low-level commands with real values. OUTTOPIC publishing uses «persistent» flag to allow retrieving recent status from MQTT broker after restart of controller
  • Polling: Normally, Modbus devices and 1-wire thermometers are polled with reasonable interval. Retrieved values are publishing to OUTTOPIC

Цветовая индикация режимов работы

Контроллер LightHub имеет трехцветный светодиод, который наглядно показывает текущий режим работы контроллера

  • красный - отсутствует подключение по локальной сети
  • желтый - контроллер подключен к локальной сети но не подключен к MQTT брокеру
  • зеленый - контроллер подключен к брокеру
  • вспышки синего - получены инструкции по MQTT
  • вспышки красного - ошибки в процессе работы (изучить отладотчный лог)
  • постоянное свечение - конфигурация не загружена
  • мигание с интервалом 2-3 секунды - конфигурация загружена и в работе

То есть, например, мигание красным цветом с интервалом 2-3 секунды означает, что контроллер отключен от локальной сети, но продолжает локальную работу по имеющемуся на борту файлу конфигурации

как_lighthub_работает_с_файлом_конфигурации.1697903711.txt.gz · Последнее изменение: 2023/10/21 18:55 — Admin