Prop Control Board to GPS Problem
Greg Norton
Posts: 70
I'm working with a Propeller Control Board and the Parallax GPS module. In trying to establish communication between the two in the GPS smart mode, I seem to be getting semi-random values back from the GPS no matter what data I ask for. For whatever reason, the return values are always one if (1,33,71,80,83). My example program is just asking for the valid status from the GPS so I think I should only be getting 0 or 1 back. The same thing happens when I ask for any other data as well. I also tried not asking for data at all (to see if the GPS is just sending the NMEA strings or something) and found that the program hangs as expected waiting for data from the GPS. Therefore I'm fairly confident it's responding to my requests for data.
According to the schematic for the Prop control board, there are not any resistors between the 5v GPS and the 3v propeller. I'm figuring this must be OK and I don't have much access to re-configure the circuit in this case.
I'm using the multiple serial port driver from the object exchange because my final goal will require 3 serial connections and I don't want to use multiple cogs to get them.
Anyone have suggestions (demo code attached).
Thanks.
Greg
PS - I tried it with and without the 10ms delay after sending the command, same results. I just noticed that was in the version I posted.
According to the schematic for the Prop control board, there are not any resistors between the 5v GPS and the 3v propeller. I'm figuring this must be OK and I don't have much access to re-configure the circuit in this case.
I'm using the multiple serial port driver from the object exchange because my final goal will require 3 serial connections and I don't want to use multiple cogs to get them.
Anyone have suggestions (demo code attached).
Thanks.
Greg
PS - I tried it with and without the 10ms delay after sending the command, same results. I just noticed that was in the version I posted.
Comments
you should put a 10K resistor between the prop RX pin and the GPS TX pin. The prop is a 3.3V device the GPS is a 5V device then it is I think good practice to shield the prop when using a prop pin as input with a device using a power supply greater than 3.3V.
jm.
I agree with you on the resistor, but figured someone at Parallax must know something I don't in this case. My options for putting a resistor in the path are a bit limited since the GPS mounts directly to the board.
Greg
jm.
here is a code uisng the GPS.
jm
jm.
GPS.start(GPS_RX,16,0,4800)
DIRA[noparse][[/noparse]GPS_RAW]~~
jm.
I have one of the PCBs and just took a look at it.
There does not appear to be any current limiting resistors between the Propeller inputs and the outputs of the +5v GPS, Accelerometer, and Compass.
I have not tried the GPS, Accelerometer, or Compass and will definitely hold off until it is verified that using these three components will not damage the Propeller.
Maybe you are right Greg, Parallax may know something about the PCB that we do not know about concerning this issue and there will be no problem using these three components.
Regards,
TCIII
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
If you are going to send·a Robot·to save the world, you·better make sure it likes it the way it is!
Just for the fun of it... remove the GPS and see if you get the same thing... I did[noparse]:)[/noparse]
You do have to have a resistor on the signal line going from the GPS to the Prop... I assume that you do but I don't see it in your post.
Rich
You're right, I get the same thing with the the GPS completely removed. I'm using the prop control board from parallax (docs here). According to that there is no resistor on the serial line. It's strange that if I put the GPS back and remove the transmit commands from the program, I get no data at all back (as I expected - no request, so no response). I can't explain the behavior without the GPS connected.
I'm stumped.
Greg
It is one of those material existence things that just has to be experienced[noparse]:)[/noparse] This kind of thing is why I love the Prop... it is a real world device, with real world behaviors that most of us have never seen or imagined but exist every time an engineer tries to get something done for us. I have a lot more respect for those EE guys now than I did before[noparse]:)[/noparse]
put a 1k on the data line from your GPS to your prop. The rest is all software... there is a perfect object floating around that uses GPS smart mode (by Gary Boone)... I don't have the link... it is on my other computer... see if you can find it or maybe someone has the link?
Rich
I have emailed Parallax tech support concerning the issue of no current limiting resistors on the Sensor inputs to the Propeller on the PCB.
I suspect that Parallax might have to recall all of the PCBs to fix the issue?
Just a thought.
Regards,
TCIII
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
If you are going to send·a Robot·to save the world, you·better make sure it likes it the way it is!
I don't have this particular board, but I can't imagine having to recall it because of an issue like this... all you have to do is put one resistor in line with the GPS and it should work fine... and this is completely documented. And once you have it hooked up right, the noise issue goes away. I've hooked up the GPS backwards... forgotten the 1K resistor and both my Prop and my GPS survived. The reason that Parallax didn't do this is that this is that including a 1k resistor would limit the potential usefulness of the hardware... sometimes you don't want to hook up a GPS... and what you want to hook up doesn't require a resistor.
Greg
DrGary's wonderful GPS object can be found here:
http://forums.parallax.com/forums/default.aspx?f=25&m=195562
Rich
Greg
Post Edited (Greg Norton) : 1/12/2009 5:50:12 PM GMT
I have used the Parallax GPS module with the BOE and I had to have it at least a foot or two away from the BOE for it to function correctly.
I believe that RF radiation from the BS2 on the BOE causes reception problems with the GPS module.
It could be that the Propeller on the PCB is causing the same problem with the GPS module as the BS2 did on the BOE.
I will check my email when I get home to see what Parallax support has to say about the design of the PCB.
Regards,
TCIII
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
If you are going to send·a Robot·to save the world, you·better make sure it likes it the way it is!