Editing FlyByWireEGCS
Jump to navigation
Jump to search
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 1: | Line 1: | ||
{{Addon| | {{Addon| | ||
− | 1=[ | + | 1=[http://www.orbithangar.com/searchid.php?ID=3223 Fly-By-Wire on Orbithangar]| |
− | 2=Oliver 'Redburne' Pieper | + | 2=[[User:Redburne|Oliver 'Redburne' Pieper]]. |
− | |||
− | |||
}} | }} | ||
= About Fly-By-Wire = | = About Fly-By-Wire = | ||
Line 9: | Line 7: | ||
== Purpose == | == Purpose == | ||
− | Fly-By-Wire (FBW) complements or replaces Orbiter's support for | + | Fly-By-Wire (FBW) complements or replaces Orbiter's support for game controllers like joysticks and HOTAS (Hands On Throttle And Stick) systems like the Saitek X52 or Thrustmaster Cougar. |
− | + | With FBW, you can currently assign different axes on different game controllers to control main engine thrust, hover engine thrust, retro engine thrust, aileron, elevator, rudder (but not the nosewheel), elevator trim, and bot rotational and translational RCS thrusters. | |
− | With FBW, you can currently assign different axes on different game controllers to control | ||
− | |||
− | |||
− | |||
− | |||
FBW is passive and will not interfere with vessel autopilots if the controllers are not moved. | FBW is passive and will not interfere with vessel autopilots if the controllers are not moved. | ||
− | |||
− | |||
== Change log == | == Change log == | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
=== Release 0.8 === | === Release 0.8 === | ||
* code completely rewritten in C++ and Borland Delphi | * code completely rewritten in C++ and Borland Delphi | ||
− | * | + | * not longer MFD based |
* configuration dialog on Orbiter launchpad, "Extra" tab, Fly-By-Wire/Configure | * configuration dialog on Orbiter launchpad, "Extra" tab, Fly-By-Wire/Configure | ||
* visual input selection, showing all axes, all buttons, etc. on one panel | * visual input selection, showing all axes, all buttons, etc. on one panel | ||
* for axes, upper, lower and central deadzones can be set | * for axes, upper, lower and central deadzones can be set | ||
* provisional support for RCS | * provisional support for RCS | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
= Download = | = Download = | ||
Line 58: | Line 31: | ||
# Start Orbiter. | # Start Orbiter. | ||
# Activate the module "Fly-By-Wire" on the "Modules" tab of the Orbiter Launchpad. | # Activate the module "Fly-By-Wire" on the "Modules" tab of the Orbiter Launchpad. | ||
− | # It is recommended to disable Main Engine Control on the "Joystick" tab of the Orbiter Launchpad (i.e. set it to "<Keyboard only>") | + | # It is recommended to disable Main Engine Control on the "Joystick" tab of the Orbiter Launchpad (i.e. set it to "<Keyboard only>"). It is not necessary to disable the joystick entirely. FBW will deactivate the axes when necessary. |
= Configuration = | = Configuration = | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
... to be written ... | ... to be written ... | ||
Line 101: | Line 46: | ||
;Input number: a game device usually consists of several inputs of the same type. They are numbered from 1 to n. | ;Input number: a game device usually consists of several inputs of the same type. They are numbered from 1 to n. | ||
− | = | + | = INI-File = |
− | + | == General == | |
− | == | + | FBW saves its settings in the file <pre><OrbiterDir>\Config\Fly-By-Wire.ini</pre> |
− | + | This ini file is not meant to be modified directly. '''Edit it at your own risk!''' If all else fails, delete the file and FBW will create a new one. | |
− | |||
− | + | A file named "Fly-By-Wire.cfg" in the same directory is the configuration file of the older (up to 0.7) MFD version. Unless you are still using the MFD version of FBW, this file is obsolete and can be deleted. | |
− | |||
− | + | == Input types == | |
− | + | ==== Input types ==== | |
− | < | + | <pre> |
− | + | none -- no input type selected | |
− | + | axis -- standard axis | |
+ | button -- standard button | ||
+ | hat -- standard hat | ||
+ | trackball x-axis -- standard trackball, x-axis | ||
+ | trackball y-axis -- standard trackball, y-axis | ||
− | + | ; interpret single hat direction as standard button | |
− | + | hat C as button -- "hat centered" as standard button | |
+ | hat N as button -- "hat north" as standard button | ||
+ | hat NE as button -- ... and so on ... | ||
+ | hat E as button | ||
+ | hat SE as button | ||
+ | hat S as button | ||
+ | hat SW as button | ||
+ | hat W as button | ||
+ | hat NW as button | ||
+ | ; interpret hat axis as standard axis | ||
+ | hat N-S as axis | ||
+ | hat E-W as axis | ||
+ | </pre> | ||
= Planned and/or requested features = | = Planned and/or requested features = | ||
Line 126: | Line 85: | ||
(not necessarily complete, and most certainly not in any specific order) | (not necessarily complete, and most certainly not in any specific order) | ||
+ | * add a way to assign two buttons to emulate an axis [pattersoncr] | ||
+ | * fully customizable axis response (plus presets for "linear", "exponential") | ||
+ | * Main/Retro: additional button mode (toggle main/retro) [yagni01] | ||
+ | * Main/Retro: split axis with a configurable center deadzone [lockingtoggle] | ||
* automatic disengaging of controls if input and current setting differ by more than 5%, especially when switching vessels; automatic reengaging | * automatic disengaging of controls if input and current setting differ by more than 5%, especially when switching vessels; automatic reengaging | ||
* separate axes for left and right (and center?) main engines [lockingtoggle] | * separate axes for left and right (and center?) main engines [lockingtoggle] | ||
* RCS support: | * RCS support: | ||
+ | ** rotation and translation independent and simultaneous [many ...] | ||
** different modes: normal (power), pulse, rate, rate change [yagni01, c3po, ...] | ** different modes: normal (power), pulse, rate, rate change [yagni01, c3po, ...] | ||
** hard-coded "vernier" setting of 10% max. power when CTRL is pressed [Hielor] | ** hard-coded "vernier" setting of 10% max. power when CTRL is pressed [Hielor] | ||
Line 138: | Line 102: | ||
* multiple setups | * multiple setups | ||
** automatic switching based on vessel class [c3po] | ** automatic switching based on vessel class [c3po] | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
= Known issues = | = Known issues = | ||
== Rudder control/nosewheel == | == Rudder control/nosewheel == | ||
− | Unfortunately, the Orbiter API makes it difficult for add-ons to set the control surfaces for atmospheric flight. To take control of the rudder, FBW has to deactivate manual rudder control (both | + | Unfortunately, the Orbiter API makes it difficult for add-ons to set the control surfaces for atmospheric flight. To take control of the rudder, FBW has to deactivate manual rudder control (by both keyboard and joystick) when the FBW rudder control is active. Otherwise, the manual control would constantly override FBW's changes, rendering it inoperational. |
− | To complicate matters further, the Orbiter API does not support steering of the | + | To complicate matters further, the Orbiter API does not support steering of the nosewheel. The nosewheel is still controlled by the usual Orbiter mechanism (i.e. the rudder keys or the standard joystick axis if Orbiter's joystick support is enabled). So, for technical reasons, FBW cannot support the nosewheel with the current Orbiter version. |
− | == Saitek X52 | + | == Saitek X52 == |
Rotary 2 (the big one on top of the throttle lever) is not recognized and cannot be used. This is probably a deficiency of the underlying SDL library that is used to access the game device. | Rotary 2 (the big one on top of the throttle lever) is not recognized and cannot be used. This is probably a deficiency of the underlying SDL library that is used to access the game device. | ||
− | |||
− | |||
− | |||
− | |||
= History = | = History = | ||
Line 174: | Line 125: | ||
;FBW does not prompt me to save changes when exiting although I did modify some settings | ;FBW does not prompt me to save changes when exiting although I did modify some settings | ||
− | :Your final settings probably ended up being exactly the same as the one you initially had. FBW does not monitor user | + | :Your final settings probably ended up being exactly the same as the one you initially had. FBW does not monitor user avtivity but simply compares the final settings with the ones it originally loaded. If you modify a control and later change your mind and set it to the old configuration, FBW will not recognize this as a change. |
:If that is not the case, you have found a bug. | :If that is not the case, you have found a bug. | ||
= License = | = License = | ||
− | |||
− | |||
− | |||
− | |||
<pre>Fly-By-Wire is free software: you can redistribute it and/or modify | <pre>Fly-By-Wire is free software: you can redistribute it and/or modify | ||
Line 196: | Line 143: | ||
along with Fly-By-Wire. If not, see <http://www.gnu.org/licenses/>.</pre> | along with Fly-By-Wire. If not, see <http://www.gnu.org/licenses/>.</pre> | ||
− | |||
− | |||
− | + | [[Category:Add-ons]][[Category: Miscellaneous add-ons]][[Category:Add-ons by Redburne]] | |
− | [[Category:Add-ons]] | ||
− | [[Category:Miscellaneous add-ons]] | ||
− | [[Category:Add-ons by Redburne]] |