From WebOS Internals
Jump to navigation Jump to search
Modeswitcher 2x.png


Icon Mode-Switcher.png

Mode Switcher is a webOS application that brings profile support to your device in the form of "modes". These "modes" can nearly control every available setting in webOS and can be triggered (manually or automatically) by a number of different methods or "triggers" that in turn change settings on your device based on the configuration of the modes you created. Mode Switcher is very powerful and feature rich. You can make its use as simple or complex as you would need.

Mode Switcher 2.x

Controllable Settings

  • Airplane
  • Calendar (blink and reminder)
    • Advanced Systems Prefs - Calendar Prefs patch or Uber Calendar patch (Required)
  • Connections (radios: phone, data, wi-fi, bluetooth, gps)
  • Contacts (blocked and unknown)
    • Advanced Systems Prefs - Framework patch (Required)
  • Email (blink, alert, sync frequency)
    • Advanced Systems Prefs - Email Prefs patch (Required)
  • Messaging (blink, alert, instant messaging account status)
    • Advanced Systems Prefs - Messaging Prefs patch (Required)
  • Network (network type, data roaming, voice roaming (forced/automatic))
  • Phone (on call reject and blink)
    • Advanced Systems Prefs - Phone Prefs patch (Required)
  • Ringer (switch on, switch off, ringtone)
  • Screen (brightness, turn off after, blink notify, locked notify, wallpaper)
  • Security (unsecure, simple pin, password)
  • Sounds (ringer, system, media)
  • Applications (opening, closing, special functions via app launch parameters where supported (e.g. Govnah))

Available Triggers

  • Application
  • Battery Level
    • Advanced Systems Prefs - Framework (Required)
  • Bluetooth Connection (by profile or device name)
  • Calendar Event
  • Charger Event (touchstone w/orientation, USB or wall charger. Can be set separately)
    • Advanced Systems Prefs - Framework (Required)
  • Display State
  • GPS Location
  • Headset
  • Mode Change
  • Silent Switch
  • Time Interval
  • Time of Day
  • Wi-Fi Network
Mode Switcher 1.x

Controllable Settings

  • Airplane
  • Connections (radios: phone, data, wi-fi, bluetooth, gps)
  • Network (network type, data roaming, voice roaming (forced/automatic))
  • Ringer (switch on, switch off, ringtone)
  • Screen (brightness, turn off after, blink notify, locked notify, wallpaper)
  • Security (unsecure, simple pin, password)
  • Sounds (ringer, system, media)
  • Applications (opening, closing, special functions via app launch parameters where supported (e.g. Govnah))

Available Triggers

  • Application
  • Battery Level
  • Bluetooth Connection (by profile or device name)
  • Calendar Event
  • Charger Event (touchstone w/orientation, USB or wall charger. Can be set separately)
  • Display State
  • GPS Location
  • Headset
  • Mode Change
  • Silent Switch
  • Time Interval
  • Time of Day
  • Wi-Fi Network


There are two versions of Mode Switcher available. What version you use is dependent on what version of webOS is running on your device. Mode Switcher 1.x is available for webOS 1.4.x and Mode Switcher 2.x for webOS 2.x.

Mode Switcher 2 was completely rewritten into a Javascript service instead of being an application that runs in the background. It supports controlling even more system settings than MS 1.x with the help of the Advanced System Prefs patches for webOS 2.1. Mode Switcher 2 is faster, better and all around more awesome than before!

Differences in the version's features, settings and capabilities will be noted throughout the rest of the wiki.


The following information will help you install Mode Switcher.


Stable Releases
The stable releases of Mode Switcher can be found in the WebOS-Internals feed and are recommended for general public use.

Testing Releases
The testing releases of Mode Switcher can be found in the WebOS-Internals Alpha or Beta feeds WebOS-Internals Testing Feed.

