IP Library Granted Patent US 8,954,571
Granted Patent B2
US 8,954,571 · App. 13/350,497 · Granted Feb 10, 2015

System and method for implementing histogram controlled mobile devices

Inventor: Brian Martin (Moraga, CA)
Assignee: WaveMarket, 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,954,571
App. No.
13/350,497
Granted
Feb 10, 2015
Kind
B2
Abstract

A communication network and software for its implementation that controls a mobile device based on historical user activity is provided. The mobile device communicates with a server and includes a function that is dependent on the user activity. The server senses the user activity over time and produces a histogram of that activity. The rate at which the server attempts to sense the user activity depends on the histogram. An application might change the function depending on the result of detecting the user activity and the rate at which it does so.

Claims (44)

1. A non-transitory computer readable storage medium having encoded instructions that when executed by one or more processors cause a mobile device to:

store a plurality of client states indicating statuses of functional components of the mobile device, wherein each of the plurality of client states corresponds to at least one functional component;

compile a digital histogram of client state activity historical data indicating a client activity over time;

for each of the plurality of client states, store a client digest of the client state of the mobile device;

receive from a server a particular server digest of a plurality of server digests that each correspond to a server state of a plurality of server states that indicate statuses of functional components;

compare the particular server digest with the corresponding client digest;

transmit a state request to the server in response to a difference between the particular server digest and the client digest;

receive from the server a particular server state of said plurality of server states in response to said state request;

enable or disable at least one functional component in response to the particular server state;

store the particular server state of said plurality of server states as the corresponding client state; and

store the particular server digest as the corresponding client digest.

2. The non-transitory computer readable storage medium of claim 1 , wherein the statuses of the functional components of the mobile device comprise an indication of whether a particular functional component is enabled or disabled.

3. The non-transitory computer readable storage medium of claim 1 , wherein the digital histogram influences when a particular functional component is enabled or disabled.

4. The non-transitory computer readable storage medium of claim 1 , wherein the mobile device is configured to store the digital histogram.

5. The non-transitory computer readable storage medium of claim 4 , wherein the digital histogram relates to driving.

6. The non-transitory computer readable storage medium of claim 4 , wherein the digital histogram relates to usage.

7. A method for controlling mobile device functional components, comprising:

storing with a server a plurality of server states associated with a mobile device;

storing with the server a plurality of server digests corresponding to the plurality of server states;

storing with the server a digital representation of a histogram reflecting an activity of the mobile device;

storing within the mobile device a plurality of client states indicating statuses of functional components of the mobile device, wherein each client state corresponds to at least one functional component;

for each client state storing on the mobile device a client digest of the client state;

polling with the server the activity of the mobile device to determine its status at a frequency based on the histogram;

updating with the server the digital representation of the histogram;

receiving with the server a request from an application to modify the status of at least one functional component;

updating at least one of the server states and at least one of the server digests in response to the request from the application to modify the status of at least one functional component;

transmitting from the server the updated server digest to the mobile device;

receiving with the mobile device from the server the updated server digest;

comparing the updated server digest with the corresponding client digest;

transmitting from the mobile device to the server a state request corresponding to a determination of a difference between the updated server digest and the corresponding client digest;

receiving with the server the state request;

transmitting with the server an updated server state to the mobile device;

receiving with the mobile device the updated server state;

changing at least one functional component based on the updated server state;

storing with the mobile device the updated server state as the corresponding client state; and

storing with the mobile device the updated server digest as the corresponding client digest.

8. A method for enabling control of functional components of a mobile device comprising:

providing a server having a computing system on a network;

storing with the server a plurality of server states, at least one histogram representing the frequency of a user activity, and a plurality of server digests respectively corresponding to functional components of the mobile device;

receiving with the server from an application via the network a request to modify the status of at least one functional component of the mobile device based on the histogram;

updating with the server a server state and a server digest corresponding to the at least one functional component;

transmit with the server the updated server digest to the mobile device;

receive at the server a state request corresponding to updated server state from the mobile device; and

transmit the updated server state to the mobile device responsive to the state request.

Assignments (8)
CHANGE OF NAME Recorded Oct 25, 2021
From: LOCATION LABS, INC.
To: LOCATION LABS, LLC.
Reel/Frame 057908/0949 →
CHANGE OF NAME Recorded Oct 25, 2021
From: LOCATION LABS, LLC.
To: SMITH MICRO SOFTWARE, LLC
Reel/Frame 057909/0020 →
RELEASE OF SECURITY INTEREST Recorded Mar 26, 2021
From: CREDIT SUISSE INTERNATIONAL, AS COLLATERAL AGENT
To: LOCATION LABS, LLC (F/K/A LOCATION LABS, INC.)
Reel/Frame 055742/0932 →
SECURITY INTEREST Recorded Jan 27, 2017
From: LOCATION LABS, INC.
To: CREDIT SUISSE INTERNATIONAL, AS COLLATERAL AGENT
Reel/Frame 041522/0972 →
RELEASE OF SECURITY INTEREST Recorded Oct 3, 2016
From: HSBC BANK USA, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: LOCATION LABS, INC.; AVG NETHERLANDS B.V.
Reel/Frame 040205/0406 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 5, 2015
From: WAVEMARKET, INC.
To: LOCATION LABS, INC.
Reel/Frame 036754/0685 →
SECURITY INTEREST Recorded Oct 16, 2014
From: AVG NETHERLANDS B.V.; LOCATION LABS, INC.
To: HSBC BANK USA, N.A.
Reel/Frame 034012/0721 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 3, 2012
From: MARTIN, BRIAN
To: WAVEMARKET, INC.
Reel/Frame 027652/0502 →
Continuity (1)
Related Publication 20130185411A1 · Jul 18, 2013