UWB

โมดูลแถบความถี่กว้างยิ่งยวด (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

แผนภาพสถาปัตยกรรมของกอง 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