在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

780EP模塊 AT開發-MQTT應用指南

合宙LuatOS ? 2024-07-26 11:22 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

簡介

關聯文檔和使用工具:

  • AT固件獲取
  • AT指令手冊

材料準備

  • [EVB_Air780EP(V)]開發板一套,包括天線SIM
  • USB
  • PC電腦
  • 串口調試工具(如果沒有準備,推薦可以使用llcom,進頁面按下Ctrl+F 搜索 AirM2M_780EP_LTE_AT 即可找到780EP模塊所使用的AT固件,推薦選用該固件名稱后面數字版本號最高的最新relase版本進行調試。
  • 當前文檔示例使用AirM2M_780EP_V1007_LTE_AT版本固件
wKgaomagmHuAbrTeAAPJHs4fhmQ094.png

應用概述

4G模塊支持MQTT和MQTT SSl協議, MQTT應用的基本流程如下: 1、如果要支持SSL,配置SSL參數 2、通過TCP連接到MQTT服務器 3、發送MQTT CONNECT到服務器,打開會話連接 4、訂閱或者發布消息

示例

發布消息示例

先來看個正常情況下的AT命令序列,如果不理解AT命令含義,請自行參考AT手冊

AT+CPIN? +CPIN: READY //查詢sim卡是否正常 OK AT+CGATT? +CGATT: 1 //查詢是否附著上數據網絡,如果返回+CGATT: 0表示未附著上 OK AT+MCONFIG="866289037465624","user","password" OK AT+MIPSTART="lbsmqtt.airm2m.com","1884" OK CONNECT OK AT+MCONNECT=1,60 OK CONNACK OK AT+MSUB="mqtt/sub_topic",0 OK SUBACK AT+MPUB="mqtt/pub_topic",0,0,"publish 0 payload" OK AT+MPUB="mqtt/pub_topic",1,0,"publish 1 payload" OK PUBACK AT+MPUB="mqtt/pub_topic",2,0,"publish 2 payload" OK PUBREC PUBCOMP

發布消息示例演示效果

wKgaomajFjmAD4mbAAdaOuCWYms304.png

在這個過程中,注意事項如下:

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手冊)

接收消息示例

先來看下接收到訂閱消息時的AT命令處理序列,如果不理解AT命令含義,請自行參考AT手冊

AT+MCONFIG="866289037465624","user","password" OK AT+MIPSTART="lbsmqtt.airm2m.com","1884" OK CONNECT OK AT+MCONNECT=1,60 OK CONNACK OK AT+MSUB="mqtt/sub_topic",0 OK SUBACK AT+MPUB="mqtt/sub_topic",0,0,"123456" //在mqtt/sub_topic上收到訂閱消息,payload為123456 //默認是直接輸出收到的訂閱消息,不做緩存 +MSUB: "mqtt/sub_topic",6 byte,123456 //設置訂閱消息的處理模式,設置為緩存模式 //接下來收到訂閱消息時,會提示訂閱消息的緩存位置 AT+MQTTMSGSET=1 OK //在mqtt/sub_topic上收到一條訂閱消息,緩存到位置0 +MSUB: 0 //主動讀取緩存的所有訂閱消息 AT+MQTTMSGGET +MSUB:mqtt/sub_topic,6 byte,123456 OK //在mqtt/sub_topic上收到一條訂閱消息,緩存到位置0 +MSUB: 0 //在mqtt/sub_topic上收到一條訂閱消息,緩存到位置1 +MSUB: 1 //主動讀取緩存的所有訂閱消息 AT+MQTTMSGGET +MSUB:mqtt/sub_topic,6 byte,123456 +MSUB:mqtt/sub_topic,6 byte,123456 OK

接收消息演示效果

wKgZomajFkiAQq1QAAIa5np4yQ0164.png

TCP被動斷開示例

先來看下連接被動斷開時的AT命令處理序列,如果不理解AT命令含義,請自行參考AT手冊

AT+MCONFIG="866289037465624","user","password" OK AT+MIPSTART="lbsmqtt.airm2m.com","1884" OK CONNECT OK AT+MCONNECT=1,60 OK CONNACK OK CLOSED //此處TCP連接被動斷開 AT+MIPCLOSE +CME ERROR: 767 //此處無論返回OK、ERROR還是CME ERROR,都直接跳過,不用做正確性判斷 AT+MCONFIG="866289037465624","user","password" OK AT+MIPSTART="lbsmqtt.airm2m.com","1884" OK CONNECT OK AT+MCONNECT=1,60 OK CONNACK OK

PDP被動去激活示例

先來看下PDP被動去激活時的AT命令處理序列,如果不理解AT命令含義,請自行參考AT手冊

