# Patent

## Title
Battery capacity indicator in a portable computing device

## Abstract

Systems and methods for indicating the status of a battery in a portable computing device are disclosed. The methods include retrieving battery status data from a basic input-output system (BIOS) on the computing device, and comparing the retrieved battery status data to a predefined battery status threshold stored on the computing device. Based on the comparison of the battery status data to the predefined battery status threshold, a battery status indicator may be provided to an applications program on the computing device. The battery status data is reflective of a characteristic of the battery, such as battery capacity. A system according to the present invention includes a computer-readable medium having stored thereon computer-executable instructions for performing a method according to the present invention.

## Background
CROSS-REFERENCE TO RELATED APPLICATIONS
This application is a continuation of U.S. patent application Ser. No. 09/822,912, filed Mar. 30, 2001 now U.S. Pat. No. 6,833,792, the contents of which are hereby incorporated by reference.


The subject matter disclosed herein is also related to the subject matter disclosed in copending application Ser. No. 09/822,913, filed on Mar. 30, 2001, entitled “Battery Voltage Indicator in a Portable Computing Device,” the contents of which are hereby incorporated by reference. The subject matter disclosed herein is also related to the subject matter disclosed in copending application Ser. No. 09/822,905, filed on Mar. 30, 2001, entitled “Systems and Methods for Collecting BIOS Data from a Plurality of Remote Computing Devices,” the contents of which are hereby incorporated by reference.
FIELD OF THE INVENTION
The present invention relates to portable computing devices. More particularly, the present invention relates to providing a battery status indicator in such portable computing devices.
BACKGROUND OF THE INVENTION
Portable computing devices such as laptop personal computers, personal digital assistants, and the like are becoming ubiquitous due to the advances in the computing field. Such devices, however, typically rely on a battery to supply electrical power so that the computing device can be used in a portable fashion. Consequently, a user of the computing device often must depend on a battery status indicator to provide a method of displaying a status of the battery level to inform the user that charging of the battery may be necessary. Methods for monitoring the battery status can include determining battery capacity (percentage of battery power remaining) or battery voltage (voltage level of the battery).
A manufacturer of computing devices typically incorporates a battery status indicator in the manufactured computing device. One method of indicating the battery status includes accessing a Basic Input/Output System (BIOS) on the computing device. Typically, a BIOS includes a BIOS controller and BIOS data store. The BIOS data store may contain data representative of various aspects of the computing device, including, for example, power management settings and battery status data. The BIOS controller may include a set of instructions that perform various functions associated with maintaining the data in the BIOS data store (e.g., writing data to and reading data from the data store). The BIOS may be installed on a Read-Only Memory (ROM) chip or flash memory chip, for example, within the computing device.
Some manufacturer-provided battery status indicator programs interrogate the BIOS for battery status data that can be used to determine whether a battery status alert should be provided to the user. A battery status alert is a type of battery status indicator that alerts the user when a particular battery characteristic has fallen below a predefined level. In fact, some manufacturers provide stored programs that can be used to interrogate the BIOS to obtain this data for use in a battery status indicator or battery status alert.
Manufacturers of portable computing devices, however, typically confine users of such portable computing devices to the parameters provided thereby for indicating the status of the battery to the user. The battery status indicator provided by the manufacturer, however, may be inaccurate, or the battery status threshold, which triggers the battery status alert, may be set too low, thereby not providing adequate warning to the user to charge the battery.
Additionally, battery status indicators on the portable computing devices provided by the manufacturer are not integrated with applications programs that the users typically use on the computing device. It would be advantageous to users of such portable computing devices if a battery status indicator could be integrated into the applications program so that the user of the computing device would receive current, accurate battery status while using the applications program. Therefore, a need exists for a reliable and accurate battery status indicator, integrated into an applications program, with programmable parameters that permit the battery status threshold to be varied from that provided by the manufacturer.
BRIEF SUMMARY OF THE INVENTION
The present invention satisfies the aforementioned need by providing systems and methods for displaying a battery status indicator integrated into an applications program on a portable computing device, and for providing a battery status alert if the battery status falls below a predefined threshold. The battery status threshold can be a fixed parameter, or it can be a variable parameter that can be user-defined. By providing such a battery status indicator, the user of a computing device will be provided with a reliable battery status indicator appearing in an applications program, and will have ample warning when the battery capacity reaches an unacceptably low level.
The systems and methods of the present invention can be integrated into a software applications program on a computing device. The software applications program, once executed, executes a BIOS interrogating routine. The BIOS interrogating routine occasionally queries the BIOS to retrieve battery status data relating to the battery in the computing device. The retrieved battery status data is compared to the battery status threshold (which can be predefined or user-defined). Based on the comparison, a battery capacity indicator can be sent to and displayed in the software applications program.



BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWING
Other features of the present invention are further apparent from the following detailed description of the embodiments of the present invention taken in conjunction with the accompanying figures, of which:
FIG. 1 depicts a network environment in which the present invention can be used;
FIG. 2 is a block diagram illustrating a method of indicating the status of a battery in a portable computing device in accordance with the present invention; and
FIG. 3 is a block diagram of a portable computing device having a software program in accordance with the present invention.



DETAILED DESCRIPTION OF THE INVENTION
The present invention is directed to systems and methods for indicating the status of a battery in a portable computing device. More particularly, the present invention is directed to indicating the battery capacity (i.e., the percentage of battery power remaining in the battery) of the portable computing device, and providing a battery status alert if the battery capacity falls below a predefined threshold. The method provides an accurate battery status indicator for display within an applications program in a portable computing device.
In one embodiment of the present invention, the methods are implemented into a software applications program residing on a portable computing device. The term software applications program hereinafter refers to software programs that perform on an operating system platform and have separate functionality from that of an operating system. The method, according to one embodiment of the present invention, comprises querying the BIOS for BIOS data relating to a battery in the computing device. Then, the BIOS data is compared to a predefined status threshold. Based on the comparison of the BIOS data to the predefined status threshold, a battery capacity indicator is provided to an applications program on the computing device for display to a user of the computing device.
Although the present invention is disclosed with reference to a portable laptop computing device, such as, for example, the laptop 105 as shown in FIG. 1, it should be appreciated that the present invention may be implemented in other portable computing devices having a BIOS, such as, for example, a personal digital assistant (“PDA”) or the like, without departing from the scope of the present invention.
FIG. 1 shows an exemplary network in which the aspects of the present invention may be implemented. FIG. 1 shows a communication network 100 that allows the exchange of information between a portable technician laptop 105 and in-house system computers 110 and/or server 115. The laptop 105 may communicate with the network 100 either through a physical connection, such as, for example, a landline 120 (i.e., a physical connection through data lines) or by way of a wireless connection 125. Using a physical connection, the laptop 105 connects to landline 120. The landline 120 connects to a modem pool 130, and the modem pool 130 in turn connects to a protocol server 135 by way of data lines 140.
Alternatively, the laptop 105 may communicate with the network 100 through a wireless connection 125. The wireless connection 125 enables the laptop 105 to connect to wireless tower 132. The wireless tower 132 connects to the protocol server 135 by way of data lines 140. The wireless connection 125 is particularly useful for users of laptop 105 that demand mobility while communicating with network 100, such as in the case of a field technician, for example.
The protocol server then provides communication to server 115 through data lines 140. In-house systems computers 110 are also connected to server 115 through data lines 140. This network configuration allows data to be transferred between all components of the network 100, particularly between users of laptop 105 and users of the in-house systems computers 110.
With reference to FIG. 2 and in accordance with the present invention, a method 300 is shown for indicating the status of a battery in a portable computing device having a BIOS. The method 300 comprises retrieving battery status data from the BIOS of the computing device at step 302. The BIOS data relates to a characteristic of the battery in the computing device. For example, and in accordance with the present invention, the BIOS data may relate to the battery capacity, i.e., the power remaining in the battery of the computing device.
In one embodiment of the present invention, a BIOS interrogating routine is used to retrieve battery status data from the BIOS. In this manner, an applications program executing on the computing device may initiate the BIOS interrogating routine to access or interrogate a BIOS data store (e.g., element 335 in FIG. 3) in order to query the BIOS for BIOS data. The BIOS interrogating routine queries the BIOS by retrieving data associated with a device input/output (I/O) number. Such device I/O number is basically an index into the BIOS data store corresponding to a piece of hardware (which may or may not be located on the computing device). For example, the program, in accordance with the present invention, retrieves data based on a device I/O number associated with the battery in the computing device, to retrieve data relating to battery capacity, for example, or to some other characteristic of the battery.
Once the battery status data is retrieved, the battery status data is compared to a predefined status threshold at step 310. Preferably, where the battery status data reflects the battery capacity, the predefined status threshold is set to 20%. Typically, this will be higher than most manufacturer-supplied thresholds.
In one embodiment of the present invention, the predefined status threshold is programmed into the BIOS interrogating routine. In this manner, once the battery status data is retrieved from the BIOS, the BIOS interrogating routine compares the retrieved battery status data to the predefined status threshold coded into the BIOS interrogating routine.
Alternatively, the predefined status threshold can be a variable parameter, and can be defined by the user of the computing device. In this manner, the user may selectively define the parameters of the predefined status threshold to various threshold values, e.g., depending on the environment in which the user is operating.
Based on the comparison of the battery status data to the battery status threshold, a battery status indicator is provided to an applications program on the computing device at step 320. For example, the battery status indicator may be sent to an applications program that is currently being executed. In this manner, while the user of the computing device is operating the applications program, the user may view a battery status indicator integrated into the user interface of the applications program. Such an integrated battery indicator would allow the user to continuously operate the applications program while simultaneously monitoring the battery status.
Preferably, the applications program is an interface to a remote network, such as might be used by a field service technician in the telecommunications industry operating a laptop computer during a service call. The technician logs onto the network via a user interface at the remote computing device, and then interacts with the network server to request and receive information necessary for the technician to troubleshoot and resolve problems in the field. Because the field technician will frequently be using the laptop in a portable fashion (i.e., not plugged into a power source), and usually far from a power source, a battery status indicator integrated into the user interface will provide notice to the field technician that the battery is about to die, and that he should locate a power source. Because the threshold is set higher than the manufacturer provided threshold, the programmer (or user) of the remote laptop can compensate for the expected amount of time it will take the user to reach a power source. The applications program can be any such applications program, however, such as a word processing application, for example.
The battery status indicator alerts the user of the device that the battery status level has reached a certain level. For example, the low battery indicator can include a pop-up window with text indicating a low battery level, or a display embedded into the user interface of the applications program. The low battery indicator can include a visual warning representation, such as a flashing red light, for example, or an audible alert.
In an embodiment wherein the threshold is user-definable, and the user is operating the computing device in an environment which is far from a recharging source, the user may want to predefine the status threshold to such a level as to provide adequate warning to enable the user to find a recharging source (e.g., the user may want to set the battery status threshold higher than 20%). Alternatively, if the user is operating the computing device close to a recharging source, the user may set the predefined status threshold to a level that provides little warning before the battery drains completely.
In another embodiment of the present invention, the predefined status threshold is set such that a battery status indicator is continuously displayed in an applications program. In this manner, the battery status indicator may represent the battery status data retrieved from the BIOS. Therefore, the user may continuously view the battery voltage within the user interface of an applications program on the computing device. For example, if the predefined status threshold is set to the maximum capacity (100%) of the battery, a battery status indicator will be sent to an applications program on the computing device whenever the battery capacity is below such maximum capacity.
The applications program can then provide the battery status indicator to the user, via the user interface of the applications program, in a manner that is perceptible to the user. It should be appreciated that, once the battery status indicator is sent to the applications program, the indicator may be presented in any manner. For example, the battery indicator may be a flashing number indicating the battery capacity, or a graphical representation of the battery capacity, such as a gauge or a bar, for example. Alternatively or additionally, the battery status indicator may include an audible indictor, such as a bell or warning tone.
FIG. 3 is a block diagram illustrating a portable computing device 305 having a computer-readable medium 350 on which computer-executable instructions 315 are stored thereon for performing a method according to the present invention for indicating the status of a battery in the portable computing device. Preferably, portable computer 305 is a laptop computer, although any portable computing device, either stand alone or connected to a network, may be used without departing from the principles of the present invention.
Computer-readable medium 350 can be a read only memory (ROM) device on computing device 305, such as can be found in a computing device's hard drive, for example. Alternatively, medium 350 can be a floppy disk, compact disk (CD), or other removable computer-readable medium.
According to the present invention, computing device 305 includes a BIOS interrogating application 315, and a BIOS chip 310 having a BIOS controller 317 and data store 335. The BIOS chip 310 may be a ROM chip, flash memory chip, or the like. Additionally, data associated with the BIOS controller 317 may be stored within data store 335, which may be stored within the BIOS chip 310 or in an external storage location, which may be within computing device 305 or may be external to computing device 305.
Preferably, the portable computing device 305 includes instructions 315 thereon for indicating the status of the battery (not shown) in the portable computing device 305 by accessing the BIOS chip 310 on the computing device 305. Preferably, the instructions 315 of the computing device 305 are organized to retrieve battery status data from the BIOS data store 335. As shown, the instructions 315 may retrieve such data either through the BIOS controller 317 or through the BIOS data store 335 without departing from the principles of the present invention.
Then, the instructions 315 compare the retrieved battery status data to a predefined battery status threshold stored on the computing device 305. Based on the comparison of the battery status data to the predefined battery status threshold, the instructions 315 provide a battery status indicator to an applications program 360 executing on the computing device.
While the present invention has been described in connection with the embodiments of the various figures, it is to be understood that other similar embodiments may be used or modifications and additions may be made to the described embodiment for performing the same function of the present invention without deviating therefrom. Therefore, the present invention should not be limited to any single embodiment, but rather construed in breadth and scope in accordance with the recitation of the appended claims.

