合宙 Air780E模块 AT 指令 MQTT连接

固件说明

在这里插入图片描述
在这里插入图片描述

重启模块

//tx
AT+RESET

//rx
AT+RESET

OK
^boot.rom'v'!\n
RDY

^MODE: 17,17

+E_UTRAN Service

+CGEV: ME PDN ACT 1

+NITZ: 2024/07/10,08:33:44+0,0

在这里插入图片描述

查询模块版本信息

//tx
AT+CGMR

//rx
AT+CGMR

+CGMR: "AirM2M_780E_V1161_LTE_AT"

OK

在这里插入图片描述

基本流程

4G模块支持MQTT和MQTT SSl协议, MQTT应用的基本流程如下:

 1、如果要支持SSL,配置SSL参数

 2、通过TCP连接到MQTT服务器

 3、发送MQTT CONNECT到服务器,打开会话连接

 4、订阅或者发布消息     
 
 5、关闭连接

指令

发布消息示例

//1.查询PIN码锁状态 //查询sim卡是否正常
//tx
AT+CPIN? 
//rx
AT+CPIN? 

+CPIN: READY    

OK

//2.查询是否附着上数据网络,如果返回+CGATT: 0表示未附着上
//tx
AT+CGATT?
//rx
AT+CGATT?

+CGATT: 1       

OK


//3.设置 MQTT 相关参数
//tx
AT+MCONFIG="866289037465624","user","password"
//rx
AT+MCONFIG="866289037465624","user","password"

OK


//4.建立 TCP 连接
//tx
AT+MIPSTART="lbsmqtt.airm2m.com","1884"
//rx
AT+MIPSTART="lbsmqtt.airm2m.com","1884"

OK

CONNECT OK
或者如果已经连接的情况下,再次连接则返回
//rx
T+MIPSTART="lbsmqtt.airm2m.com","1884"

OK

ALREADY CONNECT

//5.客户端向服务器请求会话连接 keepalive 建议取值在 300s 以上
//tx 
AT+MCONNECT=1,600
//rx
AT+MCONNECT=1,600

OK

CONNACK OK
再次发送此指令,接收提示错误如下
//rx
AT+MCONNECT=1,600

+CME ERROR: 767

//6.订阅主题 可选
//tx
AT+MSUB="mqtt/sub_topic",0
//rx
AT+MSUB="mqtt/sub_topic",0

OK

SUBACK


//7. 发布消息 可选
//tx  qos=0
AT+MPUB="mqtt/pub_topic",0,0,"publish 0 payload"
//rx
AT+MPUB="mqtt/pub_topic",0,0,"publish 0 payload"

OK
//tx qos=1
AT+MPUB="mqtt/pub_topic",1,0,"publish 1 payload"
//rx
AT+MPUB="mqtt/pub_topic",1,0,"publish 1 payload"

OK

PUBACK
//tx qos=2
AT+MPUB="mqtt/pub_topic",2,0,"publish 2 payload"
//rx
AT+MPUB="mqtt/pub_topic",2,0,"publish 2 payload"

OK

PUBREC

PUBCOMP

//8. 模块先关闭MQTT连接
//tx
AT+MDISCONNECT  
//rx
AT+MDISCONNECT

OK


//9. 关闭TCP链接
 //tx
 AT+MIPCLOSE  
// rx
 AT+MIPCLOSE

OK
 

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这个过程中,注意事项如下:

 1、发送MIPSTART命令后,收到OK仅仅表示4G模块开始处理这条命令,并不表示TCP已经连接成功;只有收到CONNECT OK才是成功的应答(其余错误应答,参考AT手册)

 2、发送MCONNECT命令后,收到OK仅仅表示4G模块开始处理这条命令,并不表示MQTT已经连接成功;只有收到CONNACK OK才是成功的应答(其余错误应答,参考AT手册)

 3、发送MSUB命令后,收到OK仅仅表示4G模块开始处理这条命令,并不表示MQTT已经订阅成功;只有收到SUBACK才是成功的应答(其余错误应答,参考AT手册)

 4、发送MPUB命令后,如果QOS不是0,则收到OK仅仅表示4G模块开始处理这条命令,并不表示MQTT已经发布成功;只有收到PUBACK(QOS为1时)或者PUBCOMP(QOS为2时)才是成功的应答(其余错误应答,参考AT手册)

