Symbol MC70/MC9090 - TCP/UDP data transfer calls SystemIdleTimerReset - General Questions and Answers

Hi xda-developers,
I wonder if you can help me. I've been battling with Motorola(Symbol) over a major power saving issue. What they have done is whenever a TCP or UDP data packet is sent or received, they force a reset of the system idle timer. So, as you can imagine if the device were set to sleep after 5 minutes and a mail client checked for mail every 4 minutes the device would never sleep.
Please correct me if I'm wrong but doesn't that go against the design of the OS?
This is causing major problems with our application that retains an open connection for pushing data from our servers to our mobile devices. The application sends a keep alive packet every 45 seconds to let the server know the device is within GPRS range and online.
Motorola seem very reluctant to change this stating it's "the desired and better behavior for MOST customers".
They also state that it would be "impossible to transfer big file since the terminals will suspend before finishing". Surely this is why an application transfering a large file should call SystemIdleTimerReset function.
Please note, this feature is only implemented on 2 devices. Motorola claim that these two devices are "focused in different environments where the user needs and preferences are different".
Personally, I can't think of any scenario in which you'd want to force this functionality. Regardless of environment.
I don't really know where to go next on this issue. Motorola are not listening.
Any help or comments would be greatly appreciated.
Thanks in advance
Tom Bradley

Related

Auto Disconnect GPRS while device is asleep

