RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀(guān)看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

MQTT協(xié)議深度應(yīng)用:Air780E模組AT指令的創(chuàng)新實(shí)踐

青山老竹農(nóng) ? 來(lái)源:jf_82863998 ? 作者:jf_82863998 ? 2024-11-11 09:30 ? 次閱讀

今天我講解的是關(guān)于4G模組AT指令之MQTT應(yīng)用,有興趣的朋友可以閱讀本文深度學(xué)習(xí)

一、MQTT 協(xié)議簡(jiǎn)介

1.1 MQTT 概述

MQTT 是一種輕量級(jí)的消息傳輸協(xié)議,旨在在物聯(lián)網(wǎng)IoT)應(yīng)用中實(shí)現(xiàn)設(shè)備間的可靠通信。它使用發(fā)布-訂閱模式,其中包括一個(gè) MQTT 服務(wù)端(代理或服務(wù)器)和多個(gè) MQTT 客戶(hù)端之間的通信。

MQTT 協(xié)議具有以下特點(diǎn):

輕量級(jí):MQTT 協(xié)議設(shè)計(jì)簡(jiǎn)單,協(xié)議頭部開(kāi)銷(xiāo)小,適用于資源受限的設(shè)備和網(wǎng)絡(luò)

低帶寬消耗:MQTT 采用二進(jìn)制編碼,有效地利用網(wǎng)絡(luò)帶寬。

異步通信:客戶(hù)端可以隨時(shí)發(fā)布和訂閱消息,無(wú)需等待對(duì)方的響應(yīng)。

發(fā)布-訂閱模式:消息發(fā)布者將消息發(fā)布到特定的主題,而訂閱者則訂閱感興趣的主題。這種模式支持松耦合的通信和靈活的消息傳遞。

1.2 MQTT 協(xié)議中重要名詞

username用戶(hù)名,password 密碼,clientid 用戶(hù)標(biāo)識(shí),mqtt 可以通過(guò)前兩個(gè)參數(shù)保證連接的安全,通過(guò) clientid 確保設(shè)備唯一性。

qos 消息質(zhì)量,分為 0,1,2 三個(gè)等級(jí),分別表示只發(fā)一次,至少收到一次和只收到一次,通過(guò) qos 可以根據(jù)數(shù)據(jù)的重要性靈活選擇發(fā)送方式以節(jié)省帶寬和保證數(shù)據(jù)可靠。例如不重要的數(shù)據(jù)采集可使用 qos0 只發(fā)一次不關(guān)心服務(wù)器是否收到,重要的消息通過(guò) qos1 確保能收到,付款信息危險(xiǎn)設(shè)備開(kāi)關(guān)等場(chǎng)景使用 qos2 保證數(shù)據(jù)到達(dá)的同時(shí)且不重復(fù)。

host 主機(jī),port 端口,mqtt 需要連接的服務(wù)器參數(shù)。host 可以說(shuō) ip 或者域名。

topic 主題,根據(jù)主題區(qū)別消息類(lèi)型和來(lái)源,主要用來(lái)分類(lèi)數(shù)據(jù)。同時(shí) mqtt 是發(fā)布訂閱模型,topic 是發(fā)布和訂閱者通信的重要通道。

payload 消息內(nèi)容,發(fā)布和訂閱的具體數(shù)據(jù)。

retain 保留消息,保留消息是一條將保留標(biāo)志(retained flag)置為 true 的普通 MQTT 消息。broker 會(huì)針對(duì)主題依照 QoS 級(jí)別保留最后一條保留消息,當(dāng)訂閱者訂閱主題時(shí)會(huì)立即收到保留消息。broker 僅為每個(gè)主題保留一條保留消息。

二、本教程實(shí)現(xiàn)的功能概述

本文教你4G 模組使用 AT 命令連接 MQTT 服務(wù)器,實(shí)現(xiàn)模組和服務(wù)器之間數(shù)據(jù)的雙向傳輸!

本教程實(shí)現(xiàn)的功能定義是:

1、準(zhǔn)備一個(gè) MQTT 服務(wù)器;

2、4G 模組插卡開(kāi)機(jī)后,連接上 MQTT 服務(wù)器,訂閱一個(gè)消息/mqtt/pub;

3、使用 MQTT 協(xié)議的 PC 工具(本篇演示時(shí)使用的是 mqttx),用工具連接 mqtt 服務(wù)器,同時(shí)訂閱消息/mqtt/sub;

4、4G 模組向工具訂閱的消息/mqtt/sub 發(fā)布消息 data from 4G module,工具可以接收到并顯示出來(lái);

5、工具向 4G 模組訂閱的消息/mqtt/pub發(fā)布消息data from tcp server,模組可以接收到數(shù)據(jù)并通過(guò)串口輸出顯示

6、演示加密 mqtt 通信流程7、演示專(zhuān)網(wǎng)卡和設(shè)置 apn 等特殊情況連接 mqtt 服務(wù)器

