[MDA III, XDA III, PDA2k, 9090 Software Upgrading] xdaradar:
is there anyone using WM5 ROM's on a BA that succesfully uses the integrated GPS virtualizer as can be found as "GPS" button in the settings->connections

In more detail this is what i find:

Ozi seems to be the only gps using application that can setup an active bluetooth connection to an GPS device using the build-in GPS virtualizer of WM5 wich is called Intermediate GPS driver and wich can be found via the "GPS" button at the connections settings page of your device.

The use of this virtualizer is that you can simultanious have multiple applications active that use GPS data.

Next info is what i tested so far, maybe others recognize and/or understand much better then i do how this should work. Any help is appreciated.

I think it has something to do with discovering, or being allowed to discover by WM5, COM ports.

Just to make sure we're talking the same issue a little chain:

- there's a BT-GPS device

- discovered via BT-applet on WM5

- on my bt-gps: if the blue light goes on&off it's not connected, if its steady on it's connected to a PDA

NEW in WM5 is that one has to seperatly define:

- the service the bt-gps needs to use: just one choice "serial services"

- next on a seperate tab one needs to define an new outgoing and/or incoming port

- one can choose only the discovered bt-gps

- one can only choose a COM port numbered 6, 7 or 8 and one defines the baudrate here.

- i choose COM6 and 57600baud

From this point there is a COM6 available for applications, any application i start is able to set-up the bt-gps connection and read gps-data.

- ozi explorer, tomtom, igo, reperion

- all setup with listening to COM6

- all make the blue-light on the gps-device go steady on

- all disconnect from the gps-device when exiting the application, blue-light on gps-device starts flashing

Next step is using the intermediate gps driver incorporated in WM5 to virtualize&share the gps-device.

- on the GPS-applet define COM6 as the h/w port with 57600 baudrate

- on the GPS-applet define COM7 as the s/w port, choices are COM0/9 and GPD1/9

- i defined COM7 as the s/w port.

So now with COM7 we are on the virtual side of the GPS-applet

When i start ozi-explorer i can choose several ports for the GPS

- COM1/4 for specific goals

- COM6 (recognized by ozi as Bluetooth Serial Port)

- COM7 (recognized by ozi as ActiveDevice)

Activating the GPS function in Ozi with GPS-port set to COM7 will make ozi to talk to the virtualside of the intermediate gps driver and then via this driver will initiate the bt-gps connection (blue light on the gps-device will go steady on) and start reading gps-data. Stopping&starting the gps function in ozi will nicely turn the bt-gps connection off&on.

So far so good.

Important note: In the registry one can find \HKLM\System\CurrentControlSet\GPS Intermediate Driver\ActiveDevice

According to the writer of gpsid.dll http://msdn.microsoft.com/library/d...rmediatedriverinputsourceregistrysettings.asp this is the place to look for the gps-device definitions.

As you might have read above the name "ActiveDevice" is exactly what ozi found as tag for COM7

All the other gps using product like Igo see COM7 as "unnamed" port.

So it looks as if the other app's, including Fransons serial tools, don't look at the right place in the registry for the info on COM7. And since Ozi does work well i think it's a problem to be resolved by the navigation application developers and not on WM5 level.

And once ozi setup the connection all the other apps suddenly do find COM7 and read GPS data. From that point on i can stop ozi, the connection to the bt-gps will stay. When i then stop igo or reperion or whatever, then the bt-gps will be disconnected.

Then a bit about gpsgate, maybe to get some more idea on how the behaviour is in wm5.

- i totaly inactivate the Intermediate GPS driver from WM5 (b.t.w. i softreset after every change to make sure it's a clean test)

- all the nav. Apps can directly connect to COM6 (see above)

- gpsgate will only give me COM1/4 and COM9 as an option

- COM6/7/8, the only options i have as h/w port on the bt-gps are NOT seen by gpsgate

- then i re-active the Intermediate GPS driver and now gpsgate gives me the option of COM7 as input and i setup a virtual port in gpsgate COM8.

- quite useless, a gps-virtualizer which can only listen to some other driver's virtual port.

- but then it act as all the other app's. Only when a bt-gps connection is setup via ozi, gpsgate will read data on the virtual com7 port.

- this gives the weard situation:

- bt-gps comes in on h/w COM6

- Intermediate GPS driver from WM5 listens to port6 and virtualizes that to COM7

- Ozi explorer initiate the connection and listens to COM7

- gpsgate will also listen to virtual COM7, where gpsgate thinks this is the h/w input side

- gpsgate will passthrue to its own virtual port COM8

- reperion i configured to listen to COM8, and reperion will succesfully read data from COM8, via COM7, via COM6.

Still with me? Maybe you need to draw this out on a little piece of paper ;-)

Anyway, it looks as if most gps-using s/w don't setup the gps-communication up in a proper way to be handled by the Intermediate GPS driver. Ozi Explorer is the positive exception here.