Jump to content
The simFlight Network Forums

FSUIPC for Linux


Recommended Posts

Is there any chance that you will release an FSUIPC + WideFS module combination for Linux? This would enable a Project Magenta-style discrete instrument on a wireless PDA or tablet that runs Linux.

No to FSUIPC, it is an FS module. I don't think Microsoft provide a Linux version of FS do they?

If you mean WideClient, then I suppose it would be possible, but it isn't going to be me doing it I'm afraid. Several years ago someone did start on something like that and I provided some details, but I never heard anything after. I'm afraid there's no written specifications of the protocol WideFS uses, but it can be deciphered using TCP/IP tools, and that's what they did. I just answered questions now and then.

Regards,

Pete

Link to comment
Share on other sites

Is there any chance that you will release an FSUIPC + WideFS module combination for Linux? This would enable a Project Magenta-style discrete instrument on a wireless PDA or tablet that runs Linux.

AFAIK, FreeFD compiles and runs on Linux too..? I think it uses WideFS though, but that might be worth checking out.

Tuomas

Link to comment
Share on other sites

I don't understand your architecture well enough, but I had thought WideClient talked your own protocol to WideServer running on the FS2004 computer? If you invented the protocol, I assume you could implement WideClient on any computer that supports a programmatic interface to TCP/IP?

Having a Linux interface to WideClient would enable people to start selling shrink-wrap avionics to interface to FS2004, without paying Microsoft their OS fee.

Link to comment
Share on other sites

I had thought WideClient talked your own protocol to WideServer running on the FS2004 computer?

Yes.

If you invented the protocol, I assume you could implement WideClient on any computer that supports a programmatic interface to TCP/IP?

