* 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
* Rename EXT option to TELEMETRY
* Change test accordingly
* Rename FRSKY to TELEMETRY_FRSKY
* Rename ARDUPILOT to TELEMETRY_ARDUPILOT
* More renames (JETI, MAVLINK, NMEA)
* Fixes to make commit-test happy
* Further tests added to commit-test
* Cleanup
* Rename EXTSTD to TELEMETRY_NONE
* 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
* Implementation of Spektrum Telemetry for the DYI Multimodule.
I can only test a subset of sensors and these look okay
* Implement conversion from Fahrenheit to Celsius
* Minor fixes for Spektrum telemetry
* Add some more sensors, show sensor ID instead of instance in the overview
The second element of the modulePulsesData was never forced to be correctly aligned. Without the new
pulses and without the Multimodule code the second element was never misaligned since the PXX pulses
union member was always the largest member and was 4 byte aligned by coincidence, also making the
second modulePulseData array member 4 byte aligned.
With the Multimodule option enabled the dsm pulses struct becomes the largest union member with 607 bytes
and the second modulePulsesData is not aligned to anything anymore which completely screws up the pulses
generation.
Forcing the alignment of the ModulePulsesData fixes this issue.
* [Horus] PXX and DSM2 in external module
* [Taranis] Pulses driver refactoring (uses DMA also for PPM in external module and saves 800bytes RAM)
* Cosmetics (Pulses driver splitted)