Please try the classic mode first. Handling joystick input has undergone many different designs. For example Windows has 6 joystick APIs - all with different quirks.
Interface mode Gamepad is usually the right one.
To ease switching between Advanced and Classic mode try using channels 1 - 8 for axis and channels 9 - 32 for buttons.
After changing the joystick configuration you likely have to disconnect and then reconnect the USB cable. Otherwise systems might still use the old joystick description to read the new data.
Most modern applications use the USB HID ID to identify the meaning of an axis.
Legacy applications frequently use the order the axis where configured in.
A few applications use the reverse order the axis where configured in.
Duplicate axis are rarely supported. Some APIs do support two Slider axis.
Inverted axis: Many applications expect the left and right Y axis to go the other way. The direction can be reversed with Weight -100% or in the advanced Joystick configuration.
Windows does support "axis" and "sim". However mixing both types is not always supported.
Linux maps following inputs onto the same axis and uses the input value with the lowest channel number.
sim Thr + axis Slider → ABS_THROTTLE
sim Rud + axis Dial → ABS_RUDDER
axis Wheel + sim Steer → ABS_WHEEL
Android treats sim Acc and sim Brk as half axis. EdgeTX channel outputs [-100%, 0% and +100%] are interpreted by Android as [0%, 50% and 100%]. Consider following configuration if your physical input is one analog stick:
Sim Dpad emulates a directional pad also known as hat switch or point of view switch. Most application decode the 8 ordinal directions and "center". Some applications only decode the 4 cardinal directions and "center" (e.g. Northeast is treated as North).
The meaning of a specific button ID is not standardized.
Duplicate buttons (e.g. button 1, button 1) are not supported. The button with the higher channel number is used.
Buttons as axis: Some applications need analog button information. Use a mixer to forward the digital button state to an analog axis.
Ghost buttons: For Joysticks and Gamepads the required minimum amount of buttons is automatically created. Similarly if only button 15 is configured the missing buttons 0 - 14 are automatically created. These buttons have no input and are always off.
Android generally supports buttons 0 to 14 with the same mapping as Linux. Support for buttons in bold is mandatory for all Android devices.
Widows generally supports buttons 0 to 9 with the same mapping as Xbox.