Jump to content
The simFlight Network Forums

Recommended Posts

Posted

Having read about the ability to link FSX with an external GPS I installed FSUIPC to use the Garmin as an external GPS fed via position data from FSX. It accepts NMEA in which seemed from the reading to be what was needed.

Now I see that there is significant mention of Serial ports in the forums/literature and of course, being a recently released GPS it only has a USB. It connects hapily to the PC for it's updates etc but how can I get FSUIPC to download the FSX co-ordinates via the USB port?

Thanks for your help.

Regards,

Colin

Posted
Having read about the ability to link FSX with an external GPS I installed FSUIPC to use the Garmin as an external GPS fed via position data from FSX. It accepts NMEA in which seemed from the reading to be what was needed.

Are you sure it accepts positional data in NMEA form, replacing its own antenna input? Most Garmins I know of don't, except the Aviation ones, and they need "Aviation 400" format (also supported by the GPSout facility).

Now I see that there is significant mention of Serial ports in the forums/literature and of course, being a recently released GPS it only has a USB. It connects hapily to the PC for it's updates etc but how can I get FSUIPC to download the FSX co-ordinates via the USB port?

USB ports look like serial ports but have strange names, not COMn. Please refer to the GPSout notes in the documentation. In order for any program other than your Garmin Synch program to actually get to that port, however, you will probably have to terminate it, otherwise it will grab the port exclusively.

Pete

  • 4 weeks later...
Posted

Thanks Pete - i'm going to try using the data in capability but looks like I will have to use their propritetary cable connector (goes with the power-in), then use a usb to serial to standad rs232 converter. Can't believe in 2009 we are needing to use RS232's. I was using them at college 20 years ago. Unfortunately the cable is on back order so i'll only be able to try it in a few weeks time.

Colin

  • 3 weeks later...
  • 1 month later...
Posted

Hi Pete,

just to let You know! Today I connected my Garmin GPSMAP 695 via Your fine tool to FSX.

Its working with the setup for the Garmin 496.

I use a USB to Serial converter and routed pin 3 (Transmit Data) of the 9 pin serial connector to the Data In (Yellow) pin

of the Power/Data Connector on the GPSMAP 695/696 Unit and pin 5 of the 9 pin serial connector to the Ground (Black) pin

of the Power/Data Connector on the GPSMAP 695/696.

By the way the GPSMAP 695 is a wonderfull device - I can only recommend it!

Best Regards and thanks for Your exellent software!!!

BerndS

Posted

just to let You know! Today I connected my Garmin GPSMAP 695 via Your fine tool to FSX.

... By the way the GPSMAP 695 is a wonderfull device - I can only recommend it!

Good! Thanks for letting us know.

Regards

Pete

  • 11 months later...
Posted

Hi there !

I try to connect my garmin 695 to fs9 but with no luck the steps that i have do is

1) copy the gpsout dll and ini to my modules directory

2) change Sentences=AV400

3)Interval=1000

4)Port=COM5 My port is com5 because of the pci card that i use for comms

5)Speed=9600

6)PosTo6Decimal=Yes

Then in the menu of 695 i choose interface setup = Aviation in

The cable is connect right with yellow cable to pin 3 and black to pin 5

but the Garmin says Disconnected

What will be wrong ?

Thank you in advance

  • 2 weeks later...
Posted

Hi Pete Finaly i got it to work !

All the setups where correct but the missed thing was that from the first page of 695 i had to go to INFO tab (with the rotation knob) and then press the MENU button and select START SIMULATOR

after that the 695 goes to simulation mode and everything works wright !

Thanks anyway for your answer

  • 2 years later...
Posted

Hi Pete

I have been searching everywhere for a solution to linking FSX with my Garmin 695 so that my FSX flight is simulated on my GPS.

I have FSX flight simulated on OZrunways which is terrifc and now want to get the same on my GPS.

BerndS's solution is the only one I have come across but I am not that technical and would not know how to get suchy a setiup working.

Would appreciate any help you or other members might be able to offer.

Thanks

Geoff

(registered user of FSUIPC)

  • 1 year later...
Posted

Anyone that has gotten this method to work have pictures? I ordered the cables for my 696 hoping to connect it to X-Plane using this method but had a few questions. Does the USB to Serial cable need to be a female or male Serial connector? 

  • 2 months later...
Posted

Good afternoon.

 