It could be done, as I said. I don't want to do it. I'm really not able to look for more things to do, I have enough to last years as it is. i would dearly love to find time to actually fly FS now and then too. :(

Having a Linux interface to WideClient would enable people to start selling shrink-wrap avionics to interface to FS2004, without paying Microsoft their OS fee.

If it is so desirable I'm sure someone will want to do it, just not I. Sorry.

Of course, they don't need to use WideFS in any case. The interface to FSUIPC is published. I'm sure anyone could program an external program, or even another DLL, with a protocol of their own choosing. I know, for instance, that the 777 cockpit designed and nearly finished (?)some time back by Chris Brett has its own TCP/IP links between its components.

Regards,

Pete

Link to comment
Share on other sites

Hmm, this thread got me thinking about the Java SDK.

Java has a brilliant remote method API. Basically there is little difference calling a local or remote function.

I will investigate this (when I have time) and maybe add it to the Java SDK.

Cheers

Mark

Link to comment
Share on other sites

  • 5 years later...

Hi Pete, I second the WideFS request for linux because i have some great EFIS, G1000 displays running on the almighty BeagleBoard http://www.beagleboard.org but no communication app to get data from FSUIPC :( You say that the interface to FSUIPC is published, can you tell me more about this? I think i know what you mean but not 100% sure. i have worked on remote socket apps for data transfer before but need as much info as possible.

When this linux data handler is ready i will share with all free of charge

Chris

Link to comment
Share on other sites

Hi Pete, I second the WideFS request for linux because i have some great EFIS, G1000 displays running on the almighty BeagleBoard http://www.beagleboard.org but no communication app to get data from FSUIPC :( You say that the interface to FSUIPC is published, can you tell me more about this?

Download the FSUIPC SDK from http://www.schiratti.com/dowson . All of the applications which interface to FSUIPC use the information in that SDK. In order to run a Linux application for FSUIPC/WideFS you'd need to write it using the information in the SDK. You are starting off from scratch -- no FSUIPC utilities run on Linux, and there's no WideClient for Unix. What would be the point of the latter until there are the former? There's no point!

And, quite honestly, it would be quicker and easier for someone to write both ends (server and client) of a link to Linux in any case. There's no way I'm going to unravel a >10 year old program like WideClient in order to re-ravel it for an operating system I have no idea about.

Regards

Pete

Link to comment
Share on other sites

creating a 'middle' host program is the obvious solution as you say, but i get the feeling an easier solution is available. I dont want to pry too much into the workings of WideFS which is a commercial app but would you divulge neccessary info regarding sockets and libraries used for the WideFS connection? Assuming it is written in C++, the library that is used in WideFS is likey to be available in the linux compiler also.

There will be many happy bunnies if a WideFS for linux is developed so i would be happy to hand it over to your control in exchange for the required knowledge to develop it

EDIT: sorry Pete, I have just realised WideFS is a 2 part program. I was under the impression earlier that WideFS connect directly to FSUIPC where FSUIPC is the host. I was wrong so you are 100% correct that another client/server may as well be built from scratch for linux. There is only a handfull of offsets that need to be thrown over the the linux client so it need not be a complex issue. In fact i already made a version of WideFS for windows in an earlier project so i just need to port the client to Linux.

Chris

Link to comment
Share on other sites

I dont want to pry too much into the workings of WideFS which is a commercial app but would you divulge neccessary info ...

It's only been commercial a small part of its lifetime, and I'm not fussy -- if you wish to hack into its protocols and try to build a Linux client, feel free. It is just that I cannot provide you a specification of the protocols and so on it uses -- it has grown and changed over the years and to provide a specification would mean a lot of work poring through the code to work it out. It's a bit, er, organic, if you see what I mean.

regarding sockets and libraries used for the WideFS connection? Assuming it is written in C++, the library that is used in WideFS is likey to be available in the linux compiler also.

The sockets used are definable in the INI. Default 8002 listening at the Server, 9002 broadcasting server details (though that part isn't essential).

It is written in C rather than C++ (never got into the OOP lark, I'm a bottom-up procedural programmer by a 45 year habit started off by engineering test programming). The networking library it uses is WinSock (WinSock32 to be exact).

There will be many happy bunnies if a WideFS for linux is developed so i would be happy to hand it over to your control in exchange for the required knowledge to develop it

Can you tell me, then, what FSUIPC applications you have ready on Linux? I don't understand the point of a Linux WideClient if there are no applications?

Regards

Pete

Link to comment
Share on other sites

sorry Pete, I have just realised WideFS is a 2 part program. I was under the impression earlier that WideFS connect directly to FSUIPC where FSUIPC is the host. I was wrong so you are 100% correct that another client/server may as well be built from scratch for linux. There is only a handfull of offsets that need to be thrown over the the linux client so it need not be a complex issue. In fact i already made a version of WideFS for windows in an earlier project so i just need to port the client to Linux.

Can you tell me, then, what FSUIPC applications you have ready on Linux? I don't understand the point of a Linux WideClient if there are no applications?

i really dont like Linux, my Linux loving friend helps me out with the bash complexities so i dont get my hands dirty. The display app i have is primarily written for windows but being compiled for the beagle-board as we speak. It is basically the EFIS, PFD panels for Learjet 45 that can easily be run on windows via a seperate display or run on a network pc via widefs (not uncommon from any other FSUIPC app). The reason for the linux requirement is so the display can run on the beagle-board which is very small and power efficient compared to a normal pc. It can run 3D apps like a desktop whilst only pulling 2 watts of power! Ofcourse the downside is that it only runs small Linux distributions on ARM processor. It basically mimics a typical 'embedded' style system where the user turns on the unit and the display appears instantly. The benefit is mainly for cockpit builders that want a break from having 20+ networked pc's hidden behind the deck. I foresee many apps using this technology very soon for FS

Chris

Link to comment
Share on other sites

sorry Pete, I have just realised WideFS is a 2 part program. I was under the impression earlier that WideFS connect directly to FSUIPC where FSUIPC is the host.

Well, the WideServer part is a separate module on FS9, but built into FSUIPC4 for FSX. I don't really think that makes much difference though, whether there are separate parts inside FS or only one.

Anyway, I think it is easier, as you've concluded, to do your own relaying of data to Linux clients -- especially if, as it sounds, it is only for instrumentation (outgoing data), not so much for controls..

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.