Google se compromete a promover la equidad racial para las comunidades negras. Ver cómo.
Se usó la API de Cloud Translation para traducir esta página.
Switch to English

Plataformas

OpenThread lanzado por Google ha sido portado a varios dispositivos y plataformas por el equipo de OpenThread, los proveedores de silicio y la comunidad. Los ejemplos de compilación para todas las plataformas portadas se incluyen en el repositorio de OpenThread .

Consulte Buscar proveedores para obtener una lista de búsqueda de todas las plataformas y puertos comunitarios admitidos por el proveedor.

Apoyo

El soporte para cada plataforma varía con el tiempo. Algunas plataformas están etiquetadas con el nivel actual de soporte identificado por el equipo de OpenThread. Las plataformas no etiquetadas no se han probado recientemente y se puede considerar que tienen "Soporte limitado".

Nivel de soporte Descripción
Soportado Soporte completo y básico, así como cualquier componente certificado por Thread que use OpenThread. Muchas de estas plataformas han sido probadas y utilizadas por el equipo de OpenThread, y se recomienda su uso en nuestras demostraciones y Codelabs.
Soporte limitado Estas plataformas no se han probado completamente y pueden faltar algunas funciones clave.
No soportado Actualmente no es compatible y puede tener problemas al ejecutar OpenThread. Úselo bajo su propio riesgo.

Arquitectura del sistema

Arquitectura del sistema OT

OpenThread está diseñado teniendo en cuenta la portabilidad y la flexibilidad. El código es C / C ++ portátil (C99 y C ++ 03) que es independiente de la arquitectura del sistema debido a una capa de abstracción estrecha. Esta capa de abstracción significa que OpenThread puede ejecutarse en un sistema operativo o en un sistema operativo. Hasta la fecha, se ha demostrado que OpenThread se ejecuta en FreeRTOS, RIOT-OS, Zephyr OS, Linux y macOS.

La naturaleza portátil de OpenThread no hace suposiciones sobre las características de la plataforma. OpenThread proporciona los ganchos para utilizar funciones mejoradas de radio y criptografía, reduciendo los requisitos del sistema, como la memoria, el código y los ciclos de cálculo. Esto se puede hacer por plataforma, mientras se conserva la capacidad de predeterminar a una configuración estándar.

OpenThread tiene un sistema de compilación configurable con el que un desarrollador puede habilitar o deshabilitar funciones según sea necesario. Más allá de la cadena de herramientas GNU predeterminada, la fuente está diseñada para funcionar con una serie de otras cadenas de herramientas populares como IAR y Visual Studio.

Diseños de plataformas

OpenThread admite diseños de coprocesador de red (NCP) de sistema en chip (SoC).

Un SoC es una solución de chip único que tiene el RFIC combinado (802.15.4 en el caso de Thread) y el procesador, donde OpenThread y la capa de aplicación se ejecutan en el procesador local.

Un diseño NCP es donde la capa de aplicación se ejecuta en un procesador host y se comunica con OpenThread a través de una conexión en serie utilizando un protocolo estandarizado de controlador host que llamamos Spinel . En este diseño, OpenThread puede ejecutarse en la radio o en el procesador host.

Single-Chip, solo subproceso (SoC)

Arquitectura OT SoC

En este diseño, la capa de aplicación y OpenThread se ejecutan en el mismo procesador. La aplicación usa directamente las API de OpenThread y la pila IPv6.

Este es el diseño de SoC más utilizado para dispositivos finales. Debido a que está altamente integrado en un solo silicio, tiene el menor costo y el menor consumo de energía.

Single-Chip, Interfaz múltiple (SoC)

Arquitectura OT SoC múltiple

Cuando un SoC tiene múltiples radios, como 802.15.4 y Wi-Fi, o 802.15.4 y Bluetooth Low Energy (BLE), la capa de aplicación y OpenThread aún se ejecutan en el mismo procesador. En el diseño de interfaz múltiple, OpenThread aprovecha la pila compartida de IPv6 de terceros a través de una interfaz de datagrama IPv6 sin procesar.

Coprocesador de red (NCP)

Arquitectura OT NCP

El diseño estándar de NCP tiene funciones Thread en el SoC y ejecuta la capa de aplicación en un procesador host, que generalmente es más capaz (pero tiene mayores demandas de energía) que el dispositivo OpenThread. El procesador host se comunica con el dispositivo OpenThread a través de una interfaz en serie (generalmente SPI o UART) a través del protocolo Spinel.

El beneficio de este diseño es que el host de mayor potencia puede dormir mientras el dispositivo OpenThread de menor potencia permanece activo para mantener su lugar en la red Thread. Y dado que el SoC no está vinculado a la capa de aplicación, el desarrollo y las pruebas de las aplicaciones son independientes de la compilación de OpenThread.

Este diseño es útil para dispositivos de puerta de enlace o dispositivos que tienen otras demandas de procesamiento como cámaras IP y altavoces.

Coprocesador de radio (RCP)

Arquitectura de OT Host-Controller

Esta es una variante del diseño de NCP donde el núcleo de OpenThread vive en el procesador host con solo un "controlador" mínimo en el dispositivo con la radio Thread. El procesador host generalmente no duerme en este diseño, en parte para garantizar la confiabilidad de la red Thread.

La ventaja aquí es que OpenThread puede utilizar los recursos en el procesador más potente.

Este diseño es útil para dispositivos que son menos sensibles a las restricciones de energía. Por ejemplo, el procesador host en una cámara de video siempre está encendido para procesar video.

Problemas de plataforma abierta

Los siguientes problemas están actualmente abiertos para las plataformas OpenThread: