DJI Mavic, Air and Mini Drones
Friendly, Helpful & Knowledgeable Community
Join Us Now

The BIG GNSS (GPS) Issue -- The Constructive Thread

ianwood

Well-Known Member
Joined
Jun 30, 2017
Messages
228
Reactions
337
Location
Lost Angeles
Site
sillygoo.se
We have a lot of complaining in other threads about how slow the Mavic 3 is to record a home point when starting up. We have plenty of evidence that it takes longer. But we do not have enough constructive discussion. I would like to try a different approach in this thread. There clearly is something different in how the Mavic 3 acquires satellites and records the home point. If DJI isn't going to be forthright about it (not holding my breath), there are still things we can do to move the discussion forward and maybe help ourselves.

For this thread, I'd like to offer up some areas in which we can actually start to figure some things out:

1. We know one material difference between the Mavic 3 vs. prior DJI drones is the swap of GLONASS to Beidou. We do NOT know if this change impacts how long it takes to record a home point. If there are known differences in the user experience between Beidou and GLONASS, Galileo, and GPS, it would be worth knowing. Could swapping them back make a difference? It is a mere configuration change to make it happen.

2. It appears, but I cannot say for sure, that DJI has changed their "GPS Health" criteria for recording a home point. My only evidence of this is the apparent need for 12 or more sats vs. 9 or so on older DJI drones. Not only does it take longer to get SVs but it also wants more of them to get going. Can someone reference and/or document the technical details that define the relationship between SV count, HDOP, GPS Health and the time to first home point.

3. We do NOT know if DJI is using different hardware or antennas for GNSS in the Mavic 3. A tear down would tell us if there is another newer uBlox chip in there with a Taoglass antenna or if DJI is using different parts this time which may explain some of the differences in what we're seeing. I have not seen any identification of chips, antennas in tear downs so far. If you come across them, post them here. If you have a busted Mavic 3 you want to offer up for autopsy, please let me know.

4. We need to push DJI to use A-GPS. We have expensive tablets, phones and RC Pros wired up to these things. It would not be hard to download current ephemeris and almanac data via these devices. For those not familiar, A-GPS is how the GNSS is so fast on your phone. It downloads all the SV geometry, etc. from the internet instead of trying to pull it off the GNSS signal itself. This would fundamentally change the experience. The time to first home point would be under 30 seconds every time.

5. Other topics I cannot think of?
 
And to make things easier for all of us, here is a disambiguation of terms:

GPS = The US based GNSS constellation. GPS is one of several GNSS constellations used by DJI and others.
GNSS = The correct term used to describe satellite based positioning e.g. GPS
Galileo, GLONASS, Beidou = The other constellations from Europe, Russia and China consecutively
Satellite lock / GPS lock = These are made up terms, please avoid. See Time To First Fix (TTFF).
SV = Satellite
Time To First Fix = The time it takes from starting up to having a good enough solution to plot a position.
Cold Start = When the drone hasn't been used for several hours or is far away from its last location.
Warm Start = When the drone has recently been used near to where it is now.
GPS Health = A DJI term for the quality of the GNSS fix. This is used to determine when a home point can be recorded.

And a new term I am making up:

Time to First Home Point = This is how long it takes for the drone to record a home point after it is turned on.
 
2. It appears, but I cannot say for sure, that DJI has changed their "GPS Health" criteria for recording a home point. My only evidence of this is the apparent need for 12 or more sats vs. 9 or so on older DJI drones. Not only does it take longer to get SVs but it also wants more of them to get going. Can someone reference and/or document the technical details that define the relationship between SV count, HDOP, GPS Health and the time to first home point.
There's a tendency to think that GPS Health simply depends on the number of satellites, but it doesn't.
For good location data, the receiver needs a suitable number of sats and a suitable spread of sats in different parts of the sky.
5. Other topics I cannot think of?
There was no problem with TTFF until the December firmware update.
 
