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

Airsense Not Working - DJI Inadequate Response

Coincidence and cause/effect can both provide an explanation.

What's unsupported is the idea that the addition of intelligent flight features causes the memory problem. Do the intelligent flight features use memory in the GPS module immediately on startup? And why would that increase satellite acquisition times?

It's definitely possible that different GPS hardware might be the cause of the problem. But if that's the case, why do some users, presumably with the bad hardware, report that the new firmware release resolved the problem?
I for one was convinced that I had a drone with faulty hardware because my GPS lock was lock was taking so long but after I updated to 0601, my lock times sits no longer than 45 seconds so I can for sure say it is not hardware related for me
 
  • Like
Reactions: Atkas and MS Coast
Folks, you're way too suspicious. I've written code for things like this. It's very technically complex. Having that experience, I'm not suspicious of this explanation at all, and it rings very credible in the details.

I gave the guy making the claim on the DJI forum the benefit of the doubt but its pretty clear it is, at the very least, highly inaccurate. The basis of his claim is a thread from this forum which didn't at all back it up. Not to mention, there are a lot of technical inconsistencies.

He claimed some people "tore down" (I would guess he means reverse engineered) the uBlox chip to reveal a difference in on-chip memory between variants that is somehow shared with other integrated systems and can constrain/corrupt ephemeris data. I can find no reference to this in any uBlox doco. And despite referencing a thread here, he has provided no links to clever people uncovering a "memory architecture" difference.

I am not saying it is categorically untrue but without a single credible source and conflicting technical details, it is sketchy at best.
 
Last edited:
  • Like
Reactions: MS Coast
He also claims he has "blueprints" of the different uBlox chips. Which is hysterical. As if that would tell him what the problem was with the Mavic 3 GPS taking so long.
 
He also claims he has "blueprints" of the different uBlox chips. Which is hysterical. As if that would tell him what the problem was with the Mavic 3 GPS taking so long.
To be fair he did not claim to have the blueprints but said that "He does not need to provide the blueprints"
 
  • Like
Reactions: Roberto Smera
I gave the guy making the claim on the DJI forum the benefit of the doubt but its pretty clear it is, at the very least, highly inaccurate. The basis of his claim is a thread from this forum which didn't at all back it up. Not to mention, there are a lot of technical inconsistencies.

Please share your information on which you judge the explanation "highly inaccurate".

Also please point out the technical inconsistencies you refer to specifically.

I've written code for the uBLOX SOC in question, and everything in the offered explanation is 100% consistent with that hardware in my experience.

Also, given the functionality of that SOC, I'd be surprised if they didn't make use of it for tracking.

None of this means there's any truth to the explanation of what the problem is. This guy could be blowing smoke. However, that's not a conclusion that can be drawn simply from the content of the explanation itself, which you are doing above.
 
Please share your information on which you judge the explanation "highly inaccurate".

Also please point out the technical inconsistencies you refer to specifically.

I've written code for the uBLOX SOC in question, and everything in the offered explanation is 100% consistent with that hardware in my experience.

Also, given the functionality of that SOC, I'd be surprised if they didn't make use of it for tracking.

None of this means there's any truth to the explanation of what the problem is. This guy could be blowing smoke. However, that's not a conclusion that can be drawn simply from the content of the explanation itself, which you are doing above.

I have not worked with uBlox at an I2C or UART level in quite some time but I know enough to know what he has written across myriad posts doesn't make much sense. I can highlight plenty of things he says that are not at all accurate. A "chip teardown" in this forum that highlights differences in memory architecture. This does not exist. He then says he was wrong and got the information from DJI engineers. As if they're having detail integration discussions with end users.

gps-memory-claim.png

He also claims to have "blueprints" of the chip variants. Like uBlox hands those out like candy. Not to mention irrelevant and mostly useless. He has also been referring to an unpopulated chip location on the PCB as if DJI forgot to put something there. He doesn't know what he is talking about. I can go on but it's really not worth it. His explanation morphs and gets sketchier with each additional post he makes.

My uBlox NDA has expired and would need to be renewed to access the current M8030 documentation. Nonetheless, no one seems to be able to point to any uBlox doc, discussion, etc. that highlights a fundamental difference in "memory architecture" between variants that impacts ephemeris. I have found no reference in any sources I do have access to. Doesn't mean it doesn't exist but it seems highly implausible that uBlox would design a series variant with such a significant difference in its critical function without making this abundantly clear. This is my biggest issue with his claim.

