Commit Graph
55 Commits
Author SHA1 Message Date
cc17046e7a feat: Flysky PL18 Support (#4105)
Co-authored-by: raphaelcoeffic <raphael.coeffic@frafos.com>
Co-authored-by: rotorman <risto.koiva@web.de>
Co-authored-by: Xy201207 <yaoxu@flysky.com>
Co-authored-by: Peter Feerick <peter.feerick@gmail.com>
2023-12-06 09:00:44 +10:00
Raphael CoefficandGitHub 5153aaeea0 refactor: IWDG driver and EM trigger (#3846) 2023-12-04 07:14:25 +10:00
c93695eeaa perf: Process CRSF telemetry by frame (#4038)
Co-authored-by: 3djc <lesitewebdejc@hotmail.com>
Co-authored-by: Peter Feerick <peter.feerick@gmail.com>
2023-10-19 13:31:30 +10:00
Raphael CoefficandGitHub ee9d50dca4 fix: Incorrect MPM module status (#4198) 2023-10-15 16:27:38 +10:00
Raphael CoefficandGitHub ff2b3ac22a fix: Internal PXX exclusive S.PORT (#3822) 2023-10-13 09:48:32 +10:00
3djcandGitHub f4f04c1827 feat: Support for MPM DSM clone mode (#3974) 2023-10-10 13:04:52 +10:00
Raphael CoefficandGitHub 3cbcc6b7bf feat: Automatic soft-serial fallback for module ports (#3823) 2023-10-07 12:23:51 +10:00
ef6316ef6c chore(radio): Move const data from RAM to FLASH. (#4098)
Co-authored-by: philmoz <phil.a.mitchell@gmail.com>
2023-09-29 10:19:06 +02:00
Raphael CoefficandGitHub 6aa1fc90c4 fix: signal polarity for soft-serial & timer based protocols (#3513)
* fix: signal polarity for soft-serial & timer based protocols

* fix: first PWM period after init
2023-05-05 19:20:29 +10:00
richardclliandGitHub f65f139f12 fix(mpm): MPM status showing invalid protocol for XK (#3369)
* Fixed the last definition.

* Upper 2 bits calculated wrong because of Frsky mess.

* fix: More Frsky defintion corrections
2023-03-22 11:29:00 +10:00
Raphael CoefficandGitHub 72193eda82 chore: New module/serial API (#3055)
* WiP: new module interface

* WiP: softserial timer DMA

* WiP: setup() and send() in one step

and remove methods specific to internal or external module

* fixes and extra port config

* horus targets

* module ports have moved

* T8 support (only internal module)

* fix nv14

* stupid GCC....

* disable BT

* remove nv14 telem driver

* remove old aux serial driver

* Move module buffers out of pulses.h

* Soft serial fixes and PXX1 support

* Fixed PPM module output

* Fixed CLI

* compilation fixes

* Ported bluetooth and flysky gimbal to new serial driver

* Re-enable soft-serial RX

* fixes and cleanup

* nv14 fixes

* Fix flysky gimbals

* Ghost module

* 16 bytes of RAM

* Remove getByte from module API

* Ghost cleanup

* fix: _half_duplex_input() must be called after usart init

* WiP

* more cleanup

* Remove board specific settings from PXX1 / PXX2 drivers

* A bit of PXX2 header cleanup

* Add support for OVER8 and ONEBIT

* Add some support for inverters (NV14 / EL18)

* Support NV14 power fixes in generic board

* Fix polarity handling

* Fix RX DMA

* Fix mixer not running

* Add soft-serial polarity control

* Quick fix for telemetry polling while module port is changed

* Fix bootloader DEBUG

* Fix MPM telemetry

* Fix pulse start

* DSM2 soft-serial fallback

* DSMP async module restart

* Fix CRSF LUA upstream

* Remove global variable telemetryProtocol

* Use HAL/LL constants

* Fix various issue with AFHDS3 and NV14/EL18 internal module

* Fixed S.PORT unit tests

* fix: update widx after writing at current index

* fix: init error condition

* Fix: possible infinite loop in _find_port()

* Add support for bidir S.PORT init

* Add support for "getLastByte" in HW serial driver

* PXX1: Add support for S.PORT based on IDLE callback

* Fix rebase error

* Fix softserial _rx_fifo_push()

* Add softserial support for waitForTxCompleted()

* Fix MPM flashing (internal / external)

* Fixed external MPM

* Activate RX DMA on internal module

Seems to work with serial passthrough without issues, at least on the L3R PRO.

* Fix softserial DMA on stdlcd F4 targets

* Add softserial support for 32bit timers (mostly TIM2)

* More precise soft-serial

* Fix MPM update using inverters & HW uart

* Raise S.PORT DMA/USART IRQ prio to achieve faster switching to input

* Remove useless delays

* Fix flashing external ELRS module

* Added a retry mechanism for FrSky S.PORT update

* Remove useless enableRx()

* External FrSky modules are all flashed via S.PORT

* Remove power management unit update

This was only used on the first batch of X-lite.
2023-02-09 19:44:32 +10:00
Raphael CoefficandGitHub 57bf180a9b feat(mpm): remove FrSky special treatment madness (#3032) 2023-01-26 11:44:46 +10:00
Raphael CoefficandRaphael Coeffic 246840f065 Moved telemetry processing to module interface 2022-08-11 12:15:46 +02:00
Raphael CoefficandRaphael Coeffic f952c5f7c7 Internal and external module buffers are now private 2022-08-11 12:15:46 +02:00
Raphael Coeffic a994fc708a WiP internal module buffer 2022-03-25 18:15:56 +01:00
Raphael CoefficandGitHub 50aeb50029 fix: Quick fix to let CRSF be used with MPM wireless trainer - limiations apply (#1724)
* Let's do some dirty hack with MPM RX

Resolves #1671

* Use the right function to sync and shutdown sync on external MPM as well
2022-03-25 12:04:15 +10:00
Raphael CoefficandRaphael Coeffic 86d1ca4364 Reorganize module type/subType/rfProtocol 2022-03-24 10:40:17 +01:00
Raphael Coeffic 530d395204 WiP 2022-03-20 16:22:14 +01:00
Raphael Coeffic 025659ac36 Add support for RX DMA 2022-03-20 16:22:14 +01:00
Raphael Coeffic 6b2139d853 Fixed module power ON/OFF 2022-03-20 16:22:13 +01:00
Raphael Coeffic a176628db6 Multi internal driver 2022-03-20 16:22:12 +01:00
Raphael Coeffic f733810c79 WiP: refactor serial ports 2022-03-20 16:22:12 +01:00
Raphael CoefficandPeter Feerick f9830e1405 Remove PPM_PIN_SERIAL 2022-01-29 14:40:17 +10:00
rotormanandRaphael Coeffic 89517d8bd8 Use ETX instead of OTX (also as a file extension). 2021-12-31 10:53:08 +01:00
rotormanandRisto fc2142ec78 Changed uniformly to EdgeTX boiler plate (also added boiler for files that were missing it). 2021-10-02 14:22:01 +02:00
Raphael CoefficandPeter Feerick f401cd4a12 [color] use own protocol counter
Overloading the frame counter causes aa race condition with the UI thread (see SEND_FAILSAFE_1S()).
2021-09-18 11:57:23 +10:00
Raphael Coeffic ba906e1d5d [color] Dynamic MPM proto list 2021-09-11 11:10:00 +02:00
Raphael Coeffic 9509569c40 [nv14] aligned telemetry signal polarity on other radios and fixed requested polarity for MPM
Resolves #590
Resolves #613
2021-08-22 17:33:37 +02:00
Raphael Coeffic 61f5babd43 [nv14] fix polarity for soft serial on PPM pin 2021-07-27 17:34:23 +02:00
3djc dfc84a9b85 Fix windows compilation 2021-05-07 10:58:39 +02:00
c06b789f5c Multi module config support (#8438)
* Multi module configuration

Co-authored-by: Pascal Langer <pascal_langer@yahoo.fr>
2021-05-05 15:46:29 +02:00
3djc 41459f180c Merge branch '2.3' into 3djc/2.3-synced 2021-02-16 18:12:56 +01:00
3djc a706622d99 Fix multi per channel failsafe 2021-01-29 14:55:57 +01:00
Raphael Coeffic 02660c763a mixer scheduler 2020-12-09 07:24:27 +01:00
3djc 4db89d5244 Fix #7997 Ext multi spectrum not starting 2020-10-07 10:33:33 +02:00
pascallangerandGitHub 200116257c Changes to allow Lua to access DSM Forward Programming (#7913) 2020-09-02 21:13:58 +02:00
3djc 50645ac8a1 Allow Spectrum analyser to start for protocol > 64 2020-07-30 10:05:27 +02:00
3djcandGitHub 044c3bbf86 Multi R9/DSM (#7804) 2020-07-08 14:55:59 +02:00
pascallangerandGitHub fa1e6f087c Graupner HoTT: full telemetry (#7627) 2020-05-30 12:11:36 +02:00
3djcandGitHub 8ae2f4f782 Multi channels naming tool (#7538)
Mostly-authored-by: Pascal Langer <planger@mathworks.com>
2020-04-22 19:23:32 +02:00
3djc dbee58bb05 Cosmetics 2020-04-14 08:34:19 +02:00
5e2fc7f1ae Multi: Enable D8, D16v1 and D16v2.1 TX clone mode (#7516)
* Clone mode

* Switch table from octal to hex

* Revert change to octal as requested by 3djc

* Changing to Cloned to please 3djc ;-)

* Minimum Multi version: 1.3.0.87

* Cosmetics

* Cosmetics

* Add cloned to X2

Co-authored-by: Pascal Langer <planger@mathworks.com>
Co-authored-by: 3djc <lesitewebdejc@hotmail.com>
2020-04-13 11:39:59 +02:00
ea11335273 D16 bind option (#7218)
D16  bind option, and several fixes that give MULTI live data priority vs OpenTX stored multi definitions

Co-authored-by: pascallanger <pascal_langer@yahoo.fr>
2019-12-27 09:42:13 +01:00
Bertrand Songis 42a59dca35 Compilation fix 2019-11-15 16:33:11 +01:00
3djcandGitHub 3a7e006635 Support new Multi 1.3 features (#7077) 2019-11-15 16:20:24 +01:00
3djcandGitHub 891c13e98d Spectrum analyser reworked (#6836)
* Spectrum analyser reworked

* Fix typo

* Cosmetics

* Cosmetics

* yet another overall look update

* T16 compilations fixes

* Various Taranis compile  fixes

* Cosmetics

* Cosmetics

* Cosmetics

* Cosmetics fixes
2019-10-10 15:42:35 +02:00
Raphael CoefficandRaphael Coeffic 6b12010473 Add T16 support
Added support for:
- T16 radio
- internal multi-protocol module.
- flashing internal and external multi-protocol modules.

Many thx to:
- goebish, for the hardware support.
- qba667, for the original patches for the internal multi-protocol support (UI and serial com).
2019-09-24 22:12:13 +02:00
3djcandBertrand Songis 7478358e86 Fix multi failsafe been inverted between hold and no pulse (#6815) 2019-09-23 10:12:58 +02:00
Bertrand Songis f1890bde27 Multiprotocol broken - Fixes #6633 2019-08-18 10:51:16 +02:00
Bertrand SongisandGitHub 4d07faa8e0 Bsongis/accst support over pxx2 (#6455)
ACCST support over PXX2
2019-05-27 17:23:17 +02:00