Patent Description:
An electronic device in an off-power mode can take a long time to power up. Time cost associated with powering up the electronic device results in a loss of work productivity. However, maintaining the electronic device in an on-power mode is not energy efficient.

<CIT> relates to a method of controlling the power state of a peripheral device. In the method, the peripheral is changed from a first power state to a second power state in response to communications across a network connected to the peripheral indicating that a user is proximately located to the peripheral. A user may be determined to be proximately located to the peripheral by monitoring communications across the network to detect traffic that is associated with a user logging onto a computer that can utilize the peripheral, by discovering a wireless terminal that is associated with a user and which is proximately located to the peripheral, by receiving information from a cellular communication network across the network that indicates that a user of the peripheral is proximately located to the peripheral, and/or in response to a time of day and/or day of week/month schedule.

<CIT> relates to a system and method for reducing the power consumption by putting the system in sleep and use mobility context receiving device continue to monitor the context and wake up the system when discover the trigger state. After the system waked up, the application executes the job that is triggered by said trigger state. Said job might include reminder, TODO-List warning, e-mail retrieval, computer system or network login, control other appliances, etc. Said mobility context receiving device may also automatically interrupt the said application while the system is powered on. Said mobility context receiving device includes wireless communication interface or positioning device. Said application might be a person sensitive reminder, a TO-DO list warning system, automatic login and e-mail retriever, and automatic appliance controller, proximity sensitive file manager, etc..

Additional features and advantages of the subject technology will be set forth in the description below, and in part will be apparent from the description, or may be learned by practice of the subject technology. The advantages of the subject technology will be realized and attained by the structure particularly pointed out in the written description and claims hereof as well as the appended drawings.

The accompanying drawings, which are included to provide further understanding of the subject technology and are incorporated in and constitute a part of this specification, illustrate aspects of the subject technology and together with the description serve to explain the principles of the subject technology. In the drawings:.

The detailed description set forth below is intended as a description of various configurations of the subject technology and is not intended to represent the only configurations in which the subject technology may be practiced. It will be apparent, however, that the subject technology is not limited to the specific details set forth herein and may be practiced without these specific details. In some instances, structures and components are shown in block diagram form in order to avoid obscuring the concepts of the subject technology.

In accordance with the subject disclosure, a system and a method for managing a power mode of a designated electronic device are provided. A designated electronic device may include any electronic device that includes a hardware component (e.g., a network card) that can receive a signal indicating a request to turn on the designated electronic device while the electronic device is in off-power mode. The mobile electronic device and the designated electronic device may be set up to recognize each other during an initial setup phase. The geographical location of the designated electronic device is provided to the mobile electronic device. The mobile electronic device periodically determines its geographical location and compares its determined geographical location with the stored location of the designated electronic device to determine the proximity of the mobile device with respect to the designated electronic device. The mobile electronic device sends a wake-up signal to the designated electronic device if the determined geographical location of the mobile electronic device is within a proximity threshold of the designated electronic device. A communication protocol (e.g., WiFi, Bluetooth, etc.) that is supported by both the mobile electronic device and the designated electronic device may be used to transmit the wake-up signal.

The mobile electronic device continues to periodically determine its geographical location and compares its determined geographical location with the stored location of the designated electronic device even after it stops sending the wake-up signal to the designated electronic device. However, the mobile electronic device resets as soon as it leaves the proximity range, and will resend the wake-up signal to the designated electronic device when the mobile electronic device reenters the proximity range.

<FIG> illustrates an example network environment for managing a power mode of a designated electronic device. Network environment <NUM> includes electronic devices <NUM> and <NUM>, and geolocation systems <NUM> and <NUM>. Geolocation systems include a system or group of systems that broadcast signals that allow mobile electronic device <NUM> to determine its geographical location. In the example of <FIG>, geolocation system <NUM> is depicted as a satellite navigation system, and geolocation system <NUM> is depicted as base stations.

