IP Library Granted Patent US 10,455,534
Granted Patent B2
US 10,455,534 · App. 15/958,319 · Granted Oct 22, 2019

Frequency offset compensation for WiFi ranging

Inventors: Hongyuan Zhang (Fremont, CA); Mao Yu (San Jose, CA); Su Khiong Yong (Santa Clara, CA); Sudhir Srinivasa (Campbell, CA)
Assignee: Marvell World Trade Ltd.
H04W56/004G01S5/06G01S11/02G01S13/767H04W56/002H04W64/003
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,455,534
App. No.
15/958,319
Granted
Oct 22, 2019
Kind
B2
Abstract

Timestamps associated with when transmissions are sent and received between a pair of communication devices are used to determine a distance between the pair of communication devices. The communication devices operate according to a wireless communication protocol, which specifies that a requester of a ranging measurement session is to compensate for a clock frequency offset between the pair of communication device and that a responder is not to compensate for the clock frequency offset. As part of the ranging measurement session, the responder sends feedback to the requester, where the feedback includes timestamps recorded by the responder. The timestamps in the feedback are not compensated for the clock frequency offset by the responder. After receiving the feedback, the requester compensates the timestamps in the feedback for the clock frequency offset before using the timestamps to calculate the distance between the pair of communication devices.

Claims (376)

1. A method, comprising:

participating, by a first communication device, in a plurality of ranging measurement sessions defined by a wireless communication protocol, wherein the wireless communication protocol specifies that a requester of a ranging measurement session is to compensate for a clock frequency offset between the requester and a responder of the ranging measurement session, wherein the wireless communication protocol specifies that the responder of the ranging measurement session is not to compensate for the clock frequency offset, and wherein participating in the plurality of ranging measurement sessions includes:

determining, by the first communication device, respective timestamps corresponding to when ranging measurement transmissions are transmitted by the first communication device based on a first clock frequency of the first communication device, and

determining, by the first communication device, respective timestamps corresponding to when ranging measurement transmissions are received by the first communication device based on the first clock frequency;

when the first communication device has requested a first ranging measurement session with a second communication device,

receiving, by the first communication device, a first feedback message from the second communication device, wherein the first feedback message includes i) a first timestamp corresponding to when the second communication device transmitted a first ranging measurement transmission to the first communication device, and ii) a second timestamp corresponding to when the second communication device received a second ranging measurement transmission from the first communication device, and

generating, at the first communication device, a compensated first timestamp and a compensated second timestamp to compensate for an offset between the first clock frequency of the first communication device and a second clock frequency of the second communication device; and

when the second communication device has requested a second ranging measurement session with the first communication device,

transmitting, by the first communication device, a second feedback message to the second communication device, wherein the second feedback message includes i) a third timestamp corresponding to when the first communication device transmitted a third ranging measurement transmission to the second communication device, and ii) a fourth timestamp corresponding to when the first communication device received a fourth ranging measurement transmission from the second communication device, and wherein the third timestamp and the fourth timestamp in the second feedback message have not been modified to compensate for the offset between the first clock frequency of the first communication device and the second clock frequency of the second communication device.

2. The method of claim 1 , wherein participating in the plurality of ranging measurement sessions comprises:

determining, at the first communication device, a fifth timestamp corresponding to when the first ranging measurement transmission is received at the first communication device based on the first clock frequency; and

determining, at the first communication device, a sixth timestamp corresponding to when the second ranging measurement transmission is transmitted by the first communication device based on the first clock frequency.

3. The method of claim 2 , further comprising:

calculating, at the first communication device, a round trip time using the compensated first timestamp, the compensated second timestamp, the fifth timestamp, and the sixth timestamp.

4. The method of claim 1 , wherein the act of generating comprises:

evaluating a first equation:

[

t

1

(

2

)

=

(

t

1

(

1

)

)

(

1

+

ppm

1

-

2

)

]

for

t

1

(

2

)

;

and

evaluating a second equation:

[

t

2

(

2

)

=

(

t

2

(

1

)

)

(

1

+

ppm

1

-

2

)

]

