Jump to content
The simFlight Network Forums

Hardware Panels


Recommended Posts

Hi there,

It has long been my ambition to purchase/create a hardware panel with all those frequently accessed functions on it (lights, engine controls, landing gear and autopilot). Now that I am finally of the age to work, and now earning enough money to pursue this long neglected ambition, I have decided to go for the former option, both for cost effectiveness and a bit of fun (and the challenge).

However, being the type of person to thoroughly plan things before actually doing them I have been stuck pondering ways of controlling the MCP functions. All of the other things I've mentioned (lights, engine controls and landing gear) are just buttons that I can attach to a specific function either with FSUIPC or FSX's controller settings. However, the MCP's functions, as I see it, are a bit different.

I've thought of at least 2 possible ways to do it:

The first idea is that the physics control knobs only control the value in the physical window (heading, altitude, v/s, airspeed), and then this value would somehow be sent to flight simulator (or FSUIPC) and set the appropriate MCP value.

The second idea is to have the knobs as axes which directly control the values in flight simulator, and then set the digital window on my hardware panel according to a variable sent from flight sim (or FSUIPC).

Now, clearly, the first one appears to be the simplest, data is only sent to flight simulator from the controller whereas the second one requires data to be both sent and received to and from the controller. But I have to ask, are any of these ways even achievable with the information FSUIPC outputs or does FSUIPC even the ability to carry out such operations? Am I going about this entirely the wrong way?

I have read through the manual a few times briefly to see what my options are but I'm still rather unsure. If anyone has any experience in this type of thing or could even offer me a deeper insight into how FSUIPC can most appropriately handle such inputs I'd be more than grateful!

I know I'm jumping in at the deep end here but I'd really like to do this. I don't have a problem with the I/O interface, I've got that planned, it's just this bit which has stumped me, and I thought someone here could perhaps help, otherwise I might end up wasting money on components and wasting time doing things that were never going to work anyway :P

Thanks very much for taking the time to read this rather long post,

Andrew.

Link to comment
Share on other sites

Hi Puffmac,

Most instruments come with a driver to control and interface it with FS2004 or FSX.

If you want to do your own instruments or display your own data and don't want to go the C/C++ way, you can use the Lua engine built in FSUIPC. If you look at the 'Modules' folder of your FS installation you'll see the FSUIPC Documentation folder where you'll find information about what can be done using LUA. There is also a LUA API to control GoFlight instruments.

Also, I recently released a module to control Saitek FIP or X52 Pro panels from FSUIPC using LUA. You'll find it in the User Contrubutions section of this forum.

Hope this help

Chris

Link to comment
Share on other sites

The first idea is that the physics control knobs only control the value in the physical window (heading, altitude, v/s, airspeed), and then this value would somehow be sent to flight simulator (or FSUIPC) and set the appropriate MCP value.

The second idea is to have the knobs as axes which directly control the values in flight simulator, and then set the digital window on my hardware panel according to a variable sent from flight sim (or FSUIPC).

The best way is a combination of both. You want your local hardware display updating as rapidly as you turn the knob, otherwise, due to latency of FS accepting the change, you will almost always overrun your intended values, but you also want the displays to respond to changes made other ways, in Fs: i.e. either by loading new flights or simply by the A/P or FMS controlling the values.

I've always done it by mainitaining a local value (i.e. one local to the program controlling the hardware), and updating that as quickly as you are turning the knob, and sending the changes to FS at short intervals (eg 100-200 mSecs), but ignore FS read values until there's a significant hesitation in the changes from the hardware. Otherwise keep the display up to date from FS values. This avoids the lag but allows the display to show what FS is actually using when you aren't actually changing it.

Now, clearly, the first one appears to be the simplest, data is only sent to flight simulator from the controller whereas the second one requires data to be both sent and received to and from the controller. But I have to ask, are any of these ways even achievable with the information FSUIPC outputs or does FSUIPC even the ability to carry out such operations? Am I going about this entirely the wrong way?

you can read and write any of the values you are likely to want to handle.

I have read through the manual a few times briefly to see what my options are but I'm still rather unsure. If anyone has any experience in this type of thing or could even offer me a deeper insight into how FSUIPC can most appropriately handle such inputs I'd be more than grateful!

You need the FSUIPC SDK, which contains the list of data (offsets) you can read and write, and some interface modules and examples in different languages. You could also try using a plug-in, written in the Lua language, which would also certainly allow this sort of thing.

Regards

Pete

Link to comment
Share on other sites

  • 4 weeks later...

Hi Puffmac,

Most instruments come with a driver to control and interface it with FS2004 or FSX.

If you want to do your own instruments or display your own data and don't want to go the C/C++ way, you can use the Lua engine built in FSUIPC. If you look at the 'Modules' folder of your FS installation you'll see the FSUIPC Documentation folder where you'll find information about what can be done using LUA. There is also a LUA API to control GoFlight instruments.

Also, I recently released a module to control Saitek FIP or X52 Pro panels from FSUIPC using LUA. You'll find it in the User Contrubutions section of this forum.

Hope this help

Chris

Chris

I am just starting out in this whole flight sim enterprise (I did use the Sub-Logic program some years ago) and have purchased quite a few GoFlight modules including throttle quadrant, landing gear, auto pilot, radio stack with COM1 & 2. Nav 1 & 2. XPDR, DME, various switch and push button modules and their new annunciator panel. Not being a programmer of any sort would it be useful to use the LUA API to interface with all of my modules? I've read for instance that FSUIPC will allow me to use all of the flap position detents on the TQ6 whereas FS doesn't.

Any tips or help would be appreciated.

Thanks

Alan

Link to comment
Share on other sites

... purchased quite a few GoFlight modules including throttle quadrant, landing gear, auto pilot, radio stack with COM1 & 2. Nav 1 & 2. XPDR, DME, various switch and push button modules and their new annunciator panel. Not being a programmer of any sort would it be useful to use the LUA API to interface with all of my modules?

No, not really. For most aircraft Goflight seem to provide quite adequate drivers in any case. And provided you install the GoFlight software (or at least download and install the GFDev.DLL, from GF, or here in the Download Links subforum), FSUIPC can see all the switches and buttons in any case, so you can program the few exceptions in FSUIPC normally -- no programming. Lua only comes into it if you want to display things differently on the GF devices. And FSUIPC assignments only start to get complicated for things like advanced autopilots on some add-on aircraft.

I've read for instance that FSUIPC will allow me to use all of the flap position detents on the TQ6 whereas FS doesn't.

I don't think the TQ6 has detentes in any case? But, also, the TQ6 is just another throttle quadrant with so many axes, visible as axes for programming in FS or FSUIPC without any other drivers, and certainly no Lua involvement. Yes, FSUIPC can calibrate detentes if you want to mark them somehow on the lever, but otherwise a flaps axis is just another axis. And having marked or real detentes limits you to aircraft with that number of positions.

Regards

Pete

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.