跳转至

常见问题 - 2026-08-15

数据日期:2026-08-15

1. Relay模式是干啥的?

解答: Relay 模式是 Luatools 及 VSCode LuatOS 开发插件中,AI 编程助手请求大模型服务时的统一中转服务,主要作用:

  1. LLM API 代理:客户端不直接请求大模型接口,由 Relay 服务统一转发,API 密钥保存在服务端,不会下发到本地客户端;
  2. 合规过滤:对请求和回复内容做合规校验,拦截与 LuatOS 开发无关的话题;
  3. 使用统计:服务端记录会话日志,用于用量统计与服务质量分析。

客户端只需在工具中启用 Relay 模式即可,无需自行配置大模型 API Key;会话数据仅用于官方服务运营,不对外开放查询。

2. Vscode的luatos插件的所有用户的输入和输出,都存在数据库可供查询了吗?

解答: 插件经过 Relay 中转的会话数据会在服务端留存日志,主要用于使用量统计、问题排查和服务质量改进,属于官方内部运营数据,不对外提供任意查询入口,用户本人也无法检索他人或自己的历史会话。开发过程中如需留存自己的对话记录,请在本地编辑器侧自行保存。

3. 模组能在哥伦比亚使用吗?有什么要求?

解答: 目前合宙 4G 模组没有"全球通"型号,按频段分为国内版、欧亚版、北美版等,暂无一款型号可以完整覆盖南美各国频段。南美地区频段划分较复杂,需要按目标国家运营商的实际频段逐国匹配(此前南美项目调试过 Air780EEN、Air780EEU 等型号),哥伦比亚也需要先确认当地运营商使用的 LTE 频段,再对照模组规格书的频段表选型,并在当地做实网场测验证后才能批量出货。

建议步骤:1. 向哥伦比亚运营商(如 Claro、Movistar、Tigo)确认当地 LTE-FDD/TDD 频段;2. 对照合宙各型号规格书频段表选型;3. 购买对应型号核心板在当地实测注册、通话、数据业务;4. 确认当地入网认证要求。

海外频段与型号支持情况可参考合宙选型指南:https://docs.openluat.com/SelectionGuide/SelectionGuide/

4. 我想做一个聊天盒子,需要功能如下:1.通过4G和MQTT协议进行数据的传输 2.外部接2.8或者3.2的电容触摸屏。需要可以实现中文的输入 3.可以短时间的录音可以播放。帮我做一下选型。

解答: 该需求(4G + MQTT + 电容触摸屏 + 中文输入 + 录音播放)推荐选用 Air8000 系列多网融合 SoC 模组(如 Air8000A/U/D 等):单模组即集成 4G Cat.1、WiFi、蓝牙,LuatOS 固件原生支持 mqtt 核心库(MQTT 数据传输)、lcd/tp 核心库或 exlcd/extp 扩展库(LCD 显示与电容触摸,中文显示可用 hzfont 矢量字库)、audio/exaudio 音频库(录音与播放),适合带屏交互类终端,合宙也有配套的整机开发板和配件板可直接验证。

若项目以多媒体 UI 为主、4G 可外接,也可评估 Air8101(Wi-Fi/蓝牙多媒体 SoC,支持 airui 图形框架)搭配 Air780E 系列 4G 模组的方案。

选型依据与各系列能力对比见合宙官方选型指南:https://docs.openluat.com/SelectionGuide/SelectionGuide/ 也可将完整需求提交到合宙 AI 选型助手 air.luatos.com 获取针对性配置建议。

5. 支持通过加速度计唤醒设备吗?

解答: 支持,分两种情况:

  1. 使用内置 G-Sensor 的型号:Air780EGP/EGG、Air8000A/D/U/N/AB/DB 等型号内部集成了 DA221 三轴加速度传感器,运动中断在模组内部连接到 WAKEUP2 引脚。使用 exvib 扩展库(exvib.open(mode) 打开,支持微小震动/运动/跌倒三种检测模式)配置后,设备在 PSM+ 等低功耗状态下可被震动唤醒,无需额外接线。
  2. 其他型号外接加速度计:将加速度计的中断引脚接到模组的 WAKEUP 唤醒脚(可选 PWRKEY、WAKEUP0~WAKEUP6,具体支持情况依型号而定,详见 PSM+ 文档),在进入低功耗前配置好 GPIO 中断唤醒即可。