MPUB命令中,payload 包含 " 时数据如何发送?

消息中内嵌的双引号请用\22 表达;控制字符 \r(0x0D)请用\0D 表达;控制字符\n(0x0A) 请用\0A 表达 如果是 MCU 发消息,请用\\22,\\0D,\\0A 来 表达,即\需要转义成\\

参考
https://doc.openluat.com/wiki/37?wiki_page_id=4501#_20
https://doc.openluat.com/article/4985
https://doc.openluat.com/article/4922

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/794073.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

某企业数据治理总体解决方案(45页PPT)

引言:集团企业数据治理总体解决方案旨在构建一个高效、安全、合规且灵活的数据管理体系,以支持企业决策优化、业务创新、风险管理和运营效率提升。该方案通过整合数据资源、规范数据流程、强化数据质量和促进数据共享,实现数据资产的最大化价…

Python task

def wordcount(text):# 将文本分割成单词列表,并转换为小写words text.lower().split()# 初始化一个空字典用于存储单词计数word_counts {}# 遍历单词列表中的每个单词for word in words:# 如果单词在字典中,则计数加1,否则将单词加入字典并…

Flutter跨平台开发技术

仅分享文字,见谅 Flutter Flutter 介绍 功能跨平台性架构流行度Flutter vs React Native 配置 Windows Flutter App 环境配置 Tizen Flutter App 环境用 Dart 语言开发 Flutter AppFlutter-Tizen 的限制 Flutter 介绍 Flutter 是由 Google 推出的开源移动应用开发…

“闭门造车”之多模态思路浅谈:自回归学习与生成

©PaperWeekly 原创 作者 | 苏剑林 单位 | 科学空间 研究方向 | NLP、神经网络 这篇文章我们继续来闭门造车,分享一下笔者最近对多模态学习的一些新理解。 在前文《“闭门造车”之多模态思路浅谈:无损》中,我们强调了无损输入对于理想的…

Qt中实现让静态图片动起来,创建动画效果

在现代应用程序开发中,动画效果是提升用户体验的重要元素之一。Qt作为一个强大的跨平台应用程序框架,提供了丰富的工具和库来创建各种动画效果。本文将介绍如何在Qt中使用静态图片创建动画效果。 实现方法一 使用QTimer和QPixmap 1.准备图片资源&#…

Diffusion model笔记

