Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Wifi-RTTについて / Wifi-RTT

sasami
May 18, 2018
3.6k

Wifi-RTTについて / Wifi-RTT

Google I/O 2018 わいわい報告会

sasami

May 18, 2018
Tweet

Transcript

  1. profile 4 sasami(@sasamihoo ) 4 intern(Android Engineer) 4 IoTܥͷݚڀࣨ(M2) 4

    Androidྺ1.5೥͘Β͍ 4 ࠓճGoogle I/OॳࢀઓͰ͢ 2018.5.27 Google I/O 2018 Θ͍Θ͍ใࠂձ 2
  2. Overview of the session 4 1-meter level accuracy of indoor

    location positioning 4 API available in Android P Wi-Fi RTTΛར༻͢Δ͜ͱͰ1m͝ͱͰ ͷࣨ಺ͷAndroidͷσόΠεͷҐஔΛ ଌఆͰ͖ΔΑ͏ʹͳͬͨ 2018.5.27 Google I/O 2018 Θ͍Θ͍ใࠂձ 7
  3. Current approach for detecting indoor positioning 4 gyro 4 Wifi-RSSI

    4 Cell NLP 2018.5.27 Google I/O 2018 Θ͍Θ͍ใࠂձ 8
  4. Current critical problem for getting fine location 4 Wifi-RSSI are

    affected by human activity(2.4Ghz) 2018.5.27 Google I/O 2018 Θ͍Θ͍ใࠂձ 9
  5. What is Wifi RTT? 4 IEEE 802.11mc protocol 4 Using

    Time-of-Flight technology 4 get distance from total time of packet’s round trip ڑ཭ = (total time * speed- of-light(c)) / 2 2018.5.27 Google I/O 2018 Θ͍Θ͍ใࠂձ 10
  6. How it works? 4 get total time from timestamp from

    the access point 2 * distance = ((t4-t1) - (t3-t2))*c t4-t1 = ΞΫηεϙΠϯτଆͷ࣌ؒͷ ࠩ෼ t3-t2 = σόΠεଆͷ࣌ؒͷࠩ෼ 2018.5.27 Google I/O 2018 Θ͍Θ͍ใࠂձ 11
  7. Calculate Positioning 4 multilateration 4 more ranges, more constraints and

    get more accurate position 4 at least more 4 ranges 2018.5.27 Google I/O 2018 Θ͍Θ͍ใࠂձ 13
  8. multilateration estimation case of no exact solution to that equation(no

    intersect) - squares solution 2018.5.27 Google I/O 2018 Θ͍Θ͍ใࠂձ 14
  9. How to add RTT in our application? 4 IEEE 802.11mc

    protocol’s support of both Wi-Fi device and a mobile phone 4 location permission(ACCESS_FINE_LOCATION) 4 Wi-Fi scan available 4 no need to connect to the Wi-fi(using beacon packet) 2018.5.27 Google I/O 2018 Θ͍Θ͍ใࠂձ 16
  10. Check the device support RTT? val packageManager: PackageManager = context.getPackageManager()

    rttSupported: Boolean = packageManager.hasSystemFeature(PackageManager.FEATURE_WIFI_RTT) 2018.5.27 Google I/O 2018 Θ͍Θ͍ใࠂձ 17
  11. Check the access point support RTT? public fun filterRttApp(){ val

    scanResult: List<ScanResult> = wifiManager.getScanResults() for (scanResult: ScanResult in scanResults) { if (scanResult.is80211mcResponder()){ } } } 2018.5.27 Google I/O 2018 Θ͍Θ͍ใࠂձ 18
  12. Start Ranging val request: RangingRequest = RangingRequest.Builder() .addAccessPoints(scanResults) .build() rttManager.startRanging(request,

    executor, RangingResultCallback(){ fun onRangingFailure(code: Int){ /* handle error*/ } fun onRangingResult(results: List<RangingResult>){ for (result: RangingResult in results){ doSomethingWithResults( result.getStatus(), result.getMacAddress(), result.getDistanceMs() ) } } }) 2018.5.27 Google I/O 2018 Θ͍Θ͍ใࠂձ 19
  13. RTT Ranging Results type function name int getDistanceMm() int getDistanceStdDevMm()

    MacAddress getMacAddress() long getRangingTimestampMillis() int getRssi() int getNumAttemptedMeasurements() int getNumSuccessfulMeasurements() available in Android Preview P(https://developer.android.com/reference/android/net/wifi/ rtt/RangingResult) 2018.5.27 Google I/O 2018 Θ͍Θ͍ใࠂձ 20
  14. Integration to Fused Location Provider(In the future) 4 enable to

    use Wifi-RTT collaborate with other solutions(GPS, gyro, Wifi-RSSI) 2018.5.27 Google I/O 2018 Θ͍Θ͍ใࠂձ 21
  15. What devices and access points can use Wifi-RTT? needs support

    of IEEE 802.11mc protocol 4 Pixel phones 4 Google Wifi will support soon 2018.5.27 Google I/O 2018 Θ͍Θ͍ใࠂձ 22
  16. Recap 4 Using Wifi RTT, 1-meter location accuracy is available

    4 both access points and devices need to support of IEEE 802.11mc protocol 4 Available in Android P preview 2018.5.27 Google I/O 2018 Θ͍Θ͍ใࠂձ 23