ZED-F9P won't get RTK fix

Hi,

I’m trying to create a rover that will receive RTCM data over NTRIP.

I have an Arduino MKR NB 1500 hooked up to a SparkFun GPS-RTK2 with Qwiic.

The MKR NB 1500 communicates with the NTRIP server just fine. I have attempted to send the RTCM data to the ZED-F9P over I2C, however the ZED-F9P has never successfully received the RTCM data. I have managed to see other data sent over I2C so the issue isn’t the I2C itself. I have seen in u-center that a lot of data sent over I2C is rejected by the ZED-F9P. I have also tried setting up the NTIRP client in u-center and the ZED-F9P successfully receives that data.

I have enabled RTCM messages and I try to send the data by first using Wire.beginTransmission(0x42), then I use Wire.write to register 0xFF and then I send the RTCM message byte by byte. I end the message with Wire.endTransmission. I don’t decode the RTCM message or anything, I send it directly to the ZED-F9P.

My guess is that there is something wrong with how I try to send the RTCM data from the MKR NB 1500, and I wonder how I should do that? Could it be that the format of the RTCM message I receive/send is wrong?

Any help is much appreciated, thank you!

Hi Tembelina,

Please take a look at this example in our u-blox GNSS library:

https://github.com/sparkfun/SparkFun_u- … mation.ino

Look at the code at the end of the file. It shows how to use myGNSS.pushRawData to push the RTCM data to the ZED-F9P over I2C. It is designed to work with Example3. Example3 takes data from a Base ZED-F9P and transmits it to the Rover (using Serial1). The Rover code receives the data (also on Serial1) and then pushes it to the ZED.

You can compare your code to pushRawData to make sure you are doing the same thing:

https://github.com/sparkfun/SparkFun_u- … 2956-L3002

Best wishes,

Paul

Hi Paul,

Thank you for your reply! However, now that I use myGNSS.pushRawData the ZED-F9P still won’t get into RTK mode. I send the data I receive from the NTRIP server immediately to the ZED-F9P. Should I maybe sort it so I only push the RTCM3.x messages?

Thank you!

Hi Tembelina,

There are some good tutorials here:

https://learn.sparkfun.com/tutorials/se … 1583443041

https://learn.sparkfun.com/tutorials/ho … 1583443041

Please make sure you are using a dual band (L1+L2) GNSS antenna and that it has a clear view of the sky.

If you think I2C might be the cause of your problem, why not try serial? You can send RTCM data to the ZED’s UART port if you want to.

Best wishes,

Paul