介绍WiFi模组如何适配生活物联网平台SDK。

概述

生活物联网平台SDK是阿里云IoT针对生活物联网平台所提供的设备端SDK,基于C语言,分为包含AliOS Things物联网操作系统和无AliOS Things物联网操作系统两个版本。

基本流程如下图所示。

流程图

芯片适配

在适配生活物联网平台SDK前,请确认模组使用的WiFi芯片是否已经支持AliOS或者Link Kit。

生活物联网平台SDK已支持的WiFi芯片如下表所示。

芯片厂商 芯片型号
展锐 RDA5981X
翱捷科技 ASR5501
博芯科技 BK7231
BK7231S
BK7231U
南方硅谷 SV6166F
SV6166
SV6266
Realtek RTL8710BN
庆科 MOC108
MX1101

如果模组使用的WiFi芯片尚未支持AliOS或者Link Kit,可以推动芯片原厂移植生活物联网平台SDK。请联系:feiyan_fw_group@alibabacloud.com

模组移植

  • SDK获取与开发环境设置

    请参见SDK概述与开发环境设置

  • 切换生活物联网平台SDK
    • 模组已适配AliOS

      此情况建议以包含AliOS Things的生活物联网平台SDK为基础,将该模组对应的AliOS Things代码中platform目录下对应芯片型号的代码和board目录下对应模组的代码合入生活物联网平台SDK。

    • 模组基于其他操作系统

      如模组基于FreeRTOS或者其他操作系统,建议将无AliOS Things的生活物联网平台SDK合入模组现有工程中。

  • Bootloader/Flash分区

    Bootloader和Flash分区是board目录下对应模组文件夹的重要部分。

    AliOS Things 由于功能需要,维护了一张flash分区表,这张表包括bootloader区、Application区、OTA TMP区以及parameters区,如下图所示。

    flash分区表

    分区大小划分原则如下。

    • 获取芯片平台的Flash大小。
    • 获取bootloader信息,包括:bootloader支持的升级类型(原地还是乒乓)、bootloader跳转地址(如果是乒乓会有两个跳转地址)。
    • 跟据bootloader获取的信息,划分整个Flash。

    根据以上的划分原则,以HF-LPT230模组为例说明其Flash分区。其芯片RDA5981A,Flash size为1Mbytes。分区表数组hal_logic_partition_t hal_partitions[] 定义在board/hf-lpt230/board.c 文件中。

    分区 地址范围 大小 备注
    Bootloader 0x18001000~0x18004000 12Kbytes 存储bootloader固件
    Application 0x18004000~0x18095000 580Kbytes 应用代码分区
    OTA Storage 0x18095000~0x180F7000 372Kbytes OTA代码分区
    PARAMETER1 0x180F7000~0x180F8000 4Kbytes OTA参数存储区
    PARAMETER2 0x180F8000~0x180FA000 8Kbytes KV存储区
    PARAMETER3 0x180FA000~0x180FB000 4Kbytes 用户自定义
    PARAMETER4 0x180FB000~0x180FC000 4Kbytes 安全相关的参数存储区(如ID2秘钥)
    SYS RF Data 0x180FC000~0x180FD000 4Kbytes WiFi模组RF参数
    HFILOP 0x180FD000~0x180FF000 8Kbytes 模组商用于存放三元组和MAC地址

    模组可以结合自身Flash大小、Bootloader实现等调整Flash分区。

模组自测

模组完成SDK移植后,请参见生活物联网平台平台模组厂家自测用例集文档规定的自测用例完成模组自测。

自测主要从以下几个方面验证模组功能和稳定性。

  • 配网
  • 设备控制(云端控制和本地控制)
  • 通道稳定性
  • 固件升级

自测用例中通道稳定性测试高频压测部分,目前需要联系阿里小二,使用通道压测工具向设备发送下 行业务指令(5pps)。联系方式:feiyan_fw_group@alibabacloud.com

模组提测

模组测试并非强制,完成模组移植生活物联网平台SDK后,即可基于模组开发产品。是否需要做模组测试,请根据实际业务需要,先与阿里云IoT智能生活业务团队或者阿里天猫精灵业务团队确认。

如需要做模组测试(提测窗口为:feiyan_certification@alibabacloud.com),需要提供以下内容。

  • 代码库位置(提供board文件夹代码位置)
  • 自测报告
  • 模组开发板 8块 + 配套供电线 + 串口线(用于获取设备端日志)+ 天线等配件

测试流程如下。

测试流程

常见问题

Q:生活物联网平台SDK与AliOS和Link Kit是什么关系?

A:生活物联网平台SDK是基于AliOS v1.3.4和Link Kit v2.3.0的适合量产的稳定版本,优化了海外连接,并针对生活物联网平台业务进行了定制。

Q:我的模组已经适配过AliOS或者Link Kit别的版本,是否还需要切换生活物联网平台SDK?

A:生活物联网平台SDK针对配网成功率、稳定性、海外连接、生活物联网平台业务定制等方面进行了优化,对于量产产品,特别是要在海外大量出货的产品,需要切换到生活物联网平台SDK,否则可能会出现配网、连云、稳定性、兼容性等问题。

Q:模组如何开始配网绑定?

A:可以编译linkkitapp(编译命令aos make clean; aos make linkkitapp@yourboardname),启动后依次执行awss命令和active_awss命令,设备会进入配网绑定流程。