yashsingh1/xdaforums huggingface dataset:
[Windows Mobile Apps and Games] Mach2003:
UI

First my apologies to Ather, I had some time today and finished up the UI I had started a long time ago.

This has been added to V1.0's cab (about to) be added at first post.

Un-Zip the file, and copy it to your device, create a shortcut if you like.

Run the GpsModSetup.exe, you will see live gps data from the ModDriver on the main page.

Menu/Settings to change the values used by ModDriver, and even the GPSID port and enable status. Leave the settings with 'Save' or 'Quit', quit will undo your changes, even if you 'save' from the main page.

As always, be very careful changing either of the ports

Menu/Save Or Exit to save the changes you have made to the Registry

Menu/Defaults to restore MY settings

Menu/Abort to un-do what ever you have changed, and exit the app.

Still to do, reload driver if required by your settings changes. Now you *may* need a soft reset (Port and enable, GPSID port and enable).

If you scroll near the bottom, while the sip is up, and then close the sip, you can no longer scroll to the top, scroll back up before closing the sip.

Have a try, and report...
[Windows Mobile Apps and Games] Mach2003:
htcgpstool: There is a couple little arrows beside the default "COM4" port, just click them to change to COM1, before you click Open Port. If GpsModDriver is properly installed on COM1, then you should see all the 'lots of data' still. Click on Close port, before you exit the app.

Garmin Mobile XT: Let me try this all over again.

Type 1) You have XT properly installed to main memory:

- Copy QueStub.exe to \Garmin

- Rename the existing Que.exe file to Old.exe

- Rename QueStub.exe to Que.exe

- Run Garmin Mobile XT, normally, from the previously installed shortcut, do not try and run que.exe, Old.exe or QueStub.exe. Your existing shortcut runs Garmin Mobile XT.exe, as it should.

Type 2) You have only copied Garmin Mobile XT to a card, or another location, other than \garmin. Or you are running XT from another program (QuePPC.exe) for example:

- Add the registry key pointing to YOUR exe (as per the post)

- Copy QueStub.exe to the location where YOU exe is.

- Rename YOUR exe to Old.exe

- Rename QueStub.exe to the same name as YOUR exe was.

- Use your existing shortcut to start the application, it will now start the renamed QueStub.

- If you do not have a shortcut, run the (renamed) QueStub.exe (it wil be the same name as YOUR exe used to be)

You only do Type1 OR Type2, not both.

PS, Type 2 can be used for any application, not just Garmin Mobile XT. Use it if your application insists on opening COM4.
[Windows Mobile Apps and Games] Mach2003:
I published version 1.01 to the first post. Also updated the UI post just above with a newer version and instructions.

v 1.01 uses the (beta) driver features, I have had no issues with multi-open, average speed and course seem fine.

At this time, we can assume that all issues are known, feel free to add to the list...

- UI should restart driver automatically when required.

- UI scroll issue: when scrolled to bottom with sip open and then close sip.

- Speed and course may be in error.

- Erratic speed and course under poor gps coverage.
[Windows Mobile Apps and Games] gsmdb:
Using 1.01 or beta driver I experience the gps connection is very erratic compared to RC3. Both htc gps tool and tomtom looses connection within seconds. Anybody has the same issue?
[Windows Mobile Apps and Games] Lycox:
Confirmed.

Real speed ca 120km/h. TomTom showed me speed between 92kmh and 232kmh :confused:

Confirmed.
[Windows Mobile Apps and Games] Mach2003:
Is your Speed set to enabled? Averaged? When your indicated speed is so far off, does your position (due to Lag Correction) also vary?

Try setting Speed to Disabled, it will report GPS speed, but then it also used GPS speed for Lag Corrections. Setting Course to Disabled also leaves the GPS heading intact. You may set both to disabled at the same time (that bug was removed).
[Windows Mobile Apps and Games] Lycox:
Tested it with speed enabled and averaged. Both the same. And yes, my positions varied to. Sometimes I was behind my real positions but mostly I was too far. When I'm to far while driving, my position jumps back. Didn't had that issue with RC3.

