Problem: GPSGate will not reconnect after the handheld is powered down and back up. A soft reset is required to get GPSGate to work again.
We are testing GPSGate v.1.10h on the following operating systems:
PC 2003 (iPaq 2110)
PC 2003 SE (iPaq 6500 series)
We tested against two different GPS devices, so the issue is not particular to one GPS device or chipset.
It works great on PC 2003 SE and WM 5.0, but there is an issue on PC 2003. In all cases I am running the same code.
What I do is I have a timer that fires every second. The timer checks the current time vs. the last time the timer was fired and if two or more seconds has gone by then I know that the device was powered down. I then disconnect and reconnect to the GPS. In addition this timer will call GetCOMStatus, GetFix, and so forth with timeout set to 0. (I run the NMEA Parser with events turned off.)
This works fine in all these cases:
GPS on a serial port
GPS on a BT (Bluetooth) port
WM 5.0 virtual port
Finally, it works against GPSGate except when GPSGate is on a PC 2003 device. In this case it sometimes works, and sometimes GPSGate gets broken. It is acting like there is a race condition or timing issue in the GPSGate code because the issue is intermittent. If I power down and back up quickly it usually reconnects, but if I give it a good 30 seconds or more it often does not (hangs about 50%). GPSGate itself no longer functions either. I cannot get it to work after this has happened even if I am no longer running my program. Only a soft reboot fixes GPSGate after it has gone out to lunch in this manner.
Any ideas? Users are going to want to be able to power down and back up their device to save power. PC 2003 is on the way out but we would still like to support it fully.