Corresponding/Related Patches
There are a number of patches that extend Mode Switcher's functionality. While they are not required for Mode Switcher to function; they are recommended as they add much more functionality to your device and controlling of the functions with Mode Switcher. These patches can be found in the WebOS-Internals Patch Feed. Please follow the links for installation and other general information. It is recommended that you install all of the patches in the patch set and not just those mentioned here. The patches mentioned here are those that matter for Mode Switcher usage.

Mode Switcher 2.x

In Particular:

  • Advanced System Menus - Framework (Required by all the system menus patches).
  • Advanced System Menus - Mode Menu (For easy manual control of modes through a system menu).

In Particular:

  • Advanced System Prefs - Framework (For using the charger/battery triggers and contacts settings).
  • Advanced System Prefs - Email (For controlling emaiö settings).
  • Advanced System Prefs - Messaging (For controlling phone settings).
  • Advanced System Prefs - Phone (For controlling phone settings).
  • Advanced System Prefs - System (For using extra screen settings).
  • Advanced System Prefs - Calendar Prefs OR Uber Calendar patch (For controlling calendar settings).

Mode Switcher 1.x


The following method can be used to install Mode Switcher.

  1. Open Preware
  2. Start typing “Mode Switcher” (no quotes)
  3. Tap the Mode Switcher from the list
  4. Tap the Install button
  5. Tap the Ok button to restart Luna


  1. Open Preware
  2. Tap Available Packages
  3. Tap Application > System Utilities > Mode Switcher
  4. Tap the Install button
  5. Tap the Ok button to restart Luna


webOS OTA Updates

Since Mode Switcher is an app, it is OTA (over-the-air) update safe. However, the patches that correspond/extend Mode Switchers functionality like the Advanced System Prefs patches and the Mode Menu patches are not OTA (over-the-air) update safe. When there is an OTA update to a newer version of webOS from your carrier, you must remove these patches before updating. If you do not remove them prior to running the OTA update, you most likely will need to run the Emergency Patch Recovery tool from Preware.

Application and Patch Updates

Updated versions of Mode Switcher and the related patches can be applied via Preware.


Mode Switcher 2.x

A new usage section is being created for Mode Switcher 2.x.
Sections will be added as they are completed.

Mode Switcher 1.x

Tips & Usage Hints

Mode Switcher 2.x

Blocking Modes
Block options is gone in MS 2.x since it can be now done in a better way. If you want to make sure that mode A can not activate when mode B is active then add mode change trigger into mode A with setting: Mode B, Not Active. This way mode A can not trigger when mode B is active.


Mode Switcher 1.x & 2.x

Q: There are times when the radios (Phone/Data (3G)/Bluetooth/Wi-Fi) don't change state (on/off) when opening, closing or switching modes. What is wrong?
A: There is a bug in webOS (version independent) where depending on the device/installation you may have varying success with the radios changing state. The frequency in which what radio settings get "stuck" or which radio settings don't get applied varies. A temporary solution is to do a full restart of the device which usually clears the "stuck" radio settings.

Note: This issue affects devices running the stock and modified kernels. It appears to affect any device running any current webOS versions (1.4.x/2.x)

Mode Switcher 2.x

Q: I can't seem to find the settings for controlling the calendar, email and/or messaging nor the charger and/or battery triggers?
A: One of two things are not setup correctly.

  1. As mentioned in the Installation > Overview > Corresponding/Related Patches section, certain patches are needed to extend Mode Switcher functionality. Please see the links to the related wiki pages for help with installing those patches.
  2. If you have those patches installed, make sure you have the Advanced Features toggle enabled. (It can be found by going to the app menu and selecting Extensions.)

Q: When opening MS after installation, I get the Unknown Service Error notification. How do I fix this?
A: That message means that you most likely have a bad or incorrect installation of MS. First try re-installing and rebooting your device (twice to be sure). If you still get the same error then you need to complete the installation manually (this is a webOS bug/error in your webOS installation that can cause the installation of service to always fail). You can complete the installation by entering the following three commands in a terminal (either over ssh/novaterm connection or in terminal application in the phone).

