User:Magick777/Opportunistic Power Saving

(Design goals)
(Design goals)
Line 21: Line 21:
*** recheck that we're still not on a call after our cooling off period
*** recheck that we're still not on a call after our cooling off period
** then make the switch to GSM mode
** then make the switch to GSM mode
 +
* Switch automatically to 3G or dual mode when something requires it
* Switch automatically to 3G or dual mode when something requires it
-
** no sense in triggering on device unlock, wait until explicitly needed
+
** no sense in triggering on device unlock, wait until needed
** trigger on events that will require a data connection i.e.
** trigger on events that will require a data connection i.e.
-
*** launch browser, SIP client, maps
+
*** launch browser, SIP client, maps (*requires use of session bus)
*** open e-mail account
*** open e-mail account
*** launch other data heavy application
*** launch other data heavy application

Revision as of 23:46, 19 July 2010

Opportunistic Power Saving

Maintain phone in GSM mode by default when on battery

Design goals

  • Switch to GSM mode opportunistically when all seems to be quiet
    • trigger on phone locked
    • then check for blockers, most common first
      • don't change anything if we're on charge and not saving battery
      • don't change anything if we're on a GSM call
      • don't change anything if we're in the desired radio mode
      • don't change anything if we have blocker applications or connections
        • blockers don't apply if we're on WiFi
        • if we're on 3G then the known blockers should be
          • location-daemon active (GPS in use)
          • SIP / Skype / GTalk calls (VoIP in use)
      • don't change anything if the user didn't want the phone to lock anyway
        • cooling off period during which device unlock cancels radio switch
    • perform any final sanity checks
      • recheck that we're still not on a call after our cooling off period
    • then make the switch to GSM mode


  • Switch automatically to 3G or dual mode when something requires it
    • no sense in triggering on device unlock, wait until needed
    • trigger on events that will require a data connection i.e.
      • launch browser, SIP client, maps (*requires use of session bus)
      • open e-mail account
      • launch other data heavy application
    • but test the following
      • don't change anything if we're already in the target radio mode
      • don't change anything if we're already using WiFi
      • don't change anything if we're on a voice call