Jump to content
The simFlight Network Forums

Recommended Posts

Hello Peter,

I'm using MobiFlight, a freeware software which lets Arduino boards communicate with P3D via FSUIPC or Simconnect. I'm using it with PMDG airplanes along with their custom offset & event list without any problem.

Yet i need to find the default planes' output offsets like B58, B350 etc, but in the huge Offset list you provide with FSUIPC, i can't find any annunciator offsets like "LOW RPM", "OVERSPEED", "LOW PRESS" etc, you name it. Isn't there any kind of offsets for them as well ?

Another question is, i need some basic info about the abbrevations used in FSUIPC  like FLOAT,U32,U16 etc. There's a project which you probably know about called XPUIPC, and there are a lots of arrays, floats, int's in it's tutorial, and i don't know how they work and what are the differences :) Is there any source in which i can find some even brief explanation about all of these ?

Thanks in advance

Share this post


Link to post
Share on other sites
1 hour ago, baranismen said:

Yet i need to find the default planes' output offsets like B58, B350 etc, but in the huge Offset list you provide with FSUIPC, i can't find any annunciator offsets like "LOW RPM", "OVERSPEED", "LOW PRESS" etc, you name it. Isn't there any kind of offsets for them as well ?

Try using search facilities in your viewer!  Stall and Oversped warnings are certainly there (036C and 063D). 

Others are locally derived in the gauge module from values you can read, like RPM and manifold pressure. Whether you would get warnings or not depends on the aircraft model, so it is part of its instrumentation. But you can read the values yourself and compare them with limits.

1 hour ago, baranismen said:

Another question is, i need some basic info about the abbrevations used in FSUIPC  like FLOAT,U32,U16 etc. There's a project which you probably know about called XPUIPC, and there are a lots of arrays, floats, int's in it's tutorial, and i don't know how they work and what are the differences :) Is there any source in which i can find some even brief explanation about all of these ?

There's a FAQ about Bits, Numbers and Hexadecimal in the FAQ subforum, but mostly the abbreviations are standard programming terms. Float is a 32-bit floating point value whilst a 64-bit one is a double. But different names areused in different languages. I don't know anything but ASM and C/C++.

For nomenclature like U32, etc, U just means unsigned, S signed and the appended number 8, 16, 32 is the number of bits. A fairly basic nomenclature and surely easy to understand?  And more definitive. For example, in Windows whether an "int" is 16-, 32- or 64-bits depends on the system it's running in. Usually terms like INT32, INT64, WORD (16-bits), DWORD (double word 32-bits) and QWORD (quadword or 64 bits) are used for precision is descriptions.

Array is a programming term which you must surely know about if you've learned any programming, in any language? If you aren't programming why do you need this information?

Pete

 

Share this post


Link to post
Share on other sites
2 hours ago, Pete Dowson said:

Try using search facilities in your viewer!  Stall and Oversped warnings are certainly there (036C and 063D). 

Others are locally derived in the gauge module from values you can read, like RPM and manifold pressure. Whether you would get warnings or not depends on the aircraft model, so it is part of its instrumentation. But you can read the values yourself and compare them with limits.

There's a FAQ about Bits, Numbers and Hexadecimal in the FAQ subforum, but mostly the abbreviations are standard programming terms. Float is a 32-bit floating point value whilst a 64-bit one is a double. But different names areused in different languages. I don't know anything but ASM and C/C++.

For nomenclature like U32, etc, U just means unsigned, S signed and the appended number 8, 16, 32 is the number of bits. A fairly basic nomenclature and surely easy to understand?  And more definitive. For example, in Windows whether an "int" is 16-, 32- or 64-bits depends on the system it's running in. Usually terms like INT32, INT64, WORD (16-bits), DWORD (double word 32-bits) and QWORD (quadword or 64 bits) are used for precision is descriptions.

Array is a programming term which you must surely know about if you've learned any programming, in any language? If you aren't programming why do you need this information?

Pete

 

Hey Pete,

Thanks for your answer.

I need this info because as i said, i'm trying to program XPUIPC to work with MobiFlight, and as you know XPUIPC is a clone of FSUIPC, which uses the same principles with it. However, there's a load of info about these abbrevations in the XPUIPC.ini file, which is supposed to help people to create their own config files, but it's barely comprehensible for me, as i've got no clue about programming. That's why i've asked this. Maybe there are some solid rules like "switches are always int" or "annunciators are UINT32" etc. I only know about the Boolean, which is a simple on/off trigger :)

And for the annunciators, i've used search but couldn't find anything useful, that's why i've created this topic, excuse me if i'm mistaken.

Yet again, i understand that it's kind of a complicated thing to make work these ,say the default 737's overhead annunciators lime PMDG, right ?

Share this post


Link to post
Share on other sites
21 minutes ago, baranismen said:

That's why i've asked this. Maybe there are some solid rules like "switches are always int" or "annunciators are UINT32" etc. I only know about the Boolean, which is a simple on/off trigger :)

You should be able to tell from the size and description. 1 byte is 8 bits, so can either be unsigned, 0-255, or signed -128 to +127. The size and description are definitive.

"Booleans" are simply numbers too, non-zero for true, zero for false. There is a convention tha says true is 1, but in fact any non-zero number would do. And the size is still relevant. PMDG for example often use 1 byte for "booleans", but C/C++ usually uses an int (32 bits or 4 bytes).

Whether you are using FSUIPC or XPUIPC, if you are programming to an interface which uses the offsets, surely you have some sort of reference to the language you are using to program them!?

25 minutes ago, baranismen said:

Yet again, i understand that it's kind of a complicated thing to make work these ,say the default 737's overhead annunciators lime PMDG, right ?

In FSX and P3D all of the PMDG values are in separate offsets, documented in separate documents. They have to be enabled in their configuration files, as described in their SDK. I've no idea about PMDG on X-Plane.

Pete

 

Share this post


Link to post
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

×

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.