Tracking device location identification

US11533581B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11533581-B2
Application numberUS-202117379744-A
CountryUS
Kind codeB2
Filing dateJul 19, 2021
Priority dateFeb 17, 2017
Publication dateDec 20, 2022
Grant dateDec 20, 2022

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

In one embodiment, a method includes receiving, by a tracking system server, a data stream comprising events related to a set of devices. The set of devices include tracking devices and mobile devices. Each event contains a location update respectively associated with a tracking device of the set or a mobile device of the set. The method includes programmatically separating, by the tracking system server, the events from the data stream. The method includes batching, for processing by the tracking system server, the separated events into one or more batches. The method includes processing, by the tracking system server, a specific batch of events, of the one or more batches of events, that involves a specific tracking device to estimate a location of the specific tracking device using a location determination algorithm.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: receiving, by a tracking system server, a data stream comprising a plurality of events related to a set of devices, the set of devices comprising tracking devices and mobile devices, each event containing a location update respectively associated with a tracking device of the set or a mobile device of the set; programmatically separating, by the tracking system server, the plurality of events from the data stream; batching, for processing by the tracking system server, the separated plurality of events into one or more batches; and processing, by the tracking system server, a specific batch of events, of the one or more batches of events, that involves a specific tracking device to estimate a location of the specific tracking device using a location determination algorithm. 2. The method of claim 1 , further comprising: assigning a respective weight to each of the location updates, the weight based on one or more factors including at least one of a timestamp of the location update, an accuracy of the location update, or a signal strength of the mobile device of the set associated with the location update at a time corresponding to the timestamp; and processing the batch of events by calculating a weighted average of the location updates. 3. The method of claim 1 , wherein batching the separated plurality of events into one or more batches comprises: programmatically removing information unnecessary for calculating a location of a tracking device from the location updates; programmatically separating one or more tracking device disconnection events from the data stream, each tracking device disconnection event comprising a digital record of a particular tracking device of the set disconnecting from a particular mobile device of the set; and associating and grouping tracking device disconnection events and location updates involving the same devices. 4. The method of claim 3 , wherein programmatically removing information unnecessary for calculating the location of the tracking device from the location updates comprises using a MapReduce operation. 5. The method of claim 1 , further comprising executing the location determination algorithm using a subset of the location updates as input, the subset determined at least partly based on at least one of rejecting location updates outside a predetermined time window of any disconnection event or rejecting location updates not associated with a level of accuracy exceeding a threshold level of accuracy. 6. The method of claim 5 , wherein the subset is limited to include no more than one location update associated with each mobile device of the set, and wherein when multiple location updates associated with a reporting mobile device of the set are available for inclusion in the subset, the method further comprises selecting the no more than one location update associated with the reporting mobile device based on the location update with an associated highest accuracy from among the multiple location updates. 7. The method of claim 5 , wherein the subset is limited to include no more than one location update associated with each mobile device of the set, and wherein when multiple location updates associated with a reporting mobile device of the set are available for inclusion in the subset, the method further comprises selecting the no more than one location update associated with the reporting mobile device based on the location update with a reported location closest in time to a disconnection event associated with the location update from among the multiple location updates. 8. The method of claim 1 , wherein the location determination algorithm comprises at least one of a Delaunay triangulation operation, a greedy triangulation operation, a jump-and-walk triangulation operation, or a kinetic triangulation operation. 9. The method of claim 1 , further comprising displaying the location of the specific tracking device on a display of a particular mobile device of the set. 10. The method of claim 1 , further comprising digitally storing the location of the specific tracking device in memory accessible by the tracking system server. 11. One or more computer-readable non-transitory storage media including instructions that, when executed by one or more processors, are configured to the one or more processors of a tracking system server to perform operations comprising: receiving, by a tracking system server, a data stream comprising a plurality of events related to a set of devices, the set of devices comprising tracking devices and mobile devices, each event containing a location update respectively associated with a tracking device of the set or a mobile device of the set; programmatically separating, by the tracking system server, the plurality of events from the data stream; batching, for processing by the tracking system server, the separated plurality of events into one or more batches; and processing, by the tracking system server, a specific batch of events, of the one or more batches of events, that involves a specific tracking device to estimate a location of the specific tracking device using a location determination algorithm. 12. The one or more computer-readable non-transitory storage media of claim 11 , wherein the instructions are further configured to cause the one or more processors of the tracking system server to perform operations further comprising: assigning a respective weight to each of the location updates, the weight based on one or more factors including at least one of a timestamp of the location update, an accuracy of the location update, or a signal strength of the mobile device of the set associated with the location update at a time corresponding to the timestamp; and processing the batch of events by calculating a weighted average of the location updates. 13. The one or more computer-readable non-transitory storage media of claim 11 , wherein the instructions configured to cause the one or more processors of the tracking system server to batch the plurality of events into one or more batches are further configured to cause the one or more processors to perform operations further comprising: programmatically removing information unnecessary for calculating a location of a tracking device from the location updates; programmatically separating one or more tracking device disconnection events from the data stream, each tracking device disconnection event comprising a digital record of a particular tracking device of the set disconnecting from a particular mobile device of the set; and associating and grouping tracking device disconnection events and location updates involving the same devices. 14. The one or more computer-readable non-transitory storage media of claim 13 , wherein the instructions configured to cause the one or more processors of the tracking system server to programmatically remove information unnecessary for calculating the location of the tracking device from the location updates are further configured to cause the one or more processors to perform operations further comprising using a MapReduce operation. 15. The one or more computer-readable non-transitory storage media of claim 11 , wherein the instructions configured to cause the one or more processors of the tracking system server to estimate the location of the specific tracking device using the location determination algorithm are further configured to cause the one or more processors to perform operations further comprising executing the location determination algorithm using a subset of the location updates as input,

Assignees

Inventors

Classifications

  • Location-based management or tracking services · CPC title

  • System arrangements wherein the object is to detect exact location of child or item using triangulation other than GPS · CPC title

  • Reminder alarms, e.g. anti-loss alarms · CPC title

  • using wireless transmission systems {(G08B25/009 takes precedence)} · CPC title

  • H04W4/02Primary

    Services making use of location information · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11533581B2 cover?
In one embodiment, a method includes receiving, by a tracking system server, a data stream comprising events related to a set of devices. The set of devices include tracking devices and mobile devices. Each event contains a location update respectively associated with a tracking device of the set or a mobile device of the set. The method includes programmatically separating, by the tracking sys…
Who is the assignee on this patent?
Tile Inc
What technology area does this patent fall under?
Primary CPC classification H04W4/02. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Dec 20 2022 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 11 related publications on this page (citations in our corpus or others sharing the same primary CPC).