Mobile electronic device <NUM> may include any electronic device with hardware and software components to determine its geographical location. In the example of <FIG>, mobile electronic device <NUM> is depicted as a smartphone device. Additional examples of mobile electronic device includes tablet computers, laptop computers, PDAs, etc. Designated electronic device <NUM> may include any electronic device that includes a hardware component (e.g., a network card) that can receive a signal while the electronic device is in off-power mode. For example, the designated electronic device may contain a network card that remains enabled to receive signals while the designated electronic device is in off-power mode. Designated electronic device <NUM> is also configured to enter a power-on mode upon receipt of a wake-up signal. In the example of <FIG>, designated electronic device <NUM> is depicted as a desktop computer. Additional examples of designated electronic device <NUM> includes laptop computers, work stations, etc..

Satellite navigation system <NUM> include multiple satellites that broadcast signals to mobile electronic device. Example Satellite navigation systems include the Global Positioning System (GPS), Galileo System, Global Navigation Satellite System (GLONASS), Compass Navigation System (Compass), etc. In one example, mobile electronic device <NUM> determines its distance to one or more satellites of satellite navigation system <NUM>. Mobile electronic device <NUM> then determines its geographical location based on the determined distances between mobile electronic device <NUM> and the one or more satellites of satellite navigation system <NUM>.

Base stations <NUM> may be a single cell site or a network of cell sites that communicate with mobile electronic device <NUM>. Base stations <NUM> may include communication devices (e.g., antennas, transceivers, etc.) for different communication protocols (e.g., WiMax, WiFi, CDMA, etc.). Mobile electronic device <NUM> may determine its distance to one or more base stations <NUM> and determine its geographical location based on the determined distances between mobile electronic device <NUM> and the one or more base stations <NUM>.

Mobile electronic device <NUM> may communicate with geolocation system <NUM> and/or base stations <NUM> to establish the mobile electronic device's geographical location. Mobile electronic device <NUM> compares the determined geographical location of the mobile electronic device with a stored location of a designated electronic device in a power-off mode. In one example, mobile electronic device <NUM> may receive the geographical location of designated electronic device <NUM> via a user input and store the geographical location of designated electronic device <NUM> as the stored location.

Mobile electronic device <NUM> sends a wake-up signal to the designated electronic device if the determined geographical location of the mobile electronic device is within a proximity threshold of designated electronic device <NUM>. Designated electronic device <NUM>, upon receipt of the wake-up signal, enters into a power-on mode. The proximity threshold may be preselected or may be user designated. The comparison of the distance between mobile electronic device <NUM> and designated electronic device <NUM> may be done periodically, or may be done each time the mobile electronic device's geographical location is updated.

Upon determining that mobile electronic device <NUM> is within proximity of designated electronic device <NUM>, mobile electronic device <NUM> may use a communication protocol that is supported by mobile electronic device <NUM> and designated electronic device <NUM> to transmit the wake-up signal to designated electronic device <NUM>. Examples of a communication protocol include Bluetooth, WiFi, Near Field Communication (NFC), Ethernet, etc..

Mobile electronic device <NUM> repeatedly sends the wake-up signal to designated electronic device <NUM> for a designated period of time to ensure that designated electronic device <NUM> has received the wake-up signal. The electronic device may designate additional prerequisite conditions for sending the wake-up signal to the designated electronic device. In this case, the wake-up signal is sent to designated electronic device <NUM> if mobile electronic device <NUM> is within a proximity of designated electronic device <NUM> and if prerequisites for sending the wake-up signal are met.

Mobile electronic device <NUM> periodically updates its geographical location and calculate its proximity to designated electronic device <NUM> after mobile electronic device <NUM> has transmitted the wake-up signal to designated electronic device <NUM>. Mobile electronic device subsequently enters into a reset mode after transmitting the wake-up signal to designated electronic device <NUM> if the distance between its most recently determined geographical location and the stored location of designated electronic device <NUM> exceeds the proximity threshold. If Mobile electronic device <NUM>, subsequent to entering reset mode, determines that it is within the proximity threshold of the designated electronic device, it sends another wake-up signal to designated electronic device <NUM>.

