* [firmware][gui] Adjust custom failsafe (and some channel display) ranges for proper extended limits (fixes#4447). This also fixes some display issues in *x64 GUIs when adjusting failsafe settings and cleans up code in those functions.
* [firmware][gui] Fix 480x272 channel output progress bars to show full extended limits; Fix alignment issues on all 212x & 480x gui mixes screens with custom channel names; Streamline some channel outputs display code.
* Fix AVR build.
* Multi: add Q303 protocol and variants (CX10D/CX10WD)
* Fix subType selection on 128x64 UIs
* Fix options display on other radios for custom photo as well
* Add FY805 protocol
* Fix stray space
* Fix multi sending 120% instead of 100%.
* Implement a custom telemetry for the multi module
The custom telemetry allows the module to tell the telemetry protocol to OpenTX and also allows signaling the status of the Module (e.g. invalid protocol) to OpenTX
This should also close#3979.
* Cosmetics and a few small bugfixes
* remove empty if
* Move status line directly below the mode to be always visible when selecting a protocol
* warn if internal RF module is on
* Replace sprint with small helper function to build on AVR ARM (AR9X, 9XPRO, …)
* TR in wrong order, RF_PROTO_OFF inverted
* Refactor definition of Multimodule protocols to have one central place to define all multi protocol properties
* Also update protocols in companion
* Update multi version number to display as a.b.c.d
* [480x272] Fix compiler warnings with awkward extern define in layout.h.
* [firmware][misc] Fix build error with undefined SPLASH; Fix 128x64 syntax error in model_setup.cpp; Fix compiler warning on static init in diskio.cpp.
* [480x272] Revert "Fix compiler warnings with awkward extern define in layout.h." and modify lcd::drawSource() to use mixsrc_t for consistency.
This reverts commit d85d994c877a94c1933c6ece806565ca822d0f54.
* [firmware] Cleanup struct init in diskio modules.
* Change default at model creation from XJT-D16 8CH to XJT-D16 16CH on Taranis and Horus
* Set defaultto 16CH also on protocol change
* External module on Taranis
* MACRO's are good for you
* They are so good they should be used everywhere !
* And everywhere also includes the 9X UIs!
* Fix Multimodule showing up as Crossfire when only multimode and not crossfire is enabled.
* Don't hardcode telemetry to be Frysky on non STM32 arm targets
* Port multi module code to 9X platforms
* Allow Spektrum telemetry protocol to be selected as protocol for the telemetry selection
* Fix infinite loop in spektrum code
* Fix cosmetics
Changes also done for Horus and Taranis UI where appropriate