Hi, I know this topic has been covered many times, but I here's my issue.
I have phoneAlarm running on my Trinity and set phoneAlarm to cut my data connection after 1min of data inactivity and it all works fine. I can browse the web, check emails using the WM5 inbuilt email application. After 1 min of data inactivity, my connection is cut, brilliant, works like a treat.
However, once the device is asleep, and my email application polls, the data connection remains connected (if there are no emails, it won't wake up) and I have to switch on again and either let it disconnect when awake, or manually disconnect it.
The funny thing is, its just the email application thats causing this. If I was browsing using PIE and just press the power button whilst it was still connected, it times out and it gets disconnected, and the next time I wake up the device I can see there is no data connection.
it seems like the WM5 email application whilst asleep is either holding on to the connection or some data is being transferred, as I said it doesn't happen if the device is awake.
This really is bugging me, as the whole point of setting up "Auto disconnect" is so I can leave it and trust it to only connect when need be. Currently, if I don't use the phone and don't receive any emails, my GPRS connection is on all the time whilst the phone is asleep.
I have tried other programs, but generally, all of these applications perform the same registry tweak.
Sorry for long post.
I did a program (ConnectionManager) that wakes up the pda to Idle state (screen off, no sound and cpu to minimum level) each 3 minutes and check the states of connections. If there isnt traffic in 2 minutes the connection is closed.
Hi,
Interesting. Do you have a link to that program? Tried to find it in the forum by searching for "ConnectionManager" and found nothing.
So when the device is in idle state, min CPU, screen off etc, there's no problem in accepting calls etc?
I was reading a thread regarding the other program you wrote that switches bands, was interested in that too.
Thanks for your help.
Don't worry, I've found it, and it WORKS. You're a star!!!
exactly what I was looking for. It did come across it before, but for some reason I thought you didn't check for data flows and close the connection full stop. Obviously i mis read
I've downloaded WM5 SDK, but didn't really know where to start, I am a developer, but don't know anything about the WM5 APIs. Cheeky question, but is it possible to let me have the source code?
I would love to enhance something like this, would love it to be a today plug in and let you enable it without opening a new form. Settings about how long before checking. Not sure how easy it would be.
Just a comment really, not sure if its just my device (Trinity) but the Close Program button seems to be out of shape, i.e. larger than the other 3 and goes right to the edge of the screen.
Oh, one more question, do you think having the device on idle will have much impact on battery life. Once the device is in idle, does it suspend again, or does it keep it in idle until you switch it on again?
Thanks again!
Hi, another thing. Having tried this program out for a little while now, it seems to not let the device time out into suspend state. For me, it seems to just lower the brightness of the screen. The program still works, but it won't let the device suspend automatically, i thought it would switch it to idle, and turn of the screen.
Once the machine is suspended manually by pressing the power button, then its fine. Do you have this issue?
Still works like a treat though, and better than anything I had before!
Thanks again!
Sorry, my mistake. It all works fine!
Hi. I was going to do other release (the user can modify connections check, etc) but i will post the source code, sure (but the source code is in my laptop). tomorrow i will post it.....
Greetings
hongsit said:
Don't worry, I've found it, and it WORKS. You're a star!!!
exactly what I was looking for. It did come across it before, but for some reason I thought you didn't check for data flows and close the connection full stop. Obviously i mis read
I've downloaded WM5 SDK, but didn't really know where to start, I am a developer, but don't know anything about the WM5 APIs. Cheeky question, but is it possible to let me have the source code?
I would love to enhance something like this, would love it to be a today plug in and let you enable it without opening a new form. Settings about how long before checking. Not sure how easy it would be.
Just a comment really, not sure if its just my device (Trinity) but the Close Program button seems to be out of shape, i.e. larger than the other 3 and goes right to the edge of the screen.
Oh, one more question, do you think having the device on idle will have much impact on battery life. Once the device is in idle, does it suspend again, or does it keep it in idle until you switch it on again?
Thanks again!
Click to expand...
Click to collapse
Idle is a state with minimum impact...but is bigger than suspended. When the device wakes up to idle state it is suspended again after a few seconds if the cpu isnt used too much. When the device is woke up by a app notification (Its our case) the system suspends very quickly. In my tests (using log method) the program does its stuff (1 seconds) and 10 seconds later the system is suspended again...
I ve used Visual Studio 2005 and the program was wrote using C (not MFC)...
Hi Daniel
Where can I download this app ?
Thanks and regards
Martin
I am curious if you gprs comes on for your push mail, can you still make outgoing call and also send text messages?. I have this issue for my atom exec and it's annoying me. Thanks
hongsit said:
Hi, I know this topic has been covered many times, but I here's my issue.
I have phoneAlarm running on my Trinity and set phoneAlarm to cut my data connection after 1min of data inactivity and it all works fine. I can browse the web, check emails using the WM5 inbuilt email application. After 1 min of data inactivity, my connection is cut, brilliant, works like a treat.
However, once the device is asleep, and my email application polls, the data connection remains connected (if there are no emails, it won't wake up) and I have to switch on again and either let it disconnect when awake, or manually disconnect it.
The funny thing is, its just the email application thats causing this. If I was browsing using PIE and just press the power button whilst it was still connected, it times out and it gets disconnected, and the next time I wake up the device I can see there is no data connection.
it seems like the WM5 email application whilst asleep is either holding on to the connection or some data is being transferred, as I said it doesn't happen if the device is awake.
This really is bugging me, as the whole point of setting up "Auto disconnect" is so I can leave it and trust it to only connect when need be. Currently, if I don't use the phone and don't receive any emails, my GPRS connection is on all the time whilst the phone is asleep.
I have tried other programs, but generally, all of these applications perform the same registry tweak.
Sorry for long post.
Click to expand...
Click to collapse
where can I find this piece of software?
http://forum.xda-developers.com/attachment.php?attachmentid=34693&d=1172683590

WM6 UMTS/GPRS always on

Hi there,
My 3G connection stays on after a web browse or an email check process makes my device connect. I looked at "HKLM\Comm\ConnMgr\Providers\[GUID]\Connections\[Connection Name]" and to my surprise AlwaysOn flag was off. Can someone help me with this? I like the fact that my device connects to the Net automatically when there is need, however maintaining the connection kills the battery, I need a way to kill the connection somehow automatically (either after a period of inactivity or when the application requesting the connection ends).
Cheers,
Shafa
If it is maintaining Gprs on, there must be a program requesting it - do you have direct push enabled?
Also, having the connection constantly 'enabled' but not actually transferring data will have a negligible effect on the battery life so shouldnt matter.
If your battery life is significantly worse (as you have suggested), then you must be transferring data, so no matter what you do, unless you actually permanently disable the data connection so you cant use it at all, it will keep connecting to transfer whatever data it is transferring...
I hope that made sense
GPRS/UMTS
Hi,
Have you tried turning the Data Connection off by holding in the End Call Button for approx 3-5 seconds. This should terminate an active connection unless as mentioned above you have an app running that is requesting data.
Cheers,
Beast
Thanks guys,
1. the fact that only transferring data should drain my battery: makes sense; I will test more.
2. the fact that I can kill the connection manually: I could always do that from comm manager, needed it to drop automatically.
Cheers,
Shafa

Data Auto Disconnect

I'm sure this is a noob question, but I can't find the answer on the forum.
I've seen a couple people reference automatically ending the data connections when they're idle. Can someone explain how this is done?
Is the desire to disconnect the data to save on battery life? Just curious. Thanks.
That's the main reason I want to do it...not sure about others...
I figured out two ways to do this for anyone else that's interested.
1) Using Advanced Config Tool (V3.3): Menu > More Settings > Connections. Check "Disconnect After" and set the timeout you want. This seems to work well for activesync connections (my mail is set to recieve every 5 min), but doesn't always work for on demand connections (Internet).
2) Comm Manager Pro. No instructions for this since I'm not using it (yet). But everything I've read looks like it does it.
Like I mentioned, I've got my email configured to sync every 5 minutes and I have a connection timeout of 30 seconds set in Advanced Config. This setup has drastically improved my battery life. Before this change, I got maybe 12 hours on a good day. With this timeout set, I could probably get 2 solid days. The only thing I haven't figured out is if the timeout is and idle timeout or an overall timeout. What I mean, is will the connection end after 30 seconds even if it's in use?
I'm interested in this as well, it would be even better if outlook or msn live would make a connection and disconnect after synchronizing.
I've been looking for the same solution. So far using advanced config settings will force disconnect no matter if it was idle or not. I'm looking for a solution to disconnect only when idle.
As of proof, set auto disconnect to 1 minute and using latest skype v3.0 start transferring a large file. After 1 minute data connection will be forcibly disconnected.
Any solutions for this?
Thank you.
Can someone help me find the timing setting in Advanced Config? I've looked through everything - using Energy 3.0 Rom (WM6.5) and don't see anything related to data disconnect other than under "Data Connections:" "GPRS disconnect:" and my settings are "Enable button and timer"
I don't see where the timer comes into play; don't really care if the connection gets cut off - I'd rather see a battery life improvement.....
I'm an absolute idiot. I just skimmed through the thread and didn't read the post above... *smacks forehead*
Its been posted in this very topic, and its only 5 replies long
xawen said:
I figured out two ways to do this for anyone else that's interested.
1) Using Advanced Config Tool (V3.3): Menu > More Settings > Connections. Check "Disconnect After" and set the timeout you want. This seems to work well for activesync connections (my mail is set to recieve every 5 min), but doesn't always work for on demand connections (Internet).
2) Comm Manager Pro. No instructions for this since I'm not using it (yet). But everything I've read looks like it does it.
Like I mentioned, I've got my email configured to sync every 5 minutes and I have a connection timeout of 30 seconds set in Advanced Config. This setup has drastically improved my battery life. Before this change, I got maybe 12 hours on a good day. With this timeout set, I could probably get 2 solid days. The only thing I haven't figured out is if the timeout is and idle timeout or an overall timeout. What I mean, is will the connection end after 30 seconds even if it's in use?
Click to expand...
Click to collapse
In advanced config the settings you are looking are not located in the list on first screen, the are in separate menu as described above.
And now I'll quote myself so my question will not get burred:
[email protected] said:
I've been looking for the same solution. So far using advanced config settings will force disconnect no matter if it was idle or not. I'm looking for a solution to disconnect only when idle.
As of proof, set auto disconnect to 1 minute and using latest skype v3.0 start transferring a large file. After 1 minute data connection will be forcibly disconnected.
Any solutions for this?
Thank you.
Click to expand...
Click to collapse
guys, found this
http://www.andrewsayshello.com/windows-mobile/auto-disconnecting-idle-data-connections-in-wm6/
hope this helps in some way
Thanks for the link, unfortunately it still disconnects even if data connection is in use.
WMLongLife can do this for you.
About the registry tweak that does this, I must warn you: it disables the ability to do voice and data simultaneously.
Chainfire said:
WMLongLife can do this for you.
Click to expand...
Click to collapse
Just checked WMLongLife and it seems that program does not quiet work if one doesn't use opera or wifirouter...
Chainfire said:
About the registry tweak that does this, I must warn you: it disables the ability to do voice and data simultaneously.
Click to expand...
Click to collapse
This is new for me...I thought that data connection cannot co-exist with phone call, period..
[email protected] said:
Just checked WMLongLife and it seems that program does not quiet work if one doesn't use opera or wifirouter...
Click to expand...
Click to collapse
Yes it does require a certain way of using your phone (current test version has specific settings - you can change this in next version). Just saying.
This is new for me...I thought that data connection cannot co-exist with phone call, period..
Click to expand...
Click to collapse
Yes it can, but it depends on several factors. Under ideal (and never actually occuring) conditions it can be done with 2G GSM (GPRS/EDGE). Normally, however, either GPRS/EDGE connection suspends ('pauses') during voice call, or with 2G CDMA voice call may not work at all while data connection active (depends on exact 2G CDMA network type).
With 3G GSM (UMTS/HSPA) it is quite possible (and normal) to do data and voice simultaneously, however for some reason the auto data disconnect registry tweak breaks it. I'm not quite sure why, but it does.
3G CDMA (EV-DO) behaves the same as 2G GSM with regards to simultaneous voice and data (data drops), however, EV-DO Rev. A behaves the same as 3G GSM (possible but broken by registry tweak)
Aside from this, it is also needed that your provider/network has the correct hardware to handle this. I'm not sure how common it is for this properly operating on EV-DO Rev. A, but for UMTS/HSPA early tower equipment was bugged and did not allow this. In Europe, most UMTS/HSPA towers have since been upgraded to allow simultaneous voice and data (and HTC handsets support this perfectly), but how this is in the USA I cannot say.
Hope that explains it (it is a bit messy explenation I know)
if this dowsn't work then i have no ideea what will )
http://forum.xda-developers.com/showthread.php?t=484084
tell me if worked for you
!!!!!
I had it set to disconnect (via Diamond Tweak software) after 1 minute of activity. I did this to preserve battery life, BUT BUT BUT
With 3g on, and even with 3g disabled all day and edge on, the battery still died in 8, 12 hours (3g, edge) with the connection disabling. i use the phone for a good number of calls, text, and some data every day.
AFTER i reenabled it to NOT disconnect after every 1 minute, i pulled over 24 hours on a SINGLE charge.
am i the only one that's experienced this??

