IP Library Granted Patent US 8,712,724
Granted Patent B2
US 8,712,724 · App. 13/959,719 · Granted Apr 29, 2014

Calendar integration methods and systems for presentation of events having combined activity and location information

Inventors: Shelten Gee Jao Yuen (Berkeley, CA); James Park (Berkeley, CA); Hans Christiansen Lee (Carmel, CA)
Assignee: Fitbit, Inc.
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 8,712,724
App. No.
13/959,719
Granted
Apr 29, 2014
Kind
B2
Abstract

A method includes receiving geo-location data collected over time period. The geo-location data is associated with a monitoring device. The method further includes receiving motion tracking data of the monitoring device. The motion tracking data is collected over time period. The method includes identifying one or more activities. The activities are identified based on inference rules that identify certain activities to have occurred when at least part of the motion tracking data is correlated to the received geo-location data. The method further includes defining a metric for one or more of the identified activities. The metric is associated to a calendar date. The method includes sending the metric to a calendar application with integration instructions. The integration instructions define the calendar date to which the metric will be added.

Claims (140)

1. A method comprising:

receiving geo-location data collected over a period of time, the geo-location data associated with a monitoring device that is configured to be used by a user;

receiving motion tracking data of the monitoring device, the motion tracking data collected over the period of time;

identifying one or more activities for the period of time, the activities being identified based on inference rules that identify certain activities to have occurred when at least part of the motion tracking data is correlated to the received geo-location data;

defining a metric for one or more of the identified activities, the metric being associated to a calendar date; and

sending the metric to a calendar application with integration instructions, the integration instructions defining the calendar date to which the metric will be added, wherein the method is executed by a processor,

wherein the metric includes a number of steps taken during the period of time, or a number of stairs climbed during the period of time, or a number of stairs descended during the time period, or an amount of calories burned during the time period, or a wake-up time of the user, or a bed time of the user, or an amount of time of performing one of the activities, or an amount of time of performing one of the activities at a location, or a combination thereof.

2. The method of claim 1 , wherein the motion tracking data includes data identifying one or more positions of the monitoring device when worn by the user.

3. The method of claim 1 , wherein the inference rules associate a speed between two geo-locations as corresponding to an activity and a motion between two positions as corresponding to an activity.

4. The method of claim 1 , wherein at least part of the motion tracking data is correlated to the received geo-location when the geo-location is received at a time the user is performing a motion, the motion used to generate the motion tracking data, wherein the inference rules are used to determine whether the received geo-location identifies a location that is inconsistent with an activity identified using the received motion tracking data.

5. A method comprising:

receiving geo-location data collected over a period of time, the geo-location data associated with a monitoring device that is configured to be used by a user;

receiving motion tracking data of the monitoring device, the motion tracking data collected over the period of time;

identifying one or more activities for the period of time, the activities being identified based on inference rules that identify certain activities to have occurred when at least part of the motion tracking data is correlated to the received geo-location data;

defining a metric for one or more of the identified activities, the metric being associated to a calendar date; and

sending the metric to a calendar application with integration instructions, the integration instructions defining the calendar date to which the metric will be added,

wherein the calendar application is an application executed on a cloud or an application executed on a computing device,

wherein the method is executed by a processor.

6. A method comprising:

receiving geo-location data collected over a period of time, the geo-location data associated with a monitoring device that is configured to be used by a user;

receiving motion tracking data of the monitoring device, the motion tracking data collected over the period of time;

identifying one or more activities for the period of time, the activities being identified based on inference rules that identify certain activities to have occurred when at least part of the motion tracking data is correlated to the received geo-location data;

defining a metric for one or more of the identified activities, the metric being associated to a calendar date; and

sending the metric to a calendar application with integration instructions, the integration instructions defining the calendar date to which the metric will be added,

wherein the integration instructions include format data for presenting the metric on a calendar when rendered by the calendar application, wherein the integration instructions include instructions regarding a location of the metrics on the calendar and regarding the format data,

wherein the method is executed by a processor.

7. A method comprising:

receiving geo-location data collected over a period of time, the geo-location data associated with a monitoring device that is configured to be used by a user;

receiving motion tracking data of the monitoring device, the motion tracking data collected over the period of time;

identifying one or more activities for the period of time, the activities being identified based on inference rules that identify certain activities to have occurred when at least part of the motion tracking data is correlated to the received geo-location data;

defining a metric for one or more of the identified activities, the metric being associated to a calendar date; and

sending the metric to a calendar application with integration instructions, the integration instructions defining the calendar date to which the metric will be added,

wherein the integration instructions include format data for presenting the metric on a calendar when rendered by the calendar application, wherein the format data includes a size of the metric, or a shape of the metric, or a color of the metric, or a shade of the metric, or a texture of the metric, or a combination thereof,

wherein the method is executed by a processor.

8. A method comprising:

obtaining one or more geo-locations of a monitoring device when used by a user;

determining one or more spatial positions of the monitoring device;

determining one or more times corresponding to the spatial positions and the geo-locations;

