常见问题 - 2026-08-21
数据日期:2026-08-21
1. Air780EHN有考虑做PTCRB认证吗?
解答: 结论:Air780EHN 目前没有 PTCRB 认证计划。Air780EHN 是面向北美频段的海外版 4G Cat.1 模组,PTCRB 是北美运营商入网认证,认证周期长、费用高,需以实际出货项目需求驱动;当前官方未规划该认证,也不建议客户在未取得认证的情况下宣称可直接进入北美运营商网络。如项目确实需要 PTCRB,可联系合宙商务(https://docs.openluat.com/)评估项目级定制的可行性,认证证书动态以 Air780EHN/EHU 资料页为准:https://docs.openluat.com/air780ehnehu/product/shouce/
2. AI语音聊天功能,AI的文字转成语音输出还是AI只输出文字?
解答: 结论:两种路线都可以,最省事的方式是直接用模组自带的 TTS(文字转语音)功能把 AI 返回的文字播出来,不需要云端合成音频。原理:AI 大模型只输出文字,模组通过 exaudio 扩展库的 TTS 接口在本地把文字合成为语音播放。可操作方式:①TTS 方式——调用 exaudio.play_tts(text, callback) 或 exaudio.play_start 配置 TTS 播放,当前仅支持中文 TTS,参考 https://docs.openluat.com/osapi/ext/exaudio/ 及音频 demo(如 Air780EPM 的 https://docs.openluat.com/air780epm/luatos/app/common/audio/ );②流式音频方式——若 AI 服务返回 MP3/PCM 音频流,可通过 exaudio.play_stream_write() 喂入 PCM 流播放(MP3 需先用 codec 解码为 PCM)。注意播放音频时不能进入飞行模式,且需外接音频功放(PA)才有声音输出。
3. excloud扩展库需要100K吗?
解答: 结论:excloud 扩展库没有固定的“100K”门槛说法,实际占用空间以 Luatools 生成量产文件时的报告为准。原理:扩展库会和业务脚本一起编译进脚本区,不同固件脚本区/文件系统容量不同(例如新固件有脚本区 1M 字节、文件系统 168K 的版本)。查看方法:在 Luatools 中把项目“调试信息”改为“无”,点击“生成量产文件”,工具会输出脚本和文件系统实际占用大小;excloud 源文件本身已有几十 KB,加上业务代码后务必确认不超过所选固件的脚本区容量。excloud 库文档见 https://docs.openluat.com/osapi/ext/excloud/ ;若空间不足,可换用大脚本区固件(如 19/119 号固件)或精简脚本。
4. 设备固件名有空格导致远程升级失败,能否强制不允许固件名有空格?
解答: 结论:工具侧没有“强制禁止空格”的开关,固件名(升级包文件名)必须由制作者保证不含空格、中文等特殊字符,这是 FOTA 升级成功的必要条件。原因:升级请求中的 URL/文件名若带空格,HTTP 请求路径会被截断或非法编码,升级服务器返回错误(如 HTTP 400),设备下载不到升级包。可操作规范:①在合宙 IoT 平台或自建服务器上传升级包时,文件名只使用英文字母、数字、下划线、点和短横线,例如 Air780EPM_V2048_001.bin,禁止空格;②脚本中 VERSION 版本号按 “XXX.YYY.ZZZ” 三段格式定义;③自建服务器(libfota2 自定义升级服务器方案)还要确保下载链接 URL Encode 正确。FOTA 流程参考 https://docs.openluat.com/air780epm/luatos/app/ota/fota/ 与 https://docs.openluat.com/air780epm/luatos/app/ota/fota3rd/ 。④已经上传了带空格的包,删除后用规范文件名重新生成量产文件、重新制作差分包并上传即可。
5. 模组编不出来IP地址,有没有对应的IMEI?
解答: 结论:模组获取不到 IP 与 IMEI 号没有对应关系,IMEI 是模组出厂全球唯一标识,可直接在模组标签或 Luatools 日志中读取,不依赖网络。经核实,以下 IMEI 对应的是 Air780E 系列模组:868909073555222、865650046085367、867713075850024、863121077090595、867920070824793、860761079970410、868488071861528。排查“编不出 IP”的方向:①确认 SIM 卡未欠费、已开通数据业务、天线接好;②用 mobile 库查询注网状态(mobile.getStatus()/信号值 mobile.getRssi()),确认是否成功注册网络并激活 PDP;③检查 APN 配置是否与运营商匹配;④抓取 Luatools 底层日志定位是注网失败、PDP 激活失败还是 DNS 问题,日志抓取方法参考 https://docs.openluat.com/common/howtouselog/ 。
6. FOTA流程里设备是否存在使用备用ip备用域名之类的流程?
解答: 结论:FOTA 流程本身没有内置“备用 IP / 备用域名”自动切换机制,升级服务器地址只有一个。原理:libfota2 扩展库初始化时 opts.url 只接收一个升级地址字符串(用合宙 IoT 平台时该地址内置、无需填写;自建服务器时由用户指定单个 URL),设备请求该地址获取升级信息,连接失败回调返回 result=1(连接失败)、2(url 错误)、3(服务器断开)等,库内部不会自动尝试备用地址。可操作建议:①若担心单点服务器可靠性,应在服务器侧做冗余(域名解析多 IP、负载均衡、CDN),设备侧固定用域名访问即可;②也可在脚本中自行实现容错——fota 回调返回失败后,切换到第二个备用 URL 再次请求升级;③DNS 解析异常的场景可配合 httpdns 扩展库(https://docs.openluat.com/osapi/ext/httpdns/)提升域名解析成功率。库说明见 https://docs.openluat.com/osapi/ext/libfota2/ ,自建服务器方案见 https://docs.openluat.com/air780epm/luatos/app/ota/fota3rd/ 。
7. Luatools3.4.5提示自解压文件无法创建,是什么原因?
解答: 结论:该提示是 Luatools 启动烧录时调用的底层刷机子程序在释放临时文件(自解压)阶段创建文件失败,几乎都出在电脑环境侧,与模组本身无关。原因:Luatools 运行时会把烧录内核释放到工作目录的临时文件夹,若该目录所在磁盘被加密(如企业电脑的 BitLocker/加密软件)、被杀毒软件或安全管控拦截、系统组件过旧或没有写入权限,自解压就会失败。可按顺序排查:①以管理员身份运行 Luatools;②临时关闭杀毒软件、安全卫士和企业加密管控软件后重试;③删除 Luatools 目录下的 _temp 临时文件夹后重新启动工具;④把 Luatools 整体放到磁盘根目录等无中文、无权限限制的路径下运行;⑤更新 Windows 系统补丁;⑥在另一台电脑上安装同一版本 Luatools 对比验证,即可确认是否为原电脑环境问题。Luatools 使用与下载见 https://docs.openluat.com/common/Luatools/ 。
8. 1601下载速度慢和网络有关系吗?
解答: 结论:下载(FOTA 升级)速度慢与网络环境强相关,设备侧、运营商网络、升级服务器三端任何一段带宽小或时延大都可能导致慢。原因:升级文件是设备通过 HTTP/HTTPS 从服务器下载的,下载速率取决于现场信号质量(RSSI/信噪比)、运营商基站负载、服务器出口带宽以及丢包重传情况。排查步骤:①先确认现场信号,用 mobile.getRssi() 查看信号强度,弱信号场景先调整天线或更换安装位置;②若使用合宙 IoT 平台仍慢,抓取 Luatools 底层日志查看下载过程的网络交互;③若使用自建服务器,在服务器侧和网络链路上抓包分析(带宽、TCP 窗口、重传),或更换服务器出口/接入点对比测试;④用同一张 SIM 卡在信号良好的环境复测,排除个别现场弱覆盖。日志抓取方法见 https://docs.openluat.com/common/howtouselog/ 。
9. iot网站查不到升级日志,但设备请求升级服务器并收到了400返回,是什么原因?
解答: 结论:设备收到 HTTP 400 表示升级请求到达了服务器但请求内容非法,合宙 IoT 平台因此查不到升级记录;最常见原因就是升级包文件名(固件名)含空格、中文等非法字符,导致请求 URL 非法。处理步骤:①登录 IoT 平台检查已上传升级包的文件名,若含空格/中文,删除该升级包;②将文件名改为仅含英文字母、数字、下划线、点和短横线(如 Air780EPM_V2048_001.bin),重新生成量产文件、重新制作差分包并上传;③确认脚本中 VERSION 版本号为 “XXX.YYY.ZZZ” 三段格式;④修正后让设备重新发起升级请求,平台即可正常记录升级日志。FOTA 流程见 https://docs.openluat.com/air780epm/luatos/app/ota/fota/ ,文件名与版本号规范见 https://docs.openluat.com/air780epm/luatos/app/ota/fota3rd/ 。
10. pm.lastReson API接口还没有针对8101描述,目前是什么状态?
解答: 结论:pm.lastReson() 接口在 Air8101 上可以调用,但返回值定义与 Air700/Air780/Air8000 系列不同,目前通用 pm 库文档主要描述了 Air700/Air780/Air8000(四个返回值 a,b,c,d)和 Air72x/Air820(三个返回值)两类规则,Air8101 的专属开机原因表以对应型号文档后续补充为准,不建议直接套用 780 系列的 c 值含义。可操作方法:①在脚本开头加 local a,b,c,d = pm.lastReson() 并 log.info("本次开机原因:", a,b,c,d),用 Luatools 抓取实际上电、复位、看门狗重启时的打印值,建立该型号的复位原因对照;②Air8101 频繁异常重启时,配合 errDump 异常日志上报 demo 定位(该 demo 明确指出 poweron reason 0 且频繁重启多为供电不足,需改用直流稳压电源对 VBAT 4V 或 VIN 5V 供电);③看门狗机制参考 wdt 库文档,Air8101 硬件看门狗由内核固件自动开启、默认超时 8 秒。接口文档见 https://docs.openluat.com/osapi/core/pm/ ,异常日志上报见 https://docs.openluat.com/air8101/luatos/app/base/errdump/ 。
11. 临时780EGP可以用yh2712a的版本今天可以发吗?
解答: 结论:可以发布,包含 YHM2712A 充电管理支持的 Air780EPM 固件版本已提供。下载地址:https://devsnap.luatos.com/air780epm/V2049/V2049_111/ 。说明:该版本为带 YHM2712A 充电管理芯片驱动支持的验证版本,烧录后配合 exs_yhm2712a 扩展库(require "exs_yhm2712a")即可读取充电状态,库说明见 https://docs.openluat.com/osapi/ext/charger/exs_yhm2712a/ 。项目量产前建议在正式发布固件上回归测试充电与业务逻辑。
12. NAT只允许配置1次,之后配置都是没用的吗?
解答: 结论:USB 网卡模式(RNDIS/ECM,含 NAT 配置)一旦开启过,就不能在开机运行中直接切换,需要改配置后重启才生效。原因:NAT/USB 网卡类型属于 mobile.CONF_USB_ETHERNET 网络配置项,该配置只能在飞行模式(射频未打开)下设置,且配置会被写入 fskv 持久化,模组启动时读取生效;运行中反复修改不会即时作用。可操作方法:①通过 Luatools 重新勾选所需 USB 网卡模式并烧录配置(0x01 RNDIS、0x03 RNDIS+NAT、0x05 ECM、0x07 ECM+NAT);②或在脚本飞行模式下调用配置接口写入后 pm.reboot() 重启,重启后新配置生效。相关说明见 https://docs.openluat.com/osapi/core/mobile/ 。
13. 先配置为0x03再切换0x01,NAT开关不生效是什么原因?
解答: 结论:这是旧版本固件在 USB 网卡模式(如先配 0x03 RNDIS+NAT 再切 0x01 RNDIS)切换时 NAT 标志未正确清除/更新的固件缺陷,已在 V2049 版本修复。处理方法:①将模组固件升级到 V2049 及以后版本(Air780EPM 固件历史版本下载见 https://docs.openluat.com/air780epm/luatos/firmware/780epm_version/ );②升级后在飞行模式下重新设置目标 USB 网卡模式并重启生效;③如升级后仍不生效,烧录时勾选清除 fskv/文件系统后重新配置,避免旧配置残留。配置项含义参考 https://docs.openluat.com/osapi/core/mobile/ 。
14. Docs测试账号登录不了,手机登录不上,PC端显示在线但非真在线,链接不上。
解答: 结论:这是 Docs(合宙文档站)测试账号登录态异常或账号失效导致,更换可用测试账号即可。操作方法:①使用文档站提供的最新公共测试账号登录(账号 12345671 / 12345670,密码 Air.234567);②PC 端显示“在线”但无法连接属于假在线,先退出登录、清理浏览器缓存或换浏览器后重新登录;③若你的设备已归属到自己的 IoT 账号下,可提供设备 IMEI 联系合宙开通专属测试账号;④脚本示例中的默认账号 100000 也可用于联调测试。若仍无法登录,提供账号和操作截图走合宙官方支持渠道反馈。
15. 8000A开发板换固件后SIP不成功,拨号后上位机闪退,而且4G卡插了会死机。
解答: 结论:该现象为 SIP 语音 demo 与内核固件版本不匹配导致,需使用与 SIP demo 配套的 113 号内核固件,并按官方 SIP 文档的音频/网络配置验证。操作步骤:①烧录 113 号内核固件及对应 SIP demo 脚本;②参考 Air8000 SIP 通话文档第 4.1 节配置 https://docs.openluat.com/air8000/luatos/app/multimedia/sip/ ,确保麦克风、喇叭(外接功放 PA)和 4G 天线连接正确;③先用手机端 Linphone App 与模组注册到同一 SIP 服务器进行互拨测试,排除上位机软件问题;④插 4G 卡死机的现象在更换正确固件后一并验证,若仍死机重点排查供电电流是否充足。SIP 协议库说明见 https://docs.openluat.com/osapi/ext/exsip/ 。
16. Luatools如何下载扩展库?下载后烧录还是提示缺少库文件。
解答: 结论:扩展库(如 libfota2、exaudio 等)需要先在 Luatools 的资源/扩展库管理界面下载到本地,再回到烧录界面把库文件随项目一起烧录,仅下载不烧录运行时仍会报缺少库文件。操作步骤:①在 Luatools 对应型号的资源/库管理中找到所需扩展库并下载;②回到项目管理/烧录界面,确认该库文件已被加入项目文件列表(与 main.lua 同批);③烧录时建议勾选“清除文件系统/清除 kv”后重新下载,避免旧文件残留;④烧录后若仍提示缺少库,核对 require 的库名与实际库文件名是否一致、固件是否为支持该库的版本。Luatools 操作见 https://docs.openluat.com/common/Luatools/ 。
17. 下载失败提示内部错误,详情请查看日志,一直失败怎么办?
解答: 结论:“内部错误、详情请查看日志”多为正常下载模式进不去导致,改用强制下载(boot)模式烧录基本可以解决。原理:强制下载模式让模组上电即停在 bootrom,跳过用户脚本直接等待烧录,可绕过脚本异常、串口占用、握手失败等问题。操作步骤见 https://docs.openluat.com/common/howtodown/ :①断电,按住 BOOT 键(或短接 BOOT 测试点)再上电/按复位,使模组进入强制下载模式;②Luatools 选择正确型号和固件文件;③烧录时勾选清除文件系统和 kv 后点下载;④松开 BOOT 键等待烧录完成;⑤逐条对照文档检查串口驱动、USB 线(用数据线非充电线)、供电。若仍失败,保存 Luatools 日志通过合宙官方支持渠道反馈。
18. 有没有简单已有的可以WIFI、SIP通话固件?
解答: 结论:没有“一个固件同时开箱即用支持 WiFi + SIP 通话”的成品固件,需要分别烧录对应 demo;SIP 通话与 WiFi 连接可在 Air8000/Air8201 系列(带 WiFi 芯片、支持音频)上组合实现。说明:①SIP 通话基于 exsip 扩展库,官方提供 Air8000 的 SIP demo(https://docs.openluat.com/air8000/luatos/app/multimedia/sip/ ),需外接音频功放(PA)、麦克风、喇叭,并注册到 SIP 服务器;②WiFi 连接基于 wlan 库,Air8000/Air8201 支持 WiFi STA 联网(仅 2.4G),网络通道 demo 见 netdrv_wifi 相关脚本;③将 SIP demo 的网络通道改为 WiFi 网卡(netdrv_wifi)即可实现“走 WiFi 的 SIP 通话”;Air8201 支持 SIP 通话(广播式语音对讲不支持),但视频通话暂无方案、仅支持视频推流。选型见 https://docs.openluat.com/SelectionGuide/SelectionGuide/ 。
19. 8000开发板WiFi扫不出来,屏幕只做了假的事例。
解答: 结论:开发板 WiFi 扫不到热点,绝大多数是 WiFi 模组/天线焊接不良导致,该案例通过重新补焊后解决。原因与排查:①Air8000A 的 WiFi 芯片为独立芯片,焊接虚焊/连锡时主控能初始化但扫描不到任何热点;②注意 airlink 或 WiFi 初始化返回成功只代表协议栈启动,不等于射频已经正常工作——若扫描等待超过 100ms 仍无任何热点结果,基本可判定为焊接或硬件问题;③处理方法:对 WiFi 模组及周边元件重新补焊、检查有无连锡,确认 WiFi 天线(IPEX/板载天线)连接可靠;④排除焊接后仍扫不到,再确认固件支持 WiFi 且代码中使用 wlan.scan() 扫描,仅支持 wifiscan 的型号只能扫描不能 STA 连接。WiFi 接口见 https://docs.openluat.com/osapi/core/wlan/ 。
20. Air8000A的FOTA怎么生成差分包?用两个bin文件吗?
解答: 结论:Air8000A 的 FOTA 差分包不是手工拿两个 bin 文件拼接,而是用 Luatools 分别对“旧版本量产文件”和“新版本量产文件”生成升级产物,再由 Luatools/合宙平台基于这两套量产文件自动制作差分包。操作步骤:①先用旧脚本版本+旧 core 固件在 Luatools 中“生成量产文件”(此时为设备已在跑的版本);②修改脚本版本号(VERSION 按 A.B.C 三段规则递增)和/或升级 core 版本后,再次“生成量产文件”,产物在 Luatools 根目录“SOC 量产及远程升级文件\Air8000”目录下;③在合宙 IoT 平台新建升级任务时上传新旧两个量产文件,平台自动生成差分包并下发;若用自建服务器,则按 fota3rd 文档在 Luatools 中制作差分/全量包后自行托管。注意:不同后缀固件(如 _1 与 _2)分区不同,不能互相升级;含 core 升级必须同后缀。文档见 https://docs.openluat.com/air8000/luatos/app/ota/fota/ 与 https://docs.openluat.com/air8000/luatos/app/ota/fota3rd/ 。
21. Air780EPM模组进入休眠模式时的功耗是多大?
解答: 结论:Air780EPM 支持常规、低功耗(PRO)、PSM+ 三种电源模式,休眠功耗以 PSM+ 模式最低。实测数据(Air780EPM 核心板、3.8V 供电、插物联网卡):PSM+ 模式下待机电流约 3~12uA 为深睡底流;官方 demo 项目统计 5 分钟总平均电流约 283uA(含周期性唤醒联网)。若使用内含 GNSS+Gsensor 的版本,GNSS、Gsensor 合计约 30uA;内含 Audio Codec 的版本 Audio Codec 约 45uA。说明:低功耗(PRO)模式代码仍在运行、维持网络保活,平均电流明显高于 PSM+;PSM+ 模式下代码停跑,仅 dtimer/UART/PWR_KEY/WAKEUP 等可唤醒。测量需断开 USB 供电、改用外部稳压电源接 VBAT,用功耗分析仪(如 Air9000P)观测。完整功耗项目与数值见 https://docs.openluat.com/air780epm/luatos/app/lowpower/sleep/ 。
22. Air780EHU版本有band的测试报告吗?
解答: 结论:Air780EHU 支持的频段以官方频段表为准,频段相关的认证/测试资料可在 Air780EHN/EHU 资料页查询。操作:①打开 https://docs.openluat.com/air780ehnehu/product/shouce/ 查阅手册与证书(含型号核准等);②频段清单见 https://docs.openluat.com/air780ehnehu/product/air780ehufreq.md ,Air780EHU 支持 B1/B3/B5/B7/B8/B20/B28/B38/B40/B41;③若项目需要运营商特定的 band 测试报告或认证证书,在该资料页“证书/认证”分类下载,资料页未覆盖的报告可联系合宙商务提供。
23. Air780EHU版本可以支持澳大利亚和新西兰国家吗?是否有ubuntu18.04系统驱动?
解答: 结论:Air780EHU 支持的频段可覆盖澳大利亚、新西兰主流 4G 网络;Linux(含 Ubuntu 18.04)无需专用驱动。说明:①频段方面,Air780EHU 支持 B1/B3/B5/B7/B8/B20/B28/B38/B40/B41(见 https://docs.openluat.com/air780ehnehu/product/air780ehufreq.md ),澳新三大运营商(Telstra/Optus/Vodafone)4G 主力频段为 B3/B7/B28,B1/B8 也有覆盖,频段匹配可入网;建议落地前用目标运营商 SIM 卡实测注网。②驱动方面,模组通过 USB 枚举为标准串口设备(Linux 内核 option/usbserial 驱动自动加载为 /dev/ttyUSB),Ubuntu 18.04 内核自带该驱动,无需额外安装;若使用 USB 网卡(RNDIS/ECM),Linux 也自带 cdc_ether/rndis_host 驱动。排查:插 USB 后用 lsusb、ls /dev/ttyUSB 确认枚举,未识别时检查内核 option 驱动是否包含模组 VID/PID 或升级内核。资料见 https://docs.openluat.com/air780ehnehu/product/shouce/ 。
24. 24年买的air8000核心板下载helloworld下不进去是什么原因?
解答: 结论:核心板能连机但 helloworld 不运行,通常是只烧了内核固件没烧脚本,或旧文件系统/kv 残留导致,按两点同时处理即可。原因:LuatOS 设备需要“内核固件(core)+ 脚本文件”两部分,单独烧内核开机没有业务脚本;文件系统/kv 旧数据也可能干扰首次运行。操作:①在 Luatools 中同时选择与核心板型号匹配的内核固件和 helloworld 脚本文件一起下载;②烧录界面勾选“清除文件系统”和“清除 kv”后再点下载;③确认 Luatools 为最新版、选对型号、USB 线为数据线;④完成后打开串口日志看到 helloworld 打印即正常。仍失败则保存 Luatools 烧录界面截图和底层日志(https://docs.openluat.com/common/howtodown/ )联系合宙官方支持渠道。
25. AIR8000W芯片下载程序,A电脑正常但B电脑下载不了,且B电脑下载过的板子再也无法下载,IO口乱跳,是什么问题?
解答: 结论:A 电脑正常说明板子和固件本身没问题,问题出在 B 电脑环境;而“B 电脑下载过的板子之后也无法下载、IO 口乱跳”,高度怀疑 B 电脑 USB 口带电异常/接线错误导致板子进入异常状态(非芯片物理损坏多为可恢复)。排查步骤:①B 电脑换 USB 口、换数据线、删掉 Luatools 目录 _temp 并以管理员运行,关闭杀毒软件,确认设备管理器中串口枚举正常;②测量 B 电脑 USB 供电是否异常(过压/纹波大),避免用前面板 USB 或劣质 HUB;③“无法下载的板子”用强制下载(boot)模式恢复:按住 BOOT 上电,Luatools 勾选清除文件系统/kv 重新烧录(https://docs.openluat.com/common/howtodown/ );④IO 口乱跳多为供电不稳或程序未跑起来,用稳压电源对 VBAT/VIN 独立供电后再烧录;⑤恢复后回到 A 电脑验证板子正常,即可定位是 B 电脑 USB 环境问题。
26. 有没有旧版Luatools 3.4.2或更低版本?新版烧录有问题。
解答: 结论:Luatools 官方持续维护的是最新版本,建议优先排查新版烧录问题,而不是回退旧版;旧版本不做长期分发。新版烧录异常的处理:①删除 Luatools 目录下的 _temp 临时文件夹后重新启动工具(历史常见问题的标准处理方式);②以管理员身份运行、关闭杀毒软件、把工具放到无中文无空格路径;③用强制下载(boot)模式烧录,按 https://docs.openluat.com/common/howtodown/ 逐条核对;④更新 USB 转串口驱动、更换数据线和 USB 口。Luatools 最新版及使用说明见 https://docs.openluat.com/common/Luatools/ 。如确属新版工具缺陷,保存 Luatools 日志通过合宙官方支持渠道反馈,会随新版本修复。
27. 烧录时如果没有boot按钮,烧录过程会在准备好之后弹出串口,怎么解决?
解答: 结论:没有板载 BOOT 按键时,需要把模组的 BOOT 脚引出到一个按键或测试点,烧录时拉低 BOOT 再上电即可进入强制下载模式,避免正常运行后串口被用户脚本占用而“弹开”。原因:Luatools 在“准备好”后会让模组重启进 bootrom,若没有硬件 BOOT 触发,模组直接进了用户脚本,串口随即被应用接管,导致连接断开。操作:①在产品板上把 BOOT 引脚引出,接一个按键到地(量产可放测试点,用镊子短接);②烧录时按住 BOOT 键上电/复位,模组进入下载模式后再松开;③在 Luatools 选好固件下载。强制下载的完整操作见 https://docs.openluat.com/common/howtodown/ 。
28. iot.luatos.com的aircloud open_api/aircloud/list_by_tags如何鉴权授权?
解答: 结论:AirCloud 开放 API 已有官方接口文档,/aircloud/list_by_tags(按标签查询设备列表)等接口的鉴权方式以文档为准。鉴权要点:①调用开放 API 需要在合宙 IoT 平台(iot.luatos.com)获取项目的鉴权信息(如用户/项目 id 与 api_key/token),请求时按文档要求在 HTTP 头或参数中携带;②请求路径、参数和返回字段严格按官方文档 aircloud_api 说明构造;③确保设备已归属到对应项目且标签(tags)已正确配置,否则查询为空。接口协议与鉴权字段详见官方文档 https://docs.openluat.com/protocols/aircloud_api/aircloud_api.md 。若文档中未列出你需要的字段或接口,提供具体需求通过合宙官方支持渠道确认开放范围。
29. Air780EGT需要IO口3.3V,是默认电平3.3V吗?
解答: 结论:是的,Air780EGT 的 GPIO 高电平默认就是 3.3V,无需额外配置即可对接 3.3V 外设。原理:合宙支持二次开发的 4G 模组绝大多数默认 IO 电平为 3.3V,可通过 pm.ioVol(pm.IOVOL_ALL_GPIO, 3300) 配置所有 GPIO 的高电平电压,可调范围为 1650~2000mV、2650~3400mV(步进 50mV),常用档位 1.8V/2.8V/3.3V。说明:注意不要把需要 1.8V 电平的外设直接接 3.3V IO;Air8000 系列全系仅支持 3.3V 不可改。接口说明见 https://docs.openluat.com/osapi/core/pm/ 。
30. 宠物追踪器irtu例子里蓝牙绑定用的什么蓝牙工具?air8201g烧录正常但aircloud查看上报数据还是昨天的factory程序日期。
解答: 结论:iRTU 宠物追踪器的蓝牙绑定/参数配置通过 iRTU 网页配置平台完成(测试环境 iot_test.openluat.com,正式环境为合宙 IoT 平台);“aircloud 仍显示昨天 factory 程序日期”是设备还在运行出厂 demo 或新配置未生效,需重新下发定位版参数并让设备重启加载。操作步骤:①登录 iRTU 配置平台,找到对应设备(按 IMEI);②把项目参数重新设置并选择“定位版”配置(含蓝牙绑定、定位上报);③提交配置后设备会拉取新参数并重启,重启后运行的就是新业务而非 factory 出厂程序;④确认设备连接的平台环境与查看的 aircloud 环境一致(测试/正式不要混用),等待设备上报一帧新数据后再看日期是否更新。iRTU 配置说明见 https://docs.openluat.com/value/irtu/state/ 。
31. 能不能防止别人重写程序到板子中?
解答: 结论:LuatOS 模组不提供“禁止他人重新烧录”的硬件读保护/加密锁功能,拿到物理板子的人仍可通过 BOOT 强制下载模式重写程序。可行的软防护:①业务脚本与云端通信使用设备级密钥(一机一密),即使固件被复制,没有合法密钥也无法接入你的平台;②关键算法/鉴权放在云端,设备端不存敏感明文;③产品结构上对 BOOT 测试点/调试串口做物理遮挡或灌胶,提高拆机重烧门槛;④量产烧录后关闭不必要的调试输出。这些措施能保护业务安全,但不能从物理上绝对阻止重写。
32. AT模块进入PSM+后通过UART发任何字符都会唤醒模块吗?干扰字符也会唤醒吗?
解答: 结论:会。AT 固件进入 PSM+ 后,通过 UART 收到任意数据(任意波特率的串口数据,包括干扰/乱数字符)都会触发唤醒,模组不区分内容是否为合法 AT 指令。原理:PSM+ 下 UART1 RX 作为唤醒源,硬件层检测到串口数据沿即唤醒,数据内容不参与判断。注意:①“唤醒”不等于“退出 PSM+ 联网”——仅串口唤醒后模组并不能直接联网/连服务器,必须真正退出 PSM+ 才能联网;②退出 PSM+ 的三种方式:拉低 DTR、拉高 VBUS、发送指令 AT+POWERMODE="CLOSE"(之后需发 AT+POWERMODE="PSM+" 才会重新进入);③若现场总线上有干扰导致频繁误唤醒,建议用 DTR/VBUS 硬件信号控制唤醒状态,或在总线上做隔离/上拉,避免噪声字符触发。详见 AT 低功耗文档 https://docs.openluat.com/atmozu/product/command/lowpower/ 。
33. 进不了下载模式,按文档步骤试了好多次都不行。
解答: 结论:进不了下载模式多为触发时序、串口占用或外设干扰导致,按强制下载流程逐项排查基本都能恢复。操作步骤(参考 https://docs.openluat.com/common/howtodown/ ):①先拔掉 SIM 卡、断开不必要的外设,排除外设拉低通信脚的干扰;②更新到最新版 Luatools;③断电状态下按住 BOOT 键不放(或短接 BOOT 测试点),再上电/按复位,保持 1~2 秒后松开,使模组停在 bootrom;④确认 USB 转串口驱动正常、设备管理器能看到端口、USB 线为数据线;⑤换一个 USB 口或换电脑、换线对比;⑥烧录时勾选清除文件系统和 kv。仍无法进入时,保存 Luatools 完整日志和设备管理器端口截图,通过合宙官方支持渠道反馈。
34. NAS Event 1 Reject 65535是什么错误?
解答: 结论:NAS Event 1 Reject(附着/注网被网络侧拒绝)且 cause 为 65535(0xFFFF,表示非标准/未解析原因值),说明模组在 NAS(非接入层)附着注册时被运营商网络拒绝,问题通常在 SIM 卡/运营商侧或射频环境,而非脚本逻辑。排查步骤:①先换一张确认正常的手机卡(同运营商和不同运营商各一张)测试,若换卡正常则为原 SIM 卡问题(欠费停机、未开通物联网数据业务、机卡绑定/APN 限制、卡被运营商限制),联系卡商核查;②确认 SIM 卡已插好、卡座无虚焊、天线连接可靠、现场信号良好(mobile.getRssi());③抓取 Luatools 底层日志,找到 Reject 前的 attach request 与运营商返回的标准 cause(如 #3 非法 UE、#6 非法 ME、#13 拒绝等),65535 多为模组对厂商私有原因值的兜底显示;④确认固件为最新版本,排除旧版本协议栈兼容问题;⑤若所有卡都被拒,排查是否为定制频段/海外卡频段不匹配。日志抓取见 https://docs.openluat.com/common/howtouselog/ 。
35. 烧录时报网络错误,怎么解决?
解答: 结论:烧录时“网络错误”多为电脑与模组之间的下载链路异常(串口不稳定、供电不足、固件/文件系统残留),烧录时做“双清”(清除文件系统 + 清除 kv)可解决大部分由旧数据引起的失败。操作:①在 Luatools 烧录界面勾选“清除文件系统”和“清除 kv(fskv)”后再下载;②使用 USB 数据线(非充电线)并直连电脑 USB 口,避开劣质 HUB;③若模组由外部供电,确保供电电流充足;④仍失败改用强制下载(boot)模式烧录(https://docs.openluat.com/common/howtodown/ );⑤删除 Luatools 目录 _temp 后重试。持续报错请保存 Luatools 日志反馈合宙官方支持渠道。
36. GPS早上能定位,过会搜不到星,代码没动过,怎么排查?
解答: 结论:代码未改动、出现“能定位一段时间后又搜不到星”的现象,问题基本在天线、供电或定位环境,而非软件。排查步骤:①抓取 GNSS 原始 NMEA 日志(exgnss 库可输出 GGA/GSV/RMC),观察可见卫星数 GSV 和载噪比 C/N0 变化,判断是完全失星还是弱信号;②拍摄设备实际安装环境照片,重点拍 GNSS 天线位置、朝向、上方遮挡(金属壳、贴金属膜玻璃、靠近发热/干扰源);③有源天线确认天线供电(GNSS_VDD)正常、馈线无虚焊、天线地铺完整;④用同一设备到空旷露天环境复测,若露天正常则为安装环境遮挡/多径;⑤确认供电电压稳定,GNSS 工作瞬间电流较大,供电跌落会导致重启失锁;⑥高温时段失星还要排查天线附近温升导致的性能劣化。GNSS 接口见 https://docs.openluat.com/osapi/ext/exgnss/ 。
37. 1602的LCD_B0、LCD_B2、LCD_R1可以用作普通GPIO控制开关量输入输出吗?
解答: 结论:可以。LCD_B0、LCD_B2、LCD_R1 这类 LCD 数据/控制引脚在不使用 LCD 屏时,可作为普通 GPIO 做开关量输入/输出,前提是该引脚在 GPIO 复用表中支持 GPIO 功能且没有被其它外设占用。操作:①查阅 Air1602 的管脚复用表(硬件手册),确认这几个引脚对应的 GPIO 编号及是否标注可作普通 GPIO;②软件中用 gpio.setup(pin, mode) 按输出/输入模式初始化,输出用 gpio.set()/gpio.get() 控制电平;③注意这些引脚默认电平和驱动能力与其它 GPIO 一致(默认 3.3V 域),若外部信号为 5V 需加电平转换/限流;④确保初始化时没有启用 LCD/lcd 驱动占用这些脚。引脚定义见对应型号硬件手册 https://docs.openluat.com/ 对应产品页。
38. AIR1601的功耗超过50mA是正常的吗?1601有低功耗模式吧?
解答: 结论:Air1601 是带 WiFi/屏幕驱动的高性能应用处理器,运行时整机电流几十到上百 mA(如点亮大屏、WiFi 工作时峰值到 200mA 量级)属正常现象;Air1601 没有面向电池场景的 PSM+ 极低功耗模式。说明:①该类 SoC 定位是大屏/网关类常供电产品,没有 4G 模组那种微安级 PSM+ 深睡机制;②若需降低整机平均功耗,可在应用层做降载:不用 WiFi 时关闭 WiFi、降低背光亮度/空闲熄屏、降低 CPU 主频、空闲时进入系统睡眠;③若项目是电池供电、要求微安级休眠,请选支持 PSM+ 的 4G 模组(如 Air780EPM,PSM+ 待机微安级),选型见 https://docs.openluat.com/SelectionGuide/SelectionGuide/ 。
39. ntp.lua提供的功能在国外使用没有按本地时间返回,正常吗?
解答: 结论:正常。NTP(socket.sntp())只同步 UTC 世界标准时间,本身不下发时区信息,模组无法从 NTP 得知所在时区;因此在国外按本地时间显示时,需要应用层自行做时区换算。原因与处理:①NTP 服务器不识别设备地理位置,返回的是 UTC 时间戳;②而基站授时(mobile.syncTime,默认开启)会附带运营商下发的时区,若设备在国外注册到当地网络,系统时区可能被设成当地时区,与你期望的北京时间不一致。解决方法:①以 UTC 为基准,在代码里固定按目标时区换算(北京时间 = UTC+8),用 os.date("!*t") 取 UTC 结构再 +8 小时处理;②或调用 socket.sntp() 后自行设置时区偏移,统一用本地格式输出;③若不希望基站时区干扰,可用 mobile.syncTime(false) 关闭基站授时,只用 NTP 后自行管理时区。时间同步原理见 https://docs.openluat.com/common/time_sync/ 与 https://docs.openluat.com/osapi/core/socket/ 。
40. 795UG的脚本ntp功能在国外使用校准的时间还是国外的。
解答: 结论:这是时区问题不是 NTP 故障。Air795UG(Air72x/Air795 系列)在国外注册当地网络后,基站授时下发的是当地时区,而 NTP 只提供 UTC 时间,最终显示的“校准后时间”会跟随当地时区,看起来是“国外时间”。处理方法:①若业务统一使用北京时间,在代码里以 UTC 为基准固定加 8 小时(os.date("!*t") 取 UTC 再 +8)后显示与上报;②关闭基站自动授时(mobile.syncTime(false)),只用 socket.sntp() 同步 UTC,再由程序自行加时区偏移;③注意 Air795UG 为 Air72x 系列,IO 电平配置等个别接口与 780 系列不同,但时间同步逻辑一致。时间同步说明见 https://docs.openluat.com/common/time_sync/ 。
41. 通过模块485上传数据平台能显示,但平台下发的485这边输出不了,怎么回事?
解答: 结论:485 上传正常说明串口发送链路和网络上行没问题,平台下发收不到/485 端无输出,问题集中在“下行数据接收—485 方向控制—输出”这一段,最常见是 485 收发方向控制(RE/DE)处理不对或平台下发通道/格式不匹配。排查步骤:①确认 485 方向脚:半双工 485 接收时方向脚必须处于接收态(低),若代码一直把 DE 拉高为发送态,则收不到任何下行数据;用 exmodbus/uart 时检查方向 GPIO 配置是否正确(Air8000 用 uart11/12 时 OE/方向脚必须选 GPIO 编号大于 128 的 WGPIO);②抓串口确认平台下发数据是否真的到达模组(订阅 uart receive,先不发 485,看能否收到平台下行),收不到则是平台侧通道(TCP/MQTT topic/RTU 数据流配置)问题;③核对波特率、校验位、485 转 TTL 接线(A/B 是否接反)以及终端电阻;④Modbus 场景确认从机地址/功能码、平台下发报文是否符合 modbus 帧格式,方向脚切换时序(转向时间)是否足够。iRTU 免开发固件配置 485 转向脚见 https://docs.openluat.com/value/irtu/docs/uart/ ,exmodbus 库见 https://docs.openluat.com/osapi/ext/exmodbus/ 。
42. 设备频繁接收到IP_READY和IP_LOSE订阅消息,是什么原因?
解答: 结论:IP_READY 与 IP_LOSE 频繁交替,表示 4G 数据链路反复建立又断开(PDP 不断去激活/重激活),属于网络连接不稳定,不是业务代码的消息处理问题。常见原因:①SIM 卡问题——欠费、流量用尽、物联网卡被运营商限制/机卡绑定、接触不良;②信号质量差——现场弱覆盖、信噪比低、天线接触不良,链路保活失败被网络踢掉;③运营商基站负载高或当地基站与模组频段匹配不好(如缺少对应 TDD/FDD 频段);④供电不足导致射频工作时重启掉线。排查步骤:①用 mobile.getStatus() 看注册状态、mobile.getRssi() 看信号强度;②换一张确认正常的手机卡/不同运营商卡对比;③检查天线、卡座焊接与供电能力;④抓取 Luatools 底层日志,定位 IP_LOSE 前是注网失败、PDP 去激活还是射频异常;⑤确认固件为最新版本。日志方法见 https://docs.openluat.com/common/howtouselog/ 。
43. 7月13号提出的飞行模式BUG修复发布新固件了吗?
解答: 结论:是的,7 月 13 日反馈的飞行模式相关问题已在 V2048 版本固件中修复并发布。处理方法:①将模组固件升级到 V2048 及以后版本(Air780EPM 历史固件下载见 https://docs.openluat.com/air780epm/luatos/firmware/780epm_version/ ,Air780EHM 见 https://docs.openluat.com/air780epm/luatos/firmware/780ehm_version/ );②升级后按原飞行模式进出(mobile 库飞行模式接口)逻辑回归验证;③升级固件时注意同后缀固件才能 FOTA,跨后缀需整包烧录。
44. Air8201G-LM支持wifi扫描吧?但是不带wifi定位库的?
解答: 结论:Air8201G/Air8201H 支持 WiFi 扫描(天线与 4G 共用,4G 关闭时可单独开启 WiFi 扫描);WiFi 定位不是模组本地内置库直接出坐标,而是扫描到周围热点 MAC/信号强度后,通过合宙 LBS/WiFi 定位服务(airlbs 扩展库 + iot 平台开通的 id/key)在云端解算位置。说明:①WiFi 扫描能力用 wlan 库的 init/scan/scanResult(该类模组仅支持 wifiscan,不支持 STA 连接);②WiFi/LBS 定位需烧录 airlbs 示例 demo(https://gitee.com/openLuat/LuatOS/tree/master/module/Air8201/demo/airlbs ),调用 airlbs.request 把扫描结果上传定位服务换取坐标,属于付费/开通服务,不是本地离线库;③因此“带不带 WiFi 定位库”取决于是否集成 airlbs 并开通服务。定位 demo 文档见 https://docs.openluat.com/air8201/software/8201G/common/lbswifi/ 。
45. i2c错误是什么意思?没有外接i2c设备。
解答: 结论:没有外接 I²C 设备却报 I²C 错误,通常是模组内部已挂在 I²C 总线上的板载芯片通信异常——常见为三轴加速度计(g-sensor)或其他内置 I²C 外设初始化/读取失败,多为焊接问题。排查步骤:①确认板载 I²C 设备清单(如 g-sensor),单独烧录 gsensor/vibration 官方 demo 测试,若 demo 也报错则与业务代码无关;②重点检查该 I²C 芯片及其上拉电阻的焊接,排查虚焊、连锡(相邻 SDA/SCL 短接)、焊球短路;③用万用表/示波器量 SDA、SCL 上拉电平与波形,确认总线没被拉死;④确认 I²C 引脚号与硬件一致,没有把 I²C 脚复用成了 GPIO。修好焊接后单独 demo 正常,再合入业务即可。
46. 1602模组开发板触摸屏中断引脚和以太网中断引脚都接到GPIO51(WAKEUP),可以使用其他GPIO吗?
解答: 结论:可以。触摸屏中断和以太网中断这类普通外部中断,不一定要接在 GPIO51(WAKEUP)上,可改接到其它支持中断输入的 GPIO。说明:①WAKEUP 脚的特殊性在于低功耗/休眠下也能作为唤醒源,如果这两个中断需要在休眠时唤醒系统,才必须接到具备唤醒功能的脚;常规运行下的中断用任意可用 GPIO 即可;②改接后在代码里把中断引脚号改为实际接线的 GPIO,用 gpio.setup(pin, cb, gpio.PULLUP, gpio.FALLING) 等方式注册中断;③触摸屏若用 I²C/SPI 协议,仅中断脚可换,协议数据脚仍需对应控制器引脚;④接线前查阅 Air1602 管脚复用表,确认所选 GPIO 未被其它功能占用。
47. MQTT最近有更新吗?遗嘱消息发不出来,用EMQX测试的。
解答: 结论:MQTT 遗嘱(LWT)发不出来,多为遗嘱参数配置或连接断开方式不符合 MQTT 协议要求,建议直接以官方 mqtt demo 为基准配置遗嘱并复测。原因:遗嘱消息只有在客户端“异常断开”(网络掉线、心跳超时被 Broker 踢掉、设备掉电)时才由 Broker 代发;客户端正常 DISCONNECT 下线不会发遗嘱。排查步骤:①用官方 mqtt demo,在 mqtt.connect 配置中正确填写 will_topic、will_payload、will_qos(建议 will_qos=1);②确认设备是“异常断开”触发遗嘱——可直接断电或断网测试,而不是主动 mqtt disconnect;③EMQX 端确认订阅了遗嘱 topic 的客户端在线且 QoS 匹配,查看 EMQX 控制台连接事件/遗嘱投递记录;④确认 keepAlive 心跳时长合理,设备假死时 Broker 能判定超时下线。MQTT 库用法见 https://docs.openluat.com/osapi/core/socket/ 对应的 mqtt 说明及官方 demo。
48. 有没有全球通模块?
解答: 结论:没有一颗“覆盖全球所有频段”的单模组,需要按目标地区频段选择对应型号。推荐:①海外(北美等)项目用 Air780EHN/Air780EHU,频段覆盖海外主流 LTE;②国内项目用 Air780EHM(国内全网通 Cat.1);③若希望免开发快速落地,有基于这些模组的成品板/工业模组(Air8780 系列,按板载模组分为 Air8780N/Air8780U 等),型号与板载模组对照见 https://docs.openluat.com/air8780/luatos/hardware/module/model/ 。选型时以目标国家运营商频段与模组频段表逐一核对,选型依据见 https://docs.openluat.com/SelectionGuide/SelectionGuide/ 。
49. Air8101和Air1601做大屏方案选哪个模块更好?5寸7寸9寸屏都可以用1601吗?
解答: 结论:大屏方案按“是否需要 WiFi”和“屏幕分辨率”选型——需要 WiFi 联网选 Air8101,不需要 WiFi、纯有线/串口或外接 4G 模组的大屏可选 Air1601;Air1601 支持的最大分辨率为 1280×800。说明:①5 寸(常见 800×480)、7 寸(常见 1024×600)均在 1280×800 以内,Air1601 可驱动;②9 寸屏常见分辨率有 1280×800(可支持)和更高分辨率(如 1920×1080,超出 Air1601 能力,需选更高规格主控),下单前务必核对屏幕实际分辨率而非只看尺寸;③需要 WiFi 直连或更高显示能力时选 Air8101。具体选型以 https://docs.openluat.com/SelectionGuide/SelectionGuide/ 和对应型号显示接口文档为准。
50. Trae里怎么安装LuatOS插件?
解答: 结论:LuatOS 插件(合宙 AI 编程插件)在 VSCode 中可直接在插件市场搜索“LuatOS”安装;Trae 因为基于 VSCode 二开、其插件市场默认搜索不到该插件,需要自行下载 .vsix 安装包后离线安装。安装方法:①在 VSCode 插件市场搜索 “LuatOS” 直接安装;②在 Trae 中,进入扩展面板,选择“从 VSIX 安装”,选中下载好的 LuatOS 插件 .vsix 包安装并重启;③插件支持官方文档问答、LuatOS 代码编写分析、与 Luatools 兼容的项目管理、基于 luatos-cli 的固件下载与串口日志调试闭环,兼容 Trae/Cursor/Qoder 等基于 VSCode 二开的 IDE。说明见合宙 AI 专区 https://docs.openluat.com/ai/ 及 Trae 智能体文档 https://docs.openluat.com/ai/trae+luatos-docs-code/manage.md 。
51. 怎么把air ui用的字体文件烧录到spi挂载的nor flash中?内置太小了字体文件放不下。
解答: 结论:Air8101 外挂的 SPI NOR Flash 目前不支持在 Luatools 烧录阶段直接把字体等资源烧进去,需要固件跑起来后再二次写入;放不下时可改用 TF 卡,或选用内置空间更大的版本(Air8101B 支持 4MB)。原因与操作:①烧录时 Luatools 只能烧录内核+脚本到主存储,外挂 SPI flash 的文件系统需要在运行时通过 little_flash(lf)/文件系统接口挂载后写入;②做法是固件启动后,把字体文件通过网络下载或从内置存储读出,再写入外挂 flash 挂载的文件系统,之后 AirUI 从该路径加载字体;③若资源较大不想二次传输,改用 TF 卡存放字体与图片资源,运行时从 TF 卡路径加载;④对空间仍紧张的项目,选 Air8101B(4MB)等大空间版本。文件系统/little_flash 用法见对应型号 demo 与 https://docs.openluat.com/osapi/core/airui/ 的资源加载说明。
52. 为啥官网没有780EGP和EGH的资料了?
解答: 结论:资料仍在官方文档站,可通过型号资料页直接访问。Air780EGH 资料页:https://docs.openluat.com/air780egh/product/ ;Air780EGP 相关资料可在合宙文档站对应产品分类或选型指南中检索。若导航菜单有调整导致入口变化,用文档站搜索框输入完整型号(如“Air780EGH”“Air780EGP”)即可定位到硬件手册、固件版本与 demo 页面;选型对照可参考 https://docs.openluat.com/SelectionGuide/SelectionGuide/ 。
53. Air780EP模组是自带AT指令集直接可以使用了吗?需不需要先烧写LuatOS固件?
解答: 结论:想直接用 AT 指令、不做 LuatOS 二次开发,应选用 AT 型号 Air780EPT(出厂即 AT 固件,上电直接发 AT),不要用 LuatOS 二次开发型号 Air780EP。说明:①合宙区分了 AT 型号与 LuatOS 型号,命名尾缀 T(如 EPT)对应 AT 固件,P(如 EP)对应 LuatOS 开发;②若手头是 Air780EP(LuatOS 版),也可以烧录 AT 固件后当 AT 模组使用,但量产建议直接订 AT 型号,避免额外烧录工序;③选型与型号差异以 https://docs.openluat.com/SelectionGuide/SelectionGuide/ 及对应型号资料页为准。
54. 更新固件后深度定时器设置时间需要远大于2.5小时,应该怎么办?
解答: 结论:需要长于 2.5 小时的定时,不要用 id 0/1,改用 id 为 2~6 的休眠定时器即可——Air780/Air700/Air8000 系列 id 0、1 的休眠定时器最大时长为 2.5 小时(9000000ms),而 id 2、3、4、5、6 的最大时长为 740 小时(2664000000ms)。说明:①调用 pm.dtimerStart(id, timeout),timeout 单位毫秒,有效取值 300000ms(5 分钟)起,超出对应 id 最大值会被底层强制修正为该 id 最大时长;②如需几天唤醒一次,选 id 2~6,例如 pm.dtimerStart(2, 7236001000);③Air8101 系列仅有 1 个定时器(id 0),最长 1008 小时;④注意定时器从启动时刻开始计时而非进入 PSM+ 才开始,配置进入 PSM+ 前用 pm.dtimerCheck(id) 确认定时器有效。接口说明见 https://docs.openluat.com/osapi/core/pm/ 。
55. Air780EGP的GNSS能靠模组自带的定位功能顺带做授时用吗?1000个设备时间误差能否不超过50毫秒?
解答: 结论:Air780EGP 的 GNSS 定位可以顺带做“秒级”授时——通过 exgnss.rmc() 获取 RMC 报文里的 UTC 时间后调用 rtc.set() 设置 RTC(见 https://docs.openluat.com/osapi/ext/exgnss/ 与 https://docs.openluat.com/common/time_sync/ );但 RMC 时间只到秒,无法保证 1000 台设备彼此误差小于 50 毫秒。要达到 50ms 量级的多设备时间一致,需用更高精度的授时手段:①NTP 毫秒级对时——socket.sntp() 成功后用 socket.ntptm() 获取毫秒级时间戳,文档建议至少两次 NTP 同步以计算网络延迟、可将偏差收敛到几十毫秒量级(首次同步偏差可能 10~500ms);②若要求严格 50ms 以内且设备可接收卫星信号,应使用 GNSS 的 1PPS 秒脉冲做硬件对齐(1PPS 沿对齐 UTC 整秒,精度可达微秒级),配合 RMC 的整秒时间打时间戳。纯软件 RMC 授时不建议承诺 50ms。时间方案见 https://docs.openluat.com/osapi/core/socket/ 。
56. AIR724原先用32G的SD卡,现在改4G的SD卡用不了,AIR724支持4G的SD卡吗?
解答: 结论:Air724(Air72x 系列)支持 SD/TF 卡,容量本身不是 4GB 卡不能用的主因,多为新卡文件系统格式/焊接问题导致识别失败。排查步骤:①把新 4G 卡用电脑格式化成与原 32G 卡一致的文件系统(通常 FAT32),簇大小选默认,再插入测试;②若是贴片式 eMMC/SD 芯片无法用读卡器格式化,用 Luatools 抓取底层日志看 SD 卡初始化是否报错(供电、CMD/DAT 时序);③用一张老款 TF 卡焊/插到同一卡座对比,若老卡正常则为新卡与座子焊接或卡本身兼容性问题,重点查卡座/贴片芯片的焊接虚焊、连锡;④确认 SDIO 供电(pm.ioVol 相关 MMC 供电默认约 3.1V)和上拉电阻正常。仍无法识别请提供 Luatools 日志联系合宙官方支持渠道。
57. 模块死机启动不起来,接到Luatools都没有一点日志,串口一直打印,可能是什么原因?
解答: 结论:接 Luatools 没有正常启动日志、串口持续乱码或反复打印重启信息,最常见是供电不足/不稳或复位脚(RESET/PWR_KEY)被异常拉低导致反复重启。排查步骤:①先查供电——用稳压电源对 VBAT 按规格供电(Cat.1 模组发射瞬间需 2A 峰值电流),测电压是否跌落,加大电源功率、缩短/加粗供电线、VBAT 加大容量电容;②查复位/开机脚——确认 RESET、PWR_KEY 没有被外设或漏焊拉低,上电时序正确,PWR_KEY 按要求拉低开机;③串口一直打印但无正常日志,检查串口波特率/接线(TX/RX 是否接反、电平是否匹配),用正确波特率看是否为 bootrom 重启循环;④若打印中出现 poweron reason 0 反复重启,基本可判定为供电不足;⑤排除外设拉低通信/电源脚。供电和复位正常后用强制下载模式重新烧录。参考 https://docs.openluat.com/air8101/luatos/app/base/errdump/ 对重启原因的说明。
58. 有没有客户用你们的模块做智能家居接入米家,使用wifi或蓝牙mesh?
解答: 结论:目前 LuatOS 模组没有提供蓝牙 Mesh(米家 Mesh)协议栈,无法直接以蓝牙 Mesh 方式接入米家生态。说明:①米家接入需要遵循小米的生态协议(Wi-Fi 走米家云端/蓝牙走 Mesh 或蓝牙网关),合宙模组未内置米家认证的 Mesh 协议,不建议承诺“可直接接入米家”;②可行路线:若设备走 Wi-Fi/4G 联网,可通过对接米家支持的第三方云平台或使用小米 IoT 开发者平台(miot)方案实现接入,需自行完成协议对接与认证;③纯本地蓝牙可使用合宙 BLE 能力做自定义透传/连接,但这不等于米家 Mesh。选型与生态接入能力以 https://docs.openluat.com/SelectionGuide/SelectionGuide/ 及合宙官方支持渠道答复为准。
59. 定频测试固件是.BINPKG,没办法用下载调试工具烧录,怎么烧录?
解答: 结论:定频(非信令/射频)测试固件是 .BINPKG 格式的打包文件,Luatools 烧录时即使弹出格式警告也可忽略、直接烧录,不需要手工发 AT 指令。操作:①在 Luatools 中选择该 .BINPKG 文件,出现格式不识别的提示时选择继续/忽略警告;②按正常下载流程烧录(必要时按住 BOOT 进强制下载模式);③烧录后定频测试可通过配套测试工具直接操作,工具会自动下发定频指令,返回 OK 即表示设置成功,无需用户手动发 AT。烧录流程参考 https://docs.openluat.com/common/howtodown/ 。
60. 用合宙的DEMO能控制其他厂家的LCD屏吗?
解答: 结论:合宙 LCD demo 不一定能直接驱动其它厂家的屏,能否使用取决于屏幕的接口类型、驱动 IC 和初始化参数是否匹配。判断与适配步骤:①确认接口一致——屏的接口(SPI/MCU 并口/RGB/MIPI)和位宽、电压与模组支持的显示接口一致;②确认驱动 IC——demo 里的初始化命令是针对特定驱动 IC(如 ST7789、ILI9341 等)写的,其它 IC 需要替换为对应厂家提供的初始化序列;③参数匹配——分辨率、像素格式、扫描方向、背光/复位脚、SPI 时钟等按实际屏调整;④RGB/MIPI 大屏还需确认时序参数与屏参一致。满足以上条件即可在 demo 基础上改屏参和初始化码驱动;拿不准时提供屏的规格书和驱动 IC 型号,通过合宙官方支持渠道(https://docs.openluat.com/ )确认适配。
61. 这个板子烧录程序后可以防止别人重写程序到板子中吗?
解答: 结论:LuatOS 板/模组不提供硬件级防重写(读保护/加密锁)功能,物理上拿到板子的人仍可通过 BOOT 强制下载模式重新烧录。可用于保护业务的手段:①一机一密,设备与云端用唯一密钥鉴权,固件被复制也无法接入你的平台;②敏感逻辑/算法放云端,设备不存明文;③结构上遮挡或灌胶 BOOT 测试点与调试串口,提高拆机重烧门槛;④量产关闭调试日志。以上能保护业务安全,但不能从物理上彻底禁止重写。
62. 2000mAh电池按照低功耗模式能续航多久?低功耗模式和PSM+模式是什么,怎么实现的?
解答: 结论:续航取决于“平均电流”,不能只看休眠底流;以 Air780EPM 为例,PSM+ 模式深睡底流约 3~12uA,但含周期性唤醒联网的官方 demo 实测 5 分钟总平均电流约 283uA(GNSS+Gsensor 版约 +30uA、Audio Codec 版约 +45uA)。粗算:2000mAh 电池按平均 283uA 计,理论续航约 2000mAh÷0.283mA≈7000 小时(约 290 天);唤醒越频繁、每次联网时间越长、是否开 GNSS/WiFi 都会拉低实际续航,工程上按实测平均电流折算并预留电池自放电与降额。三种模式与实现:①常规模式——代码全速运行、网络常连;②低功耗(PRO)模式——代码仍运行、维持网络保活,用 pm.power(pm.NOB, ...) 等配置进入,平均电流高于 PSM+;③PSM+ 模式——代码停跑、网络不常连,仅 dtimer/UART1 RX/PWR_KEY/WAKEUP/CHG_DET 可唤醒,进入方式配置 pm.power(pm.PSM,...) 并用 pm.dtimerStart() 设定唤醒周期(id 0/1 最长 2.5 小时,id 2~6 最长 740 小时,最小 300000ms),唤醒后重新联网发数据再进 PSM+。完整实现与功耗项目见 https://docs.openluat.com/air780epm/luatos/app/lowpower/sleep/ 与 https://docs.openluat.com/osapi/core/pm/ 。
63. 充电状态是通过什么获取,有官方demo吗?
解答: 结论:充电状态通过充电管理芯片驱动库读取,官方有扩展库和示例。若使用的是 YHM2712A 充电管理芯片,使用 exs_yhm2712a 扩展库(require "exs_yhm2712a"),初始化配置表(CMD 引脚、电池截止电压、容量、充电电流)后,调用 exs_yhm2712a.status() 即可获取完整充电状态:电池电压、充电阶段(涓流/恒流/恒压/完成)、充电状态、电池在位、充电器在位、IC 过温状态等(该接口需在 task 中调用,最大阻塞约 20s)。库还支持事件通知和船运模式。文档与基础充电管理示例见 https://docs.openluat.com/osapi/ext/charger/exs_yhm2712a/ 。若使用其它充电芯片,按对应充电 IC 的库/驱动读取状态。
64. 4G模组SIM卡欠费后MQTT连接中断,缴费后模组是自动重连还是需要手动重启?
解答: 结论:欠费期间运营商会释放设备的数据链路(PDP 去激活),缴费后模组不会在第一时间自动恢复 MQTT 连接,通常需要触发一次重新注网;可先尝试在脚本中切换一次飞行模式(进入飞行模式等待数秒再退出),强制模组重新搜网注册并重建数据链路,若仍不恢复则重启模组。原因:MQTT 连接承载在 PDP 数据链路上,链路被释放后原 TCP 连接已失效,即使网络恢复,旧的 MQTT 会话也不会自动复活。推荐的工程做法(避免人工重启):①业务层订阅网络状态消息(IP_READY/IP_LOSE),收到 IP_LOSE 后停止业务收发,收到 IP_READY 后主动重建 socket/MQTT 连接;②MQTT 客户端实现断线重连与 keepalive 超时重连逻辑,重连失败时按间隔退避重试;③重连长时间不成功时,程序主动切换飞行模式或软重启模组自恢复。排查时可用 Luatools 抓取底层日志确认缴费后的注网与 PDP 激活流程。
65. 设备运行一段时间就会自动重启,AIR8781,找AI试过没有解决。
解答: 结论:合宙官方型号体系中没有“AIR8781”这个型号,Air8780 系列按尾缀字母区分具体型号(P=Air780EPM、H=Air780EHM、V=Air780EHV、G=Air780EGP、S=Air780EGG、U=Air780EHU、N=Air780EHN,型号对照见 https://docs.openluat.com/air8780/luatos/hardware/module/model/ ),请先核对模组丝印上的完整型号。运行一段时间自动重启的标准排查步骤:①开机时调用 pm.lastReson() 打印重启原因——Air700/Air780/Air8000 系列返回 a,b,c,d 四个值(V2022 之后固件才有 d),a=0 为上电/复位类(此时看 c:c=3 软件重启、c=5 RESET 键、c=6 异常重启、c=8 内部看门狗重启、c=9 高温/高压外部重启),a=1 为 dtimer 唤醒、a=2 为 WAKEUP0~5 唤醒、a=5 为 PWR_KEY 唤醒等,取值说明见 https://docs.openluat.com/osapi/core/pm/ ;②按返回值定位:c=8 多为任务长时间阻塞/喂狗不及时或供电跌落触发看门狗(Air8101 硬件看门狗由内核自动开启、默认超时 8 秒,见 https://docs.openluat.com/osapi/core/wdt/ ),重点检查死循环、socket 阻塞、内存不足;c=9 查供电电压与模组温度;poweron reason 为 0 且频繁重启多为供电不足(4G 发射瞬时电流可达 2A,需 VBAT 4V 或 VIN 5V 稳压供电,见 https://docs.openluat.com/air8101/luatos/app/base/errdump/ );③接入 errDump 库记录并打印重启原因与异常日志,同时用 Luatools 抓取底层运行日志;④用示波器抓 VBAT 在网络发射瞬间的跌落,电池供电需确认电池放电能力和连接线线损。完成上述排查仍无法定位时,保存 pm.lastReson() 打印值与 Luatools 日志,通过合宙官方支持渠道反馈。
66. exaudio.play_stream_write(raw_data)基于新audio_v2框架下mp3流输入,是不是只要满足帧格式对就可以,不需要有ID3标签?
解答: 结论:不可以直接喂 MP3 流。exaudio 的流式播放接口 play_stream_write(data) 仅支持 PCM 裸数据,且写入长度必须是 1024 字节的整数倍;喂入的已经是解码后的 PCM 采样数据,不存在“MP3 帧格式”和“ID3 标签”的概念(ID3 是 MP3 文件容器里的元数据标签,与 PCM 流无关)。正确做法:①MP3 流/文件必须先用 codec 库解码为 PCM 再喂给 play_stream_write,官方提供解码示例 demo(codec_mp3_to_pcm.lua)可直接参考;②解码时注意 sample_rate、bits(位深)、channel(声道数)与 exaudio.play_start 的配置一致,否则会变声或杂音;③若不需要流式边收边播,直接用 exaudio.play_start() 播放本地 MP3/WAV/AMR 文件更简单(play_start 内部自动完成解码,TTS 仅支持中文)。接口与参数说明见 https://docs.openluat.com/osapi/ext/exaudio/ 。
67. AIR8000A量产什么价格?还有CAT1模块支持GPS/LBS/Wi-Fi定位的吗?
解答: 结论:模组价格随采购批量、市场行情波动,没有固定不变的“量产价”,Air8000A 及全系模组的最新报价以合宙官方淘宝店实时价格为准(https://luat.taobao.com/ ),批量采购可联系店铺客服或官方商务询价。需要 GPS/LBS/Wi-Fi 定位的 Cat.1 模组选型:①4G+GNSS 卫星定位二合一:Air780EGP(4MB+4MB,Air8780 系列尾缀 G)、Air780EGG(8MB+8MB 带 G-sensor,尾缀 S),AT 固件体系可选 Air780EG/EG2/EGT(型号对照见 https://docs.openluat.com/air8780/luatos/hardware/module/model/ );②需要 Wi-Fi 扫描+基站(LBS)辅助定位:选 Air8201G/H(超低功耗定位工业模组,Wi-Fi 天线与 4G 共用、仅支持 wifiscan 不支持 STA 联网,Wi-Fi/基站位置通过 airlbs 扩展库在云端解算,说明与 demo 见 https://docs.openluat.com/air8201/software/8201G/common/lbswifi/ ,代码见 gitee 仓库 module/Air8201/demo/airlbs);③纯基站定位可用免费版 lbsLoc/lbsLoc2 或收费版 airlbs 扩展库。完整选型对照见合宙产品选型指南 https://docs.openluat.com/SelectionGuide/SelectionGuide/ 。
68. 休眠唤醒读取串口,3秒唤醒一次,每次到1000秒左右就重启;不进入休眠就不会。
解答: 结论:“不睡眠就不重启”说明问题与休眠/唤醒流程强相关,先用 pm.lastReson() 打印重启原因定位(Air700/Air780/Air8000 系列返回 a,b,c,d 四值,a=0 看 c:c=6 异常重启、c=8 内部看门狗重启、c=9 高温/高压外部重启,取值说明见 https://docs.openluat.com/osapi/core/pm/ )。排查方向:①PSM+ 模式下软件看门狗和硬件看门狗均不计时,所以深睡期间的定时重启基本不是看门狗导致——重点查唤醒瞬间的供电:每次唤醒后联网发射有 2A 级瞬时电流,3 秒唤醒一次周期很短,若电源/电池带载能力不足或 VBAT 电容裕量不够,电压跌落会触发异常重启(poweron reason 为 0 且频繁重启多为供电不足,参考 https://docs.openluat.com/air8101/luatos/app/base/errdump/ );用示波器抓 VBAT 在唤醒发射瞬间的跌落波形。②检查唤醒源配置:UART RX 唤醒对线路干扰敏感,若串口线悬空/无屏蔽,噪声会频繁误唤醒,误唤醒后若脚本里有异常路径可能导致重启;WAKEUP 引脚电平要配置稳定。③对比官方低功耗 demo(https://docs.openluat.com/air8000/luatos/app/lowpower/sleep/ )逐项核对进 PSM+ 前的配置:pm.dtimerStart 的 id 与超时(最小 300000ms)、进 PSM+ 前用 pm.dtimerCheck(id) 检查、外设与 IO 状态。④接入 errDump 并抓 Luatools 底层日志,确认重启前最后一条日志和内存状态(内存泄漏/不足也会在长期周期运行后累积触发重启)。保存 lastReson 返回值与日志后可通过合宙官方支持渠道反馈定位。
69. air1601后续支持低功耗吗?
解答: 结论:Air1601 定位为高性能 MCU,LuatOS 固件后续不会为其增加低功耗/休眠(PSM+)模式支持。原因:低功耗深睡依赖蜂窝基带侧的 PSM 电源管理机制,Air1601 作为纯 MCU 产品,其产品定义与固件路线均不包含该特性。若项目核心诉求是电池供电、超低平均电流,应直接选低功耗定位的蜂窝模组:Air780EPM(PSM+ 待机 3~12uA)、Air8201 超低功耗定位工业模组、Air8000A(PSM+ 待机 5.7~9.4uA)等,选型对照见合宙产品选型指南 https://docs.openluat.com/SelectionGuide/SelectionGuide/ 。
70. Air8781有定位功能吗?
解答: 结论:合宙官方型号体系中没有“Air8781”这个型号(官方代码库中检索不到该型号),请先核对模组丝印完整型号。带定位功能的是 Air8780 系列中的定位型号:Air8780G(对应 Air780EGP,4MB+4MB,带 GNSS 卫星定位)和 Air8780S(对应 Air780EGG,8MB+8MB,带 GNSS 与 G-sensor);不带 GNSS 的 Air8780P(Air780EPM)等型号没有卫星定位硬件,但仍可通过基站定位(lbsLoc/lbsLoc2 免费单基站库或 airlbs 收费库)获得粗位置。Air8780 系列尾缀字母与型号对照见官方文档 https://docs.openluat.com/air8780/luatos/hardware/module/model/ ,选型也可参考 https://docs.openluat.com/SelectionGuide/SelectionGuide/ 。
71. modbus的demo数据方向控制引脚17电平没有变化,串口1可以用串口11不行。
解答: 结论:这是 RS485 方向控制脚(OE/DE/RE 自动转向脚)的引脚选择问题——UART11、UART12 的硬件自动方向控制要求 OE 脚必须选用编号大于 128 的 GPIO(即虚拟/扩展 GPIO 编号段,普通物理 IO 编号不满足要求),demo 与硬件设计文档中均有此说明。串口 1 正常、串口 11 不行,正是因为示例里引脚 17 是普通物理 GPIO,UART1 支持而 UART11/12 的自动转向不识别。处理步骤:①打开所用模组的硬件设计手册/pins 文档,把 485 方向控制脚改接到编号大于 128 的可选 GPIO 上(具体可选脚以该型号硬件手册为准);②软件中 uart.setup 的方向脚参数同步改为该 GPIO 编号;③确认 485 收发器的 DE/RE 已接到该方向脚、A/B 线接线正确;④若该型号确实没有可用的 >128 号 GPIO,则改用普通 GPIO 软件控制方向(发送前置高、发送完成拉低)。完成后可用示波器观察方向脚在发送瞬间是否正常翻转。
72. 780EU模组在某个地方信号特别差,上线几秒十几秒就掉,可能是什么原因?
解答: 结论:特定地点才出现“上线几秒到十几秒就掉线”,最可能是当地中国移动部署的 TDD 频段与该模组支持频段不匹配——780EU 未支持完整的中国移动 TDD 频段,若当地移动主要用该频段覆盖,就会表现为能短暂附着但很快掉线;换中国电信或中国联通的卡(以 FDD 频段为主)通常即可正常。其它需一并排查的因素:①确认模组型号与频段规格:对照模组硬件手册的支持频段,海外版 Air780EHU 支持 B1/B3/B5/B7/B8/B20/B28/B38/B40/B41,可覆盖澳洲、新西兰、欧洲等地区;②天线与信号:检查天线是否接好、驻波是否正常,弱信号下 RSRP/RSRQ 很差也会频繁掉网重连,可用 Luatools 日志查看注网频段和信号质量;③SIM 卡与供电:排除卡欠费/机卡绑定,供电在发射瞬时跌落也会表现为掉线。若换电信/联通后恢复正常,即可确认是移动 TDD 频段覆盖问题;频段规格以产品手册为准。
73. Air8000A这个模组有做过杂散相关的测试报告吗?
解答: 结论:Air8000A 已通过 SRRC 无线电发射设备型号核准,杂散(spurious emission)等射频指标的合规性体现在型号核准证中,证书文件可在合宙文档中心 Air8000 资料/手册页面下载:Air8000 型号核准证(Air8000型号核准证-2025.pdf),页面地址 https://docs.openluat.com/air8000/product/shouce/ 。认证相关的申请与使用指导见 Air8000 认证指导文档(renzheng)。说明:型号核准证证明模组射频指标(含杂散)符合国家无线电管理要求;若你的整机产品需要单独做整机认证(如 CCC),整机杂散仍需以整机为单位在实验室复测,合宙可提供模组认证资料配合送检。需要原始测试报告或认证支持,可通过合宙官方支持渠道获取。
74. Air8000W,MQTT配合PSM+一起使用的demo在哪里?
解答: 结论:官方低功耗文档中已包含“MQTT + PSM+”配套示例项目。在 Air8000 低功耗(sleep)文档里共有 9 个功耗示例项目,其中 prj_3_mqtt_short 即“PSM+ 模式下 MQTT 短连接”的典型用法:每次定时唤醒开机后读取传感器数据(温湿度)→ 建立 MQTT 连接上报 → 立即断开连接 → 进入 PSM+ 深睡 → 由 pm.dtimerStart 设定的周期(示例为 1 小时)再次唤醒,循环往复;文档同时给出各项目的实测平均电流(Air8000A PSM+ 待机约 5.7~9.4uA、各项目总平均约 127~840uA)。文档地址:https://docs.openluat.com/air8000/luatos/app/lowpower/sleep/ ,示例工程代码可在 gitee 仓库 Air8000 对应目录(https://gitee.com/openLuat/LuatOS/tree/master/module )下载。要点:PSM+ 下网络不常连,MQTT 必须用“唤醒即连、发完即断”的短连接模式,不要在深睡前保持长连接。
75. Luatools升级入口在哪里?
解答: 结论:Luatools 自身版本升级有两个入口,推荐从“我的项目”界面进入升级,路径更规整:①打开 Luatools 后进入“我的项目”页面,在该界面中按提示检测并更新到最新版本;②也可通过 Luatools 顶部/菜单中的“版本更新/检查更新”入口直接升级。升级说明与工具使用教程见官方文档 https://docs.openluat.com/common/Luatools/ 。注意:升级到最新版可获得最新固件列表与烧录逻辑;若升级或下载固件异常,可删除 Luatools 目录下的 _temp 缓存目录、以管理员身份运行,仍异常则进入 BOOT 强制下载模式排查(参考 https://docs.openluat.com/common/howtodown/ )。
76. air780epm支持ws2812吗?demo库有支持但点进去又说不包含。
解答: 结论:LuatOS 源码中 WS2812 灯珠驱动是有注册的(sensor 库注册了 ws2812b、ws2812b_pwm、ws2812b_spi 三种实现方式,分别基于普通 GPIO 模拟时序、PWM、SPI 驱动),所以 Air780EPM 可以尝试驱动 WS2812;你看到“demo 库点进去说不包含”,通常是该 demo 所在的固件/目录说明未内置该示例,而非驱动不存在。使用要点:①WS2812 对时序(800kHz 单总线)要求严格,4G 模组上优先用 ws2812b_pwm 或 ws2812b_spi 方式(硬件外设生成时序更稳定),普通 GPIO 软件模拟在有中断/网络任务调度时容易抖动花屏;②灯珠供电 5V、数据线串 330Ω 左右电阻、电源加大电容,共地良好;③Air1780 系列 MCU 模组对 WS2812 这类时序外设支持更完善,若灯珠数量多、效果复杂可优先选 Air1780。具体可用接口与示例请以所用固件版本的 sensor 库文档和 gitee 仓库(https://gitee.com/openLuat/LuatOS/tree/master/module )中的 ws2812 demo 为准,文档中心 https://docs.openluat.com/ 。
77. SIM卡供电位置的4.7uF电容在车载24V环境下烧坏,是设计问题还是物料问题?
解答: 结论:SIMVDD 由模组内部 LDO 输出,正常最大不超过 3.3V,电容本身不应过压烧毁;车载 24V 环境下损坏,基本是 SIM 供电线上出现了高压浪涌/静电(车载电源抛负载、起停尖峰、插拔 ESD 串入)导致的,属于整机防护设计问题,不是单颗电容物料缺陷。处理与整改步骤:①用示波器同时抓 SIM 供电脚和电源输入端在开机、点火、插拔卡瞬间的波形,确认是否有高压尖峰以及尖峰来源;②SIMVDD 滤波电容容值可按硬件设计手册推荐调整(可由 4.7uF 调整为 1uF 等手册推荐值),并选用耐压足够(建议 10V 以上)、车规或高可靠料号;③在电源输入端和 SIM 卡座处增加 TVS 管做浪涌/静电防护,电源入口加防反接与 TVS;④SIM 卡座加 ESD 保护器件,走线远离高压干扰源;⑤整机供电 DCDC 要能扛住车载抛负载(24V 系统抛负载可达数十伏)。整改后复测浪涌波形确认尖峰被钳位在安全范围。
78. 平台下发数据485输出不了,直接刷的rtu固件,平台配置参数使用485做透传。
解答: 结论:刷 iRTU 固件用 485 透传时,平台下发数据 485 口无输出,绝大多数是 485 方向控制脚(转向脚)没配对或串口接收/数据流配置问题,按以下步骤逐项排查:①配置 485 转向脚:登录 iRTU 网页配置界面,在串口配置中正确设置 485 的方向控制 GPIO 与转向时间(方向脚拉高/拉低的保持时序),具体参数见 iRTU 串口文档第 4.6 节(https://docs.openluat.com/value/irtu/docs/uart/ ),方向脚要与实际 485 芯片的 DE/RE 接线一致;②确认数据流方向配置:透传规则里“平台下发→串口”的数据流要使能,串口选择、波特率、数据位/校验位/停止位与 485 对端设备一致;③硬件核对:485 芯片 A/B 线与对端 A/B 交叉对应(A 接 A、B 接 B,不通则对调试一下)、共地、终端电阻,模组串口 TX/RX 与 485 芯片连接正确;④先验证上行:确认设备能注册上线、平台能收到设备上报(链路本身正常),再测下行;⑤平台侧确认下发的指令确实到达设备(平台显示已下发/设备已应答)。固件功能说明见 https://docs.openluat.com/value/irtu/firmware/ 。若配置均正确仍无输出,保存 iRTU 配置截图与平台下发记录,通过合宙官方支持渠道反馈。
79. 合宙Air780EGT通信定位二合一模组和Air780EP硬件兼容吗?
解答: 结论:Air780EGT 是 Air780EG 的升级替代型号(AT 固件体系,8MB+8MB;EG2 为 4MB+4MB),它与 Air780EG 引脚基本兼容、可直接替换,唯一需要改 PCB 的硬件差异是:有源 GNSS 天线的供电脚,Air780EG 为 PIN8,而 Air780EG2/EGT 为 PIN98(GNSS_VDD),其它引脚兼容。详细差异见官方对比文档 https://docs.openluat.com/atmozu/product/air780eg2egtvsair780eg/ 。需要特别说明:Air780EP 是不带 GNSS 的 LuatOS 型号(Air8780 系列中 P=Air780EPM),与 Air780EGT 属于不同产品定位(EP 无定位硬件、固件体系也不同),二者不能直接当作硬件兼容替换;若你的原板是 Air780EG/EGT(通信+定位二合一),要在 LuatOS 体系找对应带定位的型号,应选 Air780EGP/EGG(型号对照见 https://docs.openluat.com/air8780/luatos/hardware/module/model/ )。建议以两份官方型号文档的引脚表逐项比对后再画板,选型参考 https://docs.openluat.com/SelectionGuide/SelectionGuide/ 。
80. 设备频繁收到IP_READY和IP_LOSE订阅消息怎么抓日志?
解答: 结论:频繁收到 IP_READY/IP_LOSE 说明数据链路(PDP)在反复激活/断开,需要用 Luatools 抓取模组底层日志来定位网络交互过程。抓日志步骤:①打开 Luatools,正确安装 USB 驱动并让模组进入正常开机模式(不要进 BOOT 下载模式);②在 Luatools 中选择对应的串口,开启“底层日志/trace”抓取,日志抓包方法见官方文档 https://docs.openluat.com/common/howtouselog/ ;③让问题完整复现(持续抓到多次 IP_READY/IP_LOSE 交替),保存完整日志文件。日志重点关注:注网(NAS/ATTACH)是否成功、PDP 激活/去激活的原因码、信号质量(RSRP/RSRQ)、SIM 卡状态、是否有 Reject 及拒绝 cause。常见原因:SIM 卡欠费/机卡绑定、当地信号弱或天线问题、供电在发射时跌落导致协议栈重启、APN/运营商网络侧异常。排查时先换卡、换位置(排除信号)、查供电。保存抓包日志后可通过合宙官方支持渠道(https://docs.openluat.com/ 底部企业微信群)反馈分析。
81. 合宙tcp工具停服了吗?原来的路径取消了吗打不开。
解答: 结论:合宙 TCP/UDP web 测试工具没有停服,是迁移到了文档中心的新地址,旧路径已失效。请使用新地址:https://docs.openluat.com/common/TCPUDP_Test/ (合宙 TCP/UDP web 测试工具)。该入口也收录在官方“LuatOS 开发工具大全”页面中。若新地址仍打不开,检查浏览器网络/代理、更换浏览器或清除缓存后重试;工具使用问题可通过合宙官方支持渠道反馈。
82. Air795UG能提供一个联网逻辑流程吗?
解答: 结论:Air795UG(Air72x/Air820 系列 Cat.1 模组)在 LuatOS 下的联网逻辑流程与其它 4G 模组一致,标准流程如下:①开机自检:模组上电启动,加载固件与脚本,初始化 SIM、基带;②等待注网:脚本中订阅系统消息,等待网络注册成功(mobile 网络就绪,可读取注网状态、IMEI、IMSI、信号质量);③等待数据链路就绪:订阅并等待 IP_READY 消息(PDP 激活、拿到 IP),在此之前不要发起连接;④建立业务连接:IP_READY 后再创建 socket(TCP/UDP)或 MQTT 客户端连接服务器;⑤异常维护:订阅 IP_LOSE 消息,链路断开时停止收发,重新收到 IP_READY 后自动重建连接,业务层加重连与超时退避;⑥(可选)时间同步:联网后用 socket.sntp()/socket.ntptm() 同步时间。完整示例代码见官方培训教程“LuatOS socket”(https://docs.openluat.com/luatos_lesson/002_luatos_socket/ )与“LuatOS network”(https://docs.openluat.com/luatos_lesson/012_luatos_network/ ),mobile 库与 socket 库手册见 https://docs.openluat.com/osapi/core/mobile/ 、https://docs.openluat.com/osapi/core/socket/ 。
83. 合宙有没有支持运行模式、休眠模式、深睡模式这三种模式的开发板?定时器可以唤醒吗?
解答: 结论:合宙支持 LuatOS 的 Cat.1 开发板/模组(如 Air780EPM、Air8000/Air8000A、Air8201 等)都支持三种电源模式——常规运行模式、低功耗(PRO)模式、PSM+ 深睡模式;定时器(dtimer)可以唤醒深睡。三种模式:①常规模式——代码全速运行、网络常连;②低功耗(PRO)模式——代码保持运行、网络维持保活,通过 pm.power(pm.NOB,...) 等配置进入,平均电流高于深睡;③PSM+ 深睡——代码停跑、网络不常连,仅特定唤醒源可唤醒。定时唤醒用 pm.dtimerStart(id, timeout):Air780/Air700/Air8000 系列 id 0/1 单次最大 2.5 小时(9000000ms),id 2~6 最大 740 小时(2664000000ms),最小超时 300000ms(5 分钟);进 PSM+ 前可用 pm.dtimerCheck(id) 检查。除定时器外,UART1 RX(9600)、PWR_KEY、WAKEUP0~5、CHG_DET 等也可唤醒。用法与功耗示例见 https://docs.openluat.com/osapi/core/pm/ 及低功耗文档 https://docs.openluat.com/air780epm/luatos/app/lowpower/sleep/ 、https://docs.openluat.com/air8000/luatos/app/lowpower/sleep/ 。
84. 780EPM的V2003固件,4G网络断了又恢复后MQTT连接不会自动恢复,是吗?
解答: 结论:不要使用 V2003 这样的旧版固件,请升级到最新正式版固件(如 V2048 及以后版本)再验证——旧版本在网络断开恢复后的链路重建上存在已知缺陷,新版本持续修复了飞行模式、网络重连、NAT 切换等问题(例如 NAT 切换相关缺陷已在 V2049 修复)。同时必须明确:即使固件正常,MQTT 连接也不应依赖固件“自动恢复”,业务代码必须自己实现断线重连——正确做法是订阅 IP_READY/IP_LOSE 消息,网络恢复(IP_READY)后主动销毁旧连接并重新建立 socket/MQTT,配合 keepalive 超时检测与退避重连。固件请在 Luatools 中选择最新正式版下载烧录(工具教程 https://docs.openluat.com/common/Luatools/ );升级最新固件并按上述方式补全重连逻辑后若仍不恢复,抓取 Luatools 底层日志(https://docs.openluat.com/common/howtouselog/ )通过合宙官方支持渠道反馈。
85. 新版本软件划到最下边偶尔才触发自动滚动,大多数时候得划动鼠标去看,低功耗测试过程比较明显。
解答: 结论:表格内容滚动到底部后“需要手动划动才能看、自动滚动偶尔才触发”,应使用 AirUI 提供的表格自动滚动控制接口,而不是依赖手动划动;这两个接口从 AirUI V1.1.4 起提供,请先确认工程使用的 AirUI 版本不低于 V1.1.4(V1.2.2 还增加了 table 跳转功能)。可用接口:① table:auto_jump_scroll_control(config)——表格自动跳转滚动,config 中 action 取 start/pause/resume/stop 控制启动/暂停/恢复/停止,interval 为跳转间隔(默认 1500ms);② table:auto_marquee_scroll_control(config)——表格跑马灯式平滑滚动,tick 为滚动节拍(默认 30ms)。用法:表格创建并刷新数据后调用 auto_jump_scroll_control({action="start"}) 启动自动滚动,页面切走/进低功耗前用 pause/stop 暂停,回到界面再 resume,避免低功耗/休眠期间 UI 定时器与唤醒状态不同步导致“滚动不触发”。接口参数详见 AirUI 文档 https://docs.openluat.com/osapi/core/airui/ 。若升级到 V1.1.4 以上并按上述方式控制后仍异常,保存复现步骤与固件/AirUI 版本,通过合宙官方支持渠道反馈。