参考文档:exvib 震动检测库 https://docs.openluat.com/osapi/ext/exvib/ ;PSM+ 模式 GPIO 中断唤醒 https://docs.openluat.com/value/irtu/docs/psm/

6. EGP的G-Sensor的示例代码去哪里找呢?

解答: Air780EGP 内部集成了 DA221 三轴加速度传感器(G-Sensor),通过 I2C1 通信、WAKEUP2 接收运动中断,LuatOS 已封装为 exvib 扩展库,示例和资料获取方式:

  1. 扩展库文档(含完整示例代码):https://docs.openluat.com/osapi/ext/exvib/ ,核心接口仅 3 个:exvib.open(mode)(打开传感器,1=微小震动/2=运动检测/3=跌倒检测)、exvib.read_xyz()(读取三轴数据)、exvib.close();
  2. 低功耗项目 demo:LuatOS 代码仓库 module/Air780EPM/demo/lowpower/ 下的 prj 工程(如 prj_0_tcp_long、prj_1_mqtt_long 等),其中包含 Air780EGP/EGG 内置 G-Sensor 的上电控制(GPIO23 为 GNSS 备电和 Gsensor 电源开关)与震动唤醒使用示例;
  3. 代码仓库地址:https://gitee.com/openLuat/LuatOS/tree/master/module

7. 780EPM可以刷EPT的固件吗?

解答: 能刷,但是结果未知

8. 我的是Air8000U核心板,使用1S锂电池/3.8V从VBAT或板上电池座供电时,底面的拨动开关一定要拨到USB_ON,拨到USB_OFF模组完全不上电。但《Air8000核心板使用说明V2.2》第13页写测功耗时应拨USB_OFF,再从VBAT供电。请问我这块是否是新版PCB,USB_ON/OFF的实际功能有变更?

解答: 没变更,还是按照说明书操作

9. 请问 780EHM 和780EPM 同一张sim卡收短信的速度差距15秒左右?

解答: 检查天线、看一下snr,之前都是正常的放了几个月现在用就比EHM至少慢15秒,代码也是一样的

10. 请问 D9是什么呀?

解答: D9是sim卡的防静电芯片。合宙官方的板子和电路图也有。ESDA6V8AV5

11. 现场的模组需要在线升级,但在线升级需要重启模组,由于现场没有人员,有什么办法可以在线升级或重启。

解答: FOTA(远程升级)本身就是为"现场无人"设计的:模组收到升级指令后自动下载固件、校验并写入,完成后自动重启进入新版本,全程无需现场人员或人工断电。要点如下:

  1. 升级即重启:libfota/libfota2 升级成功后模组会自动软重启,不需要人工按复位;只要设备能联网并能访问升级服务器即可;
  2. 远程重启:即使不升级,也可通过你的业务服务器下发指令,在脚本里调用 rtos.reboot() 实现远程重启;
  3. 可靠性:差分升级带断点/校验机制,升级失败会回滚到原固件,不会变砖;建议配合 errDump 与升级结果上报,在平台侧确认每台设备升级状态;
  4. 弱网现场:设置合理的重试次数与重试间隔,避开业务高峰,确保供电稳定。

参考 FOTA 教程:https://docs.openluat.com/luatos_lesson/009_luatos_fota/ 。

12. 陆总,这款8782是不是已经有485接口了?

解答: 对。https://item.taobao.com/item.htm?id=1074922629077&mi_id=0000Z64x_B2NQOIV82pjXrY_FUcYRezeqGJvzPRr29tYrNQ&spm=a1z10.1-c-s.w4004-26165745742.2.255c11706uNXad&skuId=6289883931381 https://docs.openluat.com/air8782p/product/