cp -f /media/cryptofs/apps/usr/palm/services/org.webosinternals.modeswitcher.srv/org.webosinternals.modeswitcher.srv.json /var/palm/ls2/roles/pub/

cp -f /media/cryptofs/apps/usr/palm/services/org.webosinternals.modeswitcher.srv/org.webosinternals.modeswitcher.srv.service /var/palm/ls2/services/pub/

ls-control scan-services

Q: When changing modes, I get the notification, "Error: Mode change was aborted". What does that mean?
A: That message means that there is a loop within the MS app configurations and the mode changing was aborted.

Q: Where did the trigger blocking go?
A: The trigger blocking was removed in MS 2.0.9 in favor of using the Mode Change Trigger. You can achieve the same results and more by using the Mode Change Triggers.

Mode Switcher 1.x

Q: I’m getting this error when I try to install Mode Switcher: “1 of 1 hunk failed -- saving rejects to file etc/palm/luna.conf.rej"
A: The patch “Launch Brightness Unlinked on Luna Boot” conflicts with the "Launch Mode Switcher on Luna Boot" patch and must be removed.

Q: I installed Mode Switcher, but when I tap the launcher icon nothing happens.
A: You must perform a Luna Restart after installing/updating Mode Switcher.

Q: Can I close / get rid of the Mode Switcher dashboard icon?
A: If you are on a Pixi/Pixi+, then no, the dashboard scene needs to be active for Mode Switcher to function. For the Pre/Pre+, install the Launch Mode Switcher on Luna Boot patch to get rid of the dashboard.

Q: Can I manually or use Save/Restore to import my Mode Switcher 1.x modes into Mode Switcher 2.x?
A: Unfortunately, no. The differences between version 1.x and 2.x are to great to make this possible.

Sending Problem Report

When you are sure that the problem you are experiencing is not a configuration error and you have preferably first asked about the problem in the thread then you can send a problem report. To do so you need to have lumberjack installed. The preferred method of sending the problem report is first to reboot your phone then make the "problem" happen and right after it has happened open the Mode Switcher app and send the problem report via App Menu - Help - App Menu - Send Problem Report.


Supporting Development

Btn donateCC LG.gif

Official Developer Project Page
Official Forum

Mode Switcher 2.x

Mode Switcher 1.x

Modes Sharing
Here you can delete your shared modes or view/comment modes posted by others.
Official Twitter Account
Bug Reporting
Registration on the site is required to submit bug reports.
Feature Requests
Registration on the site is required to submit feature requests.


Mode Switcher 2.x

3.0.0 - Features Road Map - (?? ??th, 2011)
  • Add enyo user interface for tablets/phones, i.e. UI rewrite
  • Add way to see the current situation as seen by Modeswitcher
  • Introduce separate settings profile configuration
  • Add a basic/advanced configuration modes for the UI
  • Remove modifier/normal mode separation
  • Add random wallpaper feature for wallpaper configuration
  • Screen state control (hopefully for both, on charger and when removed, at the moment I am thinking screen action extension)
  • System services extension for connecting/disconnecting bluetooth etc.
  • Extension configuration for trigger delays
  • Add delay configuration for starting of applications (was in MS 1.x)
  • Add mode configuration viewer for import
  • Add event list (see what triggered and what etc. in a simple event history list), might leave this until the UI rewrite...
  • Change interval trigger also work as a limit for how long mode can be active.
  • Fix the memory leak in calendar trigger

2.5.3 - Current Public Release - (Oct. 3rd, 2011)
  • Fixed modes export/import so that it works again

2.5.2 - Public Release - (Sep. 27th, 2011)
  • Fixed modes importing so that it works on all webOS versions

2.5.0 - Skipped Release - (Sep. 27th, 2011)
  • Small fix for the wifi trigger
  • Made the export modes work on Pre3 as well

2.4.6 - Beta Release - (Sep. 23th, 2011)
  • Made the service queue request so that MS can catch every single trigger and process them properly

