Method and system for automatic firmware updates in a portable hand-held device
First Claim
1. A method for automatically updating firmware of a hand-held device, the method comprising the steps of:
- a) detecting a reset of the hand-held device; and
b) once a reset is- detected, executing an update application, wherein the update application performs the steps of;
b1) determining whether a flag has been set in a nonvolatile memory area of the hand-held device, the flag indicating a previous execution of the update application;
b2) terminating the update application if the flag is set;
b3) determining whether a device ID of the device matches a device ID stored in a table of the update application;
b4) terminating the update application if the device ID of the device does not match the device ID stored in the table;
b5) updating firmware of the hand-held device if the device ID of the device matches the device ID stored in the table; and
b6) setting the flag and terminating the update application.
5 Assignments
0 Petitions
Accused Products
Abstract
A method for automatically updating firmware of a hand-held device. To initiate the automatic update, a reset of the hand-held device is detected. Once a reset is detected, an update application is executed, wherein the update application performs the required updating steps. The update application determines whether a flag has been set in a nonvolatile memory area of the hand-held device. The flag is used to indicate a previous execution of the update application. If the flag is set, the update application terminates, otherwise, the update application performs an identification test by determining whether a device ID of the device matches a device ID stored in a table of the update application. If the device ID does not match, the update application terminates and the flag is set. If the device ID matches, the update application updates the firmware of the hand-held device, sets the flag, and terminates. In so doing, the firmware of the hand-held device to be updated without requiring user intervention or interaction. A parameter can be checked against a predetermined value or range in the same manner as the device ID, in implementing the identification test. The update application can be distributed to the hand-held device from a supply server via the Internet. Alternatively, the update application can be distributed to the hand-held device wirelessly from another hand-held device, or as an undocumented part of a separate upgrade. The execution of the update application can be hidden, such that the update application executes transparently to user.
187 Citations
20 Claims
-
1. A method for automatically updating firmware of a hand-held device, the method comprising the steps of:
-
a) detecting a reset of the hand-held device; and
b) once a reset is- detected, executing an update application, wherein the update application performs the steps of;
b1) determining whether a flag has been set in a nonvolatile memory area of the hand-held device, the flag indicating a previous execution of the update application;
b2) terminating the update application if the flag is set;
b3) determining whether a device ID of the device matches a device ID stored in a table of the update application;
b4) terminating the update application if the device ID of the device does not match the device ID stored in the table;
b5) updating firmware of the hand-held device if the device ID of the device matches the device ID stored in the table; and
b6) setting the flag and terminating the update application. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer readable media having computer readable instructions for implementing a method for automatically updating firmware of a hand-held device, the instructions when executed by a computer system within the hand-held device cause the hand-held device to perform the steps of:
-
a) detecting a reset of the hand-held device; and
b) once a reset is detected, executing an update application, wherein the update application performs the steps of;
b1) determining whether a flag has been set in a nonvolatile memory area of the hand-held device, the flag indicating a previous execution of the update application;
b2) terminating the update application if the flag is set;
b3) determining whether a device ID of the device matches a device ID stored in a table of the update application;
b4) terminating the update application if the device ID of the device does not match the device ID stored in the table;
b5) updating firmware of the hand-held device if the device ID of the device matches the device ID stored in the table; and
b6) setting the flag and terminating the update application. - View Dependent Claims (9, 10, 11, 12, 13)
-
-
14. A portable hand-held device configured for automatically firmware updates, comprising:
-
a computer system having a processor coupled to a memory via a bus, the memory having computer readable instructions stored therein, which would executed by the computer system, cause the hand-held device to perform the steps of;
a) detecting a reset of the hand-held device;
b) determining whether a flag has been set in a nonvolatile memory area of the hand-held device, the flag indicating a previous execution of an update;
c) terminating the update if the flag is set;
d) determining whether a device ID of the device matches a device ID stored in a table;
e) terminating the update if the device ID of the device does not match the device ID stored in the table;
f) updating firmware of the hand-held device if the device ID of the device matches the device ID stored in the table; and
g) setting the flag and terminating the update. - View Dependent Claims (15, 16, 17, 18, 19)
-
-
20. A method for automatically updating firmware of a hand-held device, the method comprising the steps of:
-
a) detecting a reset of the hand-held device; and
b) once a reset is detected, executing an update application, wherein the update application performs the steps of;
b1) determining whether a flag has been set in a nonvolatile memory area of the hand-held device, the flag indicating a previous execution of the update application;
b2) terminating the update application if the flag is set;
b3) determining whether a parameter of the device matches a predetermined range;
b4) terminating the update application if the parameter of the device does not match the predetermined range;
b5) updating firmware of the hand-held device if the parameter of the device matches the predetermined range; and
b6) setting the flag and terminating the update application.
-
Specification