三、準(zhǔn)備硬件環(huán)境

在正式介紹本功能示例之前,需要先準(zhǔn)備好以下硬件環(huán)境。

3.1 Air780E開(kāi)發(fā)板

使用的開(kāi)發(fā)板是 Air780E 核心板,

此核心板的詳細(xì)使用說(shuō)明參考:

https://docs.openluat.com/air780e/product/

此核心板的詳細(xì)使用說(shuō)明參考:Air780E 產(chǎn)品手冊(cè)公用產(chǎn)品資料 - 模組資料中心 (openluat.com)中的 << 開(kāi)發(fā)板 Core_Air780E 使用說(shuō)明 VX.X.X.pdf>>,寫(xiě)這篇文章時(shí)最新版本的使用說(shuō)明為:20240419155721583_開(kāi)發(fā)板Core_Air780E使用說(shuō)明V1.0.5.pdf (vue2.cn);核心板使用過(guò)程中遇到任何問(wèn)題,可以直接參考這份使用說(shuō)明 pdf 文檔。

3.2 SIM

準(zhǔn)備一張可以上網(wǎng)的 SIM 卡,可以是物聯(lián)網(wǎng)卡,也可以是自己的手機(jī)卡;注意:SIM 卡不能欠費(fèi),可以正常上網(wǎng)?。?!

3.3 PC電腦

準(zhǔn)備一臺(tái)電腦;注意:電腦有 USB 口,并且可以正常上網(wǎng)!??!

3.4 數(shù)據(jù)通信線(xiàn)

準(zhǔn)備一根數(shù)據(jù)線(xiàn),此數(shù)據(jù)線(xiàn)的作用是,連接 Air780E 開(kāi)發(fā)板和 PC 電腦,通過(guò) AT 命令完成業(yè)務(wù)邏輯的控制和交互;有兩種數(shù)據(jù)線(xiàn)可以使用,二選一即可;第一種數(shù)據(jù)線(xiàn)是 USB 數(shù)據(jù)線(xiàn)(連接 Air780E 開(kāi)板的一段是 Type-C 接口),一般來(lái)說(shuō)這種數(shù)據(jù)線(xiàn)如下圖所示:

wKgZoWcwxqiATqn0AARAuqsNofM519.png

普通的手機(jī) USB 數(shù)據(jù)線(xiàn)一般都可以直接使用;第二種數(shù)據(jù)線(xiàn)是 USB 轉(zhuǎn) TTL 串口線(xiàn),一般來(lái)說(shuō)這種數(shù)據(jù)線(xiàn)如下圖所示:

wKgZoWcwxrOAc953AAqgzWkBk-g368.png

在本教程中,使用的是第一種 USB 數(shù)據(jù)線(xiàn)。

3.5 組裝硬件環(huán)境

按照 SIM 卡槽上的插入方向,插入 SIM 卡,注意不要插反!如下圖所示,將 SIM 卡用力推入卡槽,聽(tīng)到咔嚓聲音后即可。

wKgaoWcwxsCAL5wbABBZ3RaG1PI587.png

wKgZoWcwxsuAOZZJABbNRWLvNdI260.png

USB 數(shù)據(jù)線(xiàn),連接電腦和 Air780E 開(kāi)發(fā)板,如下圖所示

wKgaoWcwxtmAYp8uABCjQ7Di3mA275.png

四、準(zhǔn)備軟件環(huán)境

在正式使用之前,需要安裝裝備好以下軟件。

4.1 Luatools 工具

要想燒錄 AT 固件到4G模組中,需要用到的調(diào)試工具:Luatools詳細(xì)使用說(shuō)明參考:

Luatools 工具使用說(shuō)明:
https://docs.openluat.com/Luatools/

4.2 AT 固件

4G 模組中必須燒錄正確的 AT 固件才能支持 AT 命令功能;通過(guò) Luatools 可以燒錄 AT 固件;有兩種方式可以獲取到 Air780E 模組的最新 AT 固件,二選一即可。

第一種方式是通過(guò) Luatools 獲取:
如下圖所示,可以直接選中最新版本的 AT 固件:

wKgZoWcwxu2AcTN0AAMxmAnvyYU804.png

第二種方式是訪(fǎng)問(wèn):

Air780E 固件版本,找到最新版本的固件即可。

4.3 MQTT 測(cè)試服務(wù)器

為了方便測(cè)試,提供了免費(fèi)的不可商用的 MQTT 測(cè)試服務(wù)器;

wKgZoWcwxvuAWbrLAADqAAvLPo0826.png

ssl 加密鏈接所需要的證書(shū)文件:mqttcerts.zip

4.4 PC 端串口工具

