Перейти к содержанию

Работа с конструктором прошивок

Для работы с программным обеспечением (прошивкой) для контроллеров Lavritech нужно прежде всего уяснить для себя принцип создания новых прошивок и загрузки их в контроллер.

Сами прошивки для контроллеров Lavritech (с тем или иным функционалом) создаются в специальном сервисе в интернете, т. н. «Конструкторе прошивок». Пользователь сам выбирает нужный ему перечень поддерживаемого оборудования и нужный ему набор функций из обширного списка предопределённых опций.

constructor

Все опции разделены на несколько категорий: «Сенсоры», «Сервисы», «Железо», «Системные» и т. д. Разумеется, программные компоненты (опции) должны соответствовать аппаратной конфигурации контроллера для которого создаётся прошивка. Например, бессмысленно включать в прошивку опцию «Часы DS3231», если микросхема часов реального времени DS3231 отсутствует в вашем контроллере.

Контроллеры Lavritech, заказанные с опцией комплектации прошивкой, поставляются с предустановленной и активированной («лицензионной») прошивкой, функциональный состав которой соответствует аппаратной конфигурации контроллера.

Обычно в такую прошивку входит поддержка следующих компонентов и опций:

  1. Сенсоры: 1-wire DS18B20, BME280, SHT21/SI7021.

  2. Сервисы: MQTT клиент, MDNS.

  3. Железо: АЦП ADS1115, GPIO MCP23017, GPIO MCP23008, Поддержка Ethernet, ModBus master, Lora,

  4. Системные: Время и NTP, I2C сканер, Поддержка календаря, Ручная установка времени, Web KEY, GPIO, Работа с прерываниями, Планировщик заданий, Настройки по умолчанию, Interpreter, Safe GPIO, Логические выражения, Экспорт/Импорт настроек.

  5. Дисплеи: OLED 128x64, Конструктор строк, Русский шрифт.

  6. Бета: Cloud wifi-iot.

Если заказанный вами контроллер содержит другое аппаратное обеспечение, то список предустановленных программных компонентов может отличаться от указанного выше «стандартного».

Создание новой прошивки

В случае если вы изменяете аппаратную составляющую контроллера, например добавляете новые компоненты и оборудование, вам может понадобиться изменить и его программную часть (прошивку).

Для этого вам нужно в конструкторе прошивок выбрать необходимые опции, поставив галочки напротив выбранных программных компонентов, а затем сделать дополнительные настройки каждого из компонентов, нажав на соответствующую «шестерёнку».

Дополнительные настройки компонентов могут содержать различные специфические опции для этих компонентов, такие, как адреса на шине, номера GPIO, количество чипов и т. п. Для примера, дополнительные настройки программного компонента GPIO MCP23017:

example

Здесь мы видим адрес MCP23017 на I2C шине (0x27), стартовый номер пула GPIO для этой микросхемы (200) и т. д. (см. подробнее в соответствующей статье этой документации).

Профили (прошивки)

Конфигурацию выбранных и настроенных программных опций нужно сохранить в виде «профиля» (или, что одно и то же, «прошивки»). Для этого нужно выбрать целевую платформу, в нашем случае это «ESP32S», версию SDK, в нашем случае это «SDK4.4» и дать какое-то понятное вам название прошивки (лучше это делать латинскими буквами и без пробелов).

options

Таким образом вы можете создавать любое нужное вам количество различных вариантов прошивки. Но нужно помнить, что загрузить в контроллер вы сможете только одну из этих прошивок и только в тот контроллер, на который вы имеете соответствующую лицензию (см. раздел этой документации о лицензировании). Другими словами, можно, например, создать десять прошивок и либо загрузить одну из них на «лицензионный» контроллер, либо загрузить их на десять контроллеров, но для этого нужно иметь десять лицензий.

Компиляция и загрузка прошивки

После того, как вы выбрали необходимые программные компоненты, предварительно их настроили (нажав на соответствующие «шестерёнки») и сохранили вашу прошивку в один из «профилей», вы можете непосредственно скомпилировать саму прошивку.

compil

Прошивка компилируется «на сервере» и там же остаётся храниться в скомпилированном виде. Для загрузки этой прошивки в контроллер можно воспользоваться несколькими способами. Можно «вручную» загрузить в контроллер прошивку при помощи какой-нибудь соответствующей утилиты, например «Flash Download Tool».

bin

Или воспользоваться веб-интерфейсом контроллера и выбрать в нём пункт «Firmware_update» — в этом случае обновлением прошивки будет заниматься сам контроллер.

update

Здесь можно выбрать скачанный с сервера конструктора прошивок BIN файл (см. выше) или нажать на надпись «Start OTA» и прошивка автоматически загрузится «по воздуху». Сам процесс прошивки занимает некоторое время (минуту — две) и важно дождаться его окончания, не прерывая ход процесса.

ata

После успешного обновления прошивки контроллер перезагрузится и начнёт работу с новой прошивкой.

Заключение

Таким образом вы можете создавать любое количество вариантов прошивки и (при наличии лицензии) сколько угодно раз обновлять её на своём контроллере, добавляя новые функции и изменяя набор уже действующих.

Связанные темы

Регистрация в сервисе
Раздел Сенсоры

Где купить

Купить оборудование Lavritech можно в официальном интернет-магазине.