Parallax PMB-648 GPS questions
charleslinquist
Posts: 3
I just bought a PMB-648 GPS.
The datasheet is very sparse. It states that that there are two outputs - one with RS232 at TTL levels, and another with RS-232 at full levels.
I connected my computer to the 'normal' RS-232 port. I used Bray's TERMINAL program set for 4800 baud to see the output. That works.
Next, I downloaded SIRFDEMO and tried that. It works also.
But... I wanted to change the baud rate to 57600. So I set up SIRFDEMO to configure the GPS to 57600. But the PMB-648 datasheet states that the max buaudrate is 38,400. Bray's TERMINAL confirms that I'm getting data at 57600 baud. What gives?
Also, SIRFDEMO mentions USART 0 and USART 1.
I eventually want to use the TTL output port. Is that connected to a different USART in the PMB-648 than the "regular RS-232 port I'm connected to? When I switch the baudrate and protocol on the full-blown RS-232 port, does it change the baudrate and protocol on the TTL port also?
SIRFDEMO mention of the "DGPS" serial port as well. What is that?
And regarding the protocol. I see that the options are GGA, GSV,GSA, RMC and (optional VTG, GLL). SIRFDEMO lets me change the protocol between NMEA and SIRF. I switched to SIRF. That appears to work. What are the others, and how would I select them?
My goal is to connect the GPS to a CRIUS flight controller for a quadcopter.
The datasheet is very sparse. It states that that there are two outputs - one with RS232 at TTL levels, and another with RS-232 at full levels.
I connected my computer to the 'normal' RS-232 port. I used Bray's TERMINAL program set for 4800 baud to see the output. That works.
Next, I downloaded SIRFDEMO and tried that. It works also.
But... I wanted to change the baud rate to 57600. So I set up SIRFDEMO to configure the GPS to 57600. But the PMB-648 datasheet states that the max buaudrate is 38,400. Bray's TERMINAL confirms that I'm getting data at 57600 baud. What gives?
Also, SIRFDEMO mentions USART 0 and USART 1.
I eventually want to use the TTL output port. Is that connected to a different USART in the PMB-648 than the "regular RS-232 port I'm connected to? When I switch the baudrate and protocol on the full-blown RS-232 port, does it change the baudrate and protocol on the TTL port also?
SIRFDEMO mention of the "DGPS" serial port as well. What is that?
And regarding the protocol. I see that the options are GGA, GSV,GSA, RMC and (optional VTG, GLL). SIRFDEMO lets me change the protocol between NMEA and SIRF. I switched to SIRF. That appears to work. What are the others, and how would I select them?
My goal is to connect the GPS to a CRIUS flight controller for a quadcopter.
Comments
I have little experience with this module, but consider a Sirf GPS (like this one) have two communication protocols.
One is the standard NMEA (if you search the web you can find a lot of informations).
This is a good start: http://www.gpsinformation.org/dale/nmea.htm
The NMEA protocol consists of a lot of strings, each one starting with a different char sequence. So you have GGA, GSV,GSA, RMC and so on. It uses plain strings.
The other protocol is proprietary, binary, and you can switch to it also to modify the NMEA part.
DGPS stands for differential GPS, where you feed the data from a fixed unit to get higher accuracy. In case the unit supports it you need a data link from the fixed unit to the moving one.
What data is accepting CRUIS?
And the manual states that 38,400 baud is the max rate, yet my GPS seems to be working fine at 57,600 baud.
-Phil
Actually the datasheet says one set is TTL and one set is RS-232, which is pretty clear seeing how each is a specification for a signal level and these are both different. I think your confusion may be that RS-232 refers to the serial protocol which is a communication specification. Let me know if you still need help with this given that information.
Consider the difficulty in producing a device that offered both TTL and RS-232 level ouptuts with one UART and has no that had no 'switch' between the two output types:
If you take a processor and feed the UART out to a MAX-232 you get RS-232 levels. Now what do you do for the TTL levels? The Transmit side is no problem. You can take the line connecting the output of the processor and the input of the MAX-232 and feed it to the outside world.
However, what do you do with the RECEIVE side? If you try to drive a TTL signal into the line that connects the MAX-232 output to the processor, you will have contention between the output of the MAX-232 and your signal. Unless some provision is made (like a tristate driver) or a circuit 'trick' the system won't work.
That is what made me think that there might be TWO UARTS in the GPS - one connected to each output, with each UART able to 'speak' a different protocol simultaneously.
The SIRFDEMO software even makes mention of two UARTS.
Phil Pilgrim answered my question. Thanks Phil!