There may very well be memory issues somewhere in the overall design of the Mavic 3 but I highly doubt it relates to the use of the KA variant M8030.
Maybe the FC doesn't have enough memory of its own but that is unrelated to GNSS. Even if THAT were true (just described incredibly inaccurately), it still does not explain the long duration of cold starts where there is no current ephemeris. If there isn't enough memory for ephemeris, you're not getting off the ground. If there is, there is. No issue.

I suppose there could be excessive paging or use of swap on the FC but that would likely slow everything down and manifest itself in many unpleasant ways beyond slow GNSS. Maybe there are initialization routines that consume memory temporarily. That still does not explain the seemingly random distribution of time-to-first-homepoint we have seen. I still don't see how adding mastershots or hyperlapse functions would impact usable memory if those functions are not in use. They may occupy storage but not active memory until they are in use.

What we DO know from DJI is they are using new sensor fusion algorithms for their AHRS functions on the FC which has improved overall positioning accuracy. My best guess as to the cause of the slow time-to-first-homrepoint is active filtering of SVs based on HDOP to improve overall positioning accuracy. I bet if you plugged into the UART on the GNSS you would find a pretty normal TTFF but the FC is discarding low quality SVs. I have no evidence to support this theory. It is mere speculation. But at least it is consistent with what people have experienced which is more than can be said of the theory we are debating.

Another possibility would be an issue with SDR or overall RF design between different functions like Airsense, Occusync, etc. Which again would be a far more consistent and plausible explanation of what has been observed.
 
Last edited:
I have not worked with uBlox at an I2C or UART level in quite some time but I know enough to know what he has written across myriad posts doesn't make much sense. I can highlight plenty of things he says that are not at all accurate. A "chip teardown" in this forum that highlights differences in memory architecture. This does not exist. He then says he was wrong and got the information from DJI engineers. As if they're having detail integration discussions with end users.

View attachment 145869

He also claims to have "blueprints" of the chip variants. Like uBlox hands those out like candy. Not to mention irrelevant and mostly useless. He has also been referring to an unpopulated chip location on the PCB as if DJI forgot to put something there. He doesn't know what he is talking about. I can go on but it's really not worth it. His explanation morphs and gets sketchier with each additional post he makes.

My uBlox NDA has expired and would need to be renewed to access the current M8030 documentation. Nonetheless, no one seems to be able to point to any uBlox doc, discussion, etc. that highlights a fundamental difference in "memory architecture" between variants that impacts ephemeris. I have found no reference in any sources I do have access to. Doesn't mean it doesn't exist but it seems highly implausible that uBlox would design a series variant with such a significant difference in its critical function without making this abundantly clear. This is my biggest issue with his claim.

There may very well be memory issues somewhere in the overall design of the Mavic 3 but I highly doubt it relates to the use of the KA variant M8030.
Maybe the FC doesn't have enough memory of its own but that is unrelated to GNSS. Even if THAT were true (just described incredibly inaccurately), it still does not explain the long duration of cold starts where there is no current ephemeris. If there isn't enough memory for ephemeris, you're not getting off the ground. If there is, there is. No issue.

I suppose there could be excessive paging or use of swap on the FC but that would likely slow everything down and manifest itself in many unpleasant ways beyond slow GNSS. Maybe there are initialization routines that consume memory temporarily. That still does not explain the seemingly random distribution of time-to-first-homepoint we have seen. I still don't see how adding mastershots or hyperlapse functions would impact usable memory if those functions are not in use. They may occupy storage but not active memory until they are in use.

What we DO know from DJI is they are using new sensor fusion algorithms for their AHRS functions on the FC which has improved overall positioning accuracy. My best guess as to the cause of the slow time-to-first-homrepoint is active filtering of SVs based on HDOP to improve overall positioning accuracy. I bet if you plugged into the UART on the GNSS you would find a pretty normal TTFF but the FC is discarding low quality SVs. I have no evidence to support this theory. It is mere speculation. But at least it is consistent with what people have experienced which is more than can be said of the theory we are debating.

Another possibility would be an issue with SDR or overall RF design between different functions like Airsense, Occusync, etc. Which again would be a far more consistent and plausible explanation of what has been observed.
What Suren said was correct: "To be fair he did not claim to have the blueprints but said that "He does not need to provide the blueprints""

