* Crossfire baudrate selection for X7 support ( fixes#4922 )
* Moved baurate selection to general settings
* renamed mavbaud to telemetryBaudrate for ARM targets
translation added
* typo fixed
* Remove most of the special logic associated with RF_PROTO_OFF
This simplifies code in many areas since the internal module does not require special handling and also fixes a few bugs with INTERNAL_PPM
* Disable R9M sport option if internal module has telemetry
* Fix X12s build
* Use macros instead of direct comparisions
* Fix sport bit sent the wrong way. Rename S.port out to Telemetry
* Compile fix
* Implement R9M protocol according to PXX spec 1.7
Some of the things here are guesswork as I don’t have a R9M at hand. Also Companion support for the extra R9M options is not implemented yet.
* Fix build errors
Thanks Mike for noticing: In pxx_arm.cpp, the pulse duration is set to either 48 or 32. This value gets put into the ARR register of the timer (via DMA). Counters count from 0 to the ARR value, then go back to 0. This will result in either 49 or 33 counts for the pulse width, thus making the pulses 0.5uS too long.
Tested only with external PXX
* [Simulator] Remove extraneous format value in microsTimer; Better way to delete SimulatorStartupDialog (in case no event loop starts).
* [Simulator] No helpers dependency for SimulatorStartupDialog.
* [simpgmspace] Rename micros timer function and make externally available.
* [Companion] Fix possible uninitialized value in TreeModel (compiler warning).
* [multi_arm] Fix minor compiler warning (MSVC: "unsafe mix of type 'uint8_t' and type 'bool' in operation").
* [lua] Fix compiler warning ("'data' may be used uninitialized in this function").
* [OpenTxSimulator] Fix analogs array range.
* [Simulator] Auto-start simulator when SimulatorMainWindow is first shown (vs. before it was shown).
* [Simulator] DebugOutput: prevent possible mutex deadlock on buffer overflow (force queued connection for Qt < 5.3).
* [Companion] Display calibration data for Horus joysticks (MOUSE1/MOUSE2)
* MULTI working on sky9x
* Fix crash with module OFF
* Cosmetics
* Compilation fix / cosmetics
* Typo....
* Multi now available on all ARM platforms
* Does this help?
* Compilation fix
* 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)