I found this post looking for some one that can connect the Garmin 695 to FSX, but have some questions.

 

I know that the software that use is the FSUIPC, but when I download it, there the files:

- FSUIPC 4.934 Changes

- FSUIPC4_Loader.dll

- Install FSUIPC4

- Installing and Registering FSUIPC4

 

And someone say that must copy the file "gpsout dll", but...  where is the file and some instructios.

Thanks a lot.

 

Bye,

Juan Pablo

  • 3 weeks later...
Posted

Good afternoon.

 

I found this post looking for some one that can connect the Garmin 695 to FSX, but have some questions.

 

I know that the software that use is the FSUIPC, but when I download it, there the files:

- FSUIPC 4.934 Changes

- FSUIPC4_Loader.dll

- Install FSUIPC4

- Installing and Registering FSUIPC4

 

And someone say that must copy the file "gpsout dll", but...  where is the file and some instructios.

Thanks a lot.

 

Bye,

Juan Pablo

 

FSUIPC4 is for FSX and P3D and includes GSPout. The GPSout.dll is only for FS9 and before, used with FSUIPC3. You'd need to purchase an FSUIPC registration.

 

Pete

  • 1 year later...
Posted

Pete, is there a way to connect Garmin trainer to FS9?

 

Sorry, I've no idea. If the device can be linked via serial cable (or a USB cable pretending to be a normal serial cable), and the device can be set to read standard NMEA sentences and take those instead of any internal GPS readings, then yes. But you need to refer to the Garmin documentation.

 

All GPSout does is send out the data on a COM port using the speed you specify and with the specific sentences you specify. The rest is entirely up to the device at the other end.

 

Pete

Posted

Ok, but if it's a software trainer like Garmin G1000 or GNS400W-500W, like for example this program FSGarmin here http://files.fsnordic.net/Flight_Simulator/Miscellaneous/Add-on_programs/. Would you please write some kind of plugin, Pete.

 

Sorry, there's no way I'm going to be writing special programs for all the assorted hardware and software applications out there. This is why I provide the documentation and Lua references for user's to help themselves, and the SDK to enable programmed applications.

 

