# US 10,502,571 B2 · Systems and methods for determining a route traversed by a portable device

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

- Number: US 10,502,571 B2
- Document ID: US10502571B2
- Status: Granted
- Kind: B2
- Application number: 14/710,511
- Filed: 2015-05-12
- Published: 2016-11-17
- Granted: 2019-12-10
- Earliest claimed: 2015-05-12
- Assignees: InvenSense, Inc.
- Applicants: Invensense Incorporated
- Inventors: Ardalan Heshmati; Rahul Bakshi
- Web page: https://patentgrep.com/patent/US10502571B2

## CPC

- G01C 21/188: {for accumulated errors, e.g. by coupling inertial systems with absolute positioning systems}
- G01B 21/00: Measuring arrangements or details thereof, where the measuring technique is not covered by the other groups of this subclass, unspecified or not relevant
- G01C 21/1654: {with electromagnetic compass}
- G01C 21/206: {specially adapted for indoor navigation}
- G01C: MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY (measuring liquid level G01F; radio navigation, determining distance or velocity by use of propagation effects, e.g. Doppler effects, propagation time, of radio waves, analogous arrangements using other waves G01S)
- G01B: MEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS

## Abstract

Systems and methods are disclosed for determining location information for a portable device by identifying interactions indicating proximity between the user and a plurality of items. Each item may be associated with a known location to establish anchor points such that a route traversed by the portable device may be generated from the established anchor points and motion sensor data output by the portable device.

## Claims

### Claim 1

A method for determining location information for a portable device associated with a user comprising:
traversing a route with the portable device over a first period of time;
obtaining motion sensor data from the portable device for the first period of time;
establishing a plurality of anchor points at a time subsequent to the first period of time, wherein the anchor points are derived from point of sale information by associating known locations with products purchased by the user and wherein the anchor points and the portable device do not exchange signals; and
determining location information for the route traversed by the portable device based at least in part on the established anchor points and the motion sensor data.

### Claim 2 (depends on 1)

The method of claim 1, wherein at least one additional anchor point is established based at least in part on the user capturing an image of an item using an optical sensor of the portable device.

### Claim 3 (depends on 1)

The method of claim 1, wherein at least one additional anchor point is established based at least in part on an intended purchase of the user.

### Claim 4 (depends on 1)

The method of claim 1, wherein known locations are associated with products purchased by the user based at least in a part on a database of item locations.

### Claim 5 (depends on 1)

The method of claim 1, further comprising determining a relative timing sequence for at least two of the anchor points.

### Claim 6 (depends on 5)

The method of claim 5, wherein the relative timing sequence is based at least in part on a purchase time.

### Claim 7 (depends on 1)

The method of claim 1, further comprising establishing at least one additional anchor point contemporaneously.

### Claim 8 (depends on 7)

The method of claim 7, further comprising updating a navigation solution for the portable device based at least in part on the contemporaneously established anchor point.

### Claim 9 (depends on 1)

The method of claim 1, wherein location information for the route traversed by the portable device is determined based at least in part on a dead reckoning technique.

### Claim 10 (depends on 1)

The method of claim 1, wherein location information for the route traversed by the portable device is determined based at least in part on map matching.

### Claim 11 (depends on 1)

The method of claim 1, further comprising obtaining at least one source of absolute location information wherein the determined location information incorporates the absolute location information.

### Claim 12 (depends on 1)

The method of claim 1, further comprising deriving map information based at least in part on the determined location information.

### Claim 13 (depends on 1)

The method of claim 1, further comprising aggregating determined location information for multiple routes for a venue and deriving map information.

### Claim 14 (depends on 1)

The method of claim 1, further comprising aggregating determined location information for multiple routes for a venue and updating location information for at least one of the anchor points.

### Claim 15 (depends on 1)

The method of claim 1, further comprising excluding a potential anchor point from the determined location information.

### Claim 16 (depends on 1)

The method of claim 1, wherein at least one additional anchor point provides absolute timing information.

### Claim 17 (depends on 1)

The method of claim 1, further comprising:
characterizing a pattern of sensor data with the portable device at a first point in time;
determining a location of the portable device at the first point in time along the route; and
associating the sensor data pattern with the determined location.

### Claim 18 (depends on 17)

The method of claim 17, wherein determining the location of the portable device at the first point in time along the route is determined in reference to timing information associated with least one anchor point.

### Claim 19 (depends on 17)

The method of claim 17, further comprising aggregating multiple sensor data patterns and associated determined locations.

### Claim 20 (depends on 19)

The method of claim 19, wherein the multiple sensor data patterns are aggregated from a plurality of portable devices.

### Claim 21 (depends on 20)

The method of claim 20, further comprising:
building a database of locations corresponding to the aggregated multiple sensor data patterns;
detecting a sensor data pattern with a same or different portable device; and
correlating the detected sensor data pattern with a sensor data pattern in the database to determine location information for the same or different portable device.

### Claim 22 (depends on 1)

The method of claim 1, wherein user analytics are derived based at least in part on the determined location information.

### Claim 23 (depends on 22)

The method of claim 22, wherein user analytics are aggregated across at least one of different venues, different time periods and user demographics.

### Claim 24 (depends on 22)

The method of claim 22, wherein user analytics are aggregated for a single user across multiple visits to a single venue.

### Claim 25 (depends on 22)

The method of claim 22, wherein user analytics are aggregated for a single user across visits to multiple venues.

### Claim 26 (depends on 22)

The method of claim 22, wherein user analytics comprise a dwell time associated with one of the anchor points.

### Claim 27 (depends on 22)

The method of claim 22, wherein user analytics comprise correlating a dwell time with a first location along the route to assess interest in an item known to be at the first location.

### Claim 28

A portable device associated with a user comprising:
a motion sensor configured to output motion sensor data corresponding to a route traversed with the portable device over a first period of time;
a communications module for receiving point of sale information at a time subsequent to the first period of time; and
a route generator configured to:
establish a plurality of anchor points, wherein the anchor points are derived from the point of sale information by associating known locations with products purchased by the user and wherein the anchor points and the portable device do not exchange signals; and
determine location information for the route traversed by the portable device based at least in part on data output by the motion sensor and the established anchor points.

### Claim 29

A system for determining location information for a portable device associated with a user comprising:
the portable device having a motion sensor configured to output motion sensor data corresponding to a route traversed with the portable device over a first period of time;
a database of known locations for a plurality of products; and
a route generator, wherein the route generator is configured to:
establish a plurality of anchor points at a time subsequent to the first period of time, wherein the anchor points are derived from point of sale information by associating known locations from the database with products purchased by the user and wherein the anchor points and the portable device do not exchange signals; and
determine location information for the route traversed by the portable device based at least in part on the established anchor points and data from the motion sensor of the portable device.