for

t

2

(

2

)

,

wherein:

t 1 (1) and t 2 (1) represent the first timestamp and the second timestamp, respectively;

ppm 1−2 represents a difference between the first clock frequency and the second clock frequency in parts-per-million; and

t 1 (2) and t 2 (2) represent the compensated first timestamp and the compensated second timestamp, respectively.

5. The method of claim 1 , wherein:

the first ranging measurement transmission includes a fine timing measurement packet; and

the second ranging measurement transmission includes an acknowledgement of the fine timing measurement packet.

6. An apparatus, comprising:

a network interface associated with a first communication device, the network interface device implemented on one or more integrated circuit devices, the network interface including a first clock configured to operate at a first clock frequency, wherein the network interface device is configured to participate in a plurality of ranging measurement sessions defined by a wireless communication protocol, wherein the wireless communication protocol specifies that a requester of a ranging measurement session is to compensate for a clock frequency offset between the requester and a responder of the ranging measurement session, and wherein the wireless communication protocol specifies that the responder of the ranging measurement session is not to compensate for the clock frequency offset;

wherein the network interface is further configured to:

determine, when participating in a plurality of ranging measurement sessions, respective timestamps corresponding to when ranging measurement transmissions are transmitted by the first communication device based on a first clock frequency of the first communication device, and

determine, when participating in the plurality of ranging measurement sessions, respective timestamps corresponding to when ranging measurement transmissions are received by the first communication device based on the first clock frequency, and

when the first communication device has requested a first ranging measurement session with a second communication device, receive a first feedback message from the second communication device, wherein the first feedback message includes i) a first timestamp corresponding to when the second communication device transmitted a first ranging measurement transmission to the first communication device, and ii) a second timestamp corresponding to when the second communication device received a second ranging measurement transmission from the first communication device; and

wherein the apparatus further comprises a clock calculation and compensation unit implemented on the one or more integrated circuit devices, wherein the clock calculation and compensation unit is configured to: when the first communication device has requested the first ranging measurement session with the second communication device, generate a compensated first timestamp and a compensated second timestamp to compensate for an offset between the first clock frequency of the first communication device and the second clock frequency of the second communication device;

wherein the network interface device is further configured to, when the second communication device has requested a second ranging measurement session with the first communication device:

determine, based on the first clock frequency, a third timestamp corresponding to when the first communication device transmitted a third ranging measurement transmission to the second communication device,

determine, based on the first clock frequency, a fourth timestamp corresponding to when the first communication device received a fourth ranging measurement transmission from the second communication device, and

transmit a second feedback message to the second communication device, wherein the second feedback message includes i) the third timestamp, and ii) the fourth timestamp, and wherein the third timestamp and the fourth timestamp in the second feedback message have not been modified to compensate for the offset between the first clock frequency of the first communication device and the second clock frequency of the second communication device.

7. The apparatus of claim 6 , wherein the network interface is further configured to:

determine a fifth timestamp corresponding to when the first ranging measurement transmission is received at the first communication device based on the first clock frequency; and

determine a sixth timestamp corresponding to when the second ranging measurement transmission is transmitted by the first communication device based on the first clock frequency.

8. The method of claim 7 , wherein the network interface is further configured to:

calculate a round trip time using the compensated first timestamp, the compensated second timestamp, the fifth timestamp, and the sixth timestamp.

9. The apparatus of claim 6 , wherein the clock calculation and compensation unit is configured to:

evaluate a first equation:

[

t

1

(

2

)

=

(

t

1

(

1

)

)

(

1

+

ppm

1

-

2

)

]

for

t

1

(

2

)

;

and

evaluate a second equation:

[

t

2

(

2

)

=

(

t

2

(

1

)

)

(

1

+

ppm

1

-

2

)

]

for

t

2

(

2

)

,

wherein:

t 1 (1) and t 2 (1) represent the first timestamp and the second timestamp, respectively,

ppm 1−2 represents a difference between the first clock frequency and the second clock frequency in parts-per-million, and