<FIG> illustrates an example process for managing a power mode of a designated electronic device. Although the operations in process <NUM> are shown in a particular order, certain operations may be performed in different orders or at the same time.

Mobile electronic device (e.g., smartphone device, tablet computer, laptop computer, PDA, etc.) determines its geographical location in block S202. Mobile electronic device <NUM> also obtains a geographical location of a designated electronic device <NUM> (e.g., desktop computer, server computer, etc.). In one example, mobile electronic device <NUM> receives a user input of the geographical location of designated electronic device <NUM> and stores the received geographical location of designated electronic device <NUM> as the stored location. In another example, mobile electronic device <NUM> receives a data packet from designated electronic device <NUM> that includes the geographical location of designated electronic device <NUM> during a setup phase and stores the received geographical location of designated electronic device <NUM> as the stored location.

In block S204, mobile electronic device <NUM> calculates its distance to designated electronic device <NUM> (e.g., desktop computer, server computer, etc.). In block S206, if designated electronic device <NUM> is not within proximity of mobile electronic device <NUM>, the process returns to block <NUM> where mobile electronic device <NUM> repeats the process of determining its geographical location. Alternatively, if designated electronic device <NUM> is within proximity of mobile electronic device <NUM>, the process proceeds to block <NUM>.

In block <NUM>, mobile electronic device <NUM> sends a signal to designated electronic device <NUM> to power up the designated electronic device. Mobile electronic device <NUM> repeatedly sends the wake-up signal to designated electronic device <NUM> for a designated period of time. The wake-up signal can be transmitted by communication protocols (e.g., Bluetooth, WiFi, etc.) that are supported by both the mobile electronic device and the designated electronic device.

Mobile electronic device <NUM> may designate one or more additional prerequisite conditions which are required to be fulfilled in order to send the wake-up signal. The one or more additional prerequisite conditions may be predetermined or user designated. One example condition includes specifying a period of time (e.g., certain hours during a day, certain days in a week, certain days in a month, certain hours during certain days, etc.) during which sending the wake-up signal to the designated electronic device is permitted. Under such condition, mobile electronic device <NUM> would only send a wake-up signal to designated electronic device <NUM> during the designated hours and when both electronic devices are within proximity of each other.

Mobile electronic device <NUM> determines geographical location of mobile electronic device <NUM> in block <NUM>. In block S212, mobile electronic device <NUM> calculates its proximity to designated electronic device <NUM>. In block S214, mobile electronic device <NUM> determines if it is not within proximity of designated electronic device <NUM>. If the distance between mobile electronic device <NUM> and designated electronic device <NUM> remains within the threshold value, the process returns to block S210 where the process described in blocks S210, S212, and S214 is repeated. If the distance between mobile electronic device <NUM> and designated electronic device <NUM> exceeds the threshold value, then mobile electronic device <NUM> enters into a reset mode and the process returns to block <NUM>.

<FIG> provides an example illustration for sending a wake-up signal from a mobile electronic device to a designated electronic device when the mobile electronic device is within a proximity threshold of the designated electronic device. The dotted circle as shown in <FIG> represents a threshold proximity of designated electronic device <NUM>. Mobile electronic devices are represented as a smartphone device <NUM>, and a tablet computer <NUM>. A designated electronic device is represented as a desktop computer <NUM>. Smartphone device <NUM> and tablet computer <NUM> both contain the geographical location of desktop computer <NUM>. In one example, desktop computer provides smartphone <NUM> with the desktop computer's geographical location when the respective electronic devices <NUM> and <NUM> were set up to recognize each other. In another example, tablet computer <NUM> stores a user-designated location of desktop computer <NUM>.

