IP Library Granted Patent US 9,112,985
Granted Patent B2
US 9,112,985 · App. 11/960,407 · Granted Aug 18, 2015

Methods, apparatus and computer program product for altering device functionality

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 9,112,985
App. No.
11/960,407
Granted
Aug 18, 2015
Kind
B2
Abstract

A method, apparatus, system and computer program product are provided which permit the functionality of a device to be adapted or otherwise altered without requiring the device to be completely reprogrammed. In this regard, attributes which at least partially define the functionality of the device may be changed or supplemented in order to correspondingly alter the device functionality which, in turn, at least partially depends upon the attributes stored by the device.

Claims (104)

1. A method, comprising:

storing, in a first device, one or more initial attributes that at least partially define a functionality of the first device;

receiving, at the first device, at least one attribute that modifies the functionality of the first device, the at least one attribute originating from a remote server;

evaluating, at the first device, the at least one attribute;

determining, at the first device, if data is associated with the at least one evaluated attribute;

if data is determined to be associated with the at least one evaluated attribute, storing the determined data in the first device;

storing the at least one attribute in the first device; and

performing, by the first device, one or more functions related to the modified functionality of the first device according to the at least one attribute,

wherein each attribute of the one or more initial attributes and each attribute of the at least one attribute comprises a first field comprising a Universally Unique Identifier (UUID) and a distinct second field comprising a value associated with the UUID,

and wherein receiving the at least one attribute that modifies the functionality of the first device comprises receiving the at least one attribute via short range communications.

2. The method of claim 1 , wherein performing the one or more functions related to the modified functionality of the first device comprises instructing a second device to perform an action.

3. The method of claim 1 , wherein each attribute further comprises a handle for referencing the corresponding attribute.

4. The method of claim 1 , wherein storing the at least one attribute comprises overwriting at least one of the one or more initial attributes with at least one of the at least one attribute.

5. The method of claim 1 , further comprising receiving, at the first device, the one or more initial attributes prior to storing the one or more initial attributes.

6. An apparatus comprising

a memory configured to store attributes and data; and

a controller configured to:

store, in the memory, one or more initial attributes that at least partially define a functionality of the apparatus;

receive at least one attribute that modifies the functionality of the apparatus, the at least one attribute originating from a remote server;

evaluate at the first device, the at least one attribute;

determine if data is associated with the at least one evaluated attribute;

if data is determined to be associated with the at least one evaluated attribute, store the determined data;

store the at least one attribute in the memory; and

perform one or more functions related to the modified functionality of the apparatus according to the at least one attribute,

wherein each attribute of the one or more initial attributes and each attribute of the at least one attribute comprises a first field comprising a Universally Unique Identifier (UUID) and a distinct second field comprising a value associated with the UUID,

and wherein receiving the at least one attribute that modifies the functionality of the apparatus comprises receiving the at least one attribute via short range communications.

7. The apparatus of claim 6 , wherein the controller is further configured to cause the apparatus to perform the one or more functions related to the modified functionality of the apparatus by instructing a separate device to perform an action.

8. The apparatus of claim 6 , wherein each attribute further comprises a handle for referencing the corresponding attribute.

9. The apparatus of claim 6 , wherein the controller is further configured to cause the apparatus to store the at least one attribute by overwriting at least one of the one or more initial attributes with at least one of the at least one attribute.

10. The apparatus of claim 6 , wherein the controller is further configured to cause the apparatus to receive the one or more initial attributes.

11. A computer program product, the computer program product comprising at least one non-transitory computer-readable storage medium having computer-readable program code portions stored therein for execution by a processor in a first device, the computer-readable program code portions comprising:

a first executable portion for causing the first device to store one or more initial attributes that at least partially define a functionality of the first device;

a second executable portion for causing the first device to receive at least one attribute that modifies the functionality of the first device, the at least one attribute originating from a remote server;

a third executable portion for causing the first device to evaluate the at least one attribute; and to determine if data is associated with the at least one evaluated attribute;

a fourth executable portion for causing the first device to store the determined data if data is determined to be associated with the at least one evaluated attribute;

fifth executable portion for causing the first device to store the at least one attribute in the first device; and

sixth executable portion for causing the first device to perform one or more functions related to the modified functionality of the first device according to the at least one attribute,

wherein each attribute of the one or more initial attributes and each attribute of the at least one attribute comprises a first field comprising a Universally Unique Identifier (UUID) and a distinct second field comprising a value associated with the UUID,

and wherein causing the first device to receive the at least one attribute that modifies the functionality of the first device comprises causing the first device to receive the at least one attribute via short range communications.

