|
|||||||
| Register | FAQ | XDA-Portal | XDA-Wiki | Device database | Donate! | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
![]() |
|
|
Thread Tools | Search this Thread | Display Modes |
|
#1
|
||||
|
||||
|
Note this is a BETA version and will have issues.
About WMLongLife is an automatic 2G/3G band-switching solution. It will keep your device in 2G when you do not need to use 3G, and will switch to 3G automatically when you do need it. For most users, having your device in 2G uses much less battery, and thus your phone lasts longer on a single charge. 2G also usually generates less radiation than 3G, so it will likely be better for your gonads (if you have them) as well (see this thread for a discussion about that) - think of your hypothetical future children! Main features
How to use The manual is in the post below this one. Give it a quick skim! License? You can use this yourself on your own devices, if-and-only-if you download it from this post. You are not allowed to (re)distribute this app, not to your brother, not to your friends, not to anyone. Cooking it into your ROM and then distributing that is obviously also not allowed. I reserve the right to turn this into something commercial if I want. I'm not planning it, but lets just cut the crap and say it may eventually happen (avoid BS like the last time). Should that happen, as last time, people who helped out will get taken care of. Is this guaranteed to save battery? No, it is not. If it will or will not save battery is dependent on your configuration of WMLongLife, your 'average' network conditions, your radio, and usage. The default WMLongLife configuration will give you (also depending on those other factors) a nice average between least and maximum savings while trying to be not too annoying. Radio firmware is very tricky, and results vary all across the board. It is likely there is a radio thread for your specific device, if you are comfortable with flashing devices, flashing a different radio may give you better (or worse) connectivity and battery life. How your usage effects all this should be obvious: if all you do with your phone is watch YouTube until the battery goes flat, WMLongLife will not help you [at all]. If you pretty much use at as a phone with additional email and some browsing / Google Maps here and there, you may definitely see benefits. It all depends. Now let's get to the most interesting part: network conditions. 3G [at least in theory] uses less battery than 2G under ideal conditions. However, these ideal conditions are hardly ever reached. A lot of battery is spent finding a decent/better 3G signal to use instead of 2G - and I mean a lot. If 3G is few-bars or just an unreliable signal in your area, your device will not just use a lot, it will use massive amounts of battery trying to get a [better] 3G signal. Aside from that, if the conditions are less than ideal, 2G may use less power than 3G. As an example, I am personally in an area with excellent 3G coverage (5 out of 5 bars of HSDPA) and my device still lasts nearly twice as long on a single charge with WMLongLife running. Your mileage may vary, of course. While it is completely possible that it may not make a relevant difference in your case, I would say there will be many people who this does make a difference for. This is also the reason you will see many people advising in "battery saving" threads to disable 3G and attesting to how much battery it saves for them, and others will always respond that it doesn't make a difference [for them]. Having an idle(!) data connection should theoretically not make a difference with power usage, you have the connection anyway, it's just a question about whether you have an IP or not. However, some background applications (inside services mostly) will initiate data transfers if (and only if) a data connection is already up. So if you have an idle data connection, these applications would start using data, while if you did not have a data connection (connected), they would not. Supported devices This is a list of device it should work on, most of them have not been reported to work since 0.2, though.
Suspected to work on (never been tested, not even on 0.2):
Important release notes Please see my post about version 0.65: http://forum.xda-developers.com/show...05#post5465505 Currently known issues and problems and the changelogs are listed in the 4th post of this thread. Download 0.65 will stop working on the first of July, 2010. downloads before 0.65: 18149
__________________
BLOG - TWITTER E-Mobile: EM-ONE HTC: Wizard x2, Kaiser, Touch, Diamond, Pro, HD x2, Diamond 2, Pro 2 x2, HD2, Dream, Hero Samsung: i780, i900 x2, i8000 x2, b7320, b7330, b7620 x2 BB: Storm WMWifiRouter, KaiserTweak, FPU Enabler, MultASync, WMRegOptimizer, CFC+GUI, TF3D+v2 ports, Kaiser 3D, Omnia II GLESv1, ICSInstall, DriverWiz, WMLongLife, GfxBoost, MarketPlaceRegionSwitch, ETC! IRC: #XDA-Devs, #WMWifiRouter, #EliteTeam @ irc.freenode.net Donate if you like what I do! (link) Last edited by Chainfire; 26th January 2010 at 11:55 PM.. |
| Sponsored Links |
|
#2
|
||||
|
||||
![]() The Manual NOTICE: The manual is written for version 0.5 and newer! Usage notes I have done my best to let WMLongLife be as least annoying as possible. The idea is (with the default settings) that a band-switch should occur only once in a phone 'session'. Where by a session I mean a screen-on / use device / screen-off cycle. This also means WMLongLife may not switch back to 2G when you expect it to - WMLongLife tries to be smart about things to reduce the number of band-switches but still keep a fairly optimal 2G/power use. Please keep in mind this is a beta release. Things you should know WMLongLife generally does not kick-in until you have both entered your PIN (if applicable) at boot, and the screen has been off for about half a minute. There are exceptions to this rule - if you override the current band selected by using the Band Switcher app, WMLongLife will start operating from then on. When band-switching, the icon in the top bar may stay on 2G (G, E, 1X, etc) for a while before it switches to a 3G icon. This does not mean you are not already using 3G, there is a delay in this display. Issues Known issues are listed in the post below this one. Installation Installation is easy:
The configuration options in WMLongLife are supposed to have "sane defaults", the setup which I expect will work best for most users. Please note some beta testers have reported they need to soft-reset twice after installation/upgrade before WMLongLife works Upgrading If you are using version 0.2 or older, please remove it manually. All newer versions should be a simple case of copying the new CAB file to your device and opening it to install it without the need to uninstall the old version first. A soft-reset is necessary. Please note some beta testers have reported they need to soft-reset twice after installation/upgrade before WMLongLife works Uninstallation Before uninstallation, there are two things you should do: 1) Open the Band Switcher application, and switch to "3G (auto)" mode 2) If you have roaming options enabled, make sure you are NOT roaming when uninstalling After these two points, simply uninstall WMLongLife using Windows Mobile's Remove Programs function. Popup when an unknown application tries to connect to the internet Please see the application-specific configuration section below - it uses the same screen. Band Switcher application Currently this application is not skinned / nice-looking because it still contains some debug functionality. This application can be used to manually instruct WMLongLife to switch to 2G, 3G (auto) and 3G (only) bands. While WMLongLife should do all this for you at the right time, there will be times when you want to override. It also offers the feature to disconnect cellular data connections, and jump to the configuration application. There is also a "WMLongLife controlled" button. This will return band-switching control to WMLongLife if you have previously selected a band manually. If the Screen / Return control to WMLongLife when the screen turns off option is enabled, this will also automatically happen when the screen goes off - and stays off for a while. Configuration The configuration application offers access to the myriad of features that are present in WMLongLife. It is divided into three main screens: home (about), settings, and application-specific settings. Configuration - Settings Radio / Radio chip model Select the radio model you are using here. This should be auto-detected on first installation. If this option is not set correctly, WMLongLife will not switch bands. Radio / 3G mode By default when WMLongLife switches to 3G, it uses the 3G (auto) mode. This lets your radio decide whether to use 2G or 3G, based on signal. The other mode is 3G (only). This mode will force the radio to use only 3G, and you will have no signal if only 2G is available. Radio / GSM band for Samsung radio If you are using the Samsung radio option, you will need to configure your GSM band here. Unfortunately there is currently no way to detect this. Radio / After switching to 3G, connect to This option allows you to set a connection to automatically connect to after WMLongLife has switched the device to 3G. Radio / Restart push mail after band switch Enable this option if you are using Microsoft push mail (Exchange Sync). It should be auto-detected, but this detection is not always perfect. If you are not using Microsoft push mail, I strongly advise you to turn this option off! Screen / Switch to 3G when the screen turns on Enabling this option will switch to 3G every time your screen turns on. Screen / Switch to 2G when the screen turns off Enabling this option will switch to 2G every time your screen turns off. Screen / Screen off 2G switch delay This configures how long to wait after the screen has turned off before switching to 2G. WMLongLife does not switch immediately after the screen goes off, as often you will turn on your screen again - if for example you were doing something but the screen went off automatically. Screen / Return control to WMLongLife when the screen turns off This option is relevant to the Band Switcher application. If you manually select a band to switch to in Band Switcher, WMLongLife will temporarily not switch bands itself. In Band Switcher there is also a button to return band-switching control to WMLongLife. If this option is enabled, band-switching control will be returned to WMLongLife automatically after the screen turns off (the Screen off 2G switch delay is also taken into account here). Screen / Show band switch notification This option configures whether or not you will see an On-Screen Display when WMLongLife switches bands. Screen / Vibrate notifications Very handy for debugging! When this option is enabled, WMLongLife will vibrate when loaded, when ready, and when switching. It may take WMLongLife over a minute to be actually loaded after the device is booted. When it is, it will vibrate very shortly three times (it may feel like a single long vibration). When WMLongLife is ready to allow automatic switching, it will vibrate shortly twice. When WMLongLife actually switches bands, it will vibrate once. Applications / Switch to 3G on whitelisted application launch This option configures whether or not to switch to 3G when you launch an application you have configured to use 3G. This is the heart of WMLongLife, disabling this option would usually not make any sense. Applications / Switch to 2G on whitelisted application close This option configures whether or not to switch to 2G when you close an application you have configured to use 3G. This option is disabled by default, and WMLongLife will switch back to 2G when the screen goes off instead. Enabling this option would make for a lot of band-switching to occur, while disabling this option ensures a band-switch should only occur once per 'phone-usage-session'. Applications / Internal cache timeout WMLongLife maintains an internal cache of all application windows. Because of technical reasons, the cache of these windows needs to be purged every once in a while. I recommend (for now) to keep this option set to 30 seconds. Wi-Fi / Switch to 2G when Wi-Fi is connected Enabling this option (default) will make WMLongLife switch to 2G when you connect to a Wi-Fi network. USB / Switch to 2G when USB is connected Enabling this option will make WMLongLife switch to 2G when you connect your phone to your computer using USB. This option is disabled by default, as it may cause excessive bandswitching if you are one of those people who cradle / uncradle their device often. USB also usually means charging, so the extra power needed for 3G is usually not an issue in this case. Data / Disconnect idle connections Enabling this option will disconnect idle data connections. If you have push mail enabled (and this is detected correctly) this option is turned off by default, else it should be turned on. Data / Idle connection timeout This option configures how long a data connection needs to be idle before WMLongLife disconnects it. Data / Disconnect idle connections when the screen is on If this option is not enabled, WMLongLife will only disconnect data connections when the screen is off. Data / Disconnect idle connections when the applications are running If this option is not enabled, WMLongLife will not disconnect data connections when a whitelisted application is running. Last edited by Chainfire; 29th July 2009 at 06:08 PM.. |
|
#3
|
||||
|
||||
|
Data / Disallow background connections
When this option is enabled, WMLongLife will deny access to applications creating so called "background" connections, and only allow "interactive" connections. When an application connects to the internet, it tells Connection Manager some specifics. Only interactive applications like browsers / YouTube / etc should create "interactive" connections, while other application that need something from the internet but which you did not manually initiate should create "background" connections. Obviously this setting only has an effect on applications that set this information correctly. If you have connection notifications turned on, "interactive" connections are the ones that pop-up a "Connecting to ..." bubble - "background" connections do not do this. Roaming / Disable cellular data connections when roaming [no longer available in 0.65, use RoamFreely instead] This option allows you to configure which data connections you want to disable when you are roaming. Roaming / Switch to 2G when roaming When this option is enabled, WMLongLife will switch to 2G when you are roaming. Roaming / Treat 2G as roaming [no longer available in 0.65, use RoamFreely instead] When this option is enabled, WMLongLife will treat a 2G signal as if you are roaming. Obviously, when using this option, you should disable all other options that may make the device switch to 2G - if you don't, this will result in WMLongLife always thinking you are roaming. Roaming / Turn off AGPS when roaming [no longer available in 0.65, use RoamFreely instead] This option should only be enabled if you actually use AGPS. This should be auto detected upon first installation, however this detection does not always work correctly. If you do not use AGPS, make sure this option is turned off. If you do not use AGPS but this option is enabled, WMLongLife will also enable AGPS when you are not roaming. If your AGPS is not properly configured, this may slow down normal GPS operation. Configuration - Application specific WMLongLife comes preconfigured with optimal settings for various common applications. However, should you use an application that is not listed here, WMLongLife will automatically pop-up a configuration box when that application tries to use the internet. It is not possible to manually add or remove applications from the application list - and this is completely unnecessary! The application specific configuration screen shows the list of configured applications, and icons to show their currently configured options. When you click an application in the list, the application configuration screen will popup. There are five options in this popup: 3G, Screen/Off, Wi-Fi and USB. 3G This option decides whether or not WMLongLife should give 3G to this application. If the 3G option is not enabled, all the other options are not relevant. Screen/Off This option decides whether or not WMLongLife should give 3G to this application, even if the screen is turned off. Most applications do not need this - pretty much the only exceptions are tethering applications. Wi-Fi This option lets WMLongLife know if this application can use Wi-Fi instead of 3G for its internet connection. Most applications can, however obvious exceptions are (again) tethering applications. USB This option lets WMLongLife know if this application can use USB instead of 3G for its internet connection. Most applications can, however obvious exceptions are (again) tethering applications. Background time-out This option configures how long WMLongLife will treat an application as "running" if it has not been actually visible on your screen. This only applies to applications that do not actually close when you press the "X" button. If an application is truly closed, WMLongLife will immediately treat it as "not running". However, applications like for example the Opera browser will always remain running in the background, whether you are using them or not, these will be treated as "not running" when they have not been "seen" for the length of time the background time-out is configured. Most applications should be fine with a setting of 5 minutes or less. Applications that continue to use the data connection (like tethering applications) should have the time-out disabled. ---- ![]() ![]() ![]() ![]() ![]() Last edited by Chainfire; 26th January 2010 at 10:41 PM.. |
|
#4
|
||||
|
||||
|
To-do & Issues
Changelog - 0.65.287 (PUBLIC)
Changelog - 0.62.211 (PUBLIC)
Changelog - 0.60.200 (PUBLIC)
Changelog - 0.60.191
Changelog - 0.50 (beta - private)
(0.5 = changes since 0.2, written after the fact, is not complete) Last edited by Chainfire; 26th January 2010 at 10:48 PM.. |
|
#5
|
||||
|
||||
|
I added a really small and simple API as it has been requested by several people.
The DLL file is WMLongLifeAPI.dll and is installed in your \Windows. Use LoadLibrary and GetProcAddress to get at the functions. Here are the function definitions: Code:
DWORD WMLL_APIVersion(); BOOL WMLL_IsRunning(); #define BAND_SWITCH_WMLL 0 #define BAND_SWITCH_2G 1 #define BAND_SWITCH_3G_AUTO 2 #define BAND_SWITCH_3G_FORCE 3 VOID WMLL_BandSwitch(DWORD band); VOID WMLL_DataDisconnect(); VOID WMLL_ReloadSettings(); Returns the current API version. WMLongLife 0.65 returns 0x100 - or API version 1.00. BOOL WMLL_IsRunning(); Returns whether or not WMLongLife is loaded and running. Note that WMLongLife can take up to a minute (sometimes longer) to activate itself. VOID WMLL_BandSwitch(DWORD band); Instructs WMLongLife to switch bands. As band parameter use one of the BAND_SWITCH_* values listed above. BAND_SWITCH_WMLL returns control of band switching back to WMLongLife. Note that this may happen automatically when the screen goes off, this depends on WMLongLife configuration options. VOID WMLL_DataDisconnect(); Instructs WMLongLife to disconnect all cellular data connections. VOID WMLL_ReloadSettings(); Instructs WMLongLife to reload all settings from registry. Last edited by Chainfire; 26th January 2010 at 11:15 PM.. |
|
#6
|
||||
|
||||
|
You are a genius and you are super witty to boot! Thanks, I will report bugs if I find any!
![]()
__________________
Phones- MT3G Rooted and running CyanogenMod v4.2.14.1 "Son,your about as usefull as a poopy-flavored lollipop!" -Patches O'Houlihan. I don't want to gain the whole world and lose my soul! -Toby Mack. |
|
#7
|
||||
|
||||
|
This is brilliant.. if only I had a MSM device..
![]()
__________________
Everything is possible. Impossible just takes longer. Current Device: HTC Touch HD ROM: Radio: Storage: -- Previous Devices: Samsung i780 HTC Touch Dual SOLD! HTC TyTN SOLD! O2 XDA Exec Nokia 6630, 3660, 6510 and 3210 Trashed ![]() |
|
#8
|
||||
|
||||
|
i780 is also on the to-do list.. I just happen to have one lying here next to me
![]()
__________________
BLOG - TWITTER E-Mobile: EM-ONE HTC: Wizard x2, Kaiser, Touch, Diamond, Pro, HD x2, Diamond 2, Pro 2 x2, HD2, Dream, Hero Samsung: i780, i900 x2, i8000 x2, b7320, b7330, b7620 x2 BB: Storm WMWifiRouter, KaiserTweak, FPU Enabler, MultASync, WMRegOptimizer, CFC+GUI, TF3D+v2 ports, Kaiser 3D, Omnia II GLESv1, ICSInstall, DriverWiz, WMLongLife, GfxBoost, MarketPlaceRegionSwitch, ETC! IRC: #XDA-Devs, #WMWifiRouter, #EliteTeam @ irc.freenode.net Donate if you like what I do! (link) |
|
#9
|
|||
|
|||
|
Sounds like something these MSM based 3G smartphones need (especially those for CDMA networks). I'll definitely test it and give you my feed back.
__________________
HTC Touch Vogue (TELUS) ROM: Bell 3.09.666.1 (Build: 19208.1.0.1) Radio: 3.42.50 Various tweaks and programs found on XDA-Developers, PPCGeeks, MoDaCo, WinMo-Experts, and 4WinMobile forums.
Thank you to all the developers who create the tools and programs that help many of us enlighten ourselves and become experts. Thank you to all the experts who enlighten us on the ways of enhancing our phones beyond the norm. |
|
#10
|
||||
|
||||
|
Well as stated everywhere, this is only for GSM... there's no CDMA equivalent. (perhaps one day?)
__________________
BLOG - TWITTER E-Mobile: EM-ONE HTC: Wizard x2, Kaiser, Touch, Diamond, Pro, HD x2, Diamond 2, Pro 2 x2, HD2, Dream, Hero Samsung: i780, i900 x2, i8000 x2, b7320, b7330, b7620 x2 BB: Storm WMWifiRouter, KaiserTweak, FPU Enabler, MultASync, WMRegOptimizer, CFC+GUI, TF3D+v2 ports, Kaiser 3D, Omnia II GLESv1, ICSInstall, DriverWiz, WMLongLife, GfxBoost, MarketPlaceRegionSwitch, ETC! IRC: #XDA-Devs, #WMWifiRouter, #EliteTeam @ irc.freenode.net Donate if you like what I do! (link) |
![]() |
| Thread Tools | Search this Thread |
| Display Modes | |
|
|