determining activity data based on the times, the geo-locations, and the spatial positions, the activity data including one or more activity levels and one or more classes of activities detected by the monitoring device;

determining one or more locations of the monitoring device based on the times, the geo-locations, and the spatial positions;

determining a metric and a description summarizing the metric, the metric associated with the activities performed at the locations based on the activity data and the times;

displaying a calendar on a screen associated with the monitoring device, the calendar having one or more calendar dates that are populated with the metric and the description; and

generating an award based on a statistical metric, the award provided to a user account of the user over a time horizon.

9. The method of claim 8 , wherein the metric is determined over multiple time periods of performance of the activities at the locations.

10. The method of claim 9 , further comprising determining the statistical metric of the activities performed at the locations over the time horizon.

11. The method of claim 10 , further comprising generating a description of the statistical metric.

12. The method of claim 8 , further comprising displaying a group of event data in relation to the calendar, the event data including the activity data, one or more identifiers of the locations, and one or more identifiers of the activities.

13. A method comprising:

obtaining one or more geo-locations of a monitoring device when used by a user;

determining one or more spatial positions of the monitoring device;

determining one or more times corresponding to the spatial positions and the geo-locations;

determining activity data based on the times, the geo-locations, and the spatial positions, the activity data including one or more activity levels and one or more classes of activities detected by the monitoring device;

determining one or more locations of the monitoring device based on the times, the geo-locations, and the spatial positions;

determining a metric and a description summarizing the metric, the metric associated with the activities performed at the locations based on the activity data and the times;

displaying a calendar on a screen associated with the monitoring device, the calendar having one or more calendar dates that are populated with the metric and the description; and

generating an award based on the metric, the award provided to a user account of the user

wherein the metric is determined over multiple time periods of performance of the activities at the locations.

14. A method comprising:

obtaining one or more geo-locations of a monitoring device when used by a user;

determining one or more spatial positions of the monitoring device;

determining one or more times corresponding to the spatial positions and the geo-locations;

determining activity data based on the times, the geo-locations, and the spatial positions, the activity data including one or more activity levels and one or more classes of activities detected by the monitoring device;

determining one or more locations of the monitoring device based on the times, the geo-locations, and the spatial positions;

determining a metric and a description summarizing the metric, the metric associated with the activities performed at the locations based on the activity data and the times;

displaying a calendar on a screen associated with the monitoring device, the calendar having one or more calendar dates that are populated with the metric and the description; and

displaying a group of event data in relation to the calendar, the event data including the activity data, one or more identifiers of the locations, and one or more identifiers of the activities; and

overlaying a map on the event data.

15. A method comprising:

obtaining one or more geo-locations of a monitoring device when used by a user;

determining one or more spatial positions of the monitoring device;

determining one or more times corresponding to the spatial positions and the geo-locations;

determining activity data based on the times, the geo-locations, and the spatial positions, the activity data including one or more activity levels and one or more classes of activities detected by the monitoring device;

determining one or more locations of the monitoring device based on the times, the geo-locations, and the spatial positions;

determining a metric and a description summarizing the metric, the metric associated with the activities performed at the locations based on the activity data and the times; and

displaying a calendar on a screen associated with the monitoring device, the calendar having one or more calendar dates that are populated with the metric and the description,

displaying a group of event data in relation to the calendar, the event data including the activity data, one or more identifiers of the locations, and one or more identifiers of the activities; and

overlaying a map on the event data

wherein the map includes a route recorded using the monitoring device during performance of the activities.

16. A method comprising:

obtaining one or more geo-locations of a monitoring device when used by a user;

determining one or more spatial positions of the monitoring device;

determining one or more times corresponding to the spatial positions and the geo-locations;

determining activity data based on the times, the geo-locations, and the spatial positions, the activity data including one or more activity levels and one or more classes of activities detected by the monitoring device;

determining one or more locations of the monitoring device based on the times, the geo-locations, and the spatial positions;

determining a metric and a description summarizing the metric, the metric associated with the activities performed at the locations based on the activity data and the times; and

displaying a calendar on a screen associated with the monitoring device, the calendar having one or more calendar dates that are populated with the metric and the description,

displaying a group of event data in relation to the calendar, the event data including the activity data, one or more identifiers of the locations, and one or more identifiers of the activities; and

overlaying a map on the event data

wherein the map is of a different dimension than that of the activity data.

17. A method comprising;

obtaining one or more geo-locations of a monitoring device when used by a user;

determining one or more spatial positions of the monitoring device;

determining one or more times corresponding to the spatial positions and the geo-locations;

determining activity data based on the times, the geo-locations, and the spatial positions, the activity data including one or more activity levels and one or more classes of activities detected by the monitoring device;

determining one or more locations of the monitoring device based on the times, the geo-locations, and the spatial positions;

determining a metric and a description summarizing the metric, the metric associated with the activities performed at the locations based on the activity data and the times; and

displaying a calendar on a screen associated with the monitoring device, the calendar having one or more calendar dates that are populated with the metric and the description,