Smartphone device <NUM> and tablet computer <NUM> both include hardware and software that provides the respective mobile electronic devices with their geographical location. As shown in <FIG>, smartphone device <NUM> obtains its geographical location based on signals transmitted from satellite navigation system <NUM>. As shown in <FIG>, tablet computer <NUM> obtains its geographical location from signals transmitted from base stations <NUM>. Smartphone device <NUM> and tablet computer <NUM> periodically calculates distance between their respective geographical locations and the location of desktop computer <NUM> to determine their respective proximity with respect to desktop computer <NUM>.

Smartphone device <NUM>, upon entering a proximity of desktop computer <NUM>, transmits a wake-up signal to desktop computer <NUM> directly (e.g., via Bluetooth). Similarly, tablet computer <NUM>, upon entering proximity of desktop computer <NUM>, transmits a wake-up signal to desktop computer <NUM> via a networking device <NUM> (e.g., a router). Desktop computer <NUM> includes a hardware component (e.g., a network card) that can receive the wake-up signal even when the device is in an off-power mode. Upon receipt of the wake-up signal, the hardware component initiates a powering up desktop computer <NUM>.

Many of the above-described features and applications are implemented as software processes that are specified as a set of instructions recorded on a computer readable storage medium (also referred to as computer readable medium). When these instructions are executed by one or more processing unit(s) (e.g., one or more processors, cores of processors, or other processing units), they cause the processing unit(s) to perform the actions indicated in the instructions. Examples of computer readable media include, but are not limited to, CD-ROMs, flash drives, RAM chips, hard drives, EPROMs, etc. The computer readable media does not include carrier waves and electronic signals passing wirelessly or over wired connections.

In this specification, the term "software" is meant to include firmware residing in read-only memory or applications stored in magnetic storage, which can be read into memory for processing by a processor. Also, in some implementations, multiple software aspects of the subject disclosure can be implemented as sub-parts of a larger program while remaining distinct software aspects of the subject disclosure. In some implementations, multiple software aspects can also be implemented as separate programs. Finally, any combination of separate programs that together implement a software aspect described here is within the scope of the subject disclosure. In some implementations, the software programs, when installed to operate on one or more electronic systems, define one or more specific machine implementations that execute and perform the operations of the software programs.

A computer program (also known as a program, software, software application, script, or code) can be written in any form of programming language, including compiled or interpreted languages, declarative or procedural languages, and it can be deployed in any form, including as a stand alone program or as a module, component, subroutine, object, or other unit suitable for use in a computing environment.

<FIG> conceptually illustrates an electronic system with which some implementations of the subject technology are implemented. In certain aspects, the computer system <NUM> may be implemented using hardware or a combination of software and hardware, either in an electronic device <NUM>, <NUM>, or integrated into another entity, or distributed across multiple entities.

Computer system <NUM> (e.g., electronic device <NUM>, <NUM>, and access point <NUM>) includes a bus <NUM> or other communication mechanism for communicating information, and a processor <NUM> coupled with bus <NUM> for processing information. By way of example, the computer system <NUM> may be implemented with one or more processors <NUM>. Processor <NUM> may be a general-purpose microprocessor, a microcontroller, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA), a Programmable Logic Device (PLD), a controller, a state machine, gated logic, discrete hardware components, or any other suitable entity that can perform calculations or other manipulations of information.

Computer system <NUM> can include, in addition to hardware, code that creates an execution environment for the computer program in question, e.g., code that constitutes processor firmware, a protocol stack, a database management system, an operating system, or a combination of one or more of them stored in an included memory <NUM>, such as a Random Access Memory (RAM), a flash memory, a Read Only Memory (ROM), a Programmable Read-Only Memory (PROM), an Erasable PROM (EPROM), registers, a hard disk, a removable disk, a CD-ROM, a DVD, or any other suitable storage device, coupled to bus <NUM> for storing information and instructions to be executed by processor <NUM>. The processor <NUM> and the memory <NUM> can be supplemented by, or incorporated in, special purpose logic circuitry.

