{"release":{"tag":{"name":"v0005.release","path":"/openLuat/LuatOS/tags/v0005.release","tree_path":"/openLuat/LuatOS/tree/v0005.release","message":"","commit":{"id":"ad7d26c52a2aebcc3617cbc9042efa9ec9131ea8","short_id":"ad7d26c","title":"release: v0005","title_markdown":"release: v0005","description":"","description_markdown":"","message":"release: v0005\n","message_markdown":"release: v0005","detail_path":"/openLuat/LuatOS/commit/ad7d26c52a2aebcc3617cbc9042efa9ec9131ea8","commits_path":"/openLuat/LuatOS/commits/ad7d26c52a2aebcc3617cbc9042efa9ec9131ea8","tree_path":"/openLuat/LuatOS/tree/ad7d26c52a2aebcc3617cbc9042efa9ec9131ea8","author":{"name":"Wendal","email":"wendal1985@gmail.com","username":"wendal","user_path":"/wendal","enterprise_user_path":"/openLuat/dashboard/members/wendal","image_path":"https://foruda.gitee.com/avatar/1676895020100498345/4674_wendal_1578914274.png!avatar30","is_gitee_user":true,"is_enterprise_user":true,"widget_url":""},"committer":{"name":"Wendal","email":"wendal1985@gmail.com","username":"wendal","user_path":"/wendal","enterprise_user_path":"/openLuat/dashboard/members/wendal","image_path":"https://foruda.gitee.com/avatar/1676895020100498345/4674_wendal_1578914274.png!avatar30","is_gitee_user":true,"is_enterprise_user":true,"widget_url":""},"authored_date":"2021-03-28T21:17:40+08:00","committed_date":"2021-03-28T21:17:40+08:00","signature":null,"build_state":null},"archive_path":"/openLuat/LuatOS/repository/archive/v0005.release","signature":null},"operating":{"edit":false,"download":true,"destroy":false,"enterprise_forbid_zip":false},"release":{"title":"LuatOS V0005 for Cat.1/Nbiot/Wifi 都有了","path":"/openLuat/LuatOS/releases/tag/v0005.release","tag_path":"/openLuat/LuatOS/tree/v0005.release","project_id":7816002,"created_at":"2021-03-28T21:57:20+08:00","is_prerelease":false,"description":"\r\n# LuatOS V0005 发布了, Cat.1/NbIot/Wifi 都有了\r\n\r\n* Cat.1 -\u003E Air724,Air722/展锐RDA8910\r\n* NBIOT -\u003E Air302/移芯EC616\r\n* Wifi  -\u003E Air640W/联盛德W600\r\n\r\n# LuatOS固件特点\r\n\r\n### 完全抛弃AT的底层设计\r\n\r\n没有虚拟AT接口, 没有ril库, 没有AT命令的解析与回调, 不用在系统队列与用户队列中反复绕圈\r\n\r\n设计之初就秉着替代并超越AT的信仰, 绕过sdk的AT框架, 实现一整套与AT engine平行的LuatOS engine.\r\n\r\nAPI调用更快捷高效, 内存更省, 逻辑更清晰, 扩展性更好\r\n\r\n### 基于Lua 5.3, 支持原生位运算符\r\n\r\n```lua\r\nlocal newval = val ^ 0xFF\r\nlocal newval2 = val2 \u003C\u003C 3\r\n```\r\n\r\n### 数值类型扩展到64位, 支持更大的数据范围\r\n\r\n```lua\r\nlocal val = 1 \u003C\u003C 63\r\nlocal val2 = 0xFFFFFFFF\r\n```\r\n\r\n### 利用率更高的Lua专属内存\r\n\r\n最低内存需求仅16k, 提供64k内存足以满足低复杂度的应用.\r\n\r\n在资源紧缺的wifi/nbiot模块,默认提供64kb内存, 也能满足紧凑型应用的内存需求, 后续还有提高内存使用率的方案.\r\n\r\n### 内置墨水屏驱动\r\n\r\n无需复杂的调试,内置驱动从1寸到2.9寸均为默认支持, 更大尺寸可通过自行编译固件开启. 内置中文字体, 显示无忧.\r\n\r\n## Cat.1固件的额外特性\r\n\r\n本次发布的V0005是针对Cat.1模组的第一个版本,涵盖一般的外设功能和联网功能外,还有一些知道关注的特性\r\n\r\n### 可调整的串口缓冲区大小\r\n\r\n默认16k, 最高128k, 避免极端场景下uart出现overflow的可能性\r\n\r\n### 可回滚的脚本升级机制\r\n\r\n脚本区与脚本OTA区,均为256kb, 前者为线刷, 后者为OTA写入, 没有繁琐的AT解析, LuatOS提供的lua库文件很小,用户脚本占大头\r\n\r\n后续还支持SD卡升级,敬请期待\r\n\r\n### 连续性内存\r\n\r\nAir724(RDA8910系列)固件默认提供1.5mb的Lua VM独占内存, 最高可容纳512kb的单一长字符串,字符串拼接不再惧怕内存溢出.\r\n\r\n## NBIOT固件的额外更新\r\n\r\n### 释放uart0供用户使用\r\n\r\n虽然它不是很纯(有点脏数据),但胜在波特率可以很高很高(最高6M)\r\n\r\n### ctiot库优化\r\n\r\n紧跟sdk的升级, 对ctiot库进行改进\r\n\r\n\r\n## 那下个版本V0006, 会带来什么?\r\n\r\n预期会增加或实现的功能有:\r\n\r\n### Lua脚本调试\r\n\r\n当前仅Air640w固件得以实现, V0006将覆盖全部模块!!\r\n\r\nhttps://gitee.com/openLuat/vscode-luatos-debug\r\n\r\n### zbuff库\r\n\r\n高性能的C风格缓冲区库, 提供丝滑的`char[]`操作体验\r\n\r\n```lua\r\n-- 创建zbuff\r\nlocal buff = zbuff.create(1024) -- 空白的\r\n-- local buff = zbuff.create(1024, \"123321456654\") -- 创建,并填充一个已有字符串的内容\r\n\r\n-- 类file的读写操作\r\nbuff:write(\"123\") -- 写入数据, 指针相应地往后移动\r\nbuff:seek(0, zbuff.SEEK_SET) -- 把指针设置到指定位置\r\nlocal str = buff:read(3) -- 把刚才那3个字节读出来,内容是字符串,指针也往后移动了\r\n\r\n-- 按数据类型读写\r\nlocal n = buff:readInt8() -- 支持int8~int64,uint8~uint64,float32,double64\r\n-- buff:writeInt8(0x32)   -- 同时也支持写入上述整型/浮点数\r\n\r\n-- 支持pack/unpack操作\r\nlocal _, a, b, c = buff:unpack(\"IIH\") -- 支持unpack解码\r\n-- buff:pack(\"IIH\", 0x1234, 0x4567, 0x12) -- 也支持pack打包\r\nlog.info(\"buff\", str, n)\r\n\r\n-- 类数组操作\r\nbuff:seek(0, zbuff.SEEK_SET) -- 又回到开头\r\nlocal b = buff[2] -- 直接按数组来读取, 得到ASCII码, 0x32, 注意,这里按C的标准来\r\nbuff[3] = 0x33 -- 直接赋值可还行\r\n```\r\n\r\n### 还有很多想法,等待一步步实现\r\n\r\n* Air724固件的文件浏览器 - 像资源管理器那样操作模块的里面文件, 如何怎样的体验?\r\n* 云刷机 - 在页面编辑,按一下远程下载,模块自行下载脚本,自动开始运行, 很流畅呀\r\n* 压榨内存 - 既然code是固定的,那岂不是能放在flash上吗?那调试信息也可以嘛\r\n* spi flash也挂文件系统 - w25q挺便宜的呀, 扩容杠杠的\r\n\r\n\r\n\r\n## 版本列表\r\n\r\n* air302 72kb noui noctiot\r\n* air302 64kb disp/u8g2 ctiot\r\n* air302 64kb eink noctiot\r\n* air640w wifi\r\n* air640w wifi noui\r\n* air640w mcu\r\n* air724ug ALL\r\n","author":{"name":"Wendal","username":"wendal","path":"/wendal","avatar_url":"https://foruda.gitee.com/avatar/1676895020100498345/4674_wendal_1578914274.png!avatar30"},"attach_files":[{"download_url":"/openLuat/LuatOS/attach_files/649629/download/luatos_air640w_v0005.7z","name":"luatos_air640w_v0005.7z","cli_download_url":"https://gitee.com/openLuat/LuatOS/releases/download/v0005.release/luatos_air640w_v0005.7z","censor_failed":false,"censor_tip":null},{"download_url":"/openLuat/LuatOS/attach_files/649630/download/luatos_rda8910_v0005.7z","name":"luatos_rda8910_v0005.7z","cli_download_url":"https://gitee.com/openLuat/LuatOS/releases/download/v0005.release/luatos_rda8910_v0005.7z","censor_failed":false,"censor_tip":null},{"download_url":"/openLuat/LuatOS/attach_files/649631/download/luatos_air302_v0005_ram72k_noui_noctiot.zip","name":"luatos_air302_v0005_ram72k_noui_noctiot.zip","cli_download_url":"https://gitee.com/openLuat/LuatOS/releases/download/v0005.release/luatos_air302_v0005_ram72k_noui_noctiot.zip","censor_failed":false,"censor_tip":null},{"download_url":"/openLuat/LuatOS/attach_files/649633/download/luatos_air302_v0005_ram64_eink_noctiot.zip","name":"luatos_air302_v0005_ram64_eink_noctiot.zip","cli_download_url":"https://gitee.com/openLuat/LuatOS/releases/download/v0005.release/luatos_air302_v0005_ram64_eink_noctiot.zip","censor_failed":false,"censor_tip":null},{"download_url":"/openLuat/LuatOS/attach_files/649634/download/luatos_air302_v0005_ram64k.zip","name":"luatos_air302_v0005_ram64k.zip","cli_download_url":"https://gitee.com/openLuat/LuatOS/releases/download/v0005.release/luatos_air302_v0005_ram64k.zip","censor_failed":false,"censor_tip":null}],"zip_download_url":"/openLuat/LuatOS/releases/tag/v0005.release.zip","tar_download_url":"/openLuat/LuatOS/releases/tag/v0005.release.tar.gz"}}}