在量產(chǎn)的項(xiàng)目硬件設(shè)計(jì)中,一般都是由主控 MCU 通過(guò) UART 給 4G 模組發(fā)送命令實(shí)現(xiàn)具體的業(yè)務(wù)邏輯;在本教程中,為了測(cè)試方便,沒(méi)有使用主控 MCU;而是使用了 PC 電腦上的一個(gè)串口工具 SSCOM 給 4G 模組發(fā)送命令來(lái)實(shí)現(xiàn)演示功能。

4.5 mqttx 工具下載

MQTTX 是一款功能強(qiáng)大的 MQTT 客戶(hù)端應(yīng)用,專(zhuān)為物聯(lián)網(wǎng) (IoT) 和消息傳遞設(shè)計(jì)。它提供了直觀(guān)的用戶(hù)界面,支持多種連接配置,方便用戶(hù)進(jìn)行設(shè)備的快速連接、消息發(fā)布與訂閱,以及數(shù)據(jù)監(jiān)控與管理。安裝教程可參考這篇文章:MQTTX 下載使用詳解

五、MQTT 相關(guān)指令

復(fù)制鏈接查看4G模組MQTT指令:https://docs.openluat.com/air780e/at/app/at_command/#mqtt

六、使用方法舉例

6.1 確認(rèn)開(kāi)發(fā)板正常開(kāi)機(jī)并聯(lián)網(wǎng)正常

本次教程所用固件版本是 v1169,通過(guò) luatools 燒錄過(guò)固件后可以通過(guò)打印來(lái)判斷設(shè)備情況,具體參考下圖:

wKgaoWcwxxGAJNV-AASJATjm3TA282.png

6.2 普通不帶證書(shū)使用流程舉例

下面演示及普通連接流程,并進(jìn)行收發(fā)測(cè)試。查看流程時(shí)需要注意指令后面注釋的內(nèi)容,有助于理解指令具體作用

wKgZoWcwxx6AVkqQAAPhjA8T_fg869.png

wKgaoWcwxy6AOoSJAAN1n6XWvVo638.png

可以通過(guò)工具看到模組正常上報(bào)了數(shù)據(jù),服務(wù)器下發(fā)模組也能正常收到并通過(guò)串口打印出來(lái):

wKgZoWcwxzmARNwOAAKNtmqAtNo655.png

6.3 SSL 帶證書(shū)單向認(rèn)證流程舉例

MQTT 單向認(rèn)證加密是指,在 MQTT 通信中僅服務(wù)端驗(yàn)證客戶(hù)端身份,以此確保通信數(shù)據(jù)的安全傳輸。下面演示單向認(rèn)證加密連接的流程,并進(jìn)行收發(fā)測(cè)試本次測(cè)試需要準(zhǔn)備好單向認(rèn)證的加密證書(shū),如果使用的是合宙測(cè)試服務(wù)器的話(huà)需要下載上面服務(wù)器信息除的加密證書(shū)文件。如圖所示:

wKgaoWcwx0OASHpXAAG5CGMVeUY753.png

工具選擇加密端口,同時(shí)配置 ca 證書(shū)文件,具體如圖所示:

wKgZoWcwx0yAG1gVAAHa0Ihz7PQ967.png

單向認(rèn)證測(cè)試流程如下:

wKgaoWcwx1eAEqQ9AAg0smGlrhY418.png

wKgZoWcwx2qADg8IAAhRjSYQqL4763.png

wKgaoWcwx3mAMRO5AAHIYnP0mOU247.png

模組與服務(wù)器交互過(guò)程通過(guò)工具監(jiān)控如圖:

wKgZoWcwx4KALwTkAAIVl07lvA4774.png

6.4 SSL 帶證書(shū)雙向認(rèn)證流程舉例

MQTT 協(xié)議雙向認(rèn)證加密是指客戶(hù)端和服務(wù)器在通信時(shí)都使用數(shù)字證書(shū)進(jìn)行身份驗(yàn)證,并使用 TLS 協(xié)議對(duì)通信數(shù)據(jù)進(jìn)行加密,確保數(shù)據(jù)的機(jī)密性和完整性。下面演示雙向認(rèn)證加密連接的流程,并進(jìn)行收發(fā)測(cè)試所需證書(shū)文件如圖所示:

wKgaoWcwx4yAFPl_AAIzArmJEHg667.png

工具配置加密證書(shū)如圖:

wKgZoWcwx5WAWOR4AAGUMLP3YIQ222.png

雙向認(rèn)證測(cè)試流程:

wKgaoWcwx6OAYB_5AAvyheDa5Ng150.png

wKgaoWcwx7OANPSgAAuxkNPvlsA021.png

wKgZoWcwx8SAUqdjAA8fnvLRhyA179.png

wKgZoWcwx9SAV9vdAATaMBm9Wv4720.png

wKgaoWcwx-GAfsdGAAGw5Lvan3o409.png

交互日志如下:

wKgZoWcwx-uALCx8AAHOEITeOno794.png

七、APN 設(shè)置與專(zhuān)網(wǎng)卡

