LuatOS-SoC@Air101 V0004
В будущих версиях будет использоваться обозначение. Одна муравьинка слаба, но муравейник очень мощен. Надеемся, что всё больше разработчиков присоединится к проекту, чтобы вместе сделать LuatOS-SoC ещё лучше.
Air302_V0008.ec: версия без UI и CTIOT
Air302_V0008_heap.ec: LUAT_HEAP увеличен до 72 КБ, версия без UI и CTIOT
Air302_V0008_ui.ec: версия с UI
Air3002_V0008_ctiot.ec: версия с CTIOT
Прикрепленные прошивки включают базовые функции. Для активации других библиотек используйте SDK для самостоятельной компиляции. В случае возникновения вопросов присоединяйтесь к группе: 1061642968
LuatOS-SoC@Air103 V0003
Первый выпуск
Версионное описание:
LuatOS-SoC_V0003_AIR103_EINK.soc : версия EINK, без lvgl, u8g2, sdio
LuatOS-SoC_V0003_AIR103_LVGL.soc : версия LVGL, без eink, u8g2, sdio
LuatOS-SoC_V0003_AIR103_NOUI.soc : версия NOUI, без компонентов UI
LuatOS-SoC_V0003_AIR103_U8G2.soc : версия U8G2, без lvgl, eink, sdio
Формальный прошивочный файл Air101 V0001. Пожалуйста, используйте LuaTools версии 2.1.28 или выше для прошивки, не требуется добавление sys.lua.
В этом выпуске все библиотеки Lua встроены, нет дополнительных файлов Lua.
LuatOS официально переименован в LuatOS-SOC. Этот выпуск будет содержать бинарные файлы стабильно поддерживаемых BSP.
Отсутствие виртуального интерфейса AT, библиотеки ril, парсинга команд AT и обратного вызова, нет необходимости в постоянной перезапросе между системной очередью и пользовательской.
Изначально был создан с целью замены и превышения возможностей AT, обойдя SDK AT framework, реализован целый набор параллельных движков LuatOS engine.
Вызовы API более быстрые и эффективные, меньшее потребление памяти, более четкая логика, лучшая расширяемость.
local newval = val ^ 0xFF
local newval2 = val2 << 3
local val = 1 << 63
local val2 = 0xFFFFFFFF
Минимальные требования к памяти составляют всего 16КБ, предоставление 64КБ памяти достаточно для простых приложений.
На модулях Wi-Fi/NB-IoT с ограниченными ресурсами по умолчанию предоставляется 64КБ памяти, что также удовлетворяет потребность компактных приложений. В будущем планируется повышение использования памяти.
Не требуется сложной настройки, встроенные драйверы поддерживают размеры экранов от 1 до 2.9 дюймов по умолчанию. Большие размеры могут быть активированы путем самостоятельной сборки прошивки. Включено поддержка китайских шрифтов, обеспечивая комфортное отображение.
Эта версия V0005 является первой для модулей Cat.1, она включает общие функции периферийного оборудования и сетевые возможности, а также некоторые важные особенности:
По умолчанию 16КБ, максимум 128КБ, чтобы избежать переполнения UART в крайних случаях.
Регионы скриптов и OTA имеют по 256КБ каждый, первый предназначен для флэш-обновления, второй — для OTA. Без сложного парсинга AT, библиотеки Lua LuatOS очень малы, основная часть занимает пользовательские скрипты.
Планируется поддержка обновления через SD карту, следите за новостями.
Прошивка Air724 (RDA8910 серия) по умолчанию предоставляет 1.5МБ памяти для Lua VM, максимальная емкость одного длинного строки составляет 512КБ, что позволяет избегать переполнения памяти при конкатенации строк.
Хотя это немного нечистое решение (есть некоторый мусор), но преимущество заключается в высоких скоростях передачи данных (до 6М).
Следует за обновлениями SDK, улучшена библиотека ctiot.
Ожидаемые новые функции включают:
В настоящее время доступна только для прошивки Air640w, V0006 будет распространяться на все модули!
https://gitee.com/openLuat/vscode-luatos-debug
Высокопроизводительная C-стилевая библиотека буферизации, обеспечивающая гладкую работу с char[]
.
-- Создание zbuff
local buff = zbuff.create(1024) -- пустой
-- local buff = zbuff.create(1024, "123321456654") -- создание и заполнение существующего строки
-- Чтение и запись как в файлах
buff:write("123") -- запись данных, указатель перемещается назад
buff:seek(0, zbuff.SEEK_SET) -- установка указателя на указанную позицию
local str = buff:read(3) -- чтение последних трех байтов, содержимое является строкой, указатель также перемещается назад
-- Чтение и запись по типам данных
local n = buff:readInt8() -- поддерживает int8~int64, uint8~uint64, float32, double64
-- buff:writeInt8(0x32) -- также поддерживает запись вышеупомянутых целочисленных/плавающих чисел
-- Поддержка pack/unpack операций
local _, a, b, c = buff:unpack("IIH") -- поддерживает unpack декодирование
-- buff:pack("IIH", 0x1234, 0x4567, 0x12) -- также поддерживает pack упаковку
log.info("buff", str, n)
-- Число массива операций
buff:seek(0, zbuff.SEEK_SET) -- снова вернуться к началу
local b = buff[2] -- прочитать как массив, получить ASCII код, 0x32, обратите внимание, здесь используется стандарт C
buff[3] = 0x33 -- можно присвоить значение напрямую
Если нет сообщений о серьёзных багах, эта версия будет считаться официальной.
Прикреплены три предварительно скомпилированных варианта, отражающие различные требования.
Если эти версии всё ещё не удовлетворяют ваши потребности, вы можете использовать SDK для компиляции своей версии, что позволит вам добавлять или удалять Lua-библиотеки и настраивать размер памяти для Lua.
Это тестовая версия, не рекомендуется использовать её в производственной среде. Ваше участие поможет снизить количество ошибок в окончательной версии, мы ждём вашей обратной связи.
Основные изменения:
О библиотеке eInk:
Приложения содержат архив прошивки (для обычных пользователей) и SDK (для пользователей, которым требуется самостоятельная компиляция прошивки).
Спустя два месяца вышла версия V0004.
Основные изменения включают:
Описание файлов:
Различие между версией firmware для Wi-Fi и MCU:
Оба варианта используют аппаратуру Air640W (чип от Leidash W600) и могут взаимно заменять друг друга.
add: Возможность загрузки файлов через HTTP с примерами демонстрационного кода
add: Поддержка обновлений через воздух (OTA) с примерами демонстрационного кода
add: Поддержка установки параметров PSM и eDRX
add: Библиотека FS для получения информации о состоянии файловой системы
add: Библиотека UART для прямого записи данных в файл
fix: Устранение проблемы с mqtt.lua при отправке сообщений pub_msg
fix: Устранение проблем с печатью и форматированием чисел с плавающей запятой
fix: Устранение проблем с активацией режима pull-up/pull-down GPIO и триггером прерываний
fix: Устранение ошибок при чтении DS18B20 и добавление CRC-проверки
добавить: HTTP-скачивание файла, сопровождается демонстрационным примером
добавить: функциональность OTA, сопровождается демонстрационным примером
добавить: Поддержка установки параметров PSM и eDRX
добавить: SDK, работает вместе с исходным кодом LuatOS для независимой компиляции прошивки. Этот SDK не является C-SDK.
добавить: Расшифровка AES, демонстрация библиотеки шифрования, исправление ошибки утечки памяти
добавить: демо/psm_tcp, демонстрирует долгое TCP-соединение, расписание сердцебиения, быстрый вход в режим сна
добавить: библиотека fs, получает состояние использования файловой системы
добавить: библиотека ctiot и её демонстрация
добавить: библиотека spi и её демонстрация
добавить: поддержка пользователей, использующих функцию UART1 TX, стандартная функция командной строки
обновить: объединение базового SDK производителя v001.031.20200829
обновить: использование унифицированной реализации require
обновить: объединение базового SDK производителя v001.031.20200829 патч1
обновить: при скачивании раздела системы, также скачивать загрузчик
исправить: после обновления SDK, увеличение потребления энергии во время режима сна HIB
исправить: mqtt.lua нет ответа на сообщение pub_msg
исправить: проблема печати и форматирования десятичных чисел
исправить: неудача активации GPIO pull-up/pull-down, прерывание не срабатывает
исправить: неудача чтения ds18b20, добавлено проверка CRC
Обновление до кода версии LuatOS 20200921