2.4.2 - Public Release - (Sep. 6th, 2011)
  • Fixed a typo that caused problems

2.4.1 - Public Release - (Sep. 5th, 2011)
  • Fixed wifi trigger and UI problem with webOS 2.2 (Pre3)

2.4.0 - Public Release - (Aug. 30th, 2011)
  • Fixed problems with webOS 2.2, should now work with Pre3

2.3.9 - Public Release - (July 7th, 2011)
  • Fixed mode changing bug when normal modes were closed / started by the same trigger

2.3.8 - Public Release - (June 22th, 2011)
  • Should work on veer now

2.3.7 - Public Release - (June 5th, 2011)
  • Fixed small typo that caused an non critical error on MS shutdown

2.3.6 - Public Release - (June 5th, 2011)
  • Fixed restart device action being reverted to luna restart on systoolsmgr settings
  • Fixed current unknown contacts setting retrieval bug
  • Fixed calendar trigger not working at all bug
  • Fine tuned the MS extension handling

2.3.5 - Public Release - (June 3th, 2011)
  • Once again new try on the bluetooth trigger

2.3.4 - Public Release - (June 3th, 2011)
  • Fixed typo that prevented email settings from working
  • Fixed phone connection setting not being set at all
  • Small change for bluetooth trigger to make it again bit better
  • First public 2.3.x release so those upgrading from 2.2.x re-export your modes after upgrade

2.3.3 - Testing Release - (June 1th, 2011)
  • Attempt to make the bluetooth trigger better and work for everyone
  • Fixed some settings not changing bug (connection, media volume etc.)
  • Made the service error messages bit more clear

2.3.2 - Testing Release - (May 30th, 2011)
  • Fixed timeofday trigger problem which caused also unknown service error popup to show up
  • Added dialog notifying about "mode references" if mode is in trigger or ms app config of another mode when deleting
  • When mode is renamed it is now also renamed on mode triggers of other modes if exists
  • Fixed bug in configuration upgrade that caused need for MS disable/enable after update
  • From now on MS gets disabled on updates, so you need to enable it after the reboot

2.3.1 - Testing Release - (May 27th, 2011)
  • Fixed security mode unsecure not taking effect

2.3.0 - Testing Release - (May 26th, 2011)
  • Now email/messaging account existence is checked before setting its settings
  • Easy sharing of modes for other MS users from export and easy importing of public modes from import
  • Added storing / autofill of google docs username into mode export/import
  • On export only first email accounts settings are exported, and when importing those settings are used for all accounts
  • On export only sms and first im accounts settings are exported, and when importing the im settings are used for all im accounts
  • Fixed bug in application side that caused the app to crash when backswiped twice (fast swipes when viewing settings e.g.)
  • Added help system for the export/import scene as well to guide through sharing modes
  • Polished MS app configuration by disallowing some configuration and having different options depending on mode type
  • Fixed bug in mode change in certain situations with popup not resulting to correct modes being started
  • Couple small bug fixes for MS app usage, also made it now impossible to control previous mode from modifier modes
  • On export the screen lock pin/password is now cleared and it needs to be set again after importing
  • Made trigger groups non optional, and the required (any trigger/all unique) option to be per group
  • Made number of groups to be dynamic and empty groups are "removed" automatically on the app side
  • Fixed the secondary button actions for clearing configuration with option+tap
  • Added version for the exported configuration so that in the future older configuration can be imported as well
  • This version can not import modes from older versions! So export your modes again after updating!

2.2.5 - Public Release - (May 18th, 2011)
  • Fixed messaging and email settings not working
  • Fixed interval trigger not working bug

2.2.4 - Private Release - (May 18th, 2011)
  • Fixed MS app action loop banner notification bug (no notification was shown and mode change was aborted)
  • Fixed close all modifier modes action causing trouble in certain situations

2.2.3 - Public Release - (May 14th, 2011)
  • Fixed bug that caused initial configuration to fail on new installs

