GPS Differing Sentences

Adafruit Ethernet, Motor, Proto, Wave, Datalogger, GPS Shields - etc!

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
Locked
lucgallant
 
Posts: 39
Joined: Sat Mar 15, 2014 12:21 pm

GPS Differing Sentences

Post by lucgallant »

Hi there,

I have a question about the GPS shield/module.

Up until yesterday my GPS shield was working well, it was giving me correct date and time. However, at some point, it started giving me the correct time, but giving me the date of December 30, 1999. It appears from looking at the sentences that the date is not being returned.

I turned on GPSECHO, and this is what I see in the raw sentences:

$PGTOP,11,2*6E
$GPGGA,005259.000,5644.3243,N,11127.7569,W,1,07,1.26,347.2,M,-26.3,M,,*53
$GPRMC,005259.000,A,5644.324N12.76W.81.7,04,*C


If I change the sendCommand to only receive RMC, and not RMCGGA, this is what my sentences look like:

$PGTOP,11,2*6E
$GPRMC,004217.000,A,5644.3310,N,11127.7633,W,0.01,279.51,250914,,,A*79

So the date is there if I only do RMC.

If I run the "Parse" example sketch, everything works. I checked for bad checksums, but it appears I'm not getting a bad checksum.

I also checked for memory issues, doesn't appear to be any, I've got plenty of memory left.

Any ideas?

UPDATE: I had tried making Timer1 interrupt every millisecond, so that I can leave the millis() interrupt alone and make my time more accurate (per my other post). Apparently that's my issue? If I make that timer period 100 ms instead, I'm getting all the data I need. I think I'm continuously overestimating the capabilities of the Arduino... Any feedback would be great.

User avatar
adafruit_support_rick
 
Posts: 35092
Joined: Tue Mar 15, 2011 11:42 am

Re: GPS Differing Sentences

Post by adafruit_support_rick »

You're clearly dropping characters in the GGA/RMC sentences you posted. But it sounds like you've found that problem?

lucgallant
 
Posts: 39
Joined: Sat Mar 15, 2014 12:21 pm

Re: GPS Differing Sentences

Post by lucgallant »

Well, yes, seems like I solved the problem.

The Arduino must have been over taxed by having two interrupts fire every 1 ms. After I disabled the Timer1 interrupt and put the GPS code back in Timer0, I stopped losing characters... I would have thought it could handle it, but I guess I was wrong.

All good. Thanks.

Locked
Please be positive and constructive with your questions and comments.

Return to “Arduino Shields from Adafruit”