We have a lot of complaining in other threads about how slow the Mavic 3 is to record a home point when starting up. We have plenty of evidence that it takes longer. But we do not have enough constructive discussion. I would like to try a different approach in this thread. There clearly is something different in how the Mavic 3 acquires satellites and records the home point. If DJI isn't going to be forthright about it (not holding my breath), there are still things we can do to move the discussion forward and maybe help ourselves.

For this thread, I'd like to offer up some areas in which we can actually start to figure some things out:

1. We know one material difference between the Mavic 3 vs. prior DJI drones is the swap of GLONASS to Beidou. We do NOT know if this change impacts how long it takes to record a home point. If there are known differences in the user experience between Beidou and GLONASS, Galileo, and GPS, it would be worth knowing. Could swapping them back make a difference? It is a mere configuration change to make it happen.

2. It appears, but I cannot say for sure, that DJI has changed their "GPS Health" criteria for recording a home point. My only evidence of this is the apparent need for 12 or more sats vs. 9 or so on older DJI drones. Not only does it take longer to get SVs but it also wants more of them to get going. Can someone reference and/or document the technical details that define the relationship between SV count, HDOP, GPS Health and the time to first home point.

3. We do NOT know if DJI is using different hardware or antennas for GNSS in the Mavic 3. A tear down would tell us if there is another newer uBlox chip in there with a Taoglass antenna or if DJI is using different parts this time which may explain some of the differences in what we're seeing. I have not seen any identification of chips, antennas in tear downs so far. If you come across them, post them here. If you have a busted Mavic 3 you want to offer up for autopsy, please let me know.

4. We need to push DJI to use A-GPS. We have expensive tablets, phones and RC Pros wired up to these things. It would not be hard to download current ephemeris and almanac data via these devices. For those not familiar, A-GPS is how the GNSS is so fast on your phone. It downloads all the SV geometry, etc. from the internet instead of trying to pull it off the GNSS signal itself. This would fundamentally change the experience. The time to first home point would be under 30 seconds every time.

5. Other topics I cannot think of?
I'll chime in on this...
Point 1, DJI dropped Glonass for BeiDou. This is known, what is not known is why. I suspect National pride. While I have not worked with BeiDou on any Chipsets (Only GPS+GLONASS or GPS+Galileo) I have to believe it is good enough to use for Drones at least.

Point 2. I suspect it is a software issue, as before the December update there were not any complaints. As for SV, HDOP, VDOP, TFF and all the rest. The receiver calculates that and spits it out for the user to check and use or you can use the raw data.

Point 3, I cannot confirm whether a different GNSS Chipset is used and that shouldn't make much difference honestly.

Point 4, A-GPS works well for the first startup as the GNSS chipset does not have to download the Almanac and Ephemeris catalog deceasing TFF. If you fly in the same place constantly, say your backyard, then the Chipset has the catalog already, so the benefits are negligible. Now, if you change locations by tens or hundreds of miles, A-GPS is beneficial for TFF.

Point 5, I'm going with it is a software not hardware problem. The question is how long before DJI can solve the issue, as there are many frustrated M3 users out there. I have no idea why DJI dropped GLONASS for BeiDou. In my view that is problematic as Galileo and BeiDou step on each others frequencies especially in the public E1-E2 bands.

Let's hope this issue gets resolved soon.

Cheers!
 
I'll chime in on this...
Point 1, DJI dropped Glonass for BeiDou. This is known, what is not known is why. I suspect National pride. While I have not worked with BeiDou on any Chipsets (Only GPS+GLONASS or GPS+Galileo) I have to believe it is good enough to use for Drones at least.

Point 2. I suspect it is a software issue, as before the December update there were not any complaints. As for SV, HDOP, VDOP, TFF and all the rest. The receiver calculates that and spits it out for the user to check and use or you can use the raw data.

Point 3, I cannot confirm whether a different GNSS Chipset is used and that shouldn't make much difference honestly.

Point 4, A-GPS works well for the first startup as the GNSS chipset does not have to download the Almanac and Ephemeris catalog deceasing TFF. If you fly in the same place constantly, say your backyard, then the Chipset has the catalog already, so the benefits are negligible. Now, if you change locations by tens or hundreds of miles, A-GPS is beneficial for TFF.

