节点SDK

Node SDK是Alibaba Cloud Link WAN模组设备厂商提供的LoRaWAN节点SDK,在完善和修复Semtech开源节点源码缺陷的基础之上,新增了具有实用价值的新特性说明、参考实现和应用实例。符合LinkWAN接入规范,帮助模组厂商缩短新特性的开发周期,扩大模组的应用场景,提高市场竞争力。

下载代码

使用阿里云账号登录官网后,通过工单咨询的方式获取Link WAN 节点SDK。

配置环境

  • CMake 版本≥3.6

  • GNU ARM-Toolchain

  • (可选)Visual Studio Code

  • SEGGER-JLink(烧录工具)

说明

安装配置详细信息,请参见文档中的安装配置。

修改编译配置

  • 打开./LoRaMac-node/buildconfig.sh,配置开发板型号和工具链路径。

  • 修改./LoRaMac-node/src/LoRaModuleSDK/Commissioning.h 中节点三元组信息和组播地址和密钥。

说明

节点三元组取得方式:

  1. 登录物联网络管理平台控制台

  2. 在左侧导航栏,单击密钥管理

  3. 密钥管理页面购买专业版标准版密钥均可。

编译SDK

cd ./LoRaMac-node
sh build.sh            

编译结果:

./build/src/apps/LoRaMac/SdkExample-LoRaWanModule.hex

验证SDK效果

下载Hex文件到开发板(默认ST NucleoL476开发板)后退出,JLink 烧录方式如下: JLinkExe->loadfile build/src/apps/LoRaMac/SdkExample-LoRaWanModule.hex

打开串口调试工具,重启运行显示输出结果如下:

**********************************************
====== LinkWAN LoRa Node SDK Example    =====
====== LoRaWAN 1.0.3 Specification,CN470 =====
*********************************************

This is Debug Version, Input AT Cmd to start your Experience!

=======================================================
****Set DevInfo:     e.g. AT+CDEVEUI=devEui, AT+CAPPEUI=joinEUI,AT+CAPPKEY=appKey 
****Start OTAA Join: e.g. AT+CJOIN=1,1
****Send Data:       e.g. AT+DTX=10,0123456789 
****Switch Class:    e.g. AT+CCLASS=2 (classC) 
****Switch Class:    e.g. AT+CCLASS=1,0,2 (classB) 
****Enter Repeater Mode: e.g. AT+CJOINMODE=1 
****ConfirmUp Send Periodically(20s): e.g. AT+CCONFIRM=1, AT+CRM=1,20 
****More AT Cmd infor, pls ref <ICA AT Cmd Spec>. 
=======================================================           

调试

以ST NucleoL476开发板为例,用JLink和GDB调试开发板如下:

开启JLinkGDBServer。

JLinkGDBServer -device STM32L476RGTx -if swd -speed 4000           

开启GDB Client进行调试。

arm-none-eabi-gdb SdkExample-classB -ex "target remote localhost:2331"           

技术架构图

SDK说明

SDK说明,请参见SDK使用手册:./LoRaNodeSDK/Doc/NodeSDK_Manual_vX.X.X.pdf

节点接入要求,请参见接入规范文档:./LoRaNodeSDK/Doc/阿里云Link WAN节点接入规范vX.X.X.pdf

硬件支持

默认能运行LoRaWAN协议栈的开发板都支持,例如:

  • NucleoL073

  • NucleoL152

  • NucleoL476 (default)

  • SAML21

  • SKiM880B

  • SKiM980A

  • SKiM881AXL

版本发布

  • v2.0.4 主要包括以下功能和服务:

    • 支持RAK811节点开发板。

    • AT Cmd:增加使用说明打印,优化AT+CDEVADDR功能。

  • v2.0.3 主要包括以下功能和服务:

    • 提供了《LinkWAN节点接入规范》的全频段扫描参考实现。

    • 提供了《ICA联盟标准-面向LoRa的AT指令集规范1.0》增强版的参考实现。

    • 支持LinkWAN Class A节点的中继模式。

    • 支持LBT功能。

    • 支持检测节点协议。

    • 支持ABP模式。

  • v2.0.2 主要包括以下功能和服务:

    • 提供了认证模式功能。

    • 对上层提供更便捷的应用API。

    • 新增实现了联盟的应用层组播功能。

    • 新增LoRa模块连接策略(入网退避策略、Class B切换策略、时间同步策略等)。

    • 对原有Class A、Class B、Class C缺陷进行修复。

    • 对现有LoRaWAN节点协议栈的鲁棒性、可靠性、稳定性做了进一步增强。参考链接如下: