Wi-Fi RTT (IEEE 802.11mc, IEEE 802.11az)

ฟีเจอร์ Wi-Fi Round Trip Time (RTT) ใน Android 9 ช่วยให้อุปกรณ์ที่รองรับสามารถวัดระยะทางไปยัง อุปกรณ์อื่นๆ ที่รองรับ ไม่ว่าจะเป็นจุดเข้าใช้งาน (AP) หรือเพียร์ Wi-Fi Aware (หากอุปกรณ์รองรับ Wi-Fi Aware) ฟีเจอร์นี้สร้างขึ้นจากโปรโตคอล IEEE 802.11mc และ IEEE 802.11az (พร้อมใช้งานตั้งแต่ Android 15) ซึ่งช่วยให้แอปใช้ความแม่นยำและความตระหนักด้านตำแหน่งที่ตั้งที่ดียิ่งขึ้นได้

ตัวอย่างและแหล่งที่มา

หากต้องการใช้ฟีเจอร์นี้ ให้ติดตั้งใช้งานอินเทอร์เฟซ Vendor HAL ใน Android 14 ขึ้นไป อินเทอร์เฟซ Vendor HAL จะกำหนดโดยใช้ AIDL ใน Android 13 และต่ำกว่า อินเทอร์เฟซ Vendor HAL จะกำหนดโดยใช้ HIDL ใน Android 8.0 HIDL ได้เข้ามาแทนที่โครงสร้างระดับชั้นการจัดการฮาร์ดแวร์โดยตรง (HAL) ก่อนหน้าซึ่งใช้เพื่อปรับปรุงการติดตั้งใช้งานให้มีประสิทธิภาพมากขึ้นด้วยการระบุประเภทและการเรียกใช้เมธอดที่รวบรวมไว้ในอินเทอร์เฟซและแพ็กเกจ

ทำตามอินเทอร์เฟซ Wi-Fi เพื่อใช้ฟีเจอร์ Wi-Fi RTT โดยอินเทอร์เฟซที่ใช้จะเป็นดังนี้ ขึ้นอยู่กับอินเทอร์เฟซที่ติดตั้งใช้งาน

  • AIDL: hardware/interfaces/wifi/aidl
  • HIDL: hardware/interfaces/wifi/1.0 ขึ้นไป

คุณสามารถดู Wi-Fi HAL แบบเดิมเพื่อดูความสัมพันธ์กับอินเทอร์เฟซ AIDL และ HIDL ได้ที่ hardware/libhardware_legacy/+/android17-release/include/hardware_legacy/rtt.h

การใช้งาน

หากต้องการติดตั้งใช้งาน Wi-Fi RTT คุณต้องให้การสนับสนุนทั้งเฟรมเวิร์กและ HAL/เฟิร์มแวร์ ดังนี้

  • เฟรมเวิร์ก

    • โค้ด AOSP
    • เปิดใช้ Wi-Fi RTT: ต้องใช้แฟล็กฟีเจอร์
  • การสนับสนุน HAL ของ Wi-Fi RTT (IEEE 802.11mc หรือ IEEE 802.11az) (ซึ่งหมายถึงการสนับสนุนเฟิร์มแวร์)

หากต้องการติดตั้งใช้งานฟีเจอร์นี้ ให้ติดตั้งใช้งานอินเทอร์เฟซ Wi-Fi AIDL หรือ HIDL แล้วเปิดใช้แฟล็กฟีเจอร์

  • ใน device.mk ซึ่งอยู่ใน device/<oem>/<device> ให้แก้ไขตัวแปรสภาพแวดล้อม PRODUCT_COPY_FILES เพื่อรวมการสนับสนุนฟีเจอร์ Wi-Fi RTT

    PRODUCT_COPY_FILES += frameworks/native/data/etc/android.hardware.wifi.rtt.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.rtt.xml
    

