Re: WM5 to WM6 GPSID Problem on HTC P3300



We are in the process of getting hardware, which we should have shortly. I
appreciate the time crunch on you, but it will take some time to debug this
unfortunately.

--
John Spaith
Senior Software Design Engineer
Windows CE Networking
Microsoft Corporation

http://blogs.msdn.com/cenet/.

This posting is provided "AS IS" with no warranties, and confers no rights.
You assume all risk for your use. © 2007 Microsoft Corporation. All rights
reserved.

"Mike" <mike.sharp_no_spam_please@xxxxxxxxxx> wrote in message
news:13jh3283jp25sa2@xxxxxxxxxxxxxxxxxxxxx
Any progress on this?

have you replicated the issue?

Thanks

"Mike" <mike.sharp_no_spam_please@xxxxxxxxxx> wrote in message
news:13j6ootl9qria40@xxxxxxxxxxxxxxxxxxxxx
Hi,

This issue is present on three different hardware manufacturers (HTC3300,
Glofish M600, T-Mobile MDA Vario III)

My HTC Details as requested (the lot!)

CE OS 5.2.1620 (Build 18125.0.4.2)
Processor: OMAP850-201Mhz
Memory: 47.93MB

On a reboot:
IPL 3.13.0001
SPL 3.13.0000
GSM 02.94.90
OS 3.13.0.0

Device information:
ROM Version: 3.13.405.1 WWE
ROM Date: 8/28/07
Radio version: 02.94.90
Protocol version: 4.1.13.44
ExtROM version: 3.13.405.102

CPU Info:
CPU: OMAP850
Speed: 201Mhz
RAM Size: 64MB
Flash Size: 128MB
Data bus: 16 bits
Storage size: 32.45 MB
Display: 240x320
Colours:65535


"John Spaith [MS]" <jspaith@xxxxxxxxxxxxxxxxxxxx> wrote in message
news:%23ON7DnjIIHA.2064@xxxxxxxxxxxxxxxxxxxxxxx
I've been talking with one of our OEM liason PMs and he's requested more
information about the build you guys are on. Basically he wants
*everything* from the settings->about box, beyond just the build #. You
don't need to copy out all the copyright nonsense since that's not
interesting, but please let us know the version # for everything,
including but not limited to:

radio version
RIL version
available storage (there are 2 flavors of HTC 3300 and the easy way to
tell the difference is amount of RAM)
processor
and all the CE ROM update version stuff


--
John Spaith
Senior Software Design Engineer
Windows CE Networking
Microsoft Corporation

http://blogs.msdn.com/cenet/.

This posting is provided "AS IS" with no warranties, and confers no
rights.
You assume all risk for your use. © 2007 Microsoft Corporation. All
rights reserved.

"John Spaith [MS]" <jspaith@xxxxxxxxxxxxxxxxxxxx> wrote in message
news:u25rQZiIIHA.3916@xxxxxxxxxxxxxxxxxxxxxxx
As an update, we're following up with João via email to get more
information about his repro, since he is using native.

--
John Spaith
Senior Software Design Engineer
Windows CE Networking
Microsoft Corporation

http://blogs.msdn.com/cenet/.

This posting is provided "AS IS" with no warranties, and confers no
rights.
You assume all risk for your use. © 2007 Microsoft Corporation. All
rights reserved.

"Mike" <mike.sharp_no_spam_please@xxxxxxxxxx> wrote in message
news:13j3u9gq1oofv2c@xxxxxxxxxxxxxxxxxxxxx
John,

I'm using C#. I don't do native code.

If you can obtain a HTC P3300 or one of the other devices, and run
your WM6 SDK GPS sample, you get the same issue.

You can always contact me directly at mikeDOTsharpATmaptexDOTcom

I have fired up tomtom on com4: (virtual port) and that bit works ok,
so I'm all configured up ok. The "WM6 Manage GPS" is ticked - so that
is ok.

Its just the GPSAPI.DLL access to the GPSID via C# that's not working.

Thanks

Mike

