NB-IoT

来自Jack's Lab
(版本间的差异)
跳转到: 导航, 搜索
(Tesing)
(OpenCPU)
第20行: 第20行:
  
 
[https://wenku.baidu.com/view/27755a86d4bbfd0a79563c1ec5da50e2524dd1a8.html MT2625 SDK Overview]
 
[https://wenku.baidu.com/view/27755a86d4bbfd0a79563c1ec5da50e2524dd1a8.html MT2625 SDK Overview]
 +
 +
<br>
 +
 +
=== 切换方法 ===
 +
 +
启动的时候调用 get_factory_mode() 函数:当该函数返回 0 时,任何情况下模组以 OpenCPU 方式运行。 当该函数返回 1 时,需要用户手动切换:
 +
 +
第一次把 OpenCPU 下载到新模组上时,模组会默认以 AT 模式运行,不会启动 OpenCPU 模式,此时用户需要在 UART1 手动执行 AT+ATCLOSE,然后按复位键,模组即启动 OpenCPU 模式,并且以后都会保持 OpenCPU 模式。
 +
 +
要从 OpenCPU 模式切换回 AT 模式,需要 在 OpenCPU 程序里执行 opencpu_at_open() 函数,此时模组会自动重启,并以 AT 模式运行。
  
 
<br>
 
<br>

2019年5月3日 (五) 06:44的版本

目录

1 Overview

NB-IoT-Freq.png

  • BC95-B20:800MHz,band 20,面向欧洲
  • BC95-B5:850MHz,band 5,面向韩国
  • BC95-B8:900MHz,band8,面向国内

目前国内的运营商,移动联通支持 900,电信支持 850

2 OpenCPU

  • M5310-A, 180KB flash, 30KB RAM
  • M5311, 128KB flash, 256KB RAM
    • M5311-LV: Band 3, 5, 8 / 2.1V ~ 3.6V
    • M5311-CM: Band 8 / 3V ~ 3.6V

https://blog.csdn.net/u011943791/article/details/80895563

MT2625 SDK Overview


2.1 切换方法

启动的时候调用 get_factory_mode() 函数:当该函数返回 0 时,任何情况下模组以 OpenCPU 方式运行。 当该函数返回 1 时,需要用户手动切换:

第一次把 OpenCPU 下载到新模组上时,模组会默认以 AT 模式运行,不会启动 OpenCPU 模式,此时用户需要在 UART1 手动执行 AT+ATCLOSE,然后按复位键,模组即启动 OpenCPU 模式,并且以后都会保持 OpenCPU 模式。

要从 OpenCPU 模式切换回 AT 模式,需要 在 OpenCPU 程序里执行 opencpu_at_open() 函数,此时模组会自动重启,并以 AT 模式运行。


3 PM

  • PSM 深度睡眠模式, m5311 通过拉低 wakeup_in 来唤醒
 AT+MIPLCLOSE = 0

注销一下,设备就从 OneNet 下线了


4 Tesing

eDRX

4.1 入网流程

AT           # 查看模块 AT 是否正常工作

AT+SM=LOCK  # 关闭 PSM 模式
AT+SM=UNLOCK  # 打开 PSM 模式

AT+CFUN?     # Phone functionality, 0 最小功能,1 全功能 (Default),4 射频电路关闭,7 disable sim only
AT+CIMI      # 检查 SIM卡是否读卡成功
460040427005170

AT+CESQ      # 查看信号强度
+CESQ: 23,0,255,255,26,47
AT+CEREG?    # EPS network registration status, PS 域附着状态,1 或 5 为附着正常
AT+CGATT?    # 模组 PS 附着状态,返回 0 为入网失败,返回 1 为入网成功。GPRS/Packet Domain attach or detach

AT+CMRB      # Software reboots the terminal
AT+COLDRB  # Cold reboot the terminal
AT&V      # Display current configuration
ATZ         # Set all current parameters to user defined profile
AT&W     # Store current parameters to user defined profile
AT&F       # Set all current parameters to manufacturer defaults

AT+CGSN       # Request product serial number identification (Identical with +GSN) 
19ML111N0035645
AT+GMI         # Request manufacturer identification
AT+GSN         # Request TA serial number identification (IMEI)
AT+CSCON?    # Query and generate URC for signaling connection station (CONNECTED or IDLE) 
AT+COPS?     # Operator selection
AT+COPN      # Read operator names 
AT+CGPADDR?  # Show PDP address
AT+CEDRXS?    # eDRX setting
AT+CGDCONT?    # Define PDP context: <cid>,<PDP_type>,<APN>,<PDP_addr>,<d_comp>,<h_comp>...... 

AT+CGPADDR?    # Show PDP address 

10086.NB-IoT.Modes.png


ATI 查看模块版本:
ATI

CMCC
M5311
M5311-MLVH1S02
M5311-MLVH1S02
AT+QSPCHSC?   # 查看置乱算法返回值
+QSPCHSC: 1   # 返回 1 可以入网,返回 0 的话是入不了网的,需要 AT+QSPCHSC=1 指令设置成 1
AT*CMBAND=?    # list of valid <op_band>s 
AT*CMBAND?     # current bands
AT*CMBAND=0    # reset to default. others: 1, 3, 5, 8, 28

TBD:

  AT+CFGRATPRIO=2    # 切换到GSM模式 


4.2 Socket

AT+QSOC=1,1,1    # Create a socket (IPv4, TCP, IP)
AT+QSOC=1,2,1    # Create a socket (IPv4, UDP, IP)
AT+QSOCON=0,8080,"120.25.26.27"  # Connect to 120.25.26.27:8080
AT+QSOSEND=0,3,123456    # send data 0x12 0x34 0x56  <socket_id>,<data_len>,<data>
AT+QSORF=0,3             # 查看服务器返回的数据,如果没返回数据就多查几次
AT+QSODIS=0              # Disconnect Socket
AT+QSOCL=0               # Close the socket


4.3 HTTP

AT+HTTPCREATE=“http://42.121.157.158:8888/”	#设置HTTP
AT+HTTPHEADER=0,“User-Agent: Unkown\r\nConnection: close\r\n”	#设置协议头
AT+HTTPSEND=0,1,"/dev/data"	#发送post请求
AT+HTTPCLOSE=0	            #关闭HTTP


4.4 MQTT

AT+IPR=9600	      #设置波特率
AT+CMSYSCTRL=0,2	#打开指示灯
AT+CSQ	#信号质量
AT+MQTTCFG=“域名”,1883,“zyNBiot”,120,“75829”,“IIOu0oFUg1guk20ornTK1uzAcnM=”,1	#MQTT配置
AT+MQTTOPEN=1,1,1,1,1,“mywill”,“001bye”	#连接MQTT
AT+MQTTPUB=“device/nb/citc”,1,1,0,0,“hello”	#发布消息


4.5 接入onenet

Init M5310:

AT+COPS=1,2,"46000"; #设置手动注册移动运营商MNC
AT+CSCON=1; #打开信号提示自动上报
AT+CEREG=1;   #打开注册信息自动上报

发送完上面三条指令,完成模组的注册入网功能


首先参考官方文档在 onenet 平台建立硬件对应的产品类型

生成注册码,注册码的生成需要使用中移物联提供的 OneNET_config_v1.2.exe。所需参数,如下图所示,其中 host 与 ep_name 较重要,分别指定了要接入 server 的 IP 地址和端口、模组的 IMEI 与 IMSI 号。具体参数的含义可以参考 M5310 AT Command 说明文档

NB-IoT-OneNet-Register.png

$ OneNET_config_v1.2.exe -b 1 -e 0 -d 3 -i "coap://183.230.40.39:5683" -n "865820030015998;460040663105571" -p 0 -t 3000 -u 5 -g 5 -x 1
AT+MIPLCONF=71,10030000B80B00001900636F61703A2F2F3138332E3233302E34302E33393A353638331F003836353832303033303031353939383B343630303430363633313035353731050501,1,1

发送此 AT 命令完成注册码登记


添加 Object 组:

 AT+MIPLADDOBJ=0,3303,0

上述 AT 指令即添加一个 Object 对象,3303 代表温度传感器,由 LWM2M 规范所定

LWM2M-object-temp.png

一个设备会用很多传感器,设备叫通信实例,温度传感器即 Object。设备可以有很多 Object 如湿度、光照、气压等


发起注册请求:

 AT+MIPLOPEN=0,15

上述命令发送成功之后,onenet 平台上会显示设备处于在线状态,硬件与平台连接成功。通过 AT+MIPLNOTIFY 就可以向平台发送数据,具体可参考官方手册。



5 Chips

5.1 展锐

RDA8908, RDA8909, RDA8910


5.2 nRF91


5.3 RoseFinch7100


5.4 Hi2115

Boudica 150

  • SoC, 无需外接 MCU
  • 支持 698-960/1800/2100MHz


5.5 Hi2110

Boudica 120

  • SOC:BB+RF+PMU+AP+Memory
  • 3 ARM Core:AP+CP+SP


5.6 MDM9206


5.7 MTK2625


6 Refernece







个人工具
名字空间

变换
操作
导航
工具箱