nRF91-QA-MQTT例程测试

一:nRF9160做纯AT模块开发步骤

  1. 烧录相关证书,并验证烧录结果(AT+CFUN=4 AT%CMNG=1)
  2. 烧录最新modem固件:mfw_nrf9160_1.3.4.zip固件
  3. 烧录最新hex固件:serial_lte_modem.hex固件
  4. 插入sim卡,中国大陆需要自行购买NB卡测试(开发板中自带sim卡不能使用)。
  5. 使用LTE Link Monitor测试nRF Connect for Desktop->LTE Link Monitor
  6. 连接到mqtt服务器测试

二:烧录相关证书(如果使用TLS SSL等:CA.crt client.crt client.key sec_tag)

  • 通过LTE Link Monitor烧录证书
    1. 打开LTE Link Monitor
    2. 连接到nRF9160-DK
    3. 发送AT指令:AT+CFUN=4,关闭射频
    4. 切换到LTE Link Monitor->CERTIFICATE MANAGER选项卡
    5. 点击Update certificates 更新证书 AT+CFUN=4 CERTIFICATE MANAGER选项卡 CERTIFICATE MANAGER选项卡

三:烧录最新modem固件(mfw_nrf9160_1.3.1.zip)

  1. 通过Programmer烧录modem固件 Programmer

四:烧录最新hex固件(serial_lte_modem.hex)

  1. 通过Programmer烧录hex固件 Programmer
  1. 插入sim卡
  2. 先连接上nRF9160-DK,发送下述AT指令
    1. 查询射频开关状态:AT+CFUN?
    2. 关闭射频:AT+CFUN=4
    3. 设置模块为NB模式:AT%XSYSTEMMODE=0,1,0,0
    4. 设置模块支持域名解析:AT%XEPCO=0
    5. 保存已经设置的参数:AT+CFUN=0
  3. 断开nRF9160-DK,再重新连接nRF9160-DK,可以看到以下测试结果 LTE Link Monitor

六:连接到mqtt服务器测试

  • windows客户端mqttx下载地址:链接
  • mqtt测试服务器 域名:mqtt.olib.cn
  • mqtt测试服务器 IP:216.240.134.140
  • mqtt测试服务器 端口:1883

  • mqtt测试服务器 用户名:test1
  • mqtt测试服务器 密码:123456

  • mqtt测试服务器 用户名:test2
  • mqtt测试服务器 密码:123456

  • mqtt测试服务器 用户名:test3
  • mqtt测试服务器 密码:123456

  • mqtt测试服务器 用户名:test4
  • mqtt测试服务器 密码:123456

  • mqtt测试服务器 用户名:test5
  • mqtt测试服务器 密码:123456

  • mqtt测试服务器 用户名:test6
  • mqtt测试服务器 密码:123456
  • 注意:请先用mqttx客户端测试服务器可用性,再做如下AT指令测试

测试at指令连接到mqtt服务器开始

  • //Peter编辑的测试指令:
  • //关闭射频和GPS,进入飞行模式
  • AT+CFUN=4

  • 注意:仅需要执行此指令一次,避免之前的设置影响下边的指令设置
  • //恢复出厂设置
  • AT%XFACTORYRESET=0

  • 注意:如果之前没有烧录sec_tag为16842753的证书,则此指令会报错,请忽略报错
  • //删除sec_tag为16842753的证书
  • AT%CMNG=3,16842753,0

