PDA

View Full Version : Interfacing fsx vs x plane with homemade hardware



julio_w
07-24-2012, 10:08 PM
Hello,

I am building a 737 cockpit, I started my project by thinking at the hardware first (thinking that software interface would be easier). The first thing that I started to build is the overhead panel, I created my own USB I/O cards to control switches and created a driver to send the proper keystrokes to the PC.

Then I realize that not all functionality from a real 737 overhead panel can be simulated, some pretty obvious like cockipt temperature control but others because there is no keystrokes defined in the simulator to actually simulate, like wipers, so my firsts questions are: what simulation software can provide me with the most quantity of functionality to be simulated, xplane 10 of fsx? Are there any open source software to increase the functionalities that can be simulated?

Then I continue investigating on the internet and I read about fsuipc, at the beggining i thought that this is what i was looking as they mentioned that they could interface fsx even with functionalities where there are no assigned keystrokes, but then I realize that I will have to use their own I/O cards.

At the same time I would like to read the plane meters so I can display them into my real meters of the overhead panel. Is this something possible to do?

I hope anyone here could bring me some light in my project....

julio_w
07-24-2012, 10:40 PM
An Update...

I just found the following

This guy explain how to increase the number of functionalities that can be assigned to a keystroke (or combination), that answer part of my question, I guess so far I will be going with fsx unless I found something similar for xplane, I will update if i found something around...

http://www.jimspage.co.nz/fsxinputs.htm

As well in the link below you can find every single event that can be simulated on fsx, I have not check them all to see what is left but it is a big list.

Sammy-E
07-25-2012, 03:35 PM
Hey Julio,

Well done on making your own I/O cards.. Thats way over my head :) But, I recently started my own cockpit project and have been researching a lot on the same subject you are facing. I'm only in the prototyping stage as of yet, so then I can decide better what to do.
FSX or XPlane are both good options.

If you go the XPlane route there is a good arduino like card which links very good to XPlane. Search for Teensy, both here and on the XPlane forum. Teernsy is actually a very cheap card ($20,-) I tried it and it is pretty simple. I am still trying to figure out if the Teensy is also suitable for FSX.

If you you go the FSX way, then FSUIPC is probably a must. Through FSUIPC you can read and write many (if not most) variables from and to FSX. These variables need to be accesed through software to your own chooice of I/O cards. (btw. FSUIPC is not related to any brand of I/O card, its only software.)
I have connected a pokeys USB I/O card with FSX succesfully with the use of FSUIPC. I wrote my own code in Delphi to access the output variables to be sent to the pokeys card. The inputs go directly into FSX through FSUIPC keymapping.

There are may I/O boards available, each withpro and cons, but you have made them yourself, so I guess its up to you to decide how to connect the card to FSX or XPlane.

Greetings,
Eric "Sammy-E"

xplanematt
07-25-2012, 07:44 PM
If you're not yet committed to FSX, X-Plane is a far better option for us sim builders. It features a very mature and well-documented SDK that allows all sorts of access to the internals of the sim. Plus, it is a native part of the sim, supported and maintained by the X-Plane author and his associates within the X-Plane inner circle. :) I can also assure you that if you are up to prototyping your own IO cards and writing the firmware for them, you will glide through the X-Plane SDK.

Btw, you definitely don't want to be firing keystrokes for stuff. Aside from the issue you've already noticed, keystrokes require that you "sync" switch and control positions with the sim software at startup/reset since keystrokes are event-based as opposed to state-based. I'm using joystick controller cards and the Arduino boards, both of which are state-based.....if I kill the sim and reboot it, all switch/control settings in the sim program will still immediately set themselves to match the positions of the real controls at startup.

Matt

julio_w
07-25-2012, 08:58 PM
If you're not yet committed to FSX, X-Plane is a far better option for us sim builders. It features a very mature and well-documented SDK that allows all sorts of access to the internals of the sim. Plus, it is a native part of the sim, supported and maintained by the X-Plane author and his associates within the X-Plane inner circle. :) I can also assure you that if you are up to prototyping your own IO cards and writing the firmware for them, you will glide through the X-Plane SDK.

