Wi-Fi模组移植

含AliOS Things的生活物联网平台SDK即包含AliOS Things物联网操作系统(基于AliOS Things V1.3.4)和Link Kit V2.3.0。本文档基于含AliOS Things版本SDK,介绍Wi-Fi模组的移植过程。

概述

基本流程如下图所示。

流程图

芯片适配

在适配生活物联网平台SDK前,请确认模组使用的Wi-Fi芯片是否已经支持AliOS或者Link Kit。如果模组使用的Wi-Fi芯片尚未支持AliOS或者Link Kit,可以推动芯片原厂移植生活物联网平台SDK。

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

芯片厂商

芯片型号

天猫精灵

TG7100C

翱捷科技

ASR5501

ASR5502

展锐

RDA5981X

博通集成

BK7231

BK7231S

BK7231U

瑞昱

RTL8710BN

庆科

MOC108

MX1101

模组移植

  1. 获取含AliOS Things的SDK。请参见获取SDK

  2. 业务代码存放到SDK相应的目录下。

  3. 划分Bootloader、Flash分区。

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

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

    flash分区表

    模组可以结合自身Flash大小、Bootloader实现等调整Flash分区。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

    12 Kbytes

    存储bootloader固件

    Application

    0x18004000~0x18095000

    580 Kbytes

    应用代码分区

    OTA Storage

    0x18095000~0x180F7000

    372 Kbytes

    OTA代码分区

    PARAMETER1

    0x180F7000~0x180F8000

    4 Kbytes

    OTA参数存储区

    PARAMETER2

    0x180F8000~0x180FA000

    8 Kbytes

    KV存储区

    PARAMETER3

    0x180FA000~0x180FB000

    4 Kbytes

    用户自定义

    PARAMETER4

    0x180FB000~0x180FC000

    4 Kbytes

    安全相关的参数存储区(如ID²密钥)

    SYS RF Data

    0x180FC000~0x180FD000

    4 Kbytes

    Wi-Fi模组RF参数

    HFILOP

    0x180FD000~0x180FF000

    8 Kbytes

    模组商用于存放设备证书和MAC地址

模组自测

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

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

  • 配网

  • 设备控制(云端控制和本地控制)

  • 通道稳定性

  • 固件升级

模组提测

模组测试并非强制,完成模组移植生活物联网平台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命令,设备会进入配网绑定流程。