Wi-Fi 封包往返時間 (RTT) 功能,可讓支援裝置 測量與其他支援裝置之間的距離,例如裝置是否為存取點 (AP) 或 Wi-Fi 感知類應用程式 (如 Wi-Fi 感知) 。這項功能以 IEEE 802.11mc 為基礎 和 IEEE 802.11az 通訊協定 (適用於 Android 15)、 允許應用程式使用更高的定位精確度和定位精確度。
範例和來源
如要使用這項功能,請導入供應商 HAL 介面。 在 Android 14 以上版本中 供應商 HAL 介面是以 AIDL 定義。 在 Android 13 以下版本中, 供應商 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,瞭解 Wi-Fi HAL 與 AIDL 和 HIDL 介面: hardware/libhardware_legacy/+/main/include/hardware_legacy/rtt.h。
實作
如要實作 Wi-Fi RTT,您必須提供架構和 HAL/韌體 支援服務:
架構:
- Android 開放原始碼計畫程式碼
- 啟用 Wi-Fi RTT:功能標記
Wi-Fi RTT (IEEE 802.11mc 或 IEEE 802.11az) HAL 支援 (暗示 韌體支援)
如要導入這項功能,請導入 Wi-Fi AIDL 或 HIDL 介面; 並啟用功能旗標
在
device/<oem>/<device>
中的device.mk
中,修改PRODUCT_COPY_FILES
環境變數,納入對 Wi-Fi 的支援 即時文字訊息功能:PRODUCT_COPY_FILES += frameworks/native/data/etc/android.hardware.wifi.rtt.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.rtt.xml
在其他情況下,Android 開放原始碼計畫已納入這項功能所需的一切資訊。
MAC 隨機化
為進一步保護隱私,Wi-Fi RTT 交易時使用的 MAC 位址必須 隨機化,也就是說,此位址必須與 Wi-Fi 的原生 MAC 位址相符 存取 API不過例外,如果裝置已與 AP 建立關聯 可使用與任何 RTT 交易相關聯的 MAC 位址 與該 AP 或其他 AP 一起提供
驗證
有 Android Compatibility Test Suite (CTS) 測試支援這項功能。CTS 偵測 且會自動納入相關測試。 您也可以使用 供應商測試套件 (VTS)。
單元測試
Wi-Fi RTT 套件測試是使用以下方式執行:
服務測試:
atest com.android.server.wifi.rtt
管理員測試:
atest android.net.wifi.rtt
CTS
有 Android Compatibility Test Suite (CTS) 測試支援這項功能。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) 重複會影響準確度。使用一般手機 (使用 天線) 和存取點 (4 天線),系統支援 2x4 MIMO 此外還會從 0 自動調整資源配置 您完全不必調整資源調度設定如要進行這類設定,請使用 以及下列頻寬 (160 MHz、80 MHz、40 MHz、 20 MHz) 的 KPI,預估範圍的 KPI 預期會達到以下要求: 錯誤率第 90 個百分位數的準確率
- 160 MHz:0.5 公尺
- 80 MHz:1 公尺
- 40 MHz:2 公尺
- 20 MHz:4 公尺
為確保這項功能的實作方式能正常運作,請校正 進行測試
要達成這個目標,只要將真值範圍與預估 RTT 進行比較 可以增加距離對於基本合規性,您應驗證 針對已知是 RTT 校正的裝置範圍校正應 須符合下列條件的測試:
- 大型開放式實驗室,或表面無數金屬的走廊 可能會導致出現異常大量多路徑的多路徑物件。
- 至少 25 公尺的視線 (LOS) 軌道或路徑延展至 25 公尺。
- 以 0.5 公尺為單位的標記,從軌道一端到另一端之間遞增。
能夠在賽道一端固定支援 RTT 存取點的位置 支架高於地板的 20 公分,以及一個可移動式 Android 手機的支架 (或其他受測試的 Android 行動裝置),可以沿著 線條,並對齊的 0.5 公尺標記,同樣是高於 20 公分 地板。
每個標記應該記錄 50 個測距結果,以及 與存取點的距離。統計資料,例如範圍平均值和變異數 都應針對每個標記位置計算。
根據步驟 5 的結果,系統會繪製實際資料 (X 軸) 圖表 與預估範圍 (Y 軸) 相比較,並預估最佳適配迴歸線。理想 裝置校正會導致漸層為 1.0 的漸層,且偏移 0.0m 處於開啟狀態 Y 軸的值只要這些值在 對應頻寬的 KPI。如果結果不屬於 KPI, 裝置功能應重新校正,才能在 KPI 範圍內取得結果 規格。