โมดูลแถบความถี่กว้างยิ่งยวด (UWB) ที่เปิดตัวใน Android 13 มีสแต็ก UWB เหนืออินเทอร์เฟซ HAL ซึ่งอิงตามข้อกำหนดของ FiRa
โมดูล UWB ให้ประโยชน์แก่ผู้ผลิตอุปกรณ์ดังต่อไปนี้
- สแต็ก UWB ดั้งเดิมของ Android ที่พร้อมใช้งานสำหรับอุปกรณ์ที่รองรับ UWB
- ปรับปรุงคุณภาพและการทํางานร่วมกันของ UWB ในระบบนิเวศของ Android
- การสนับสนุนที่รวดเร็วและยืดหยุ่นมากขึ้นสำหรับ Use Case ใหม่ๆ และการอัปเดตข้อกำหนดเฉพาะของ FiRa
รายละเอียด
รายละเอียดของโมดูล UWB มีดังนี้
- มีสแต็ก UWB ที่สมบูรณ์ใน AOSP ใน Android 13 ที่ใช้ข้อกำหนด UCI ที่กำหนดโดย FiRa เป็นอินเทอร์เฟซ HAL
- อนุญาตให้แอประบบจัดสรรโปรไฟล์ที่กำหนดเอง
- มีแพลตฟอร์ม API ของระบบเพื่อให้แอปของระบบใช้โปรไฟล์ที่กำหนดเองในเซสชันการระบุตำแหน่งได้
- มีโครงสร้างพื้นฐานเพื่อแสดง RRO ที่ผู้ผลิตอุปกรณ์สามารถใช้เพื่อปรับแต่งลักษณะการทำงานของสแต็ก
สถาปัตยกรรมสแต็ก UWB
สแต็ก UWB ประกอบด้วยโมดูลหลักของ UWB และการใช้งาน HAL ที่ได้จากผู้ให้บริการชิป UWB
รูปที่ 1 สถาปัตยกรรมสแต็ก UWB
ขอบเขตของโมดูล
โค้ดของโมดูลอยู่ในตำแหน่งต่อไปนี้
UWB Mainline Apex:
com.android.uwb
แพลตฟอร์ม UWB API (Java)
- ตำแหน่งรหัส:
packages/modules/Uwb/framework
- กระบวนการ:
<bootclasspath>
- ตำแหน่งรหัส:
UwbService (Java)
- ตำแหน่งรหัส:
packages/modules/Uwb/service
- กระบวนการ:
system_server
- ตำแหน่งรหัส:
สแต็ก Uwb เนทีฟ (C++/Rust)
- ตำแหน่งรหัส:
external/uwb
- กระบวนการ:
system_server
- ตำแหน่งรหัส:
อินเทอร์เฟซและการใช้งาน HAL (C++)
- ตำแหน่งรหัสอินเทอร์เฟซ:
hardware/interfaces/uwb
- ตำแหน่งโค้ดการใช้งาน:
vendor/<vendor-name>/uwb
- กระบวนการ:
<vendor defined>
- ตำแหน่งรหัสอินเทอร์เฟซ:
รูปแบบแพ็กเกจ
โมดูล UWB (com.google.android.uwb
) ใช้รูปแบบ APEX
การขึ้นต่อกัน
โมดูลหลัก UWB ขึ้นอยู่กับปัจจัยต่อไปนี้
- การใช้งาน HAL จากผู้ให้บริการชิป UWB
- สแต็กบลูทูธสำหรับการโต้ตอบกับ OOB ทั้งหมด
- องค์ประกอบที่ปลอดภัยสำหรับการโต้ตอบกับบริการที่ปลอดภัยทั้งหมด
- เฟรมเวิร์กหลักสำหรับการบังคับใช้สิทธิ์รันไทม์ของ UWB