I need GPS help

 

I'm interfacing a PMB-648 gps module, which has the SiRFstarIII chipset, with a PIC18f4520. I've managed to get rid of the messages that I didn't need, and now, it sends over a GLL message at 1HZ.

The problem is, is that it doesn't update the Latitude and Longitude. Where it is when it gets its satellite fix is what I get no matter where I take it. I can watch the clock increment the seconds, but the location will not change unless I cycle power on the module.

I can manage this with the PIC , but it seems kind of slow having to wait for it to aquire a new fix every time.

 

Is there a $PSRFcommand to get an update without having to turn it off and back on?

Thanks.

This may be it.

You may have to put the GPS module in Walk mode.  I had to do this with a PMB 248, and based on some other forum threads, I think you have to do the same with the 648.  This forum thread describes the solution.

http://forums.parallax.com/showthread.php?125062-GPS-PMB-648-Only-Updates-Every-50-Meters

Just to be curious.

What language are you using?

After reading some of the documentation, I am curious what would happen if you would regularly send $CCGPQ,GLL<CR><LF>

I’m writing my code in C.

I’m writing my code in c, using the c18 compiler from Microchip. To begin, I used hyperterminal to observe the $GP sentences that the module exports. I’ll try the $CCGPQ. What’s it supposed to do?

 

SiRF app

Thanks for pointing me tto that forum, I was able to find and download the SiRF app!

That sentence …

is what is used to tell the gps module to send you something and what it is that you want. In the example I showed, it will reply with GLL sentences until you tell it otherwise. Is that not the sentence you use to tell it to start sending GLL data to you?

GLL

The sentence I use to get the GLL going is:

 

$PSRF103,01,01,00,0124<CR><LF>  this will get one GLL sentence from the GPS.

 

-or-

I can send

$PSRF103,01,00,01,0124<CR><LF> this will get the GLL updating at 1hz.

Unfortunately, the lon. and lat. never change as I walk through the house, until I cycle the power. Then it will start again with my new location.

FYI

When I looked up the module you say you are using, I did a search for NMEA0183 v2.2 and the first hit was:

http://www.cs.put.poznan.pl/wswitala/download/pdf/NMEAdescription.pdf

Reading through that pdf showed the various i/o for devices that follow that protocol. On page 3 it mentions how one would go about getting specific data from a given device.

is it possible its working

is it possible its working but you just dont see it because anywhere in your house is the same lat/long?

take it outside and walk down the street.

I guess I’ll take it for a drive.

That may be the case indeed. I’ll try taking it out for a drive later today.

Thanks!

It seems that was all I needed to do after all.  I was fooled by the way it started with slightly different numbers at each power up.

I followed your advice to the letter, and found that it’s working as it should.