In any case the Garmin software might already include facilities to read from Garmin GPS devices. If so you may be able to use a program which emulates two linked "virtual" serial ports, as documented in the read-me for GPSout, and mentioned in the Download Links subforum above. That's how I used to link FS to Jeppesen's FliteMap (before cheaper and easier alternatives such as Aivlasoft's EFB came along).

 

BTW that website you link to contains very much out of date and unsupported versions of much of my software and should certainly not the the prime reference. I expect much of the other stuff there is way out of date too.

 

Pete

  • 4 months later...
Posted

Pete, I have a question on FSUIPC Offset Word Set, for example to program helicopter autopilot keys to cyclic axis up/down CTRL+SHIFT+UP....+DOWN...+LEFT....+RIGHT. What Offset Parameter to use x0001 - x0004? Thanks.

Posted

Hi,

if you just want to write values that your program reads like in a switch(){ case: ... break;} decision, you would write the values in a logical way for the keys, clockwise or anti-clockwise.

Clockwise: up=1, right=2, down=3, left=4

Anti-clockwise: up=1, left=2, down=3, right=4

Thomas

Posted

Ok, there is something missing in this XML, because prop axis is not responding, possible to fix?

//---------------------------eng----------------------------------------------
- <Element>
- <Select>
  <Value>(L:button eng start,bool) (L:apu bleed air on,bool) && (L:fuel press1,bool) && (L:switch eng start select,enum) 1 == && (L:switch eng start mode,enum) 1 == && if{ 1 (>L:engine1 start,bool) } (L:button eng start cut,bool) (L:apu bleed air on,bool) ! || (L:fuel press1,bool) ! || if{ 0 (>L:engine1 start,bool) } || (L:button eng start,bool) (L:apu bleed air on,bool) && (L:fuel press2,bool) && (L:switch eng start select,enum) -1 == && (L:switch eng start mode,enum) 1 == && if{ 1 (>L:engine2 start,bool) } (L:button eng start cut,bool) (L:apu bleed air on,bool) ! || (L:fuel press2,bool) ! || if{ 0 (>L:engine2 start,bool) } || (L:engine1 off,bool) if{ 1 (>L:eng2 oei mode,bool) } els{ 0 (>L:eng2 oei mode,bool) } || (L:engine2 off,bool) if{ 1 (>L:eng1 oei mode,bool) } els{ 0 (>L:eng1 oei mode,bool) } ||</Value>
  </Select>
  </Element>
- <Element>
- <Select>
  <Value>(A:TURB ENG N1:1,percent) 50 < if{ 1 (>L:engine1 off,bool) } els{ 0 (>L:engine1 off,bool) } (A:TURB ENG N1:2,percent) 50 < if{ 1 (>L:engine2 off,bool) } els{ 0 (>L:engine2 off,bool) } ||</Value>
  </Select>
  </Element>
- <Element>
- <Select>
- <Value>
- <!--  manu
  -->
  (L:engine1 off,bool) ! if{ (L:engine1 n2 base,percent) (L:fuel flow control lewer 1,percent) < if{ (L:engine1 n2 base,percent) ++ d (L:fuel flow control lewer 1,percent) > if{ (L:engine1 n2 base,percent) } (>L:engine1 n2 base,percent) } (L:engine1 n2 base,percent) (L:fuel flow control lewer 1,percent) > if{ (L:engine1 n2 base,percent) -- d (L:engine1 n2 base,percent) < if{ (L:fuel flow control lewer 1,percent) } (>L:engine1 n2 base,percent) } || } || (L:engine2 off,bool) ! if{ (L:engine2 n2 base,percent) (L:fuel flow control lewer 2,percent) < if{ (L:engine2 n2 base,percent) ++ d (L:fuel flow control lewer 2,percent) > if{ (L:engine2 n2 base,percent) } (>L:engine2 n2 base,percent) } (L:engine2 n2 base,percent) (L:fuel flow control lewer 2,percent) > if{ (L:engine2 n2 base,percent) -- d (L:engine2 n2 base,percent) < if{ (L:fuel flow control lewer 2,percent) } (>L:engine2 n2 base,percent) } || } ||
- <!--  ki
  -->
  (L:engine1 off,bool) if{ (L:engine1 n2 base,percent) 0 > if{ (L:engine1 n2 base,percent) -- (>L:engine1 n2 base,percent) } } || (L:engine2 off,bool) if{ (L:engine2 n2 base,percent) 0 > if{ (L:engine2 n2 base,percent) -- (>L:engine2 n2 base,percent) } } ||
- <!--  sum
  -->
  (L:engine1 off,bool) ! if{ (L:engine1 n2 base,percent) (A:GENERAL ENG PROPELLER LEVER POSITION:1,percent) 10 / - (>L:engine1 n2,percent) } els{ 0 (>L:engine1 n2,percent) } || (L:engine2 off,bool) ! if{ (L:engine2 n2 base,percent) (A:GENERAL ENG PROPELLER LEVER POSITION:1,percent) 10 / - (>L:engine2 n2,percent) } els{ 0 (>L:engine2 n2,percent) } || (L:fuel flow lever init 1,bool) ! if{ 100 (>L:fuel flow control lewer 1,percent) } || (L:fuel flow control lewer 1,percent) 99 > if{ 1 (>L:fuel flow lever init 1,bool) } || (L:fuel flow lever init 2,bool) ! if{ 100 (>L:fuel flow control lewer 2,percent) } || (L:fuel flow control lewer 2,percent) 99 > if{ 1 (>L:fuel flow lever init 2,bool) } || (L:coll grip init,bool) ! if{ 100 (>L:collective grip,percent) } || (L:collective grip,percent) 99 > if{ 1 (>L:coll grip init,bool) } ||
  </Value>
  </Select>
  </Element>
- <Element>
- <Select>
- <Value>
  (L:engine1 off,bool) ! if{ (L:engine1 n1,percent) (A:COLLECTIVE POSITION,percent) 10 / < if{ (L:engine1 n1,percent) ++ 0.1 + (>L:engine1 n1,percent) } (L:engine1 n1,percent) (A:COLLECTIVE POSITION,percent) 10 / > if{ (L:engine1 n1,percent) -- 0.1 - (>L:engine1 n1,percent) } || } (L:engine2 off,bool) ! if{ (L:engine2 n1,percent) (A:COLLECTIVE POSITION,percent) 10 / < if{ (L:engine2 n1,percent) ++ 0.1 + (>L:engine2 n1,percent) } (L:engine2 n1,percent) (A:COLLECTIVE POSITION,percent) 10 / > if{ (L:engine2 n1,percent) -- 0.1 - (>L:engine2 n1,percent) } || } || (L:engine1 off,bool) if{ (L:engine1 n1,percent) 0 > if{ (L:engine1 n1,percent) -- (>L:engine1 n1,percent) } } || (L:engine2 off,bool) if{ (L:engine2 n1,percent) 0 > if{ (L:engine2 n1,percent) -- (>L:engine2 n1,percent) } } ||
- <!--  base
  -->
  (L:collective grip,percent) 10 / (L:fuel flow control lewer 1,percent) 10 / min (>L:engine1 n1 refer,percent) || (L:collective grip,percent) 10 / (L:fuel flow control lewer 2,percent) 10.1 / min (>L:engine2 n1 refer,percent) || (L:engine1 off,bool) ! if{ (L:engine1 n1 refer,percent) (L:engine1 n1 base,percent) > if{ (L:engine1 n1 base,percent) ++ 0.5 + (>L:engine1 n1 base,percent) } (L:engine1 n1 refer,percent) (L:engine1 n1 base,percent) < if{ (L:engine1 n1 base,percent) -- 0.5 - (>L:engine1 n1 base,percent) } } || (L:engine2 off,bool) ! if{ (L:engine2 n1 refer,percent) (L:engine2 n1 base,percent) > if{ (L:engine2 n1 base,percent) ++ 0.5 + (>L:engine2 n1 base,percent) } (L:engine2 n1 refer,percent) (L:engine2 n1 base,percent) < if{ (L:engine2 n1 base,percent) -- 0.5 - (>L:engine2 n1 base,percent) } } || (L:engine1 off,bool) if{ (L:engine1 n1 base,percent) 0 > if{ (L:engine1 n1 base,percent) -- 0.5 - (>L:engine1 n1 base,percent) } } || (L:engine2 off,bool) if{ (L:engine2 n1 base,percent) 0 > if{ (L:engine2 n1 base,percent) -- 0.5 - (>L:engine2 n1 base,percent) } } ||
- <!--  main
  -->
  (L:engine1 off,bool) ! if{ (L:engine1 n1 main,percent) 80 < if{ (L:engine1 n1 main,percent) ++ 0.5 + (>L:engine1 n1 main,percent) } } || (L:engine2 off,bool) ! if{ (L:engine2 n1 main,percent) 80 < if{ (L:engine2 n1 main,percent) ++ 0.5 + (>L:engine2 n1 main,percent) } } || (L:engine1 off,bool) if{ (L:engine1 n1 main,percent) 0 > if{ (L:engine1 n1 main,percent) -- 0.5 - (>L:engine1 n1 main,percent) } } || (L:engine2 off,bool) if{ (L:engine2 n1 main,percent) 0 > if{ (L:engine2 n1 main,percent) -- 0.5 - (>L:engine2 n1 main,percent) } } ||
- <!--  oei
  -->
  (L:eng1 oei mode,bool) (L:eng1 oei n1,percent) 5 < && if{ (L:eng1 oei n1,percent) ++ (>L:eng1 oei n1,percent) } || (L:eng1 oei mode,bool) ! (L:eng1 oei n1,percent) 0 > && if{ (L:eng1 oei n1,percent) -- (>L:eng1 oei n1,percent) } || (L:eng2 oei mode,bool) (L:eng2 oei n1,percent) 5 < && if{ (L:eng2 oei n1,percent) ++ (>L:eng2 oei n1,percent) } || (L:eng2 oei mode,bool) ! (L:eng2 oei n1,percent) 0 > && if{ (L:eng2 oei n1,percent) -- (>L:eng2 oei n1,percent) } ||
- <!--  sum
  -->
  (L:engine1 n1,percent) (L:engine1 n1 base,percent) + (L:eng1 oei n1,percent) + (L:engine1 n1 main,percent) + (>L:engine1 n1 overall,percent) || (L:engine2 n1,percent) (L:engine2 n1 base,percent) + (L:eng1 oei n1,percent) + (L:engine2 n1 main,percent) + (>L:engine2 n1 overall,percent) ||
  </Value>
  </Select>
  </Element>
- <Element>
- <Select>
  <Value>(L:engine1 n2,percent) 0.3 * (L:engine1 n1 overall,percent) 1.6 / + (>L:engine1 fuel flow,kg per hour) (L:engine2 n2,percent) 0.3 * (L:engine2 n1 overall,percent) 1.6 / + (>L:engine2 fuel flow,kg per hour) || (L:engine1 fuel flow,kg per hour) (L:engine2 fuel flow,kg per hour) + (>L:fuel flow overall,kg per hour) || (A:FUEL TOTAL QUANTITY,gallon) (A:FUEL WEIGHT PER GALLON,kg) * (L:fuel flow overall,kg per hour) / (>L:fuel to empty time,hour) ||</Value>
  </Select>
  </Element>
  //------------------------------------trq-------------------------------------
- <Element>
- <Select>
- <Value>
  (L:engine1 off,bool) ! if{ (L:engine1 torque,percent) (L:eng1 oei torque,percent) (A:COLLECTIVE POSITION,percent) 1.7 / + < if{ (L:engine1 torque,percent) ++ 0.3 + (>L:engine1 torque,percent) } (L:engine1 torque,percent) (L:eng1 oei torque,percent) (A:COLLECTIVE POSITION,percent) 1.8 / + > if{ (L:engine1 torque,percent) -- 0.3 - (>L:engine1 torque,percent) } || } (L:engine1 off,bool) ! if{ (L:engine1 n1 main,percent) 2 / 40 < if{ (L:engine1 torque base,percent) ++ d 41 > if{ 0 } (>L:engine1 torque base,percent) } } || (L:engine2 off,bool) ! if{ (L:engine2 torque,percent) (L:engine2 torque oei,percent) (A:COLLECTIVE POSITION,percent) 1.7 / + < if{ (L:engine2 torque,percent) ++ 0.3 + (>L:engine2 torque,percent) } (L:engine2 torque,percent) (L:engine2 torque oei,percent) (A:COLLECTIVE POSITION,percent) 1.8 / + > if{ (L:engine2 torque,percent) -- 0.3 - (>L:engine2 torque,percent) } || } (L:engine2 off,bool) ! if{ (L:engine2 n1 main,percent) 2 / 40 < if{ (L:engine2 torque base,percent) ++ d 41 > if{ 0 } (>L:engine2 torque base,percent) } } || (L:engine1 off,bool) if{ (L:engine1 torque,percent) 0 > if{ (L:engine1 torque,percent) -- (>L:engine1 torque,percent) } } || (L:engine1 off,bool) if{ 0 (>L:engine1 torque base,percent) } || (L:engine2 off,bool) if{ (L:engine2 torque,percent) 0 > if{ (L:engine2 torque,percent) -- (>L:engine2 torque,percent) } } || (L:engine2 off,bool) if{ 0 (>L:engine2 torque base,percent) } ||
- <!--  oei
  -->
  (L:eng1 oei mode,bool) (L:eng1 oei torque,percent) 10 < && if{ (L:eng1 oei torque,percent) ++ (>L:eng1 oei torque,percent) } || (L:eng1 oei mode,bool) ! (L:eng1 oei torque,percent) 0 > && if{ (L:eng1 oei torque,percent) -- (>L:eng1 oei torque,percent) } || (L:eng2 oei mode,bool) (L:eng2 oei torque,percent) 10 < && if{ (L:eng2 oei torque,percent) ++ (>L:eng2 oei torque,percent) } || (L:eng2 oei mode,bool) ! (L:eng2 oei torque,percent) 0 > && if{ (L:eng2 oei torque,percent) -- (>L:eng2 oei torque,percent) } || (L:engine1 torque,percent) (L:engine1 torque base,percent) + (L:eng1 oei torque,percent) + (>L:engine1 torque overall,percent) || (L:engine2 torque,percent) (L:engine2 torque base,percent) + (L:eng2 oei torque,percent) + (>L:engine2 torque overall,percent) ||
  </Value>
  </Select>
  </Element>
  //-----------------------------------------perf-----------------------------
- <Element>
- <Select>
  <Value>(L:engine1 n1 overall,percent) 1.3 / (>L:engine1 peformance,percent) (L:engine2 n1 overall,percent) 1.35 / (>L:engine2 peformance,percent) || (L:engine1 egt overall,celsius) (L:eng1 egt test,celsius) - 11 / (L:engine2 egt overall,celsius) (L:eng2 egt test,celsius) - 11 / max (>L:engine performance B,percent) || (L:engine performance B,percent) 10 > if{ 1 (>L:engine performance,bool) } els{ 0 (>L:engine performance,bool) } ||</Value>
  </Select>
  </Element>
  //-----------------------------------------egt------------------------------
- <Element>
- <Select>
  <Value>(L:engine1 off,bool) ! if{ (L:engine1 egt, celsius) (A:COLLECTIVE POSITION,percent) < if{ (L:engine1 egt, celsius) ++ d (A:COLLECTIVE POSITION,percent) > if{ (L:engine1 egt, celsius) } (>L:engine1 egt, celsius) } (L:engine1 egt, celsius) (A:COLLECTIVE POSITION,percent) > if{ (L:engine1 egt, celsius) -- d (A:COLLECTIVE POSITION,percent) < if{ (L:engine1 egt, celsius) } (>L:engine1 egt, celsius) } } (L:engine2 off,bool) ! if{ (L:engine2 egt, celsius) (A:COLLECTIVE POSITION,percent) < if{ (L:engine2 egt, celsius) ++ d (A:COLLECTIVE POSITION,percent) > if{ (L:engine2 egt, celsius) } (>L:engine2 egt, celsius) } (L:engine2 egt, celsius) (A:COLLECTIVE POSITION,percent) > if{ (L:engine2 egt, celsius) -- d (A:COLLECTIVE POSITION,percent) < if{ (L:engine2 egt, celsius) } (>L:engine2 egt, celsius) } } || (L:engine1 off,bool) ! if{ (L:engine1 egt base,celsius) 530 < if{ (L:engine1 egt base,celsius) ++ d 530 > if{ 0 } (>L:engine1 egt base,celsius) } } || (L:engine2 off,bool) ! if{ (L:engine2 egt base,celsius) 532 < if{ (L:engine2 egt base,celsius) ++ d 532 > if{ 0 } (>L:engine2 egt base,celsius) } } || (L:engine1 off,bool) if{ (L:engine1 egt, celsius) 0 > if{ (L:engine1 egt, celsius) -- (>L:engine1 egt, celsius) } } || (L:engine2 off,bool) if{ (L:engine2 egt, celsius) 0 > if{ (L:engine2 egt, celsius) -- (>L:engine2 egt, celsius) } } || (L:engine1 off,bool) if{ (L:engine1 egt base,celsius) -- d 0 < if{ (L:engine1 egt base,celsius) } (>L:engine1 egt base,celsius) } || (L:engine2 off,bool) if{ (L:engine2 egt base,celsius) -- d 0 < if{ (L:engine2 egt base,celsius) } (>L:engine2 egt base,celsius) } || //---test (L:button eng1 egt test,bool) if{ (L:eng1 egt test,celsius) 1300 < if{ (L:eng1 egt test,celsius) ++ 10 + (>L:eng1 egt test,celsius) } } els{ (L:eng1 egt test,celsius) 0 > if{ (L:eng1 egt test,celsius) -- 10 - (>L:eng1 egt test,celsius) } } || (L:button eng2 egt test,bool) if{ (L:eng2 egt test,celsius) 1300 < if{ (L:eng2 egt test,celsius) ++ 10 + (>L:eng2 egt test,celsius) } } els{ (L:eng2 egt test,celsius) 0 > if{ (L:eng2 egt test,celsius) -- 10 - (>L:eng2 egt test,celsius) } } || //---oei (L:eng1 oei mode,bool) (L:engine1 egt oei,celsius) 80 < if{ (L:engine1 egt oei,celsius) ++ (>L:engine1 egt oei,celsius) } || (L:eng1 oei mode,bool) ! (L:engine1 egt oei,celsius) 0 > if{ (L:engine1 egt oei,celsius) -- (>L:engine1 egt oei,celsius) } || (L:eng2 oei mode,bool) (L:engine2 egt oei,celsius) 80 < if{ (L:engine2 egt oei,celsius) ++ (>L:engine2 egt oei,celsius) } || (L:eng2 oei mode,bool) ! (L:engine2 egt oei,celsius) 0 > if{ (L:engine2 egt oei,celsius) -- (>L:engine2 egt oei,celsius) } ||</Value>
  </Select>
  </Element>
- <Element>
- <Select>
  <Value>(L:engine1 egt, celsius) (L:engine1 egt base,celsius) + (L:engine1 n2,percent) + (L:engine1 egt oei,celsius) + (A:AMBIENT TEMPERATURE,celsius) + (L:eng1 egt test,celsius) + 1300 min (>L:engine1 egt overall,celsius) (L:engine2 egt, celsius) (L:engine2 egt base,celsius) + (L:engine2 n2,percent) + (L:engine2 egt oei,celsius) + (A:AMBIENT TEMPERATURE,celsius) + (L:eng2 egt test,celsius) + 1300 min (>L:engine2 egt overall,celsius) || (L:engine1 egt init,bool) ! if{ 550 (>L:engine1 egt base,celsius) } || (L:engine1 egt base,celsius) 500 > if{ 1 (>L:engine1 egt init,bool) } || (L:engine2 egt init,bool) ! if{ 550 (>L:engine2 egt base,celsius) } || (L:engine2 egt base,celsius) 500 > if{ 1 (>L:engine2 egt init,bool) } ||</Value>
  </Select>
  </Element>
- <Element>
- <Select>
  <Value>(L:engine1 egt overall,celsius) (L:engine1 egt margin,celsius) > if{ (L:engine1 egt overall,celsius) (>L:engine1 egt margin,celsius) } (L:engine1 off,bool) if{ 0 (>L:engine1 egt margin,celsius) } || (L:engine2 egt overall,celsius) (L:engine2 egt margin,celsius) > if{ (L:engine2 egt overall,celsius) (>L:engine2 egt margin,celsius) } || (L:engine2 off,bool) if{ 0 (>L:engine2 egt margin,celsius) } ||</Value>
  </Select>
  </Element>
  //--------------------------oil press+temp
- <Element>
- <Select>
  <Value>(L:engine1 off,bool) ! if{ (L:engine1 n2,percent) 2.2 / (L:engine1 n1 overall,percent) 20 / + (A:AMBIENT TEMPERATURE,celsius) 20 / - (>L:eng1 oil press,psi) } (L:engine1 off,bool) if{ (L:eng1 oil press,psi) 0 > if{ (L:eng1 oil press,psi) -- d 0 < if{ (L:eng1 oil press,psi) } (>L:eng1 oil press,psi) } } || (L:engine2 off,bool) ! if{ (L:engine2 n2,percent) 2.2 / (L:engine2 n1 overall,percent) 21 / + (A:AMBIENT TEMPERATURE,celsius) 23 / - (>L:eng2 oil press,psi) } || (L:engine2 off,bool) if{ (L:eng2 oil press,psi) 0 > if{ (L:eng2 oil press,psi) -- d 0 < if{ (L:eng2 oil press,psi) } (>L:eng2 oil press,psi) } } ||</Value>
  </Select>
  </Element>
- <Element>
- <Select>
  <Value>(L:engine1 off,bool) ! if{ (L:engine1 n2,percent) 2 / (L:engine1 n1 overall,percent) 2.5 / + (A:AMBIENT TEMPERATURE,celsius) + (>L:eng1 oil temp,celsius) } (L:engine1 off,bool) if{ (L:eng1 oil temp,celsius) (A:AMBIENT TEMPERATURE,celsius) > if{ (L:eng1 oil temp,celsius) -- (>L:eng1 oil temp,celsius) } } || (L:engine2 off,bool) ! if{ (L:engine1 n2,percent) 2 / (L:engine2 n1 overall,percent) 2.3 / + (A:AMBIENT TEMPERATURE,celsius) + (>L:eng2 oil temp,celsius) } || (L:engine2 off,bool) if{ (L:eng2 oil temp,celsius) (A:AMBIENT TEMPERATURE,celsius) > if{ (L:eng2 oil temp,celsius) -- (>L:eng2 oil temp,celsius) } } ||</Value>
  </Select>
  </Element>
- <Element>
- <Select>
  <Value>(L:mgb on,bool) if{ (L:engine1 n2,percent) 2.2 / (L:engine2 n2,percent) 2.2 / max (L:engine1 n1 overall,percent) 20 / (L:engine2 n1 overall,percent) 20 / max + (A:AMBIENT TEMPERATURE,celsius) 20 / - (>L:mgb oil press,psi) } (L:mgb on,bool) ! if{ (L:mgb oil press,psi) 0 > if{ (L:mgb oil press,psi) -- (>L:mgb oil press,psi) } } || (L:mgb on,bool) if{ (L:engine1 n2,percent) 2 / (L:engine1 n1 overall,percent) 2.5 / + (A:AMBIENT TEMPERATURE,celsius) + (>L:mgb oil temp,celsius) } (L:mgb on,bool) ! if{ (L:mgb oil temp,celsius) (A:AMBIENT TEMPERATURE,celsius) > if{ (L:mgb oil temp,celsius) -- (>L:mgb oil temp,celsius) } } || (L:mgb oil press,psi) 1.5 / (>L:tgb oil press,psi) || (L:mgb oil temp,celsius) 1.5 / (>L:tgb oil temp,celsius) ||</Value>
  </Select>
  </Element>
  //----------------------------------rotors------------------------------------
- <Element>
- <Select>
  <Value>(A:ENG ROTOR RPM:1,percent) 100 min 0.6 * (L:rotor rpm idle,percent) 0.4 * + 100 min (>L:rotor1 rpm,percent) (L:rotor1 rpm,percent) 3.9 * (>L:rotor rpm turns,rpm) || (L:engine1 n2,percent) (L:engine2 n2,percent) max (>L:engines common n2,percent) || (A:ENG ROTOR RPM:1,percent) 100 min (L:engines common n2,percent) min (>L:rotor idle ref,percent) || (L:rotor rpm idle,percent) (L:rotor idle ref,percent) > if{ (L:rotor rpm idle,percent) -- 0.5 - (>L:rotor rpm idle,percent) } || (L:rotor rpm idle,percent) (L:rotor idle ref,percent) < if{ (L:rotor rpm idle,percent) ++ 0.5 + (>L:rotor rpm idle,percent) } ||</Value>
  </Select>
  </Element>
- <Element>
- <Select>
  <Value>(L:engine1 n1 overall,percent) 85 < (L:engine2 n1 overall,percent) 85 < && (A:COLLECTIVE POSITION,percent) 10 > && if{ 1000 (>K:THROTTLE_SET) } (A:TOTAL WEIGHT,lbs) 26000 > (A:COLLECTIVE POSITION,percent) 10 > && if{ 1000 (>K:THROTTLE_SET) } || (L:lever rotor brake,bool) if{ (A:ROTOR BRAKE ACTIVE,bool) ! (A:ENG ROTOR RPM:1,percent) 1 > && if{ (>K:ROTOR_BRAKE) } } ||</Value>
  </Select>
  </Element>
  //-----------------------------hyd + mbg + gear------------------------------------------------------
- <Element>
- <Select>
  <Value>(L:engine1 n2,percent) (L:engine2 n2,percent) max 20 > if{ 1 (>L:mgb on,bool) } els{ 0 (>L:mgb on,bool) } (L:mgb on,bool) (L:switch hyd system select,bool) ! && if{ (L:main hyd system press,psi) 50 < if{ (L:main hyd system press,psi) ++ (>L:main hyd system press,psi) } } els{ (L:main hyd system press,psi) 0 > if{ (L:main hyd system press,psi) -- (>L:main hyd system press,psi) } } || (L:mgb on,bool) (L:switch hyd system select,bool) && if{ (L:emer hyd system press,psi) 50 < if{ (L:emer hyd system press,psi) ++ (>L:emer hyd system press,psi) } } els{ (L:emer hyd system press,psi) 0 > if{ (L:emer hyd system press,psi) -- (>L:emer hyd system press,psi) } } || (L:main hyd system press,psi) (L:emer hyd system press,psi) max (>L:aux hyd system press,psi) || (L:switch gear system select,bool) ! if{ (L:aux hyd system press,psi) (>L:gear hyd system press,psi) } || (L:switch gear system select,bool) if{ (L:main hyd system press,psi) (>L:gear hyd system press,psi) } || // (L:lever main gear extract,bool) ! (L:aux hyd system press,psi) 10 > && // (L:lever aux gear extract,bool) (L:main hyd system press,psi) 10 > && || //---------- close open (L:switch gnr ldg gear,bool) ! (L:switch control to gunner,bool) && (L:main hyd system press,psi) && if{ (A:GEAR HANDLE POSITION,bool) ! if{ 1 (>K:GEAR_SET) } } || (L:switch gnr ldg gear,bool) (L:switch control to gunner,bool) && (L:main hyd system press,psi) && if{ (A:GEAR HANDLE POSITION,bool) if{ 0 (>K:GEAR_SET) } } ||</Value>
  </Select>
  </Element>

Ok, there is something missing in this XML, because prop axis is not responding, possible to fix?

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.