IP Library Granted Patent US 10,587,414
Granted Patent B2
US 10,587,414 · App. 15/632,188 · Granted Mar 10, 2020

Multi-broadcast beacon signals

Inventors: Ryan Preston Reed (Issaquah, WA); Casey Roger Graika (Bellevue, CA)
Assignee: FOOTMARKS, INC.
H04L9/3236H04L9/0643H04L63/0464H04L63/126H04L69/22H04W4/06H04W4/80H04W12/02H04W12/10H04W12/12H04W40/244H04W48/12H04L2209/80
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,587,414
App. No.
15/632,188
Granted
Mar 10, 2020
Kind
B2
Abstract

Disclosed herein are techniques and systems for transmitting a multi-broadcast signal from a wireless broadcasting device (or beacon) as part of a beacon recognition process. Specifically, the multi-broadcast signal may be in the form of multiple packets that are broadcast from the beacon within a recognition time period. A process may include creating a first packet having a first identifier (ID) and a randomly generated value, broadcasting the first packet from the beacon, generating a second ID based at least in part on the randomly generated value included in the first packet, and broadcasting, within a period of time from the broadcast of the first packet, a second packet having the second ID and a device ID that uniquely identifies the beacon. A mobile device in proximity to the beacon may include logic to detect and interpret a multi-broadcast signal from the beacon.

Claims (56)

1. A computer-implemented method to be performed by a mobile device configured to scan for packets that are broadcasted by a wireless broadcasting device that is in proximity of the mobile device, the method comprising:

receiving, by the mobile device, a first packet having first identifier (ID);

extracting, by the mobile device, a randomly generated value from the first packet, wherein the extracted randomly generated value includes a two-byte random major value and a two-byte random minor value;

hashing, by the mobile device, the extracted randomly generated value using a hashing algorithm to determine a second, different ID, wherein the hashing comprises:

repeating the extracted randomly generated value a predetermined number of times to obtain a resultant value; and

encrypting the resultant value using a symmetric key to determine the second ID;

receiving, by the mobile device, a second packet having the second ID and a device ID that is different from the second ID; and

extracting, by the mobile device, the device ID from the second packet, the device ID uniquely identifying the wireless broadcasting device that broadcasted the first packet and the second packet.

2. The method of claim 1 , further comprising utilizing the extracted device ID to associate context or metadata with the wireless broadcasting device.

3. The method of claim 1 , further comprising transmitting a write command to update a characteristic of the wireless broadcasting device.

4. The method of claim 3 , further comprising:

creating a hash of the characteristic; and

including the hash of the characteristic in the transmitted write command.

5. The method of claim 1 , further comprising, prior to the receiving of the first packet, scanning for the first ID using a same wireless communication protocol as the wireless broadcasting device.

6. The method of claim 1 , further comprising, prior to the extracting of the randomly generated value, identifying the randomly generated value in a protocol data unit (PDU) payload of the first packet.

7. The method of claim 1 , wherein:

the second ID is a random ServiceID; and

the device ID is a media access control (MAC) address of the wireless broadcasting device.

8. A mobile device comprising:

a processor; and

memory storing computer-executable instructions that, when executed by the processor, cause the mobile device to:

receive, from a wireless broadcasting device, a first packet having first identifier (ID);

extract a randomly generated value from the first packet, wherein the extracted randomly generated value includes a two-byte random major value and a two-byte random minor value;

hash the extracted randomly generated value using a hashing algorithm to determine a second, different ID, wherein the hashing comprises:

repeating the extracted randomly generated value a predetermined number of times to obtain a resultant value; and

encrypting the resultant value using a symmetric key to determine the second ID;

receive, from the wireless broadcasting device, a second packet having the second ID and a device ID that is different from the second ID; and

extract the device ID from the second packet, the device ID uniquely identifying the wireless broadcasting device that broadcasted the first packet and the second packet.

9. The mobile device of claim 8 , the computer-executable instructions, when executed by the processor, further cause the mobile device to utilize the extracted device ID to associate context or metadata with the wireless broadcasting device.

10. The mobile device of claim 8 , the computer-executable instructions, when executed by the processor, further cause the mobile device to transmit a write command to update a characteristic of the wireless broadcasting device.

11. The mobile device of claim 10 , the computer-executable instructions, when executed by the processor, further cause the mobile device to:

create a hash of the characteristic; and

include the hash of the characteristic in the transmitted write command.

12. The mobile device of claim 8 , the computer-executable instructions, when executed by the processor, further cause the mobile device to, prior to receiving the first packet, scan for the first ID using a same wireless communication protocol as the wireless broadcasting device.

13. The mobile device of claim 8 , the computer-executable instructions, when executed by the processor, further cause the mobile device to, prior to extracting the randomly generated value, identify the randomly generated value in a protocol data unit (PDU) payload of the first packet.

14. The mobile device of claim 8 , wherein:

the second ID is a random ServiceID; and

the device ID is a media access control (MAC) address of the wireless broadcasting device.

15. One or more non-transitory computer-readable media storing computer-executable instructions that, when executed by a processor, cause a mobile device to perform acts comprising:

receiving, from a wireless broadcasting device, a first packet having first identifier (ID);

extracting a randomly generated value from the first packet, wherein the extracted randomly generated value includes a two-byte random major value and a two-byte random minor value;

hashing the extracted randomly generated value using a hashing algorithm to determine a second, different ID, wherein the hashing comprises:

repeating the extracted randomly generated value a predetermined number of times to obtain a resultant value; and

encrypting the resultant value using a symmetric key to determine the second ID;

receiving, from the wireless broadcasting device, a second packet having the second ID and a device ID that is different from the second ID; and

extracting the device ID from the second packet, the device ID uniquely identifying the wireless broadcasting device that broadcasted the first packet and the second packet.

16. The one or more non-transitory computer-readable media of claim 15 , the acts further comprising utilizing the extracted device ID to associate context or metadata with the wireless broadcasting device.

17. The one or more non-transitory computer-readable media of claim 15 , the acts further comprising:

transmitting a write command to update a characteristic of the wireless broadcasting device;

creating a hash of the characteristic; and

including the hash of the characteristic in the transmitted write command.

18. The one or more non-transitory computer-readable media of claim 15 , the acts further comprising, prior to the receiving of the first packet, scanning for the first ID using a same wireless communication protocol as the wireless broadcasting device.

19. The one or more non-transitory computer-readable media of claim 15 , the acts further comprising, prior to the extracting of the randomly generated value, identifying the randomly generated value in a protocol data unit (PDU) payload of the first packet.

20. The one or more non-transitory computer-readable media of claim 15 , wherein:

the second ID is a random ServiceID; and

the device ID is a media access control (MAC) address of the wireless broadcasting device.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 23, 2017
From: REED, RYAN PRESTON; GRAIKA, CASEY ROGER
To: FOOTMARKS, INC.
Reel/Frame 042802/0216 →
Continuity (3)
Division 14603270 · Jan 22, 2015
Provisional Application 61931041 · Jan 24, 2014
Related Publication 20170289113A1 · Oct 5, 2017
Cited By (2)
US 12,395,837 US 12,395,838