มิเช่นนั้น ทุกสิ่งที่จำเป็นสำหรับฟีเจอร์นี้จะรวมอยู่ใน AOSP

การสุ่ม MAC

ที่อยู่ MAC ที่ใช้ระหว่างธุรกรรม Wi-Fi RTT ต้องเป็นแบบสุ่มเพื่อเพิ่มความเป็นส่วนตัว นั่นคือต้องไม่ตรงกับที่อยู่ MAC บิวท์อินของอินเทอร์เฟซ Wi-Fi อย่างไรก็ตาม เมื่ออุปกรณ์เชื่อมโยงกับ AP อุปกรณ์อาจใช้ที่อยู่ MAC ที่เชื่อมโยงอยู่สำหรับธุรกรรม RTT กับ AP นั้นหรือกับ AP อื่นๆ ได้

การตรวจสอบ

มีการทดสอบชุดเครื่องมือทดสอบความเข้ากันได้ (CTS) ของ Android สำหรับฟีเจอร์นี้ CTS จะตรวจหาเมื่อมีการเปิดใช้ฟีเจอร์และรวมการทดสอบที่เกี่ยวข้องโดยอัตโนมัติ นอกจากนี้ คุณยังทดสอบฟีเจอร์นี้ได้โดยใช้ชุดเครื่องมือทดสอบของผู้ให้บริการ (VTS)

การทำ Unit Test

ระบบจะดำเนินการทดสอบแพ็กเกจ Wi-Fi RTT โดยใช้สิ่งต่อไปนี้

การทดสอบบริการ

atest com.android.server.wifi.rtt

การทดสอบผู้จัดการ

atest android.net.wifi.rtt

CTS

มีการทดสอบชุดเครื่องมือทดสอบความเข้ากันได้ (CTS) ของ Android สำหรับฟีเจอร์นี้ CTS จะตรวจหาเมื่อมีการเปิดใช้ฟีเจอร์และรวมการทดสอบที่เกี่ยวข้องโดยอัตโนมัติ จุดเข้าใช้งานที่รองรับ Wi-Fi RTT (IEEE 802.11mc) ต้องอยู่ในระยะของอุปกรณ์ที่อยู่ระหว่างการทดสอบ

คุณสามารถทริกเกอร์การทดสอบ CTS ได้โดยใช้สิ่งต่อไปนี้

atest WifiRttTest

การปรับ

Wi-Fi RTT จะทำงานได้ดีหากช่วงที่แสดงผลในโปรโตคอล 802.11mc หรือ 802.11az มีความแม่นยำภายในตัวบ่งชี้ประสิทธิภาพหลัก (KPI) ตามที่อธิบายไว้ในส่วนนี้

สำหรับโปรโตคอล 11mc ที่แบนด์วิดท์ที่ระบุ (80 MHz, 40 MHz, 20 MHz) และขนาดการส่งข้อมูลเป็นชุด 8 KPI สำหรับการประมาณช่วงคาดว่าจะมีความแม่นยำต่อไปนี้ที่เปอร์เซ็นไทล์ที่ 90 ของข้อผิดพลาด

  • 80 MHz: 2 เมตร
  • 40 MHz: 4 เมตร
  • 20 MHz: 8 เมตร

สำหรับโปรโตคอล 11az การกำหนดค่าเสาอากาศ MIMO และการทำซ้ำฟิลด์การฝึกระยะยาว (LTF) จะส่งผลต่อความแม่นยำ โทรศัพท์มือถือทั่วไป (ใช้เสาอากาศ 2 ต้น) และจุดเข้าใช้งาน (เสาอากาศ 4 ต้น) ระบบจะมีการกำหนดค่า MIMO แบบ 2x4 สำหรับการกำหนดค่าดังกล่าวโดยใช้ปัจจัยการทำซ้ำ LTF เป็น 2 และที่แบนด์วิดท์ที่ระบุ (160 MHz, 80 MHz, 40 MHz, 20 MHz) KPI สำหรับการประมาณช่วงคาดว่าจะมีความแม่นยำต่อไปนี้ที่เปอร์เซ็นไทล์ที่ 90 ของข้อผิดพลาด

  • 160 MHz: 0.5 เมตร
  • 80 MHz: 1 เมตร
  • 40 MHz: 2 เมตร
  • 20 MHz: 4 เมตร