The instructions may be stored in the memory <NUM> and implemented in one or more computer program products, i.e., one or more modules of computer program instructions encoded on a computer readable medium for execution by, or to control the operation of, the computer system <NUM>, and according to any method well known to those of skill in the art, including, but not limited to, computer languages such as data-oriented languages (e.g., SQL, dBase), system languages (e.g., C, Objective-C, C++, Assembly), architectural languages (e.g., Java,. NET), and application languages (e.g., PHP, Ruby, Perl, Python). Instructions may also be implemented in computer languages such as array languages, aspect-oriented languages, assembly languages, authoring languages, command line interface languages, compiled languages, concurrent languages, curly-bracket languages, dataflow languages, data-structured languages, declarative languages, esoteric languages, extension languages, fourth-generation languages, functional languages, interactive mode languages, interpreted languages, iterative languages, list-based languages, little languages, logic-based languages, machine languages, macro languages, metaprogramming languages, multiparadigm languages, numerical analysis, non-English-based languages, object-oriented class-based languages, object-oriented prototype-based languages, off-side rule languages, procedural languages, reflective languages, rule-based languages, scripting languages, stack-based languages, synchronous languages, syntax handling languages, visual languages, wirth languages, and xml-based languages. Memory <NUM> may also be used for storing temporary variable or other intermediate information during execution of instructions to be executed by processor <NUM>.

A computer program as discussed herein does not necessarily correspond to a file in a file system. A program can be stored in a portion of a file that holds other programs or data (e.g., one or more scripts stored in a markup language document), in a single file dedicated to the program in question, or in multiple coordinated files (e.g., files that store one or more modules, subprograms, or portions of code).

Computer system <NUM> further includes a data storage device <NUM> such as a magnetic disk or optical disk, coupled to bus <NUM> for storing information and instructions. Computer system <NUM> may be coupled via input/output module <NUM> to various devices. The input/output module <NUM> can be any input/output module. Exemplary input/output modules <NUM> include data ports such as USB ports. The input/output module <NUM> is configured to connect to a communications module <NUM>. Exemplary communications modules <NUM> include networking interface cards, such as Ethernet cards and modems. In certain aspects, the input/output module <NUM> is configured to connect to a plurality of devices, such as an input device <NUM> and/or an output device <NUM>. Exemplary input devices <NUM> include a keyboard and a pointing device, e.g., a mouse or a trackball, by which a user can provide input to the computer system <NUM>. Other kinds of input devices <NUM> can be used to provide for interaction with a user as well, such as a tactile input device, visual input device, audio input device, or brain-computer interface device. For example, feedback provided to the user can be any form of sensory feedback, e.g., visual feedback, auditory feedback, or tactile feedback; and input from the user can be received in any form, including acoustic, speech, tactile, or brain wave input. Exemplary output devices <NUM> include display devices, such as a CRT (cathode ray tube) or LCD (liquid crystal display) monitor, for displaying information to the user.

According to one aspect of the present disclosure, the electronic device <NUM>, <NUM>, and access point <NUM> can be implemented using a computer system <NUM> in response to processor <NUM> executing one or more sequences of one or more instructions contained in memory <NUM>. Such instructions may be read into memory <NUM> from another machine-readable medium, such as data storage device <NUM>. One or more processors in a multi-processing arrangement may also be employed to execute the sequences of instructions contained in memory <NUM>. In alternative aspects, hard-wired circuitry may be used in place of or in combination with software instructions to implement various aspects of the present disclosure. Thus, aspects of the present disclosure are not limited to any specific combination of hardware circuitry and software.