activesync, google

Saw someone post this on Slashdot. Is this guy right about ActiveSync, in that it does not leave the radio open but somehow doesn't close the connection to whichever server it's connected to and therefore saves more power than, say, keeping an IMAP-Idle connection open? Or is this different for the iPhone and does some Blackberry-like method?
Running an active TCP session for an IM client constantly would light up much more of the iPhone's hardware, and drain the battery that much faster.
​Well, not exactly....
An active TCP session is EXACTLY what Apple's Push Notification Service [apple.com] uses.
Its an extended version of ActivSync [microsoft.com], Licensed from Microsoft.
It works like this:
You open a TCP connection with an Apple Notification server, and shutdown the radio, leaving the connection open, by never explicitly closing it. With the radio down, the phone is Saving power.
Periodically, you wake up the radio, check if the TCP socket is readable. If so, you read it, and notify the user, and optionally launch that application that the notification was destined for.
If the socket failed, (timed out, network dropped, etc) you reestablish the socket.
Since TCP timeout is usually on the order of 12 minutes or longer, this happens only about 5 times an hour.
Checking socket readability takes just a tiny bit of power for a very very short time. So your radio is on for a few seconds every hour. (Which it is anyway, listening for incoming calls).
Apple's push notification leverages this single socket connection to an unlimited number of applications in the iPhone, by having a single daemon watching the socket, signaling the target app, and notifying the user.
It operates similar to InetD [about.com] in Linux, other than instead of waiting for new connections, it is watching existing ones. In fact, there is some discussion as to whether ActiveSync is even patentable because it is so obvious.
And to be perfectly pedantic, Antennas do not consume any power when receiving.
Click to expand...
Click to collapse
Also I found this article written yesterday claiming, I think, that Google has updated Google Sync to include Gmail support for activesync-using devices. I think it's implying that the addition of push-email is free. Can someone confirm that? If so with a regular Gmail account, if you have added another email account to use as a from address, could you use the same from address over ActiveSync or is that a web-only thing?
Finally, any phone-side registry-like tweaks to get your phone to chill and not care that your server doesn't have a certificate, self-signed/generated or otherwise, with ActiveSync over SSL?
Thanks.
Doug
Google active sync
Hello,
I read the article too, and ofcourse I tried it out, it works perfectly.
just use m.google.com as the exchange server, and use your full google username+gmail.com, leave the domain field blank.
I use it now for more than a week and found no problems.
Previously I used www.nuevasync.com
grz..