13. 通过 getip 下发的 auth_key 是指的对应设备归属的对应项目的项目key吧?那通过这个 auth_key,是如何知道是哪个设备呢?

解答: 设备getip时,会通过IOT平台检查是否公司的设备,并获取到当前归属的项目。如果没有归属项目,那么就会给一个临时key(白名单项目Key)。设备后续将这个key作为excloud后续业务使用的key。通过auth_key是不能确定单个设备的,因为一个项目key下可能很多设备。这个key和设备临时绑定了,重新获取一次就给设备更新一次,所以当上传的时候就能根据这个key找到设备。

14. 现在试了,还是和昨天一样的问题。现在这个新域名,还支持用 unusedkey 这个 key 吗?

解答: 支持,新域名下 unusedkey 仍然可以正常使用。

原理说明: excloud 扩展库在调用 getip 接口时,请求报文里必须携带 key 字段,但该字段只是占位符,后台不会校验其内容——真正的设备密钥(64 字节 auth_key)是在 getip 的应答报文中返回给设备的。LuatOS 源码 script/libs/excloud.lua 中明确写死了占位逻辑:config.auth_key = "unusedkey",随后拼接成 unusedkey-设备ID[-muid] 作为 key 上报(源码注释原文:"最新版本,key已经没用……随便填写一个,后台不会去判断这个key")。最新版 excloud 文档(版本号 202609011645)也说明:getip 请求 key 构造不再覆盖用户配置的 auth_key,key 字段使用固定占位符 unusedkey-设备ID。所以无论域名怎么切换,只要走的是合宙公有云 getip 调度服务,unusedkey 这个占位写法始终有效。

排查建议: 换域名后仍有问题,原因不在 key,请按以下顺序排查:1. 看串口日志中 [excloud]getip响应 的 HTTP Code 和 Body,HTTP 非 200 多为网络/DNS/证书问题,Body 中 msg 不为 ok 时会直接给出服务器返回的错误原因;2. 确认设备已在 IOT 平台注册归属(未归属项目的设备会拿到白名单临时 key);3. 升级到最新版 excloud 扩展库和对应模组最新正式固件;4. 若使用自建私有云(use_getip = false),则不存在 getip 流程,必须在脚本中填入与服务端一致的 64 字节固定密钥,此时 unusedkey 不适用。

参考文档:excloud 云平台控制库 https://docs.openluat.com/osapi/ext/excloud/ ;AirCloud 协议介绍(KEY 来源与获取方式)https://docs.openluat.com/protocols/aircloud/

15. 如果 date_key 是字符串 f 的话,是啥意思?这是正常的吗?

解答: 这是示例,实际也是一串随机字符

16. auth_key是项目key吗?

解答: auth_key是项目key。这个key是数据上传时不同api接口对应的。

17. 现在代码里content-type用的什么?

解答: excloud 扩展库的 HTTP 请求 Content-Type 由 httpplus 库根据请求内容自动设置,分两种场景,无需用户手动指定:

  1. getip 调度请求(普通表单):使用 forms 键值对上报 key 和 type,不带文件,httpplus 自动设置为 application/x-www-form-urlencoded;charset=UTF-8(见 httpplus.lua:存在 forms 且不存在 files 时按 urlencoded 表单上传);
  2. 文件上传请求(图片/音频/运维日志上传到 getip 返回的 url):使用 multipart/form-data; boundary=----LuatOSFormBoundary<时间戳> 格式,其中文件段的 Content-Type 为 application/octet-stream,key 等普通字段仍为表单字段;走非 ZBUFF 路径时由 httpplus 的 files 参数自动拼装 multipart 报文。

要点提示: Content-Type 由库内部按"有 files 即 multipart、无 files 即 urlencoded"的规则自动生成,业务代码中不要手动覆盖该头部,否则 boundary 与报文体不匹配会导致服务端解析失败;库内其他与云平台交互的 JSON 接口(如 exapp、exremotefile)则统一使用 application/json。