Little description (hope, it's understandable :rolleyes: )

+ = my real position

o = showed position

(in seconds)
1.
---+---
-----o-

2.
---+---
-----o-

3.
---+---
---o---

4.
---+---
-----o-

5.
---+---
----o--

6.
---+---
-----o-
[Windows Mobile Apps and Games] Mach2003:
Speed and Course

Version 1.1 in first post,

Changed the way speed is calculated, now I am using averaged speed as base speed, When average is checked, two (previously averaged) speeds are further averaged. In onffline testing this resulted in predicting the true GPS speed way more reliably.

Changing the speed, also changes the course reported, and the Lag distance.
[Windows Mobile Apps and Games] gsmdb:
Is it still necessary to define the (enable)Course as average in GUI?
[Windows Mobile Apps and Games] Mach2003:
In v1.1, enable, gives you a basic average, with average checked, too, gives you a 'double' average. Neither checked, gives you raw data from the GPS. This is true for both speed and course.

While on a road trip today, I discovered that unchecking both enable speed, and enable course. gives the most reliable highway readings. As you may know I also geocache, and with both unchecked, tracking while walking is imposible!

I also noted that while driving near south, curves to the right are more closely tracked than curves to the left. I might have a small bug in the course anticipator...

Bottom line, is for those who are using the driver for Lag Corrections only, and drive almost all the time, disable both speed and course in the UI, and see if that helps you out (I have not done any city driving with these settings, I am still on that road trip).

I also had an event or two when I lost GPS signal today, I was able to capture a log of it, but have not yet looked at it. A single soft reset, and it never happened again today.
[Windows Mobile Apps and Games] frankkk:
I still can't uninstall v0.9, the com1 port has disappeared and due to this I cannot install any newer version (which I'd like because 0.9 did the job already 95%).

Is there a way to force the GPS/com1 to shutdown cause I can't delete the gpsdriver.dll file nor the serial5 map in registry.

(soft) resetting before and after uninstall doesn't help (anymore).