用戶(hù)根據(jù)自己使用的網(wǎng)絡(luò)類(lèi)型來(lái)區(qū)分,sim 卡可以分為公網(wǎng)卡和專(zhuān)網(wǎng)卡兩種;對(duì)于如何判斷自己手里的 sim 卡是公網(wǎng)卡還是專(zhuān)網(wǎng)卡可以通過(guò)下面兩種辦法區(qū)分:

咨詢(xún)sim卡供應(yīng)商;

如果有apn賬號(hào)、或者有密碼、或者有加密類(lèi)型,則可以認(rèn)為是專(zhuān)網(wǎng)卡。

對(duì)于公網(wǎng)卡和專(zhuān)網(wǎng)卡設(shè)置和查詢(xún)有不同的指令,合宙 780E 4G 模組設(shè)置和查詢(xún) APN 相關(guān)指令可以參考下圖:

wKgaoWcwx_mAIp6cAAM8jPLine8356.png

APN 及專(zhuān)網(wǎng)卡常見(jiàn)問(wèn)題1、模塊如何設(shè)置 APN

1)如果是公網(wǎng)SIM卡,不需要用戶(hù)主動(dòng)設(shè)置APN,軟件自動(dòng)去網(wǎng)絡(luò)端查詢(xún)APN進(jìn)行設(shè)置。

2)如果是專(zhuān)網(wǎng)SIM卡,首先咨詢(xún)SIM卡提供商APN參數(shù),然后通過(guò)AT+CPNETAPN=mode,“apnname”,“user”,“pwd”,authmoded進(jìn)行專(zhuān)網(wǎng)卡的參數(shù)設(shè)置。

2、專(zhuān)網(wǎng)卡連接服務(wù)器失敗

1)有的專(zhuān)網(wǎng)卡沒(méi)設(shè)置APN的情況下也能激活PDP,但是不能連專(zhuān)網(wǎng)卡指定的服務(wù)器,或者開(kāi)機(jī)后模塊沒(méi)自動(dòng)激活PDP,這個(gè)時(shí)候參考1,檢查APN參數(shù)是否設(shè)置正確。

2)如果有其他廠(chǎng)家的模塊,對(duì)比測(cè)試下是否連接正常。

3)如果無(wú)法百分百保證服務(wù)器配置沒(méi)問(wèn)題,最好在服務(wù)器端用wireshark抓包,或者在服務(wù)器上安裝一個(gè)第三方工具,開(kāi)啟一個(gè)服務(wù)器端口來(lái)對(duì)比測(cè)試。

4)用定向Ip的物聯(lián)網(wǎng)卡,需要把域名或IP加入白名單才能使用。

3、專(zhuān)網(wǎng)卡訪(fǎng)問(wèn)白名單 用定向 IP 的物聯(lián)網(wǎng)卡,需要把域名或 IP 加入白名單才能使用,下面列出模塊會(huì)訪(fǎng)問(wèn)的域名或 IP 服務(wù)器。

wKgZoWcwyAWAY15xAAM_wng8MtQ381.png

八、常見(jiàn)問(wèn)題和注意事項(xiàng)

8.1 注意事項(xiàng)

1、發(fā)送 MIPSTART 命令后,收到 OK 僅僅表示 4G 模塊開(kāi)始處理這條命令,并不表示 TCP 已經(jīng)連接成功;只有收到 CONNECT OK 才是成功的應(yīng)答;2、發(fā)送 MCONNECT 命令后,收到 OK 僅僅表示 4G 模塊開(kāi)始處理這條命令,并不表示 MQTT 已經(jīng)連接成功;只有收到 CONNACK OK 才是成功的應(yīng)答;3、發(fā)送 MSUB 命令后,收到 OK 僅僅表示 4G 模塊開(kāi)始處理這條命令,并不表示 MQTT 已經(jīng)訂閱成功;只有收到 SUBACK 才是成功的應(yīng)答;4、發(fā)送 MPUB 命令后,如果 QOS 不是 0,則收到 OK 僅僅表示 4G 模塊開(kāi)始處理這條命令,并不表示 MQTT 已經(jīng)發(fā)布成功;只有收到 PUBACK(QOS 為 1 時(shí))或者 PUBCOMP(QOS 為 2 時(shí))才是成功的應(yīng)答;

8.2 常見(jiàn)問(wèn)題

1、780E 支持的 MQTT 版本

MQTT3.1.1

2、連接服務(wù)器失敗

1、檢查下模塊信號(hào)、網(wǎng)絡(luò)注冊(cè)、網(wǎng)絡(luò)附著、PDP激活狀態(tài)。

2、檢查下SIM卡是否欠費(fèi)【4G模塊有一種欠費(fèi)表現(xiàn):無(wú)法注冊(cè)4G網(wǎng)絡(luò),可以注冊(cè)2G網(wǎng)絡(luò)】。

3、使用mqtt.fx,連接服務(wù)器確認(rèn)一下是否可以連接成功,排除服務(wù)器故障。

