跳转至

Air1601 LuatOS 固件和 Demo

作者:陈媛媛 | 最后修改:2026-05-13

特别说明

Air1601 LuatOS 内存(RAM)说明;

ram总大小:16MB

用户可用ram:2MB左右Lua 内存+14MB左右系统内存

可通过代码准确的获取可用ram:

查询 Lua 虚拟机内存(默认) local total_lua, used_lua, max_used_lua = rtos.meminfo("lua")

查询系统内存 local total_sys, used_sys, max_used_sys = rtos.meminfo("sys")

详细说明见:LuatOS 内存(RAM)使用分析 - 合宙模组资料中心

一、最新版本固件

LuatOS-SoC_V1016_Air1601_101.soc

  1. add: nes, 添加支持nes模拟器

  2. add: airui, 支持获取win窗口标题和table单元的text信息

  3. add: airui, 添加table跳转功能

  4. add: airui, 键盘订阅添加回退键常量

  5. update: airui, 优化video组件为双缓冲减少copy复制时间

  6. update: airui, 支持多点触控,当前支持2点进行组件控制,最多订阅5点触控位置

  7. update: videoplayer, 优化内存拷贝;打开debug时打印当前每秒各个计算的耗时

  8. fix: airui, 重新创建键盘前先移除 IME 删除回调并清空 session/coordinator 悬挂指针

  9. fix: airui, 修复旧 keyboard 销毁后,仍有外部事件回调保留着 user_data=keyboard 的旧指针的问题

  10. fix: airui, 修复键盘中文选字框失效问题;修复部分键盘销毁逻辑

  11. fix: airui, 修复共享键盘 data->target 变成悬空指针,第二次打开弹窗时在解绑旧 target 回调处踩到已释放对象问题

  12. fix: airui, 修复键盘候选字面板有时消失的问题

  13. fix: airui, 修复键盘在没有打开预览框时候选区选字被当成外部点击收起键盘

通过luatools资源下载界面即可下载

以下为备用地址: https://cdn18.air32.cn:19443/files/Air1602/LuatOS_Air1602/

历史版本

LuatOS-SoC_V1014_Air1601_101.soc

  1. add: fft, 支持并默认开启fft库

  2. add: lcd, rgb支持 pclk 配置

  3. add: lcd, rgb添加自定义命令函数

  4. add: mreport, 添加遥测功能

  5. add: can, 添加支持can功能

  6. add: crypto,添加统一的签名/验签函数,添加密钥生成函数

  7. add: airui, 添加is_destroyed方法以检查组件是否被销毁

  8. add: airui, 增加图片内容适配模式设置功能,支持center、contain、cover和stretch选项

  9. fix: airui, 修复airui_switch_set_state 无论状态是否变化创建的时候底层都会发送 LV_EVENT_VALUE_CHANGED的问题

  10. update: audio,dac, 完善dac dma输出,以支持音频播放

  11. update: uart, 优化ramrun的uart接收,可以稳定支持6M

  12. update: usb, uvc加入图像最小长度判断,剔除部分错误图片

  13. update: lcd, rgb 去掉rst拉低控制,不然会导致屏幕一直黑屏

  14. fix: uart, 修复串口第二次打开会死机

  15. fix: fs, 修复写文件系统随机死机

  16. fix: i2c, 修复会扫到自己的从机地址

  17. fix: i2c, 从机地址默认不可以是0,会响应所有的主机

  18. fix: protobuff, 修复encode会失败

  19. fix: fota, 修复写入fota之后重启,读取出现对齐长度错误导致升级不成功

  20. fix: fota,http, 修复在fota升级过程中因为网络断开或其他外界因素导致http提前结束触发死机

  21. fix: errdump, 修复没有获取到唯一id导致上报不了iot平台

通过luatools资源下载界面即可下载

以下为备用地址: https://cdn18.air32.cn:19443/files/Air1601/LuatOS_Air1601/

Air1601 V1012 正式版

  1. add: videoplayer, 支持视频播放功能及其硬解码功能

  2. add: luatos,开启httpsrv和iotauth库

  3. add: airui, 优化pc模拟器界面超出屏幕时自动缩放到90%屏幕处;支持拖拽自动缩放画面

  4. add: airui, button增加get_text和set_disabled子方法

  5. add: airui, 增加刷新消息重试超时时间以支持画面刷新重试

  6. add: airui, 增加获取当前airui状态的接口"status"

  7. add: airui, 增加设置图片旋转中心点的子方法

  8. add: airui, 增加shape组件,当前支持直线、圆形、椭圆、矩形/圆角矩形绘制

  9. update: log, log波特率提升到6M

  10. update: log, 固件版本不应该出现硬件版本

  11. update: pins, 补全一下pins功能

  12. update: usb, cdc acm兼容sscom,但是需要sscom勾选RTS再打开

  13. update: 时钟所有项目都统一用外部晶振

  14. update: mcu, 唯一ID改成MAC

  15. update: airui, 仅在调试模式下记录未处理消息的重试信息

  16. update: airui, 所有组件的xywh位置自动向下取整

  17. fix: lcd, 修复pclk采样相位错位,导致像素错位,lcd显示图片有问题的情况

  18. fix: sys, timer有可能不能正确运行下一个定时器

  19. fix: airui, 使用LUAT_USE_AIRUI_DISPLAY_BUFFER_SIZE_DIVISOR配置airui的缓存画面为一整个屏幕,解决组件滑动时分离问题

  20. fix: airui, 组件采用共享缓存解决销毁组件被访问的问题和定位

  21. fix: airui, 修复键盘预览框在键盘被销毁时没有一起被销毁

  22. fix: airui, 修复键盘auto_hide失效的问题

  23. fix: airui, 通过seq方案部分修复ui刷新消息丢失的问题

  24. remove: airui, 彻底移除xml的支持

