Google 发布的 OpenThread 已被 OpenThread 团队、芯片供应商和社区移植到多种设备和平台。所有已移植平台的构建示例都包含在 OpenThread 代码库中。
如需查看所有供应商支持的平台和社区端口的可搜索列表,请参阅搜索供应商。
支持
各个平台的支持会不时变化。部分平台会标记当前支持级别(如 OpenThread 团队所确定)。未标记的平台最近未经过测试,可能会被视为“受限支持”。
支持级别 | 说明 |
---|---|
![]() |
提供完整和基本支持,以及任何使用 OpenThread 的线程认证组件。其中许多平台已经过 OpenThread 团队的测试和使用,建议在我们的演示和 Codelab 中使用。 |
![]() |
这些平台尚未经过全面测试,可能缺少一些关键功能。 |
![]() |
目前不支持,可能在运行 OpenThread 时遇到问题。使用时需自行承担风险。 |
系统架构

OpenThread 在设计时就考虑到了可移植性和灵活性。此代码是便携式 C/C++(C99 和 C++11),因为它与窄抽象层无关。此抽象层意味着 OpenThread 可以在裸机或操作系统上运行。到目前为止,OpenThread 已被证明可在 FreeRTOS、RIOT-OS、Zephyr OS、Linux 和 macOS 上运行。
OpenThread 的可移植性不会对平台功能做出任何假设。OpenThread 可提供钩子来利用增强型无线装置和加密功能,从而减少内存、代码和计算周期等系统要求。可以按平台执行此操作,同时保留默认设置为标准配置的功能。
OpenThread 有一个可配置的构建系统,供开发者根据需要启用或停用功能。除了默认的 GNU 工具链之外,此源代码还可与许多其他热门工具链(如 IAR 和 Visual Studio)配合使用。
平台设计
OpenThread 支持系统芯片 (SoC) 和网络协处理器 (NCP) 设计。
SoC 是一种单芯片解决方案,结合使用 RFIC(在线程的情况下为 802.15.4)和处理器(其中 OpenThread 和应用层在本地处理器上运行)。
在 NCP 设计中,应用层在主机处理器上运行,并使用我们称为 Spinel 的标准化主机控制器协议,通过串行连接与 OpenThread 通信。在此设计中,OpenThread 可以在无线处理器或主机处理器上运行。
单芯片、线程专用 (SoC)

在此设计中,应用层和 OpenThread 在同一处理器上运行。应用直接使用 OpenThread API 和 IPv6 栈。
这是最常用的 SoC 设计。由于它与单个芯片高度集成,因此费用和功耗最低。
单芯片、多接口 (SoC)

当 SoC 具有多个无线装置(如 802.15.4 和 Wi-Fi,或 802.15.4 和蓝牙低功耗 (BLE))时,应用层和 OpenThread 仍在同一处理器上运行。在多接口设计中,OpenThread 会通过原始 IPv6 数据报接口利用共享的第三方 IPv6 堆栈。
共同处理器设计
OpenThread 支持无线联合处理器 (RCP) 和网络共同处理器 (NCP) 设计。如需了解详情,请参阅协处理器设计。
开放平台问题
以下问题目前面向 OpenThread 平台开放: