SparkFun Forums 

Where electronics enthusiasts find answers.

Tips and questions relating to the GPS modules from SFE
By JSchwendeman
#75832
Anybody had any luck programming the Venus over serial?

I'm trying to just understand what format I need to write data to the Venus to get it to acknowledge.

For example, their query software position example (found here) says that I need to write:

A0 A1 00 02 02 00 02 0D 0A (in hex)

to the Venus, and in return the module should respond with an ACK and then the software version data. However, when I attempt to write this as a string to the Venus in Wiring, using the following code:
Code: Select all
char CharIn;    //character string length 55 chars

void setup() { 
  Serial.begin(115200);  // Start serial to host computer
  Serial1.begin(9600);   // Start serial to GPS
}

void loop() { 
  Serial1.print("A0A100020200020D0A");
  
  while ( Serial1.available() > 0 )       // if data is available to read 
  { 
    CharIn = Serial1.read();
    Serial.print(CharIn);
  }
}
I just keep getting the NMEA sentences out from the module, no acknowledge as far as I can see over the serial monitor.

Any suggestions guys, this one really has me stumped.

For clarification, I'm not resetting the Venus at any time during this, and the second serial port on the wiring board (pins 2 and 3) are connected to the Venus, and are displaying the the NMEA sentences correctly when I just read that serial port. No other lines are connected besides power.

Thoughts?

Thanks!
.jim
By Polux rsv
#75836
The sentence is not a string, but 9 bytes :lol:
0D and 0A correspond to carriage return and linefeed.

Angelo