I’ve made some breakthroughs on tweaking the ini. Two of the values are an order of magnitude in either direction with some very surprising results. Other than some persistent issues with yaw rate inconsistency and ramp up that I have some ideas about dealing with longterm that you can tweak on a helo-by-helo basis in GlovePIE, the flight model of EECH is now better than anything in FSX or Flight Gear for AFCS helos with 1.16.2 when using GWUT 1.16.1 while using PPJoy & GlovePIE. While X-Plane might be best for pole cyclics, with DCS a close runner up, EECH now can hold its own nicely for joystick and pressure stick side access controller flying. If you have a pole cyclic or low-resistance joystick with a long throw, you won’t need PPJoy & GlovePIE and it will just be a lower workload compared to what you’re used to. You might want to also increase the head g-forces and vibration in the ini to 1.5 each. Personally, I like the effect.
I’m using PPJoy virtual joystick as an intermediary between my HOTAS and EECH, and assigning the virtual joystick in the sim and ini. Then I use GlovePIE running a script as a programming intermediary to roughly and ‘dummly’ (it doesn’t know the sim aircraft’s attitude) do auto trimming rate-command / attitude-hold, as well as limit the ranges of auto trimming and limit the range available for yaw, to add yaw trim, etc.
Here is my latest GlovePIE EECH script:
var.nlzrots = sign(Joystick1.zrot) //Nonlinear pedals. Can be combined with sim nonlinear setting.
var.nlzrotm = abs(Joystick1.zrot)^(1.3) //Usually 1.3 but 1 will make it linear.
var.nlzrot = var.nlzrotm * var.nlzrots
if var.nlzrot = 0 then { //Better pedal fix.
var.pedalfix = -0.999999
else
var.pedalfix = var.nlzrot // pedals
}
var.dial = smooth(deadzone(joystick2.dial, 0.008), 10)
if shift+t then begin { //Auto trim clear
var.xhold = 0
var.yhold = 0
PPJoy1.Analog0 = var.xhold + deadzone(joystick2.x, 0.075)
PPJoy1.Analog1 = var.yhold + deadzone(joystick2.y, 0.075)
PPJoy1.Analog5 = var.pedalfix / 2 - var.dial /2 //For pedals. Usually bypassed unless FM 0 or 1 with coaxials.
else
var.xhold = EnsureRange(deadzone(joystick2.x, 0.075) / 30 + var.xhold, -.4, .4) //Roll auto trimming. Over -.5/.5 causes continuous roll, but -.75/.75 is nicely responsive.
PPJoy1.Analog0 = var.xhold + deadzone(joystick2.x, 0.075) //Roll
var.yhold = EnsureRange(deadzone(joystick2.y, 0.075)/ 30 + var.yhold, -.75, .75) //Pitch auto trimming
PPJoy1.Analog1 = var.yhold + deadzone(joystick2.y, 0.075) //Pitch
PPJoy1.Analog2 = Joystick2.z //Collective that I’m currently bypassing and going direct
PPJoy1.Analog5 = var.pedalfix / 2 - var.dial /2 //For pedals. Dividers 1 or 2 for non-hokums, Higher for hokum B. Can be bypassed and assign pedals directly in sim for FM 2.
}
var.bank = PPJoy1.Analog0
var.pitch = PPJoy1.Analog1
var.collective = PPJoy1.Analog2
var.GPyaw = PPJoy1.Analog5
var.rawpedals = Joystick1.zrot
var.throttle2 = Joystick2.zrot
var.bottomwheel = Joystick2.slider
var.rawtopdial = Joystick2.dial
Lets call this Reticuli’s AFCS Mimic EECH.ini FM Tweaks for use with GWUT1.16.1:
EECH.ini edits:
[Dynamics]
flight_model=0 # 0 is the default flight model with coordinated turning that the dyn and ini setting affect. 1 is werewolf’s adjustments of this default FM which is similar to FM 0 but without some yaw aerodynamic streamlining or any auto coordinated turning, 2 - alternative pseudoreal FM (def = 2) has IAS affecting RPM slightly with rotor disengaged and RPM supposedly affects lift with rotor engaged, though RPM does not fluctuate enough with fast collective changes with rotor engaged and increasing IAS takes too long to increase RPM with rotor disengaged. Taxiing does is not safe with FM 2 due to strange yaw and roll moments possibly due to FM interaction with suspension mods. FM 2 is not affected by any dyn files or most ini lines. FM 2 adversely lowered both translational lift and ground effect, the latter of which was prior to these ini changes already too low in the sim on FM 0 and 1. FM 0 and 1 Hokum B max yaw is always too high, while FM 2’s is too low. FM 2 also reverses the EECH Translational Lift menu option such that on is off, so if using FM 2 you must set that to off to get any ETL at all. FM 2 has more realistic auto rotation. FM 0 and 1 are slightly too lite and high thrust. FM 2 is too heavy and low thrust. Hence differences in dmrl. FM 0 and 2 turn coordination mixes in yaw when banking at too low a speed still. FM 0 (optionally, obviously, you can use FM 1 with these settings if you don’t want turn coordination or yaw streamlining, but it’s a mystery how FM 2 is affected by these settings if at all other than dmrl and dyad) with Reticuli’s 1-5-2021 ini values in combination with PPJoy and GlovePIE causes EECH to most closely mimic a FBW helicopter like especially the Comanche and also somewhat like the Zulu Viper, Apache D, or Hokum similar to the work Penn State’s rotorcraft research lab and the Army ADOCs program have done.
enginerealism=1 # realistic engine workload simulation model (0 = off, 1 = on) (def = 1)
enginestartup=0 # manual engine start up, off by default (0 = off, 1 = on) (def = 0)
drbs=1.0 # retreating blade stall, floating point scaling factor for RBS effect (default = 1.0). Most helos should have this happening sooner and benefit from 1.1 or even 1.2, but some like the Zulu Viper are the reverse, so might as well just leave it at the default.
drv=1.0 # rudder value, scaling factor for drag on tail rotation (Default = 1.0.) Undesirable parameter to be adjusting since this must work as the tail drag, max Hokum B yaw rate, and as an inappropriate yaw damper that should be separate from drag. Very high like 30 is possible with very low fractional dra below. Even higher drv produces counter effects when banking opposite during yaw.
dra=1.0 # rudder acceleration, scaling factor for tail rotation acceleration (default = 0.8). Undesirable value to be adjusting, as maximum yaw rate would be more useful. If set low enough and the tail drag high enough, non-Hokums will not continually ramp up yaw rate, but then the Hokum with such a high tail drag gets further insane max yaw rates.
drd=0.1 # main rotor drag, scaling factor for drag caused by main rotor (default = 1.0). It’s uncertain if this affects parallel aerodynamic streamlining drag of the rotor disc, but it is definitely perpendicular drag that affects angular rotational rates for a given X and Y input and at higher settings causes the helicopter to bleed speed with X and Y axis maneuvering. Ground effect may noticeably increase at 0.1 over higher values, and since ground effect, aerodynamic streamlining, and aerobatic capabilities are problematic in EECH, this value at 0.1 seems essential. Joystick sensitivity on your end may need adjustment to compensate for this increased pitch and roll authority.
dmrl=0.9 # main rotor lift, scaling factor for lift of main rotor (default = 1.0). With FM 0 or 1, dmrl of 0.9 is most accurate. With FM 2, dmrl of 1.1 is most accurate.
dtrd=10.0 # tail rotor drag, scaling factor for drag caused by tail in forward flight (default = 1.0). It is difficult to say exactly how this is affecting flight, but lower than 10.0 seems to have an adverse effect on aerobatics, and at 10.0 something magical seemed to happen both with aerobatics and in just the normal flight envelope maneuvering NOE with collective and banking flying between buildings seat-of-the-pants. The ability to do a proper forward speed landing on a runway and taxi in FM 0 with all the above (whatever your chosen yaw setting and other mitigation methods) made it apparent something had snapped into place with these non-yaw ini values.
dyal=2.5 # yaw altitude loss (default = 5.0). This is the only yaw ini value I have some confidence about. If you have crosscoupling off, you might want a value of 5.0. This is perhaps excessive for AFCS aircraft and with crosscoupling 2.5 feels better and is less prone to crashing with large pedal inputs while still having a noticeable affect. YMMV.
dyad=3.0 # global air density modifier (0.5 - increase dynamics ceiling, 2.0 - decrease) (default = 1.0) A value of about 3.0 appears required with FM 0 to get an Apache D up to just over 20,000ft but not much higher at 100kts for a realistic ceiling.
Optionally I’m also using the following nonlinear collective settings, but I’m sure that’s very dependent on your individual throttle model:
nonlinear-collective-zone1=0.4 # non-linear control value for throttle (n = % throttle position joystick to represents 60% collective) (10% = 0.1) (0.0 = off (linear control), 1.0 = max) (def = 0.3)
nonlinear-collective-zone2=1.0 # non-linear control value for throttle (n = % throttle position joystick to represents 100% collective) (10% = 0.1) (0.0 = off (linear control), 1.2 = max) (def = 0.7)
nonlinear-collective-percentage-at-zone1=50.0 # collective percentage at zone1. Valid values are in range from 1.0 to 99.0, default is 60.0.