t 1 (2) and t 2 (2) represent the compensated first timestamp and the compensated second timestamp, respectively.

10. The apparatus of claim 6 , wherein:

the first ranging measurement transmission includes a fine timing measurement packet; and

the second ranging measurement transmission includes an acknowledgement of the fine timing measurement packet.

11. A method, comprising:

participating, by a first communication device, in a plurality of ranging measurement sessions defined by a wireless communication protocol, wherein the wireless communication protocol specifies that a requester of a ranging measurement session is to compensate for a clock frequency offset between the requester and a responder of the ranging measurement session, wherein the wireless communication protocol specifies that the responder of the ranging measurement session is not to compensate for the clock frequency offset, and wherein participating in the plurality of ranging measurement sessions includes:

determining, by the first communication device, respective timestamps corresponding to when ranging measurement transmissions are transmitted by the first communication device based on a first clock frequency of the first communication device, and

determining, by the first communication device, respective timestamps corresponding to when ranging measurement transmissions are received by the first communication device based on the first clock frequency;

when the first communication device has requested a first ranging measurement session with a second communication device,

receiving, by the first communication device, a first feedback message from the second communication device, wherein the first feedback message includes i) a first timestamp corresponding to when the second communication device transmitted a first ranging measurement transmission to the first communication device, and ii) a second timestamp corresponding to when the second communication device received a second ranging measurement transmission from the first communication device, and

generating, at the first communication device, a compensated first timestamp and a compensated second timestamp to compensate for an offset between the first clock frequency of the first communication device and a second clock frequency of the second communication device; and

when a third communication device has requested a second ranging measurement session with the first communication device,

transmitting, by the first communication device, a second feedback message to the third communication device, wherein the second feedback message includes i) a third timestamp corresponding to when the first communication device transmitted a third ranging measurement transmission to the third communication device, and ii) a fourth timestamp corresponding to when the first communication device received a fourth ranging measurement transmission from the third communication device, and wherein the third timestamp and the fourth timestamp in the second feedback message have not been modified to compensate for the offset between the first clock frequency of the first communication device and a third clock frequency of the third communication device.

12. The method of claim 11 , wherein participating in the plurality of ranging measurement sessions comprises:

determining, at the first communication device, a fifth timestamp corresponding to when the first ranging measurement transmission is received at the first communication device based on the first clock frequency; and

determining, at the first communication device, a sixth timestamp corresponding to when the second ranging measurement transmission is transmitted by the first communication device based on the first clock frequency.

13. The method of claim 12 , further comprising:

calculating, at the first communication device, a round trip time using the compensated first timestamp, the compensated second timestamp, the fifth timestamp, and the sixth timestamp.

14. The method of claim 11 , wherein the act of generating comprises:

evaluating a first equation:

[

t

1

(

2

)

=

(

t

1

(

1

)

)

(

1

+

ppm

1

-

2

)

]

for

t

1

(

2

)

;

and

evaluating a second equation:

[

t

2

(

2

)

=

(

t

2

(

1

)

)

(

1

+

ppm

1

-

2

)

]

for

t

2

(

2

)

,

wherein:

t 1 (1) and t 2 (1) represent the first timestamp and the second timestamp, respectively;

ppm 1−2 represents a difference between the first clock frequency and the second clock frequency in parts-per-million; and

t 1 (2) and t 2 (2) represent the compensated first timestamp and the compensated second timestamp, respectively.

15. The method of claim 11 , wherein:

the first ranging measurement transmission includes a fine timing measurement packet; and

the second ranging measurement transmission includes an acknowledgement of the fine timing measurement packet.

16. An apparatus, comprising:

a network interface associated with a first communication device, the network interface device implemented on one or more integrated circuit devices, the network interface including a first clock configured to operate at a first clock frequency, wherein the network interface device is configured to participate in a plurality of ranging measurement sessions defined by a wireless communication protocol, wherein the wireless communication protocol specifies that a requester of a ranging measurement session is to compensate for a clock frequency offset between the requester and a responder of the ranging measurement session, and wherein the wireless communication protocol specifies that the responder of the ranging measurement session is not to compensate for the clock frequency offset;