![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/f5ec0915d48e4e17bf158b70296cc8d8.png stable diffusion

谷粒商城实战笔记-27-分布式组件-SpringCloud-Gateway-创建测试API网关

本节的主要内容是创建网关模块,将网关注册到Nacos,并配置路由进行测试。 一,创建网关模块 右键工程New->Module,创建新模块,模块名称 gulimall-gateway。 填充各种信息。 选中Gateway依赖。 点击Create创建模块。…

普中51单片机:定时器与计数器详解及应用(七)

文章目录 引言定时器工作原理TMOD定时器/计数器工作模式寄存器定时器工作模式模式0(13位定时器/计数器)模式1(16位定时器/计数器)模式2(8位自动重装模式)模式3(两个8位计数器) 定时器配置流程代码演示——LED1间隔1秒闪烁代码演示——按键1控制LED流水灯状态代码演示——LCD160…

企业数据治理做完了,如何让业务部门用起来

引言:企业数据治理完成后,确保业务部门能够充分利用这些数据并融入日常运营中,是实现数据价值最大化的关键步骤。以下是一些策略和建议,帮助推动业务部门使用数据治理成果: 一、管理层面推广 高层应用示范&#xff1…

【漏洞复现】方正全媒体采编系统——binary.do——SQL注入

声明:本文档或演示材料仅供教育和教学目的使用,任何个人或组织使用本文档中的信息进行非法活动,均与本文档的作者或发布者无关。 文章目录 漏洞描述漏洞复现测试工具 漏洞描述 方正全媒体采编系统(FZMediaEditor)是一…

网络安全第一次作业

需求 前置工作 给设备配好ip地址,并且在总公司处配置vlan 1, 先建立多个安全区域 接着新建两个策略 :办公区访问dmz区域策略,生产区访问dmz区域策略 2 , 不做配置即可,生产区本不允许访问互联网 3, 新…

学习大数据DAY14 PLSQL基础语法3

目录 二重循环 三种循环随便嵌套 exit continue return 作业 数据提取 游标 隐式游标 显示游标 动态游标 游标使用流程 游标属性 游标配合循环使用示例 作业2 参数游标 current of 语句 作业3 PLSQL基础语法(三) 二重循环 三种循环随便嵌…

LangChain框架详解

LangChain框架详解 LangChain是一个基于语言模型开发应用程序的强大框架,旨在帮助开发人员简化与大模型交互、数据检索以及将不同功能模块串联起来以完成复杂任务的过程。它提供了一套丰富的工具、组件和接口,使开发人员能够轻松构建上下文感知和具备逻…

Qt:19.浮动窗口/子窗口(子窗口介绍、代码方式创建子窗口、设置子窗口标题、为子窗口添加控件、设置子窗口停靠位置)

目录 1.子窗口介绍: 2.代码方式创建子窗口: 3.设置子窗口标题: 4.为子窗口添加控件: 5.设置子窗口停靠位置。 1.子窗口介绍: 在 Qt 中,可以创建和管理子窗口(子窗口体)以实现多窗…

线程安全(二)synchronized 的底层实现原理、锁升级

目录 一、基础使用1.1 不加锁的代码实现1.2 加锁的代码实现二、实现原理2.1 synchronized 简介2.2 对象监控器(Monitor)2.3 加锁过程第一步:判断 Owner 指向第二步:进入 EntryList 阻塞第三步:主动进入 WaitSet 等待三、锁升级3.1 对象的内存结构3.2 Mark Word 对象头3.3 …

python的简单爬取

需要的第三方模块 requests winr打开命令行输入cmd 简单爬取的基本格式(爬取百度logo为例) import requests url"http://www.baidu.com/img/PCtm_d9c8750bed0b3c7d089fa7d55720d6cf.png" resprequests.get(url)#回应 #保存到本地 with open(&…

地址翻译过程(TLB-->页表-->Cache-->主存-->外存)

目录 1.地址结构 2.查找快表或页表:从虚拟地址--->物理地址 3.通过物理地址访问数据 设某系统满足以下条件: •有一个TLB与一个data Cache •存储器以字节为编址单位 •虚拟地址 14位 •物理地址 12位 •页面大小为 64B •TLB 为四路组相联&#x…

嵌入式工程师从0开始,到底该学什么,怎么学?

作为嵌入式工程师,从零开始学习需要掌握以下几个关键方面。我收集归类了一份嵌入式学习包,对于新手而言简直不要太棒,里面包括了新手各个时期的学习方向编程教学、问题视频讲解、毕设800套和语言类教学,敲个22就可以免费获得。 基…

【高中数学/指数函数、对数函数、正弦函数】求 y=2^x+x,y=log2_x+x,y=2*sinX+x 的零点位置大小关系

【问题】 已知函数f(x)2^xx,g(x)log2_xx,h(x)2*sinXx 的零点分别是a,b,c,则a、b、c的大小顺序是? 【解答】 粗览三个函数,h(x)2*sinXx的零点是最好解决的,明显x0时h(x)0,因此c在原点的位置; 对于f(x)2^xx&#xff…

【C++BFS】690. 员工的重要性

本文涉及知识点 CBFS算法 LeetCode690. 员工的重要性 你有一个保存员工信息的数据结构,它包含了员工唯一的 id ,重要度和直系下属的 id 。 给定一个员工数组 employees,其中: employees[i].id 是第 i 个员工的 ID。 employees[…