Android 9'daki Wi-Fi Round Trip Time (RTT) özelliği, desteklenen cihazların diğer desteklenen cihazlara olan mesafeyi ölçmesini sağlar. Bu cihazlar, Erişim Noktaları (AP'ler) veya Wi-Fi Aware eşleri olabilir (cihazda Wi-Fi Aware destekleniyorsa). IEEE 802.11mc ve IEEE 802.11az protokolü (Android 15'ten itibaren kullanılabilir) üzerine kurulu bu özellik, uygulamaların gelişmiş konum doğruluğu ve farkındalığı kullanmasını sağlar.
Örnekler ve kaynak
Bu özelliği kullanmak için Vendor HAL arayüzünü uygulayın. Android 14 ve sonraki sürümlerde, Vendor HAL arayüzü AIDL kullanılarak tanımlanır. Android 13 ve önceki sürümlerde, Vendor HAL arayüzü HIDL kullanılarak tanımlanır. Android 8.0'da HIDL, arayüzlerde ve paketlerde toplanan türleri ve yöntem çağrılarını belirterek uygulamaları kolaylaştırmak için kullanılan önceki Donanım Soyutlama Katmanı (HAL) yapısının yerini aldı.
Kablosuz RTT özelliğini kullanmak için kablosuz arayüzünü takip edin. Uygulanan arayüze bağlı olarak bu:
- AIDL:
hardware/interfaces/wifi/aidl
- HIDL:
hardware/interfaces/wifi/1.0
veya sonraki sürümler.
AIDL ve HIDL arayüzleriyle nasıl ilişkili olduğunu görmek için eski Wi-Fi HAL'e başvurabilirsiniz: hardware/libhardware_legacy/+/android16-release/include/hardware_legacy/rtt.h.
Uygulama
Kablosuz RTT'yi uygulamak için hem çerçeve hem de HAL/donanım yazılımı desteği sağlamanız gerekir:
Çerçeve:
- AOSP kodu
- Kablosuz RTT'yi etkinleştirme: Özellik işareti gerektirir.
Wi-Fi RTT (IEEE 802.11mc veya IEEE 802.11az) HAL desteği (bu da donanım yazılımı desteği anlamına gelir)
Bu özelliği uygulamak için Wi-Fi AIDL veya HIDL arayüzünü uygulayın ve özellik işaretini etkinleştirin:
device.mk
konumundakidevice/<oem>/<device>
içinde, Wi-Fi RTT özelliğinin desteklenmesi içinPRODUCT_COPY_FILES
ortam değişkenini değiştirin:PRODUCT_COPY_FILES += frameworks/native/data/etc/android.hardware.wifi.rtt.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.rtt.xml
Aksi takdirde, bu özellik için gereken her şey AOSP'ye dahildir.
MAC rastgele seçimi
Gizliliği artırmak için kablosuz RTT işlemleri sırasında kullanılan MAC adresi rastgele olmalıdır. Yani kablosuz arayüzün yerel MAC adresiyle eşleşmemelidir. Ancak bir istisna olarak, bir cihaz bir AP ile ilişkilendirildiğinde bu AP veya diğer AP'lerle yapılan tüm RTT işlemleri için ilişkilendirildiği MAC adresini kullanabilir.
Doğrulama
Bu özellik için Android Uyumluluk Test Paketi (CTS) testleri mevcuttur. CTS, özelliğin etkinleştirildiğini algıladığında ilişkili testleri otomatik olarak dahil eder. Bu özellik, Vendor Test Suite (VTS) kullanılarak da test edilebilir.
Birim testleri
Kablosuz RTT paket testleri şu şekilde yürütülür:
Hizmet testleri:
atest com.android.server.wifi.rtt
Yönetici testleri:
atest android.net.wifi.rtt
CTS
Bu özellik için Android Uyumluluk Test Paketi (CTS) testleri mevcuttur. CTS, özelliğin etkinleştirildiğini algıladığında ilişkili testleri otomatik olarak dahil eder. Kablosuz RTT'yi (IEEE 802.11mc) destekleyen bir erişim noktası, test edilen cihazın menzilinde olmalıdır.
CTS testleri şu yöntemlerle tetiklenebilir:
atest WifiRttTest
Kalibrasyon
Wi-Fi RTT'nin iyi performans göstermesi için 802.11mc veya 802.11az protokollerinde döndürülen aralıklar, bu bölümde açıklandığı gibi temel performans göstergeleri (TPG'ler) dahilinde doğru olmalıdır.
11mc protokolünde, listelenen bant genişliklerinde (80 MHz, 40 MHz, 20 MHz) ve 8 patlama boyutunda, aralık tahmini için TPG'nin hatanın 90. yüzdelik diliminde aşağıdaki doğruluğu elde etmesi beklenir.
- 80 MHz: 2 metre
- 40 MHz: 4 metre
- 20 MHz: 8 metre
11az protokolünde, anten MIMO yapılandırması ve uzun eğitim alanı (LTF) tekrarı doğruluğu etkiler. Tipik bir cep telefonu (2 antenli) ve erişim noktası (4 antenli) ile sistem 2x4 MIMO yapılandırmasına sahiptir. İki LTF tekrarlama faktörünün kullanıldığı ve listelenen bant genişliklerinde (160 MHz, 80 MHz, 40 MHz, 20 MHz) bu tür bir yapılandırmada, aralık tahmini için KPI'nin hata yüzdesinin 90. yüzdelik diliminde aşağıdaki doğruluğu elde etmesi beklenir.
- 160 MHz: 0,5 metre
- 80 MHz: 1 metre
- 40 MHz: 2 metre
- 20 MHz: 4 metre
Özelliğin doğru şekilde uygulandığından emin olmak için kalibrasyon testi yapılması gerekir.
Bu, kesin referans aralığını artan mesafelerde tahmini RTT aralığıyla karşılaştırarak elde edilebilir. Temel uygunluk için çözümünüzü, RTT kalibrasyonu yapıldığı bilinen bir cihazla doğrulamanız gerekir. Aralık kalibrasyonu aşağıdaki koşullarda test edilmelidir:
- Geniş ve açık bir laboratuvar veya çok yollu iletimin alışılmadık derecede yüksek olmasına neden olabilecek çok sayıda metal nesnenin bulunmadığı bir koridor.
- En az 25 metre boyunca uzanan bir Görüş Hattı (LOS) izi veya yolu.
- Pistin bir ucundan diğer ucuna 0,5 metrelik artışlarla işaretler.
Parkurun bir ucunda, yerden 20 cm yukarıda RTT özellikli bir erişim noktasını sabitlemek için bir yer ve parkur boyunca hareket ettirilebilen ve yerden 20 cm yukarıda, 0, 5 m işaretleriyle hizalanabilen bir Android telefon (veya test edilen diğer Android mobil cihaz) için hareketli bir montaj parçası.
Her işaretçide, erişim noktasından uzaklık ile birlikte 50 mesafe sonucu kaydedilmelidir. Aralık ortalaması ve varyans gibi istatistikler her işaretçi konumu için hesaplanmalıdır.
5. adımdaki sonuçlardan, kesin referans (x ekseni) ile tahmini aralık (y ekseni) için bir grafik çizilebilir ve en uygun regresyon doğrusu tahmin edilebilir. İdeal cihaz kalibrasyonu, y ekseninde 0,0 m ofsetle 1,0 gradyanlı bir çizgiyle sonuçlanır. Bu değerlerden sapmalar, ilgili bant genişliğinin KPI'si dahilindeyse kabul edilebilir. Sonuçlar KPI'nın dışındaysa sonuçları KPI spesifikasyonuna getirmek için cihaz özelliği yeniden kalibre edilmelidir.