Commit Graph
359 Commits
Author SHA1 Message Date
Malte LangermannandGitHub 8d91c0ae95 chore: Convert simu/simulator/companion to SDL2 (#3085)
* chore(pc): convert simu/simulator/companion to use SDL2

* switch companion builds to SDL2 - OSX is not converted
the linux change is done a bit hacky, it should be done by updating the EdgeTX docker container

* update build system setup scripts

* add compatibility for old and new SDL2 cmake integration

* fix windows installer

* fix simulator audio on windows by using DirectSound vie SDL2

* fix windows audio with SDL2
enable simu for windows builds

* remove workflow changes for linux builds, this needs to be fixed in the build environment

* fix OSX build, thx @pafleraf

* fix windows audio for companion and simulator with SDL2

* select SDL2 branch of the build-docker environment

* Revert "select SDL2 branch of the build-docker environment"

This reverts commit da801609d78e1aed513ad7d9d8ab3ebded2900b9.

* fix tests with SDL2
2023-02-22 20:32:51 +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
3djcandGitHub 8ee73a5800 fix(lua): Remove faulty carryTrim, replace with trimSource (#2995)
* Fix carryTrim in LUA

* Remove carryTrim
2023-01-15 11:54:57 +10:00
Raphael CoefficandGitHub f9bac7ba9b chore: Remove support for binary storage format (#2900) 2022-12-23 13:05:57 +10:00
Raphael CoefficandGitHub 06c359f096 feat(ACCESS): Configure AUX serial port as "External module" (#2562)
* Enable RX DMA on external module USART

* feat(ACCESS): configure AUX serial port as "External module" (#2562)

This allows configuring the external access mod on runtime rather than by compilation option.

* fix: fetch external module driver
2022-12-14 18:41:32 +10:00
Raphael CoefficandGitHub 48be7c263b chore(cmake): CMake cleanup and simplifications (#2620)
* CMake cleanup and simplifications

* Position Independent Code is need for radiolib_native

* Some more cleanup & repair

* Fix SIMU_SRC scope issue

* fix: avoid warnings due to assembler statements from StdPeriph on arm64 native
2022-12-12 13:58:27 +10:00
Raphael CoefficandGitHub 6ea408230c fix(telemetry): set warning/critical to default values before reading YAML (#2643)
Otherwise, these values will be 0 if either the old or the new tags are not present, which is the case when coming from 2.7.
2022-10-31 10:38:15 +10:00
RistoGitHubNiel Horne (elecpower), Raphael Coeffic (raphaelcoeffic) and Peter Feerick (pfeerick).
9dc4065525 feat: Add support for SpaceMouse mod (6D input knob) (#1853)
Use `-DSPACEMOUSE=YES` CMake option to activate on Horus color targets.
Co-authored-by: Niel Horne (elecpower), Raphael Coeffic (raphaelcoeffic) and Peter Feerick (pfeerick).
2022-09-18 09:23:48 +02:00
Raphael CoefficandRaphael Coeffic 03cdc879b9 X10: Fix throttle source conversion from binary format 2022-06-25 16:09:04 +02:00
Raphael CoefficandRaphael Coeffic 7de1f43bd4 updated nv14 test pictures 2022-06-11 15:38:08 +02:00
Raphael CoefficandRaphael Coeffic 88987c4c5c updated test pictures 2022-06-11 15:38:08 +02:00
Raphael CoefficandRaphael Coeffic 85b154fcc8 fix: B&W compilation 2022-06-11 15:38:08 +02:00
Raphael CoefficandRaphael Coeffic d5c737b042 Remove fake display and add extra char test to COLORLCD unit tests 2022-06-11 15:38:08 +02:00
Raphael CoefficandRaphael Coeffic 30e3ac3399 Basic utf8 support for B&W radios 2022-06-11 15:38:08 +02:00
Raphael CoefficandRaphael Coeffic 86152da85d Remove scratch buffer 2022-06-11 15:38:08 +02:00
Raphael CoefficandRaphael Coeffic b40441f0c0 WiP: remove legacy fonts 2022-06-11 15:38:08 +02:00
Peter FeerickandGitHub 0fabd8c601 build(cmake): Allow spliting of toolchains, which will help with multi-platform support
CMake: Use ExternalProject_Add() to split by toolchain

Splits targets between native and cross-compiled targets, provides a cleaner solution to problems raised by compiling for example on Apple silicon, and better managing dependencies by allowing for object libraries in a cleaner way.
2022-04-24 10:29:31 +10:00
d9b51f8ecf feat: Deadzone option for NV14 sticks (#1777)
Imported from open-flysky/Flysky-OpenTX-Test-Branch

* companion: Don't nuke `stickDeadZone` setting

* Implement data storage properly

* Add missing check for NV14 storage struct sizes

* Formatting

* Use one less byte in the packed data struct
Thanks @raphaelcoeffic :)

* Move setting of stickDeadZone default

* Use a Choice combo rather than NumberEdit

* Good riddance magic number

* Also set default stick zone if setting is missing

* Teach tests about `STICK_DEAD_ZONE`

* Tweak choice width

* Cpn NV14 add stick dead zone to hardware and section labels

* Cpn NV14 align default pot names to radio

Co-authored-by: elecpower <neilh713@tpg.com.au>
2022-04-06 10:30:20 +10:00
Raphael Coeffic baa4f65d9b Use ExternalPoject_Add() to split by toolchain 2022-04-01 08:56:25 +02:00
Raphael CoefficandRaphael Coeffic 86d1ca4364 Reorganize module type/subType/rfProtocol 2022-03-24 10:40:17 +01:00
Raphael Coeffic 4bdd7e7ea7 GPS support at runtime 2022-03-20 16:30:58 +01:00
Raphael Coeffic d9d10f2743 Fix X12S 2022-03-20 16:22:12 +01:00
Raphael Coeffic 6ac8d50c40 Fixed some more mockup drivers 2022-03-20 16:22:12 +01:00
Raphael Coeffic 3439a94aa4 Some cleanup 2022-03-20 16:22:12 +01:00
Raphael CoefficandGitHub 610326f216 Write 'semver' tag with the current firmware version (#1695)
And remove `version`/`variant`.
2022-03-20 19:18:01 +10:00
Raphael CoefficandPeter Feerick 09c49e24ee Remove SKY9X target 2022-01-29 14:40:17 +10:00
Raphael CoefficandGitHub 9c075d0a01 multi: Fix TQly & TRSS sensors not being discovered (#1480)
move the TQly & TRSS hack where it belongs
2022-01-23 11:09:46 +10:00
Raphael Coeffic 7542e75f1a Fix T8 unit tests 2021-12-17 11:24:05 +01:00
Raphael Coeffic 416084b9e0 Fix unit tests for X7 derivates 2021-12-09 09:20:01 +01:00
Raphael Coeffic 865cf06b0d Revamped switch state checking 2021-12-09 09:20:01 +01:00
jfrickmannandPeter Feerick 4d3c8d52a5 Making tests pass with new trim limits 2021-12-07 18:32:09 +10:00
Raphael Coeffic 521996df4a Fixed X10 conversion tests 2021-11-26 18:00:50 +01:00
Raphael CoefficandRaphael Coeffic d775e75e81 Patched all conversion tests 2021-11-25 12:10:16 +01:00
Raphael CoefficandRaphael Coeffic 27c0eaf05d Use loadRadioSettings() as it is sets the default module in g_eeGeneral 2021-11-25 12:10:16 +01:00
Raphael Coeffic 26c5c2b3d4 Fix GVar adjust mode 2021-11-10 11:07:04 +01:00
Raphael Coeffic ca31c275bd Fix override channel parameter 2021-11-10 11:07:04 +01:00
Raphael Coeffic 99c7dbf575 Fixed issue with logical switches 2021-11-10 11:07:04 +01:00
Raphael Coeffic 351f5d6d7a Use updated constants for some write functions as well to cope with changed data model 2021-11-10 11:07:04 +01:00
Raphael Coeffic a7ee5f593d Patch radio data version properly (just in case) 2021-11-10 11:07:04 +01:00
Raphael Coeffic 88a9b1c6d9 Fixed multi sub proto parsing 2021-11-10 11:07:03 +01:00
Raphael Coeffic a6ab29d58d Added logical switch tests 2021-11-10 11:07:03 +01:00
Raphael Coeffic 5a727ed6d1 Fix default model index 2021-11-10 11:07:03 +01:00
Raphael Coeffic 2537c7a004 Restore simulated SD path after test 2021-11-10 11:07:03 +01:00
Raphael Coeffic cc9b146713 Output widget colors as such 2021-11-10 11:07:03 +01:00
Raphael Coeffic c2056c7585 Output source option of Value & Gauge widgets in a symbolic way 2021-11-10 11:07:03 +01:00
Raphael Coeffic cc0af82506 Added draft conversion test for TX16S 2021-11-10 11:07:03 +01:00
Raphael Coeffic 288fe158ae WiP fix emergency mode 2021-11-10 11:07:03 +01:00
Raphael Coeffic 8eed123716 Even more unit tests 2021-11-10 11:07:03 +01:00
Raphael Coeffic f4ae4a6d48 More unit tests 2021-11-10 11:07:02 +01:00
Raphael Coeffic c749fd8681 X9D+ conversion unit test + fixes 2021-11-10 11:07:02 +01:00