2.2.2 - Public Release - (May 14th, 2011)
  • Fixed default mode started on startup even last active set (for some users)
  • Fixed popup sound playing twice when configured to play
  • Fixed reading of current unknown numbers setting
  • Fixed bug with some extensions disappearing (for some users)

2.2.1 - Testing Release - (May 12th, 2011)
  • Fixed the extensions name collision bug

2.2.0 - Testing Release - (May 12th, 2011)
  • Changed the way how mode popup works and now its also enabled for modifier modes
  • Configuration for setting extensions (for setting forced applying to override manual changes)
  • Mode status functionality (possible to see what the current trigger status is for the modes)
  • New contacts settings extension (support for unknown contacts settings handling)
  • New phone settings extension (support for auto reply mode/text, blink notification)

2.1.3 - Public Release - (May 12th, 2011)
  • Fixed the mode change popup still playing sound even when set not to

2.1.2 - Public Release - (May 10th, 2011)
  • Fixed mode list empty / wrong choices bug in MS app configuration
  • Fixed the address locating in the GPS trigger configuration

2.1.1 - Public Release - (May 9th, 2011)
  • Removed unneeded and bit dangerous options from mode trigger

2.1.0 - Public Release - (May 9th, 2011)
  • Bug fixes & final touches

2.0.9 - Testing Release - (May 7th, 2011)
  • Added any normal/modifier mode options into mode trigger
  • Removed trigger blocking setting, since it can be achieved with mode change trigger now
  • Combined the notify and alert setting for simplicity
  • Fixed phone/browser extensions (re-add phone/browser apps into the modes, now they should start)

2.0.8 - Testing Release - (May 6th, 2011)
  • Automatic updating of configuration when mode is renamed (MS app configs in other modes)
  • Other final touches on the app side
  • Added configurable sound for the popup into MS preferences (the mode notify sound configuration is used now)
  • Added notification for mode loops (wrongly configured MS app usage)
  • Changed the grouped trigger behavior, now all triggers need to be valid in one of the groups
  • Removed unneeded preferences / app menu entries
  • Renamed preferences into extensions in the app menu since the prefs are for extensions only

2.0.7 - Testing Release - (May 3th, 2011)
  • Fixed bug that caused modifier modes to close when closing normal mode

2.0.6 - Testing Release - (May 1st, 2011)
  • One more fix for bluetooth trigger
  • Small fix for closing applications

2.0.5 - Testing Release - (April 29th, 2011)
  • Changed application closing to close all apps with the requested appid
  • Removed impostah extension and added systools extension that allow luna/phone restart
  • Fixes for bluetooth trigger...again
  • Fixed displaying of security settings when fetched and other than unsecure set
  • Fixed close all apps option
  • Fixed the previous mode handling

2.0.4 - Testing Release - (April 15th, 2011)
  • Fixes for some settings not taking effect for everyone such as screen lock timeout

2.0.3 - Testing Release - (April 15th, 2011)
  • Fixes for bluetooth trigger
  • Added help system

2.0.2 - Testing Release - (April 14th, 2011)
  • Fixed severe typo that caused service not to start

2.0.1 - Testing Release - (April 14th, 2011)
  • Fixed interval trigger UI
  • Fixes to charger trigger logic not to trigger mode when not needed
  • Fixed package installing (WebOS bug)
  • Fixed a small bug in location trigger
  • Small fix for bluetooth trigger
  • Couple fixes for the MS app

2.0.0 - Testing Release - (April 13th, 2011)
  • Initial Testing Feed Release
Mode Switcher 1.x

1.1.1 - Current Release - (Oct. 17th, 2011)
  • Made google docs import/export use https which should fix the login problems

1.1.0 - Public Release - (May. 9th, 2010)
  • No code changes just changed title and added flag that prevents install on WebOS 2.x

1.0.9 - Public Release - (Nov. 10th, 2010)
  • Small change to display trigger
  • Removed experimental code
  • Fixed no match calendar trigger functionality