[App Idea] GSM/WCDMA Switcher - Nexus One Themes and Apps

Hey guys,
As the radio stack is the second cause of battery draining after the display, I was thinking about a way to save battery life by reducing the impact of the 3G connection. Most of the energy saving apps on the market are only disconnecting the phone from the APN, but this isn't a great solution as each app could be set to update at different times and thus being unable to download data even if the user sets some exceptions. So I thought that an application which operates in the following way could be great to save power:
- The phone uses the 3G network while the screen is on;
- It switches to 2G when phone is in standby mode;
- It disconnects the APN data connection while the phone is using a WiFi Network;
Obviously to avoid possible issues during the switch between 2G and 3G the following rules are applied:
- If there's an incoming call or a phone call is being performed, there won't be any radio switch until the phone call is ended;
- If there's an incoming SMS/MMS, there won't be any radio switch until the text message is fully received.
Unfortunately as I'm not a Java developer I can't code anything like this. But let me know what you guys think about my idea and if it's technically feasible... Maybe some developer could be interested into further exploring my thoughts and will try to create such an app
Cheers

I'm not a developer but I think it sounds like a great idea. I go into settings and switch it to 2g when I'm in spotty areas outside of town. I have to work a bit to keep my N1 battery alive all day...

Hello I'm new here.
I don't know if your suggested profiles are the best case scenarios. You would need to calculate your data throughput, not just the radio power.
If you need to send 100 packets, your radio would be on the longest for edge > 3g > wifi. So, even though wifi uses the most power, it would be for a much shorter duration.
A profile for "place calls only" would work somewhat like airplane mode, but still keep track of towers. Your phone just wouldn't register on the network unless you wanted to place a call. You would miss your incoming calls, have no data connection, or sms. But, you could have it check at an interval for voicemail or sms. This would be most useful for "ringer off" situations like class or meeting.

Afaik Android is always connected to the APN even if the phone is not downloading anything, consuming a lot of battery power. On other platforms, i.e. Windows Mobile, the connection can be terminated by user and re-established when an app needs that.
The amount of data downloaded by widgets, Google mobile applications or apps which operates in background like eBuddy or Facebook should be quite low, so downloading the required data by using GSM or WCDMA while the phone is in standby would be pretty much the same. The only difference is that downloading stuff using GSM/EDGE should take much less energy power.
So that's why I thought about the app I described before: the phone can save a lot of energy power while in standby and be back to its full horsepower when there is any kind of user intervention. Pretty much the same thing that the system already does for CPU usage. It scales to the less consuming protocol (or, in the case of CPU, frequency and voltage) to save power

I know on the google api it isn't possible to do this, but I don't think that isn't the problem.
At the moment you have 3 options. GSM only, WCDMA only and GSM/WCDMA. Whenever you switch between the 3 of them, the phone will lose signal for 10 seconds before it can find the best network. So the switcher here is not the best as you will lose connection, and what if you are downloading something at the same time...
What you need is when the phone is on GSM/WCDMA that it knows the best network to pick from depending on the phones lifecycle. GSM/WCDMA loses battery power because it always tries to find the best network to connect to, so for example if you are on GSM it will constantly try to find a 3G network etc (as far as I understand it).
What we need is the ability for the phone to stay on GSM when the phone is idle and then when the phone is woken up to automatically start to search for a WCDMA network and then gracefully switch over like it does now. For this I have no idea if it is possible as I don't know how the scanning of the network works. If it is possible then that would be wicked. But this is what we need.

my preference would be if the phone would stay on 3g as long as any possible even if there would be a more reliable 2g connection and only switch to 2g if there really is no way to connect to 3g. turn of apn if the screen us turned of for longer then 1 or 2 minutes and only check every 15 minutes or so.
most of the time I'm on 3g only mode . since I live in a city I got good coverage almost all over the city. only problem is that when there is no 3g available also my phone is unreachable. I don't really miss data connectivity when there is no 3g since 2g is so slow that I rather have no internet at all but not being sale to be called or texted is a major disadvantage...
Sent from my Nexus One using XDA App

Related

'Bands' tab and Advanced config questions

