4.1 Android-UWB技术框架简介

        Android 13中引入的超宽带 (UWB) 模块在HAL接口之上包含一个UWB协议栈,该协议栈采用FiRa规范。可以在支持的设备之间实现高度安全的精确测距。AOSP UWB Stack作为可选模块提供给设备制造商。

UWB模块对于设备制造商而言带来了以下好处:

  • 提供适用于支持 UWB 的设备的完整 Android 原生UWB协议栈
  • 提高了整个 Android 生态系统中 UWB 的质量和互操作性
  • 针对新的FiRa用例和规范,提供更快、更灵活的支持

UWB模块的详细信息如下:

  • Android 13中的AOSP中包含完整的UWB协议栈,该协议栈使用FiRa定义的UCI规范作为HAL接口。
  • 支持系统应用(system app)设置自定义配置文件(custom profiles)。
  • 包含一个系统API Surface,允许系统应用在测距会话中使用自定义配置。
  • 包含用于公开RRO的基础架构,设备制造商可以使用RRO自定义协议栈的特性。

UWB协议栈架构

UWB协议栈框架由UWB设备商提供的协议栈以及AOSP模块,包含UWB Native StackUWB ServiceUWB API Surface以及相关库,具体组成如下图。

4.1 Android-UWB技术框架简介_第1张图片

AOSP模块

AOSP UWB Stack(打包为可选模块com.google.android.uwb)包含以下组件:

  • UWB平台API Surface(Java)
    • 代码位置:packages/modules/Uwb/framework
    • 处理
  • 支持库
    • 代码位置:packages/modules/Uwb/service/support_lib
  • 由符合FiRa定义的UwbService层和通用服务管理层(CSML)所定义的组件
    • 代码位置:packages/modules/Uwb/service
  • Rust原生UCI层
    • 代码位置:external/uwb
  • UWB HAL接口,基于由FiRa定义的UWB命令接口(UCI)规范
    • 代码位置:hardware/interfaces/uwb
    • 供应商代码:vendor//uwb

        对于供应商组件(UWB Vendor Stack),包含由UWB HAL供应商实现、UWB驱动程序和UWB设备。

        对于UWB Native Stack而言,包括UWB硬件抽象层AIDL接口、UWB UCI协议栈、以及UWB JNI接口。

UWB的API Surface

        UWB Stack包含用于系统应用和第三方应用的API Surface。

系统应用

        设备制造商使用android.uwb.UwbManager系统API Surface允许系统应用进行低级别访问。要使用此API,系统应用必须使用支持库packages/modules/Uwb/service/support_lib

第三方应用

        第三方应用使用Jetpack UWB公共API surface,androidx.core.uwb

依赖

UWB主线模块依赖以下内容:

  • UWB芯片供应商的硬件抽象层(HAL)实现;
  • 用于所有OOB交互的蓝牙协议栈;
  • 用于所有安全服务交互的安全单元;
  • 强制执行UWB运行时权限的核心框架。

验证

如需验证UWB实现,需要确保通过了/cts/tests/uwb下的CTS测试。

https://source.android.com/docs/compatibility/cts

参考链接

1、Android文档,UWB。

2、模块化系统组件,超宽带,https://source.android.com/docs/core/connect/uwb。

你可能感兴趣的:(FiRa,UWB技术,Android,android,物联网,信息与通信)