Point 5, I'm going with it is a software not hardware problem. The question is how long before DJI can solve the issue, as there are many frustrated M3 users out there. I have no idea why DJI dropped GLONASS for BeiDou. In my view that is problematic as Galileo and BeiDou step on each others frequencies especially in the public E1-E2 bands.

Let's hope this issue gets resolved soon.

Cheers!
I think national pride or govt. mandate is the reason they changed to beidou since it is clearly inferior to what was used before. The GPS is simply not up to snuff, so to speak. One would think dji is more familiar with their own Chinese system than ours so I am not so sure it is just the software. If beidou doesn’t work as well they should switch back to the tried and true systems that were used in prior drones.
 
  • Like
Reactions: Norval and db4476
We have a lot of complaining in other threads about how slow the Mavic 3 is to record a home point when starting up. We have plenty of evidence that it takes longer. But we do not have enough constructive discussion. I would like to try a different approach in this thread. There clearly is something different in how the Mavic 3 acquires satellites and records the home point. If DJI isn't going to be forthright about it (not holding my breath), there are still things we can do to move the discussion forward and maybe help ourselves.

For this thread, I'd like to offer up some areas in which we can actually start to figure some things out:

1. We know one material difference between the Mavic 3 vs. prior DJI drones is the swap of GLONASS to Beidou. We do NOT know if this change impacts how long it takes to record a home point. If there are known differences in the user experience between Beidou and GLONASS, Galileo, and GPS, it would be worth knowing. Could swapping them back make a difference? It is a mere configuration change to make it happen.

2. It appears, but I cannot say for sure, that DJI has changed their "GPS Health" criteria for recording a home point. My only evidence of this is the apparent need for 12 or more sats vs. 9 or so on older DJI drones. Not only does it take longer to get SVs but it also wants more of them to get going. Can someone reference and/or document the technical details that define the relationship between SV count, HDOP, GPS Health and the time to first home point.

3. We do NOT know if DJI is using different hardware or antennas for GNSS in the Mavic 3. A tear down would tell us if there is another newer uBlox chip in there with a Taoglass antenna or if DJI is using different parts this time which may explain some of the differences in what we're seeing. I have not seen any identification of chips, antennas in tear downs so far. If you come across them, post them here. If you have a busted Mavic 3 you want to offer up for autopsy, please let me know.

4. We need to push DJI to use A-GPS. We have expensive tablets, phones and RC Pros wired up to these things. It would not be hard to download current ephemeris and almanac data via these devices. For those not familiar, A-GPS is how the GNSS is so fast on your phone. It downloads all the SV geometry, etc. from the internet instead of trying to pull it off the GNSS signal itself. This would fundamentally change the experience. The time to first home point would be under 30 seconds every time.

5. Other topics I cannot think of?

The slow satellite acquisition seems to be (at least partly) dependent on the drone launch location. This is what I experienced yesterday. I flied in two different location, one took 2+ minutes to record the home point, another took less than 30 seconds.
 
The slow satellite acquisition seems to be (at least partly) dependent on the drone launch location.
This is true for any GPS receiver.
The more sky that's blocked by obstacles, the less satellites are available.
This is what I experienced yesterday. I flied in two different location, one took 2+ minutes to record the home point, another took less than 30 seconds.
That's normal for any GPS.
There is always a significant time difference between a cold start and a hot start.
 
  • Like
Reactions: Norval and db4476
I think national pride or govt. mandate is the reason they changed to beidou since it is clearly inferior to what was used before. The GPS is simply not up to snuff .... If beidou doesn’t work as well they should switch back to the tried and true systems that were used in prior drones.
Even if that was true (and I doubt that it is), the M3 is still receiving data from the same old US GPS system as well as the European Galileo system.
One would think dji is more familiar with their own Chinese system than ours so I am not so sure it is just the software.
DJI has been using GPS and Glonass for many years and has plenty of experience with those systems.
Beidou has only been providing global coverage since 2020.