That is very different than what you are saying.
 
What Suren said was correct: "To be fair he did not claim to have the blueprints but said that "He does not need to provide the blueprints""

That is very different than what you are saying.

I suppose it's fair to be pedantic when I am doing the same, so yes, you are right he said he doesn't need to provide blueprints. Still stands that it is ridiculous to think that you could see or identify this problem looking at blueprints.

Far more important is that he is wrong about the KT and KA M8030 variants being different. They have the same memory. Zero difference.
 
FWIW, I live directly under a major airport's approach path and aircraft overfly me as low as 1650 ft AGL. With LAANC, I can fly 400 ft AGL, so that's only 1250 vertical separation. The Air2S always alerts when an aircraft approaches, but the M3 has never alerted (with firmware .500 or .600). IMO, that's close enough that the M3 should alert.

Speculation that AirSense is controller-based is interesting -- I have an RC Pro arriving tomorrow and will see if it yields different results.
 
FWIW, I live directly under a major airport's approach path and aircraft overfly me as low as 1650 ft AGL. With LAANC, I can fly 400 ft AGL, so that's only 1250 vertical separation. The Air2S always alerts when an aircraft approaches, but the M3 has never alerted (with firmware .500 or .600). IMO, that's close enough that the M3 should alert.

Speculation that AirSense is controller-based is interesting -- I have an RC Pro arriving tomorrow and will see if it yields different results.

It turns out that AirSense does work on the RC Pro and nearby aircraft are displayed, even if they're not immediate threats.

Screenshot_20220331-164828.png
 
  • Like
Reactions: GadgetGuy and Atkas
The range of displayed potential threats is also completely user configurable. One this remote would just be an annoyance.

So long as I don't get Manned Aircraft Approaching alarms, my preference is to have all aircraft the M3 detects displayed on the screen so I can decide which are potential threats.
 
  • Like
Reactions: MS Coast
Well heck. On today’s flights on the RC Pro, I’m back to nothing. This plane is 1/4 mile and 1500 feet above the M3.

48F21124-3D42-4FFE-BB95-B1DE8F18E977.jpeg
 
  • Like
Reactions: BlairAir
Well heck. On today’s flights on the RC Pro, I’m back to nothing. This plane is 1/4 mile and 1500 feet above the M3.

View attachment 146104
Thats what I have been saying. I first posted some where that it worked but was very delayed, then next day nothing, quite, n planes show on the map nothing anymore like Dji just turns this on/off when they want.
 
  • Like
Reactions: oztx
I know this is the Mavic 3 channel, but Air 2 pilots are dealing with this same issue, perhaps to a lesser extent. When I 1st got my Air 2 in January, the alerts were regular and prompt.
 
  • Like
Reactions: oztx
  • Like
Reactions: Phantomrain.org
I think I have a breakthrough here. I find that AirSense works when the M3 is just a few feet off the ground, but when you increase elevation, tracking stops after a few seconds. Tracking resumes once the M3 is close to the ground.

You can see here (using the RC Pro):


Also, I learned that the Low/Medium/High setting shows all aircraft the M3 is tracking, even if they're 50+ miles away. Med & High settings filter out the far away aircraft.

M3: 01.00.0600
RC Pro: 03.01.0600
App: 1.5.10
 
I think I have a breakthrough here. I find that AirSense works when the M3 is just a few feet off the ground, but when you increase elevation, tracking stops after a few seconds. Tracking resumes once the M3 is close to the ground.

You can see here (using the RC Pro):


Also, I learned that the Low/Medium/High setting shows all aircraft the M3 is tracking, even if they're 50+ miles away. Med & High settings filter out the far away aircraft.

M3: 01.00.0600
RC Pro: 03.01.0600
App: 1.5.10
I have seen something similar but not quite exact. I found that when your GPS signal is week and keeps bouncing between sats, like going from strong to week sats Airsense is buggy and randomly works, when this happens you can almost assure yourself it will not work properly that flight. I noticed this only started happening from the 0500 FW not before. I am wondering if this GPS saga and Airsense drama is actually linked and Dji cannot get this right
 
Lycus Tech Mavic Air 3 Case

DJI Drone Deals

New Threads

Forum statistics

Threads
130,950
Messages
1,558,274
Members
159,952
Latest member
wqb3