AT命令连接阿里云mqtt(两种方式都有)

连网用NBIOT 移远的BC260YCN主芯片,mqtt服务器用阿里云。AT命令与其他环境关系不大。

先开通阿里云mqtt(目前个人免费),参考以下链接开通和测试

【MQTT】通过mqtt.fx连接阿里云(巨详细)_mqttfx怎么连接阿里云-CSDN博客

下载好ssCom串口调试工具

一、三元素连接方式

cpp 复制代码
AT    //测试与nobit的连线通
OK
AT+QSCLK=0    //禁止休眠
OK 
AT+CIMI     // 获取物联网卡号
460087933105679
AT+CGSN     //获取SN
MPN24H30A0*****P

AT+CGATT?     //检测网络是否附着到基站
+CGATT: 1
OK
AT+CGPADDR   //获取分配的IP,说明网络已经正常
+CGPADDR: 0,"10.90.35.36"
OK

AT+QMTCFG="aliauth",0,"k27ebAIurCE","ec600m_cn","5a67b8*********67e8d7f"   // 阿里云三元素
OK
AT+QMTOPEN=0,"iot-06z00cq6rhvrr4a.mqtt.iothub.aliyuncs.com",1883    //打开mqtt网络,这句有以下三个返回值
OK     //仅代表命令发送成功

+QMTOPEN: 0,0     //代表网络打开成功

AT+QMTCONN=0,0    //连接客户端至 MQTT 服务器,  这步很关键且必须在返回+QMTSTAT: 0,1之前执行,否则报ERROR。这句有以下两个返回值
OK

+QMTCONN: 0,0,0     //代表连接客户端至 MQTT 服务器成功

AT+QMTCONN?     //检测是否成功
+QMTCONN: 0,3    //成功
OK

+QMTSTAT: 0,1     //这个不清楚

AT+QMTPUB=0,2,1,1,"/k27ebAIurCE/ec600m_cn/user/update"   //发布mqtt消息
>
123    //消息内容,输入完按ctrl+z
OK

AT+QMTSUB=0,1,"/k27ebAIurCE/ec600m_cn/user/get",0      //订阅mqtt消息
OK

登录到阿里云物联网平台查看日志,看到这三条日志就代表已经成功。

二、 Has256的密钥方式

1、在阿里云-设备管理中获取

{"clientId":"k27ebAIurCE.ec600m_cn|securemode=2,signmethod=hmacsha256,timestamp=1736472579660|",

"username":"ec600m_cn&k27ebAIurCE",

"mqttHostUrl":"iot-06z00cq6rhvrr4a.mqtt.iothub.aliyuncs.com",

"passwd":"bb*****************************************************01",

"port":1883}

2、AT+QMTCFG之前的命令和方式一样,本方式不需要 AT+QMTCFG命令。

3、

cpp 复制代码
AT+QMTOPEN=0,"iot-06z00cq6rhvrr4a.mqtt.iothub.aliyuncs.com",1883
+QMTOPEN: 0,0     //代表网络打开成功

AT+QMTCONN=0,"k27ebAIurCE.ec600m_cn|securemode=2,signmethod=hmacsha256,timestamp=1736394890590|","ec600m_cn&k27ebAIurCE","你的passwd"     //连接客户端至 MQTT 服务器,  这步很关键且必须在+QMTOPEN: 0,0 之后执行,否则报ERROR。这句有以下两个返回值
OK

+QMTCONN: 0,0,0     //代表连接客户端至 MQTT 服务器成功

AT+QMTCONN?     //检测是否成功
+QMTCONN: 0,1    //成功,有时会是+QMTCONN: 0,3
OK

AT+QMTPUB=0,2,1,1,"/k27ebAIurCE/ec600m_cn/user/update"   //发布mqtt消息
>
123    //消息内容,输入完按ctrl+z
OK

AT+QMTSUB=0,1,"/k27ebAIurCE/ec600m_cn/user/get",0      //订阅mqtt消息
OK
  1. 登录到阿里云物联网平台查看日志,看到三条日志就代表已经成功。

三、串口调试常见返回值16进制与字符对照

0D 0A 是windows的回车和换行 0D是回车

4f 4b OK

41 54 AT

AT+QMTOPEN=0,"iot-06z00cq6rhvrr4a.mqtt.iothub.aliyuncs.com",1883

41 54 2B 51 4D 54 4F 50 45 4E 3D 30 2C 22 69 6F 74 2D 30 36 7A 30 30 63 71 36 72 68 76 72 72 34 61 2E 6D 71 74 74 2E 69 6F 74 68 75 62 2E 61 6C 69 79 75 6E 63 73 2E 63 6F 6D 22 2C 31 38 38 33 0D 0D 0A
OK

4F 4B 0D 0A 0D 0A

+QMTOPEN: 0,0

2B 51 4D 54 4F 50 45 4E 3A 20 30 2C 30 0D 0A

AT命令多返回值的问题,能否用16进制解决?

附: 16进制转换,16进制转换文本字符串,在线16进制转换 | 在线工具

相关推荐
蓬荜生灰2 分钟前
永磁无刷电机旋转原理
单片机·嵌入式硬件
保持学习ing6 分钟前
苍穹外卖day3--公共字段填充+新增菜品
java·阿里云·实战·springboot·前后端·外卖项目·阿里云文件存储
金色光环2 小时前
【Modbus学习笔记】stm32实现Modbus
笔记·stm32·学习
zskj_zhyl4 小时前
智慧养老丨从依赖式养老到自主式养老:如何重构晚年生活新范式
大数据·人工智能·物联网
Ronin-Lotus5 小时前
嵌入式硬件与应用篇---寄存器GPIO控制
stm32·单片机·嵌入式硬件·微处理器原理与应用
DeamoTech5 小时前
ESCADA
物联网·测试工具
热爱生活的猴子9 小时前
阿里云服务器正确配置 Docker 国内镜像的方法
服务器·阿里云·docker
星辰pid12 小时前
STM32控制四自由度机械臂(SG90舵机)(硬件篇)(简单易复刻)
stm32·单片机·嵌入式硬件·机械臂
艾伦_耶格宇12 小时前
【ACP】阿里云云计算高级运维工程师--ACP
运维·阿里云·云计算
威桑13 小时前
STM32 专有名词缩写整合
stm32·单片机·嵌入式硬件