You aren't even considering that the hardware worked just fine prior to the December firmware update.
 
  • Like
Reactions: db4476
This is true for any GPS receiver.
The more sky that's blocked by obstacles, the less satellites are available.

That's normal for any GPS.
There is always a significant time difference between a cold start and a hot start.

What I experienced yesterday is a less than 30 sec cold start, followed by a 2+ minutes hot start. The only difference between the two is the location.
 
I didn't notice the big change after the first firmware but I'll take everyone's word for it. Which means it was either an intentional change or they broke something. If the latter, it seems odd that such a glaring issue would make it through two big firmware updates. Not unprecedented. Especially with DJI, but still.
 
  • Like
Reactions: JohnnyChicago
I think national pride or govt. mandate is the reason they changed to beidou since it is clearly inferior to what was used before. The GPS is simply not up to snuff, so to speak. One would think dji is more familiar with their own Chinese system than ours so I am not so sure it is just the software. If beidou doesn’t work as well they should switch back to the tried and true systems that were used in prior drones.
So just one question. How do you explain it working fine pre 10 December FW ?
 
I think national pride or govt. mandate is the reason they changed to beidou since it is clearly inferior to what was used before. The GPS is simply not up to snuff, so to speak. One would think dji is more familiar with their own Chinese system than ours so I am not so sure it is just the software. If beidou doesn’t work as well they should switch back to the tried and true systems that were used in prior drones.
National pride / government mandate is one (speculative) possibility, but there are many variables other than just a simple GNSS system change between the M3 and previous drones, several things changed or could have been changed (GNSS hardware, configuration of hardware, antenna, antenna placement, drone geometry, software), so you cannot say this is (or is not) the reason. I'm not sure you can say DJI are more "familiar" with a system that only completed deployment in 2020 and was previously not used by them, vs. DJI utilizing GPS for several years? Additionally, assuming DJI offload the actual GNSS signal processing and position calculation to a third party chip such as uBlox, the DJI engineers are likely not involved in the specifics of the GNSS at ALL, treating it as a "black box". From some independent test reports I've seen, BeiDou may have better global coverage and accuracy than the GLONASS system too
 
@ianwood - for your glossary, any thoughts on what "High-Precision Positioning System" means? I was curious the other day to see what DJI claimed for positioning accuracy, and checked their online specs:

Hovering Accuracy Range:

Mavic 2 Pro: Horizontal: ± 0.3 m (when vision positioning is active); ± 1.5 m (with GPS positioning)
Mavic Air 2: Horizontal: ±0.1 m (with vision positioning); ±1.5 m (with GPS positioning)
DJI Air 2S: Horizontal: ± 0.1 m (with vision positioning); ± 1.5 m (with GNSS positioning)
Mavic 3: Horizontal: ±0.3 m (with Vision Positioning); ±0.5 m (with High-Precision Positioning System)

For the Mavic 3, they state a much tighter horizontal accuracy, but also move away from referring to the system as GPS/GNSS and instead introduce what appears to be their own term. Nevertheless, as we try to understand what changed from previous drones, they claim a much tighter positional accuracy, which implies an implementation change. Could be directly from including BeiDou, or possibly utilizing satellites from more than one GNSS at a time to improve accuracy.
 
Last edited:
  • Like
Reactions: JohnnyChicago
And to make things easier for all of us, here is a disambiguation of terms:

GPS = The US based GNSS constellation. GPS is one of several GNSS constellations used by DJI and others.
GNSS = The correct term used to describe satellite based positioning e.g. GPS
Galileo, GLONASS, Beidou = The other constellations from Europe, Russia and China consecutively
Satellite lock / GPS lock = These are made up terms, please avoid. See Time To First Fix (TTFF).
SV = Satellite
Time To First Fix = The time it takes from starting up to having a good enough solution to plot a position.
Cold Start = When the drone hasn't been used for several hours or is far away from its last location.
Warm Start = When the drone has recently been used near to where it is now.
GPS Health = A DJI term for the quality of the GNSS fix. This is used to determine when a home point can be recorded.

And a new term I am making up:

