# US 8,787,191 B2 · Method and apparatus for determining distance in a Wi-Fi network

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 8,787,191 B2
- Document ID: US8787191B2
- Status: Granted
- Kind: B2
- Application number: 13/297,202
- Filed: 2011-11-15
- Published: 2013-05-16
- Granted: 2014-07-22
- Earliest claimed: 2011-11-15
- Assignees: QUALCOMM Incorporated
- Applicants: Qifan Chen; Kai Shi; Ning Zhang
- Inventors: Qifan Chen; Kai Shi; Ning Zhang
- Web page: https://patentgrep.com/patent/US8787191B2

## CPC

- H04W 24/08: Testing, {supervising or monitoring} using real traffic
- G01S 7/40: Means for monitoring or calibrating
- G01S 13/765: {with exchange of information between interrogator and responder}
- H04J 3/0667: {Bidirectional timestamps, e.g. NTP or PTP for compensation of clock drift and for compensation of propagation delays (arrangements for monitoring round trip delays in packet switching networks H04L43/0864)}
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)
- G01S: RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- H04J: MULTIPLEX COMMUNICATION (transmission in general H04B; peculiar to transmission of digital information H04L5/00; systems for the simultaneous or sequential transmission of more than one television signal H04N7/08; in exchanges H04Q11/00; stereophonic systems H04S)

## Abstract

A method and apparatus for improving the accuracy of a round trip time (RTT) estimate between a first device and a second device are disclosed. The method involves calculating an acknowledgement correction factor and a unicast correction factor. These correction factors are used to compensate for symbol boundary time errors resulting from multipath effects.

## Claims

### Claim 1

A method for improving accuracy of a round trip time (RTT) estimate between a first device and a second device, the method comprising:
transmitting a unicast packet from the first device to the second device;
determining a unicast correction factor (CORR_UNC) using a processor in the second device, wherein the unicast correction factor is to compensate for multipath effects upon the unicast packet;
embedding the unicast correction factor in an acknowledgment packet in the second device;
transmitting the acknowledgment packet from the second device to the first device;
determining an acknowledgment correction factor (CORR_ACK) using a processor in the first device, wherein the acknowledgment correction factor is to compensate for multipath effects upon the acknowledgment packet; and
calculating the RTT estimate in the first device using the unicast correction factor and the acknowledgment correction factor.

### Claim 2 (depends on 1)

The method of claim 1, wherein the RTT estimate is calculated as TOA−TOD−CORR_UNC−CORR_ACK−K, wherein TOA is a time of arrival of the acknowledgment packet at the first device, TOD is a time of departure of the unicast packet from the first device, and a K is a constant that embodies processing delays associated with the processor of the second device.

### Claim 3 (depends on 1)

The method of claim 1, further comprising:
selectively substituting the unicast correction factor for the acknowledgment correction factor if the second device does not support symbol boundary timing.

### Claim 4 (depends on 1)

The method of claim 1, wherein determining the acknowledgment correction factor further comprises:
ignoring the acknowledgment correction factor if a percentage of the unicast packets successfully transmitted to the second device is lower than a predetermined percentage.

### Claim 5 (depends on 4)

The method of claim 4, wherein determining the acknowledgment correction factor further comprises:
ignoring the acknowledgment correction factor only if an RSSI value of either the first device or the second device is greater than a predetermined value.

### Claim 6 (depends on 1)

The method of claim 1, wherein determining the acknowledgment correction factor further comprises:
estimating a specific modulation coding schedule (MCS) based upon an RSSI value of the second device.

### Claim 7 (depends on 1)

The method of claim 1, wherein determining the acknowledgment correction factor further comprises:
determining a cyclic shift diversity (CSD) value for the second device; and
subtracting a selected multiple of the determined CSD value from the acknowledgment correction factor.

### Claim 8 (depends on 1)