การทดสอบการเทียบมาตรฐานเป็นสิ่งจำเป็นเพื่อยืนยันว่าการติดตั้งใช้งานฟีเจอร์ทำงานอย่างถูกต้อง

คุณสามารถทำได้โดยการเปรียบเทียบช่วงที่แท้จริงกับช่วงที่ประมาณโดย RTT ที่ระยะทางที่เพิ่มขึ้น สำหรับการปฏิบัติตามข้อกำหนดพื้นฐาน เราขอแนะนำให้คุณตรวจสอบโซลูชันกับอุปกรณ์ที่ทราบว่ามีการเทียบมาตรฐาน RTT แล้ว เราขอแนะนำให้ทดสอบการเทียบมาตรฐานช่วงภายใต้เงื่อนไขต่อไปนี้

  1. ห้องปฏิบัติการแบบเปิดขนาดใหญ่หรือทางเดินที่ไม่มีวัตถุโลหะจำนวนมากซึ่งอาจทำให้เกิดการแพร่กระจายคลื่นหลายเส้นทางสูงผิดปกติ
  2. เส้นทางหรือเส้นทางที่มีการมองเห็นโดยตรง (LOS) อย่างน้อย 1 เส้นทางซึ่งมีความยาว 25 เมตร
  3. เครื่องหมายที่เพิ่มขึ้นทีละ 0.5 เมตรจากปลายด้านหนึ่งของเส้นทางไปยังอีกด้านหนึ่ง
  4. สถานที่สำหรับยึดจุดเข้าใช้งานที่รองรับ RTT ไว้ที่ปลายด้านหนึ่งของเส้นทางซึ่งติดตั้งสูงจากพื้น 20 ซม. และแท่นยึดแบบเคลื่อนย้ายได้สำหรับโทรศัพท์ Android (หรืออุปกรณ์เคลื่อนที่ Android อื่นๆ ที่อยู่ระหว่างการทดสอบ) ซึ่งสามารถเคลื่อนย้ายไปตามเส้นทางและจัดตำแหน่งให้ตรงกับเครื่องหมาย 0.5 เมตร โดยติดตั้งสูงจากพื้น 20 ซม. เช่นกัน

  5. เราขอแนะนำให้บันทึกผลการวัดระยะทาง 50 รายการที่เครื่องหมายแต่ละรายการ พร้อมกับระยะทางจากจุดเข้าใช้งาน ควรคำนวณสถิติ เช่น ค่าเฉลี่ยและค่าความแปรปรวนของระยะทาง สำหรับตำแหน่งเครื่องหมายแต่ละตำแหน่ง

จากผลลัพธ์ในขั้นตอนที่ 5 คุณสามารถวาดแผนภูมิสำหรับระยะทางที่แท้จริง (แกน x) กับระยะทางที่ประมาณ (แกน y) และประมาณเส้นการถดถอยที่เหมาะสมที่สุด การเทียบมาตรฐานอุปกรณ์ที่เหมาะสมจะทำให้เกิดเส้นที่มีความชัน 1.0 โดยมีออฟเซ็ต 0.0 เมตรบนแกน y การเบี่ยงเบนจากค่าเหล่านี้เป็นที่ยอมรับหากอยู่ใน KPI สำหรับแบนด์วิดท์ที่เกี่ยวข้อง หากผลลัพธ์อยู่นอก KPI เราขอแนะนำให้คุณเทียบมาตรฐานฟีเจอร์ของอุปกรณ์อีกครั้งเพื่อให้ผลลัพธ์อยู่ในข้อกำหนด KPI