本文基于BC28模块 波特率9600
NB-IOT 连接自己搭建的MQTT服务器步骤:
注:每次发送命令都要先回车换行再发送
1.ATI —查看当前模块版本(连接mqtt,模块要A07版本以上)
2.AT+CIMI —检查SIM卡是否读卡成功
3.AT+CSQ —检查卡信号的强弱
4.AT+CGSN=1 —获取IMEI唯一序列号
5.AT+CGATT? —检查模块能否上网
6.AT+CGPADDR —获取模块的IP地址
7.AT+QMTCFG="version",0,4 –配置mqtt版本
3 MQTT 协议 v3.1 , 4 MQTT 协议 v3.1.1
8.AT+QMTOPEN=0,"xxx.xxx.xxx.xxx",1883 –连接mqtt,服务器IP,端口号
9.AT+QMTCONN=0,"客户ID","用户名","密码"
10.AT+QMTPUB=0,0,0,0,"dev1" –发布主题“dev1”
注:发送数据的时候不需要回车,先发送数据,然后勾选十六进制,再输入1A发送,才能把数据发送成功。
11.AT+QMTSUB=0,1,"dev0",0 –订阅主题
12.AT+QMTCLOSE=0 –关闭当前连接
NB-IOT 连接阿里云物联网平台步骤:与连接mqtt服务器步骤一样,只是添加了三元组。
{
"ProductKey": "a1G6fuZHINh",
"DeviceName": "abcd",
"DeviceSecret": "9a7a6781f594481e7b1533e407b4d7e6"
}
准备工作,重复上面的1-6步骤
7.AT+QMTCFG="ALIAUTH",0,"a1G6fuZHINh","abcd","9a7a6781f594481e7b1533e407b4d7e6" –-配置阿里云
8. AT+QMTOPEN=0,"iot-as-mqtt.cn-shanghai.aliyuncs.com",1883 –连接阿里云物联网平台
9. AT+QMTCONN=0,"abcd"
10.AT+QMTPUB=0,0,0,0,"/sys/a1G6fuZHINh/abcd/thing/event/property/post" –数据上报,json格式
>{params:{ CurrentTemperature:27}}
注:发送数据的时候不需要回车,先发送数据,然后勾选十六进制,再输入1A发送,才能把数据发送成功。
11. AT+QMTSUB=0,1,"/a1G6fuZHINh/abcd/user/get",0 –订阅信息
12. AT+QMTCLOSE=0 –关闭当前连接
此文章是本人学习手稿,如有错误的地方,大家指出,一起学习一起进步!
有时间的话,会出基于stm32的NB-IOT开发