Power Save Mode

Feb 19, 2009 at 11:31 PM
Can you include a feature that only only uses the GPS port every polling period, it should turn it off after the first successful lat/long acquisition and then reopen the hardware port. This can be very useful if the polling period is set around 5 mins, the battery should last a couple of hours doing this. Geologger does this currently.

Also does GPSTracka work when device is in suspended mode, does it need a software like astrogpslauncher to keep it active in the background?

Any plans of supporting output to KML for Google Earth.

Thanks
Coordinator
Feb 22, 2009 at 1:02 PM
Hi,

GPSTracka only opens the GPS port every polling period as you say.  So if you specify 300 seconds, it'll wait 300 seconds, open port, start polling, get the location, close port, log to file and go to sleep for 300 seconds.

The device works in unattended mode by specifying it in the PowerPolicyNotify method.  That means that when you press the power button on your device, it'll go into Unattended mode which is one level above suspended.

Yes, there are plans for KML files, and I'm also thinking of NMEA files.
Aug 20, 2009 at 4:54 PM

This does not seem to be the case with the latest build 0.5 available for download last updated on Jun 30th, 2009. Per change logs on July 7th, 2009:

23319
by mendhak
Jul 8<abbr></abbr> at
5:05 PM<abbr></abbr>
128 New logic - app reads location, stops GPS to save battery. If the satellite window is opened, then GPS will run continuously. When it's closed, GPS will resume its previous state to save battery again

Please build this new version and release. The older version (0.4) worked great and consumed less resources/battery. Version 0.5 constantly runs at 1.25% CPU(COM port) and 0.5%(Windows driver) and drains battery quickly.

You can check CPU usage with this tool: http://www.dotfred.net/TaskMgr.htm

Coordinator
Sep 6, 2009 at 10:39 AM

Hi thoq,

I've replaced the current release's CAB with the latest code, so you'll need to re-download.

Sep 7, 2009 at 6:33 PM

Hi mendhak,

First I'd like to say thank you for this app. I've been looking for something like this for some time.

I'm not sure if this is the right place to post this, but here goes: I noticed the above post and downloaded the latest version. Unfortunately it throws a DivideByZero exception at the second (or sometimes? third) position record. I have a Samsung Omnia (SGH-i900) and I am using the windows driver (for some reason it gets stuck opening the COM port).

I only see the call stack, no line numbers, and it goes like this: System.DecimalDivide / GPSTracka.TrackerForm.GpsPositionReceived / GPSTracka.Gps.GpsProvider.OnPosition / GPSTracka.Gps.MSGpsWrapper.gps_LocationChanged / Microsoft.WindowsMobile.Samples.Location.Gps.WaitForGpsEvents.

Unfortunately I don't have the previous 0.5 version to check against it.

Do you think this is something that can easily be fixed? I can probably connect the phone to a debugger if you need more information.

Thank you.

Coordinator
Sep 8, 2009 at 12:32 PM

Hi deadye - have a look at this thread

http://gpstracka.codeplex.com/Thread/View.aspx?ThreadId=51000

 

The Samsung Omnia is "troublesome" when it comes to GPS in general.  Maybe there's something you need to tweak around with to get it working.  Instead of Windows Driver, did you try explicitly choosing a COM port? 

Sep 9, 2009 at 3:27 PM

Hi mendhak,

Thanks for your reply. I tried the COM port directly but had the same issues as the user in the thread you suggested.

I'll see if I can solve it with a port splitter and will post the results if I get any.

Mar 3, 2010 at 1:53 PM
deadeye wrote:

H

I only see the call stack, no line numbers, and it goes like this: System.DecimalDivide / GPSTracka.TrackerForm.GpsPositionReceived / GPSTracka.Gps.GpsProvider.OnPosition / GPSTracka.Gps.MSGpsWrapper.gps_LocationChanged / Microsoft.WindowsMobile.Samples.Location.Gps.WaitForGpsEvents.

I've  got same problem and locate the problem when try to calculate the average of speed between 2 point when the time of this 2 points it's the same,, so diference between time and lastTimeA is 0.

 

 ShowSpeed(distance.Value / 1000 / (decimal)(time - lastTimeA).TotalHours);

I made an easy solution an if to check before if the time diference is 0.

 

if ((time - lastTimeA).TotalHours != 0)
                        {
                            if (distance.HasValue)
                            {
                                ShowSpeed(distance.Value / 1000 / (decimal)(time - lastTimeA).TotalHours);
                            }
                        }
 

Regards

Apr 18, 2010 at 2:55 PM
mendhak wrote:
 The device works in unattended mode by specifying it in the PowerPolicyNotify method.  That means that when you press the power button on your device, it'll go into Unattended mode which is one level above suspended.

Hmm.. doesn't work for me on my HTC Touch HD.. When I press power button, or phone powers down for user idleness, all logging stops. Do I need to tweek something to make it work?

 

Apr 26, 2010 at 10:17 AM

It seems I have the same problem on my HTC Touch Cruise. He logs as long as the screen is on. I installed the latest version.

Jul 23, 2010 at 5:41 PM
Edited Jul 23, 2010 at 5:43 PM

My HTC Touch Cruise 09 will not turn screen off at all.

But  if I press the power button to turn it off, it will do so and keep loggin in the background!