固件:LuatOS-SoC_V1010_Air1601.soc

脚本区代码空间:1024K

文件系统:文件系统3008KB

  1. add: 适配图片硬解码驱动

  2. add: usb, 支持usb host主机cdc_acm串口

  3. add: usb, 支持摄像头热插拔,启用和停止

  4. add: usb, uvc支持H264格式解析

  5. add: tp, 支持gt927触屏

  6. add: airui, 支持table插入行或者列; 支持跳转或者跑马灯两种自动滚动方式

  7. add: airui, 增加table组件支持样式设置; 增加或者移除一行或者一列

  8. add: airui, 增加button、dropdown、keyboard、table、tabview、win组件中字号任意大小的设置能力

  9. add: airui, 添加animimg组件

  10. add: airui, TabView组件支持获取标签页数量、添加新标签页和移除指定标签页的功能

  11. add: airui, table支持边框宽度、单元格文本对齐和垂直对齐属性设置

  12. add: airui, 支持lvgl原生旋转功能

  13. add: airui, 容器组件增加移动的接口

  14. add: miniz, 新增unzip函数,支持目录解压

  15. add: airui, 增加video组件,当前只支持mjpg解码

  16. add: airui, 给button、image、label增加移动的子方法

  17. add: airui, 增加spinner组件

  18. update: airui, 优化内存管理

  19. update: airui, 优化textarea代码布局

  20. update: airui, 调高分配缓存为1/2屏幕,能有效提高旋转屏幕刷新效率

  21. update: airui, 调整hzfont的默认缓存数量为1024

  22. update: aiui,log, 关闭airui日志系统,减少固件大小

  23. update: adc, 优化一下adc功能

  24. update: network,log, TLS握手失败的日志,改成hex值输出

  25. update: network,log, 当指定网卡未就绪时,打印一下日志

  26. update: websocket,log, 调试日志关闭

  27. update: dhcp,log, 隐藏ip4_dhcp_run的周期性日志

  28. update: miniz, unzip的目标路径,强制要求必须/结尾

  29. update: miniz, unzip解压文件时,将路径分割符一律替换成/,增强zip解压兼容性

  30. update: wdt, 之前WDT中断优先级没有调整到最高导致普通中断死循环后无法触发WDT,重启后默认重启原因临时改成WDT,现在不用了

  31. fix: airui, 修复spi屏幕上出现颜色反转问题

  32. fix: airui, 修复animimg组件play播放异常的问题

  33. fix: airui, 修复airui长时间计算时会导致真机没有时间喂狗死机的问题

  34. fix: airui, 修复键盘预览框光标无法被选择的问题

  35. fix: airui, 修复hw循环解码时,硬解码器中间没有释放的问题

  36. fix: usb, 解决hub反复拔插死机问题,优化cdc acm串口打开概率失败的问题

  37. fix: lcd, 修复中断死机问题

  38. fix: websocket,请求的headers改成一次性发出,改善对非标服务器的兼容性

固件:LuatOS-SoC_V1008_Air1601.soc

V1008固件更新说明 (2026-03-20)

  1. add: usb, 可以支持usb_hub了,并可以识别出摄像头以及相关信息。

  2. add: usb, usb host模式支持识别cdc acm虚拟串口

  3. add: airui, 支持jpg硬件解码

  4. add: airui, 添加win标题对齐方式配置支持

  5. add: airui, table组件增加行高设置功能,也支持单独设置列宽

  6. update: airui, 支持图片缓存,默认最大1MB缓存大小

  7. update: airui, jpg图片支持旋转、透明、缩放

  8. update: airui, 下拉框组件增加获取当前内容的子方法

  9. update: airui, 添加libjpeg-turbo支持用于PC模拟器的JPEG解码

  10. update: airui, 图表组件没有值时默认为空

  11. update: airui, wakeup支持配置是否唤醒后自动刷新

  12. update: airui, 键盘组件的选字候选框从5%高度提高到10%

  13. update: airui, 休眠时增加power_down_lcd参数控制是否关闭lcd电源

  14. update: airui, 更新hzfont设置字体大小的底层设计,同时增加button支持自定义字体和大小

  15. update: airui, 缓冲区大小调整为2*四分之一屏幕,减少内存占用

  16. update: airui, 将XML支持的配置移至LUAT_USE_AIRUI_XML宏下,作为可选配置

  17. update: lf, little_flash库, lf.getInfo(flash) 接口,添加擦除最小大小返回

  18. update: sfud, 同步更新 sfud.getInfo(flash) 接口,添加擦除最小大小返回

  19. update: dac, 优化adc读取

  20. fix: airui, 修复tabview回调函数参数index会始终为nil,而不是页面标签

  21. fix: airui, 修复二维码组件设置颜色和大小失效的问题

  22. fix: airui, 修复textarea组件处理text文本慢的问题

  23. fix: dac, adc切换通道后读数异常