参考文档:excloud 云平台控制库 https://docs.openluat.com/osapi/ext/excloud/

18. A8000D休眠状态下,中断唤醒WAKEUP3~WAKEUP5管脚使用gpio.setup()接口配置为输入模式时,在休眠状态下,如果第一个参数填的是gpio.WAKEUPx,x为WAKEUP号,此时不仅有输入功能,还有唤醒功能;还有WAKEUP0~2脚,只有这6个脚可以在休眠下唤醒。请确认一下,谢谢。

解答: 问AI,ai.luatos.com

19. 你们保证AI说的是对的吗?你们的资料不同的地方说法不一样。

解答: 我们的AI工具不是从互联网获取的知识,而是整个公司花费数年积累起来的文档数据库和代码demo,在合宙的AI工具 ai.luatos.com 上不存在通用AI幻觉问题。

20. AIR724 USB驱动谁能发一下给我?官网找不到了。

解答: Air724(如 Air724UG 等)的 USB 驱动可从合宙官方渠道获取,不必在第三方站点寻找:

  1. 官方 USB 驱动说明与下载入口:https://docs.openluat.com/common/usb_drv/ (含 Windows 驱动安装与"识别不到端口"的排查);
  2. Air724UG 产品资料页:https://docs.openluat.com/air724ug/ (资料下载区通常含驱动包和刷机工具);
  3. 安装注意:用可传数据的 USB 线、先装驱动再插设备;设备管理器中出现多个端口(含 Diag/AT/Modem)即正常。

若按上述步骤仍无法识别,把设备管理器截图和操作系统版本发到合宙官方企业微信群协助定位。

21. 旧版本怎么下载,新版本界面很乱。

解答: 旧版本不开放下载了,新版本用起来问题少

22. 865328065744160 和865328065743501 不小心设备从IOT平台删除了,要怎么添加回来?

解答: iot平台有添加设备的菜单,在“我的设备”里面。

23. 有没有温度2?有没有文档?哪里?

解答: 模组内部没有第二路温度通道,不存在"温度2"。LuatOS 的 adc 核心库只提供一路芯片内部温度,常量为 adc.CH_CPU(片内 Thermal Sensor,测温范围 -40°C~85°C,返回值单位为千分之一摄氏度,是芯片内部温度而非环境温度);特殊通道另有一个 adc.CH_VBAT 用于读主供电脚电压,与温度无关。Air780EXXX/Air8000 等型号的 4 个 AUXADC 通道(ADC0~ADC3)是外部模拟电压输入通路,可外接 NTC 热敏电阻等测温,但模组本身不再内置第二颗温度传感器。

如果需要第二路温度(如环境温度、电池温度),可外接传感器实现,LuatOS 均有现成库和 demo:

  1. NTC 热敏电阻:接 ADC0~ADC3 任一通道,经分压电路后用 adc.get() 读电压换算温度(硬件设计见对应型号产品手册"模数转换 ADC"章节,含 NTC 分压参考电路);
  2. DS18B20 单总线数字温度传感器:用 onewire 核心库 + sensor 库 sensor.ds18b20() 读取,支持多点组网,代码仓库 module/Air780EPM/demo/onewire/ 有完整 demo;
  3. I2C 温湿度传感器:SHT20/SHT30/DHT12 等,可用 i2c.readSHT30()、i2c.readDHT12() 或传感器扩展库读取,module/Air780EPM/demo/ 下有 i2c-sht20 例程;
  4. 合宙 AirSHT30 等温湿度传感器配件也有配套应用文档。

参考文档:adc 核心库(adc.CH_CPU 通道说明)https://docs.openluat.com/osapi/core/adc/ ;Air780EPM ADC 应用教程 https://docs.openluat.com/air780epm/luatos/app/driver/adc/ ;传感器开发总览(含温度传感器分类与库支持)https://docs.openluat.com/embedded/sensor/

24. 您好,我这边一直都找不到网络,能检测到电话卡,请问有可能是什么问题?我之前也是用这个电话卡的。

