Problem with serial GPS connection

I’m trying to connect my arduino with a Venus GPS module from SparkFun. I’ve got the GPS module configure correctly, and when I hook it up directly to the serial port (via an FTDI converter) it works great. So I hooked it up to the Arduino and wrote a simple test program, but its not reading correctly.

The first program I wrote was with SoftwareSerial, but the char read is always garbage. I would almost guess that it was the wrong baud rate, except I verified it was 38400 with the FTDI to the serial port.

#include <SoftwareSerial.h>
int rxPin = 2;
int txPin = 3;
SoftwareSerial gpsSerial =  SoftwareSerial(rxPin, txPin);

void setup()
{
  pinMode(rxPin, INPUT);
  pinMode(txPin, OUTPUT);
  Serial.begin(9600);
  gpsSerial.begin(38400);
}

void loop()
{
  char c;
  c = gpsSerial.read();
  Serial.print(c);
}

I tried the same thing using NewSoftSerial, but gpsSerial.available() never returns true, so it never reads.

#include <NewSoftSerial.h>
int rxPin = 2;
int txPin = 3;
NewSoftSerial gpsSerial =  NewSoftSerial(rxPin, txPin);

void setup()
{
  pinMode(rxPin, INPUT);
  pinMode(txPin, OUTPUT);
  Serial.begin(9600);
  gpsSerial.begin(38400);
}

void loop()
{
  char c;
  while (gpsSerial.available())
  {
    c = gpsSerial.read();
    Serial.print(c);
  }
}

I’m not sure if this is a hardware or software problem, but any help would be appreciated.

I just learned the SoftwareSerial library has a max baud rate of 9600, I missed that from before.

So with the NewSoftSerial library, what is the reason that available() never returns true?

Do you have the GPS connected to pins 2 and 3?

Nothing seems to be wrong with your code. Maybe it's hardware. Double check with the hardware configurations they have on sparkfun.

Then double check with the code, is newsoftserial suppose to identify an object like this?

NewSoftSerial gpsSerial = NewSoftSerial(rxPin, txPin);

Lastly, you could try a different method, this might help: http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1166042147/

Dear Quay (and others),

Did anyone manage to get an Arduino up and running with the Venus GPS module?

I'm actually looking for a good (accurate) GPS module with the possibility to add an external antenna to it, to connect it to my arduino (duemilanove).

I found the Venus module and it really looks promissing, so I'm curious if anyone can tel me or point me how to connect and read it properly. Otherwise I maybe should look after another module, suggestions are welcome btw.

Thanks!

I have a GPS with the same chipset, and I solved the problem for mine.

If anyone is willing to try:

http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1278896700/0

Cheers,

Antonio Santos