Abstract:
A processor-based personal electronic device (such as a smartphone) is programmed to automatically respond to data sent by various sensors from which the user&#39;s activity may be inferred. When one or more alarms on the device are temporarily disabled or ignored, they may be automatically restored when sensor data indicates a change in the user&#39;s activity. The restoration of alarm functionality may be accompanied by a repeat of notifications missed or not responded to during a certain period prior to the sensed change in user activity.

Description:
CROSS-REFERENCES TO RELATED APPLICATIONS 
       [0001]    This application is a divisional of U.S. application Ser. No. 13/715,096, filed Dec. 14, 2012, titled “Method and Apparatus for Automatically Repeating Alarms and Notifications in Response to Device Motion,” the disclosure of which is incorporated herein by reference in its entirety. 
     
    
     BACKGROUND OF THE INVENTION 
       [0002]    This invention relates to personal electronic devices. More particularly, it relates to the alarm and notification functions of smartphones. 
         [0003]    A smartphone is a mobile phone built on a mobile operating system and having advanced computing capability and connectivity. The first smartphones combined the functions of a personal digital assistant (PDA) with a mobile phone. Later models added the functionality of portable media players, compact digital cameras, pocket video cameras, and GPS navigation units to form one multi-use device. Many current smartphones also include high-resolution touchscreens for input and web browsers that display standard web pages as well as mobile-optimized sites. High-speed data access may be provided by Wi-Fi and/or Mobile Broadband. 
         [0004]    Wi-Fi is a widely-used technology that allows an electronic device to exchange data wirelessly (using radio waves) over a computer network, including high-speed Internet connections. The Wi-Fi Alliance defines Wi-Fi as any “wireless local area network (WLAN) products that are based on the Institute of Electrical and Electronics Engineers&#39; (IEEE) 802.11 standards”. However, since most modern WLANs are based on these standards, the term “Wi-Fi” is used in general English as a synonym for “WLAN”. 
         [0005]    A device that can use Wi-Fi (such as a personal computer, video-game console, smartphone, tablet, or digital audio player) can connect to a network resource such as the Internet via a wireless network access point. Such an access point (or “hotspot”) typically has a range of about 65 feet (20 meters) indoors and a greater range outdoors. Hotspot coverage can comprise an area as small as a single room with walls that block radio waves or as large as many square miles—this may be achieved by using multiple overlapping access points. 
         [0006]    Mobile broadband is the term used for wireless Internet access through a portable modem, mobile phone, USB wireless modem, or other mobile devices. A smartphone is basically a cellular telephone with built-in applications and Internet access. In addition to digital voice service, current smartphones provide text messaging, e-mail, Web browsing, and video playback and calling. In addition to their built-in functions, smartphones can run myriad free and paid applications, turning the cellphone into a mobile personal computer. 
         [0007]    In addition to radio transmitters and receivers for interacting with cellular telecommunications systems, many smartphones have additional sensors that provide input to their various systems. For example, Apple Inc.&#39;s iPhone® 5 smartphone includes at three-axis gyro, an accelerometer, a proximity sensor and an ambient light sensor. 
         [0008]    The iPhone display may respond to a number of sensors. A proximity sensor deactivates the display and touchscreen when the device is brought near the face during a call. This is done to save battery power and to prevent inadvertent inputs from contact with the user&#39;s face and ears. An ambient light sensor adjusts the display brightness which in turn saves battery power. A 3-axis accelerometer senses the orientation of the phone and changes the screen accordingly, allowing the user to easily switch between portrait and landscape mode. Photo browsing, web browsing, and music playing support both upright and left or right widescreen orientations. 
         [0009]    Certain smartphones have a “do not disturb” mode. When the “do not disturb” mode is activated (e.g., via a Settings menu), the phone suppresses most forms of communication—phone calls, text messages, alarms, social media notifications, and the like. When this mode is enabled, the phone will not light up or vibrate at all, so the user can get through a meeting or go to bed without being disturbed by the outside world. However, all of those notifications may get captured and appear in a “Notification Center” when the phone&#39;s display is turned on by the user. 
         [0010]    The user may configure the “Do not disturb” feature to function on a predefined schedule, or may simply turn it on and off as needed. The user may also specify certain contacts—sometime designated as “VIPs”—who are allowed to get through to the user even if the phone is in “do not disturb” mode. 
         [0011]    In certain implementations, when a call comes in, the user can choose to answer or ignore it, as usual, or may immediately reply with a text message. The user may also set the smartphone to remind him or her about the call later—either at a specific time, or when leaving the current location (as determined from the phone&#39;s location sensors). 
         [0012]    Various options may allow the Do Not Disturb settings on a smartphone to be further customized. For example, an option for “Repeated Calls” may allow activation of a mode wherein whenever someone calls back a second time from the same number within a certain time interval, the second call will not be silenced. 
       BRIEF SUMMARY OF THE INVENTION 
       [0013]    A processor-based personal electronic device (such as a smartphone) is programmed to automatically respond to data sent by various sensors from which the user&#39;s activity may be inferred. One or more of the sensors may be worn by the user and remote from the device. A wireless communication link may be used by the device to obtain remote sensor data. In certain embodiments, data from on-board sensors in the device—such as motion sensors, location sensors, ambient light sensors, and the like—may also be used to deduce the user&#39;s current activity. 
         [0014]    Various embodiments allow a processor-based personal electronic device (such as a smartphone) to dynamically institute or cancel notifications (e.g., reminders and alarms) based on device motion. One exemplary use scenario is when a number of messages (e-mail, SMS, phone, or the like) are received during the time a user is away from their phone (inferred from a sensed lack of motion by the smartphone). When the smartphone is picked-up (as may be inferred from sensor data), reminders may be generated so that the user will see all the notification activity during the time they were away from the device. 
         [0015]    In certain embodiments, a change in motion state of a device triggers certain actions by the device. By way of example, a first motion state wherein the device rhythmically moves up and down in small displacements (such as might be sensed by a device stored in the pocket or purse of a user who is walking) may change to a second motion state wherein the device is picked up by a user and moved in a substantially single motion of greater displacement. The change of state from first motion state to second motion state may be used to automatically retrigger unacknowledged notifications generated during the period of time the device was in the first motion state. 
     
    
     
       BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWING(S) 
         [0016]      FIG. 1  is a block diagram of a processor-based device 
           [0017]      FIGS. 2A and 2B  are a flowchart of a process according to one embodiment of the invention. 
       
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
       [0018]    Referring to  FIG. 1 , a simplified functional block diagram of illustrative electronic device  100  is shown according to one embodiment. Electronic device  100  could, for example, be a smartphone, personal media device, portable camera, or a tablet, notebook or desktop computer system. As shown, electronic device  100  may include processor  105 , display  110 , user interface  115 , graphics hardware  120 , device sensors  125  (e.g., proximity sensor/ambient light sensor, accelerometer and/or gyroscope), microphone  130 , audio codec(s)  135 , speaker(s)  140 , communications circuitry  145 , image capture circuit or unit  150 , video codec(s)  155 , memory  160 , storage  165 , and communications bus  170 . 
         [0019]    Processor  105  may execute instructions necessary to carry out or control the operation of many functions performed by device  100  (e.g., such as the processing of data obtained from device sensors  125 ). Processor  105  may, for instance, drive display  110  and receive user input from user interface  115 . User interface  115  can take a variety of forms, such as a button, keypad, dial, a click wheel, keyboard, display screen and/or a touch screen. Processor  105  may be a system-on-chip such as those found in mobile devices and include one or more dedicated graphics processing units (GPUs). Processor  105  may be based on reduced instruction-set computer (RISC) or complex instruction-set computer (CISC) architectures or any other suitable architecture and may include one or more processing cores. Graphics hardware  120  may be special purpose computational hardware for processing graphics and/or assisting processor  105  perform computational tasks. In one embodiment, graphics hardware  120  may include one or more programmable graphics processing units (GPUs). 
         [0020]    Image capture circuitry  150  may capture still and video images that may be processed to generate images. Output from image capture circuitry  150  may be processed, at least in part, by video codec(s)  155  and/or processor  105  and/or graphics hardware  120 , and/or a dedicated image processing unit incorporated within circuitry  150 . Images so captured may be stored in memory  160  and/or storage  165 . Memory  160  may include one or more different types of media used by processor  105 , graphics hardware  120 , and image capture circuitry  150  to perform device functions. For example, memory  160  may include memory cache, read-only memory (ROM), and/or random access memory (RAM). Storage  165  may store media (e.g., audio, image and video files), computer program instructions or software, preference information, device profile information, and any other suitable data. Storage  165  may include one more non-transitory storage mediums including, for example, magnetic disks (fixed, floppy, and removable) and tape, optical media such as CD-ROMs and digital video disks (DVDs), and semiconductor memory devices such as Electrically Programmable Read-Only Memory (EPROM), and Electrically Erasable Programmable Read-Only Memory (EEPROM). Memory  160  and storage  165  may be used to retain computer program instructions or code organized into one or more modules and written in any desired computer programming language. When executed by, for example, processor  105  such computer program code may implement one or more of the methods described herein. 
         [0021]    An electronic device such as device  100  may receive inputs from on-board device sensors  125  which sensors may be of the types described, above—i.e., proximity sensors, accelerometers, gyroscopes, ambient light sensors and location sensors. In addition, it may receive signals and/or data from remote sensors via communication circuitry  145 . Such remote sensors may be worn by the user of the device—e.g., wrist motion sensors, pulse rate sensors, breathing rate sensors, and the like. It will be appreciated by those skilled in the art that processor  105  of system  100  may be programmed to receive input data from the sensors and deduce from that data the current activity of the user. The activity of the user may be used to automatically select one or more states (or “settings”) of the device. 
       Example 1 
       [0022]    Referring now to  FIGS. 2A and 2B , a process according to one particular embodiment is shown in the form of a flowchart wherein a user of device  100  (which may be a smartphone) activates the Do Not Disturb function (or state) of the device prior to taking a 45-minute nap. 
         [0023]    The process may begin at  200  (see  FIG. 2A ) with the device displaying a Do Not Disturb (DND) activation dialog box requesting a desired duration of the DND state. At process box  210 , the user selects the DND state “on” for a duration of X minutes (X=45 in this example). The device enters the DND state by suppressing alarms and notifications which would otherwise activate during the 45-minute period and starts a 45-minute timer. The alarms and/or notifications may be audible and/or tactile. At diamond  212 , the device monitors its built-in motion sensors to determine whether it is motionless (as might be expected if it were placed on a nightstand, headboard, bedside table or the like near a sleeping user). If no motion is detected (“No” branch at  212 ), the device checks the DND period timer at  214  to determine whether the DND duration set by the user has been reached. If the duration period has concluded (“Yes” branch at  214 ), the process continues to box  228  (see  FIG. 2B ) at which point the DND state is deselected and, any notifications received during the DND period are resent (at  230 ) to alert the user of the suppressed notifications. The process may then conclude at  232  with a reversion to the normal state of the device. 
         [0024]    By way of example, consider a situation wherein a user sets the DND state for a 45-minute nap, but awakens after sleeping for 30 minutes and picks up device  100  (e.g., his or her smartphone) from a bedside table to determine the time of day from the built-in clock function of device  100 . In this scenario, motion of the device would be detected at diamond  212  whereupon a first timer (“TIMER 1 ”) would be automatically started (at  216 ) and a second timer (“TIMER 2 ”) would also be automatically started (at  218 ). The purpose of TIMER 1  and TIMER 2  is to determine the duration of the detected motion. In this example, the user is merely checking the time of day and may return the device to its resting position on the bedside table after realizing that he or she may go back to sleep for an additional 15 minutes. In such a case, the period of motion may be expected to be relatively short. By way of example only, the illustrated process uses a 3-minute period to determine whether the device is being actively used by the user or has merely been (briefly) checked by the user. 
         [0025]    After initially detecting motion (at  212 ) and starting TIMER 1  and TIMER 2  the device again checks for motion at  220 . If no additional (or continuing) motion is detected (“No” branch) at  220 , a determination is made a  222  whether TIMER 2  has reached the 3-minute mark. If not (T 2 &lt;3; “No” branch at  222 ), the device returns to monitoring for motion at  220 ). If, on the other hand, TIMER 2  exceeds 3 minutes—i.e., the device has not been further moved for 3 minutes—(“Yes” branch at  222 ), the process may return to decision diamond  214  for a determination of whether the DND period has expired. If not (“No” branch at  214 ) the process repeats. If the DND period is up (“Yes” branch) at  214 , the process continues to box  228  (see  FIG. 2B ) at which point the DND state is deselected and, any notifications received during the DND period are resent (at  230 ) to alert the user of the suppressed notifications. The process may then conclude at  232  with a reversion to the normal state of the device. 
         [0026]    In another scenario, the user awakens after sleeping for 30 minutes and picks up his or her device from the bedside table and begins actively using the device—i.e., does not return the device to its resting place on the bedside table but continues to hold and manipulate the device. In this case, the additional (or continuing) motion of the device may be detected (“Yes” branch at  220 ) which leads, at process box  224 , to a restart of TIMER 2 —i.e., TIMER 2  is reset to zero. At  226 , the device may determine whether TIMER 1  has reached the 3-minute mark. If not (T 1 &lt;3; “No” branch at  226 ), the process returns to monitoring for additional motion at  220 . If, however, the device has been in motion for more than 3 minutes—i.e., is being actively used—TIMER 1  will exceed 3 minutes (“Yes” branch at  226 ) and the process may continue to box  228  (see  FIG. 2B ) at which point the DND state is automatically deselected and, any notifications received during the DND period are automatically resent (at  230 ) to alert the user of any suppressed notifications. The process may then conclude at  232  with a reversion to the normal state of the device. 
         [0027]    The above-described process permits a user to briefly pick up his or her smartphone to check the time of day (or other indications) without triggering notifications. However, more prolonged use of the device automatically returns it to an active state (DND off) and triggers notifications. 
         [0028]    In yet other embodiments, the device may (additionally) monitor for user inputs to detect active use of the device, and, in response, automatically deselect the DND state or remind the user that the DND state is active and present the user with the option of deselecting the DND state. 
       Example 2 
       [0029]    In certain embodiments, a device may use data from on-board motion sensors to detect that it has been stationary for a period of time and re-trigger notifications sent during that period when the motion sensors detect motion—such as a user picking up the device. 
         [0030]    In this way, a user might put down his or her smartphone on a dresser and take a lengthy shower or bath. During this time, one or more messages, e-mails, and other electronic messaging and wireless digital messaging services with attendant notifications (audible and/or tactile) are received (and may be repeated). However, the user does not hear the notifications (or repeats). The user then gets dressed quickly and puts the smartphone in his or her pocket without realizing that message notifications were missed. By using one or more built-in motion sensors, the device may re-trigger the notifications first made during the period of inactivity when the user picks up the device. 
       Example 3 
       [0031]    As discussed above, sensor data (motion, orientation, acceleration, and the like) may be used by a processor-based device to infer the activity of the user. A change in activity may be used as a criterion for re-triggering notifications and reminders. 
         [0032]    An exemplary scenario for such an embodiment may be a message received while the device is in a motion corresponding to walking—e.g., in a purse or backpack. When the device is later lifted by the user (a detectably different motion than walking), reminders and notifications announced during the walking period may automatically be regenerated and announced (sounded, displayed or the like). In certain embodiments, repeated notifications may be limited to unacknowledged notifications. 
         [0033]    Although particular embodiments of the present invention have been shown and described, they are not intended to limit what this patent covers. One skilled in the art will understand that various changes and modifications may be made without departing from the scope of the present invention as literally and equivalently covered by the following claims.