Commit Graph
110 Commits
Author SHA1 Message Date
Arne SchwabeandBertrand Songis 06b0694f03 Schwabe/multi telemetry (#4151)
* 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
2016-12-24 00:04:11 +01:00
Mike MorrisonandArne Schwabe ae383cd6a4 fixed fq777-124 and assan protocol selection 2016-11-28 10:48:02 +01:00
Arne SchwabeandBertrand Songis 6b57f7afa7 Add FlySky Telemetry (#3997)
Add FlySky Telemetry
2016-11-13 19:09:33 +01:00
Arne SchwabeandBertrand Songis 92dde79dec New protocol and telemetry: FlySky AFHDS2A (#3948)
* New protocol for multimode FlySky AFHDS2A

* Also add AFHDS2A protocol to companion

* fix compile error
2016-10-25 22:51:34 +02:00
Arne Schwabe 1aa6d113ee Remove DSM wrong PNRG since the multi will avoid ids that trigger this problem 2016-10-17 01:03:50 +02:00
Arne Schwabe a21d3e6f2e Fix sending number of dam channels, give DSM2 debug telemetry output a better name 2016-10-16 22:24:36 +02:00
Arne Schwabe 278e71d6f9 Fix the custom protocol logic for multi
There parts that were not handling custom vs non custom right
2016-10-16 22:24:18 +02:00
Arne Schwabe c055e93247 Rework DSM2/X support, auto protocol selection for DSM2
Support more than 31 protocols for the multi module. Breaks existing multi eeproms, need to reselect protocols
2016-10-16 22:17:38 +02:00
Arne Schwabe bcf7b48359 Implement parsing the bind packet from DSM2 (untested) 2016-10-16 22:17:38 +02:00
Arne Schwabe c0cc4e250e Fix polarity for last pulse with DSM2/Multi
The DSM/Multi timing changed the index to begin with 0 instead of 1 and that broke the putDSM2Flush logic
2016-09-08 23:01:13 +02:00
Arne Schwabe de3db6eec0 Fix timing of Multi and DSM2 protocol
We send an extra stopbit and the logic for driving the transistor was swapped. Thanks Mike for noticing (http://www.rcgroups.com/forums/showpost.php?p=35671709&postcount=5151)
2016-09-08 20:24:22 +02:00
Bertrand SongisandGitHub a5e8deabac Merge pull request #3744 from opentx/schwabe/multi_new_protocols
Add new protocols supported by the DIY Multi module
2016-09-05 22:14:27 +02:00
Arne Schwabe c16317609f [Horus] Give pxx its own substruct instead of using ppm (cosmetics) 2016-09-05 15:57:27 +02:00
Arne Schwabe 17adab3177 Telemetry on MULTI default to FrSky Hub telemetry, not smartport 2016-09-05 15:47:11 +02:00
Arne Schwabe e1a60b801a Add new protocols supported by the DIY Multi module 2016-09-01 13:09:13 +02:00
Bertrand Songis 91dc936ef3 [X12S] Crossfire module now OK 2016-08-19 19:26:34 +02:00
Bertrand SongisandGitHub d3ae3c035d Bsongis/gui refactoring for x7 d (#3701)
* [X7D] New board added
* Cosmetics
2016-08-18 11:49:16 +02:00
3djcandBertrand Songis 52435703a0 3djc/telem rename (#3678)
* 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
2016-08-02 21:53:25 +02:00
Arne SchwabeandBertrand Songis 0b67d412a0 Schwabe/multimodule 9x (#3676)
* 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
2016-08-02 18:21:18 +02:00
Bertrand Songis 4df85d1047 Cosmetics 2016-08-01 18:52:29 +02:00
Arne SchwabeandBertrand Songis 352de89838 Spektrum telemetry implementation (#3659)
* 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
2016-07-22 17:38:11 +02:00
Andre Bernet 789326d2cd Cosmetics 2016-07-19 11:12:08 +02:00
Andre Bernet a11db7d73f Schedule mixer properly for new multimodule frame rate 2016-07-19 11:11:43 +02:00
Andre Bernet a6ceb56dcd Speed up multimodule output from 22ms to 9ms 2016-07-18 20:18:19 +02:00
Andre Bernet e282c02be2 VC++ compilation 2016-06-23 08:08:56 +02:00
Bertrand Songis e64464ff9b [VC++] Compilation fixes 2016-06-21 20:25:17 +02:00
Bertrand SongisandGitHub 53b51cac94 Bsongis/crossfire refactoring (#3613)
* Crossfire refactoring

* Crossfire script now displaying fields

* Crossfire script now displaying text selection values
2016-06-18 22:16:50 +02:00
Bertrand Songis 900266be4a [Crossfire] Cosmetics 2016-06-16 15:18:32 +02:00
Bertrand Songis f415f38ba6 Compilation fix 2016-06-12 15:27:55 +02:00
Bertrand Songis 21075d5a4c Compilation fix 2016-06-12 13:41:50 +02:00
Bertrand Songis 862fa5525e [Crossfire] Upstream link development started 2016-06-11 20:05:51 +02:00
Bertrand Songis 17ab2c83aa [Horus/Taranis] Pulses cosmetics 2016-06-10 23:37:26 +02:00
Bertrand Songis f488ebc1f5 [Horus] I forgot this part for PPM pulses ... 2016-06-08 22:19:54 +02:00
Arne Schwabe 5bcde76ca0 Add the ARR change to multi in the same way as for DSM2 in commit 404c5a8 2016-06-08 22:23:45 +02:00
Arne Schwabe 540faa51bf Use __ALIGNED instead of __DMA which is identical to __DMA without the section on Hours 2016-06-08 22:04:40 +02:00
Bertrand Songis 010d9d9629 Warning removed 2016-06-08 20:37:16 +02:00
Bertrand Songis 404c5a8553 [Taranis] Trainer / Trainee again OK. Not tested on Horus 2016-06-08 20:26:30 +02:00
Arne SchwabeandBertrand Songis 0c525826b4 Fix alignment bug of pulses data array (#3575)
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.
2016-06-07 23:32:51 +02:00
Arne SchwabeandBertrand Songis b6d4442ba1 Fix interrupt handler not handling multiprotocol (Pulses fix) (#3570)
* Fix interrupt handler not handling multiprotocol

* Use proper Macros in driver, remove wrong comment about ppm
2016-06-07 07:31:35 +02:00
Bertrand Songis 7ef9992349 Bsongis/horus xjt external module (#3566)
* [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)
2016-06-05 22:34:16 +02:00
Damjan Adamic 79b2015b6e Re #3536: cosmetics 2016-05-26 20:41:48 +02:00
Bertrand Songis d471dc6216 Cosmetics 2016-05-26 18:19:24 +02:00
Ingwie d1d3f7fa0a MEGA2560 the first PPM pulse in the frame longer. #2938 is missing in next 2016-05-26 12:34:28 +02:00
Damjan Adamic 2df621993e Enable DSM protocols on all targets that define DSM2 macro, not just on Taranis. (#3471) (ported from master) 2016-05-09 20:42:27 +02:00
Bertrand Songis 3693f34a41 [Crossfire] Min / max limits were missing for each channel transmitted 2016-04-26 12:17:02 +02:00
Arne Schwabe 80b406b8d9 Implement new protocols of Multimodule (SFHSS and D16 8ch) 2016-04-18 00:09:51 +02:00
Bertrand Songis 5d171b3761 [Taranis] Crossfire period now 4ms. S.PORT TX didn't wait end of serial transfer before going to RX mode 2016-04-10 10:34:04 +02:00
Damjan Adamic 29325ad54f [ARM] Mixers calculated just-in-time 2016-04-05 18:38:37 +02:00
Bertrand Songis a0b4053e82 [Crossfire] Now the pulses frame is encoded the same way than other Crossfire frames 2016-04-02 21:05:22 +02:00
Andre Bernet 9615c98103 Fix merge 2016-04-02 09:57:46 +04:00