解答: 换个卡试试、换天线看看,有可能天线坏了找不到基站。用开发板做对比就知道是软件还是硬件问题。

25. Air780EGH处于关机状态时,下拉reset是不是不会开机?

解答: 是的,关机状态下下拉 RESET 不会开机,您的判断正确。

原理说明: Air780EGP/EGG/EGH 系列模组中,PWRKEY(PIN7)才是开机键,RESET(PIN15)只是系统硬复位脚、低有效,官方管脚文档明确两点:1. "RESET 是硬件重启,不是软件重启,也不是关机;RESET 只接受外部输入,模组软件无法直接操作 RESET"——即 RESET 的作用对象是已经上电运行的系统,拉低只会让运行中的模组复位重启;2. 开机只认 PWRKEY:PWRKEY 接地时芯片上电即开机;PWRKEY 不接地时,模组在关机状态下检测到 PWRKEY 下降沿才启动上电流程。关机状态下模组核心断电,RESET 脚没有可复位的逻辑,拉低它不产生开机时序。

设计建议: 1. 希望上电自动开机:把 PWRKEY 直接接地(或串不超过 10KΩ 的电阻接地,还能减小内部上拉到 VBAT 引起的漏电);2. 需要关机后还能重新开机:必须把 PWRKEY 引到按键或 MCU GPIO,通过拉低 PWRKEY 产生下降沿开机,不能用 RESET 代替;3. RESET 脚不用时悬空即可,但注意其内部上拉微弱,若经三极管/MOS 管连接,控制管截止漏电流需小于 0.5uA,必要时外加上拉电阻或 RC 滤波,防止电平被拉到 1.3V 以下造成异常复位。

参考文档:从零到一理解 780EGP/EGG/EGH——开机键 PWRKEY、复位键 RESET 章节 https://docs.openluat.com/air780egh/product/air780exxpins/

26. 量产固件必须是双数版本吗?用2048固件还是2047固件?

解答: 量产固件必须是双数版本,用2048固件,不要用2047。

27. 下载底层和脚本出问题,下脚本可以下进去。之前软件输出三个文件,里面没有这个(烧录到文件系统里面的文件)

解答: 资源文件(字体、图片、音频等需要烧录到模组文件系统的文件)不会被自动打包,必须在 Luatools 项目中手动添加后才会进入烧录列表;"下载脚本"能成功、"下载底层和脚本"出问题,通常是底层固件(CORE)选择或资源列表配置有误,按以下步骤操作:

  1. 补全烧录内容:在 Luatools 项目管理界面,"底层 Core"处选择对应型号的正式版内核固件(.soc 文件);在"增加脚本或资源文件"处,除脚本 .lua 外,把要烧录到文件系统的资源文件(或单独存放资源的文件夹)一并添加进列表——字体/图片等资源正是通过这里随固件一起烧录到文件系统分区的;
  2. 勾选"添加默认lib":否则脚本 require 扩展库时会提示缺少 xxx.lua;
  3. 先烧底层再烧脚本:首次烧录或更换过固件时,必须点"下载底层和脚本"(底层 core + 脚本列表一起烧);固件不变、只改脚本时才用"下载脚本";
  4. 下载失败的标准排查:删除 Luatools 目录下的 _temp 文件夹后重启 Luatools;更新到最新版 Luatools;换一根数据线;模组开机后长按 BOOT 键、点按一下复位键进入下载模式再点击下载;自己画板的机型确认 BOOT 脚电路正确;
  5. 量产场景:用 Luatools 生成量产文件时,注意项目打包选项"升级文件包含 core""升级文件包含脚本"按需勾选、"升级文件无资源文件"不要勾选,否则资源文件不会进包。

参考文档:LuaTools 工具教程 https://docs.openluat.com/common/Luatools/ ;Luatools 工具使用说明 https://docs.openluat.com/common/Luatools/ ;字体等资源烧录到文件系统的方法见 LuatOS 字体使用说明 https://docs.openluat.com/common/luatos_font_guide/

搜索