深圳市安信可科技有限公司-阿里云飞燕&&天猫精灵对接代码
Find a file
Jenson LI cef0b1065f
Merge pull request #1 from Ai-Thinker-Open/codex/sdk-technical-evidence
docs: add verified RTL8710BX SDK evidence
2026-08-07 15:16:35 +08:00
audit docs: add verified RTL8710BX SDK evidence 2026-08-07 15:15:33 +08:00
docs docs: add verified RTL8710BX SDK evidence 2026-08-07 15:15:33 +08:00
Living_SDK build: tolerate legacy source encodings 2026-08-07 15:14:53 +08:00
Products rel_1.6.0 init 2020-06-18 22:04:32 +08:00
Service/version rel_1.6.0 init 2020-06-18 22:04:32 +08:00
tools rel_1.6.0 init 2020-06-18 22:04:32 +08:00
.gitignore rel_1.6.0 init 2020-06-18 22:04:32 +08:00
.gitmodules rel_1.6.0 init 2020-06-18 22:04:32 +08:00
build.sh rel_1.6.0 init 2020-06-18 22:04:32 +08:00
LICENSE rel_1.6.0 init 2020-06-18 22:04:32 +08:00
README.md docs: add verified RTL8710BX SDK evidence 2026-08-07 15:15:33 +08:00

Ai-Thinker RTL8710BX AliOS SDK

项目介绍

本仓库是面向 RTL8710BN/RTL8710BX 系列模组的 AliOS Things 1.3.4 与阿里云 LinkKit 示例 SDK。仓库同时包含产品示例、AliOS 内核与框架、RTL8710BN 平台适配、MK3080 等板级配置以及固件打包脚本。

仓库属于遗留 SDK原始代码最后提交于 2020 年,依赖 Python 2 和较旧的构建系统。2026-08-07 已在 Ubuntu 22.04/WSL2 中验证 smart_outlet@mk3080 目标可以完成两次干净构建;这不代表其他 Board 或真实硬件功能已经验证。

目录结构

路径 说明
Products/example/smart_outlet/ 智能插座示例、设备状态与 LinkKit 业务逻辑
Living_SDK/kernel/ AliOS 内核初始化、Rhino 和系统服务
Living_SDK/framework/ LinkKit、网络管理、OTA、事件循环等框架
Living_SDK/platform/mcu/rtl8710bn/ RTL8710BN 启动、HAL、驱动、链接脚本和预编译库
Living_SDK/board/mk3080/ MK3080 Board 配置、Boot/ATE 镜像和板级代码
tools/mk3080.sh RTL8710BN/MK3080 分阶段编译、链接与固件打包
Service/version/ 固件版本信息组件

详细模块关系和启动流程见架构说明

快速开始与构建

推荐在 Ubuntu 22.04 或 WSL2 中构建。已验证环境需要:

  • Git
  • Python 2.7(仅用于遗留构建脚本)
  • Python 3.10 与 aos-cube==0.5.11
  • ARM GNU Toolchain 10.3.1
  • Newlib 3.3.0

Ubuntu 22.04 可以安装 ARM 编译器和 Newlib

sudo apt-get install --no-install-recommends gcc-arm-none-eabi libnewlib-arm-none-eabi

准备独立的 aos-cube 环境后,按以下方式执行干净构建:

cd Ai-Thinker-Open_RTL8710BX_ALIOS_SDK

# WSL 可能注入 NAME该变量会覆盖旧 Makefile 中的组件 NAME。
unset NAME
ulimit -s unlimited

# /usr/bin 必须排在 aos-cube venv 前,使遗留 Make 脚本使用 Python 2
# aos 命令仍会从后面的 venv 中找到,并由它自己的 Python 3 shebang 启动。
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:$HOME/.venvs/aos-cube-0.5.11-system/bin

./build.sh clean smart_outlet
./build.sh example smart_outlet mk3080 MAINLAND ONLINE 0

成功后主要产物位于:

out/smart_outlet@mk3080/

其中包括 ELF、MAP、HEX、应用 BIN、OTA BIN 和包含 Boot/ATE 分区的 all.bin

完整环境、产物哈希与日志见真实构建验证

代码入口与运行流程

RTL8710BN 的主启动流程为:

Realtek startup
  -> main
  -> sys_init_func
  -> aos_kernel_init
  -> application_start
  -> Wi-Fi 获得 IP
  -> linkkit_main

具体文件、行号、符号和最终 ELF 证据见代码入口说明

示例与配置

已验证示例为 Products/example/smart_outletBoard 为 mk3080

./build.sh example smart_outlet mk3080 MAINLAND ONLINE 0

参数依次表示产品类型、应用、Board、云区域、云环境和 Debug 开关。仓库还包含 linkkit_gatewayliving_platformcertification 等示例,但本次没有对这些目标进行完整构建验证。

使用限制

  • 本次验证没有连接真实 RTL8710BX/MK3080 硬件。
  • 未验证烧录、启动、Wi-Fi 配网、云端连接、OTA、外设和量产流程。
  • 仓库包含 Python 2、旧版 TLS/网络组件和预编译库;用于新产品前应单独进行安全与许可证审查。
  • 构建成功不等于所有 Board、示例和运行场景都可用。

问题排查与贡献

  • 出现乱码或 UnicodeDecodeError 时,请确认使用了本仓库兼容后的 gen_auto_code.py
  • map_parse_gcc.py 使用 Python 2 语法;请保持 /usr/bin 位于 aos-cube 虚拟环境之前。
  • 出现 stdio.hunistd.hnano.specs 缺失时,请安装 libnewlib-arm-none-eabi
  • 提交改动前请说明目标 Board、完整构建命令、验证结果和未验证范围并通过独立分支和 Pull Request 合并。

机器可读的审查证据见 audit/technical-evidence.json

License

仓库根目录使用 Apache License 2.0。仓库中的第三方组件、预编译库和厂商 SDK 可能适用各自的许可证,分发前应同时核对对应目录中的声明。