GPS sensor uBlox neo-6mv2: Receiving unknown data

Hello guys!

I have a problem with one of those uBlox GPS modules (neo-6mv2).
I'm constantly receiving the following lines via the serial port from the Arduino:

$GPTXT,01,01,00,trk tick 89477 -48000 dt -103*3C

$GPTXT,01,01,00,no meas*74

$GPTXT,01,01,00,trk tick 89477 -48000 dt -103*3C

$GPTXT,01,01,00,no meas*74

$GPTXT,01,01,00,trk tick 89477 -48000 dt -103*3C

$GPTXT,01,01,00,no meas*74

$GPTXT,01,01,00,trk tick 89477 -48000 dt -103*3C

$GPTXT,01,01,00,no meas*74

$GPTXT,01,01,00,trk tick 89477 -48000 dt -103*3C

$GPTXT,01,01,00,no meas*74

When the line begins with $GPTXT, a message will follow (which obviously happens), but the thing is, I don't know what the message means. I checked the uBlox website and searched with google like a maniac, but it seems like nobody ever had that problem ... well, that would be a premiere :slight_smile:

For those who may ask about the wiring:

Arduino 3V3 ------------- Ublox Vcc
Arduino GND -----o------ Ublox GND
|
[2.2K]
|
Arduino TX --[1K]--o---- Ublox RX
Arduino RX -------------- Ublox TX

Arduino RX & TX are software serial pins (RX=D4, TX=D3)

If anybody knows what to do, please help me, for I have really no idea why the gps module tries to tell me.

Regards!

Fascinating. Contact the manufacturer and let us know what the messages mean!

Perhaps the "Informational Messages" were accidentally enabled. There are 5 categories of messages that can be enabled, and they can be requested in GPTXT messages. See the u-blox NEO-6 Protocol document, section 31.7.2 CFG-INF.

You could use the u-center application to disable all those messages and save it as a permanent configuration in NVRAM. Or you could send these bytes in setup:

uint8_t cfg_inf[] =
  { 0xB5, 0x62,  // sync bytes
    6, 2,        // msg id
    10, 0,       // length
    1,           // protocol 1 is NMEA
    0,           // reserved0
    0,0,         // reserved1
    0,0,0,0,0,0, // info message mask (all levels off)
    19, 240      // checksum A and B
  };

void setup()
{
  gps_port.begin( 9600 );
  gps_port.write( cfg_inf, sizeof(cfg_inf) );

BTW, could you use pins 8 & 9? Then you could use AltSoftSerial, the best choice for a second serial port. If not, you should try NeoSWSerial, as it is much more efficient that SoftwareSerial, which blocks interrupts for long periods of time.

I also wrote a very efficient GPS library, NeoGPS. It is faster and smaller than other libraries, and it can be configured to ignore the fields and messages that you don't use, saving even more RAM, program space and time.

Cheers,
/dev