RTK light on mosaic x5

Hello. I am brand new to all this so thank you for you patience and assistance.

I am trying to set up my Sparkfun Mosaic x5 as a base station to provide RTK corrections to a ZED-F9R as a rover. I am using the Holybro sik 915Mhz telemetry radios to try and establish communication between the two devices. The radios are connected via UART.

Both devices have been setup and can easily pickup GNSS signal and provide position information. The Mosaic is set up in static mode as discussed in the startup manual for a temporary base. However, Im not sure how to get the Mosaic to send RTK corrections to the rover or if the Mosaic even has RTK calculations at all.

Using the web-browser based control page, I set up the Mosaic to send correction data via the serial COM1 port, which is the UART output that my radio is connected to. The control page says that corrections are being sent out, yet I do not see the data transfer LED blinking on the radio, nor does the ZED-F9R receive any correction data.

I have tested the radios by using them to send messages between two computers by using PUTTY, so I dont suspect the radios to be the issue.

There are a few strange things that could be indicative of the issue:

  1. The RTK LED on the Mosaic is not on. So I would assume this means it has no RTK data to send, so maybe thats the issue? If so, I cant figure out how to set up the RTK portion.

  2. The radio connected to the Mosaic will send data to my computer when I connect a micro usb from the radio to my computer. The red lights blink, indicating that data is being transferred, and I can see gibberish data showing up on my PUTTY terminal (I did not log the data to be deciphered so im not sure if these are the RTCM corrections).

Im pretty stumped on this issue and cant seem to figure anything else out. Ive followed the guides, but havent found anything that is helpful. I can provide further detail if necessary. My brain is fried from trying to solve this. Hopefully its an easy fix that I just overlooked as a novice. Thanks!

Hi Dante (@D_ral ),

Welcome!

There are a few steps to this. Hopefully the following checklist will help:

Mosaic-X5 web page:

GNSS \ Position tab:
Have you set the mosaic-X5 Position Mode to “Static”?
Is it using “Auto” for the Reference position?

Corrections \ Corrections Output tab:
Have you enabled RTCM3 output on Serial port COM1?
Which MSM message group did you select? MSM4 plus RTCM1006+1033+1230?
Did you “OK” the changes to apply them?

Communication \ Serial Port tab:
Does the COM1 baud rate match the baud rate for the Holybro radios?

Have you checked you have COM1 TX is linked to radio RX-In and vice versa? GND-GND too?

ZED-F9R Rover:

Is the radio connected to ZED UART2 or UART1?
Have you checked you have radio TX-Out linked to ZED RXI and vice versa? GND-GND too?
Does the UART baud rate match that of the radios?
Is RTCM-input enabled on the ZED UART port? (It is by default on UART2)
Can you monitor what the ZED is doing using u-blox u-center?
What do you see on UBX-MON-COMMS? (Click “Poll” a few times to see if the counts are updating)
What do you see on UBX-RXM-COR (Differential Corrections)? Is the ZED “using” the corrections? Note that UBX-RXM-COR is Output-only. It can not be polled. You need to make it “Periodic” first using UBX-CFG-MSG: if you are connected via USB, set 02-34 RXM-COR to a rate of 1 on USB so you can monitor it.

The mosaic-X5 RTK LED should not illuminate because it is not in RTK-Float or RTK-Fix. It is generating corrections, not using them.

Please let us know if you need more help,
Paul

1 Like

Hi Paul,

Thanks for your reply. Let me answer your questions to show you where I’m at and what I’m seeing.

Currently, the Mosaic-x5 is in static mode and using ‘auto’ for referencing.

On the corrections output tab, I have COM1 outputting RTCMv3 info and the default selected messages being output. I have clicked ‘OK’ and it shows COM1 sending data.

I did goof up and connect the tx to tx and rx to rx instead of the proper way, so I have fixed that and can now see that the radios are communicating information to each other.

Now looking at the ZED-F9R:

The baud rates are matched and I can see that data is coming into the UART2 port in U-center.

I enabled RXM-COR in u-center, however nothing appears in UBX-RXM-COR.

Ive also checked UBX-RXM_RTCM and there is no information either.

So it seems that the ZED-F9R is receiving data, but not doing anything with it? The RTK light on the ZED-F9R is also not illuminated. I assume that one should be on to show it has a fix.

Again, Thanks for your help so far. I feel like were on the cusp of getting this thing to work. Let me know what you think the problem is or if you need more info!

