UWB

El módulo de banda ultraancha (UWB), que se introdujo en Android 13, contiene una pila de UWB sobre la interfaz de la HAL, que se basa en la especificación de FiRa.

El módulo de UWB proporciona los siguientes beneficios para los fabricantes de dispositivos:

  • Una pila de UWB nativa de Android completa disponible para dispositivos compatibles con UWB
  • Mejora la calidad y la interoperabilidad de UWB en todo el ecosistema de Android
  • Compatibilidad más rápida y flexible para los nuevos casos de uso de FiRa y las actualizaciones de especificaciones

Detalles

A continuación, se incluyen los detalles del módulo de UWB:

  • Incluye una pila de UWB completa en AOSP en Android 13 que usa la especificación de UCI definida por FiRa como la interfaz de la HAL.
  • Permite que las apps del sistema aprovisionen perfiles personalizados.
  • Incluye una superficie de API del sistema para permitir que las apps del sistema usen perfiles personalizados en sus sesiones de rango.
  • Incluye infraestructura para exponer RROs que los fabricantes de dispositivos pueden usar para personalizar el comportamiento de la pila.

Arquitectura de la pila de UWB

La pila de UWB consta del módulo de la línea principal de UWB y la implementación de la HAL que proporciona un proveedor de chips de UWB.

Diagrama de arquitectura de la pila de UWB

Figura 1: Arquitectura de la pila de UWB

Límite del módulo

El código del módulo se encuentra en las siguientes ubicaciones:

  • Apex de la línea principal de UWB: com.android.uwb

    • Superficie de la API de UWB (Java)

      • Ubicación del código: packages/modules/Uwb/framework
      • Proceso: <bootclasspath>
    • UwbService (Java)

      • Ubicación del código: packages/modules/Uwb/service
      • Proceso: system_server
    • Pila nativa de UWB (C++/Rust)

      • Ubicación del código: external/uwb
      • Proceso: system_server
  • Interfaz e implementaciones de la HAL (C++)

    • Ubicación del código de la interfaz: hardware/interfaces/uwb
    • Ubicación del código de implementación: vendor/<vendor-name>/uwb
    • Proceso: <vendor defined>

Formato del paquete

El módulo de UWB (com.google.android.uwb) usa el APEX formato.

Dependencias

El módulo de la línea principal de UWB depende de lo siguiente:

  • Implementación de la HAL de un proveedor de chips de UWB
  • Pila de Bluetooth para todas las interacciones OOB
  • Elemento seguro para todas las interacciones de servicio seguro
  • Framework principal para la aplicación de permisos de tiempo de ejecución de UWB