## Claims

1. A method for indicating the status of a battery in a portable computing device, the method comprising:
retrieving battery status data from a basic input-output system (BIOS) on the computing device by an applications program initiating a BIOS interrogating routine to retrieve the battery status from the BIOS, the battery status data reflective of a power capacity of the battery;
comparing the retrieved battery status data to a predefined battery status threshold stored on the computing device; and
based on the comparison of the battery status data to the predefined battery status threshold, providing a battery status indicator to the applications program executing on the computing device.

2. The method of claim 1, further comprising: providing a user perceptible battery status indicator via the applications program on the computing device.

3. The method of claim 2, wherein providing the user perceptible-battery status indicator comprises displaying a low battery alert when the comparison indicates that the battery status data is less than the predefined status threshold.

4. The method of claim 2, wherein providing the user perceptible battery status indicator comprises displaying a gauge representative of a current battery status.

5. The method of claim 2, wherein the user perceptible battery status indicator is integrated into the applications program.

6. The method of claim 2, further comprising providing the user perceptible battery status indicator continuously during execution of the applications program.

7. The method of claim 1, wherein the predefined battery status threshold is user-definable.

8. The method of claim 1, wherein the predefined battery status threshold comprises a variable parameter.

9. The method of claim 8, wherein the variable parameter is associated with an environment in which the computing device is operating.

