Google se compromete a impulsar la igualdad racial para las comunidades afrodescendientes. Obtén información al respecto.

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 adaptadas se incluyen en el repositorio de OpenThread .

Consulte Buscar proveedores para obtener una lista de búsqueda de todas las plataformas compatibles con proveedores y puertos comunitarios.

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 sin etiquetar 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 subprocesos que utilice 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 por completo y es posible que les falte alguna funcionalidad clave.
No soportado Actualmente no es compatible y puede tener problemas para ejecutar OpenThread. Úselo bajo su propio riesgo.

Arquitectura del sistema

Arquitectura del sistema TO

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 sin 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, lo que reduce los requisitos del sistema, como la memoria, el código y los ciclos de cómputo. Esto se puede hacer por plataforma, conservando la capacidad de establecer una configuración estándar por defecto.

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 otras cadenas de herramientas populares como IAR y Visual Studio.

Diseños de plataforma

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

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

Un diseño de 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 de controlador de host estandarizado que llamamos Spinel . En este diseño, OpenThread puede ejecutarse en la radio o en el procesador principal.

Chip único, 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 utiliza directamente las API de OpenThread y la pila de 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 costo más bajo y el consumo de energía más bajo.

Chip único, interfaz múltiple (SoC)

Arquitectura SoC múltiple de OT

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 IPv6 compartida de terceros a través de una interfaz de datagrama IPv6 sin procesar.

Diseños de coprocesador

OpenThread admite diseños de coprocesador de radio (RCP) y coprocesador de red (NCP). Para obtener más información, consulte Diseños de coprocesador .

Problemas de la plataforma abierta

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