I've made a
profiler exactly because of this issue. I think I've mostly got it right, fine adjustments are possible thanks to the filters used (smoothing, nonlinearity and a tiny deadzone). Another thing I've have realized is that the sticks are constrained to a circle, so for example with pitch and roll on one stick you can't have both fully deflected at the same time. Therefore a multiplication is also necessary.
Some ideas I've come up with and implemented:
1. While fighting I'd really love to have 5 axes: roll/pitch/yaw and lateral/vertical thrust, but the controller has only four. So I ended up assigning the same control to both yaw and lateral thrust, because it does not impede aiming, but still makes lateral evasion possible.
2. In normal flight I usually don't need my hardpoints, so I ended up configuring the triggers, which are really analogue axes to control yaw. This way the controls are almost the same as when fighting, and have all controls necessary even for landing. I use one shift button to convert vertical to ahead thrust useful when landing, this is also always available.
3. The last trick is using double button clicks for some operations: X is throttle up, double X is set 100%. A is throttle down, double A sets it to 0%. Thanks to this all controls I know of are mapped to the controller, I never have to use the keyboard.