IP Library Granted Patent US 9,955,499
Granted Patent B2
US 9,955,499 · App. 14/954,722 · Granted Apr 24, 2018

Bulk fine timing measurement message scheduling

Inventors: Fuad Mousse Abinader, Jr. (Manaus, BR); Eduardo Abinader (Manaus, BR)
Assignee: Microsoft Technology Licensing, LLC
H04W72/1289G01S5/0072G01S5/0226G01S5/0289H04L43/0864H04L47/283H04W64/00
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 9,955,499
App. No.
14/954,722
Granted
Apr 24, 2018
Kind
B2
Abstract

Examples disclosed herein relate to the scheduling and transmission of timing measurements between mobile computing devices in an area to determine the devices' locations. A bulk fine timing measurement (BFTM) allocation message is generated by a scheduling mobile computing device that identifies other mobile computing devices in the area. The BFTM allocation message generated by the scheduling mobile computing device indicates a time of delivery (TOD), a scheduling order for the identified mobile computing devices, and a contention-free period for the mobile computing devices to transmit the timing measurement messages. The mobile computing devices generate BFTM timing message, which include times of arrival (TOAs) or propagation timing estimates, associated with message from other devices. The scheduling order indicates a sequence of transmissions (e.g., a forward and reverse sequence) in which the responding mobile computing devices are to transmit the BFTM timing messages, which are used in location-detection services.

Claims (37)

1. A mobile computing device, comprising:

memory storing device identifiers of one or more responding mobile computing devices; and

a processor configured to execute the instructions to:

determine a scheduling order for the one or more responding mobile computing devices to transmit bulk fine timing measurement (BFTM) timing messages, wherein the scheduling order comprises a forward sequence and a reverse sequence for the one or more responding mobile computing devices to transmit the BFTM timing messages,

generate a BFTM allocation message that includes the scheduling order, and

transmit the BFTM allocation message that includes the scheduling order to the one or more responding mobile computing devices for controlling the transmission of the BFTM timing messages.

2. The mobile computing device of claim 1 , wherein the processor is further configured to include a first BFTM dialog token in the BFTM timing message, the BFTM dialog token indicating a BFTM sequence.

3. The mobile computing device of claim 2 , further comprising a transceiver receiving a second BFTM allocation message from a second mobile computing device, the second BFTM allocation message comprising a second BFTM dialog token that is different from the first BFTM dialog token and indicates a first set of BFTM transactions differing from a second set of BFTM transactions associated with the BFTM allocation message.

4. The mobile computing device of claim 1 , wherein the scheduling order comprises a first sequence of the one or more responding computing devices.

5. The mobile computing device of claim 4 , wherein the scheduling order comprises a second sequence of the one or more responding computing devices, wherein the second sequence is a reverse order of at least two of the one or more responding computing devices from the first sequence.

6. The mobile computing device of claim 1 , wherein the reverse sequence schedules the one or more responding mobile computing devices to respectively transmit the one or more BFTM timing messages in a reverse order relative to the forward sequence of the one or more responding computing devices.

7. The mobile computing device of claim 6 , wherein the one or more BFTM timing messages include times of arrival of the BFTM allocation message or at least one of the one or more BFTM timing messages received by another of the one or more mobile responding mobile computing devices.

8. The mobile computing device of claim 6 , wherein the one or more BFTM timing messages include times of departure of the BFTM allocation message or at least one of the one or more BFTM timing messages received by another of the one or more mobile responding mobile computing devices.

9. The mobile computing device of claim 6 , wherein the one or more BFTM timing messages include propagation timing estimates of at least one of the one or more BFTM timing messages received by another of the one or more mobile responding mobile computing devices.

10. The mobile computing device of claim 1 , wherein the scheduling order is indicated in the BFTM allocation message through an ordered sequence of one or more device identifiers in the BFTM allocation message.

11. The mobile computing device of claim 10 , wherein the one or more device identifiers comprise media access control (MAC) addresses.

12. The mobile computing device of claim 10 , wherein the one or more device identifiers comprise Internet Protocol (IP) addresses.

13. The mobile computing device of claim 10 , wherein the one or more device identifiers comprise at least one member of a group comprising a unique device identifier (UDID), a universally unique identifier (UUID), a user identifier (user ID), and an ID for advertisers (IDFA).

14. The mobile computing device of claim 11 , wherein the processor is further configured to store timing or propagation parameters in a received fine timing measurement (FTM) message from at least one of the one or more responding mobile computing devices.

15. A method, comprising:

identifying a set of responding mobile computing devices in an area;

generating, at a scheduling mobile computing device, a bulk fine timing measurement (BFTM) allocation message comprising a scheduling order specifying a sequencing order for when the responding mobile computing devices are to transmit BFTM timing messages, wherein the scheduling order comprises a forward sequence and a reverse sequence for the mobile computing devices to transmit the BFTM timing messages; and

transmitting the BFTM allocation message to the mobile computing devices.

16. The method of claim 15 , further comprising:

receiving the BFTM timing messages from the responding mobile computing devices according to the scheduling order; and

determining propagation timing estimates between the scheduling mobile computing device and the responding mobile computing device based on the timing parameters in the BFTM timing messages.

17. The method of claim 15 , wherein at least one of the BFTM timing messages comprises timing parameters between two of the responding mobile computing devices.

18. One or more computer-storage memory embodied with machine-executable instructions for generating and transmitting bulk fine timing (BFTM) timing messages for use in locating mobile computing devices in an area in accordance with a scheduling order, the memory comprising:

receiving, at a responding mobile computing device, the scheduling order designating a first time for transmitting a first BFTM timing message and a second time for transmitting a second BFTM timing message, wherein the first time is scheduled to occur during a forward sequence of transmissions of a set of responding mobile computing devices and the second time is scheduled to occur during a reverse sequence of transmissions, relative to the forward sequence, of the responding mobile computing devices;

transmitting the first BFTM timing message at the first time; and

transmitting the second BFTM timing message at the second time.

19. The memory of claim 18 , further comprising:

receiving a first set of other BFTM timing messages from the responding mobile computing devices during the forward sequence comprising first timing parameters of the other responding mobile computing devices transmitted during the forward sequence; and

including the first set of timing parameters first timing parameters in the first BFTM timing message transmitted at the first time.

20. The memory of claim 19 , further comprising:

receiving a second set of other BFTM timing messages from the responding mobile computing devices during the reverse sequence comprising second timing parameters of the other responding mobile computing devices transmitted during the reverse sequence; and

including the second set of timing parameters first timing parameters in the second BFTM timing message transmitted at the second time.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 30, 2015
From: ABINADER, FUAD MOUSSE, JR.; ABINADER, EDUARDO
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 037170/0709 →
Continuity (3)
Continuation In Part 14949777 · Nov 23, 2015
Continuation In Part 14922854 · Oct 26, 2015
Related Publication 20170118769A1 · Apr 27, 2017