Android 9'daki Kablosuz Ağda Dönüş Süresi (RTT) özelliği, destekleyen cihazların erişim noktaları (AP'ler) veya kablosuz ağ bilinir eşler (cihazda Kablosuz Ağ Bilinir destekleniyorsa) olsun, diğer destekleyen cihazlara olan mesafeyi ölçmesini sağlar. IEEE 802.11mc ve IEEE 802.11az protokolüne dayalı bu özellik (Android 15'ten itibaren kullanılabilir), uygulamaların gelişmiş konum doğruluğu ve farkındalığı kullanmasına olanak tanır.
Örnekler ve kaynak
Bu özelliği kullanmak için Tedarikçi HAL arayüzünü uygulayın. Android 14 ve sonraki sürümlerde tedarikçi HAL arayüzü AIDL kullanılarak tanımlanır. Android 13 ve önceki sürümlerde tedarikçi HAL arayüzü HIDL kullanılarak tanımlanır. Android 8.0'da HIDL, arayüzlere ve paketlere 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. Hangi arayüzün uygulandığına bağlı olarak bu değer:
- 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 kablosuz ağ HAL'ine bakabilirsiniz: hardware/libhardware_legacy/+/main/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 gerekir
Kablosuz RTT (IEEE 802.11mc veya IEEE 802.11az) HAL desteği (donanım yazılımı desteğini ima eder)
Bu özelliği uygulamak için kablosuz bağlantı AIDL veya HIDL arayüzünü uygulayın ve özellik işaretini etkinleştirin:
device/<oem>/<device>
konumundakidevice.mk
içinde,PRODUCT_COPY_FILES
ortam değişkenini Wi-Fi RTT özelliğini destekleyecek şekilde 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 hale getirme
Gizliliği artırmak için kablosuz RTT işlemleri sırasında kullanılan MAC adresi rastgele oluşturulmalıdır. Yani kablosuz arayüzün yerel MAC adresiyle eşleşmemelidir. Ancak istisnai olarak, bir cihaz bir erişim noktası ile ilişkilendirildiğinde, söz konusu 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 Compatibility Test Suite (CTS) testleri mevcuttur. CTS, özelliğin etkinleştirildiğini algılar ve ilgili testleri otomatik olarak dahil eder. Bu özellik, Satıcı Testi Paketi (VTS) kullanılarak da test edilebilir.
Birim testleri
Kablosuz RTT paket testleri şunlar kullanılarak 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 Compatibility Test Suite (CTS) testleri mevcuttur. CTS, özelliğin etkinleştirildiğinde algılar ve ilişkili testleri otomatik olarak içerir. Kablosuz RTT'yi (IEEE 802.11mc) destekleyen bir Erişim Noktası, test altındaki cihazın kapsama alanında olmalıdır.
CTS testleri aşağıdakiler kullanılarak tetiklenebilir:
atest WifiRttTest
Kalibrasyon
Kablosuz 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ü için, listelenen bant genişliklerinde (80 MHz, 40 MHz, 20 MHz) ve 8'lik bir sıçrama boyutunda, aralık tahmini için TPG'nin hata yüzdesinin 90. yüzdelik diliminde aşağıdaki doğruluğa ulaşması 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 anten kullanır) ve erişim noktası (4 anten) ile sistem 2x4 MIMO yapılandırmasına sahiptir. İkilik bir LTF tekrarlama faktörü kullanan ve listelenen bant genişliklerinde (160 MHz, 80 MHz, 40 MHz, 20 MHz) bu tür bir yapılandırma için aralık tahmini KPI'sının, hata yüzdesinin 90. yüzdelik diliminde aşağıdaki doğruluğa ulaşması beklenir.
- 160 MHz: 0,5 metre
- 80 MHz: 1 metre
- 40 MHz: 2 metre
- 20 MHz: 4 metre
Özelliğin doğru çalıştığından emin olmak için kalibrasyon testi gerekir.
Bu, artan mesafelerde kesin referans aralığı ile RTT tahmini aralığı karşılaştırılarak elde edilebilir. Temel uygunluk için çözümünüzü, RTT kalibre edildiği bilinen bir cihaza göre doğrulamanız gerekir. Aralık kalibrasyonu aşağıdaki koşullar altında test edilmelidir:
- Büyük bir açık laboratuvar veya çok fazla metal nesne içermeyen koridor, çok yollu yolların olağan dışı bir şekilde yüksek olmasına yol açabilir.
- En az 25 metre uzunluğunda bir görüş hattı (LOS) parçası veya yolu.
- Parkurun bir ucundan diğer ucuna 0,5 metre aralıklarla işaretçiler.
Yerden 20 cm yükseklikte, rayın bir ucunda RTT özellikli bir erişim noktası sabitlemek için bir yer ve ray boyunca hareket ettirilebilen ve yerden 20 cm yükseklikte, 0, 5 m işaretçileriyle hizalanabilen bir Android telefon (veya test edilen diğer Android mobil cihazlar) için hareketli bir montaj.
Her işaretçide, erişim noktasına olan mesafeyle birlikte 50 menzil 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) ve tahmini aralık (y ekseni) için bir grafik çizilebilir ve en uygun regresyon çizgisi tahmin edilebilir. İdeal cihaz kalibrasyonu, y ekseninde 0,0 m ofset ile 1,0 oranında bir gradyan çizgisiyle sonuçlanır. İlgili bant genişliği için YG'nin içindeyse bu değerlerden sapmalar kabul edilebilir. Sonuçlar TPG'nin dışındaysa cihaz özelliği, sonuçları TPG spesifikasyonuna uyacak şekilde yeniden kalibre edilmelidir.