displaying a group of event data in relation to the calendar, the event data including the activity data, one or more identifiers of the locations, and one or more identifiers of the activities; and

receiving a selection of one of the calendar dates, wherein displaying the group of event data includes displaying event data from the group, the event data displayed from the group associated with the calendar date upon receiving the selection.

18. A method comprising:

obtaining one or more geo-locations of a monitoring device when used by a user;

determining one or more spatial positions of the monitoring device;

determining one or more times corresponding to the spatial positions and the geo-locations;

determining activity data based on the times, the geo-locations, and the spatial positions, the activity data including one or more activity levels and one or more classes of activities detected by the monitoring device;

determining one or more locations of the monitoring device based on the times, the geo-locations, and the spatial positions;

determining a metric and a description summarizing the metric, the metric associated with the activities performed at the locations based on the activity data and the times;

displaying a calendar on a screen associated with the monitoring device, the calendar having one or more calendar dates that are populated with the metric and the description;

receiving a selection of one of the activity levels from the user; and

centering a map on one of the locations for which the activity level is selected.

19. A method comprising:

receiving one or more geo-locations of a monitoring device, the monitoring device usable by a user;

receiving one or more spatial positions of the monitoring device;

receiving one or more times corresponding to the spatial positions and the geo-locations;

determining activity data based on the times, the geo-locations, and the spatial positions, the activity data including one or more activity levels and one or more classes of activities detected by the monitoring device;

determining one or more locations of the monitoring device based on the times, the geo-locations, and the spatial positions;

determining a metric associated with the activities performed at the locations based on the activity data and the times;

sending the metric to a calendar, the metric being added to a calendar date of the calendar, such that display of the calendar on a screen includes the metric;

determining a statistical metric of the activities performed at the locations over a time horizon; and

generating a description of the statistical metric.

20. The method of claim 19 , wherein the metric is determined over multiple time periods of performance of the activities at the locations.

21. A method comprising:

receiving one or more geo-locations of a monitoring device, the monitoring device usable by a user;

receiving one or more spatial positions of the monitoring device;

receiving one or more times corresponding to the spatial positions and the geo-locations;

determining activity data based on the times, the geo-locations, and the spatial positions, the activity data including one or more activity levels and one or more classes of activities detected by the monitoring device;

determining one or more locations of the monitoring device based on the times, the geo-locations, and the spatial positions;

determining a metric associated with the activities performed at the locations based on the activity data and the times;

sending the metric to a calendar, the metric being added to a calendar date of the calendar, such that display of the calendar on a screen includes the metric;

determining a statistical metric of the activities performed at the locations over a time horizon; and

generating an award based on the statistical metric, the award provided to a user account of the user over the time horizon.

22. A method comprising:

receiving one or more geo-locations of a monitoring device, the monitoring device usable by a user;

receiving one or more spatial positions of the monitoring device;

receiving one or more times corresponding to the spatial positions and the geo-locations;

determining activity data based on the times, the geo-locations, and the spatial positions, the activity data including one or more activity levels and one or more classes of activities detected by the monitoring device;

determining one or more locations of the monitoring device based on the times, the geo-locations, and the spatial positions;

determining a metric associated with the activities performed at the locations based on the activity data and the times;

sending the metric to a calendar, the metric being added to a calendar date of the calendar, such that display of the calendar on a screen includes the metric; and

generating an award based on the metric, the award provided to a user account of the user

wherein the metric is determined over multiple time periods of performance of the activities at the locations.

Assignments (5)
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Dec 15, 2015
From: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
To: FITSTAR, INC.; FITBIT, INC.
Reel/Frame 037300/0497 →
RELEASE OF SECURITY INTEREST IN PATENTS Recorded Dec 11, 2015
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: FITSTAR, INC.; FITBIT, INC.
Reel/Frame 037269/0076 →
SECURITY INTEREST Recorded Aug 15, 2014
From: FITBIT, INC.
To: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
Reel/Frame 033546/0670 →
SECURITY INTEREST Recorded Aug 13, 2014
From: FITBIT, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 033532/0027 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 7, 2013
From: YUEN, SHELTEN GEE JAO; PARK, JAMES; LEE, HANS CHRISTIANSEN
To: FITBIT, INC.
Reel/Frame 030961/0080 →
Continuity (15)
Continuation In Part 13693334 · Dec 4, 2012
Division 13667229 · Nov 2, 2012
Division 13469027 · May 10, 2012
Division 13246843 · Sep 27, 2011
Division 13156304 · Jun 8, 2011
Division 13959719
Continuation In Part 13759485 · Feb 5, 2013
Division 13667229 · Nov 2, 2012
Division 13469027 · May 10, 2012
Division 13246843 · Sep 27, 2011
Division 13156304 · Jun 8, 2011
Provisional Application 61680230 · Aug 6, 2012
Provisional Application 61388595 · Sep 30, 2010
Provisional Application 61390811 · Oct 7, 2010
Related Publication 20130325399A1 · Dec 5, 2013