WP7 is always data connected

Hello my friend,
I have recently migrate to WP7.5(Tango) and i have some little questions.
My data is always connected, but, i don't have activate the pushmail.
So, why my data are always on ?
Does Windows Phone has an autodisconnect feature ?
If no, is there a way in order to install an application in order to autodisconnect data after X seconds of innactivity.
Thanks a lot for your help,
Nixeus
What phone you are using?
Does your cellular provider charge by the minute, or something like that? All the rates for data that I've seen are either by the month or by the megabyte. I don't think I've heard of auto-disconnect as a desired feature since the days of literal modems (the kind that sent sudio tones over the telephone connection instead of using a communication protocol actually intended for data).
The only way I know of to turn off the data connection is manually, in the Settings hub. Be aware that a lot of the features of WP7 use data connectivity in the background, not just email sync. For example, syncing your Facebook (and Twitter and LinkedIn) account, syncing your contacts and calendar from the server, checking the Marketplace for updates to installed apps, and so on. These use very little data, but they connect fairly often.
In theory, I'm sure there's a way to programmatically turn the data connection on or off. It might even be possible to tell when it's not in use, and hasn't been for some time. This is not going to be easy, though, and as far as I know nobody else has figured it out.
Thanks for the answers,
So, i will coding an apps in order to turn OFF the DATA connection during a period.
( the night for me)

Categories

Resources