I've searched the forums for an answer to this and I've found partial answers. I'm hoping I can get a response that will work for me.
Firstly, in the 'Bands' tab, I'm looking for some clarification on the options available. Under 'network type' there is 'Auto', 'GSM', and 'WCDMA'. Auto, I understand. GSM I'm assuming means GSM network (T-Mo, AT&T and not CDMA). WCDMA, according to Wikipedia, is basically the network that allows 3G speeds over GSM networks.
Now, when I set the network to GSM, I get an EDGE icon in place of the 3G. When I set it to WCDMA, I get 3G, as well I should.
First question: If I set the network to WCDMA, will it force my Fuze to ONLY connect to 3G? Where I live, I'm finding it hard to find a 3G dead zone to test without traveling 30 miles...
Second question: Does forcing 3G only improve battery life? I read in one post there are separate radios for 3G and EDGE/GPRS (which makes sense as to how you're able to talk and use the data connection simultaneously) and by forcing one, the phone doesn't constantly scan for the other.
My third question has to deal with having my device automatically disconnect the data connection after it finishes its business. I read in several posts that 'Advanced Config' has an option to set the data timeout, but I've read through the menus several times and have seen no such option. Are there multiple versions of advanced config floating around? Barring that, could someone just tell me what registry entry to add/edit to set the timeout? I read in yet another post that the phone automatically disconnects after 30 minutes, but that doesn't seem to be the case, as I tested mine and we're going on over an hour with no connection drop. (No email is being checked and weather is disabled. Prior to me starting this particular data connection, the phone had been connectionless for almost 16 hours.)
AdvancedConfig/Menu/More settings/Connections.
There is also that option in DiamondTweak.
WCDMA means 3G only, which means that your phone isn't searching for GSM signal. I haven't noticed battery improvement when forcing 3G, although that would be logical.

[APP] 2G/3G Network Select for Evo

I am learning to write different types of apps and thought I'd give back to XDA. This just starts the 2G/3G menu hidden within the Evo. Only Sense ROMs. Also works on the Incredible. I hope people find it useful.
For 2G: Open-Mode of Operation-1x Only(2G).
For 3G: Open-Mode of Operation-Hybrid.(If you don't switch back to Hybrid you will not receive texts. So don't use EVDO only.)
I'd imagine this saves battery.
As far as I know, a direct switch isn't possible. But I may be mistaken. I'll continue to toy with this later.
-Ken
Isn't this the same or similar to just leaving mobile data off?
Curious...
~ I'm a fungi
a senile fungus said:
Isn't this the same or similar to just leaving mobile data off?
Click to expand...
Click to collapse
No, this would kill 3G coverage but still allow 2G coverage. You would still have data, it would just be significantly slower in kb/s.
notasimpleway said:
I'd image this saves battery.
Click to expand...
Click to collapse
I'd imagine it doesn't... and I'd imagine it actually uses more battery life. Your phone's data needs are what they are (unless you start shutting down apps that use data), but now you are using more CPU cycles to send, receive, and process that data.
For example, let's assume:
Your phone uses 1MB of data each hour for general background syncing (contacts/rss/facebook/etc.)
3G is 800 kb/s
2G is 100 kb/s (I really don't care enough to track down the actual speeds... just bear with me)
1mb = 1000kb (That's not quite accurate but good enough for now)
At 3G speeds your phone's processor wakes up, idles for 1.25 seconds while waiting for the data to download, processes the data, then goes back to sleep.
At 2G speeds your phone's processor wakes up, idles for 10.0 seconds while waiting for the data to download, processes the data, then goes back to sleep.
You can see how this becomes a big problem if you're using more than 1MB of data each hour.
notasimpleway said:
I am learning to write different types of apps and thought I'd give back to XDA. This just starts the 2G/3G menu hidden within the Evo. Only Sense ROMs. Also works on the Incredible. I hope people find it useful.
For 2G: Open-Mode of Operation-1x Only(2G).
For 3G: Open-Mode of Operation-Hybrid.(If you don't switch back to Hybrid you will not receive texts. So don't use EVDO only.)
I'd image this saves battery.
As far as I know, a direct switch isn't possible. But I may be mistaken. I'll continue to toy with this later.
-Ken
Click to expand...
Click to collapse
Thanks ken!
Im always down to test new things
How does this differ from what you get when you hold down the power button and then disable mobile data?
oh yes, this is nice when you want to tether your EVDO signal without being interrupted by phone calls or text messages by selecting EVDO Only. yes! thanks!
btw, i used to have a Palm Pre and the dialer code was ##3836# but it never worked on the HTC EVO 4G.
Noxious Ninja said:
How does this differ from what you get when you hold down the power button and then disable mobile data?
Click to expand...
Click to collapse
simple. this does not disable data. your phone connects to two different radio signals, one providing voice, messaging and 1xRTT data, and the other one is for EVDO data only. this gives you the option to select whether the phone uses either the 1xRTT only, EVDO only, or Hybrid (as it is by default).
the main advantage is the ability to tether uninterrupted by phone calls (which disconnects the phone from the mobile Internet on incoming/outgoing calls) or text messages (when you receive text messages, the Internet, either 2G or 3G, stalls for a few seconds and could break downloads) by selecting the EVDO only option.
a senile fungus said:
Isn't this the same or similar to just leaving mobile data off?
Curious...
~ I'm a fungi
Click to expand...
Click to collapse
no. read my previous quote.
d0cx said:
simple. this does not disable data. your phone connects to two different radio signals, one providing voice, messaging and 1xRTT data, and the other one is for EVDO data only. this gives you the option to select whether the phone uses either the 1xRTT only, EVDO only, or Hybrid (as it is by default).
the main advantage is the ability to tether uninterrupted by phone calls (which disconnects the phone from the mobile Internet on incoming/outgoing calls) or text messages (when you receive text messages, the Internet, either 2G or 3G, stalls for a few seconds and could break downloads) by selecting the EVDO only option.
Click to expand...
Click to collapse
+1+1 brotha i like the way u think lol
Great minds think alike
Minimalistic Mikfroyo 4.4
d0cx said:
simple. this does not disable data. your phone connects to two different radio signals, one providing voice, messaging and 1xRTT data, and the other one is for EVDO data only. this gives you the option to select whether the phone uses either the 1xRTT only, EVDO only, or Hybrid (as it is by default).
the main advantage is the ability to tether uninterrupted by phone calls (which disconnects the phone from the mobile Internet on incoming/outgoing calls) or text messages (when you receive text messages, the Internet, either 2G or 3G, stalls for a few seconds and could break downloads) by selecting the EVDO only option.
Click to expand...
Click to collapse
d0cx, there's another way to tether uninterrupted.
Menu-Settings-Call-DDTM Mode.
This will send all calls to VM if there is data being transferred.
I use it when I don't want to be interrupted. A side-effect is no texts being received though.
notasimpleway said:
d0cx, there's another way to tether uninterrupted.
Menu-Settings-Call-DDTM Mode.
This will send all calls to VM if there is data being transferred.
I use it when I don't want to be interrupted. A side-effect is no texts being received though.
Click to expand...
Click to collapse
i used that too as well. but as far as i could recall, i could still receive texts with the DDTM Mode.
skylar.sutton said:
No, this would kill 3G coverage but still allow 2G coverage. You would still have data, it would just be significantly slower in kb/s.
I'd imagine it doesn't... and I'd imagine it actually uses more battery life. Your phone's data needs are what they are (unless you start shutting down apps that use data), but now you are using more CPU cycles to send, receive, and process that data.
For example, let's assume:
Your phone uses 1MB of data each hour for general background syncing (contacts/rss/facebook/etc.)
3G is 800 kb/s
2G is 100 kb/s (I really don't care enough to track down the actual speeds... just bear with me)
1mb = 1000kb (That's not quite accurate but good enough for now)
At 3G speeds your phone's processor wakes up, idles for 1.25 seconds while waiting for the data to download, processes the data, then goes back to sleep.
At 2G speeds your phone's processor wakes up, idles for 10.0 seconds while waiting for the data to download, processes the data, then goes back to sleep.
You can see how this becomes a big problem if you're using more than 1MB of data each hour.
Click to expand...
Click to collapse
But aren't you just thinking of data transfer time? You aren't thinking about how using a 2G network uses a lot less juice than the 3G network over a longer period. I know on GSM networks using a 2G connection will save a lot of battery. Yes, it will take more time to sync while it is in your pocket, but not enough to matter I would think. If the phone is syncing 1mb files all the time, something might be wrong. I wouldn't sit around with it on 2G while trying to download a MP3 or a stream video. It should mainly be syncing emails/RSS feeds, which are small files. Well, I say small, but some of you may have 100 feeds.
I guess battery consumption using a 2G network is very much debatable unless someone wants to run some tests. Even then, it is how the user uses his phone.
d0cx said:
i used that too as well. but as far as i could recall, i could still receive texts with the DDTM Mode.
Click to expand...
Click to collapse
Maybe no one likes me and never sends me texts while I'm using it. I was using DDTM mode last week and after a couple of hours I realized I had not gotten one text the whole time... I sent myself one and didn't get it till I turned off DDTM mode. So, that's all I'm basing that off of. It may just have been that day, ya know?
notasimpleway said:
You aren't thinking about how using a 2G network uses a lot less juice than the 3G network over a longer period. I know on GSM networks using a 2G connection will save a lot of battery.
Click to expand...
Click to collapse
CDMA is a totally different beast than GSM. 1xRTT actually uses more raw power per bit than EV-DO.
On GSM, Edge/GPRS will only save more battery than 3G over a long period if you're downloading small amounts of data like push notifications, light email and using IM. Unfortunately, doing the same thing on 1xRTT would use more battery.
zeuzinn said:
CDMA is a totally different beast than GSM. 1xRTT actually uses more raw power per bit than EV-DO.
On GSM, Edge/GPRS will only save more battery than 3G over a long period if you're downloading small amounts of data like push notifications, light email and using IM. Unfortunately, doing the same thing on 1xRTT would use more battery.
Click to expand...
Click to collapse
I was afraid they would be different. Can someone tell me what are the benefits of CDMA again? ;P
Sent from my iPhone with the bigger Gee Bees.
Well, hopefully someone can get use of this activity. If only for the EVDO only mode.
Sent from my iPhone with the bigger Gee Bees.
still use it. works perfectly. no more interrupted/stalled downloads due to my friends messing up my internet. haha.

[Q] Change 2G/3G switching treshold

Generally my sensation has a decent reception. Most of the times i`m able to get a decent 3G/HSDPA signal without any problems.
The problem is, that I live outside the city and at home my (3G) reception sucks. My Sensation seems to suffer from this poor reception a lot more then my previous Desire-Z.
The 2G connection is fine. When the phone switches to 3G however, I only get one bar and the connection frequently drops so that I have no service at all. When i set the phone to only use 2G, the connection stays stable and since I have wifi, having only GPRS at home is no problem.
I don`t want to leave my phone on 2G only because when i`m not home, the 3G connection is usually fine. I was wondering if there is a way to manually change the 2g/3g switching treshold so the phone will only switch when it has a decent 3G signal. I tried to set GSM Auto (PRL) at the #*#4636#*#* menu, but this doesn`t do the trick.
Thanks
You might have already found an answer to your question, but in case you haven't, you might wanna check out WMLongLife.
It has the ability to automatically disable 3G when you have access to a WiFi network.
Hope this helps
I would be quite interested to see the trick how you are running such a deep system tweak application from Windows Mobile on a Android phone ...
Best regards,
dingolino
But there is a possibility with Tasker
http://forum.xda-developers.com/showthread.php?t=739530
Psycho_dad_rules said:
You might have already found an answer to your question, but in case you haven't, you might wanna check out WMLongLife.
It has the ability to automatically disable 3G when you have access to a WiFi network.
Hope this helps
Click to expand...
Click to collapse
I used tasker to achieve this, when it notices my wifi ssid, it switches off 3g. The down side is that wifi needs to be on ask the time. You could also use "show and switch 2g/3g" from the market, with this APp you can switch with one button or use a schedule.
Guy from reply #2, this is an Android forum not winmo. Winmo it's dead.

OPO - Data usage (Cellular) restrictions for calls and data separately

Hi Guys,
I am here with a..I hope possible to solve situation.
I have switched to our local carrier, which provides only 2G and 4G connection, but... I have 1GB of data for 4G, but my OPO is sometimes switching to EDGE, which makes me fury, because I am paying for anything transferred through 2G (separately as it is not in the data package I have), but all calls are on 2G, which makes restricting the connection to "LTE-only" impossible, becuase it would result in no access to the calls/text messages.
I have found this article
http://editorsean.com/articles/how-to-force-three-to-use-3g-and-4g-only/
which is really great, but with those options I am forced to use GSM/LTE and such..
Is there any chance of letting my calls and text messages just using 2G network as usuall, but forcing my internet access using just LTE ? There is of course an option for disabling "national roaming" (I hope, it is called the same in english), I have it disabled, but it is still connecting to the 2G and draining data from it...
Is there a chance it is a problem from my side ? I did not factory reseted the phone since buying, doing just OTA upgrades and such, so I was thinking, if the system is not kind of bloated...I had some weird things happening with it too in the past - recently I have seen that in the battery saving mode I could see some like various screen brightness jumps while playing a game for example.

[SOLVED] 3G consumes more battery than LTE, how this happens?

Hello XDA Community!
When my new phone (Huawei P9 Lite Mini) is on 3G/2G auto network mode, it consumes more battery than LTE/3G/2G auto mode even mobile data off.
I do not understand how this happens? For example, while 3G consumption at overnight is %10-15; LTE is only %2-3. This problem is the same in daytime too. Mobile data is off, unneccesary services/apps disabled, and no extra application installed while this happens. I tried all "wipe/factory reset/update firmware/factory reset/wipe/no app install" procedures, enabling all battery saving options, but it did not work. This is a problem for me when I'm in non-LTE areas.
This problem occurs the same result in different locations. There was no problem with my previous phone and I use same nano sim card.
I tried the following but it did not work:
- Wipe cache, factory reset, wipe cache,
- Wipe data/factory reset over recovery menu,
- Update latest firmware, wipe data etc. again.
How this happens and where am I doing wrong? Thank you for your help, best regards!
EDIT: PROBLEM SOLVED!
I changed my mobile carrier (provider) and the problem is gone. This is very interesting! I worked for hours and days to solve the problem, but this problem is neither caused by the phone nor by the software...
WCDMA (aka 3G with support for 2G/Edge) is in always-on mode on most phones, because that's how you receive and emit phone calls and, for most phones, SMS (in some more recent phones, LTE takes care of sending and receiving SMS/MMS), so if you're in an area where 3G/2G reception is poor, your phone has trouble locking on a cell with enough power to maintain contact, hence the battery drain.
4G/LTE only works for data, and voice if you have VoLTE (Voice over LTE) enabled, but works on a on-demand mode, even with cellular data constantly enabled. In other words, the 4G modem on your phone will memorize the latest position and IP address the nearest 4G tower/cell allocated it, and connect to it using the memorized settings when you need it to.
Not so with 3G, where DHCP doesn't exist, at least not the way it does in 4G: it uses PPP (Point-to-Point Protocol), where an ad-hoc IP address is attributed to each new connection, based on a pool of existing addresses allocated to the tower and its owner (carrier) by the authorities.
UglyStuff said:
WCDMA (aka 3G with support for 2G/Edge) is in always-on mode on most phones, because that's how you receive and emit phone calls and, for most phones, SMS (in some more recent phones, LTE takes care of sending and receiving SMS/MMS), so if you're in an area where 3G/2G reception is poor, your phone has trouble locking on a cell with enough power to maintain contact, hence the battery drain.
4G/LTE only works for data, and voice if you have VoLTE (Voice over LTE) enabled, but works on a on-demand mode, even with cellular data constantly enabled. In other words, the 4G modem on your phone will memorize the latest position and IP address the nearest 4G tower/cell allocated it, and connect to it using the memorized settings when you need it to.
Not so with 3G, where DHCP doesn't exist, at least not the way it does in 4G: it uses PPP (Point-to-Point Protocol), where an ad-hoc IP address is attributed to each new connection, based on a pool of existing addresses allocated to the tower and its owner (carrier) by the authorities.
Click to expand...
Click to collapse
Thank you for your reply!
When I googled about 3G vs. LTE battery consumption, everyone says that LTE will consume more batteries. That's make sense on first thought. So what I've been through is very interesting to me.
I think about is there a problem with my phone's 3G antenna. (footnote: I don't know about that 3g and LTE antennas are same or seperate?)
But I understand that you say this is normal, right?
Edit: I found a forum that this problem may be due to the operator (carrier). I'm still investigating...
3G and 4G operate on basically the same principle: receiving and sending "information" via radio waves.
The difference lies in the frequencies each standard uses, the way the data sent over them is modulated and demodulated, and how handsets make and maintain connection, so if you stay in the same location, and set your phone to 3G-only, then switch Airplane mode on then off, it'll take your phone longer to reconnect to the 3G cell/tower with the strongest signal (not necessarily the closest to you), because it'll have to go through the whole getting-acquainted process again, whereas in 4G, it'll go straight to the "Hey, how do you do? Long time, no see".
Now, if your phone antenna has a problem, you could be standing a few feet from the tower, in line of sight, and still get a crappy to non-existent signal. How many bars are showing on your screen is just an indication of how well your phone is receiving the signal from the tower; it doesn't mean that this signal is consistent and steady, hence the bars coming and going in real time.
If I were you, I'd download and install the Hidden Settings app from the Play Store, and run it; there, you go to RadioInfo, and you'll get a lot of information about how your phone modem actually works. It's a bit technical, but it would give you an indication.
I will try and looking for a new carrier. Thank you again. See you.
I changed my mobile carrier (provider) and the problem is gone. This is very interesting! I worked for hours and days to solve the problem, but this problem is neither caused by the phone nor by the software...

Categories

Resources