wherein the network interface is further configured to:

determine, when participating in a plurality of ranging measurement sessions, respective timestamps corresponding to when ranging measurement transmissions are transmitted by the first communication device based on a first clock frequency of the first communication device,

determine, when participating in the plurality of ranging measurement sessions, respective timestamps corresponding to when ranging measurement transmissions are received by the first communication device based on the first clock frequency, and

when the first communication device has requested a first ranging measurement session with a second communication device, receive a first feedback message from the second communication device, wherein the first feedback message includes i) a first timestamp corresponding to when the second communication device transmitted a first ranging measurement transmission to the first communication device, and ii) a second timestamp corresponding to when the second communication device received a second ranging measurement transmission from the first communication device;

wherein the apparatus further comprises a clock calculation and compensation unit implemented on the one or more integrated circuit devices, wherein the clock calculation and compensation unit is configured to: when the first communication device has requested the first ranging measurement session with the second communication device, generate a compensated first timestamp and a compensated second timestamp to compensate for an offset between the first clock frequency of the first communication device and the second clock frequency of the second communication device;

wherein the network interface device is further configured to, when a third communication device has requested a second ranging measurement session with the first communication device:

determine, based on the first clock frequency, a third timestamp corresponding to when the first communication device transmitted a third ranging measurement transmission to the third communication device,

determine, based on the first clock frequency, a fourth timestamp corresponding to when the first communication device received a fourth ranging measurement transmission from the third communication device, and

transmit a second feedback message to the third communication device, wherein the second feedback message includes i) the third timestamp, and ii) the fourth timestamp, and wherein the third timestamp and the fourth timestamp in the second feedback message have not been modified to compensate for an offset between the first clock frequency of the first communication device and a third clock frequency of the third communication device.

17. The apparatus of claim 16 , wherein the network interface is further configured to:

determine a fifth timestamp corresponding to when the first ranging measurement transmission is received at the first communication device based on the first clock frequency; and

determine a sixth timestamp corresponding to when the second ranging measurement transmission is transmitted by the first communication device based on the first clock frequency.

18. The method of claim 17 , wherein the network interface is further configured to:

calculate a round trip time using the compensated first timestamp, the compensated second timestamp, the fifth timestamp, and the sixth timestamp.

19. The apparatus of claim 16 , wherein the clock calculation and compensation unit is configured to:

evaluate a first equation:

[

t

1

(

2

)

=

(

t

1

(

1

)

)

(

1

+

ppm

1

-

2

)

]

for

t

1

(

2

)

;

and

evaluate a second equation:

[

t

2

(

2

)

=

(

t

2

(

1

)

)

(

1

+

ppm

1

-

2

)

]

for

t

2

(

2

)

,

wherein:

t 1 (1) and t 2 (1) represent the first timestamp and the second timestamp, respectively,

ppm 1−2 represents a difference between the first clock frequency and the second clock frequency in parts-per-million, and

t 1 (2) and t 2 (2) represent the compensated first timestamp and the compensated second timestamp, respectively.

20. The apparatus of claim 16 , wherein:

the first ranging measurement transmission includes a fine timing measurement packet; and

the second ranging measurement transmission includes an acknowledgement of the fine timing measurement packet.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2020
From: CAVIUM INTERNATIONAL
To: MARVELL ASIA PTE, LTD.
Reel/Frame 053475/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 20, 2020
From: MARVELL INTERNATIONAL LTD.
To: CAVIUM INTERNATIONAL
Reel/Frame 052918/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 29, 2020
From: MARVELL WORLD TRADE LTD.
To: MARVELL INTERNATIONAL LTD.
Reel/Frame 051778/0537 →
Continuity (5)
Continuation 14987264 · Jan 4, 2016
Continuation 14170027 · Jan 31, 2014
Provisional Application 61862650 · Aug 6, 2013
Provisional Application 61759230 · Jan 31, 2013
Related Publication 20180242270A1 · Aug 23, 2018