Please help :-(
[Windows Mobile Apps and Games] Mach2003:
I have found that once you try and remove it, when the port is open, once then the uninstall in windows breaks, you can try any of these though.

-While the dll is open you can rename it, soft reset, and then delete it.

-The keys inside serial5 can be removed/edited, just serial5 itself, can not be deleted.

-Set the flags reg under serial5 to 5, to prevent the driver from loading on soft reset

If you still can't remove the driver, you need a "remover" like SKTools or Hard Reset back to last flash.
[Windows Mobile Apps and Games] Mach2003:
Untested version

If anyone wants to try this one...

- Fix course (when heading south)

- Report GPS speed + GuessValue due to acceleration, when available

- Include HDOP factor in DeltaSpeed and DeltaDistance to reduce "poor reception" spin effect (NewSpeed=DeltaSpeed*HDOP, where Normal HDOP (0.1-12.0) is 1.0, Good reception 0.9, bad reception in the range of 2.0)

Use Enable Speed, and Enable Course (average optional).

See A few posts down for beta3 version.

- Has the RMC and GGA sentances fixed for fixed and not-fixed flags.
[Windows Mobile Apps and Games] Mach2003:
On investigating the "Lost Reception" I saw yesterday, the GPS data from the GPSID driver, did, in fact have un-fixed data in it. The driver had nothing to do with it (garbage in, garbage out). Keep an eye on it, and report here if this continues to happen...
[Windows Mobile Apps and Games] gsmdb:
Except RC3 all the newer builds have the probl. w. "lost gps reception", minor in the build 1.1 when using default setup. I will report back w. the beta2 version.
[Windows Mobile Apps and Games] lordchicken:
weak GPS

I have an imagio which runs 6.5 and of course my gps signal is weak

I tried installing this but even when i can get a clean install i can't seem to even find the program. It doesn't show up in all applications and i can't even find it using file explorer or search.

Is this program right for me? Does it work with 6.5? What is the install folder?
[Windows Mobile Apps and Games] Mach2003:
I run and test in on my home built Diamond 6.5.1 (23081)!

The DRIVER (not a program you can run, GpsModDriver.dll gets installed in \windows. The configure UI, GpsModSetup.exe, you can run, gets installed in \windows. By default a shortcut is placed directly in start, programs. 6.5 also gets a reg link to a png icon (under security\shell).

I am not familiar with your device, however, if you have a gps connected, that uses a com port, and you install this driver, and then open its port instead of the original port, then you will be using this driver.
[Windows Mobile Apps and Games] Mach2003:
With "beta2" today, I can't get a lock at all. I did change the RMC sentence to stop the lat 0 / lon 0 being recorded as a fixed position when it was not, so might have broke it then. I'll look into it shortly, but for now stay away from beta2.

edit fixed as beta3, attached here.
[Windows Mobile Apps and Games] lordchicken:
Wutz the point

is the purpose of this driver to decrease the time it takes to acquire a signal?

my whole problem is that it takes a really long time, sometimes more than 10 minutes, to lock.

GpsModSetup.exe does not appear in windows folder.

Driver functions on com3 in htc gps tool but doesn't report time in tool.

So, far doesn't seem to lock any faster.

Not sure how to change port setting in Gmaps.
[Windows Mobile Apps and Games] sandervanzijl:
could you please start testing your driver on tomtom.

the following happened:

uninstalled old driver.

installed v1.1

installer told me to use com 1

started tomtom: i had a list: gpsmoddriver, com6, com 7.

no com 1. i selected gpsmoddriver

restarted my phone.

started tom tom. it only mentioned com 6 and com 7

exit tom tom

started the setup application. on the bottom set com1 to enabled (i think)

restarted tom tom. only showed com 6 and com 7

restarted phone again

now it said com 6, com 7, gpsmoddriver.

selected gpsmoddriver.

tom tom had a gps device, but offcourse no signal, since i was inside an office building.

so either this is the normal way to setup tom tom, or you should include a manual. maybe testing this driver on tomtom might also help, so you know what is happening.

offcourse i think it is great you are trying to solve the lag.

but at the moment i am not sure if i see any improvements, and if the driver is working in tomtom.
[Windows Mobile Apps and Games] frankkk:
Thanx that worked. I have installed GPS mod driver v1.01 now and it seems to work OK. Only have to set the deltaspeed, deltadistance and lagadvance back cause it makes tomtom dizzy. In v0.9 the following settings worked for me: deltadistance 20, deltaspeed 20, lagadvance 1200. I'll try if it's still the same in v1.01.
[Windows Mobile Apps and Games] IIIIIChrisIIIII:
Hi Mach,

sorry for this late reply. I was on a trip on last weekend.

Currently i still have no more time to think about acceleration algorithms. But I guess you're right with your calculations. I drove about 800km last weekend and everything was fine. No lag, no problems, except the IGO-Software told sometimes i lost GPS signal. But only for a second. Anyway, i don't hink it's because of your driver. I had this signal lost with the GPSID, too.

Is there a possibility to check which version is currently installed? I guess i've RC1 installed, but am no longer shure.
[Windows Mobile Apps and Games] Mach2003:
Tomtom uses the name of the port instead of "COM1", open GpsModDriver and you will use the driver. There are plenty of users here "testing" the driver with TomTom. There are plenty of users "testing" with different devices.

Next time I edit first post, I will add the text for those that can't tell that "GpsModDriver" is actually GpsModDriver.

Look at the first line in text file \GpsModLog.txt for current installed version, it currently gets created even though enable logging is false.

Versions starting with zero: Not for public release, unproven, testing concept.

Versions starting with RC, release candidate, concept seems to be proven, may contain bugs, almost ready for public use.

Versions starting with a number other than 0 (1.1), public release, suitable for general use.

(beta) versions, not tested, contains the latest features/fixes, use these if you wish to test the features, but be warned that the driver may not function properly. These are never posted to first page.

Version change log is chronological on first (and second) post, newest is at the bottom of first post. I never re-build an older version.

GpsModDriver does nothing intentionally for fix time, however due to the way messages are changed, you may see quicker fixes (some here have reported so), there are concepts in place to include almanac data in the driver in hope to decrease fix time, however this is concept only at this stage. At some future time, I may also include other information, like cell tower ID, to report a fix before GPS is online.
[Windows Mobile Apps and Games] L_o_k_i:
@Mach2003

Hi,

When using BeelineGPS and connected on the normal gps port (com4) I can see 16 "satellites in view". When I use your driver I can only see 12... Did you cut the number of satellites on purpose or is it a bug?
[Windows Mobile Apps and Games] Mach2003:
I reduced the number on purpose. I unpack the data into a GPS_POSITION structure (from the ms GPSApi), it only supports 12 sats in view. I chose this struct so that I could use the api as well as the com port method to read data. Turns out the api has no visible advantage.

In any case, if you look at the 16 that may be in the raw data, many of them are 0 azimuth, angle, and/or snr, so can not actaully be seen. The data I have looked at shows first, the sats that the chip 'thinks' should be in view, when it later determines that these are not "seen" it does not remove them from the list.

Reporting more than 12, also adds another sentence to the data I would output, taking more time both for the driver and for your application, to write/read 'useless' information. I say useless, but cases *could* exist where you actually can see more than 12 birds in the sky, but that would be very rare indeed.
[Windows Mobile Apps and Games] Mach2003:
Try using the default settings first (2000,50,50,10000,Enable Speed (not Averaged, Enable Course (not averaged), no logging at all.

See what you get.

Change LagAdvance to tweek your displayed position closer to real position.

The Delta Speed and Distance values tweek the "spin" (position bounces around while stopped), increase these, only if you have that effect. Decrease them if you don't have that effect, and your position updates too slowly when you first start to move from a stop.

If you use the driver while walking, Delta values need to be quite small (20 or so).
[Windows Mobile Apps and Games] Mach2003:
When Speed, Course or Logging is disabled, Average (enhanced) is auto-disabled: How can you average something that does not exist in the first place?

Boba23, also try using the driver with just "enabled" and not "averaged" for both speed and course.
[Windows Mobile Apps and Games] Mach2003:
Larger LagAdvance = Farther in the future, further ahead, unless you are backing up :)

I am not sure what you are seeing then, nor how you suggest that I change the instructions on first post.

Try un-installing the driver (close all gps applications, or better yet, soft-reset just before), choose NO to save your current settings. Then re-install the driver. Do not change anything in the setup app, don't even look at it. Run Tomtom, and select the GpsModDriver for port if you can. Test.

Soft Reset, see if GpsModDriver still exists in TomTom.

Use the setup app to change values if required, DO NOT TOUCH ports or enable on the last two lines (under the text GPSID)

Report here what happens to you.
[Windows Mobile Apps and Games] gsmdb:
In Tomtom, Garmin and supposed other navigator too it is possible to change the mode from car-driving to walking and the "gps-sensitivity" changes automatically correspondance, should it be necessary to change the delta values back and forth to fine-tune it? It will be a little bit complicated/ none user-friendly!!!
[Windows Mobile Apps and Games] Mandragore:
Accuracy, sensitivity and lag compensation all benefit from different delta values, depending on speed, right? So what if the driver could adjust and use adjusted delta values on the fly? The adjustment could be based on:

* the (modded) GPS speed

* user defined minimum and maximum sets of delta values

* or multiple user defined speed ranges and corresponding user defined delta values
[Windows Mobile Apps and Games] peacock93:
Mach2003,

With the latest beta(3) I am having the loss of GPS signal using iGO8 continuously. It will come on for about 30 seconds and off for about 30 seconds. It just keeps doing this. I have never had this problem with any other version.

peacock93
[Windows Mobile Apps and Games] Mach2003:
The big problem here is that either way, too small delta values result in spin.

If you are a walker, set the delta values low enough, and live with the occasional spin while stopped and driving (I do).

The point is: I don't use speed, heading or LagDistance if your calculated position results in less than ALL three delta values (don't forget about the time one), if I used some min value and forced an update through but you happened to be stopped at a light, you would get jump or spin effect.

Compare GPS position to LastGpsPosition :: DistanceMoved, Course
Use Time Elaped :: Speed

if( (speed > DSpeed) OR (distance > DDistance) OR (time > DTIME))
UseCalculatedValues;
else
UseGPSValues (speed will be zero)

Give me an idea with some examples.

Edit to add, Accuracy, sensitivity and lag compensation all benefit from different delta values

Delta values determine IF we use new values, they do not effect the results at all
[Windows Mobile Apps and Games] Mach2003:
Thanks for the feedback, I'll look into it further. I plan on updating the Setup UI to include more live data, might be a help in trouble shooting this sort of thing.

Anyone else having this issue, with any other app, and beta3?
[Windows Mobile Apps and Games] Mach2003:
Is it possible that people who are loosing signal also have set SleepTime to a value other than 1000?

As a test, try a value slightly higher than 1000 (1100), and see if that removes the problem for now. All I have found so far, is that sometimes my XP test bed, skips a reading as the read thread (waiting 1000ms) can miss a data read by a few ms (it also happens at 1000ms, just like the real gps chip). Now to be clear, on the phone, there is always a few ms delay between writing and reading, so this *should* not happen there.
[Windows Mobile Apps and Games] gsmdb:
Confirmed. Steady gps reception running w. Tomtom (set sleeptime 1100)
[Windows Mobile Apps and Games] Mach2003:
Great I'll code an extra little bit of time in the read loop!!! With the next release, you can set it back to 1000.

I am on beta builds, but I normally run with both DeltaSpeed and DeltaDistance set to 20. 10000 for DeltaTime. Enable Speed, EnableCourse, neither averaged. That being said, I think I had to use both averages on for 1.1. Note that at 20's I do get some spin at intersections, but I also get reasonable tracking while walking.

/*********/

Another teaser:

My newest test beta: Added another String at LagAdvance + 500ms, keep the speed and heading the same (don't adjust for curves or acceleration). This sure makes Garmin look better, the map updates twice as often, eliminates the 'jump' every second (now it's half second :)), and much smother. I'll play with it a bit more before letting you folks have a crack at it.

Some time tomorow (OK for me it be later today it's 1:20 am now, here) I'll post a v1.2 to add the current beta3 features, another speed fix (real smooth now), and fix the "delay" in reading.
[Windows Mobile Apps and Games] Mach2003:
Newest Driver/Setup UI

On first post, Version 1.20

Have fun!

(no extra 500 ms data string in this version)
[Windows Mobile Apps and Games] Mach2003:
Beta test update

The attached beta driver (NOT FOR PUBLIC USE) may contain undesirable side effects.

This one has extra position data sent to your app.

As we know data is sent to the gps application every 1 second. On Garmin Mobile XT, this causes the map to 'freeze' for one second, then jump forward (repeat...).

The beta driver attached calculates an extra position and course based on LagAdvanced time + 500ms. It then inserts this data into the gps strings sent to your app at the correct time. On Garmin the 'jumping map screen' is vastly reduced (smoother display) :).

Possible problems: Your phone will have to re-draw the map screen twice as often. Your position will be guessed even farther into the future, causing even more errors on corners. Possible 'hop backwards' indication when these guesses are wrong. Twice as much data is sent out the (COM1) port, possible power reprecussions, possible overall phone lag problems.

There is currently no way to disable this feature in this beta version. It must be unistalled or 'up'graded to another version. If it works out, I could add another 'enable' to the UI (and the reg).

You have to be going fast enough for the LagAdvance to update before the extra data is inserted (DeltaSpeed * HDOP). When stopped, the extra data is skipped.

I'd sure like to hear if any of the other mapping aps benifit from this.

This beta is based on 1.20, log files will report 1.20.
[Windows Mobile Apps and Games] Mandragore:
I see, thanks. I don't know if my idea would work, regardless of the way your modification works, but I'll try to explain anyway just in case.

The concept is based on:

* At least two user defined speed ranges. For example 'walking' 0 - 5 km/h and 'driving' 6 - 250 km/h.

* Every speed range has it's own set of user defined Delta and LagAdvance values for the desired effect within that range.

If it's better to have 'low' Delta values and LagAdvance=0 for walking and if it's better to have 'higher' Delta values and and LagAdvance=X for lag compensation while driving, the idea is to let users define 'walking' and 'driving' speed ranges with optimal user defined walking and driving sets of Delta and LagAdvance values in GpsModSetup.

Then, once you're walking or driving, I imagine the GPS Mod Driver would check the (modified) GPS speed against the user defined speed ranges at the start of every loop and use the corresponding Delta and LagAdvance values for the remaining part of the 'regular' modification during that loop.

This way, while driving above 6 km/h the driver compensates lag using the corresponding set of values. But while walking, slowing down below 6 km/h or stopping, it prevents both lag compensation and spin, using the optimized walking set. Accelerate to a certain speed and the driving set and lag compensation kicks in again.

It's clear the values should not be too low to prevent spin or too high for any other unwanted effect. Installation of the driver would come with predefined ranges and sets. Users would be able to optimize these values with GpsModSetup. And you could have GpsModSetup give a warning on really low or high values.

In this example I used 'walking' and 'driving' ranges to keep it simple. But if the concept works and we need to make the effect more smooth, you could require more speed ranges and value sets, user defined, or calculated on the fly between the minimum and maximum values.