"John Spaith [MS]" <jspaith@xxxxxxxxxxxxxxxxxxxx> wrote in message
news:uAeXlBWIIHA.588@xxxxxxxxxxxxxxxxxxxxxxx
I'm working with the new GPSID engineer on this & have marked
priority appropriately.

From a native sample, when you pass in GPS_POSITION could you please
let me know what the exact values you're passing for dwVersion &
dwSize are, as reported from a debugger watch window or via a
printf() run at runtime, and also dwFlags as passed in? Unless
somehow the driver is getting yanked from under you, I don't see how
else the ERROR_INVALID_PARAMETER could be getting indicated. (The
driver yank-out is also something we're looking at.)

We'll get to the bottom of this I promise & again apologies for pain
it's causing.

--
John Spaith
Senior Software Design Engineer
Windows CE Networking
Microsoft Corporation

http://blogs.msdn.com/cenet/.

This posting is provided "AS IS" with no warranties, and confers no
rights.
You assume all risk for your use. © 2007 Microsoft Corporation. All
rights reserved.

"Mike" <mike.sharp_no_spam_please@xxxxxxxxxx> wrote in message
news:13j1pt6b1aqau7e@xxxxxxxxxxxxxxxxxxxxx
John,
I posted this on the earlier message - but just in case you are only
monitoring this one:

The GPSID is failing on numerous Wm6 devices - how can we get this
escalated?

Your WM6 C# SDK will not even work "out of the box" on numerous
devices.

We are now at the stage where we need to make some major decisions.

Thanks


"John Spaith [MS]" <jspaith@xxxxxxxxxxxxxxxxxxxx> wrote in message
news:%233iasFaHIHA.3768@xxxxxxxxxxxxxxxxxxxxxxx
First my apologies for issues you're hitting and not jumping on
this sooner. We're transitioning GPSID to a new dev, which isn't an
excuse for me not tracking this better (long term a win since the
new dev is a lot smarter than I am :)).

These issues are all news to me. I whipped out a WM6 image and
wasn't able to repro any of this, though that's not so surprising
since we wouldn't have shipped if we thought it was a GPSID bug.