10. The method of claim 8, wherein the variable parameter is user-definable.

11. A computer-readable medium having stored thereon computer-executable instructions for performing a method for indicating the status of a battery in a portable computing device, the method comprising:
retrieving battery status data from a basic input-output system (BIOS) on the computing device by an applications program initiating a BIOS interrogating routine to retrieve the battery status from the BIOS, the battery status data reflective of a power capacity of the battery;
comparing the retrieved battery status data to a predefined battery status threshold stored on the computing device; and
based on the comparison of the battery status data to the predefined battery status threshold, providing a battery status indicator to the applications program on the computing device.

12. The computer-readable medium of claim 11, having stored thereon computer-executable instructions for providing a user perceptible battery status indicator.

13. The computer-readable medium of claim 12, having stored thereon computer-executable instructions for providing the user perceptible battery status indicator continuously during execution of the applications program.

14. A system for indicating the status of a battery in a portable computing device, the system comprising:
a basic input-output system (BIOS) comprising battery status data reflective of a power capacity of the battery;
an applications program comprising means for interrogating the BIOS to retrieve the battery status data from the BIOS; and
a battery status indicator associated with the applications program.

15. The system of claim 14, further comprising:
a predefined battery status threshold, wherein the applications program further comprises means for comparing the battery status data to the predefined battery status threshold, and
wherein the battery status indicator reflects the results of a comparison of the battery status data to the predefined battery status threshold.

16. The system of claim 15, wherein the predefined battery status threshold is user-definable.

17. The system of claim 15, wherein the predefined battery status threshold comprises a variable parameter associated with an environment in which the system is operating.

18. The system of claim 17, wherein the variable parameter is user-definable.

19. The system of claim 14, wherein the battery status indicator is user perceptible.

20. The system of claim 19, wherein the user perceptible battery status indicator is integrated into the applications program.