Help with RTK (own base)

Hi, I’m trying to get a stable RTK fix on my drone, but it hasn’t been very reliable.

Right now I’m using the MAVLink method. My setup is:

  • A Raspberry Pi + ZED-F9P as the base station

  • ROS 2 to send RTCM data from the base to the drone

  • On the drone, I use an F9P Ultralight as the GPS

  • A subscriber on the drone forwards the RTCM data to the MAVLink UDP port

I’ve been able to get both RTK Float and RTK Fix, but it doesn’t seem stable. I had RTK Fix for a short period, then it suddenly dropped back to standard GNSS, and I’m not sure why.

I’ve also looked into exposing the gps_inject_data uORB topic to inject RTCM data directly.

Does anyone have experience with better methods for achieving a stable RTK fix with your own base station? Or any tips on how I can improve this setup?