4、部分國(guó)外的開(kāi)源項(xiàng)目提供免費(fèi)的MQTT代理服務(wù)器,因?yàn)榫W(wǎng)絡(luò)的原因,國(guó)內(nèi)存在嚴(yán)重的延遲或者丟包現(xiàn)象,導(dǎo)致程序運(yùn)行出現(xiàn)問(wèn)題。

5、確認(rèn)是不是域名解析失敗導(dǎo)致,可以通過(guò)AT+CDNSGIP=確認(rèn)一下域名是否能正常解析(注意:該命令只有在執(zhí)行完at+cstt、at+ciicr、at+cifsr后才能正常工作),不能正常解析,可以通過(guò)AT+CDNSCFG=ip1,ip2設(shè)置域名解析服務(wù)器。

6、在 MIPSTART /SSLMIPSTART返 回 CONNECT OK后 才 能 發(fā) MCONNECT命令,而且要立即發(fā),否則會(huì)被服務(wù)器踢掉。

3、頻繁掉線(xiàn)是什么原因

1、檢查下是否存在代碼邏輯錯(cuò)誤,導(dǎo)致異常。

2、檢查下是否不斷重啟,導(dǎo)致異常。

3、檢查下服務(wù)器網(wǎng)絡(luò)是否穩(wěn)定,不要用內(nèi)網(wǎng)穿透方式搭建服務(wù)器。

4、檢查下使用環(huán)境是否網(wǎng)絡(luò)覆蓋不好,例如車(chē)庫(kù)、地下、電梯、山區(qū)等。

5、檢查下模塊信號(hào)、網(wǎng)絡(luò)注冊(cè)、網(wǎng)絡(luò)附著、PDP激活狀態(tài)。

6、排查是否為設(shè)備天線(xiàn)問(wèn)題:發(fā)出來(lái)設(shè)備的天線(xiàn)調(diào)試指標(biāo)參數(shù)給合宙技術(shù)支持人員;曾經(jīng)有一個(gè)客戶(hù)天線(xiàn)指標(biāo)明顯有問(wèn)題,導(dǎo)致10幾個(gè)小時(shí)出現(xiàn)30次左右掉線(xiàn);后來(lái)重新調(diào)試天線(xiàn)之后,40個(gè)小時(shí)出現(xiàn)幾次掉線(xiàn)。7、如果經(jīng)常出現(xiàn)連接被動(dòng)斷開(kāi):

1) 檢查下mqtt keep alive的時(shí)間,一般建議使用2分鐘【如果每2分鐘內(nèi)都有應(yīng)用數(shù)據(jù)收發(fā),則可以把mqtt keep alive的時(shí)間設(shè)置的長(zhǎng)一點(diǎn)兒】,除非有強(qiáng)制要求,否則不能太長(zhǎng),也不能太短。不建議超過(guò)4分鐘,基站策略會(huì)關(guān)閉長(zhǎng)時(shí)間沒(méi)有數(shù)據(jù)傳輸?shù)倪B接,太長(zhǎng)時(shí)間可能會(huì)導(dǎo)致連接被基站關(guān)閉;不建議少于1分鐘,太短時(shí)間可能會(huì)因?yàn)榫W(wǎng)絡(luò)環(huán)境波動(dòng)導(dǎo)致上行數(shù)據(jù)發(fā)送超時(shí),可能超過(guò)1.5倍的心跳時(shí)間,從而被服務(wù)器主動(dòng)斷開(kāi)連接。

2) 檢查下是否在1.5倍的mqtt keep alive的時(shí)間,沒(méi)有成功發(fā)送數(shù)據(jù)到服務(wù)器,就會(huì)被被服務(wù)器主動(dòng)斷開(kāi),這種情況一般都是發(fā)送數(shù)據(jù)超時(shí)引起的。

8、如果要降低掉線(xiàn)率,可通過(guò)如下方式設(shè)置【注意:在網(wǎng)絡(luò)環(huán)境不變的情況下,降低掉線(xiàn)率意味著會(huì)增加響應(yīng)延時(shí)】A. mqtt keep alive的時(shí)間,一般建議使用2分鐘【如果每2分鐘內(nèi)都有應(yīng)用數(shù)據(jù)收發(fā),則可以把mqtt keep alive的時(shí)間設(shè)置的長(zhǎng)一點(diǎn)兒】,除非有強(qiáng)制要求,否則不能太長(zhǎng),也不能太短。不建議超過(guò)4分鐘,基站策略會(huì)關(guān)閉長(zhǎng)時(shí)間沒(méi)有數(shù)據(jù)傳輸?shù)倪B接,太長(zhǎng)時(shí)間可能會(huì)導(dǎo)致連接被基站關(guān)閉;不建議少于1分鐘,太短時(shí)間可能會(huì)因?yàn)榫W(wǎng)絡(luò)環(huán)境波動(dòng)導(dǎo)致上行數(shù)據(jù)發(fā)送超時(shí),可能超過(guò)1.5倍的心跳時(shí)間,從而被服務(wù)器主動(dòng)斷開(kāi)連接。