12. The computer program product of claim 11 , wherein the fourth executable portion is configured to cause the first device to perform the one or more functions related to the modified functionality of the first device by instructing a second device to perform an action.

13. The computer program product of claim 11 , wherein each attribute further comprises a handle for referencing the corresponding attribute.

14. The computer program product of claim 11 , wherein the third executable portion is configured to cause the first device to store the at least one attribute by overwriting at least one of the one or more initial attributes with at least one of the at least one attribute.

15. The computer program product of claim 11 , further comprising a fifth executable portion configured to cause the first device to receive the one or more initial attributes.

16. An apparatus of a first device comprising:

a memory configured to store attributes and data; and

a controller configured to:

receive, at the first device, at least one first attribute that modifies the functionality of the first device, the at least one attribute originating from a remote server;

evaluate, at the first device, the at least one first attribute;

determine, at the first device, if data is associated with the at least one evaluated first attribute;

if data is determined to be associated with the at least one evaluated first attribute, store the determined data in the first device;

store the at least one first attribute in the first device;

perform, by the first device, one or more functions related to the modified functionality of the first device according to the at least one first attribute;

generate, at the first device, one or more initial attributes that at least partially define a functionality of a second device that is remote to the first device;

generate, at the first device, at least one attribute value of the second device to modify the functionality of the second device and data associated with the at least one attribute value; and

send the at least one attribute value to the second device and the data associated with the at least one attribute value that is configured to perform one or more functions related to the modified functionality according to the at least one attribute,

wherein each attribute of the one or more initial attributes and each attribute of the at least one attribute value comprises a first field comprising a Universally Unique Identifier (UUID) and a distinct second field comprising a value associated with the UUID,

and where receiving the at least one first attribute that modifies the functionality of the first device comprises receiving the at least one first attribute via short range communications.

17. The apparatus of claim 16 , wherein each attribute further comprises a handle for referencing the corresponding attribute.

18. The apparatus of claim 16 , wherein the at least one attribute contains data that is associated with at least one of at least one new attribute and at least one of the one or more initial attributes.

19. A method comprising:

receiving, at a first device, at least one first attribute that modifies the functionality of the first device, the at least one first attribute originating from a remote server;

evaluating, at the first device, the at least one first attribute;

determining, at the first device, if data is associated with the at least one evaluated first attribute;

if data is determined to be associated with the at least one evaluated first attribute, storing the determined data in the first device;

storing the at least one first attribute in the first device;

performing, by the first device, one or more functions related to the modified functionality of the first device according to the at least one first attribute,

generating, at the first device, one or more initial attributes that at least partially define a functionality of a second device that is remote to the first device;

sending the one or more initial attributes from the first device to the second device;

generating, at the first device, at least one second attribute and data associated with the at least one second attribute to modify the functionality of the second device; and

sending the at least one second attribute and the associated data to the second device that is configured to perform one or more functions related to the modified functionality according to the at least one second attribute,

wherein each attribute of the one or more initial attributes and each attribute of the at least one second attribute comprises a first field comprising a Universally Unique Identifier (UUID) and a distinct second field comprising a value associated with the UUID,

and wherein receiving the at least one first attribute that modifies the functionality of the first device comprises receiving the at least one first attribute via short range communications.

20. The method of claim 19 , wherein each attribute further comprises a handle for referencing the corresponding attribute.

21. The method of claim 19 , wherein the at least one other attribute contains data that is associated with at least one of at least one new attribute and at least one of the one or more initial attributes.

22. A method, comprising:

receiving, at a first electronic device, at least one first attribute that modifies the functionality of the first device, the at least one first attribute originating from a remote server;

evaluating, at the first electronic device, the at least one first attribute;

determining, at the first electronic device, if data is associated with the at least one evaluated first attribute;

if data is determined to be associated with the at least one evaluated first attribute, storing the determined data in the first electronic device;

storing the at least one first attribute in the first electronic device; and

performing, by the first electronic device, one or more functions related to the modified functionality of the first electronic device according to the at least one first attribute,

receiving, at the first electronic device, at least one second attribute that modifies a functionality of a second electronic device that stores one or more initial attributes that at least partially define the functionality of the second electronic device, the at least one second attribute originating from a remote server; and

sending, from the first electronic device, the at least one second attribute to the second electronic device, causing the second electronic device to perform one or more functions related to the modified functionality of the second electronic device according to the at least one second attribute,

wherein each attribute of the one or more initial attributes and each attribute of the at least one second attribute comprises a first field comprising a Universally Unique Identifier (UUID) and a distinct second field comprising a value associated with the UUID,

