常见问题 - 2026-08-12
数据日期:2026-08-12
1. 新买的模组AIR780EPT为什么登录用户名和密码后显示已经连接(ALREADY CONNECT)?
解答: 该提示不是故障,而是同一账号(Client ID/用户名)已在别处登录,新连接把旧连接顶下线,或模组重复发起了连接。MQTT 协议规定同一 Client ID 在 Broker 上只允许保持一个会话,后登录的客户端会使前一个连接被踢下线,服务端/日志即返回 ALREADY CONNECTED 一类提示。排查要点:①确认没有另一台设备、MQTTX/MQTT.fx 调试工具或服务器测试脚本使用相同的 Client ID/用户名在线,可先用 MQTTX 连接同一账号复现验证;②检查脚本是否重复调用 mqtt.create/mqttc:connect(),务必在收到断连事件后再重连,且异常分支要调用 mqtt.close() 释放旧对象,避免反复创建多个客户端(超过上限还会报 adapter no more ctrl!);③Client ID 建议用 mobile.imei() 等每台设备唯一的值,不要多台设备写死同一个 ID;④若使用合宙 iRTU/AirCloud 平台,先确认该 IMEI 是否已归属到其他账号并被占用。MQTT 连接与排错流程可参考 https://docs.openluat.com/luatos_lesson/003_luatos_mqtt/ 。
2. 新设备插卡后一直没有连接到平台,是固件没刷吗?
解答: 不一定是固件问题,模组出厂已带固件,插卡不上平台大多是网络注册、SIM 卡或配置环节的问题,建议按顺序排查:①供电与开机:VBAT 需在 3.3V~4.35V 且能提供 1A 以上瞬时电流,开机后用 Luatools 看日志是否正常启动;②SIM 卡:确认卡已激活、未欠费、未插反,Cat.1 模组要用 4G/物联网卡(注意有一种欠费表现是能注册 2G 却注册不了 4G);③天线:4G 天线接好且匹配,信号差会导致附着困难,可用 AT+CSQ 或 Luatools 日志看信号;④网络状态:AT 固件依次发 AT+CPIN?(返回 +CPIN: READY)、AT+CGATT?(返回 +CGATT: 1 表示已附着数据网络)确认;LuatOS 固件则等待 IP_READY 消息,正常插卡开机约 3 秒即可产生;⑤平台配置:确认服务器地址/端口/Client ID 正确,设备已在平台建组并归属到本账号(未分组设备无法下发配置);⑥若以上均正常再考虑固件,可用 Luatools 重新烧录最新固件验证。网络注册与信号排查可参考 https://docs.openluat.com/atmozu/product/command/mqtt/ 及模组网络信息文档 https://docs.openluat.com/air780epm/luatos/app/common/mobile/ 。
3. Air780EHV烧录LuatOS固件时该选择哪个固件?
解答: 烧录时在 Luatools 的固件选择界面选 Air780EHV 对应的 LuatOS-SoC 内核固件即可,版本号建议直接选最新正式版;不同 demo 若对功能有特殊要求(如 airui 界面、TTS、音频通话),需选择带对应功能编号的固件。说明:合宙同一型号会发布多个编号固件(1~99 号为 32 位、101~199 号为 64 位),编号差异在于内置核心库组合、脚本区与文件系统分区大小不同,固件下载页附有"固件支持核心库列表",按项目用到的库(如 audio/airui/cc 等)勾选对照即可;若最新固件测试异常,可回退到 demo 开发时使用的版本对比。Air780EHV 固件版本与下载地址见 https://docs.openluat.com/air780ehv/luatos/firmware/version/ ,烧录工具使用方法见 https://docs.openluat.com/common/Luatools/ 。
4. Air780EHV的PWRKEY直接下拉到GND上电开机,CHRG_DET悬空可以吗?
解答: 可以。PWRKEY 直接接地(或串联不超过 10KΩ 的电阻接地)即可实现上电自动开机,此时 CHRG_DET(部分资料写作 CHG_DET/WAKEUP6)悬空不影响开机;CHRG_DET 现在的作用与 PWRKEY 相同,若用它实现上电开机则必须直接接地、不能串电阻。注意:PWRKEY 固定接地为"上电即开机",软件关机后无法再通过按键开机,若需要关机后可重新开机,应把 PWRKEY 引出做开机按键。硬件设计详见 https://docs.openluat.com/air780ehv/product/air780exxpins/ 。
5. 模块内部可以直接读到VBAT供电管脚的电压吗?
解答: 可以。LuatOS 提供了专用的 VBAT 检测通道,无需外接任何电路,调用 adc.get(adc.CH_VBAT) 即可读到主供电脚电压(VBAT 在模组内部已分压后接入 AUXADC);同理 adc.get(adc.CH_CPU) 可读取 CPU 内部温度。用法:先 adc.open(adc.CH_VBAT),再 adc.get() 读取返回值(第二个返回值即换算后的电压)。注意设置量程 adc.setRange() 必须在 adc.open 之前调用才有效。示例与说明见 ADC 教程 https://docs.openluat.com/air780epm/luatos/app/driver/adc/ 。
6. 怎么把自己的代码下载到板子里?
解答: 使用 Luatools 工具下载,步骤:①安装并打开 Luatools(下载地址 https://luatos.com/luatools/download/last );②用 USB 线连接开发板并开机,工具会自动识别串口(LuatOS 模式烧录需让模组重启进入下载模式,AT 模式下 main_uart 能以 115200 正常通信时可直接点下载、模组自动进入下载模式);③在"项目管理"里新建项目,选择对应模组型号的内核固件(.soc),并把自己的脚本(main.lua 及 require 的模块、资源文件)添加到项目;④点击"下载"等待烧录完成,日志窗口会提示成功。脚本与固件可从 gitee 仓库 https://gitee.com/openLuat/LuatOS 获取。完整图文教程见 https://docs.openluat.com/common/Luatools/ ,烧录异常排查见 https://docs.openluat.com/common/howtodown/ 。
7. 支持4G+GPS+音频传输的用哪个型号比较好?
解答: 这类"4G+GNSS 定位+音频"需求建议按形态选择:①若要能直接讲产品、快速量产,推荐 Air8201 系列超低功耗定位工业模组(如 Air8201G-BLMQ,主控为 Air780EGH,4G+GNSS+BLE+音频+气压传感器,支持语音告警播报、对讲、TTS),交付完整的硬件+软件+运维后台方案;②若只要核心模组自行设计底板,可选 Air780EGH/Air780EGP 等 4G 定位二合一/多合一 SoC(音频通话需选带 audio/cc 核心库的固件编号);③海外项目则按目标地区选 Air8000 系列对应区域版本(如北美 Air8000N 等)。具体型号、价格与购买链接以合宙选型指南为准:https://docs.openluat.com/SelectionGuide/SelectionGuide/ (2.4 节"4G+定位二合一"及海外"4G+定位"部分)。
8. 合宙有支持OCPP协议的模组吗?
解答: 合宙官方固件/库目前没有内置 OCPP(充电桩开放充电协议)协议栈,也暂无内置计划。但 OCPP 在设备侧本质是基于 TCP/WebSocket+JSON(OCPP 1.6/2.0.1)的应用层协议,只要选用支持 LuatOS 二次开发、带 socket/websocket/TLS 的 4G 模组(如 Air780EPM、Air8000、Air878X 工业模组等),即可在脚本层自行实现或移植 OCPP 客户端,通信能力不受限制。若项目有规模、需要官方提供协议适配或固件定制,可联系合宙商务提出定制需求评估。选型可参考 https://docs.openluat.com/SelectionGuide/SelectionGuide/ 。
9. 这个AIR780EHU怎么开机?
解答: Air780EHU 与 Air780EHN 等同属 Air780Exx 系列,开机方式一致:VBAT 供上 3.3V~4.35V 电压后,PWRKEY 内部上拉到 VBAT,把 PWRKEY 拉低到 GND 即可开机——最简单的做法是 PWRKEY 直接接地(或串不超过 10KΩ 电阻接地)实现"上电即开机";若用按键开机,则按下 PWRKEY 保持足够低电平时间触发上电流程。核心板一般已做好开机电路,接上电源/USB 并把开机拨码开关拨到对应位置即可开机。硬件管脚与开机时序说明见 https://docs.openluat.com/air780ehv/product/air780exxpins/ (Air780Exx 通用),核心板使用说明书可在 https://docs.openluat.com/ 对应型号产品页下载。
10. 怎么确定IMEI在不在自己名下?
解答: 登录合宙 IoT 平台 iot.openluat.com,点击"我的设备",输入模组的 IMEI 号即可查询该 IMEI 当前归属在哪个账号/项目下。若不在自己账号下,分三种情况处理:①在合宙淘宝店购买的设备(iRTU 默认固件会归属到合宙 iRTU 专属账户),联系淘宝客服提供 IMEI 和目标账号,由客服协助转移;②在合宙销售处购买的设备,一般发货时已归属到你提供的 IoT 账号,若账号不对,登录原账号在平台上做设备/项目转移即可;③第三方渠道购买的模块,联系购买方协助转移归属。详细图文步骤见 https://docs.openluat.com/air780epm/product/attributioniot/ 。
11. 一直升级不了是什么情况?
解答: 先登录合宙 FOTA/IoT 后台查看该设备的升级日志,日志会给出具体失败原因,再对照排查。常见原因:①设备未正常联网或信号差,升级包下载中断;②升级的固件编号/分区与设备当前固件不匹配(FOTA 要求 ap+cp 起始地址、脚本区/文件系统分区大小一致,跨分区布局不能互升,例如 FS 大小不同的固件之间);③版本号不满足升级规则(脚本版本 A.B.C,需 A 相同且 C 增大,或 A 增大且 C 不减,中间 B 段无意义但必须存在);④设备未在平台建项目/分组,或 IMEI 未归属到当前账号;⑤升级包本身制作或上传有误。LuatOS 侧建议用 errDump 记录异常,并确认 fota/libfota2 调用流程正确。FOTA 原理、分区规则与版本判断见 https://docs.openluat.com/luatos_lesson/009_luatos_fota/ ,合宙 FOTA 业务说明见 https://docs.openluat.com/value/fota/ 。
12. AIR8000U在国外使用定位功能能用吗?
解答: GNSS 卫星定位本身在全球可用——GNSS 接收 GPS、北斗、GLONASS、Galileo 等多系统卫星信号,不需要 SIM 卡、不依赖运营商网络,只要在户外能见到天空、收到 4 颗以上卫星即可定位,因此在国外户外空旷环境定位功能正常(首次冷启动或关机移动上千公里后搜星可能需 1~2 分钟)。需要区分两点:①卫星定位全球通用,但 AGPS/基站辅助定位(lbsLoc)依赖国内服务器与基站库,在国外可能不可用或精度变差,会影响首次定位速度;②数据回传要走当地 4G 网络,需确认 Air8000 具体型号的 4G 频段是否覆盖目标国家运营商,并使用当地可用的 SIM 卡。GNSS 原理与坐标系说明见 https://docs.openluat.com/air8000/luatos/app/gnss/gnss/ 。
13. Air780EG支持定位功能,还需要物联网卡开通定位功能吗?
解答: 不需要向运营商开通任何"定位服务"。Air780EG 的定位是模组内置 GNSS 芯片直接接收卫星信号解算经纬度,与 SIM 卡套餐无关;物联网卡只要能正常上网(有流量)即可用于把定位数据回传到服务器,以及使用 AGPS/基站辅助定位加快搜星。也就是说:卫星定位本身不耗流量、无需开通,联网回传和辅助定位才需要可用的数据流量。GNSS 功能说明见 https://docs.openluat.com/air8000/luatos/app/gnss/gnss/ 。
14. 模块使用AT命令能获取位置坐标吗?
解答: 可以,分两种方式:①带 GNSS 的模组(如 Air780EG/EGH/EGP 等),用 GNSS 相关 AT 指令开启定位后,通过 NMEA 语句(如 $GNRMC/$GNGGA)直接输出经纬度,精度高、户外可用;②不带 GNSS 或室内场景,用基站定位(LBS)AT 指令,模组联网后上报周边基站信息到定位服务器、由服务器返回经纬度(多基站精度约 10~300 米,单基站误差可能达 1.5 公里)。具体指令集以对应型号的 AT 手册"基站&WiFi 定位/GNSS"章节为准,见 https://docs.openluat.com/atmozu/product/command/lbswifi/ ;LuatOS 二次开发则用 libgnss 核心库和 lbsLoc/lbsLoc2 扩展库获取坐标。
15. 能否推荐一款低功耗Cat.1,支持AT指令、MQTT和二次开发的?
解答: 主流可选用 Air780EPM(4G Cat.1 数传 SoC,支持 LuatOS 二次开发,LuatOS 固件内置 mqtt 核心库;同一款硬件也可刷 AT 固件用 AT 指令操作 MQTT),低功耗场景配合低功耗模式/PSM+ 可做到微安级休眠电流。若对功耗要求更极致,可考虑超低功耗定位/数传系列(如 Air780EPT/EHT 及 Air8201 系列)。选型建议:只做透传+少量逻辑可选 AT 固件;需要 MQTT、自定义业务逻辑、OTA 等推荐 LuatOS 二次开发。具体型号、Flash/RAM、尺寸与价格见合宙选型指南 https://docs.openluat.com/SelectionGuide/SelectionGuide/ (2.1 节"需要 4G 通信功能"及低功耗相关章节),低功耗设计参考 https://docs.openluat.com/common/airpower/ 。
16. 这么多固件的区别是什么?
解答: 合宙固件主要按"型号 + 版本号(V 开头) + 功能编号(几号固件)"区分:①版本号(如 V2048)代表发布时间与基线,数字越大越新,更新记录列出新增/修复内容;②同一版本下的不同编号(1 号、14 号、19 号、21 号等,1~99 为 32 位、101~199 为 64 位)是针对不同应用场景的功能裁剪版,差异在于内置哪些核心库(如 audio/airui/cc/TTS/字库等)以及脚本区、文件系统分区大小——例如带音频/TTS 的固件会占用更多空间,精简固件给脚本和文件系统留出更大空间,FOTA 升级时新旧固件的分区布局必须一致。选择方法:在固件下载页查看"固件支持核心库列表",按你项目 require 到的库选包含这些功能、且分区能容纳脚本的编号即可,拿不准就选常用的标准版/最新版。各型号固件列表见 https://docs.openluat.com/air780epm/luatos/firmware/780epm_version/ (其他型号在对应 docs 目录的 luatos/firmware 下)。
17. 短信转发需要二次开发吗?能自己配置URL和请求头吗?
解答: 不需要二次开发即可实现基础短信转发。合宙提供带短信转发功能的固件/免开发方案(如 Air8783 短信转发上网棒及配套 LuatOS demo、iRTU 配置固件),收到短信后由固件按 HTTP/AirCloud 协议把内容转发到指定服务器;转发目的 URL 等参数可通过合宙 Web 配置页面(iRTU/AirCloud 平台)下发修改,无需重新烧录。若需要自定义请求头、鉴权方式、报文格式等特殊逻辑,可在标准固件基础上提定制需求,或用 LuatOS 的 sms 核心库自行开发(短信转发配置存于 fskv,重新烧录会丢失需重新配置,FOTA 升级不影响 fskv 数据)。短信转发协议类型可参考 AirCloud 协议 https://docs.openluat.com/protocols/aircloud/ ,iRTU 配置平台见 https://docs.openluat.com/value/irtu/state/ 。
18. 如何确定IEMI在不在自己名下?
解答: 登录合宙 IoT 平台 iot.openluat.com,进入"我的设备",输入模组 IMEI 号即可查询该设备当前归属的账号与项目。若查询发现不在自己账号下:淘宝店购买的(iRTU 默认固件归属合宙 iRTU 专属账户)联系淘宝客服提供 IMEI 和目标账号协助转移;合宙销售购买的可登录发货时登记的原账号做设备/项目转移;第三方渠道购买的联系购买方处理。FOTA 后台需设备先归属到本账号项目才能管理升级。详细步骤见 https://docs.openluat.com/air780epm/product/attributioniot/ 。
19. 合宙Air780EPM的GPIO电平是3.3V还是与VBAT相关?
解答: GPIO 高电平电压与 VBAT 无关,由模组内部 IO 电源域决定。Air780EPM 默认 IO 电平为 3.3V;合宙支持二次开发的模组绝大多数默认 3.3V,并可通过 pm.ioVol(pm.IOVOL_ALL_GPIO, 电压mV) 在 1650~2000、2650~3400mV(步进 50mV)范围内配置,常用值为 1.8V/2.8V/3.3V。部分型号上电开机阶段(BOOT 时约前几百毫秒)IO 为 1.8V,待软件运行后才切换到设定电平,设计上电时序时需留意。注意例外:Air8000 全系只支持 3.3V,Air780EHV 固定 3.3V(另有 Air780EHV-1.8V 版本固定 1.8V)。详见 https://docs.openluat.com/osapi/core/pm/ 及 https://docs.openluat.com/air780epm/luatos/hardware/pin100/ 。
20. 用合宙平台进行固件升级,还需要配置FOTA参数吗?150K的固件下载等待多久?
解答: 用合宙官方 IoT/FOTA 平台升级时,fota 核心库(或 libfota 扩展库)默认已指向合宙升级服务器,一般无需自行配置服务器地址,只要在平台创建项目、上传升级包并把设备 IMEI 归属到该项目即可;如果用自建服务器则改用 libfota2 并配置自定义升级地址。关于下载时长:Cat.1 实际速率受信号和网络环境影响较大,正常信号下 150KB 固件通常十几秒内可下载完成,信号差时会明显变长甚至超时失败,需以后台升级日志和实测为准。大文件下载/升级建议用 httpplus 扩展库(支持大文件、下载回调、断点续传,不限大小)。FOTA 接入与参数说明见 https://docs.openluat.com/luatos_lesson/009_luatos_fota/ ,httpplus 见 https://docs.openluat.com/osapi/ext/httpplus/ 。
21. vscode里面的LuatOS AI可以自动化读取日志调试吗?
解答: 可以。在 Trae/VSCode 中安装 LuatOS 开发插件(luatos-docs-code 智能体)后,AI 可结合 Luatools 输出的运行日志、工程代码和官方文档库进行自动化分析与调试,帮你定位报错、解释日志、给出修改建议。使用方式与安装步骤见官方说明 https://docs.openluat.com/ai/luatos-dev-plugin/ 及 https://docs.openluat.com/ai/trae+luatos-docs-code/ 。
22. Luatools日志和下载串口是分开的吗?只有一个COM口该怎么选?
解答: 模组在不同工作状态下枚举的串口数量不同:正常开机后通常会出现多个 COM 口(分别对应主串口/日志等),而进入 boot 下载模式时只会短暂出现一个 boot 下载口(约保持 15 秒后进入开机、端口由一个变多个)。只有一个 COM 口时直接选该口即可——Luatools 会自动识别下载口并完成烧录,抓日志时选择日志/主串口即可。若端口识别异常,可在 Luatools 里手动选择对应串口号,并注意烧录只能走 main_uart(UART1),其他串口不支持烧录。工具使用与日志说明见 https://docs.openluat.com/common/Luatools/ 。
23. 在780EPM上SPI0运行以太网和SD卡,SPI1使用传感器和W25Q128,不同频率时钟不同模式可以自动切换吗?
解答: 可以在同一条 SPI 总线上挂多个不同时钟/模式的从设备,但必须为每个设备单独配置参数,不能共用一套配置。推荐使用 spi.deviceSetup(id, cs, CPHA, CPOL, dataw, bandrate, ...) 新接口为每个外设创建独立的 spidevice 对象,固件会自动管理 CS 片选,在调用该设备的 send/recv/transfer 时自动套用其专属的时钟频率和 CPOL/CPHA 模式,无需手动切换;旧的 spi.setup 方式则需自己控制软件 CS 并在每次通信前重新配置。注意:①同一总线各设备速率差异过大时,高速设备(如以太网、SD 卡)会受限于总线最保守的时序,建议把高频/吞吐大的设备和低速传感器分到不同 SPI(你的 SPI0/SPI1 划分是合理的);②每个从设备用独立 CS,通信间确保 CS 正确拉高释放;③SD 卡/FatFS、W25Q(sfud/little_flash)等建议直接用对应驱动库,由库内部完成 SPI 配置。接口说明见 https://docs.openluat.com/osapi/core/spi/ 。
24. 固件烧录一半失败导致模组烧录不上怎么办?
解答: 烧录中途失败不会损坏模组,重新进入下载模式再烧即可,按以下步骤排查:①让模组进入 boot 下载模式:按住 BOOT/下载按键或短接 USB_BOOT 与 VDD_EXT,再上电/复位,Luatools 识别到 boot 下载口后重新烧录;②检查 USB 线为数据线而非充电线、供电充足(VBAT 3.3V~4.35V 且电流足够),尽量直连电脑、去掉 USB Hub;③确认选对了模组型号和固件,关闭杀软拦截,更新 Luatools 到最新版;④换一个 USB 口/电脑/线材交叉验证,排除驱动问题;⑤若用同型号好板子可正常烧录、而故障板始终无法进入下载模式,再考虑硬件损坏送修。烧录故障系统排查见 https://docs.openluat.com/common/howtodown/ ,下载接口设计见 https://docs.openluat.com/air780epm/luatos/hardware/download/ 。
25. 固件升级后Luatools项目都没了,怎么恢复?
解答: Luatools 的项目列表保存在工具本地资源目录中,升级工具后项目"消失"通常不是数据丢失,而是新版本启动时读取的资源目录变了。恢复步骤:①把新版本 Luatools 解压/覆盖安装到原来的安装目录再启动(项目配置随原目录保留),不要放到临时目录(temp/_temp)中运行;②在 Luatools 设置中检查"资源目录/本地资源路径"是否被指向了 temp 等临时文件夹,改回原资源目录后重启工具;③若原项目确实找不到,可在"项目管理"中新建项目,重新选择对应型号的内核固件(.soc)并添加脚本文件,脚本本身在你的工程目录里不受影响;④日常使用建议固定 Luatools 安装路径、不要在压缩包内直接运行。工具使用说明见 https://docs.openluat.com/common/Luatools/ 。
26. Luatools越升级越糟糕,历史版本在哪下载?
解答: 建议先按以下方式处理升级后异常,再考虑回退版本:①升级后出现卡住、拉取失败、界面异常,多为本地缓存/资源损坏,可关闭 Luatools 后删除其安装/资源目录下的 _temp(临时缓存)文件夹再重新打开,让工具重新拉取资源;②确认网络正常、必要时在工具内配置 HTTP/HTTPS/SOCKS5 代理(新版已支持网络代理配置),并以管理员身份运行;③若确认是新版本本身的问题,可向合宙反馈(crm.luatos.com 提交问题)并暂时使用旧版:Luatools 历史安装包与更新记录见工具教程页 https://docs.openluat.com/common/Luatools/ (内含版本更新记录与下载说明),固件的历史版本则在各型号固件页下载,例如 Air780EPM 见 https://docs.openluat.com/air780epm/luatos/firmware/780epm_version/ 。
27. AT固件发送AT+HTTPACTION=1有时无响应是什么原因?
解答: 发送 AT+HTTPACTION 后"无响应"分两种情况:一是连发 OK 都没有,多为串口/指令时序问题;二是有 OK 但一直等不到 +HTTPACTION 结果上报,多为网络承载(PDP)异常。排查步骤:①先发 AT+CPIN?(返回 READY)、AT+CGATT?(返回 +CGATT: 1)、AT+SAPBR=2,1 确认 SIM 就绪、已附着且 PDP 已激活拿到 IP,承载未就绪时 HTTPACTION 不会正常返回;②注意 PDP 被动去激活场景:网络异常时模组会上报 +SAPBR 1: DEACT,随后 HTTPACTION 返回 +HTTPACTION: 1,601,0(601 表示网络错误),此时应按 AT+HTTPTERM → 重新 AT+SAPBR=1,1 激活承载 → AT+HTTPINIT 重建 HTTP 上下文的顺序恢复,中间指令即使返回 ERROR/CME ERROR 也跳过继续执行;③检查 URL(AT+HTTPPARA="URL",...)是否正确、服务器是否可达、是否超时时间过短;④大文件 POST/GET 建议改用 AT+HTTPEXACTION/AT+HTTPEXGET 分段传输(旧固件存在超时或网络错误时 HTTPEXACTION 无法结束的问题,V2022 及以后 AT 固件已修复,请升级到较新 AT 固件);⑤若多次激活 PDP 仍失败,用 RESET 引脚复位模组,极端情况断电重新上电开机。HTTP AT 指令流程与异常处理见 https://docs.openluat.com/atmozu/product/command/http/ ,AT 固件版本见 https://docs.openluat.com/atmozu/product/firmware/ 。
28. AT+HTTPACTION=1和AT+HTTPREAD回复不一致?
解答: 这两个指令返回的本来就不是同一类数据,"不一致"多数是读取时序或长度参数问题:AT+HTTPACTION=1 完成后上报 +HTTPACTION: 1,状态码,数据长度(状态码 200 表示成功,第三个值是服务器响应体总字节数);AT+HTTPREAD 才是按起始位置和长度去读取响应体内容。对不上的常见原因:①没等 +HTTPACTION 上报成功就发 HTTPREAD,此时数据尚未收全;②HTTPREAD 的偏移/长度参数与响应体总长度不匹配(尤其响应较大、需分多次读取时,要按上次返回长度累加偏移);③响应体超过单次读取上限或模块缓存被后续数据覆盖;④POST 数据发送阶段出错(如 PDP 去激活返回 601),HTTPACTION 状态码本身就非 200。建议:先判断 +HTTPACTION 的状态码为 200 并记录总长度,再按总长度分段 AT+HTTPREAD 读取并自行拼接校验;大文件下载直接用 AT+HTTPEXACTION/AT+HTTPEXGET 分段获取。指令说明与示例见 https://docs.openluat.com/atmozu/product/command/http/ 。
29. AT+MPUBEX有例程说明吗?大块二进制数据如何通过AT+MPUB上传?
解答: AT 固件的 MQTT 发布指令(AT+MPUB/AT+MPUBEX 扩展发布)在合宙 AT 手册 MQTT 章节有完整说明与示例,发送结果确认见该章节 8.1 节:https://docs.openluat.com/atmozu/product/command/mqtt/#81 ,整体使用流程与常见问题见 https://docs.openluat.com/atmozu/product/command/mqtt/ (Air780EP 系列 AT 固件支持 MQTT 3.1.1)。大块二进制数据上传建议:①二进制内容用 HEX 方式发送,避免 0x00/0x0D/0x0A 等字节被当作字符串结束符或换行,导致数据截断;②单条消息不要超过模组缓存与服务器限制,按业务把大文件拆成多个分片(如每片 1~4KB),用 QoS1 逐片发布并在 payload 中带分片序号/总片数/CRC,由服务器或订阅端重组,每片收到发布成功确认后再发下一片;③更大量的数据(如固件、图片)不建议走 MQTT 消息体,改为 HTTP(S) 分段上传(AT+HTTPEXACTION),MQTT 只传文件 URL/通知;④若业务逻辑复杂,建议改用 LuatOS 二次开发,mqtt 核心库 mqttc:publish(topic, data, qos, retain) 对 payload 长度不做额外限制,配合 fota/http 传大文件更方便。
30. AT+SSLCFG="seclevel",153,4 返回+CME ERROR: 3是什么问题?
解答: +CME ERROR: 3 表示"操作不允许(operation not allowed)",即该 SSL 参数在当前状态下不能设置,最常见原因是 HTTP 上下文已初始化、配置顺序不对。AT 固件中 SSL 参数必须在 HTTP 服务初始化之前配置,正确顺序为:①需要证书验证时,先用 AT+FSCREATE/AT+FSWRITE 把 CA 证书(双向认证还需 client.crt/client.key)写入文件系统;②AT+HTTPSSL=1 打开 HTTPS 开关;③用 AT+SSLCFG 配置 seclevel、证书文件名、SNI 等 SSL 参数(SSL 参数不变时每次开机只需设置一次);④AT+HTTPINIT 初始化 HTTP 上下文,之后再设置 URL 并发请求。若已经 HTTPINIT 过,先 AT+HTTPTERM 结束再重新按上述顺序配置。seclevel 等参数取值以所用型号 AT 手册 SSL 章节为准。带证书验证的 HTTPS 完整流程见 https://docs.openluat.com/atmozu/product/command/http/ (5.5 节)。
31. HTTPS一次传输100KB或64KB左右数据,有支持更大传输的模组或新固件吗?
解答: 不需要换模组,AT 固件本身支持大体积 HTTP/HTTPS 传输,但标准 AT+HTTPACTION 方式受单次请求缓存限制,大文件应使用扩展指令分段传输:上传用 AT+HTTPEXACTION(分段 POST,支持边读边发),下载用 AT+HTTPEXGET/分段 AT+HTTPREAD。注意旧版 AT 固件存在"超时或网络错误时 HTTPEXACTION 无法结束"等问题,V2022 及以后版本已修复,请升级到对应型号的较新 AT 固件(版本记录见 https://docs.openluat.com/atmozu/product/firmware/ )。若数据量更大或逻辑复杂,建议改用 LuatOS 二次开发,http 核心库/httpplus 扩展库支持大文件上传下载、进度回调与断点续传,基本不受单次大小限制。HTTP 指令用法见 https://docs.openluat.com/atmozu/product/command/http/ 。
32. 模组通过HTTPS传输100KB数据,服务器只收到8793字节,是模组问题吗?
解答: 不是模组损坏,而是用错了传输方式:标准 AT+HTTPACTION 单次发送受内部缓存限制,超过上限的 body 会被截断(表现为服务器只收到前几 KB),因此一次只能稳定发送较小的数据块。解决办法:①上传改用 AT+HTTPEXACTION 分段 POST,把 100KB 数据按片(如每片 4~8KB)依次写入发送,由服务器按序拼接;②或在 MCU 侧把数据分段,逐段调用标准 HTTP 指令上传;③LuatOS 二次开发则直接用 http 核心库或 httpplus 扩展库发送完整 body/文件,无此限制。同时确认服务器端按 Content-Length/分片正确接收。指令说明见 https://docs.openluat.com/atmozu/product/command/http/ ,大文件下载库见 https://docs.openluat.com/osapi/ext/httpplus/ 。
33. 同一套脚本不同固件MQTT长连接功耗差别很大,怎么排查?
解答: MQTT 长连接功耗主要由"模组能否真正进入休眠/PSM、被唤醒的频率"决定,固件编号不同(内置库组合、基线版本不同)可能默认行为有差异。排查方法:①先用官方低功耗 MQTT demo 作为统一基准,分别刷不同固件测电流,确认差异是否来自固件本身;②对比信号:信号差时射频需更大发射功率维持连接,功耗显著升高,用 mobile.rsrp() 或 AT+CCED=0,1 查 RSRP 和驻网频段,保证天线接触良好;③检查是否存在额外唤醒源:串口数据、定时器周期过短、订阅消息频繁、RRC 未及时释放等都会拉高平均电流;④确认两版固件都正确进入了低功耗/PSM+(Luatools 日志看休眠状态),新版固件若修复过低功耗相关问题应优先使用;⑤MQTT keepalive 周期在服务器允许范围内适当拉长,减少唤醒。低功耗设计与天线/频段影响见 https://docs.openluat.com/common/airpower/ 及低功耗文档 https://docs.openluat.com/air780epm/luatos/app/lowpower/sleep/ 。
34. Air780EPM客户反馈信号不好怎么办?
解答: 按"先量化、再区分环境/天线/硬件"的顺序排查:①让客户在模组联网附着后(AT+CGATT? 返回 1)发 AT+CCED=0,1(LuatOS 用 mobile.rsrp()/mobile.scell())读取 RSRP、驻网频段和小区信息,RSRP 数值越接近 0 信号越好,数值很差说明弱覆盖;②区分是环境还是设备:同一位置用手机或另一台设备对比,若所有终端都差则是当地基站覆盖问题;③检查天线:4G 天线是否接紧、是否支持目标频段、走线是否被金属遮挡/缠绕;全 IO 开发板的弹簧天线未做阻抗匹配、信号本身偏差,可用斜口钳剪断弹簧天线,改用板上 IPEX(IPX)座外接一根 4G 天线对比;④量产产品建议找专业天线厂按整机结构做天线调试与阻抗匹配(合宙文档列有推荐天线供应商);⑤确认供电满足 VBAT 3.3~4.35V、瞬时 1A 以上并配大电容,供电不足会导致发射功率上不去、注册困难;⑥SIM 卡/运营商问题也会表现为"信号不好",换卡换运营商交叉验证。天线设计与供应商见 https://docs.openluat.com/air780epm/luatos/hardware/ant/ ,供电要求见 https://docs.openluat.com/air780epm/luatos/hardware/vbat/ 。
35. AIR780E含税批量单价是多少?
解答: Air780E 批量含税参考单价约 24 元(具体以合宙淘宝店实时标价和批量询价为准,价格随 Flash 配置、采购数量与活动调整)。最新价格、规格与购买链接请查合宙选型指南 https://docs.openluat.com/SelectionGuide/SelectionGuide/ 或合宙淘宝店 https://luat.taobao.com/ 。
36. Air8000W批量价格多少?
解答: Air8000W 批量含税参考单价约 32 元(价格随采购数量、配置与活动浮动,以合宙淘宝店实时标价或商务询价为准)。最新价格、Flash/RAM 规格与购买链接见合宙选型指南 https://docs.openluat.com/SelectionGuide/SelectionGuide/ 及合宙淘宝店 https://luat.taobao.com/ 。
37. AIR780EPS这个芯片还有在生产吗?
解答: Air780EPS 仍在供货,已有量产项目可继续采购使用、供货有保障;但它已不是合宙主推型号,新立项项目建议选用当前主推的 Air780EPM(4MB+4MB)或 Air780EHM(8MB+8MB)等型号,资源更充足、文档与固件更新更活跃。选型与在产型号以合宙选型指南为准:https://docs.openluat.com/SelectionGuide/SelectionGuide/ 。
38. 有双卡双待的模组吗?可以定制吗?
解答: 合宙 Cat.1 模组(如 Air780EPM/EHM 等)支持双卡但为"双卡单待":同一时刻只有一张卡驻网,可通过软件切换主副卡。硬件上 SIM1 是原生 SIM 接口,SIM2 的数字信号由 GPIO 模拟、电源共用 SIM1,且复用为 SIM2 的 GPIO 与其他功能管脚复用、不可同时使用;软件上可用 mobile 库手动选卡或自动选卡(参考双卡切换 demo)。目前没有"双卡双待"(两张卡同时在网)的标准产品;若项目确有双卡双待或其他特殊形态需求,可联系合宙商务提出硬件/固件定制评估。双卡管脚与切卡逻辑见 https://docs.openluat.com/air780epm/luatos/hardware/sim/ 。
39. 短信转发功能需要自己二次开发吗?
解答: 基础短信转发无需二次开发:合宙提供带短信转发功能的成品/固件方案(如 Air8783 短信转发上网棒、iRTU 配置固件),收到短信后按 HTTP/AirCloud 协议转发到指定服务器,转发地址等参数可通过 Web 配置页/iRTU 平台下发修改。若需要自定义鉴权、请求头、报文格式等特殊逻辑,可用 LuatOS 的 sms 核心库自行开发,也可把具体需求提给合宙做固件/方案定制。协议参考 AirCloud https://docs.openluat.com/protocols/aircloud/ ,iRTU 配置见 https://docs.openluat.com/value/irtu/state/ 。
40. Air5101S有串口电平1.8V的版本吗?
解答: Air5101S 蓝牙模组目前为 3.3V 串口电平,没有 1.8V 版本。若主控是 1.8V 电平,需在 UART 连线间加电平转换芯片(或双电源电平转换电路),不要直接互连,以免电平不匹配导致通信失败或损伤 IO。设计时以 Air5101 产品手册的电气参数为准,规格见选型指南 https://docs.openluat.com/SelectionGuide/SelectionGuide/ 及 https://docs.openluat.com/ 对应型号资料页。
41. 通过外部注入长效星历数据,支持吗?
解答: GNSS 芯片原厂虽具备离线/长效星历(Extended Ephemeris)能力,但该功能通常需向原厂付费授权,合宙现有固件尚未开放调通外部注入长效星历的接口,因此当前标准固件不支持自行注入长效星历。对首次定位速度有要求的场景,建议直接使用 AGPS:模组联网后自动从服务器下载短期星历(北斗约 1 小时、GPS 约 4 小时时效),可把冷启动缩短到秒级,LuatOS 中开启 exgnss.setup 的 agps_enable=true 即可。若项目确有离线长效星历的刚需,可向合宙提出正式需求,由商务/研发评估原厂授权与定制可行性。AGPS 原理见 https://docs.openluat.com/luatos_lesson/010_luatos_GNSS1/ 。
42. 6205A可以外接WiFi天线吗?
解答: 可以。Air6205 与 Air6205A 硬件完全兼容、仅天线方案不同:Air6205 底部焊盘预留 2.4G 天线位置,由客户自行设计板载天线(PCB 天线,低成本小体积);Air6205A 通过天线座子支持外接天线,适合远距离、复杂环境。因此需要外接 WiFi 天线时,选型贴 Air6205A 并在座子上接外置 2.4G 天线即可。Air6205/Air6205A 为 WiFi 从机模组(Wi-Fi 6 + 双模蓝牙 5.4,需搭配合宙 Air1601/780 系列主控使用)。产品说明见 https://docs.openluat.com/air6205/product/ ,选型见 https://docs.openluat.com/SelectionGuide/SelectionGuide/ 。
43. Air1602的麦克风和触摸都使用I2C1,录音后触摸失效怎么办?
解答: 原因是 ES8311 音频编解码芯片与 LCD 触摸共用 I2C1,录音/播放停止后调用 exaudio.pm(exaudio.SHUTDOWN) 对 ES8311 下电时会把 I2C1 一并关闭,导致同总线上的触摸控制器通信中断、触摸失效。处理办法:①升级 exaudio 扩展库到 202609011550 及以后版本,该版本已修复"Air1602 调用 play_stop() 后 SHUTDOWN 关闭 I2C1 导致 LCD 触摸失效"的问题;②临时规避:录音/播放结束后不要对 ES8311(麦克风/codec)做下电操作,保持 I2C1 可用,或在下电后重新初始化 I2C1 与触摸驱动;③软件上避免在同一 I2C 总线被音频下电影响期间访问触摸。exaudio 接口与版本更新说明见 https://docs.openluat.com/osapi/ext/exaudio/ 。
44. 支持4G通讯、以太网、WiFi热点、MQTT、HTTP、OTA、L2TP VPN、一路UART的固件/模组有吗?
解答: 除 L2TP VPN 外,其余需求 Air8000 系列(如 Air8000W 等)单颗模组即可满足:①4G 全网通通信;②以太网(最多可同时挂载 5 个网口,LAN/WAN 可组合);③WiFi 热点(AP);④MQTT、HTTP 等网络协议(mqtt/http 核心库);⑤FOTA 远程升级;⑥多路 UART 可用。WiFi 热点/网口共享 4G 上网通过 exnetif 扩展库的多网融合(NAPT/路由模式)实现——4G 作为数据出口,供接入 WiFi 热点或网口的设备访问互联网,示例见 https://docs.openluat.com/air8000/luatos/app/network_routing/ ,exnetif 说明见 https://docs.openluat.com/osapi/ext/exnetif/ 。关于 L2TP VPN:标准 LuatOS 固件/库未提供 L2TP 拨号客户端,合宙 4G 模组对 L2TP VPN 拨号默认不支持,无法直接满足该功能;若项目必须使用 L2TP,建议联系合宙商务评估定制,或在网络侧(外加支持 VPN 的路由器/网关)实现。选型见 https://docs.openluat.com/SelectionGuide/SelectionGuide/ 。
45. SPI连接UWB,支持SPI接口的模组都可以连接UWB吗?
解答: 只要模组的 SPI 工作在主机(master)模式、且 UWB 芯片是标准 SPI 从设备,原则上都可以连接,LuatOS 用 spi.deviceSetup(id, cs, CPHA, CPOL, dataw, bandrate, ...) 为 UWB 创建独立 spidevice 对象即可通信,CS、时钟频率和 CPOL/CPHA 模式按 UWB 芯片手册要求配置。但需按具体型号确认几点:①该型号是否引出可用的 SPI 管脚及足够的 CS 引脚(用 pins 工具核对复用);②SPI 最高时钟能否满足 UWB 速率要求;③IO 电平是否与 UWB 芯片匹配(默认多为 3.3V,可用 pm.ioVol 调整,Air8000 仅 3.3V);④若 UWB 需要中断/复位引脚,确认有富余 GPIO;⑤LuatOS 没有内置 UWB 驱动,需按芯片寄存器手册自行编写初始化和收发逻辑。接口说明见 https://docs.openluat.com/osapi/core/spi/ ,管脚复用以对应型号硬件文档/pins 工具为准。
46. Luatools下载、更新时一直卡住/拉取失败怎么办?
解答: 多为网络拉取资源失败或本地缓存损坏,按以下步骤处理:①关闭 Luatools,删除安装/资源目录下的 _temp 临时缓存文件夹后重新打开,让其重新下载资源;②检查网络,公司防火墙/代理可能拦截下载,新版 Luatools 已支持在设置中配置 HTTP/HTTPS/SOCKS5 代理;③以管理员身份运行,关闭杀毒软件对工具目录的拦截;④更新到最新版 Luatools(新版会修复下载/更新问题),若最新版异常可暂时回退历史版本;⑤固件烧录卡住则另查 USB 数据线(须为数据线)、供电是否充足、模组是否进入 boot 模式。工具下载与教程见 https://docs.openluat.com/common/Luatools/ ,烧录故障排查见 https://docs.openluat.com/common/howtodown/ 。
47. 阿里云通知设备端根证书更新和域名切换,LuatOS这边需要怎么升级?
解答: 设备端只需更新两样东西:新的 CA 根证书和新的服务器域名,都可以通过 FOTA 远程推送,无需拆机。原理:LuatOS 使用 MbedTLS 做 TLS 校验,证书不匹配时日志会报 network_state_shakehand 807:0x2700(MBEDTLS_ERR_X509_CERT_VERIFY_FAILED,证书验证失败)。升级方案:①把阿里云新根证书(.crt 内容)作为资源文件随升级包下发,保存到模组文件系统;LuatOS 在 mqtt.create/socket/http 的 ssl 参数中指定 CA 证书文件路径(如 ca="/aliyun_root_ca.crt"),新脚本读取新证书即可;②域名切换同理,把新域名做成可配置项(建议存 fskv,便于以后再改),升级后的脚本用新域名建立连接;③通过合宙 IoT 平台或自建服务器(libfota2)推送"新证书文件+脚本"升级包,注意 FOTA 要求新旧固件分区布局一致;④升级灰度发布并保留回退,设备需先 SNTP 同步系统时间,否则证书有效期校验会失败。TLS 证书配置与 0x2700 排查看 https://docs.openluat.com/luatos_lesson/003_luatos_mqtt/ ,FOTA 升级见 https://docs.openluat.com/luatos_lesson/009_luatos_fota/ 。
48. 供电电压USB充电芯片引出插上电可能4.4-4.5V,会导致模组死机吗?
解答: 会有风险,必须把 VBAT 控制在规格范围内。模组 VBAT 额定电压范围是 3.3V~4.35V,并要求能提供 1A 以上瞬时电流(建议并联 220uF 电解或 22uF 钽电容)。USB 充电芯片输出若达 4.4~4.5V,已超过上限,可能导致射频工作异常、死机甚至损伤器件;电压低于 3.3V(尤其发射瞬时跌落)也会引起重启/死机。处理建议:①不要直接把 4.4V 以上电压接 VBAT,增加稳压/DCDC 把供电限制在 4.35V 以内、3.3V 以上;②电池供电场景按手册选用常规锂电(截止 4.2V)或高压锂电(截止 4.35V),低至 2.0V 的锂锰/锂亚电池需加升压 DCDC;③实测 VBAT 在发射大电流时的纹波,确保不掉压。供电设计见 https://docs.openluat.com/air780epm/luatos/hardware/vbat/ 。
49. Air700ECH模组死机,ramdump显示CMS消息队列满、RF频段切换消息堆积,怎么解决?
解答: ramdump 中 CMS 消息队列满、RF/频段切换消息堆积,通常是射频任务无法及时处理消息,最常见根因是供电异常导致协议栈/RF 任务运行异常,其次是射频环境或天线问题。排查步骤:①重点查供电:VBAT 必须稳定在 3.3~4.35V、能提供 1A 以上瞬时电流,检查电源走线、电池/DC-DC 带载能力,并按参考设计并联 220uF 电解/22uF 钽电容,用示波器抓发射瞬间 VBAT 是否跌落;②查天线/射频:天线是否匹配、接触良好、有无短路或驻波过大,避免在金属屏蔽、无信号环境下长时间大功率发射;③升级到最新版本固件,排除已修复的协议栈问题;④复现时保留完整 ramdump 和 Luatools 日志,若以上排查无异常,可提供样机和 ramdump 给合宙做进一步分析(crm.luatos.com 提交流程)。供电要求见 https://docs.openluat.com/air780epm/luatos/hardware/vbat/ ,天线见 https://docs.openluat.com/air780epm/luatos/hardware/ant/ 。
50. 使用AT固件模组连接仪表,为什么连不上?
解答: 此类"连接仪表/上位机"场景,模组开机后按固件既定逻辑自动建立连接,一般不需要额外发 AT 指令;连不上时按以下顺序排查:①先刷对应型号的标准 AT 固件验证,排除定制/脚本固件配置问题;②检查物理连接:数据线/接插件(如 SMB/同轴线、串口线)是否接触良好、有无虚焊,天线是否接好;③确认供电满足 3.3~4.35V/1A 且开机正常(Luatools 或串口看开机日志);④SIM 卡就绪、已附着网络(AT+CPIN? 返回 READY、AT+CGATT? 返回 1),仪表侧通信参数(波特率、服务器地址/端口、协议)与模组一致;⑤用串口工具直接发 AT 指令确认模组响应正常,再定位是仪表侧还是模组侧问题。网络注册排查见 https://docs.openluat.com/air780epm/luatos/app/common/mobile/ 。
51. ch343k芯片电脑识别不到,换了2批都是这样,是假芯片吗?
解答: 识别不到绝大多数是驱动或连接问题,不能据此判定芯片是假的。排查步骤:①到沁恒官网下载并安装 CH343 驱动(以管理员身份运行 SETUP.EXE),安装后设备管理器"端口(COM 和 LPT)"应出现"USB-SERIAL CH343 (COMx)"且无黄色感叹号;②确认 USB 线是数据线而非充电线、设备已正常上电、重新插拔;③若显示未知设备/感叹号,用"更新驱动程序"手动指向驱动目录(含 .INF);④换 USB 口/电脑交叉验证,排除个别电脑系统问题;⑤驱动与硬件都确认后仍多批识别不到,再联系芯片供应商核实芯片来源。驱动安装与识别判断见 https://docs.openluat.com/common/usb_drv/ 。
52. 使用343K芯片烧写失败,合宙开发板用的是什么型号?
解答: 合宙开发板/引擎主机板载的是 CH347F(设备管理器显示"USB-SERIAL CH347 (COMx)"),官方烧录流程基于该芯片验证;自研底板用 CH343K 出现烧写失败,请先确认:①已正确安装 CH343 驱动、设备管理器能看到"USB-SERIAL CH343 (COMx)";②USB 为数据线、供电充足;③烧录走主串口 main_uart(UART1),模组进入 boot 模式(出现单个 boot 口、约保持 15 秒)后再点下载;④CH343K 的串口电平/接线与模组 UART 匹配。驱动识别见 https://docs.openluat.com/common/usb_drv/ ,烧录排查见 https://docs.openluat.com/common/howtodown/ 。
53. 固件FOTA升级可以清除KV分区和FS分区吗?
解答: 默认情况下 FOTA 远程升级不会清除 KV(FSKV)数据:FSKV 存储在独立分区,远程升级主要操作 FOTA 专用分区、ap/cp 分区和用户脚本分区,不会直接修改 FSKV 分区,因此升级后 fskv 中保存的参数仍在。需要区分的是:①用户脚本分区在升级脚本时会被新脚本替换(脚本文件随升级更新);②文件系统(FS)行为取决于升级方式与分区布局,FOTA 要求新旧固件 ap+cp 起始地址、脚本区/FS 分区大小一致,跨分区布局不能互升;③如果业务需要在升级后主动清空 KV/FS,应在脚本中自行调用 fskv.clear() 或格式化文件系统来实现,而不是依赖 FOTA 自动清除;④本地用 Luatools/量产工具烧录时可手动勾选"清 KV""清 FS"。说明见 https://docs.openluat.com/luatos_lesson/009_luatos_fota/ (8.5.1 节)及量产工具文档 https://docs.openluat.com/common/Luat_productiontool/ 。
54. 如何通过命令行烧录Luatools?
解答: 产线批量/自动化烧录推荐使用合宙量产烧录工具,而非手动操作 Luatools 界面。流程:①先用 Luatools"项目管理"生成量产文件(.soc);②联网版:把量产文件上传到 IoT 平台,记录系统生成的固件编号和自定义密码,下载"合宙量产烧录工具",在 port_config.ini 中配置烧录端口(除 Air8101 外,烧录端口指模组进入 boot 模式出现的 boot 端口,boot 模式最多保持约 15 秒);③登录量产工具,输入固件编号和密码,勾选"自动循环烧录",点"全部烧录"即可批量循环烧录,可勾选"清 KV/清 FS";④脱机版无需联网,把单个 .soc 放到工具目录下直接烧。该工具支持产线自动化配合。工具与配置说明见 https://docs.openluat.com/common/Luat_productiontool/ 。
55. 是否有5G RedCap模组计划?
解答: 合宙有 5G RedCap 模组的产品规划,预计明年年底左右推出(具体型号、规格与发布时间以合宙官方公告/选型指南更新为准)。当前有中高速率无线需求的项目,可先在选型指南中查看现有 4G Cat.1/Cat.4 及其他在产型号的速率与能力是否满足;需要 RedCap 特性的项目可联系合宙商务登记需求、获取最新进度。选型与新品动态见 https://docs.openluat.com/SelectionGuide/SelectionGuide/ 及合宙公告 https://docs.openluat.com/hezhou_publish/ 。
56. Air8000W/8201G定位器数据发到哪里?需要自建服务器吗?服务器端代码开源吗?
解答: 定位器数据通过 AirCloud 协议上报,有两种选择:①直接用合宙云平台(iot.luatos.com / AirCloud),设备端用 excloud 扩展库即可接入,无需自建服务器,开箱即用;②自建服务器:AirCloud 是开放协议(合宙 IOT 通用报文协议,含设备连接、鉴权、数据上报、指令下发、心跳/重连流程),协议文档公开,固件 demo 与硬件原理图开源,你可按协议自行实现服务端接收。若用合宙提供的默认网页/平台界面,页面会带合宙 logo;需要独立域名、自定义 logo/界面的项目可联系合宙做定制(域名/logo 定制一般为收费服务)。协议说明见 https://docs.openluat.com/protocols/aircloud/ ,接入示例见 https://docs.openluat.com/air780epm/luatos/app/base/aircloud_up/ 。
57. 有没有有线网口转4G的模组?
解答: 有,选用带以太网口的 Air8000 系列即可实现"网口转 4G"路由:网口侧设备用网线接入模组,模组内部通过 exnetif 扩展库的多网融合(NAPT)功能把 4G 网卡作为数据出口,为局域网设备提供互联网访问(即有线路由/4G CPE 场景),反向也支持以太网优先、4G 备份的多网优先级管理,模组最多可同时挂载 5 个以太网网口、LAN/WAN 灵活组合。网络路由示例见 https://docs.openluat.com/air8000/luatos/app/network_routing/ ,exnetif 库说明见 https://docs.openluat.com/osapi/ext/exnetif/ ,型号选型见 https://docs.openluat.com/SelectionGuide/SelectionGuide/ 。
58. 流量不够用怎么解决?
解答: 先分清是"流量套餐不够"还是"网速不够":①物联网数据上报类应用(MQTT/HTTP 小报文、定时心跳)流量消耗很小,流量不够通常是上报频率过高或传了大文件(图片/日志/固件走蜂窝),应降低上报频率、压缩数据、只在有网口/WiFi 时传大文件;②若要给电脑/设备做宽带上网、看视频等高带宽场景,4G Cat.1 上下行理论速率仅约 5Mbps/10Mbps,本身不适合宽带用途,应改用更高带宽方案(如带以太网/WiFi 的 Air8000 走固网/宽带出口,或选择更高制式模组);③利用 exnetif 多网融合,让设备优先走以太网/WiFi、4G 仅作备份,可显著节省蜂窝流量。Cat.1 网络能力见 https://docs.openluat.com/air780epm/ ,多网融合见 https://docs.openluat.com/osapi/ext/exnetif/ 。
59. 支持SIP对讲吗?SIP参数客户如何配置?
解答: 支持。选用带音频能力(audio/cc 核心库)的 LuatOS 固件,通过 exsip 扩展库即可实现 SIP 网络对讲/通话(注册、来电自动接听、外呼、RTP 语音)。SIP 参数在 exsip.init(config) 中配置,共 8 个参数,前 5 个必填:sip_server_addr(SIP 服务器地址)、sip_server_port(端口,默认 5060)、sip_domain(SIP 域)、sip_username(用户名/分机号)、sip_password(密码),可选 sip_transport(传输协议,"UDP"/"TCP",默认 TCP)、auto_answer(是否自动接听)、delay_auto_answer(自动接听延时)。配置流程:先 exsip.init(config) → exsip.start() 启动并自动注册(注册结果通过 exsip.on 回调返回)→ 外呼用 exsip.dial(target),挂断/停止用 exsip.stop()(停止后需等 100~200ms 再 start)。客户可把这些参数做成可配置项存 fskv,由平台/按键下发修改。接口详情见 https://docs.openluat.com/osapi/ext/exsip/ 。
60. 如何把IEEE754 32bit数据转换成float?
解答: 用 pack 核心库按单精度浮点格式打包/解包即可,无需手动拼位。格式符中 f 表示 4 字节单精度浮点(IEEE754 32bit),d 表示 8 字节双精度,> 表示大端、< 表示小端。示例:
-- float 转 4 字节二进制(大端)
local bytes = pack.pack(">f", 3.14)
-- 4 字节二进制还原为 float,返回值第一个是结束位置,第二个才是数值
local _, val = pack.unpack(bytes, ">f")
-- 小端设备/协议用 "
61. Lua5.3已经没有了loadstring函数,LuatOS底层做了兼容吗?
解答: 做了兼容。Lua 5.3 已用 load 取代 Lua 5.1 的 loadstring,LuatOS 固件开启了兼容处理,旧代码中的 loadstring 仍可正常使用;新写代码建议直接用标准写法 local f, err = load(codeStr),再以 pcall(f) 方式安全执行动态加载的代码,避免非法输入导致脚本报错重启。动态执行外部输入时务必用 pcall 包裹并做语法/来源校验。
62. pm.power进入低功耗后串口2通信丢数据,用WAKEUP唤醒后不休眠怎么处理?
解答: 这里有两个硬件限制要先明确:①低功耗/PSM+ 下只有主串口 UART1 支持 LPUART 休眠唤醒接收,UART3 等扩展串口不支持唤醒;且非 9600 波特率下 UART1 唤醒会丢失前几个字节;②带 GNSS 的型号(如 Air780EGP/EGG/EGH)UART2 已用于主控与内置 GNSS 芯片通信,不能再作通用串口使用(PIN28/29 建议只引出测试点)。因此"串口 2 休眠收数丢数据"无法通过软件规避,低功耗串口通信应走 UART1,并把对端波特率设为 9600、发送前先发 1~2 个唤醒字节。关于"WAKEUP 唤醒后不再休眠":唤醒后模组不会自动立刻回到低功耗,需要在唤醒中断/任务处理完成后重新调用低功耗配置(pm.power 恢复低功耗档位、重新进入休眠流程)才会再次休眠;PSM+ 模式则是定时/唤醒后从头运行脚本。LPUART 配置见 https://docs.openluat.com/osapi/core/uart/ (1.2 节),串口接线与 UART2 限制见 https://docs.openluat.com/air780epm/luatos/app/driver/uart/ (5.2 节)。
63. 某个sys.taskInit任务崩溃后设备一直重启,怎么指定任务崩溃不重启?
解答: LuatOS 中任务函数若抛出未捕获的 Lua 错误,会导致脚本异常终止并触发重启。让单个任务崩溃不影响整机的做法,是在任务函数体外层用 pcall(或 xpcall)包裹,把错误拦截在任务内部: sys.taskInit(function() while true do local ok, err = pcall(function() -- 你的业务逻辑放在这里 end) if not ok then log.error("task", "任务出错:", err) -- 记录错误,不让它抛到任务外 end sys.wait(1000) -- 出错后等待再重试,避免死循环刷屏 end end) 这样该任务即使内部报错也只会被 pcall 捕获、记录日志并继续循环,不会导致设备重启。建议同时用 errDump/日志上报错误,便于定位。任务机制见 https://docs.openluat.com/osapi/luatos_framework/ 。
64. 动态加载客户输入作为任务运行,语法错误导致整个设备一直重启,有什么办法避免?
解答: 动态加载外部输入代码时,必须分两步做错误隔离:①编译阶段用 load/loadstring 把字符串编译成函数,它会返回 nil 和错误信息而不是直接抛出,先判断返回值;②执行阶段用 pcall 包裹运行,拦截运行期错误。示例: local f, err = load(userCodeStr) if not f then log.error("dynload", "语法错误:", err) -- 语法错误在此拦截,不重启 return end sys.taskInit(function() while true do local ok, runErr = pcall(f) if not ok then log.error("dynload", "运行错误:", runErr) end sys.wait(1000) end end) 这样无论客户输入有语法错误还是运行时错误,都被拦截并记录,不会导致整机重启。同时建议对输入来源做校验,必要时配合 errDump 上报。
65. 设备配置的MQTT服务器地址和平台默认信息对不上是什么原因?
解答: 设备使用的 MQTT 服务器地址等参数是由平台按"项目/分组"下发的,设备必须先在平台建立项目并把 IMEI 归属、添加到对应分组,才能拉取到该分组配置的服务器信息;未分组/未归属的设备拿不到平台下发的配置,只会用固件里的默认参数,因此会出现"和平台设置对不上"。处理:①登录 iot.openluat.com(iRTU/AirCloud 平台)确认设备 IMEI 已在自己账号下并加入正确分组;②确认分组里配置的 MQTT 地址/端口与设备实际连接的一致;③设备重启或重新触发配置拉取,使新配置生效。设备归属与分组见 https://docs.openluat.com/air780epm/product/attributioniot/ 。
66. irtu续费选择项目是什么意思?
解答: iRTU 平台的增值服务按项目/服务类型分别计费,续费"选择项目"是指要为哪个项目(设备分组)、哪一类服务续费,常见的两类要区分清楚:①iRTU 平台/设备管理服务;②LBS 基站定位服务(按定位调用次数/设备授权计费)。续费时先确认到期/要续的是哪一种:只用数据上报就续 iRTU 服务,用到基站定位还需续 LBS 服务,并把续费应用到正确的项目分组上,避免续错服务导致定位或平台功能仍不可用。具体服务项与计费以 iRTU 平台页面说明为准 https://docs.openluat.com/value/irtu/state/ ,不确定可联系合宙客服确认。
67. fota固件升级能否清除KV分区和FS分区?
解答: FOTA 远程升级默认不清除 KV(FSKV)分区:FSKV 数据存放在独立分区,升级过程只操作 FOTA 专用分区、ap/cp 分区和用户脚本分区,不会直接改动 FSKV 分区,所以升级后 KV 中的配置参数保留。注意:①用户脚本分区会被升级后的新脚本替换;②FOTA 要求新旧固件 ap+cp 起始地址与脚本区/文件系统(FS)分区大小一致,分区布局不同的固件之间不能互升;③FOTA 流程本身不提供"自动清 KV/清 FS"选项,若升级后需要重置数据,应在新脚本里主动调用 fskv.clear() 或格式化文件系统;④需要彻底清空时,用 Luatools 本地烧录或量产烧录工具勾选"清 KV""清 FS"。说明见 https://docs.openluat.com/luatos_lesson/009_luatos_fota/ (8.5.1 节)。
68. Air780EGP插卡后不识别卡、连不上网络是什么原因?
解答: 按以下顺序排查:①确认固件类型:若刷的是定制/认证固件或不确定固件是否正常,先用对应型号的标准 AT 固件(或官方 LuatOS 固件)烧录测试,排除固件配置问题;②SIM 卡:确认卡已激活、未欠费、未插反,Cat.1 需用 4G/物联网卡(有一种欠费表现是能注册 2G 却注册不了 4G);重新插拔卡座、检查 SIM 走线;③用 AT 指令确认:AT+CPIN? 应返回 +CPIN: READY(否则不认卡),AT+CSQ 看信号,AT+CGATT? 返回 +CGATT: 1 表示已附着数据网络,LuatOS 则等待 IP_READY;④供电与天线:VBAT 3.3~4.35V 且瞬时电流足够,4G 天线接好匹配;⑤若 AT+CPIN? 一直不 READY,检查 SIM 卡座焊接、ESD 器件和管脚复用配置,必要时换卡换板交叉验证。网络信息排查见 https://docs.openluat.com/air780epm/luatos/app/common/mobile/ 。
69. 用合宙服务器页面会有合宙logo吗?定制域名和logo收费吗?
解答: 直接使用合宙云平台(AirCloud/iRTU)提供的默认网页/后台界面时,页面会显示合宙 logo,属正常的平台品牌标识。若需要使用自己的独立域名、替换为自有 logo/界面品牌,属于定制服务,一般是收费的,具体费用需联系合宙商务按项目评估。若希望完全自有品牌且无合宙标识,也可基于开放的 AirCloud 协议自建服务器、自研页面(协议与固件开源)。协议见 https://docs.openluat.com/protocols/aircloud/ 。
70. 如何从终端发送命令烧录Luatools?
解答: 需要脚本化/命令行批量烧录时,使用合宙量产烧录工具配合产线流程即可,无需在 Luatools 图形界面手动操作:①用 Luatools 生成量产文件(.soc),上传 IoT 平台得到固件编号和密码(或用脱机版直接指定 .soc);②在量产工具目录的 port_config.ini 中配置烧录端口(boot 端口,boot 模式约保持 15 秒);③量产工具支持登录后按固件编号+密码烧录、勾选"自动循环烧录"后循环更换设备自动烧录,可被产线/终端流程调用,也可勾选"清 KV""清 FS"。若需在 PC 终端侧做自动化调度,可将上述工具纳入脚本调用。工具配置与流程见 https://docs.openluat.com/common/Luat_productiontool/ 。