Interfacing a GPS unit serial RS232

Hi

We are doing a school project and I am using the Arduino to convert the incoming GPS DATA string and then send it on a RS232 RF unit back to the ground every two minutes to track the launch of a weather balloon.

I thought I'd modify this code in this turorial as a start

http: //www.arduino.cc/playground/Tutorials/GPS

It's a sure electronics demo board

http: //www.sure-electronics.net/rf,audio/GP-GS009_Ver1.2_EN.pdf

The only difference is my unit runs at 9600 baud, all I see though in serial monitor from the Arduino serial monitor is Giberish.

When I hook up hyperdirectly without the Arduino the $GPSC data comes through fine, so I can only asume the code is wrong for my situation.

I am very new to this area can someone point out where I am going wrong?

I have changed

Serial.begin(4800);

to

Serial.begin(9600);

does the buffer also need to be bigger?

Please help we would like to launch for our summer schools....

The buffer only needs to be bigger if you are filling it. I do not recall the length
of the buffer but GPS communication does not usually require a large buffer.

(* jcl *)


www: http://www.wiblocks.com
twitter: http://twitter.com/wiblocks
blog: http://luciani.org

How are you connecting the GPS to the Arduino?

A customer who purchased one of my NB1A boards (Loading...)
used the NewSoftSerial library to connect the GPS to a regular I/O pin. He
needed the USB interface for other communication to a PC.

I have not had an application that has used a GPS (yet ;)).

(* jcl *)

Hi,

the GPS dev board has a rs232 DB9 output so I have connected a rs232 cable, cut one end off and trimed the RX TX and GND wires.

When I connect the TX wire to pin 0 which is where I get a load of gobledicuck in the serial monitor.

I have tested RX cable in PIN 0 in case I had got them mudled up however the GPS Dev board shows a red light saying a firmware upload is taking place, so I am sure that I have got the correct wires connected in the correct slots.

I have not connected the GND though as I am not sure the GND on the Arduino and the GPS devlopment board need to be interconnected.

As you can see I don't fully understand electrically whats really happening.

cheers

What type of RS232 levels are on the DB9 connector? Standard RS232 has
positive and negative voltage levels and could damage your board. If it
is a standard RS232 interface you need a converter to shift the levels
to TTL.

(* jcl *)

You can't do that. RS232 uses +/-12v logic levels where you want to connect 0-5volt logic levels to the Arduino. From what I can see on the schematic they have done level shifting already for 5v and 3.3v. If you want to use the 5 volt signals connect the Arduino to TP5 (5vTx) and TP7 (5vRx).

Hi Guys,

Aha ok that could have been interesting, so in effect then the dev board will up the voltage to +/- 12v on the DB9 connector? and thats why its having problems?

and that means if I directly connect the Arduino to TP5 and TP7 shown on the circuit diagram (sure electronics) and keep well away from the DB9 connector it should work?

am I on the right track?

:-/

From what I can see form the schematic....yes. You might want to connect a ground between the two boards also....

Ok thank you very much for your help I'll try connecting directly to the chip TP5 and TP7

really appreciatte your advice gents :slight_smile:

FYI

I tried connecting the device on 5v as suggested and still got a lot of giberish...

However I noticed a 3.3v output, connecting just the TX to RX of the Arduino worked pefectly and the NMEA data was streaming.

Easy when you know how

:slight_smile:

Which Arduino are you using?

Its the development board

Arduino Duemilanove USB Board

http://www.oomlout.co.uk/arduino-prototyping-bundle-br-ardp-p-186.html?zenid=2041c08d8f7f0a737524d4b2abe586b3

Does this explain why it didn't work on 5v?

Actually the opposite...it should work on the 5 volt and not the 3.3 volt. My guess is the board may be labeled wrong. If you had an oscilloscope you could check the signal levels. If they are wrong it might be worth mentioning to the manufacture that they are labeling the pcbs incorrectly.

Very odd, can I measure it with a simple volt meter? that's all we have...