固件:LuatOS-SoC_V1004_Air1601.soc

请使用LuaTools的资源下载器进行下载,备用下载地址:https://gitee.com/openLuat/LuatOS/releases/tag/v1004.air1601.release

V1004固件更新说明 (2026-02-28)

  1. add: i2c,收发总线添加空闲判断

  2. add: usb,usb虚拟串口ota功能

  3. add: airui, 添加键盘背景颜色配置和子方法设置支持

  4. add: airui, 添加容器组件边框颜色和宽度设置功能

  5. add: airui, 增加label支持颜色和不同字号的设置

  6. add: airui, bar组件支持进度条文字打印

  7. add: airui, 支持同一个键盘绑定多个输入框

  8. add: airui, Container组件的支持可选透明度,可使用颜色设置接口设置

  9. add: airui, 支持通过设置组件parent为窗口win来添加内容

  10. add: airui, 键盘模式设置时添加日志打印记录以便于观察是否设置正确

  11. add: airui, 添加lv_font_misans_16字体支持,字符范围为gb2312

  12. add: airui, 添加Chart组件实现

  13. add: airui, 增加airui.debug接口,用于调试airui性能

  14. add: airui, 增加获取AIRUI库版本号的接口

  15. change: usb,更新usb host驱动代码

  16. change: usb,增加class时,usb.HID_CM和usb.HID_KB互斥,只保留最后一个

  17. change: airui, 调整自动刷新周期至33ms,也就是每秒30帧

  18. change: airui, img图片组件拦截jpg图片设置透明度和大小缩放

  19. change: airui, 更改airui常量,去掉AIRUI_开头部分,减少重复

  20. change: airui, 更改airui刷新方式为定时刷新

  21. change: airui, 更新14和20号misans字符范围为gb2312,同时支持备用lvgl默认字体

  22. change: airui, 添加多个组件元类型定义,支持组件回调时使用self自引用

  23. change: airui, 修改luatos真机按键LVGL键值和sdl模拟器一致,在模块真机上面也能使用按键功能了

  24. fix: i2c,数据传输前需要确保总线是no busy的

  25. fix: pwm,arr psc计算有误,导致超过16bit

  26. fix: pwm,最大通道判断错误导致pwm3无法使用

  27. fix: airui, 修复加载hzfont字体时画面卡顿问题,同时添加hzfont调试统计功能,支持字符串渲染耗时统计并输出日志

  28. fix: airui, 修复切换按键中set_state子方法调用后死机问题

  29. fix: airui, 修复label设置大小后会影响其它组件字体的问题

  30. fix: airui, 修复键盘自动隐藏失败的问题

  31. fix: airui, 修复win组件点击关闭后关闭整个win而不是标题

固件:LuatOS-SoC_V1002_Air1601.soc

V1002固件更新说明 (2026-02-10)

  1. Air1601的初始正式版本

  2. 支持以下核心库:

(1) 合宙特有:AirUI、HZFont、Airlink

(2) 外设相关:uart/i2c/spi/adc/pwm/lcd/tp/ch390/elink/wdt/usb从机模式

(3) 网络相关:http/tcp/udp/mqtt/ftp/websocket/iperf/fota/netdrv

(4) 其他库:u8g2 英文以及中文12号字体/sd卡/nand flash/protobuf/miniz/fastlz/crypto/iconv/gmssl/rsa/json/zbuff/fskv/xxtea/.....

  1. 支持RGB565/RGB888/SPI接口LCD/支持触摸屏

  2. 脚本区大小:1MB

  3. 文件系统区大小:1MB

  4. 预期计划,后续将继续实现支持:

(1) 音频(dac)

(2) usb主机模式

(3) camera(支持100万像素拍照、扫码)

(4) 低功耗模式

请使用LuaTools的资源下载器进行下载

二、demo:LuatOS_Air1601_Air1602

三、Luatools 工具使用教程(点击此处,跳转阅读)

可以通过Luatools工具,对内核固件进行下载,步骤如下:

1.打开Luatools工具,点击左上角的 “账户” 按钮,点击 “打开资源下载”(直接打开luatools工具的时候,也会自动弹出)

2.在弹出的窗口中,选择您所需要的内核固件版本,点击 “开始下载”

3.下载完成后,会有提示,点击 “OK”

4.点击 “打开本地资源目录” ,按路径找到已经下载好的内核固件,