NEO-M8P-2 module _ RTCM messages enabled

Using myGPS.enableRTCMmessage commands shown on web page and in the example from the library unit responds per code with:

Survey valid!

RTCM messages enabled

Base survey complete! RTCM now broadcasting.

BUT does not output corrections. Added trouble shooting prints as shown:

Moderator edit to add code formatting.

void loop()
{
   boolean response;
response = true;
  myGPS.checkUblox(); //See if new data is available. Process bytes as they come in.
response &=  myGPS.checkUblox();

if (response)
  Serial.println("7 Connected!");
else
  Serial.println("7 Failed!");
  Serial.println(myGPS.checkUblox());
Serial.println("frame counter");
   uint16_t rtyyz = 1;
Serial.println(rtyyz);
rtyyz = myGPS.rtcmFrameCounter;
Serial.println(rtyyz);
  delay(250); //Don't pound too hard on the I2C bus
  // this works toforce call the library
SFE_UBLOX_GPS xxyyz;
uint8_t incoming55;
xxyyz.processRTCM(incoming55); 
Serial.println("Should have process");
delay(1000);
}
and trouble shoot prints to library call as shown:

//This function gets called from the SparkFun Ublox Arduino Library.
//As each RTCM byte comes in you can specify what to do with it
//Useful for passing the RTCM correction data to a radio, Ntrip broadcaster, etc.
void SFE_UBLOX_GPS::processRTCM(uint8_t incoming)
{
  //Let's just pretty-print the HEX values for now
  if (myGPS.rtcmFrameCounter % 16 == 0) Serial.println("5");
  Serial.println(" 6");
  if (incoming < 0x10) Serial.println("7");
  Serial.println(incoming, HEX);
   Serial.println("Should have output data");
}

prints to terminal show:

Press x to end survey - Time elapsed: 534 Accuracy: 2.00

Survey valid!

RTCM messages enabled

Base survey complete! RTCM now broadcasting.

7 Connected!

1

frame counter

1

0

5

6

7

0

Should have output data

Note frame counter print as shown in code:

Serial.println(“frame counter”);

uint16_t rtyyz = 1;

Serial.println(rtyyz);

rtyyz = myGPS.rtcmFrameCounter;

Serial.println(rtyyz);

show 0 bytes in frame counter AND incoming from

void SFE_UBLOX_GPS::processRTCM(uint8_t incoming)

shows 0 bytes. I assume this is the problem but can’t figure out how to fix.

Please help. I need this thing to put out correction data.

Hi Jerry,

If you are using [Example 2-Start RTCM Base I am pretty sure this is related to [this closed issue on the GitHub repository.

It looks like the NEO-M8P example needs updating to send the RTCM data out over I2C but if you edit this line:

myGPS.setI2COutput(COM_TYPE_UBX); //Set the I2C port to output UBX only (turn off NMEA noise)

to this:

myGPS.setI2COutput(COM_TYPE_UBX | COM_TYPE_RTCM3);

that should fix the issue and you should see RTCM data over I2C and printing the hex values in your serial monitor.

Let me know if you are still having trouble with this after trying this fix and we can troubleshoot further.](ZED-F9P Example 4_BaseWithLCD does not output anything to Serial Port · Issue #12 · sparkfun/SparkFun_Ublox_Arduino_Library · GitHub)](SparkFun_Ublox_Arduino_Library/examples/NEO-M8P-2/Example2_StartRTCMBase/Example2_StartRTCMBase.ino at master · sparkfun/SparkFun_Ublox_Arduino_Library · GitHub)

Thanks much. Will let you know this weekend. On travel and will not have access to hardware till then. Thanks very much. Really appreciate the help.