//切换到CERTIFICATE MANAGE面板,烧录sec_tag为16842753 的 CA证书 AT%CMNG=0,16842753,0,”—–BEGIN CERTIFICATE—– MIIDQTCCAimgAwIBAgITBmyfz5m/jAo54vB4ikPmljZbyjANBgkqhkiG9w0BAQsF ADA5MQswCQYDVQQGEwJVUzEPMA0GA1UEChMGQW1hem9uMRkwFwYDVQQDExBBbWF6 b24gUm9vdCBDQSAxMB4XDTE1MDUyNjAwMDAwMFoXDTM4MDExNzAwMDAwMFowOTEL MAkGA1UEBhMCVVMxDzANBgNVBAoTBkFtYXpvbjEZMBcGA1UEAxMQQW1hem9uIFJv b3QgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALJ4gHHKeNXj ca9HgFB0fW7Y14h29Jlo91ghYPl0hAEvrAIthtOgQ3pOsqTQNroBvo3bSMgHFzZM 9O6II8c+6zf1tRn4SWiw3te5djgdYZ6k/oI2peVKVuRF4fn9tBb6dNqcmzU5L/qw IFAGbHrQgLKm+a/sRxmPUDgH3KKHOVj4utWp+UhnMJbulHheb4mjUcAwhmahRWa6 VOujw5H5SNz/0egwLX0tdHA114gk957EWW67c4cX8jJGKLhD+rcdqsq08p8kDi1L 93FcXmn/6pUCyziKrlA4b9v7LWIbxcceVOF34GfID5yHI9Y/QCB/IIDEgEw+OyQm jgSubJrIqg0CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMC AYYwHQYDVR0OBBYEFIQYzIU07LwMlJQuCFmcx7IQTgoIMA0GCSqGSIb3DQEBCwUA A4IBAQCY8jdaQZChGsV2USggNiMOruYou6r4lK5IpDB/G/wkjUu0yKGX9rbxenDI U5PMCCjjmCXPI6T53iHTfIUJrU6adTrCC2qJeHZERxhlbI1Bjjt/msv0tadQ1wUs N+gDS63pYaACbvXy8MWy7Vu33PqUXHeeE6V/Uq2V8viTO96LXFvKWlJbYK8U90vv o/ufQJVtMVT8QtPHRh8jrdkPSHCa2XV4cdFyQzR1bldZwgJcJmApzyMZFo6IQ6XU 5MsI+yMRQ+hDKXJioaldXgjUkK642M4UwtBV8ob2xJNDd2ZhwLnoQdeXeGADbkpy rqXRfboQnoZsG4q5WTP468SQvvG5 —–END CERTIFICATE—– “

  • //设置支持域名解析
  • AT%XEPCO=0

  • //设置模块工作模式为NB模式
  • AT%XSYSTEMMODE=0,1,0,0

  • //开启射频,注册到网络
  • AT+CFUN=1

  • //注意:需要等待至少15秒左右(网络环境差会更久),然后再查询注册到网络的IP,
  • //如果查询到ip,则可以继续测试,如果没有获取到IP,无需以下步骤测试。
  • AT+CGDCONT?

  • //如果之前的mqtt连接没有断开,则断开之前的mqtt连接
  • AT#XMQTTCON=0

  • //连接到mqtt服务器
  • AT#XMQTTCON=1,”MyMQTT-Client-ID”,”test1”,”123456”,”mqtt.olib.cn”,1883

  • //发布消息,至多一次
  • AT#XMQTTPUB=”test1”,”nRF9160 msg QOS 0”,0,0

  • //发布消息,至少一次
  • AT#XMQTTPUB=”test1”,”nRF9160 msg QOS 1”,1,0

  • //发布消息,只有一次
  • AT#XMQTTPUB=”test1”,”nRF9160 msg QOS 2”,2,0

  • //msg为空则进入数据模式
  • //进入数据模式指令,此处需更换测试工具为sscom 而不可以用LTE Link Monitor v2.3.0
  • AT#XMQTTPUB=”test1”,”“,0,0

  • //data模式发送数据
  • //任意字符
  • 123 09 / * # ‘ “” ?? 0123456789

  • 注意:+++后边不可以有换行和回车符号
  • //退出数据模式指令
  • +++

新手必知

海量第三方学习资源.

超全常用工具与文档.

本站常用资源下载.

常见问题搜索.

QQ群: 542294007.

文章引用自:元仓库 OLIB.cn.