and wherein receiving the at least one first attribute that modifies the functionality of the first device comprises receiving the at least one first attribute via short range communications.

23. The method of claim 22 , further comprising, prior to said first electronic device receiving the at least one first attribute, receiving, by said first electronic device, the one or more initial attributes and sending the one or more initial attributes to the second electronic device.

24. The method of claim 22 , wherein each attribute further comprises a handle for referencing the corresponding attribute.

25. Apparatus, comprising:

a memory configured to store attributes and data; and

at least one processor; and

a controller configured to:

receive, at the apparatus, at least one first attribute that modifies the functionality of the apparatus, the at least one first attribute originating from a remote server;

evaluate, at the apparatus, the at least one first attribute;

determine, at the apparatus, if data is associated with the at least one evaluated first attribute;

if data is determined to be associated with the at least one evaluated first attribute, store the determined data in the apparatus;

store the at least one first attribute in the apparatus;

perform, by the apparatus, one or more functions related to the modified functionality of the apparatus according to the at least one first attribute;

receive at least one second attribute and data associated with the at least one second attribute that modifies a functionality of another apparatus that stores one or more initial attributes that at least partially define the functionality of the other apparatus, the at least one second attribute originating from a remote server; and

send the at least one second attribute and associated data to the other apparatus, causing the other apparatus to perform one or more functions related to the modified functionality of the other apparatus according to the at least one second attribute,

wherein each attribute of the one or more initial attributes and each attribute of the at least one second attribute comprises a first field comprising a Universally Unique Identifier (UUID) and a distinct second field comprising a value associated with the UUID,

and wherein receiving the at least one first attribute that modifies the functionality of the first device comprises receiving the at least one first attribute via short range communications.

26. The apparatus of claim 25 , wherein said at least one second attribute is sent to the other apparatus via a short range communication.

27. The apparatus of claim 25 , wherein each attribute further comprises a handle for referencing the corresponding attribute.

28. The apparatus of claim 25 , wherein the controller is further configured to cause the apparatus to, prior to receiving at least one attribute, receive the one or more initial attributes and send the one or more initial attributes to the other apparatus.

Assignments (12)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 16, 2026
From: MEDIATEK INC.
To: HFI INNOVATION INC.
Reel/Frame 075402/0042 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 19, 2025
From: CONVERSANT WIRELESS LICENSING LTD.
To: MEDIATEK INC.
Reel/Frame 071292/0785 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 2, 2023
From: CONVERSANT WIRELESS LICENSING S.A R.L.
To: CONVERSANT WIRELESS LICENSING LTD.
Reel/Frame 063507/0900 →
RELEASE OF SECURITY INTEREST Recorded Apr 13, 2021
From: CPPIB CREDIT INVESTMENTS INC.
To: CONVERSANT WIRELESS LICENSING S.A R.L.
Reel/Frame 055910/0698 →
AMENDED AND RESTATED U.S. PATENT SECURITY AGREEMENT (FOR NON-U.S. GRANTORS) Recorded Aug 22, 2018
From: CONVERSANT WIRELESS LICENSING S.A R.L.
To: CPPIB CREDIT INVESTMENTS, INC.
Reel/Frame 046897/0001 →
CHANGE OF NAME Recorded Oct 20, 2017
From: CORE WIRELESS LICENSING S.A.R.L.
To: CONVERSANT WIRELESS LICENSING S.A R.L.
Reel/Frame 044250/0398 →
UCC FINANCING STATEMENT AMENDMENT - DELETION OF SECURED PARTY Recorded Aug 30, 2016
From: NOKIA CORPORATION
To: MICROSOFT CORPORATION
Reel/Frame 039872/0112 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 4, 2012
From: 2011 INTELLECTUAL PROPERTY ASSET TRUST
To: CORE WIRELESS LICENSING S.A.R.L
Reel/Frame 027485/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 26, 2011
From: NOKIA CORPORATION
To: NOKIA 2011 PATENT TRUST
Reel/Frame 027120/0608 →
CHANGE OF NAME Recorded Oct 26, 2011
From: NOKIA 2011 PATENT TRUST
To: 2011 INTELLECTUAL PROPERTY ASSET TRUST
Reel/Frame 027121/0353 →
SHORT FORM PATENT SECURITY AGREEMENT Recorded Sep 13, 2011
From: CORE WIRELESS LICENSING S.A.R.L.
To: NOKIA CORPORATION; MICROSOFT CORPORATION
Reel/Frame 026894/0665 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 20, 2007
From: LAPPETELAINEN, ANTTI; LAAKSONEN, MIIKA
To: NOKIA CORPORATION
Reel/Frame 020278/0847 →