The method of claim 1, further comprising maintaining channel symmetry between the first and second devices by:
sending a first public action frame from the first device to the second device requesting the second device to commence a distance measurement operation;
entering the second device into a configuration mode in response to the first public action frame;
determining an antenna configuration for the first device;
configuring an antenna of the second device using the antenna configuration determined for the first device;
sending a special unicast packet from the first device to the second device to collect RTT information;
sending a second public action frame from the first device to the second device requesting the second device to complete the distance measurement operation; and
restoring the first device to its original antenna configuration.

### Claim 9

A system for improving accuracy of a round trip time (RTT) estimate between a first device and a second device, comprising:
means for transmitting a unicast packet from the first device to the second device;
means for determining a unicast correction factor (CORR_UNC) using a processor in the second device, wherein the unicast correction factor is to compensate for multipath effects upon the unicast packet;
means for embedding the unicast correction factor in an acknowledgment packet in the second device;
means for transmitting the acknowledgment packet from the second device to the first device;
means for determining an acknowledgment correction factor (CORR_ACK) using a processor in the first device, wherein the acknowledgment correction factor is to compensate for multipath effects upon the acknowledgment packet; and
means for calculating the RTT estimate in the first device using the unicast correction factor and the acknowledgment correction factor.

### Claim 10 (depends on 9)

The system of claim 9, wherein the RTT estimate is calculated as TOA−TOD−CORR_UNC−CORR_ACK−K, wherein TOA is a time of arrival of the acknowledgment packet at the first device, TOD is a time of departure of the unicast packet from the first device, and a K is a constant that embodies processing delays associated with the processor of the second device.

### Claim 11 (depends on 9)

The system of claim 9, further comprising:
means for selectively substituting the unicast correction factor for the acknowledgment correction factor if the second device does not support symbol boundary timing.

### Claim 12 (depends on 9)

The system of claim 9, wherein the means for determining the acknowledgment correction factor further comprises:
means for ignoring the acknowledgment correction factor if a percentage of the unicast packets successfully transmitted to the second device is lower than a predetermined percentage.

### Claim 13 (depends on 12)

The system of claim 12, wherein the means for determining the acknowledgment correction factor further comprises:
means for ignoring the acknowledgment correction factor only if an RSSI value of either the first device or the second device is greater than a predetermined value.

### Claim 14 (depends on 9)

The system of claim 9, wherein the means for determining the acknowledgment correction factor further comprises:
means for estimating a specific modulation coding schedule (MCS) based upon an RSSI value of the second device.

### Claim 15 (depends on 9)

The system of claim 9, wherein the means for determining the acknowledgment correction factor further comprises:
means for determining a cyclic shift diversity (CSD) value for the second device; and
means for subtracting a selected multiple of the determined CSD value from the acknowledgment correction factor.

### Claim 16

A method for improving accuracy of a round trip time (RTT) estimate between a first device and a second device, the method comprising:
receiving a unicast packet from the first device;
receiving an acknowledgment packet from the second device by the first device;
determining an acknowledgment correction factor (CORR_ACK) using a processor in the first device, wherein the acknowledgment correction factor is to compensate for multipath effects upon the acknowledgment packet, and wherein determining the acknowledgment correction factor further comprises:
determining a cyclic shift diversity (CSD) value for the second device; and
subtracting a selected multiple of the determined CSD value from the acknowledgment correction factor; and
calculating the RTT estimate in the first device using the acknowledgment correction factor.

### Claim 17 (depends on 16)

The method of claim 16, wherein the RTT estimate is calculated as TOA−TOD−2×CORR_ACK−K, wherein TOA is a time of arrival of the acknowledgment packet at the first device, TOD is a time of departure of the unicast packet from the first device, and a K is a constant that embodies processing delays associated with a processor of the second device.

### Claim 18 (depends on 16)

The method of claim 16, wherein determining the acknowledgment correction factor further comprises:
ignoring the acknowledgment correction factor if a percentage of the unicast packets successfully transmitted to the second device is lower than a predetermined percentage.

### Claim 19 (depends on 18)

The method of claim 18, wherein determining the acknowledgment correction factor further comprises:
ignoring the acknowledgment correction factor only if an RSSI value of either the first device or the second device is greater than a predetermined value.