Quick update,

I changed the baud rate in UBX-CFG-PRT to match the radios.

Now I see the RTK light on the ZED-F9R flashing. However, nothing shows up in UBX-RXM-COR.

On a side note, should the position accuracy on my Mosaic-5x be displayed? Or is this only something that would show up when used as a rover? Right now it shows nothing, only the position.

I think its working then? How can I tell if the RTK is working correctly and how accurate my position is?

Hi Dante (@D_ral ),

I think you are probably having baud rate issues. The Holybro SiK radios default to 57600 baud. If you change both the mosaic-X5 COM1 and the ZED-F9R UART2 to 57600, does it start working?

The 131974 Skipped bytes on UART2 is a big clue. Data is being received, but the ZED cannot interpret it. When the link is working correctly, you should see the 5-RTCM3 message count increase steadily on UART2. Skipped bytes should be zero, or near zero, and not steadily increasing. You can make UBX-MON-COMMS periodic too using UBX-CFG-MSG and avoid having to click “Poll” repeatedly. The “age” of the messages (top right) should toggle between 0s and 1s when they are periodic. If the age keeps increasing second-per-second, they’re not periodic.

The mosaic-X5 is reporting zero position accuracy because it is in Static (Fixed Base) mode. The accuracy estimate is only meaningful in Rover mode.

If the ZED-F9R RTK LED is blinking, it has a Float solution. That’s a very good sign that things are working.

Keep the questions coming. We’ll get this working! :wink:

I’ve ordered a pair of SiK radios. I’ll be able to fully replicate your setup from about Wednesday onwards.

All the best,
Paul

Hi Paul,

I very much appreciate the advice.

I switched the radios, Mosaic x5, and the ZED-F9R to have 57600 baud rate. This helped a lot! the RTCM3 message count started going and very few messages were skipped.

The position accuracy improved after a few minutes and the rover was staying consistently in FLOAT.

The device will occasionally enter FIXED, but will only stay in that status for a few seconds before going back to FLOAT.

The two devices are only about a meter away from each other, so it isnt a distance issue (unless there is such a thing as being too close).

Is there anything I can do to get a constant FIX position? Im doing this from my balcony right now so there is a neighboring balcony overhead right now. Could that be enough to cause the issue?

Additionally, there are still a few hundred messages still being skipped over a 30 minute period. Would further reducing the baud rate help the situation at all? Or is that an acceptable number of skipped messages?

Thanks again. Youve likely saved me hours of troubleshooting here!

Dante

I’ve been seeing same using postcard base and zed rover or visa versa fix happens briefly I’m using Lora antennas with proper baud rate. So I’m thinking there must a setting for frequency or something we’re missing.

Using zed as base and postcard as rover I can hold a fix longer but eventually I get fix age of 90s+ and it drops to dgps.

Doing a little reading I see low link rtcm rates so I might need to try those.

Also now see assisted base method that talks about RTK in rover mode then switch to base, that sounds like a good way to get a pretty solid base.

Hi Dante,

Excellent. It sounds like everything is working as well as possible.

You won’t be able to achieve continuous Fixed solutions unless both GNSS antennas have a clear view of the sky. Is there any way you could run a pair of antenna cables up to the roof?

The Holybro SiK radios are using a licence-exempt band and there could easily be interference from other systems sharing the same band. The ZED Rover won’t be able to interpret corrupt or partial messages, and they will appear as “skipped”. A few hundred skipped bytes over 30 minutes sounds pretty good. The u-center UBX-MON-COMMS skipped count is bytes, not messages.

As an experiment, try removing the radios and linking the mosaic-X5 COM1 TX to ZED UART2 RX direct. Don’t forget the GND-GND connection. What do you see then? If the radios were working perfectly, this is as good as it is going to get.

I’ll run some tests later this week when my SiK radios arrive. I’ll let you know what I see.

Best wishes,
Paul

Hi Paul,

Thanks for all your help. I was able to take the devices out to an open field yesterday. This must have helped since the ZED-F9R was able to maintain fixed solutions for pretty long periods of time with minimal drop offs. Im yet to test my fully integrated system and I plan for that to be the next step. The ZED-F9R will likely be drone mounted, so that will probably come with its own set of unforeseen issues.

Yes, please let me know if you figure out any helpful tips or tricks from your setup!

Thanks again!

Dante