2
$\begingroup$

I am implementing my own ADS-B decoding station, mainly following Junzi Sun's work "The 1090 MegaHertz Riddle", and I am having an issue from time to time, with the latitude value having an offset of ±6 (which is quite a lot, enough to change country in my case), and I cannot find why this happens.

It can happen even if the correct airborne position has been decoded moments before, and/or moments after; and does not seem to be aircraft dependent. I am also doing the parity check, so the message received should be error proof. I double checked my formulas, the NL check is done, all seems fine, and I cannot find the reason for this offset.

I am using an indoor installation for the moment, with a not too powerful antenna, as I am only in the testing phase, so I don't have a lot of range (less than 10km). For the moment I have a maximum delay between frames of 60s (it will be put back to 10s later), because I don't receive lots of frames; could that be the issue? Note that the problem happens even if I reverse the order of even/odd frames. Also, I don't (yet) use locally unambiguous decoding, would it help?

Has someone experienced this before? Is there something I might be doing wrong? Should I just discard the values I know are false?

$\endgroup$
6
  • $\begingroup$ Does it happen at specific latitudes only? $\endgroup$
    – DeltaLima
    Jun 2 at 22:00
  • $\begingroup$ When you use global decoding, do you make sure there is no more than 10 seconds betwee the odd and even messages? $\endgroup$
    – DeltaLima
    Jun 2 at 22:02
  • $\begingroup$ I am using an indoor installation for the moment, with a not too powerful antenna, as I am only in the testing phase, so I don't have a lot of range (less than 10km). I will check if all the "lost" coordinates happen roughly at the same latitude (antenna is at approx lat 44-45). For the moment I have a maximum delay between frames of 60s (it will be put back to 10s later), because I don't receive lots of frames, could that be the issue? Note that the problem happens even if I reverse the order of even/odd frames. Also, I don't (yet) use locally unanmbiguous decoding, would it help? $\endgroup$
    – Eak'Lon
    Jun 3 at 7:42
  • $\begingroup$ From a few data points, the latitude of the "wrong" decoded locations can vary by at least 10km (decoded lat is between 38.584 and 38.685). I should also point out that the offset value of 6 is an estimation, and it could very well be a non-integer offset, but that is a bit tricky to check $\endgroup$
    – Eak'Lon
    Jun 3 at 11:11
  • $\begingroup$ Do you mean a "sensitive antenna"? Or are you transmitting? $\endgroup$ Jun 5 at 10:14
5
$\begingroup$

The jumps you see are caused by the fact that there is too much time between the two successive messages you use for the global unambiguous decoding.

For Compact Position Reporting (CPR) to work, the decoded positions of a global unambiguous decoding attempt should be no more than approximately 3 nautical miles apart. The standard (ED-102A / DO-260B) sets a limit of 10 seconds between reception of a pair of position reports for global unambiguous decoding. You will likely get away with 15 seconds in almost all cases.

However, in your case, you wait for up to 60 seconds. That is breaking the algorithm, and as a result you end up in the wrong latitude bin. You will likely see longitude errors as well.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.