通信模组常用AT指令详解

本文汇总了通信模组调试中常用的一组AT指令,涵盖固件/版本信息查询(AT+QGMR、AT+CVERSION、AT+CSUB、AT+QEFSVER)、模组功能状态与SIM卡查询(AT+CFUN?、AT+CPIN?、AT+CIMI),以及运营商配置文件(MBN)查询(AT+QMBNCFG="list"),适用于固件升级核查、产线测试与售后故障排查场景。


一、版本信息类指令

这四条指令共同构成对模组"你到底跑的是哪个版本固件"的完整回答,建议在升级前后配套使用,交叉核对。

指令查询内容说明
AT+QGMRModem固件版本 + 应用固件版本判断整机固件版本最直接的指令
AT+CVERSIONModem编译信息:版本号、编译时间、Authors用于追溯具体某次固件编译的来源,通常在排查"同一版本号但行为不一致"问题时使用,可以精确定位到编译批次
AT+CSUBSub Edition(子版本/子型号)用于区分同一主版本下不同的子版本分支,常见于同一平台针对不同客户/项目定制出的差异化固件
AT+QEFSVEREFS分区版本EFS通常存放射频校准数据、NV配置等,其版本号独立于应用固件版本,升级/换背板/换天线后建议单独核查

实践建议:固件升级完成后,四条指令应一起执行并记录留档——QGMR确认主版本号,CVERSION确认编译时间及具体编译批次,CSUB确认子版本分支是否正确,QEFSVER确认校准数据是否随固件一起正确更新。如果只核对QGMR而忽略QEFSVER,可能出现"固件版本对了,但校准数据是旧的"这种隐蔽问题。


二、模组状态与SIM卡类指令

指令查询内容典型返回
AT+CFUN?当前电话功能模式0=最小功能,1=全功能,4=飞行模式,5=FTM模式
AT+CPIN?SIM卡PIN码/识别状态返回READY表示SIM卡已被正常识别 [[10]](https://wiki.dfrobot.com/tel0182/docs/22147)
AT+CIMI国际移动用户识别码(IMSI)15位数字,可用于识别SIM卡归属运营商 [[6]](https://sixfab.com/wp-content/uploads/2021/06/Quectel_EC2xEG9xEG2x-GEM05_Series_AT_Commands_Manual_V2.0.pdf)

这三条是最基础的"模组是否活着、SIM卡是否被正确识别"的健康检查组合,通常排查任何入网问题都从这三条开始。


三、运营商配置(MBN)查询

AT+QMBNCFG="list" 用于列出模组内当前已加载的所有MBN(Mobile Broadband Network,也称PRI配置)文件,每一项对应一套特定运营商/地区的射频与协议参数配置。返回格式类似:

+QMBNCFG: "List",0,1,1,"ROW_Commercial",0x08010809,201907031
+QMBNCFG: "List",1,0,0,"Commercial-TMO",0x0801050F,202005251
...

字段依次为:索引、是否为出厂默认(preload)、是否当前激活(selected)、配置名称、版本号(hex)、日期 [[9]](https://wirelessjoint.com/viewtopic.php?t=2187)。

为什么重要:在支持多运营商配置的高通平台模组(如EC2x/EM系列)上,若当前激活的MBN与实际使用的运营商网络不匹配,会导致入网失败、VoLTE异常等问题。排查此类问题时,QMBNCFG="list"往往是关键一步,需配合AT+QMBNCFG="Select","<profile_name>"切换到正确配置 [[5]](https://github.com/the-modem-distro/pinephone_modem_sdk/blob/kirkstone/docs/AT_INTERFACE.md)。


四、典型使用流程

一次完整的模组诊断/升级验证流程建议按以下顺序执行:

  1. 固件版本核查AT+QGMRAT+CVERSIONAT+CSUBAT+QEFSVER,确认主版本、编译批次、子版本、校准数据版本四者一致且符合预期。
  2. 模组与SIM卡状态检查AT+CFUN? 确认模组已处于全功能模式,AT+CPIN? 确认SIM卡READYAT+CIMI 确认读取到正确的IMSI。
  3. 运营商配置核查AT+QMBNCFG="list" 确认当前激活的MBN配置文件是否与目标运营商/地区匹配,如不匹配则需要切换。

标签:none

评论区

快来做第一个评论的人吧~