I use 12v/2A adapter to powerup my board. The voltage on the VBAT pin is 4v. I also use an active GPS antenna that requires 3v-5v, so i've connected the GPS-VANT-IN pin to the VBAT pin of SIM908.
All is well, but my only problem is that it takes too long to get valid gps data.
Is there any QUICKER WAY to get valid data from the GPS of SIM908..?
what you are looking for is a WARM START UP so try changing to AT+CGPSRST=1 or try maybe =2, the manual states that it's better to make a cold reset the first time (=0 like yours) but after that, subsequent resets could be =1 (some pages states =1 is auto, another page states that =1 is hot and =2 is warm)
sadly this module doesn't say exactly how it's achieved, but in other GPS modules usually you fed the module with a known location, to help it to fix its location faster than from a cold (unknown) location... maybe this SIM908 module save its last location and uses it by itself... (maybe you need the RTC coin battery?)
Cold reset is when you start the GPS without any hint of the position. Therefore, it takes time.
Warm reset is when you have hints about the position (e.g. if you have stored the last position
when powering off).
That said, I don't think 20 min is normal. The GPS I use are able to connect (cold start) within
less than 1 minute in open air. And in my lab, depending on where I am, it can take linger.
It's fast when I'm close to whe window, for example. So first try to connect when you are outside
and see how it works.
15-20 Minutes is too high period to get data from the GPS module. The time GPS will take to provide a data after power on will be in terms of seconds. So try to test with other GPS module if available. Make sure how much time does the GPS module takes to stabilize. If it takes very less time then the problem lies in your code to read the data.
I presume you already reviewed the SIM908 AT manual. There's no means to restore position information by software. The usual way is to keep the module powered in powerdown mode. As already mentioned, you must not perform a GPS cold reset when the module holds valid position data.
Did you check if the GPS antenna sees a reasonable number of satellites after finding the position?