文档首页/ 设备接入 IoTDA/ 常见问题/ LWM2M/CoAP接入相关问题
更新时间:2023-06-28 GMT+08:00

LWM2M/CoAP接入相关问题

LWM2M/CoAP协议设备接入开发流程

  1. 平台侧开发:包括创建产品、开发产品模型、开发编解码插件、注册设备。详细操作指导请参考创建产品开发产品模型开发编解码插件注册单个设备
  2. 设备侧开发:使用模组、设备侧Tiny SDK接入。详细操作指导请参考IoT Device SDK Tiny使用指南(C)
  3. (可选)应用侧开发。

如何检测NB网络信号?

发送指令AT+CSQ命令查询NB信号强度。

返回值为+CSQ:<rssi>,<ber>

rssi越大,表示信号越强。信号强度和rssi换算公式为:信号强度=113dBm+(rssi*2)

  • rssi=0,表示信号非常差。
  • rssi=31,表示信号质量非常强。
  • rssi=99,表示没有信号。
  • ber字段未使用,恒等于99。

没有信号或信号强度过低,需要联系运营商处理

NB模组附着网络失败如何处理?

  1. 请先执行AT+NUESTATS,查看是否有网络信号。
  2. 若Singal power等于0,表示没有收到网络信号, 请检查基站对应的频带否放开,或把设备换个信号强的地方再尝试。
  3. 执行AT+NBAND?查询设置的频段跟模组本身的频段是不是一样的。

NB模组绑定设备失败怎么办?

使用NB模组和真实NB网络接入物联网平台时,第一步就是接入平台绑定设备。

如果设备绑定失败,可能的原因有很多种,您可按照下述指导逐个定位排查问题。

  • 在物联网平台上注册设备时,设备标识(对应应用侧注册设备接口的nodeId)是否为NB模组的IMEI号?timeout设置的时间是否够长?

    使用NB模组接入物联网平台时,必须直接使用NB模组的IMEI号作为nodeId。同时,timeout设置的时间也不要太短,设备必须在注册成功后的这个时间内发送绑定请求到物联网平台。

  • 注册设备时的产品信息是否和产品模型一致?

    使用控制台注册设备时注意选择正确的产品模型。

  • NB模组是否能收到NB基站的信号?

    NB模组,通过AT+CSQ?命令查询NB信号强度。没有信号或强度过低,需要联系运营商进行调整。

  • NB模组是否能够附着网络?

    NB模组,通过AT+CEREG?获取注册网络信息,如果返回状态为未注册或者注册被拒绝,则联系运营商,进行沟通。可能是NB模组的版本与运营商基站的版本不匹配。

  • NB模组是否能够ping通华为云物联网平台?

    NB模组,通过AT+NPING命令,尝试ping华为云物联网平台。如果无法ping通,则说明运营商网络无法连接到公网。则需要联系运营商,询问该地运营商的核心网是否没有连到公网,是否只能连接该地运营商的物联网平台;或者与运营商协商,看怎么能够打通隧道,连到公网。

  • NB模组是否正确设置平台的域名和端口?

    NB模组,通过AT+NCDP命令,设置连接的华为云物联网平台的域名和端口。域名和端口请登录设备接入管理控制台,查看协议为CoAP或CoAPS的设备对接信息。

  • 发送给NB模组的AT命令是否以\r\n结尾?

    发送给NB模组的每条指令都必须以\r\n结尾。如果不以\r\n结尾,命令会在NB模组中缓存。

  • NB模组检测发送的数据上报状态是否为SENT?

    NB模组,通过AT+NQMGS,检查已经发送的命令状态。

    PENDING,表示数据已发出,但是平台没有进行响应。

    SENT,表示数据已发出,且平台进行了响应。

    ERROR,表示数据上报异常。

    如果状态为PENDING和ERROR,一般来说是网络问题,需要从基站和核心网侧进行分析。

  • NB模组发送的AT+NMGS数据是否能够被正常解析?

    使用编解码插件检查工具,检测自己准备发送的码流是否可被正常解析。

NB模组无法正常上报数据怎么办?

NB模组绑定设备是和第一条数据上报一起完成的,如果NB模组绑定失败,即NB模组发送数据给平台,但是从物联网平台上看到的设备仍然未激活,请参照NB模组绑定设备失败怎么办?进行排查。

以下定位指导,是基于物联网平台上看到设备已经在线的前提。

  • 发送给NB模组的AT+NMGS命令是否以\r\n结尾?

    发送给NB模组的每条指令都必须以\r\n结尾。如果不以\r\n结尾,命令会在NB模组中缓存。

  • 发送的AT+NMGS的payload,是否可以被编解码插件正确解析

    使用编解码插件检查工具,检测自己准备发送的码流中的payload,查看解析后输出的消息结构是否正确,是否符合产品模型定义。

NB设备接入时,出现513错误?

终端设备每次上电后,都会向物联网平台发起TUP注册流程。TUP协议为华为私有协议,包装在CoAP协议之上,与LWM2M协议类似。海思芯片设置TUP注册过程不能超过4s,如果在4s内未完成TUP注册,则上报513错误。

当出现此513错误时,可以按照如下方法进行处理:

  1. 当网络环境状态不佳时,会导致注册过程概率性超过4s,从而出现513错误。请联系NB网络运营商检查网络状态。
  2. 通过AT+NMGS发送业务数据会触发注册,如果4秒钟内没有收到t/d资源(收发业务数据资源)的订阅,就会返回错误,但依赖CoAP层的重传继续注册,最长160秒后还是没有收到t/d资源的订阅,这次注册就会失败。160s基本可以保障终端设备能够注册成功,4s返回ERROR只会丢掉第一包的数据。建议设备重启并再发送AT+NMGS触发上述注册流程。

    可通过 AT+NMSTATUS 查询注册状态,返回+NMSTATUS:MO_DATA_ENABLED 表示成功注册。

同一个NB卡,使用一个设备能上报,在另一个设备里无法上报?

有的运营商的卡是有机卡绑定功能的,当换设备时,可能就无法使用了,建议联系运营商进行处理。

在物联网平台注册好NB设备,真实设备无法接入物联网平台

  • 在模组执行AT+CGATT=1,查看是否报错。如果报错:
    • 需要向NB网络运营商确认NB卡的状态。
    • 需要向模组厂家确认模组的状态。
  • 如果执行AT+CGATT=1后,设备入网成功,则需确认设备接入时,使用的物联网平台的IP和端口是否正确。

IP和端口从物联网平台服务商获取,5683端口为非加密方式接入端口,5684端口为加密方式接入端口。