I have set my baudrate at 9600, as I can see the GPS transmitting on 9600.
I try to set a higher baudrate with the command; (Sent with 9600)
"$PMTK251,38400*27" as stated in the PMTK_A11 manual.
I have also tried other baudrates with proper CRC, but whatever I do, the GPS is stuck on 9600.
With scope I can see the command arriving at the GPS RX with very clean 9600 baaud.
Any help??
Ultimate GPS PA1616D will not change baudrate
Moderators: adafruit_support_bill, adafruit
Please be positive and constructive with your questions and comments.
- adafruit_support_mike
- Posts: 68385
- Joined: Thu Feb 11, 2010 2:51 pm
Re: Ultimate GPS PA1616D will not change baudrate
Are you ending the command with the string "\r\n"?
The module doesn't recognize any command until it sees that sequence.
The module doesn't recognize any command until it sees that sequence.
- svberg
- Posts: 3
- Joined: Sat May 25, 2019 5:50 pm
Re: Ultimate GPS PA1616D will not change baudrate
Hi and thanks for reply.
Yes I have the Cr,Lf at the end.
Found a solution;
It seems the PA1616D will not change baudrate before it knows what to output.
Before I had this in my InitGPS;
Mybaudrate=9600
'Set GPS Baudrate to 57600
gpslinje="$PMTK251,57600*2C"
print #2,gpslinje
Mybaudrate=57600
'Set Only RMC
Gpslinje="$PMTK314,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0*29"
print #2,gpslinje
waitms 100
With this it never changed the baudrate.
Then I changed the init so it first sent the "Only RMC" command;
Mybaudrate=9600
'Set Only RMC
Gpslinje="$PMTK314,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0*29"
print #2,gpslinje
waitms 100
'Set GPS Baudrate to 57600
gpslinje="$PMTK251,57600*2C"
print #2,gpslinje
Mybaudrate=57600
And now everything is working fine.
Is this by chance, or some unexplained behavior of the PA1616D?
Can anybody reproduce this?
Regards svein
Yes I have the Cr,Lf at the end.
Found a solution;
It seems the PA1616D will not change baudrate before it knows what to output.
Before I had this in my InitGPS;
Mybaudrate=9600
'Set GPS Baudrate to 57600
gpslinje="$PMTK251,57600*2C"
print #2,gpslinje
Mybaudrate=57600
'Set Only RMC
Gpslinje="$PMTK314,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0*29"
print #2,gpslinje
waitms 100
With this it never changed the baudrate.
Then I changed the init so it first sent the "Only RMC" command;
Mybaudrate=9600
'Set Only RMC
Gpslinje="$PMTK314,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0*29"
print #2,gpslinje
waitms 100
'Set GPS Baudrate to 57600
gpslinje="$PMTK251,57600*2C"
print #2,gpslinje
Mybaudrate=57600
And now everything is working fine.
Is this by chance, or some unexplained behavior of the PA1616D?
Can anybody reproduce this?
Regards svein
- adafruit_support_mike
- Posts: 68385
- Joined: Thu Feb 11, 2010 2:51 pm
Re: Ultimate GPS PA1616D will not change baudrate
The firmware will ignore commands that ask it to do the impossible.. it won't try to emit every possible NMEA sentence at 9600 baud, for instance.
The firmware can calculate the number of characters it needs to emit from the list of messages you choose. It can also calculate the number of characters it can emit at a given baudrate. Then it will ignore any commands that exceed what's possible.
The firmware can calculate the number of characters it needs to emit from the list of messages you choose. It can also calculate the number of characters it can emit at a given baudrate. Then it will ignore any commands that exceed what's possible.
Please be positive and constructive with your questions and comments.