B. 減少Q(mào)os1和Qos2的publish使用,允許的話(huà)建議都使用Qos0。

4、有沒(méi)有認(rèn)證機(jī)制

有,每個(gè)設(shè)備有clientid、username、password。

5、client id 是否允許重復(fù)

不允許重復(fù),重復(fù)的話(huà),服務(wù)器會(huì)踢掉上一個(gè)相同id的設(shè)備。

6、Qos0、1、2 如何選擇

應(yīng)用允許的情況下,建議使用Qos0,Qos1和Qos2會(huì)加重網(wǎng)絡(luò)負(fù)擔(dān),在網(wǎng)絡(luò)擁堵和較差的情況下,數(shù)據(jù)傳輸?shù)拇螖?shù)越多,掉線(xiàn)的概率就會(huì)越高。

7、是否支持 ssl

支持證書(shū)配置,支持單向認(rèn)證和雙向認(rèn)證

支持如下六種加密套件:

0X0035 TLS_RSA_WITH_AES_256_CBC_SHA

0X002F TLS_RSA_WITH_AES_128_CBC_SHA

0X0005 TLS_RSA_WITH_RC4_128_SHA

0X0004 TLS_RSA_WITH_RC4_128_MD5

0X000A TLS_RSA_WITH_3DES_EDE_CBC_SHA

0X003D TLS_RSA_WITH_AES_256_CBC_SHA256

8、MQTT SSL 如何使用

參考上面流程或者翻閱AT手冊(cè),如果SSL的參數(shù)配置不變,則每次開(kāi)機(jī)運(yùn)行過(guò)程中,僅設(shè)置一次即可

9、為什么 mqtt ssl 訪(fǎng)問(wèn)失敗

1、檢查服務(wù)器是否支持模塊支持的加密套件。

2、發(fā)日志文件給合宙技術(shù)支持人員分析。

10、MQTT 支持多連接嗎

目前MQTT僅支持單連接,不支持多連接。

11、MQTT 的遺囑如何使用

通過(guò)AT+MCONFIG命令可以設(shè)置遺囑的qos、retain標(biāo)志、topic、payload;在如下幾種(包含但是又不僅限于如下情況)情況下,服務(wù)器會(huì)主動(dòng)發(fā)布遺囑消息到訂閱的客戶(hù)端:1、模塊和服務(wù)器通信異常(例如模塊突然關(guān)機(jī)、模塊進(jìn)入了一個(gè)沒(méi)有網(wǎng)絡(luò)信號(hào)的環(huán)境等)超過(guò)1.5倍(一般是1.5倍,但不排除服務(wù)器可以修改這個(gè)時(shí)間)的 keep alive時(shí)間(可以通過(guò)AT+MCONNECT設(shè)置keep alive時(shí)間)。2、模塊主動(dòng)執(zhí)行AT+MDISCONNECT或者AT+MIPCLOSE。

12、MPUB 命令中,payload 包含"如何發(fā)送?

1、消息中內(nèi)嵌的雙引號(hào)請(qǐng)用22 表達(dá);控制字符回車(chē)r(0x0D) 請(qǐng)用D 表達(dá);;控制字符換行n(0x0A )請(qǐng)用A 表達(dá) ;控制字符反斜杠 (0x5C ) 請(qǐng)用5C表達(dá)。2、如果是 MCU 發(fā)消息,可能需要用\22 ,\0D ,\0A ,\5C 來(lái)表達(dá),即 需要轉(zhuǎn)義成\ 。

13、重試多次 PDP,MQTT 應(yīng)用一直連接失敗

如果重試多次PDP激活,PDP一直激活失敗,或者M(jìn)QTT一直連接失敗,則嘗試使用如下手段恢復(fù):1、使用RESET引腳復(fù)位模塊。2、極端情況下,直接給模塊斷電,再上電,POWER KEY引腳拉低開(kāi)機(jī)。

14、數(shù)據(jù)接收緩存問(wèn)題

可通過(guò)AT+MQTTMSGSET命令設(shè)置是否緩存,詳情參考AT手冊(cè)。1、不緩存:通過(guò)AT+MQTTMSGSET=0設(shè)置;收到訂閱的publish報(bào)文后,立即通過(guò)AT口輸出主題、payload長(zhǎng)度、payload內(nèi)容,每個(gè)報(bào)文中支持的payload內(nèi)容最長(zhǎng)1360字節(jié)。2、內(nèi)存緩存:通過(guò)AT+MQTTMSGSET=1設(shè)置;內(nèi)存中有一個(gè)緩存表,最多支持緩存4條publish報(bào)文;收到訂閱的publish報(bào)文后,插入緩沖表中的空閑位置,然后通過(guò)AT口輸出存儲(chǔ)位置;緩存表滿(mǎn)之后,新收到的publish報(bào)文會(huì)覆蓋最舊的publish報(bào)文。

