I came across Cold start,Warm start and Hot start in GPS Modules while developing code for a GPRS Tracker. I know the difference between them. But when I use hot start method,signal is acquired faster but at times empty NMEA strings comes that affects the tracking. Which would be the best starting method I could use in this case? Module used is 'Global Top GMS-G6'
In order to generate a position output a GPS receiver needs to pick up the signal from 4 or more satellites. In order to find them it needs to perform a search for the signals they broadcast.
A GPS receiver will have a fixed number of channels, each channel can only look for one specific satellite at a specific time and with a specific Doppler shift. Anything that can narrow down this search e.g. knowing which satellites are visible and where they are in their orbit (the main component of the Doppler) makes the search a lot simpler and faster.
Hot start - The GPS will assume that it's clock is correct, that it's almanac (approximate satellite orbit information) is correct and that it is in roughly the same location as it's last known position.
This allows it to only search for signals that should be there and so generate an initial position fix quicker.
Warm start - The exact definition depends on the manufacturer but normally the GPS only assumes that the almanac is correct. It then searches for all satellites, as soon as it picks a single one up it can greatly narrow the search and only look for signals that should be there.
Cold start - The GPS throws everything away and starts from scratch. This takes the longest because a full almanac will take 12 minutes to receive from the satellites, without this aid even once it has a position the GPS has no idea which signals should be visible and which shouldn't. Even after generating a position it must continue to search because there could be more satellites out there that it hasn't found yet.
So why not always do a hot start? Because if your assumed data is wrong then it will take even longer to generate a position. The GPS has to give up looking for what it thinks should be there and start again. Even once it knows the time and location were wrong it may not necessarily discard the almanac information and so still keep looking for the wrong signals.
Normally you want the hottest possible option that is safe. e.g. If you know your clock is trustworthy and you haven't moved a lot since last being switched off always do a hot start. If you know the clock is wrong or you've been in transit then warm start. If you could have been off for a very long time then you can't trust that the almanac is still correct and should perform a cold start.