AT+MCONFIG="866289037465624","user","password" OK AT+MIPSTART="lbsmqtt.airm2m.com","1884" OK CONNECT OK AT+MCONNECT=1,60 OK CONNACK OK +CGEV: NW PDN DEACT 1 //此處PDP被動去激活 AT+MIPCLOSE OK //此處無論返回OK、ERROR還是CME ERROR,都直接跳過,不用做正確性判斷 AT+MCONFIG="866289037465624","user","password" OK AT+MIPSTART="lbsmqtt.airm2m.com","1884" OK CONNECT OK AT+MCONNECT=1,60 OK CONNACK OK


常見問題

1、MQTT支持多連接嗎 目前MQTT僅支持單連接,不支持多連接 2、MQTT的遺囑如何使用 通過AT+MCONFIG命令可以設置遺囑的qos、retain標志、topic、payload;在如下幾種(包含但是又不僅限于如下情況)情況下,服務器會主動發布遺囑消息到訂閱的客戶端:

1、模塊和服務器通信異常(例如模塊突然關機、模塊進入了一個沒有網絡信號的環境等)超過1.5倍(一般是1.5倍,但不排除服務器可以修改這個時間)的 keep alive時間(可以通過AT+MCONNECT設置keep alive時間) 2、模塊主動執行AT+MDISCONNECT或者AT+MIPCLOSE 曾經有用戶碰到過如下問題: 模塊設置了遺囑topic為/will_topic,遺囑payload為offline,keep alive時間為5分鐘,模塊關機后,等待2分鐘,在等待的2分鐘內,其他訂閱了/will_topic的客戶端沒有收到遺囑消息(這是正常的,因為還沒有到達1.5倍的keep alive時間),2分鐘后,模塊開機mqtt重連成功后,其他客戶端卻收到了遺囑消息,這是什么原因呢?這部分機制是服務器端設計的,和模塊無關,個人認為:服務器端仍然在維持2分鐘前的那個mqtt連接,現在模塊開機,用同樣的client id重連后,會斷開之前維護的相同client id的mqtt連接,斷開時,就發布了一次遺囑消息。那這種問題,如何解決呢?模塊可以在AT+MCONNECT返回CONNACK OK之后,通過AT+MPUB一個topic為/will_topic,payload為online的消息,這樣訂閱了遺囑topic的其他客戶端就會收到這個online消息

3、MQTT SSL如何使用 本文主要描述了基本流程和異常處理,對于MQTT SSL使用方法沒有做過多描述,這一部分,請自行參考AT手冊MQTT章節下《使用方法舉例》中的"SSL帶證書驗證流程"使用方法;支持的SSL參數,請自行參考AT+SSLCFG命令說明

如果SSL的參數配置不變,則每次開機運行過程中,僅設置一次即可

4、重試多次PDP,MQTT應用一直連接失敗 如果重試多次PDP激活,PDP一直激活失敗,或者MQTT一直連接失敗,則嘗試使用如下手段恢復:

1、使用RESET引腳復位模塊 2、極端情況下,直接給模塊斷電,再上電,POWER KEY引腳拉低開機

5、MPUB命令中,payload包含"如何發送? 消息中內嵌的雙引號請用\22 表達;控制字符 \r(0x0D)請用\0D 表達;控制字符\n(0x0A) 請用\0A 表達 如果是 MCU 發消息,請用\\22,\\0D,\\0A 來 表達,即\需要轉義成\\

6、連接服務器失敗

  1. 檢查下模塊信號、網絡注冊、網絡附著、PDP激活狀態
  2. 檢查下SIM卡是否欠費
  3. 使用mqtt.fx,連接服務器確認一下是否可以連接成功,排除服務器故障
  4. 部分國外的開源項目提供免費的MQTT代理服務器,因為網絡的原因,國內存在嚴重的延遲或者丟包現象,導致程序運行出現問題,此現象在AT開發時影響嚴重
  5. 確認是不是域名解析失敗導致,可以通過AT+CDNSGIP=確認一下域名是否能正常解析(注意:該命令只有在執行完at+cstt、at+ciicr、at+cifsr后才能正常工作),不能正常解析,可以通過AT+CDNSCFG=ip1,ip2設置域名解析服務器。
  6. 在 MIPSTART /SSLMIPSTART返 回 CONNECT OK后 才 能 發 MCONNECT命令,而且要立即發,否則會被服務器踢掉。

7、數據接收緩存問題

不緩存:通過AT+MQTTMSGSET=0設置;收到訂閱的publish報文后,立即通過AT口輸出主題、payload長度、payload內容,每個報文中支持的payload內容最長4100字節

內存緩存:通過AT+MQTTMSGSET=1設置;內存中有一個緩存表,一條消息最多4kb,最多支持緩存4條publish報文;收到訂閱的publish報文后,插入緩沖表中的空閑位置,然后通過AT口輸出存儲位置;緩存表滿之后,新收到的publish報文會覆蓋最舊的publish報文