One question for anyone using this is which WM6 build # are you on?
(Settings -> About, baslically whatever comes after "Windows Mobile
6 ---" line). We made some changes to GPSID for what we call AKU
0.4 and what would be build #18120. The changes were to make it
easier for GPS driver writers to plug into us & shouldn't have
affected app dev experience.

For those seeing the ERROR_INVALID_PARAMETER, could you include a
small (native) sample showing it. Also could you copy/paste to the
group the exact contents of GPS_POSITION structure as the debugger
tells them to you? Thanks

--
John Spaith
Senior Software Design Engineer
Windows CE Networking
Microsoft Corporation

http://blogs.msdn.com/cenet/.

This posting is provided "AS IS" with no warranties, and confers no
rights.
You assume all risk for your use. © 2007 Microsoft Corporation. All
rights reserved.

"João Paulo Figueira" <joao.figueira@xxxxxxxxxxxxxxxxxxxxx> wrote
in message
news:ACFD48DF-6C98-407C-8A92-FF15EBD976D5@xxxxxxxxxxxxxxxx
Hi Mike,

I believe this is an issue with the HTC device or GPSID
implementation. My code ran fine on an Asus P535 both in WM5 and
after it was upgraded to WM6.

What other devices are displaying this behavior?

Regards,
João Paulo Figueira
DAD MVP

"Mike" <mike.sharp_no_spam_please@xxxxxxxxxx> wrote in message
news:13ii1lfr35q3f0d@xxxxxxxxxxxxxxxxxxxxx
Hi João,

Thanks for the reply.

So, it is possibly an issue in the GPSID_HTC.dll (or whatever DLL
is being used on the HTC).

WM5 worked fine. WM6 does not!

Also, I am having issues on other WM6 devices as well, so it is
not restricted to the HTC 3300.

Thanks

Mike

"João Paulo Figueira" <joao.figueira@xxxxxxxxxxxxxxxxxxxxx> wrote
in message
news:1A819DDA-C84F-4A2F-8318-53B637E1A098@xxxxxxxxxxxxxxxx
I confirm this behavior on the HTC P3300 after having a day-long
struggle to get this beast to work with the GPSID in native code.
The GPSReadPosition always returns 87 (ERROR_INVALID_PARAMETER)
no matter what. This device has an interesting history of having
poor GPS support. Earlier this year I found out that the GPS COM
port does not generate COM events, so the WaitCommEvent function
is useless:
http://nativemobile.blogspot.com/2007/01/reading-gps-port-on-htc-p3300.html

There seems to be no way around it: use ReadFile with reasonable
timeout settings...

Regards,
João Paulo Figueira
DAD MVP

"Mike" <mike.sharp_no_spam_please@xxxxxxxxxx> wrote in message
news:13iffugbc93l46b@xxxxxxxxxxxxxxxxxxxxx
I have been using the Windows mobile 5 GPS Intermediate driver
sample kit for well over a year now successfully.

I recently upgraded my HTC 3300 from Windows mobile 5 to
Windows mobile 6.

Now, the sample kit (and my software) will not get any GPS
data.

I have even tried the Windows Mobile 6 GPS Intermediate driver
sample kit and that does not work.

TomTom6 still works fine on the Com4 virtual port though.

The line of code in fault is in the gps.cs module is:

int result = GPSGetPosition(gpsHandle, ptr, 10000, 0);

The result is always 87.

Does anyone have any ideas?

Thanks

The full procedure is:

public GpsPosition GetPosition(TimeSpan maxAge)
{
GpsPosition gpsPosition = null;
if (Opened)
{
// allocate the necessary memory on the native side. We
have a class (GpsPosition) that
// has the same memory layout as its native counterpart
IntPtr ptr =
Utils.LocalAlloc(Marshal.SizeOf(typeof(GpsPosition)));

// fill in the required fields
gpsPosition = new GpsPosition();
gpsPosition.dwVersion = 1;
gpsPosition.dwSize =
Marshal.SizeOf(typeof(GpsPosition));

// Marshal our data to the native pointer we allocated.
Marshal.StructureToPtr(gpsPosition, ptr, false);

// call native method passing in our native buffer
int result = GPSGetPosition(gpsHandle, ptr, 10000, 0);
if (result == 0)
{
// native call succeeded, marshal native data to our
managed data
gpsPosition = (GpsPosition)Marshal.PtrToStructure(ptr,
typeof(GpsPosition));

if (maxAge != TimeSpan.Zero)
{
// check to see if the data is recent enough.
if (!gpsPosition.TimeValid || DateTime.Now - maxAge
> gpsPosition.Time)
{
gpsPosition = null;
}
}
}

// free our native memory
Utils.LocalFree(ptr);
}

return gpsPosition;
}























.



Relevant Pages

  • Re: WM5 to WM6 GPSID Problem on HTC P3300
    ... Windows CE Networking ... This posting is provided "AS IS" with no warranties, and confers no rights. ... The "WM6 Manage GPS" is ticked - so that is ok. ... public GpsPosition GetPosition ...
    (microsoft.public.pocketpc.developer)
  • Re: WM5 to WM6 GPSID Problem on HTC P3300
    ... Windows CE Networking ... The "WM6 Manage GPS" is ticked - so that is ok. ... public GpsPosition GetPosition ...
    (microsoft.public.pocketpc.developer)
  • Re: WM5 to WM6 GPSID Problem on HTC P3300
    ... Windows CE Networking ... If you can obtain a HTC P3300 or one of the other devices, ... WM6 SDK GPS sample, ... public GpsPosition GetPosition ...
    (microsoft.public.pocketpc.developer)
  • Re: WM5 to WM6 GPSID Problem on HTC P3300
    ... All rights ... If you can obtain a HTC P3300 or one of the other devices, ... WM6 SDK GPS sample, ... public GpsPosition GetPosition ...
    (microsoft.public.pocketpc.developer)
  • Re: WM5 to WM6 GPSID Problem on HTC P3300
    ... I'm working with the new GPSID engineer on this & have marked priority ... Windows CE Networking ... Your WM6 C# SDK will not even work "out of the box" on numerous devices. ... public GpsPosition GetPosition ...
    (microsoft.public.pocketpc.developer)