I have application that access GPS data via Location API. The application works well on many Nokia S60 phones (S60 2nd Edition FP3, 3rd edition any FP) when accessing external GPS, but I have big problems to make it working on Nokia N95.

The application opens positioner server and requests notification for location update. Sometimes it receives update notification after 30-40 minutes, sometimes it takes hours. When I run "Maps", application delivered with the phone, and request satellites information, in 60% cases it finds the satellites in 15 seconds, in 40% cases it never completes the request.

I tried to made some modification to the code, so it forces positioner to use integrated GPS, to cancel and restart requests for position in case it lasts more than xx minutes, but the behaviour hadn't changed.

There are two questions about the problem:

1) How is it possible that Maps application works a little bit better. Is there any other way to receive the information or does it perform some explicit command to start GPS or whatever...?

2) In overall, even with the Maps application, the reliability of GPS requests is really low, I find it pretty unuseful. Is this hardware limitation of the GPS or problem in firmware? In the second case is there some update?