注意:緩存表位于內存中,斷電或者重啟后,緩存表中的數據會被清空;建議收到數據時,通過AT+MQTTMSGGET及時讀取出來,以防緩沖區滿覆蓋丟失數據

8、數據發送問題 AT+MPUB最大publish 4100字節,AT+MPUBEX長度取值范圍1-4100

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 開發板
    +關注

    關注

    25

    文章

    5622

    瀏覽量

    103567
  • 串口調試
    +關注

    關注

    2

    文章

    270

    瀏覽量

    25106
  • MQTT
    +關注

    關注

    5

    文章

    675

    瀏覽量

    23593
  • 合宙通信
    +關注

    關注

    0

    文章

    148

    瀏覽量

    2076
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    Air780EP模塊 LuatOS開發-MQTT接入阿里云應用指南

    簡介本文簡單講述了利用LuatOS-Air進行二次開發,采用一型一密、一機一密兩種方式認證方式連接阿里云。整體結構如圖關聯文檔和使用工具:LuatOS庫阿里云平臺準備工作Air780EP_全IO
    的頭像 發表于 07-24 13:51 ?1220次閱讀
    Air<b class='flag-5'>780EP</b><b class='flag-5'>模塊</b> LuatOS<b class='flag-5'>開發</b>-<b class='flag-5'>MQTT</b>接入阿里云應用<b class='flag-5'>指南</b>

    合宙Air780EP模塊Lua開發阿里云應用指南

    合宙Air780EP模塊Lua開發阿里云超詳細教學!看完包學會!
    的頭像 發表于 08-08 09:00 ?1534次閱讀
    合宙Air<b class='flag-5'>780EP</b><b class='flag-5'>模塊</b>Lua<b class='flag-5'>開發</b>阿里云應用<b class='flag-5'>指南</b>

    MQTT應用看這篇!合宙Air780EP_LuatOS_MQTT應用指南

    Air780EP 是合宙的低功耗4G模組之一,支持LuatOS的腳本二次開發,即使是不太懂技術的老板,也能輕松使用 Air780EP開發產品。 本文應各位大佬邀請,詳細講解了Air
    的頭像 發表于 08-08 17:13 ?2921次閱讀
    <b class='flag-5'>MQTT</b>應用看這篇!合宙Air<b class='flag-5'>780EP_LuatOS_MQTT</b>應用<b class='flag-5'>指南</b>

    合宙Air780EP模塊開發常見問題——異常斷鏈篇

    在用合宙Air780EP模塊開發的時候,有時候會遇到收不到網絡數據的問題。 這里把遇到的問題和排查方法記錄下來,希望能夠幫助到大家!
    的頭像 發表于 08-09 17:47 ?3770次閱讀
    合宙Air<b class='flag-5'>780EP</b><b class='flag-5'>模塊</b><b class='flag-5'>開發</b>常見問題——異常斷鏈篇

    合宙Air780EP模塊——AT指令MQTT接入OneNET開發指南

    物聯網設備要互動,Air780EP模塊是橋梁。用AT指令告訴MQTT:“幫我把話帶給OneNET吧!”MQTT就忙著打包數據,像寄信一樣傳給OneNET。OneNET收到后,處理、存著
    的頭像 發表于 08-19 16:40 ?4086次閱讀
    合宙Air<b class='flag-5'>780EP</b><b class='flag-5'>模塊</b>——AT指令<b class='flag-5'>MQTT</b>接入OneNET<b class='flag-5'>開發指南</b>

    Air780EP模塊AT開發FOTA遠程升級指南

    Air780EP模塊AT開發FOTA遠程升級指南簡介AT版本的遠程升級主要是對AT固件進行升級,實際方式為通過合宙官方IOT平臺升級或者使用自己搭建的服務器進行升級服務。關聯文檔和使用
    的頭像 發表于 07-19 15:16 ?1213次閱讀
    Air<b class='flag-5'>780EP</b><b class='flag-5'>模塊</b>AT<b class='flag-5'>開發</b>FOTA遠程升級<b class='flag-5'>指南</b>

    Air780E/Air780EP/Air780EQ/Air201模塊遇到死機問題如何分析

    Air780E/Air780EP/Air780EQ/Air201模塊遇到死機問題如何分析簡介本文檔適用于合宙Air780E、Air
    的頭像 發表于 07-19 15:37 ?1074次閱讀
    Air<b class='flag-5'>780</b>E/Air<b class='flag-5'>780EP</b>/Air<b class='flag-5'>780</b>EQ/Air201<b class='flag-5'>模塊</b>遇到死機問題如何分析

    Air780E/Air780EP/Air780EQ/Air201模塊遇到內存死機如何分析

    Air780E/Air780EP/Air780EQ/Air201模塊遇到內存死機如何分析簡介本文檔適用于合宙Air780E、Air
    的頭像 發表于 07-19 16:07 ?895次閱讀
    Air<b class='flag-5'>780</b>E/Air<b class='flag-5'>780EP</b>/Air<b class='flag-5'>780</b>EQ/Air201<b class='flag-5'>模塊</b>遇到內存死機如何分析

    Air780EP模塊AT開發-HTTP應用指南

    Air780EP模塊AT開發-HTTP應用指南
    的頭像 發表于 07-22 14:38 ?1222次閱讀
    Air<b class='flag-5'>780EP</b><b class='flag-5'>模塊</b>AT<b class='flag-5'>開發</b>-HTTP應用<b class='flag-5'>指南</b>

    Air780EP模塊 AT開發-MQTT接入OneNET移動物聯網平臺應用指南

    應用概述??使用AT方式通過MQTT協議連接onenetstudio。官網地址:https://open.iot.10086.cn/材料準備Air780EP(V)開發板一套,包括天線SIM卡,USB
    的頭像 發表于 07-24 14:24 ?1430次閱讀
    Air<b class='flag-5'>780EP</b><b class='flag-5'>模塊</b> AT<b class='flag-5'>開發</b>-<b class='flag-5'>MQTT</b>接入OneNET移動物聯網平臺應用<b class='flag-5'>指南</b>

    Air780EP模塊FTP應用AT開發詳解

    基于合宙Air780EP使用AT指令接入FTP的超詳細教程!
    的頭像 發表于 08-21 11:16 ?916次閱讀
    Air<b class='flag-5'>780EP</b><b class='flag-5'>模塊</b>FTP應用AT<b class='flag-5'>開發</b>詳解

    合宙LuatOS開發板Core_Air780EP使用說明

    Core-Air780EP 開發板是合宙通信推出的基于 Air780EP 模組所開發的,包含電源,SIM卡,USB,天線,音頻等必要功能的最小硬件系統。以方便用戶在設計前期對 Air
    的頭像 發表于 09-03 17:38 ?1086次閱讀
    合宙LuatOS<b class='flag-5'>開發</b>板Core_Air<b class='flag-5'>780EP</b>使用說明

    MQTT應用:Air780EP低功耗4G模組AT開發

    本文應各位大佬邀請,詳細講解Air780EP模組MQTT應用的多個AT命令。
    的頭像 發表于 10-25 17:27 ?674次閱讀
    <b class='flag-5'>MQTT</b>應用:Air<b class='flag-5'>780EP</b>低功耗4G模組AT<b class='flag-5'>開發</b>

    AT開發FOTA遠程升級:Air780EP低功耗4G模組

    ?針對客戶朋友的應用反饋,特編輯本篇文章:基于Air780EP模組AT開發的FOTA遠程升級指南
    的頭像 發表于 10-25 17:31 ?623次閱讀
    AT<b class='flag-5'>開發</b>FOTA遠程升級:Air<b class='flag-5'>780EP</b>低功耗4G模組

    Air780E模組AT指令下的MQTT應用:技術指南

    今天我要講的是Air780E模組AT指令下的MQTT應用,希望對大家有所幫助。
    的頭像 發表于 11-07 14:02 ?946次閱讀
    Air<b class='flag-5'>780</b>E模組AT指令下的<b class='flag-5'>MQTT</b>應用:技術<b class='flag-5'>指南</b>
    主站蜘蛛池模板: 午夜视 | 狠狠色丁香久久婷婷 | 国语自产自拍秒拍在线视频 | 快乐你懂的在线视频免费观看 | 国产色婷婷精品免费视频 | 最新天堂| 日韩va亚洲va欧美va浪潮 | 色偷偷88欧美精品久久久 | 亚洲最新黄色网址 | 国产一级淫 | 天天摸日日摸 | 怡红院精品视频 | 久色网 | 女人双腿搬开让男人桶 | 天天操天天插天天干 | 女性私密部位扒开的视频 | 色色色色色色色色色色色色 | 5g国产精品影院天天5g天天爽 | 老司机亚洲精品影院在线观看 | 欧美色视频日本片高清在线观看 | 色老头在线精品视频在线播放 | 激情欧美一区二区三区中文字幕 | 国产自在自线午夜精品视频在 | 国产男人搡女人免费视频 | 久久国产乱子伦精品免费看 | 国产一区二区三区在线影院 | 99久久精品费精品国产一区二区 | 爱爱视频天天干 | 久久久免费观看 | 午夜国产福利在线观看 | 香蕉午夜视频 | 黄网站观看| 人人插人人爽 | 国产精品大尺度尺度视频 | 久久久免费视频播放 | 在线亚洲欧美性天天影院 | 国产黄mmd在线观看免费 | 免费艹逼视频 | 色偷偷亚洲| 毛片综合 | 成人综合婷婷国产精品久久免费 |