Various aspects of the subject matter described in this specification can be implemented in a computing system that includes a back end component, e.g., as a data server, or that includes a middleware component, e.g., an application server, or that includes a front end component, e.g., a computer device having a graphical user interface or a Web browser through which a user can interact with an implementation of the subject matter described in this specification, or any combination of one or more such back end, middleware, or front end components. The communication network can include, for example, any one or more of a personal area network (PAN), a local area network (LAN), a campus area network (CAN), a metropolitan area network (MAN), a wide area network (WAN), a broadband network (BBN), the Internet, and the like. Further, the communication network can include, but is not limited to, for example, any one or more of the following network topologies, including a bus network, a star network, a ring network, a mesh network, a star-bus network, tree or hierarchical network, or the like. The communications modules can be, for example, modems or Ethernet cards.

Computing system <NUM> can include electronic devices <NUM>, and <NUM>, and access points <NUM>. An electronic device <NUM>, <NUM> and access point <NUM> are generally remote from each other. The relationship of the electronic device <NUM>, <NUM>, and access point <NUM> arises by virtue of computer programs running on the respective computers and having an electronic device-electronic device or electronic device-access point relationship to each other. Computer system <NUM> can be, for example, and without limitation, a touchscreen device, a desktop computer, laptop computer, or tablet computer. Computer system <NUM> can also be embedded in another device, for example, and without limitation, a mobile telephone, a personal digital assistant (PDA), a mobile audio player, a Global Positioning System (GPS) receiver, a video game console, and/or a television set top box.

The term "machine-readable storage medium" or "computer readable medium" as used herein refers to any medium or media that participates in providing instructions to processor <NUM> for execution. Such a medium may take many forms, including, but not limited to, non-volatile media, volatile media, and transmission media. Non-volatile media include, for example, optical or magnetic disks, such as data storage device <NUM>. Volatile media include dynamic memory, such as memory <NUM>. Transmission media include coaxial cables, copper wire, and fiber optics, including the wires that comprise bus <NUM>. Common forms of machine-readable media include, for example, floppy disk, a flexible disk, hard disk, magnetic tape, any other magnetic medium, a CD-ROM, DVD, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, a RAM, a PROM, an EPROM, a FLASH EPROM, any other memory chip or cartridge, or any other medium from which a computer can read. The machine-readable storage medium can be a machine-readable storage device, a machine-readable storage substrate, a memory device, a composition of matter effecting a machine-readable propagated signal, or a combination of one or more of them.

While this specification contains many specifics, these should not be construed as limitations on the scope of what may be claimed, but rather as descriptions of particular implementations of the subject matter.

Moreover, the separation of various system components in the aspects described above should not be understood as requiring such separation in all aspects, and it should be understood that the described program components and systems can generally be integrated together in a single software product or packaged into multiple software products.

Claim 1:
A computer-implemented method for managing a power mode of a designated electronic device, the method comprising:
determining, by a mobile electronic device, a geographical location of the mobile electronic device (S2O2);
comparing, by the mobile electronic device, the determined geographical location of the mobile electronic device with a stored location of a designated electronic device, the designated electronic device being in a power-off mode (S2O6); and
repeatedly sending, by the mobile electronic device, a wake-up signal to the designated electronic device, for a designated period of time, if the determined geographical location of the mobile electronic device is within a proximity threshold of the designated electronic device (S2O8), wherein the wake-up signal is configured to cause the designated electronic device to enter a power-on mode upon receipt of the wake-up signal;
periodically updating, by the mobile electronic device, the geographical location of the mobile electronic device, wherein the periodically updating continues after the mobile device stops sending the wake-up signal to the designated electronic device; and
resetting the mobile electronic device if a distance between the updated geographical location of the mobile device and the stored location of the designated electronic device exceeds the proximity threshold, wherein resetting the mobile electronic device causes it to enter a reset mode,
wherein another wake-up signal is sent by the reset mobile electronic device to the designated electronic device if, subsequent to entering the reset mode, the reset mobile electronic device is determined to be within a proximity threshold of the designated electronic device.