Wi-Fi RTT (IEEE 802.11mc)

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

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

หากต้องการใช้คุณลักษณะนี้ ให้ใช้ Wi-Fi Hardware Interface Design Language (HIDL) ที่มีให้ในโครงการ Android Open Source (AOSP) ใน Android 8.0 นั้น HIDL จะแทนที่โครงสร้าง Hardware Abstraction Layer (HAL) ก่อนหน้านี้ที่ใช้เพื่อปรับปรุงการใช้งานโดยการระบุประเภทและการเรียกเมธอดที่รวบรวมไว้ในอินเทอร์เฟซและแพ็คเกจ

ปฏิบัติตาม Wi-Fi HIDL เพื่อใช้คุณลักษณะ Wi-Fi RTT: hardware/interfaces/wifi/1.0 หรือใหม่กว่า

คุณสามารถอ้างถึง Wi-Fi HAL เดิมเพื่อดูว่ามีความสัมพันธ์กับอินเทอร์เฟซ HIDL ใหม่อย่างไร: hardware/libhardware_legacy/+/main/include/hardware_legacy/rtt.h

การดำเนินการ

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

  • กรอบ:

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

หากต้องการใช้ฟีเจอร์นี้ ให้ติดตั้ง Wi-Fi 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 อื่น

การตรวจสอบ

มีการทดสอบ Android Compatibility Test Suite (CTS) สำหรับคุณลักษณะนี้ CTS ตรวจพบเมื่อเปิดใช้งานคุณสมบัติและรวมการทดสอบที่เกี่ยวข้องโดยอัตโนมัติ ฟีเจอร์นี้ยังสามารถทดสอบได้โดยใช้ Vendor Test Suite (VTS) และ acts/sl4a ซึ่งเป็นชุดทดสอบที่ดำเนินการทดสอบการรวมระบบอย่างครอบคลุม

การทดสอบหน่วย

การทดสอบแพ็คเกจ Wi-Fi RTT ดำเนินการโดยใช้:

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

atest com.android.server.wifi.rtt

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

atest android.net.wifi.rtt

การทดสอบการบูรณาการ (ACTS)

ชุดทดสอบacts/sl4a ซึ่งอธิบายไว้ใน /tools/test/connectivity/acts_tests/tests/google/wifi/rtt/README.md ให้การทดสอบการทำงาน ประสิทธิภาพ และความเครียด

ซี.ที.เอส

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

การทดสอบ CTS สามารถทำได้โดยใช้:

atest WifiRttTest

การสอบเทียบ

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

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

เพื่อให้แน่ใจว่าการใช้งานคุณสมบัติทำงานได้อย่างถูกต้อง จำเป็นต้องมีการทดสอบการปรับเทียบ

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

  1. ห้องปฏิบัติการเปิดขนาดใหญ่หรือทางเดินที่มีวัตถุโลหะไม่มากนัก ซึ่งอาจส่งผลให้เกิดหลายเส้นทางสูงผิดปกติ
  2. แทร็ก/เส้นทาง Line-Of-Sight (LOS) อย่างน้อยยาว 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

,

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

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

หากต้องการใช้คุณลักษณะนี้ ให้ใช้ Wi-Fi Hardware Interface Design Language (HIDL) ที่มีให้ในโครงการ Android Open Source (AOSP) ใน Android 8.0 นั้น HIDL จะแทนที่โครงสร้าง Hardware Abstraction Layer (HAL) ก่อนหน้านี้ที่ใช้เพื่อปรับปรุงการใช้งานโดยการระบุประเภทและการเรียกเมธอดที่รวบรวมไว้ในอินเทอร์เฟซและแพ็คเกจ

ปฏิบัติตาม Wi-Fi HIDL เพื่อใช้คุณลักษณะ Wi-Fi RTT: hardware/interfaces/wifi/1.0 หรือใหม่กว่า

คุณสามารถอ้างถึง Wi-Fi HAL เดิมเพื่อดูว่ามีความสัมพันธ์กับอินเทอร์เฟซ HIDL ใหม่อย่างไร: hardware/libhardware_legacy/+/main/include/hardware_legacy/rtt.h

การดำเนินการ

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

  • กรอบ:

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

หากต้องการใช้ฟีเจอร์นี้ ให้ติดตั้ง Wi-Fi 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 อื่น

การตรวจสอบ

มีการทดสอบ Android Compatibility Test Suite (CTS) สำหรับฟีเจอร์นี้ CTS ตรวจพบเมื่อเปิดใช้งานคุณสมบัติและรวมการทดสอบที่เกี่ยวข้องโดยอัตโนมัติ ฟีเจอร์นี้ยังสามารถทดสอบได้โดยใช้ Vendor Test Suite (VTS) และ acts/sl4a ซึ่งเป็นชุดทดสอบที่ดำเนินการทดสอบการรวมระบบอย่างครอบคลุม

การทดสอบหน่วย

การทดสอบแพ็คเกจ Wi-Fi RTT ดำเนินการโดยใช้:

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

atest com.android.server.wifi.rtt

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

atest android.net.wifi.rtt

การทดสอบการบูรณาการ (ACTS)

ชุดทดสอบacts/sl4a ซึ่งอธิบายไว้ใน /tools/test/connectivity/acts_tests/tests/google/wifi/rtt/README.md ให้การทดสอบการทำงาน ประสิทธิภาพ และความเครียด

ซี.ที.เอส

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

การทดสอบ CTS สามารถทำได้โดยใช้:

atest WifiRttTest

การสอบเทียบ

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

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

เพื่อให้แน่ใจว่าการใช้งานคุณสมบัติทำงานได้อย่างถูกต้อง จำเป็นต้องมีการทดสอบการปรับเทียบ

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

  1. ห้องปฏิบัติการเปิดขนาดใหญ่หรือทางเดินที่มีวัตถุโลหะไม่มากนัก ซึ่งอาจส่งผลให้เกิดหลายเส้นทางสูงผิดปกติ
  2. แทร็ก/เส้นทาง Line-Of-Sight (LOS) อย่างน้อยยาว 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