Separate RTK corrected location data and uncorrected data

Hi everyone,

I just bought a board with ZED-F9P module to receive corrected GPS data using RTK by injecting RTCM data to the board. Once after I injected the RTCM, the output port starts to give corrected data, it’s there any possible ways for me to receive corrected and uncorrected data at the same time so that I can perform some analysis?

Hello @ChenxinHu,

The ZED-F9P supports “Primary and Secondary Output” (from firmware version HPG 1.30). From the integration manual:

"

3.2.1 Introduction

u-blox GNSS receivers output various navigation results and data calculated as part of the

navigation solution. These include results such as position, altitude, velocity, status flags, accuracy

estimate figures, satellite/signal information and more.

The ZED-F9P can provide this output in two streams:

• Primary output: Reports the results of a full navigation solution using all capabilities of the

ZED-F9P, such as, for example, high precision positioning.

• Secondary output: Reports the results of a GNSS standalone navigation solution.

"

"

3.2.4 Example use cases

As an example, an application using a ZED-F9P can compare the secondary output solution to

be used as a sanity check against large errors in the RTK solution or errors originating from the

correction data.

"

So, if I understand correctly, logging both UBX-NAV-PVT and UBX-NAV2-PVT data would allow you to compare corrected and uncorrected data?

Please see the latest integration manual and interface description for more details:

https://www.u-blox.com/sites/default/fi … 010802.pdf

https://www.u-blox.com/sites/default/fi … 008968.pdf

Best wishes,

Paul

Hi Paul,

Thank for your suggestion!

I tried your solution and updated my firmware to version 1.32, but I can found no config components for ‘Nav2’ in the U-center console, the only thing a found is ‘Nav5’

Where can I found that ‘Nav2’ settings?

Hello @ChenxinHu,

There are two ways to enable the NAV2-PVT message. You can use UBX-CFG-MSG (see Image 1), or you can use UBX-CFG-VALSET and the correct Key ID for the NAV2 PVT message on the desired port.

You also need to enable the NAV2 messages using VALSET and the correct Key ID (see Image 2).

You will then be able to see the NAV2-PVT data (see Image 3).

I have not found a way to plot the NAV and NAV2 data simultaneously with u-center. You may have to log the data and plot it manually.

I hope this helps,

Paul

Hi Paul,

Thank you for your advice! I do successfully enabled the secondary output and retrieve the output using a python program. But I found that the secondary output and primary output gives the data with same error, and it’s more likely that they’re both rtk corrected data. How can I fix this?

I have the plots in the attachments, if you feel like to explore the original data you can access the github link below:

https://github.com/Muhlik2018/test_data

Thankkkkkk you sooooooo much!!!

Secondary_Figure.png

Primary_Figure.png

Combined_Figure.png

Hello @ChenxinHu,

I am sorry. I have not used NAV2 before… I do not know what to suggest.

Your log2.txt file contains errors. oriLog2.txt is clean - and contains only NMEA and NAV2_PVT messages. No NAV_PVT messages…:

NMEA $ found at byte 0

Processed 1171751 bytes

File size was 1171751

Longest valid UBX message was 100 bytes

Longest valid NMEA message was 78 characters

Longest valid RTCM message was 0 bytes

Message types and totals were:

Message type: GNRMC Total: 500

Message type: GNVTG Total: 499

Message type: GNGGA Total: 499

Message type: GNGSA Total: 2495

Message type: GPGSV Total: 3499

Message type: GLGSV Total: 2526

Message type: GAGSV Total: 2495

Message type: GBGSV Total: 4491

Message type: GQGSV Total: 1025

Message type: GNGLL Total: 499

Message type: 0x29 0x07 Total: 499

Our UBX_Integrity_Checker might help you debug this? Here is the latest version:

https://github.com/sparkfun/SparkFun_u- … Checker.py

I hope this helps,

Paul

Sorry - that link was for the previous version. The latest version supports RTCM also:

https://github.com/sparkfun/SparkFun_u- … Checker.py

Thannnnnk you! Paul,

I’ve fixed that issue. and I feel like to share some of my experience to help people who face the same problem. To solve this issue, the point is to enable NAV-PVT output message in u-center as well, and now the program produces a good result.

It turns out that the program actually produces NAV2-PVT message (raw one) first and followed by NAV-PVT message, which is not correspond to its specification, but it doesn’t really matter.

I found a python library called pyubx2 quite useful in resolving output ubx messages.

Regards,

Chenxin

resultImage.png