Is my understanding reasonably correct?


I have a DJI Mavic 3E with the RTK module. Here’s my understanding of options for getting precise geolocation data:

  • My state’s Department of Transportation maintains a CORS network and offers free NTRIP connections. When flying where I have Internet access, I can simply use this service directly.
  • When flying without Internet access, I can use the data captured by the drone as the rover, and use the CORS data as the base, assuming a CORS node is reasonably close.
  • When flying the drone 100km or more from a CORS unit, I can use my Reach 2 as a base to log GNSS data (best if I can log for 2 hours), use OPUS to solve for its position, then use it as the base.

Is this roughly correct?


1 Like

Yes correct. However, short baselines are optimal and are your best friend ! Always use a receiver onsite as backup. NGS CORS usually log no faster than 1 sec and most at 30 sec. You will have difficulty post processing your flight data at these rates.

Always have a base logging at least at 10 Hz onsite if no internet is available.

Even if I have internet access and I am using our state’s RTN, I also have a base logging onsite. A couple of times, I’ve lost RTN fix for whatever reason and I’m glad I had the base onsite. Sometimes when I have the extra time I also post process my data to compare with the RTN data, in every instance I’m mostly within 2-5 cm horizontal and vertical components. This is using commercial PP software.

Check and double check… It’ll save you grief and time.


Thanks for the suggestions. The other question I’m struggling with is datum. My state-provided NTRIP service uses NAD83. ChatGPT seems to think it’s relatively easy to transform these into wgs84 via Python. However, going PPK would seem to make this process easier.

I’m not a surveyor; I like producing detailed orthomosaics and topo maps. Using NAD83 causes measurement errors when using products such as Google Earth.

My state SC RTN is ITRF2014/Ellipsoid. The software in your data controller will convert to your user selected projection.

I reference all our boundary/topo and control points surveys in NAD83 (2011) (Epoch:2010) with Geoid18, which is what all NGS passive control is published along with ITRF2014./Ellipsoid.

When flying a site, my flight controller uses the RTN datum (ITRF2014/Ellipsoid). I collect all my GCP’s in this same datum. I then process all imagery in Metashape using ITRF2014. Once all imagery is processed, I simply export to my state projection with Geoid18.

Google Earth is a sloppy public GIS . Per the procedures above, GE will seldom match what you produce due to questionable datum/projection of their imagery.


Out of curiosity , have you noticed difference in accuracy when comparing 1sec cors and high rate local base?

I’ve never have used a local CORS for PP flight data, they are too far away (>20 km) too use to PP for flying, besides they only log static data. They closest ones do log at 1 sec but I only use the CORS for PP of the local base.

RTN is another matter as it computes a VRS position close by, usually <10 meters IF I have cell coverage. Otherwise I’ll use the local base to PP all flight data.

Short baselines are best


Yesterday, I flew on a mission to test using CORS (7mk away, logging at 1 sec) to correct my M2, and then use the M2 data to correct the drone log vs. just using CORS directly to correct the data. The drone captured observations at 5hz, M2 at 5hz, and CORS at 1hz.

Using CORS, 99.7% (1,961 out of 1,967) of samples resolved to FIX, compared to 97.5% using the M2 data.

I’ll experiment with something more distance from the CORS later this week.


Few years ago i was working on a comparison but i forgot all about it when waiting for the finals from nrcan. Just a simple rover vs local base and nrcan at different speed. Would be fun to finish though


NICE RIG @TB_RTK using old RS shock mount!!!


For everyone looking, it might come as a shock to mount something to my shiny car, on the roof. Thats why the shock proof mount :rofl:


Hi @Steven_Wallace
What you mentioned is correct! You can use the NTRIP/CORS service with the drone. Typically, drones operate at update rates from 1 Hz to 20 Hz, so going higher than 1 second is recommended.

I totally agree with @EBE111057 that when possible, it’s always better to get backup data with your own base. Thank you for sharing your workflow.

For the datum, ideally, it’s better to have an aligned datum within your base reference, project setting, GCP, and the NTRIP service, but indeed, there is always an option to transform it afterward.

Also, thank you to @TB_RTK for sharing the photo!

1 Like