`
`(12) United States Patent
`Hackborn et al.
`
`(10) Patent No.:
`(45) Date of Patent:
`
`US 8,280,456 B2
`Oct. 2, 2012
`
`(54) PROVIDINGA USER WITH FEEDBACK
`REGARDING POWER CONSUMPTION IN
`BATTERYOPERATED ELECTRONIC
`DEVICES
`
`(75) Inventors: Dianne K. Hackborn, Santa Clara, CA
`(US); Daniel S. Rice, Decatur, GA (US);
`Amith Yamasani, San Jose, CA (US);
`Jason B. Parks, Santa Clara, CA (US);
`Evan Millar, Pleasanton, CA (US)
`(73) Assignee: Google Inc., Mountain View, CA (US)
`(*) Notice:
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 418 days.
`(21) Appl. No.: 12/541,415
`(22) Filed:
`Aug. 14, 2009
`
`(65)
`
`Prior Publication Data
`US 2011 FOO4O996 A1
`Feb. 17, 2011
`
`(51) Int. Cl.
`(2006.01)
`H04B I7/00
`(2006.01)
`H04M 3/00
`(2006.01)
`H04N 7/02
`(52) U.S. Cl. ......... 455/574; 455/419; 348/189: 713/340
`(58) Field of Classification Search .................. 455/115,
`455/419,574; 348/189: 713/340
`See application file for complete search history.
`
`(56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`5,714,870 A
`2f1998 Dunstan
`5,940.452 A
`8, 1999 Rich
`6,215,275 B1
`4/2001 Bean
`6,236,674 B1
`5, 2001 Morelli et al.
`6,263,200 B1
`7/2001 Fujimoto
`
`7/2007 Shin et al.
`7,251,505 B2
`2/2008 Yasuda et al.
`7,336,929 B2
`7,433,702 B2 10/2008 Lindskog et al.
`7,583,984 B2
`9, 2009 Sun et al.
`7,680,041 B2
`3/2010 Johansen
`(Continued)
`
`EP
`
`FOREIGN PATENT DOCUMENTS
`1524829. A
`4/2005
`(Continued)
`
`OTHER PUBLICATIONS
`
`International Search Report issued in PCT/US2010/045525 on Feb.
`23, 2011 (10 pages).
`
`(Continued)
`Primary Examiner — William D Cumming
`(74) Attorney, Agent, or Firm — Fish & Richardson P.C.
`(57)
`ABSTRACT
`Methods, systems, and apparatus, including computer pro
`grams encoded on a computer storage medium, for providing
`a user with feedback regarding power consumption in a bat
`tery-operated electronic device. In one aspect, a method per
`formed by data processing apparatus includes identifying,
`using the data processing apparatus, usage of a hardware
`component of a battery-operated electronic device that
`includes the data processing apparatus, attributing the usage
`of the hardware component to the hardware component or to
`a Software application that uses the hardware component,
`recording, using the data processing apparatus, a power con
`Sumption resulting from the usage, and presenting power
`consumption feedback to a user using the data processing
`apparatus. The power consumption feedback identifies the
`hardware component or the Software application of the elec
`tronic device and the power consumption resulting from the
`uSage.
`
`18 Claims, 8 Drawing Sheets
`
`
`
`110
`
`-
`- 130
`
`- O
`
`GMsor ill-4-41 AM
`
`duration of current period: 3 hrs: 20 min
`
`-115
`
`
`
`160
`
`Sy Map Ap?ilication
`iss H
`so
`170
`5
`1
`Phoelle
`
`60
`
`Operating System
`
`170
`
`$s. Tool A?plication(s)
`/ ar
`165
`60 170
`Y
`(A System Applications
`
`Page 1 of 21
`
`GOOGLE EXHIBIT 1010
`
`
`
`US 8,280.456 B2
`Page 2
`
`U.S. PATENT DOCUMENTS
`FOREIGN PATENT DOCUMENTS
`7,730,331 B2
`6/2010 Yoon et al.
`1594232 A 1 1/2005
`EP
`2003, OO69704 A1
`4, 2003 Bean
`10-0698162
`3, 2007
`KR
`2003/01 1946.0 A1* 6/2003 Zipper .......................... 45.5/115
`10-2000-0072022
`10/2007
`KR
`2004/0266493 A1 12/2004 Bahl et al.
`10-2007-0102227
`10/2007
`KR
`2005, 0070339 A1
`3, 2005 Kim
`WO WO 2004/105417
`12, 2004
`2005/00852.77 A1
`4, 2005 Chen et al.
`WO WO 2005, OO6722
`1, 2005
`2005/0143144 A1* 6/2005 Shin et al. ..................... 435/374
`WO WO 2005/009062
`1, 2005
`2006/0279256 A1 12, 2006 BletSas
`WO
`WOOOf 39908. A 11, 2005
`2008/0057894 A1
`3/2008 Aleksic et al.
`OTHER PUBLICATIONS
`2008/02688.28 A1* 10/2008 Nagaraja....................... 559 Smartphone-Wikipedia Dec. 15, 2011.
`2009.0164152 All 6 2009 Creus et al.
`Office Action from USPTO in U.S. Appl. No. 13/245,476 (Jan. 3,
`2010, 0141777 A1* 6, 2010 Jin et al. ........................ 348/189
`2012).
`2011/004O990 A1
`2/2011 Chan et al.
`2011/0040996 A1
`2/2011 Hackborn et al. ............ T13,340
`
`* cited by examiner
`
`Page 2 of 21
`
`
`
`U.S. Patent
`U.S. Patent
`
`Oct. 2, 2012
`Oct. 2, 2012
`
`Sheet 1 of 8
`Sheet 1 of 8
`
`US 8,280,456 B2
`US 8,280,456 B2
`
`ON?
`mmF
`mm?
`- - - - - - - - - - - - - -
`AAfiAAfiAfiAfifiL
`
`
`
`9:$2E396mEVanO
`
`J:o:2:
`
`
`o:o.moanaso?xiv/mt.a._\<.2
`0/ | ==
`05Foarl
`
`$92295;;
`
`J:o:om:\tmm:
`
`0:
`
`
`
`Page 3 of 21
`
`
`
`
`
` mm:,,[\xmx.2$2,Amvcozmgaaa.30...JJ:\xof--.,,
`
`
`
`0:,.mr
`
`
`
`/mt058F\
`
`om?wcozmflana‘E2m>w
`
`
`/H.0:—
`
`Page 3 of 21
`
`
`
`
`
`U.S. Patent
`
`Oct. 2, 2012
`
`Sheet 2 of 8
`
`US 8,280,456 B2
`
`Z * OIDH
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Page 4 of 21
`
`
`
`U.S. Patent
`
`Oct. 2, 2012
`
`Sheet 3 of 8
`
`US 8,280,456 B2
`
`IDENTIFY USAGE OF A COMPONENT
`
`ATTRIBUTE POWER CONSUMPTION
`DURING COMPONENT USAGE TO AN
`ASPECT OF DEVICE
`
`RECORD ATTRIBUTED POWER
`CONSUMPTION
`
`PRESENT POWER CONSUMPTION
`FEEDBACK TO A USER
`
`
`
`
`
`300
`
`f
`
`305
`
`310
`
`315
`
`320
`
`FIG 3
`
`400, 255
`
`
`
`
`
`
`
`5 C
`
`
`
`HISTORY BY COMPONENT
`COMPONENT
`POWER
`CONSUMPTION
`OOWer 1
`power N
`
`Component 1
`component N
`
`Page 5 of 21
`
`
`
`U.S. Patent
`
`Oct. 2, 2012
`
`Sheet 4 of 8
`
`US 8,280,456 B2
`
`530
`
`Power
`Measurement
`515
`
`Component
`Interface
`505
`
`Component
`
`510
`
`
`
`
`
`
`
`
`
`
`
`
`
`Consumption
`Feedback
`250
`maa
`Data Processing
`Unit
`225
`
`
`
`Data Processing Unit 22
`615
`225
`
`Converter
`
`a
`Application
`Monitor
`605
`610
`Consumption Feedback
`250
`
`Component
`- Interface
`505
`
`500, 220
`
`FIG.S
`
`600, 220
`
`F.G. 6
`
`Page 6 of 21
`
`
`
`U.S. Patent
`
`Oct. 2, 2012
`
`Sheet 5 of 8
`
`US 8,280.456 B2
`
`"
`
`MONITOR APPLICATION ACTIVITIES
`
`705
`
`
`
`
`
`CONVERT APPLICATION ACTIVITIES
`INTO POWER CONSUMPTION
`
`710
`
`
`
`FG. 7
`
`800, 255
`
`WIRELESS COMP 1
`SIGNAL
`STRENGTH | ESTIMATE
`
`WIRELESS COMP 2
`SIGNAL
`STATE
`SNA
`STATE
`
`Strendth N
`
`OLED SCREEN
`RIGHTNESS COLOR
`POWER
`ESTIMATE
`power 1
`OOWer 1
`
`Color 1
`Color 2
`
`Page 7 of 21
`
`
`
`U.S. Patent
`
`Oct. 2, 2012
`
`Sheet 6 of 8
`
`US 8,280,456 B2
`
`900
`
`
`
`
`
`NEW PERIOD?
`
`TRANSFER PERIOD INFO TO
`LONG TERMRECORD
`
`CLEAR RECORD OF POWER
`CONSUMPTION FOR
`PRESENT PERIOD
`
`RESET PERIOD TIMER
`
`
`
`PROVIDE AUSER WITH FEEDBACK
`REGARDING POWER CONSUMPTION
`
`FG. 9
`
`Page 8 of 21
`
`
`
`U.S. Patent
`
`Oct. 2, 2012
`
`Sheet 7 of 8
`
`US 8,280.456 B2
`
`255
`
`LONG TERM HISTORY BY
`APPLICATION
`
`CONSUMPION
`
`1040
`
`...
`...
`power N
`app N
`- --
`
`1015
`
`1020
`
`HISTORY BY APPLICATION,
`PRESENT PERIOD
`APPLICATION
`
`r
`
`app 3
`OO
`
`CONSUMPTION
`
`
`
`
`
`
`
`OO
`
`app N
`
`OOWer N
`
`1035
`
`
`
`
`
`FIG 10
`
`Page 9 of 21
`
`
`
`U.S. Patent
`
`Oct. 2, 2012
`
`Sheet 8 of 8
`
`US 8,280.456 B2
`
`
`
`
`
`
`
`PERIOD CLASS 1
`
`PERIOD CLASS 2
`
`PERIOD CLASS ...
`
`
`
`
`
`PERIOD CLASS N
`
`1130
`
`1130
`
`1130
`
`1130
`
`F.G. 11
`
`Page 10 of 21
`
`
`
`US 8,280,456 B2
`
`1.
`PROVIDINGA USER WITH FEEDBACK
`REGARDING POWER CONSUMPTION IN
`BATTERYOPERATED ELECTRONIC
`DEVICES
`
`BACKGROUND
`
`This specification relates to providing a user with feedback
`regarding power consumption in a battery-operated elec
`tronic device.
`Modern electronic devices provide a staggering array of
`functionality to users. Battery-operated portable handheld
`electronic devices such as telephones, music players, PDAs,
`and game players can display information on display Screens,
`receive instructions from a user, communicate with other
`devices using wired and wireless data links, take digital pho
`tographs, and process large Volumes of digital data at speeds
`that were unthinkable even a generation ago. Such function
`ality is implemented using hardware components such as,
`e.g., display screens, keyboards and keypads, communica
`tions interfaces, digital data processors, charge-coupled
`devices, and other integrated circuits that coordinate the
`operation of these and other hardware components. These
`various hardware components consume electrical power and
`thus help to deplete a battery or batteries in an electronic
`device.
`
`10
`
`15
`
`25
`
`SUMMARY
`
`2
`or an estimate of the amount of time that will be added to the
`battery life by turning off a component or application.
`Accordingly, in a first general aspect, a method performed
`by data processing apparatus is described. The method
`includes identifying, using the data processing apparatus,
`usage of a hardware component of a battery-operated elec
`tronic device that includes the data processing apparatus,
`attributing the usage of the hardware component to the hard
`ware component or to a software application that uses the
`hardware component, recording, using the data processing
`apparatus, a power consumption resulting from the usage, and
`presenting power consumption feedback to a user using the
`data processing apparatus. The power consumption feedback
`identifies the hardware component or the Software applica
`tion of the electronic device and the power consumption
`resulting from the usage.
`This and other aspects can include one or more of the
`following features. The method can include monitoring usage
`of the component by the application and converting the usage
`of the component into the power consumption that is attrib
`uted to the application. The component can include a wireless
`transceiver. The usage of the component can be converted into
`the power consumption by identifying a range of signal
`strengths during the usage of the wireless transceiver. The
`component can include a display. The usage of the component
`can be converted into the power consumption by identifying
`a brightness state of the display during the usage.
`The method can also include identifying a start of a new
`period and clearing a record of power consumption for the
`previous period in response. Information in the record of
`power consumption for the previous period can be transferred
`into a long term record of power consumption in response to
`the identification of the start of the new period. Presenting the
`power consumption feedback to the user can include display
`ing a presentation that identifies applications and indications
`of amounts of power consumed by the identified applications
`and/or displaying a presentation that identifies different
`classes of periods and indications of average amounts of
`power consumed during operation in the different classes.
`Other embodiments of this aspect include corresponding
`systems, apparatus, and computer programs, configured to
`perform the actions of the methods, encoded on computer
`storage devices.
`In a second general aspect, a battery-operated electronic
`devices is described. The battery-operated electronic device
`includes a battery, a collection of hardware components
`including a data processing unit configured to execute a plu
`rality of different applications, and a display Screen. The
`display screen presenting an accounting of power consumed
`by the different applications.
`This and other aspects can include one or more of the
`following features. The electronic device can include a power
`measurement unit. The power measurement unit can be
`implemented in hardware and for measuring a parameter
`characterizing power consumed by a first component of the
`collection of components. The power measurement unit can
`include an ammeter. The display screen can present an
`accounting of power consumed by different components in
`the collection.
`The electronic device can also include a data storage
`device. The data storage device can store a structured collec
`tion of information characterizing power consumed by the
`different applications during a present period and a structured
`collection of information characterizing power consumed by
`the different applications over a long term. The long term is
`longer than the present period.
`
`This document discusses systems, methods, and tech
`niques by which a battery-operated electronic device. Such as
`a smartphone or a netbook computer, can provide a user with
`information about which hardware components of the device
`consume, or are likely to consume, the most power on the
`device. For example, a device may display to the user a list of
`all power consuming hardware components or Software
`applications that are currently operating on the device, along
`with an indication of how much power each hardware com
`ponent or Software application is consuming (either at the
`exact instant in time, or over a defined time period). Such
`indications may be shown as an absolute value (e.g., in Watts
`or milli-watts) or as a relative value (e.g., in terms of the total
`power being consumed by all components or applications on
`the device, or of all components or applications that the user
`can currently disable). A graphical representation may also be
`provided so as to help the user make decisions about which
`components or applications to disable in order to save power.
`For example, bars graphs may be shown for each component
`or application, where the length of the bar approximates the
`amount of power consumed by the component, or a pie graph
`may be shown in a similar manner, where the size of each slice
`represents the relative amount of power consumed by a cor
`responding component. Displays like those just discussed
`may be shown in response to an explicit user request (e.g., by
`the user navigating to a tools menu on a device or selecting a
`power management icon on a desktop or other area of a
`display on the device) or in response to other events, such as
`when the device falls below a certain level of power (e.g.,
`30%) at which a user can be expected to start shutting down
`non-essential components. In other instances, the system may
`automatically shut down components or applications in a
`stepped manner at multiple different battery levels (based on
`a plan set for the system when it is shipped or by the user at a
`later time), or may provide Suggestions to a user that the user
`can accept or reject. Such a system can also provide the user
`with an estimate of the amount of time remaining on their
`battery if the component or application is left on or turned off,
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`Page 11 of 21
`
`
`
`US 8,280,456 B2
`
`3
`The data processing unit can be configured to monitor
`activities performed using hardware components in the col
`lection by the different applications and to calculate power
`consumption estimates attributable to respective of the differ
`ent applications. The electronic device can also include one or
`more persistent data storage devices storing conversion rules
`for estimating power consumptions by the different applica
`tions.
`Other embodiments of this aspect include corresponding
`systems, methods, and computer programs.
`In a third general aspect, a computer storage medium
`encoded with a computer program is described. The program
`includes instructions that when executed by data processing
`apparatus cause the data processing apparatus to perform
`operations. The operations include monitoring activities per
`formed by applications executed by a data processing appa
`ratus of a battery-operated electronic device, estimating
`power consumptions for the activities, recording information
`characterizing the power consumptions in association with
`information identifying the applications that performed the
`activities, and presenting a user with an accounting of the
`estimated power consumption by the applications on a dis
`play screen of the battery-operated electronic device based on
`the recorded information.
`This and other aspects can include one or more of the
`following features. The power consumptions for the activities
`can be estimated by identifying that a first application holds a
`lock and attributing additional power consumed during the
`lock to the first application. The lock can maintain the hard
`ware component in an active state. The lock can be a wake
`lock. The power consumptions for the activities can be esti
`mated by identifying that a second application holds the wake
`lock at the same time that the first application holds the wake
`lock and attributing additional power consumed during the
`wake lock in part to the first application and in part to the
`second application.
`The power consumptions for the activities can be estimated
`by identifying that the first application requests that a hard
`ware sensor be active. The operations can include recording
`information characterizing the power consumptions in asso
`40
`ciation with information identifying the hardware compo
`nents used by the applications to perform the activities.
`Other embodiments of this aspect include corresponding
`systems, apparatus, and method for performing the opera
`tions.
`The details of one or more implementations are set forth in
`the accompanying drawings and the description below. Other
`features, aspects, and advantages will become apparent from
`the description, the drawings, and the claims.
`
`10
`
`15
`
`25
`
`30
`
`35
`
`4
`FIG. 6 is a schematic representation of a system that imple
`ments a Software-based approach for identifying and attrib
`uting usage of a hardware component of a battery-operated
`electronic device.
`FIG. 7 is a flowchart of a process that can be performed by
`a battery-operated electronic device to provide a user with
`feedback regarding power consumption.
`FIG. 8 is a schematic representation of a collection of
`estimates of the power required by different components to
`perform different activities.
`FIG. 9 is a flowchart of a process that can be performed by
`a battery-operated electronic device to provide a user with
`feedback regarding power consumption.
`FIG. 10 is a schematic representation of a long term record
`of power consumption by different applications, as well as a
`record the power consumption for the present period by dif
`ferent applications.
`FIG. 11 is a schematic representation of how a user can be
`provided with feedback regarding power consumption by
`aspects of a battery-operated electronic device.
`Like reference numbers and designations in the various
`drawings indicate like elements.
`
`DETAILED DESCRIPTION
`
`FIG. 1 is a schematic representation of one way that a user
`can be provided with feedback regarding power consumption
`in a battery-operated electronic device 100. In general, device
`100 visually shows to a user a plurality of hardware compo
`nents or Software applications operating in device 100, along
`with a relative amount of power that each of those compo
`nents or applications is consuming from the device's battery
`system.
`Electronic device 100 can be, e.g., a telephone, music
`player, a PDA, a game player or other device that includes a
`display screen 105 that presents graphical images to a user. A
`portion of display screen 105 includes a power consumption
`feedback presentation 110. Power consumption feedback
`presentation 110 presents a user with feedback regarding
`power consumption by device 100 and can allow a user to
`understand how the battery power available to electronic
`device 100 has been or is likely to be spent.
`Feedback presentation 110 includes a period identifier 115
`and a collection of account entries 120, 125, 130, 135, 140,
`145, 150. Period identifier 115 includes text or other infor
`mation 155 that identifies the period of time for which power
`consumption feedback is presented in feedback presentation
`110. In the illustrated implementation, information 120 iden
`tifies that power consumption for a period of a certain dura
`tion (i.e., the “current period of the last three hours and 20
`minutes) is provided. In other implementations, power con
`sumption feedback can be provided for periods of time when,
`e.g., a certain user uses device 100, certain processes are
`running on device 100, or the like.
`Account entries 120, 125, 130, 135, 140, 145, 150 are
`records that present an accounting of the power consumption
`of device 100. Different entries 120, 125, 130, 135, 140,145,
`150 can present an accounting of different aspects of the
`power consumption Such as, e.g., the power consumption by
`one or more hardware components of device 100 or the power
`consumption by one or more software applications executed
`on of device 100. For example, in the illustrated implemen
`tation, account entry 120 presents an accounting of the power
`consumption by display screen 105. Account entry 130 pre
`sents an accounting of the power consumption by a map
`application.
`
`45
`
`50
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`FIG. 1 is a schematic representation of how a user can be
`provided with feedback regarding power consumption in a
`battery-operated electronic device.
`FIG. 2 is a schematic diagram of a battery-operated elec
`tronic device.
`FIG. 3 is a flowchart of a process that can be performed by
`a battery-operated electronic device to provide a user with
`feedback regarding power consumption.
`FIG. 4 is a schematic representation of a record of the
`power consumption by different aspects of an electronic
`device.
`FIG. 5 is a schematic representation of a system that imple
`ments a hardware-based approach for identifying and attrib
`uting usage of a hardware component of a battery-operated
`electronic device.
`
`55
`
`60
`
`65
`
`Page 12 of 21
`
`
`
`5
`In the illustrated implementation, each account entry 120,
`125, 130, 135, 140, 145, 150 includes a title 160, a pictorial
`symbol 165, a visual indicium of power consumption 170,
`and a textual indicium of power consumption 175. Title 160 is
`text that identifies the aspect of the power consumption of
`device 100 for which an accounting is presented in the respec
`tive entry. For example, title 160 in entry 140 identifies that
`entry 140 presents an accounting of power consumption by
`the operating system of device 100. Title 160 in entry 135
`identifies that entry 135 presents an accounting of power
`consumption by an idle phone of device 100.
`Pictorial symbols 165 are pictorial representations of the
`aspects of the power consumption of device 100 for which
`accountings are presented in the respective entries. For
`example, symbol 165 in entry 145 represents that entry 145
`presents an accounting of power consumption by tool appli
`cations of device 100. Symbol 165 in entry 125 identifies that
`entry 125 presents an accounting of power consumption by
`the standby State of a cellular communication system of
`device 100.
`Each visual indicia 170 and textual indicia 175 presents an
`accounting of the power consumption by the aspects identi
`fied by title 160 and represented by symbol 165 in each
`account entry 120, 125, 130, 135, 140,145,150. In the illus
`trated implementation, textual indicia 175 include text that
`identifies the percent of the total power consumed by different
`aspects. Visual indicia 170 are bars of different lengths. The
`lengths of the bars are normalized to the highest power con
`Sumption by any aspect during the period identified by period
`identifier 115. For example, in the illustrated implementation,
`visual indicia 170 in entries 120, 125 are the same length and
`are each represent 23% of the total power consumption during
`the current period. In contrast, visual indicium 170 in entry
`145 represents 10% of the total power consumption during
`the current period and is 19/23rds of the length of visual indicia
`170 in entries 120, 125. In other implementations, the char
`acteristics of visual indicia 170 can be normalized to, e.g., a
`total power consumption during the period identified by
`period identifier 115.
`FIG. 2 is a schematic diagram of another battery-operated
`electronic device 200. In general, the device 200 both pro
`vides a user with functionality and allows the user to obtain
`information about particular power consumption by certain
`of the power-consuming components or applications in the
`device 200.
`Device 200 includes a housing 205 onto which a touch
`screen display 210 is moveably mounted. Touch screen dis
`play 210 is moveable to expose and cover a keyboard 215. A
`portion of touch screen display 210 can include a power
`consumption feedback presentation 110 (FIG. 1). Power con
`Sumption feedback presentation 110 occupies all or a portion
`of touch screen display 210.
`Housing 205 houses a collection 220 of electronic hard
`ware components that cooperate to provide different func
`tionality to the user. Electronic hardware component collec
`tion 220 includes a data processing unit 225, a display
`interface 230, a phone interface and component 235, a wire
`less interface and component 240, and a sensor interface and
`component 245. Data processing unit 225, interface 230, and
`interface and components 235, 240, 245 can be implemented
`in electronic circuitry, in computer Software, firmware, or
`hardware, or in combinations of these and other elements.
`Display interface 230 is a device that is configured to allow
`data processing unit 225 to direct the presentation of infor
`mation on touch screen display 210. For example, display
`interface 230 can receive instructions for displaying content
`on touch screen display 210 from data processing unit 225.
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`US 8,280,456 B2
`
`5
`
`10
`
`15
`
`6
`Display component 230 can translate those instructions and
`cause the content to be appropriately presented on touch
`screen display 210.
`Phone interface and component 235 is a phone and an
`interface that is configured to allow data processing unit 225
`to exchange data with the phone. Wireless interface and com
`ponent 240 is a wireless transceiver and an interface that is
`configured to allow data processing unit 225 to exchange data
`with the wireless transceiver. Wireless interface and compo
`nent 240 canthus communicate with other devices on a wire
`less network. Sensor interface and component 245 is a sensor
`and an interface that is configured to allow data processing
`unit 225 to exchange data with the sensor. The sensor can be,
`e.g., a hardware sensors such as an accelerometer, a compass,
`a global positioning system, a digital camera, or the like.
`Data processing unit 225 is a device that is configured to
`process digital data. Data processing unit 225 can be, e.g., a
`generic purpose data processor that performs operations in
`accordance with the instructions of application and other
`programs. Among the operations performed by data process
`ing unit 225 is a consumption feedback application 250.
`Consumption feedback application 250 is a set of data
`processing activities that are designed to create and account
`ing of the consumption of power by different aspects of
`device 200 so that feedback regarding that power consump
`tion can be provided to a user.
`During the performance of the activities of consumption
`monitor 250, data processing unit 225 can access conversion
`rules 255 and write to consumption records 260. Conversion
`rules 255 and consumption records 260 are stored in device
`200, e.g., in one or more persistent data storage devices.
`Various forms of persistent data storage may be provided,
`e.g., fixed disk drives and/or solid state memory devices.
`Conversion rules 255 are rules for converting characteristics
`of the operations performed by device 200 into a power con
`sumption. Consumption records 260 are historical records of
`the power consumed by different aspects of the device and its
`operations. For example, consumption records 260 can pro
`vide an accounting of the power consumption by the same
`aspects identified and represented in account entries 120,125,
`130, 135, 140,145, 150 (FIG. 1).
`FIG.3 is a flowchart of a process 300 that can be performed
`by a battery-operated electronic device to provide a user with
`feedback regarding power consumption. Process 300 can be
`performed by one or more digital data processing devices that
`perform operations by executing one or more sets of machine
`readable instructions. For example, process 300 can be per
`formed by data processing unit 225 executing consumption
`feedback application 250 in device 200 (FIG. 2). Process 300
`can be performed in isolation or in conjunction with other
`digital data processing operations.
`The device performing process 300 can identify the usage
`of a hardware component of a battery-operated device at
`block 305. The usage of a hardware component can be iden
`tified, e.g., by monitoring power drawn by the hardware com
`ponent, by monitoring for activities performed by applica
`tions with the component, or by monitoring for messages
`Such as instructions to the hardware component or descrip
`tions of the activities from the applications themselves. For
`example, in the context of FIG. 2, the content of instructions
`sent from data processing unit 225 to one or more of interface
`230 and interface and components 235, 240, 245 can be
`relayed to consumption feedback application 250 so that it
`can identify usage of the destination interfaces and compo
`nentS.
`The device performing process 300 can attribute the power
`consumption during the usage of the component to an aspect
`
`Page 13 of 21
`
`
`
`US 8,280,456 B2
`
`10
`
`15
`
`7
`of the device at block 310. For example, power consumption
`can be attributed to a hardware component of the device (e.g.,
`to a display screen, to a cellphone, to a transceiver, to a data
`processing unit, to a digital camera, or to an accelerometer or
`other sensor) or power consumption can be attributed to an
`application executed by the device (e.g., to the operating
`system Software, to a map application, to a game application,
`to mail or other messaging application, to a web browser
`application, to a music or video player application, or to a tool
`application).
`In some implementations, power consumption during
`usage of the component can be attributed to multiple aspects
`of the device. For example, power consumed by an acceler
`ometer during a game can be attributed to both the acceler
`ometer and to the game itself. As another example, the addi
`tional power that is consumed during awake lock that is held
`by more than one application can be attributed to all of the
`holding applications, as described further below.
`The device performing process 300 can record the attrib
`uted power consumption, e.g., in a persistent data storage
`device at block 315. For example, the device can record an
`estimate or a measurement of the amount of power that was
`consumed during the component usage in association with an
`identifier of the aspect to which that usage was attributed in a
`data table or other data structure. Such recording can in effect
`create a historical record of the power consumption by dif
`ferent aspects of the device.
`The device performing process 300 also presents feedback
`regarding the power consumption of the device to a user at
`block 320. For example, in some implementations, the system
`can present one or more of power consumption feedback
`presentation 110 (FIG. 1), and power consumption feedback
`presentations 1105, 1110 (FIG. 11) to present feedback
`regarding power consumption by different aspects of an elec
`tronic device.
`FIG. 4 is a schematic representation of a record 400 of the
`power consumption by different aspects of an electronic
`device. Record 400 can be used as consumption records 260
`in electronic device 200 (FIG. 2) and can be formed during
`block 315 in process 300 (FIG. 3).
`Record 400 includes a history by component table 405 and
`a history by application table 410. History by component
`table 405 is a data structure that associates identifiers of the
`components to which power consumption is attributed in a
`column 415 with information describing the amount of power
`attributed to those respective components in a column 420.
`History by application table 410 is a data structure that asso
`ciates identifiers of the applications to which power consump
`tion is attributed in a column 425 with information describing
`the amount of power attributed to those respective applica
`tions in a column 430. The information stored in record 400
`can be accessed by data processing unit 225 during data
`processing activities such as consumption feedback applica
`tion 250 (FIG. 2).
`FIG. 5 is a schematic representation of a system 500 that
`implements a hardware-based approach for identifying and
`attributing usage of a hardware component of a battery-oper
`ated electronic device. In addition to a data processing unit
`225 that executes a consumption feedback application 250,
`60
`system 500 also includes a component interface 505, a com
`ponent 510, and a power measurement unit 515. Component
`interface 505 and component 510 are components of a bat
`tery-operated electronic device. For example, Component
`interface 505 and component 510 can be, e.g.