Btw, you definitely don't want to be firing keystrokes for stuff. Aside from the issue you've already noticed, keystrokes require that you "sync" switch and control positions with the sim software at startup/reset since keystrokes are event-based as opposed to state-based. I'm using joystick controller cards and the Arduino boards, both of which are state-based.....if I kill the sim and reboot it, all switch/control settings in the sim program will still immediately set themselves to match the positions of the real controls at startup.

Matt

Hi Matt,

Thanks for your reply... I am not committed so far to any software, My desition on the software would be on which one will allow me to simulate most of the functions present on real 737 panels, my first investigation was based on fsx only because is the one that i found info first on how to get to the insides of the simulator (fsx deluxe have an SDK called Simconect) but I am finding too many limitation with it, I will now focus my investigation with X-Plane SDK.

You are right about not using keystrokes to control the simulator software, I realized that later when I found that there were SDKs available.

My issue now with fsx is that out of the many switches and annunciators that a 737 overhead panel have I only can control around 30 of them leaving the rest of annunciators and switches without any use (I guess I will put them anyway just to make it looks like the real thing.

If anyone need the mapping that I have done so far between the 737 overhead panel and the events on fsx let me know and i will post them.

julio_w
07-25-2012, 09:10 PM
Hey Julio,

Well done on making your own I/O cards.. Thats way over my head :) But, I recently started my own cockpit project and have been researching a lot on the same subject you are facing. I'm only in the prototyping stage as of yet, so then I can decide better what to do.
FSX or XPlane are both good options.

If you go the XPlane route there is a good arduino like card which links very good to XPlane. Search for Teensy, both here and on the XPlane forum. Teernsy is actually a very cheap card ($20,-) I tried it and it is pretty simple. I am still trying to figure out if the Teensy is also suitable for FSX.

If you you go the FSX way, then FSUIPC is probably a must. Through FSUIPC you can read and write many (if not most) variables from and to FSX. These variables need to be accesed through software to your own chooice of I/O cards. (btw. FSUIPC is not related to any brand of I/O card, its only software.)
I have connected a pokeys USB I/O card with FSX succesfully with the use of FSUIPC. I wrote my own code in Delphi to access the output variables to be sent to the pokeys card. The inputs go directly into FSX through FSUIPC keymapping.

There are may I/O boards available, each withpro and cons, but you have made them yourself, so I guess its up to you to decide how to connect the card to FSX or XPlane.

Greetings,
Eric "Sammy-E"

Hi Eric,

Thanks for the clarification about FSUIPC, I was thinking that it was tied to a certain IO card, I will compare fsuipc and simconnect to see what would be the best option if i go with fsx, but i definatelly would like to use my own IO cards unless I got somehow stuck with them. One of the reasons is that I would like to control the whole panel with only a usb connector, wich I guess if i end up using multiple third party IO cards i would have to connect all of them to a separate usb ports?

amiro
08-21-2012, 07:49 AM
Hi Julio_W,

If you're going FSX as it was said a registered FSUIPC is a must in your case. As it was mentioned FSX was design for using keystrokes to control the simulator software, you can see that in using SimConnect but thanks to the great powerful program like FSUIPC now you can use state-based with some boards. Just remember that you need Input/Output boards in order to use the State-Base way, a few example are mention above to also control your Annunciator lights and you also needs stepper control boards for the OVH gauges as they have servos in them. opencockpits dot com as a nice selection of 737 OVH gauges and not to bad a price.

As for what software you use I must say that X-Plane is making great ways and new AC are getting better and better, as for FSX they're several high end AC with pretty well full functioning switches IE: PMDG, IFly, Project Magenta ect. you pay a bit more for them but gives you more real feel to it as far as switches goes. IFly as a Cockpit Builder Edition ( $525us ) design for complete solution iFly 737NG Pro Home Cockpit Builders Edition (COMPLETE) (http://www.simstop.com/store/product_info.php?products_id=169).

They are so many places now in the last few years for hardware supply's and resources that in comes down to how real you wants to push it and how much time and money you want to spend, for a full working OVH panel you will have probably over one KM of wires by the time you finish!!! but it will be full functioning.

In mine I use USB hubs to connect several boards so by the time it goes to my PC I only have a small amount of them. Remember that a USB hub start reading from last to first like a 10 USB hub it starts at 10 to position 1 to read what is connected to it, so plugs in in accordance to what you have plug to it.

Best of luck to you and hopes it can help you!!!