Jump to content
The simFlight Network Forums

ADF ABSOLUTE bearing?


Recommended Posts

Hello Pete, hello guys,

I was wondering if there is a way to get the absolute bearing to an ADF station rather than the RELATIVE bearing, which I am able to read out. The thing is, that this relative bearing seems to be updated about 5 times slower than for example the heading, and that causes a jumping ADF pointer during a turn.

- Do I have to interpolate the values to smoothen the relative bearing?

- Or is there a way to get the absolute bearing? I know I could use great circle geometry on the aircraft position and NDB station's position, but is there an easy way?

- Pete, could you update the ADF relative bearing more often?

I am open minded for other ideas!

Thank you very much

Flo

Link to comment
Share on other sites

I was wondering if there is a way to get the absolute bearing to an ADF station rather than the RELATIVE bearing, which I am able to read out.

Only arithmetically from the aircraft heading and the relative bearing.

The thing is, that this relative bearing seems to be updated about 5 times slower than for example the heading, and that causes a jumping ADF pointer during a turn.

Really? Never noticed that.

I need to know which version of FSUIPC and FS you are talking about, and the actual offset you are talking about would help.

could you update the ADF relative bearing more often?

Tell me more about versions (information always needed!) and I'll check. I did change the priority of a lot of values recently. I don't want to delve into code unnecessarily, nor, indeed, the wrong code!

Pete

Link to comment
Share on other sites

Wow, thank you very much for that quick response!

I am using FS2004 with FSUIPC 3.80 (latest version from 06 MAR 08).

The ADF1 Relative Bearing is read out of Offset 0C6A, the same goes for ADF2 at 02D8.

Here is my debugging output:

Heading: 036,020
ADF: -001,137
Heading: 036,022
ADF: -001,137
Heading: 036,023
ADF: -001,137
Heading: 036,025
ADF: -001,137
Heading: 036,027
ADF: -001,137
Heading: 036,029
ADF: -001,137
----------------------------
Heading: 036,031
ADF: -001,148
Heading: 036,034
ADF: -001,148
Heading: 036,036
ADF: -001,148
Heading: 036,042
ADF: -001,148
Heading: 036,044
ADF: -001,148
----------------------------
...

As you can see, the ADF bearing remains the same as the heading is changing. I was flying straight, in a turn the problem is exactly the same, with an about 5 times slower updated ADF bearing.

Thank you very much for your support, I greatly appreciate it!

Greetings from Arizona

Flo

Link to comment
Share on other sites

Here is my debugging output

But in those examples the heading changes not reflected in the ADF bearing were only a few thousandths of a degree (9 and 13 thou for the two sequences), surely not enough to register on any normal ADF gauge? Isn't thiss simply the result of an "epsilon" setting deciding whether the change is sufficient? I can delve into the code, but

I was flying straight, in a turn the problem is exactly the same, with an about 5 times slower updated ADF bearing.

So are you saying that you notice jumps in a fast turn but not a slow one? Also "five times slower" doesn't mean anything useful in itself -- for instance, the heading could be changing several times per visual frame. It is a direct read-out from memory whereas the ADF data has to be read by calling functions in FS internals.

I have looked at the code and the ADF data is read at the same frequency as most of the other "fast" variables I have to get procedurally: NAV radials, CDI, GSI, HSI, that's every 4th FS frame. For a good frame rate that should be barely noticeable, unless maybe you have a very much enlargened ADF needle display?

I could "promote" these values to once per frame, but I am a little reluctant to do so because of possible performance deterioration. Could you explain more about your unusual needs please?

Regards

Pete

Link to comment
Share on other sites

But in those examples the heading changes not reflected in the ADF bearing were only a few thousandths of a degree (9 and 13 thou for the two sequences), surely not enough to register on any normal ADF gauge? Isn't thiss simply the result of an "epsilon" setting deciding whether the change is sufficient? I can delve into the code, but

This was just an example to explain the problem. I agree with you that such a small change is not visible on most gauges, neither on mine. But if I either do a really steep turn with noticeable heading changes, or I fly straight in the vicinity of the NDB (causing a fast changing relative bearing), the problem is the same: the heading changes (remarkably) in about 5 read cycles, while the ADF bearing does not, and then jumps about 3-5°. Maybe this difference (epsilon you said?) could be the problem. Is there a way to influence this?

...unless maybe you have a very much enlargened ADF needle display?

I do have an enlarged ADF needle display! I am building a 737 glass cockpit, and with an about 6x6 inches sized Navigation Display the jumping is noticeable, even disturbing.

I see that you do not want to change the update rate of those variables. I might then have to do an interpolation for the relative ADF bearing. Or compute the relative bearing from the aircraft position and NDB position. Can I get the active NDB's latitude and longitude through FSUIPC? I just found the VOR position. Or do I have to use additional NAVDATA for this?

Thank you very much for your support!

Greetings from AZ

Flo

Link to comment
Share on other sites

I see that you do not want to change the update rate of those variables.

Well, I can change it for FS2004 only and check to see if I can measure any performance impact. Or I can release it as an interim update and if no one complains it must be okay! ;-0

Leave it with me for now. I'm in the middle of a couple of other things. I'll get you an interim update done within the next couple of days or so

If it isn't desirable I'll look at alternatives for you.

Regards

Pete

Link to comment
Share on other sites

Thank you very much Pete, that solved my problem!

I cannot see any performance issues. It would be great if you could leave it like this in the next releases of FSUIPC (of course given that nobody else complains).

Greetings from Goodyear, AZ

Flo

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use. Guidelines Privacy Policy We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.