Patent Publication Number: US-7590403-B1

Title: Wireless device dormancy override

Description:
FIELD OF THE INVENTION 
     The present invention relates to wireless devices; more particularly, the present invention relates to power management of a wireless device. 
     BACKGROUND 
     A variety of wireless data processing devices have been introduced over the past several years. These include wireless personal digital assistants (“PDAs”) such as Palm® VIIx handheld, cellular phone equipped with data processing capabilities and more recently, corporate wireless messaging devices such as the Blackberry™ wireless pager developed by Research in Motion (“RIM”)™. 
     While many of these wireless devices maintain a network data connection, their radio modules transition between an active state and a dormant state. The radio module enters into the active state in order to send or receive data. While the radio is in the active state, all incoming telephone calls go straight to voicemail. Also, when the radio module is in the active state the battery is drained at a much faster rate than when in the dormant state. 
     Various wireless networks (e.g., Code Division Multiple Access (CDMA)) benefit from the radio module remaining in the active state for a longer period of time because networks expend a significant amount of resources in order to switch the radio module between the dormant state and the active state. The resources are expended in order to locate a wireless device, which must occur before any data can be transmitted. Therefore, the networks have carrier configurable timeouts that prevent the wireless device from quickly reentering the dormant state. These timeouts can range from 10-20 seconds depending on the carrier. For a power user, a wireless device, due to these timeout values, could be in the active state for 25% of the time during business hours, thus making the wireless device unavailable to receive incoming calls as well as draining the battery at an unacceptable rate. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       The present invention will be understood more fully from the detailed description given below and from the accompanying drawings of various embodiments of the invention. The drawings, however, should not be taken to limit the invention to the specific embodiments, but are for explanation and understanding only. 
         FIG. 1  illustrates one embodiment of a wireless network; 
         FIG. 2  illustrates a block diagram of one embodiment of a wireless device; 
         FIG. 3  is a flow diagram illustrating one embodiment of a radio module on a wireless device changing states; and 
         FIG. 4  illustrates a computer system. 
     
    
    
     DETAILED DESCRIPTION 
     According to one embodiment a power management mechanism for a wireless device is described. Reference in the specification to “one embodiment” or “an embodiment” means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the invention. The appearances of the phrase “one embodiment” in various places in the specification are not necessarily all referring to the same embodiment. 
     The present invention also relates to an apparatus for performing the operations herein. This apparatus may be specially constructed for the required purposes, or it may comprise a general-purpose computer selectively activated or reconfigured by a computer program stored in the computer. Such a computer program may be stored in a computer readable storage medium, such as, but is not limited to, any type of disk including floppy disks, optical disks, CD-ROMs, and magnetic-optical disks, read-only memories (ROMs), random access memories (RAMs), EPROMs, EEPROMs, magnetic or optical cards, or any type of media suitable for storing electronic instructions, and each coupled to a computer system bus. 
       FIG. 1  illustrates one embodiment of a wireless network architecture including a customer site  120 . Customer site  120  illustrated in  FIG. 1  may be any local-area or wide-area network over which a plurality of servers  103  and clients  110  communicate. For example, customer site  120  may include all servers and clients maintained by a single corporation. Servers  103  may be configured to provide a variety of different messaging and groupware services  102  to network users (e.g., email, instant messaging, calendaring, . . . etc.). In one embodiment, these services are provided by Microsoft Exchange™. However, the underlying principles of the invention are not limited to any particular messaging/groupware platform. 
     In one embodiment of the invention, an interface  100  forwards data maintained by service  102  (e.g., email messages, instant messages, calendar data, . . . etc.) to a plurality of wireless data processing devices (represented in  FIG. 1  by wireless device  130 ) via an external data network  170  and or a wireless service provider network  171 . For example, if service  102  includes an email database, interface  100  forwards any new emails which arrive in a user&#39;s mailbox on service  102  to the user&#39;s wireless device  130  (over the network(s)  170  and or  171 ). Alternatively, or in addition, service  102  may forward the email to the user&#39;s local computer (e.g., client  110 ) (i.e., so that the user will receive the email on his/her wireless device  130  when out of the office and on his/her personal computer  110  when in the office). Conversely, email messages sent from the user&#39;s wireless device  130  are transmitted to service  102  via interface  100 . 
     In one embodiment, interface  100  is a plug-in software module adapted to work with the particular service  120 . It should be noted, however, that interface  100  may be implemented in hardware or any combination of hardware and software while still complying with the underlying principles of the invention. 
     In one embodiment, external data network  170  is comprised of a plurality of servers/clients (not shown) and other networking hardware (e.g., routers, hubs, . . . etc.) for forwarding data between interface  100  and wireless devices  130 . In one embodiment, interface  100  encapsulates data in one or more packets containing an address identifying wireless devices. External data network  170  forwards the packets to wireless service provider network  171  which transmits the packets (or the data contained therein) over a wireless communication link to wireless device  130 . In one embodiment, the wireless service provider network is a CDMA network. However, various other network types may be employed (e.g., 2-way Paging, PCS, . . . etc.) while still complying with the underlying principles of the invention. 
     It should be noted that network service provider network  171  and external data network  170  (and associated interface  100 ) may be owned/operated by the same organization or, alternatively, the owner/operator of external data network  170  may lease wireless services from the wireless service provider network. The underlying principles of the invention are not limited to any particular service arrangement. 
       FIG. 2  illustrates a block diagram of one embodiment of a wireless device  130 . Wireless device  130  includes radio module  200 , CDMA hardware  210 , application program interface (API)  220 , and application  240  which includes timer  230 . 
     Radio module  200  is a radio application that wirelessly connected to a wireless network, such as network  171  shown in  FIG. 1 , to transmit data to and receive data from the network. In one embodiment, radio module  200  receives timeout information from the network. In such an embodiment, the timeout information keeps radio module  200  in an active state, therefore preventing radio module  200  from switching to a dormant state, as previously discussed. 
     API  220  is used to facilitate communication between application  240  and radio module  200 . In one embodiment, API  220  is included in the operating system (O/S) of device  130  and radio module  200  is included in firmware of device  130 . 
     In one embodiment, application  240  is the GoodLink™ application developed by Good Technology® of Santa Clara, Calif. Application  240  maintains an internet connection, supports wireless synchronization of data and provides access to the World Wide Web (WWW). 
     In another embodiment, API  220  forces radio module  200  into the dormant state upon receiving a signal from timer  230  via application  240 . Timer  230  is used to override the timeout information transmitted by the wireless network. In one embodiment, timer  230  is set to a predetermined time interval (e.g. 5 seconds) each time wireless device  130  transmits and or receives data. Timer allows radio module  200  to switch to the dormant state more quickly, as opposed to being forced to remain in the active state much longer by the network. 
     CDMA hardware  210  allows for wireless device  130  to transmit and receive data to and from the network. Radio module  200  switching to the dormant state allows wireless device  130  to conserve battery life, as well as enables wireless device  130  to receive incoming telephone calls, as opposed to sending them directly to voicemail. 
       FIG. 3  is a flow diagram illustrating one embodiment of a radio module on a wireless device changing states. At process block  310 , wireless device  130  transmits data to the network, and receives data from the network. At process block  320 , timer  230  is set to a predetermined time interval (e.g. 5 seconds). At process block  330 , the time interval set by timer  230  expires. 
     At decision block  350 , it is determined whether there is data to be transmitted and or received at device  130 . If there is data to be transmitted and or received, the process moves back to process block  310  where data is transmitted to or received from the network. In one embodiment, the data to be received is an acknowledgment from server  103  indicating receipt of data recently transmitted from device  130 . Even though timer  230  has expired (process block  330 ), device  130  remains in the active state if the acknowledgment has not yet been received. 
     If there is no data to be transmitted and or received and no pending acknowledgments, the process moves to process block  340  where device  130  is forced into the dormant state. 
     The power management mechanism described above transitions a wireless device to a dormant state sooner than would occur via a wireless network. Thus, the wireless device is able to conserve battery life. In addition, because the wireless device is in the dormant state for an increased amount of time, it is more often able to receive incoming telephone calls as opposed to sending the calls directly to voicemail. 
       FIG. 4  illustrates a computer system  400  on which wireless device  130  and or server  103  may be implemented. Computer system  400  includes a system bus  420  for communicating information, and a processor  410  coupled to bus  420  for processing information. According to one embodiment, processor  410  is implemented using one of the multitudes of ARM™ microprocessors. Nevertheless one of ordinary skill in the art will appreciate that other processors may be used. 
     Computer system  400  further comprises a random access memory (RAM) or other dynamic storage device  425  (referred to herein as main memory), coupled to bus  420  for storing information and instructions to be executed by processor  410 . Main memory  425  also may be used for storing temporary variables or other intermediate information during execution of instructions by processor  410 . Computer system  400  also may include a read only memory (ROM) and or other static storage device  426  coupled to bus  420  for storing static information and instructions used by processor  410 . 
     A data storage device  425  such as a magnetic disk or optical disc and its corresponding drive may also be coupled to computer system  400  for storing information and instructions. Computer system  400  can also be coupled to a second I/O bus  450  via an I/O interface  430 . A plurality of I/O devices may be coupled to I/O bus  450 , including a display device  424 , an input device (e.g., an alphanumeric input device  423  and or a cursor control device  422 ). The communication device  421  is for accessing other computers (servers or clients) via external data network  170 . The communication device  421  may comprise a modem, a network interface card, or other well-known interface device, such as those used for coupling to Ethernet, token ring, or other types of networks. 
     Throughout the foregoing description, for the purposes of explanation, numerous specific details were set forth in order to provide a thorough understanding of the invention. It will be apparent, however, to one skilled in the art that the invention may be practiced without some of these specific details. For example, while illustrated as an interface  100  to a service  102  executed on a server  103  (see  FIG. 1 ), it will be appreciated that the underlying principles of the invention may be implemented on a single client in which the client transmits data over a network. 
     Moreover, although described in the context of a wireless data processing device, the underlying principles of the invention may be implemented to compress data in virtually any networking environment, both wired and wireless. Accordingly, the scope and spirit of the invention should be judged in terms of the claims which follow.