Time to First Home Point = This is how long it takes for the drone to record a home point after it is turned on.
Thanks for sharing!
 
National pride / government mandate is one (speculative) possibility, but there are many variables other than just a simple GNSS system change between the M3 and previous drones, several things changed or could have been changed (GNSS hardware, configuration of hardware, antenna, antenna placement, drone geometry, software), so you cannot say this is (or is not) the reason. I'm not sure you can say DJI are more "familiar" with a system that only completed deployment in 2020 and was previously not used by them, vs. DJI utilizing GPS for several years? Additionally, assuming DJI offload the actual GNSS signal processing and position calculation to a third party chip such as uBlox, the DJI engineers are likely not involved in the specifics of the GNSS at ALL, treating it as a "black box". From some independent test reports I've seen, BeiDou may have better global coverage and accuracy than the GLONASS system too
Keep in mind. BeiDou is not in doubt regarding accuracy, it might even be better than prior DJI drones. It’s how long a cold boot takes with no A-GPS to get up to the level the firmware sees fit for Home Point. Many applications, like phones always know approx location without GPS and have A-GPS on top of that. And cars GPS might never shut down. So lots of applications don’t need frequent Cold boots. Not saying BeiDou based systems is slower on Cold boot. All we know is with what ever chip M3 uses, Antenna, Antenna placement, and Software that decides when things are a go, is on average, very slow. And will vary over time, location and conditions as all GPS systems do. But in most locations and times M3 owners think M3 unacceptable for this price point.

And if you ever found a competent DJI technician, if they hear “GPS” you will get the automatic response of “clear skies blah blah blah”. I’m sure DJI programmers know exactly the state of affairs. They are not that stupid to not know this and deal with other things that are 10x more complex.
 
Keep in mind. BeiDou is not in doubt regarding accuracy, it might even be better than prior DJI drones. It’s how long a cold boot takes with no A-GPS to get up to the level the firmware sees fit for Home Point. Many applications, like phones always know approx location without GPS and have A-GPS on top of that. And cars GPS might never shut down. So lots of applications don’t need frequent Cold boots. Not saying BeiDou based systems is slower on Cold boot. All we know is with what ever chip M3 uses, Antenna, Antenna placement, and Software that decides when things are a go, is on average, very slow. And will vary over time, location and conditions as all GPS systems do. But in most locations and times M3 owners think M3 unacceptable for this price point.

And if you ever found a competent DJI technician, if they hear “GPS” you will get the automatic response of “clear skies blah blah blah”. I’m sure DJI programmers know exactly the state of affairs. They are not that stupid to not know this and deal with other things that are 10x more complex.
I'm familiar with the concept of A-GNSS but the point of my reply was that the particular user had pre-determined that the reason for the issues (that none of us actually know) is that it was the change to include BeiDou that made it inferior, and reinforced that by saying they should switch away from BeiDou. My point was that there are clearly numerous other changes made, or potentially made, to the whole platform with respect to GNSS signal receipt, processing, etc. that could be responsible. Lest we not forget, because it has multi-GNSS capabilities, it may be experiencing these lengthy TTFF using just the GPS system in some locations, for instance, and have nothing to do with using BeiDou at all. We just don't know, one way or the other.

As for whether BeiDou is slower on "cold" boot - looking at datasheets for third party chipsets that offer multi-GNSS capability (such as the uBlox M8 and M9), they give specs for TTFF for single and multi-GNSS configurations of their chip, and there is relatively little difference between the TTFF for single-GNSS use, with Galileo usually being the outlier, eg. the NEO-M8N TTFF cold-start is GPS 29 seconds, GLONASS 30 seconds, BeiDou 34 seconds, and Galileo 45 seconds, so that makes me think there isn't any specific with regards to the BeiDou protocol itself. Combining more than one GNSS results in faster TTFF, too, as expected.
 
  • Like