注意:緩存表位于內(nèi)存中,斷電或者重啟后,緩存表中的數(shù)據(jù)會(huì)被清空;建議收到數(shù)據(jù)時(shí),通過(guò)AT+MQTTMSGGET及時(shí)讀取出來(lái),以防緩沖區(qū)滿(mǎn)覆蓋丟失數(shù)據(jù)。

15、數(shù)據(jù)發(fā)送問(wèn)題

AT+MPUB最大publish 2384字節(jié),AT+MPUBEX長(zhǎng)度取值范圍1-4100。

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀(guān)點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 物聯(lián)網(wǎng)
    +關(guān)注

    關(guān)注

    2909

    文章

    44557

    瀏覽量

    372753
  • AT
    AT
    +關(guān)注

    關(guān)注

    2

    文章

    192

    瀏覽量

    65202
  • MQTT協(xié)議
    +關(guān)注

    關(guān)注

    0

    文章

    97

    瀏覽量

    5361
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    硬件設(shè)計(jì)很簡(jiǎn)單?合宙低功耗4G模組Air780E—開(kāi)機(jī)啟動(dòng)及外圍電路設(shè)計(jì)

    ?Air780E是合宙低功耗4G-Cat.1模組經(jīng)典型號(hào)之一,上期我們解答了大家關(guān)心的系列問(wèn)題,并講解了[選型的注意要點(diǎn)] 有朋友問(wèn):能不能講些硬件設(shè)計(jì)相關(guān)的內(nèi)容? 模組的上電開(kāi)機(jī),是硬件設(shè)計(jì)調(diào)試
    的頭像 發(fā)表于 09-27 07:04 ?2135次閱讀
    硬件設(shè)計(jì)很簡(jiǎn)單?合宙低功耗4G<b class='flag-5'>模組</b><b class='flag-5'>Air780E</b>—開(kāi)機(jī)啟動(dòng)及外圍電路設(shè)計(jì)

    【合宙Air780E開(kāi)發(fā)板趣味應(yīng)用】Air780E開(kāi)發(fā)板方言打麻將

    合宙10月份推出的Air780E模組,是一款LTE Cat.1 bis通信模塊,采用移芯EC618平臺(tái),支持4G全網(wǎng)通。合宙也推出了相應(yīng)的開(kāi)發(fā)板,別看開(kāi)發(fā)板身材小,價(jià)格低,但是身手不差。合宙
    發(fā)表于 01-04 13:45

    Air780E硬件設(shè)計(jì)手冊(cè)

    電子發(fā)燒友網(wǎng)站提供《Air780E硬件設(shè)計(jì)手冊(cè).pdf》資料免費(fèi)下載
    發(fā)表于 04-14 09:57 ?20次下載

    Air780E/Air780EP/Air780EQ/Air201模塊遇到死機(jī)問(wèn)題如何分析

    Air780E/Air780EP/Air780EQ/Air201模塊遇到死機(jī)問(wèn)題如何分析簡(jiǎn)介本文檔適用于合宙Air780E、
    的頭像 發(fā)表于 07-19 15:37 ?646次閱讀
    <b class='flag-5'>Air780E</b>/<b class='flag-5'>Air780</b>EP/<b class='flag-5'>Air780</b>EQ/<b class='flag-5'>Air</b>201模塊遇到死機(jī)問(wèn)題如何分析

    Air780E/Air780EP/Air780EQ/Air201模塊遇到內(nèi)存死機(jī)如何分析

    Air780E/Air780EP/Air780EQ/Air201模塊遇到內(nèi)存死機(jī)如何分析簡(jiǎn)介本文檔適用于合宙Air780E、
    的頭像 發(fā)表于 07-19 16:07 ?518次閱讀
    <b class='flag-5'>Air780E</b>/<b class='flag-5'>Air780</b>EP/<b class='flag-5'>Air780</b>EQ/<b class='flag-5'>Air</b>201模塊遇到內(nèi)存死機(jī)如何分析

    合宙低功耗4G模組Air780E——產(chǎn)品規(guī)格書(shū)

    合宙低功耗4G模組Air780E的規(guī)格信息速覽
    的頭像 發(fā)表于 09-02 18:04 ?976次閱讀
    合宙低功耗4G<b class='flag-5'>模組</b><b class='flag-5'>Air780E</b>——產(chǎn)品規(guī)格書(shū)

    合宙Air780E硬件設(shè)計(jì)手冊(cè)02

    合宙低功耗4G模組Air780E硬件設(shè)計(jì)介紹
    的頭像 發(fā)表于 09-06 12:02 ?468次閱讀
    合宙<b class='flag-5'>Air780E</b>硬件設(shè)計(jì)手冊(cè)02

    選型4G-Cat.1模組Air780E時(shí),我應(yīng)該注意什么?

    ?Air780E是合宙低功耗4G-Cat.1模組經(jīng)典型號(hào)之一,累計(jì)出貨數(shù)量2000萬(wàn)+,廣泛應(yīng)用于物聯(lián)網(wǎng)各行業(yè)。在此,特別感謝各位大佬的信任與支持。 寫(xiě)這篇文檔的目的是什么呢? 從用戶(hù)的角度, 解答
    的頭像 發(fā)表于 09-27 07:07 ?447次閱讀
    選型4G-Cat.1<b class='flag-5'>模組</b><b class='flag-5'>Air780E</b>時(shí),我應(yīng)該注意什么?

    低功耗4G模組Air780E快速入門(mén):通過(guò)MQTT連接實(shí)現(xiàn)遠(yuǎn)程控制

    ? 今天我們學(xué)習(xí)Air780E快速入門(mén)之通過(guò)MQTT連接實(shí)現(xiàn)遠(yuǎn)程控制,伙伴們,學(xué)起來(lái)! 一、修改代碼 1.1 準(zhǔn)備工具 Air780E開(kāi)發(fā)板 Air780E開(kāi)發(fā)板設(shè)計(jì)資料
    的頭像 發(fā)表于 10-11 14:01 ?459次閱讀
    低功耗4G<b class='flag-5'>模組</b><b class='flag-5'>Air780E</b>快速入門(mén):通過(guò)<b class='flag-5'>MQTT</b>連接實(shí)現(xiàn)遠(yuǎn)程控制

    硬件設(shè)計(jì)很簡(jiǎn)單?低功耗4G模組Air780E—開(kāi)機(jī)啟動(dòng)及外圍電路設(shè)計(jì)

    ?Air780E是合宙低功耗4G-Cat.1模組經(jīng)典型號(hào)之一,上期我們解答了大家關(guān)心的系列問(wèn)題,并講解了[選型的注意要點(diǎn)] 有朋友問(wèn):能不能講些硬件設(shè)計(jì)相關(guān)的內(nèi)容? 模組的上電開(kāi)機(jī),是硬件設(shè)計(jì)調(diào)試
    的頭像 發(fā)表于 10-15 10:18 ?403次閱讀
    硬件設(shè)計(jì)很簡(jiǎn)單?低功耗4G<b class='flag-5'>模組</b><b class='flag-5'>Air780E</b>—開(kāi)機(jī)啟動(dòng)及外圍電路設(shè)計(jì)

    Air780E模組AT指令下的MQTT應(yīng)用:技術(shù)指南

    今天我要講的是Air780E模組AT指令下的MQTT應(yīng)用,希望對(duì)大家有所幫助。
    的頭像 發(fā)表于 11-07 14:02 ?327次閱讀
    <b class='flag-5'>Air780E</b><b class='flag-5'>模組</b>AT<b class='flag-5'>指令</b>下的<b class='flag-5'>MQTT</b>應(yīng)用:技術(shù)指南

    LuatOS與ADC:Air780E模組開(kāi)發(fā)的新篇章!

    今天我們學(xué)習(xí)的是Air780E模組LuatOS開(kāi)發(fā)之ADC應(yīng)用,希望能幫助到大家。
    的頭像 發(fā)表于 11-07 14:12 ?247次閱讀
    LuatOS與ADC:<b class='flag-5'>Air780E</b><b class='flag-5'>模組</b>開(kāi)發(fā)的新篇章!

    Air780E模組的ADC之旅 LuatOS開(kāi)發(fā)實(shí)例

    今天學(xué)習(xí)一個(gè)新的示例,關(guān)于Air780E模組LuatOS開(kāi)發(fā)的ADC應(yīng)用實(shí)例,希望大家有所收獲。
    的頭像 發(fā)表于 11-11 09:33 ?193次閱讀
    <b class='flag-5'>Air780E</b><b class='flag-5'>模組</b>的ADC之旅  LuatOS開(kāi)發(fā)實(shí)例

    Air780E模組LuatOS開(kāi)發(fā)的位運(yùn)算(bit)教程篇!

    本次我們要學(xué)習(xí)的是4G模組Air780E的LuatOS開(kāi)發(fā),關(guān)于位運(yùn)算(bit)教程分享給大家。
    的頭像 發(fā)表于 11-26 11:58 ?132次閱讀
    <b class='flag-5'>Air780E</b><b class='flag-5'>模組</b>LuatOS開(kāi)發(fā)的位運(yùn)算(bit)教程篇!

    低功耗模組Air780E的AT指令:FTP示例!

    本文說(shuō)的是關(guān)于4G模組AT指令的FTP示例,以Air780E為例,希望大家有所收獲。
    的頭像 發(fā)表于 11-30 09:40 ?179次閱讀
    低功耗<b class='flag-5'>模組</b><b class='flag-5'>Air780E</b>的AT<b class='flag-5'>指令</b>:FTP示例!
    RM新时代网站-首页