一、前言
本文章将说明如何使用安信可RG-02网关对接TTN平台,实现数据发送与接收。
二、准备工作
访问TTN网站并创建/登录个人账户, 在Console中选择一个集群开始添加节点设备和网关。
三、创建网关
Go to gateways -> Add gateway -> 自定义填写网关名称,GatewayEUI以及相应的频段配置信息。点击Create gateway完成创建。
创建网关时,我们需要填写匹配的网关ID,该ID可以在RG02网关WEB控制页面->菜单栏选项卡LoRaWAN->LoRaWAN Semtech UDP->Gateway EUI选项中获取。将网关的NS模式配置为Custom, 服务器地址填写为TTN服务所在区域服务器,端口使用默认的1700即可。有关RG02网关的基本配置与操作说明,请参考RG02 SETUP中的说明。
完成上述配置与创建后,在网关详情页面可以查看网关当前的连接状态。
四、创建应用
Go to appliations -> Add appliation -> 自定义填写Application ID和应用名称,点击Create application完成创建。
五、创建设备
进入已经创建的应用页面点击Add end device开始添加节点设备,可以根据需求填入预设配置或是点击Generate自动生成新的Key。点击Register end device完成创建。
选择Manually自定义创建。(默认创建设备的接入方式为OTAA)。OTAA(Over-The-Air-Activation)连接模式下我们需要保存Device EUI, APP EUI, APP KEY这三个参数将用于设备后续连接使用, 你可以根据需求填入预设配置或是点击Generate自动生成新的Key。点击Register end device完成创建。
若需要创建ABP接入方式的设备,则通过advanced选项配置. ABP(Activation By Personalization)连接模式下我们需要保存Device address, AppSKey, NwkSKey这三个参数将用于设备后续连接使用, 你可以根据需求填入预设配置或是点击Generate自动生成新的Key。点击Register end device完成创建。
六、设备信息
根据所在的地区及设备选择使用的频段,确保您使用的设备所使用的频段,与网关所使用的子频段选项匹配。LoRaWAN版本选择使用v1.0.2,区域参数使用RP001 Regional Parameters 1.0.2。
?>在设备创建环节能够配置设备将要采用的连接方式OTAA/ABP:
OTAA相比于ABP安全性会更高一些, 但由于存在入网JoinAccept环节,OTAA的入网连接速度相对于ABP会稍微慢一些。
使用串口工具连接Ra08H开发板子,默认连接配置为9600bps 8N1。依次发送指令,并在对应指令中填充我们在上一步获取到的密钥信息。
七、OTAA模式下AT指令流程
·入网&数据上行
- AT+CJOINMODE=0
- AT+CRXP=1,1,869525000
- AT+CDEVEUI=70B3D57ED0052256
- AT+CAPPEUI=0000000000000000
- AT+CAPPKEY=8D5EC8F6834BDE677A3D815E81A14981
- AT+CFREQBANDMASK=0001
- AT+CULDLMODE=2
- AT+CJOIN=1,1,8,8
- AT+DTRX=0,2,6,445566
- AT+DTRX=1,1,4,5555
复制代码 ·数据下行
- receive data: rssi = -54, snr = 14, datarate = 5
- rx: port = 1, len = 2
- 0x88 0x88
- OK+RECV:03,01,02,8888
复制代码 八、ABP模式下AT指令流程
- AT+CJOINMODE=1
- AT+CRXP=1,1,869525000
- AT+CDEVEUI=70B3D57ED0052257
- AT+CDEVADDR=260B43F6
- AT+CAPPSKEY=8BADC0C41832EFDD46EF5DABB6BC667E
- AT+CNWKSKEY=30C8F755AF7EC4E26EB79FFEDE824E39
- AT+CULDLMODE=2
- AT+CCLASS=2
- AT+CFREQBANDMASK=0001
- AT+DTRX=0,2,6,223344
复制代码 九、TTN日志查看
Live Data实时数据
完成上述AT指令执行操作,若设备正常连接网关,在TTN管理页面我们能够看到设备的连接日志,以及上行的数据信息。
点击Messaging选项支持手动下发数据至设备。注: 当设备上传数据时,才会获取到网关最新下发的数据。
Messaging数据下发
十、MQTT Client
通过MQTT CLIENT获取TTN服务器数据, 实现数据获取/下发。连接的MQTT SERVER URL与端口及登录用户信息可在TTN页面中获取。
Uplink Topic
- v3/{application id}@{tenant id}/devices/{device id}/up
复制代码 Downlink Topic
- v3/{application id}@{tenant id}/devices/{device id}/down/push
复制代码- //eg:
- v3/000000000000@ttn/devices/eui-xxxxxxxxxxxxxxx/down/push
- {
- "downlinks": [
- {
- "f_port": 15,
- "frm_payload": "vu8=",
- "priority": "NORMAL",
- "confirmed": true
- }
- ]
- }
复制代码 ?>注:订阅数据的payload为base64编码格式。
十一、更多信息
更多TTN集成接口详细教程(MQTT, Webhooks, Storage Integration, AWS IoT, Azure IoT Hub, LoRa Cloud)请参考TTN集成开发文档
|