Reactions: Howard70
So just one question. How do you explain it working fine pre 10 December FW ?
But...did it "work fine"? It was faster, sure, but was is sufficiently accurate enough? As all we can do is speculate, I will - I recall seeing a large number of forum posts scattered around after the M3 launch, from users experiencing significant drift after taking off when the home point was stated to be acquired. After the .0400 firmware release in December, I don't recall seeing any further complaints of the drifting issue, just lots of complaints about the lengthy TTFF. The .0400 firmware notes state "Improved hover stability", which may or may not be related to the drifting issues reported, which also may or may not be related to the GNSS component (I did say I was speculating :) ).

While it is always possible DJI engineers unintentionally introduced this longer TTFF in the .0400 release, they have had enough complaints and time to undo the "accident" in the recent .0500 release - and they didn't. I would conclude that it was introduced deliberately, and speculate that it is for a reason related to "GPS Health", to use the glossary term. What the underlying issue is, I have no idea, that's what we're all hoping to figure out ourselves :) But...what if what we have now *IS* the fix? I would hope not, and it could be a temporary measure - perhaps DJI engineers were aware of the issue but not the underlying cause (and thus how to fix), but did discover that more satellites helped reduce the issue, so they made this change, trading time for safety, while they diagnose further. But to bring it back around, I wouldn't say it "worked fine" prior to the December FW, due to the drift issues reported then.
 
  • Like
Reactions: ianwood and mswlogo
But...did it "work fine"? It was faster, sure, but was is sufficiently accurate enough? As all we can do is speculate, I will - I recall seeing a large number of forum posts scattered around after the M3 launch, from users experiencing significant drift after taking off when the home point was stated to be acquired. After the .0400 firmware release in December, I don't recall seeing any further complaints of the drifting issue, just lots of complaints about the lengthy TTFF. The .0400 firmware notes state "Improved hover stability", which may or may not be related to the drifting issues reported, which also may or may not be related to the GNSS component (I did say I was speculating :) ).

While it is always possible DJI engineers unintentionally introduced this longer TTFF in the .0400 release, they have had enough complaints and time to undo the "accident" in the recent .0500 release - and they didn't. I would conclude that it was introduced deliberately, and speculate that it is for a reason related to "GPS Health", to use the glossary term. What the underlying issue is, I have no idea, that's what we're all hoping to figure out ourselves :) But...what if what we have now *IS* the fix? I would hope not, and it could be a temporary measure - perhaps DJI engineers were aware of the issue but not the underlying cause (and thus how to fix), but did discover that more satellites helped reduce the issue, so they made this change, trading time for safety, while they diagnose further. But to bring it back around, I wouldn't say it "worked fine" prior to the December FW, due to the drift issues reported then.
Exactly.

It also had “RTH performance improvements” in 0.400 release notes.

I’m not sure how much “hover” uses GPS. But we know RTH does.
 
Exactly.

It also had “RTH performance improvements” in 0.400 release notes.

I’m not sure how much “hover” uses GPS. But we know RTH does.
DJI spec pages for their drones always state "Hovering Accuracy Range" with horizontal/vertical accuracy values if using the GPS/GNSS system. I assumed hover used GNSS to ensure it was always hovering where you left it, even if initially pushed off by a gust of wind. I'd initially ruled out the "RTH performance improvements" as related, but on pondering, if that is cryptic speak for "like, we actually know where home is now", then yes, it could be related, too :)
 
  • Like
Reactions: mswlogo
But...did it "work fine"? It was faster, sure, but was is sufficiently accurate enough? ... I wouldn't say it "worked fine" prior to the December FW, due to the drift issues reported then.
Yes ... it was fast and fine.
Any drifting complaints were due to obstacle avoidance
Exactly.

It also had “RTH performance improvements” in 0.400 release notes.

I’m not sure how much “hover” uses GPS. But we know RTH does.
RTH improvement was to allow the drone to come home at the pre-set height as in the pre-M3 days
Hovering uses GPS - that's how it holds position.
It also uses VPS when down low enough.
 
Lycus Tech Mavic Air 3 Case

DJI Drone Deals

New Threads

Forum statistics

Threads
131,652
Messages
1,564,975
Members
160,518
Latest member
Rustjan