Commit Graph
164 Commits
Author SHA1 Message Date
philmozandGitHub 79234ccafc chore(radio): cleanup code for isSourceAvailable functions (#5440) 2024-08-18 20:30:37 +10:00
80659c3e3f feat: add inverted sources (#4722)
Co-authored-by: elecpower <neilh713@tpg.com.au>
2024-05-25 09:25:15 +10:00
3djcandGitHub 27bef74f33 feat: only use vario sensors for vario source (#4960) 2024-05-03 20:46:56 +10:00
philmozandGitHub f28c1150ed refactor(color): use LVGL styles and objects for UI, legacy cleanup (#4407) 2024-04-05 17:33:14 +10:00
philmozandGitHub 6c5eada23a refactor: FLASH size optimisations for B&W (#4827) 2024-04-01 09:43:50 +10:00
Raphael CoefficandGitHub 317766dab7 fix(lua): Re-implement luaSetSerialBaudrate (#4501) 2024-01-03 13:29:02 +10:00
philmozandGitHub 5e97d1d59b chore: Remove unused LS_FUNC_RANGE, TimersContext (#4267) 2023-11-10 16:35:00 +10:00
b48e07026d feat: More flexible ADC inputs (#3870)
Co-authored-by: 3djc <lesitewebdejc@hotmail.com>
Co-authored-by: Peter Feerick <peter.feerick@gmail.com>
Co-authored-by: philmoz <phil.a.mitchell@gmail.com>
2023-11-02 11:07:53 +10:00
3djcandGitHub f4f04c1827 feat: Support for MPM DSM clone mode (#3974) 2023-10-10 13:04:52 +10:00
MichaelandGitHub 73a4a2387e chore: Remove legacy UI for telemetry type (#3782)
* CPN and radio: removed legacy UI for telemetry type

* CPN and radio: removed legacy UI for telemetry type
2023-09-07 21:10:16 +10:00
3djcandGitHub 78aa381464 fix(radio): YAML timer handling (#3949)
* fix: YAML timer handling

* chore: improve YAML set timer handling

* chore: improve timer handling

* feat: only offer defined timer for set and reset functions

* feat: only offer defined timer for set and reset functions (bw)

* chore: cosmetics
2023-08-28 20:02:03 +10:00
8325f722c4 feat: Remove MPM "No Telemetry" option on non-FrSky radio (#3637)
* Remove MPM no telemetry GUI on non FrSky radio

* chore: bw212 may not always be frsky

---------

Co-authored-by: Peter Feerick <peter.feerick@gmail.com>
2023-07-16 14:46:22 +10:00
43db9c8ceb feat(bw): Change layout of telemetry page on B&W radios to match color layout (#3770)
* Improve telemetry sensors view

* Improve telemetry sensors view (212)

* Remove undue TRACES

* COLORLCD compilation fix

* chore: Quit your no EoF newline whining Github!

---------

Co-authored-by: Phil Mitchell <phil.a.mitchell@gmail.com>
2023-07-07 10:56:34 +10:00
3djcandGitHub 8f0ad3fca8 fix: Allow compile without multimodule support (#3750) 2023-07-03 19:07:02 +10:00
Raphael CoefficandMalte Langermann 2b100e0eb5 refact: ADC, switches and keys
Add "hardware_defs" target to dump hardware defines from hal.h per target

Fixed hal.h definitions for switches & ADC inputs

Tools to generate hardware definitions from current hal.h

generator: add support for EXTx and analog switches

WiP

Add generated header to hardware_defs target

Add support for ADC input direction and index per GPIO port

Incredible: it compiles

Removed StdPeriph ADC driver

Works on QX7

Works on TX16S (VBat missing)

Switch driver using generated switches for stm32 targets

Switch driver with generated switches for simu

Use switch names from switch driver

Fixed single conversion handling

Fixed horus VBat reading

Added switch name

Fix warnings about bitfield offsets and GCC 4.4

This is caused by bitfields that cross type boundaries. In this particular case, it happens as the bitfield is not defined the same in `rtc_backup.cpp`.

Switches has already been moved to generic driver

Jitter measurement for each sample, not just for oversampled values

Moved periph clock init to the ADC driver

ADC & GPIOs.

Add switchInit() to init pins

Fix NV14 CMake

Fix taranis target

Fix NV14 (again)

Model audio files: use new interface for switch index

Fix X9-lite

Fix simu headers

Fix getSwitchName()

Add support for ADC switches

Fix switch warning YAML

Test only switches which are defined

Conversions tests for QX7 only on QX7

Fix X12S

Fix function switch names

Enable ADC periph clock before initialising channels

NV14: offset inputs for the sticks & fix switches

WiP: get rid of VSRCRAW and some more

Simu shall use normal ADC driver

fix x7

fix nv14

Fix 9x nav

fix 212x64

fix xlite

fix x9e

fix simu lib

fix unit tests

fix x7 tests

PWM stick values should be written directly into adcValues

... just like FlySky sticks.

fix x12s

fix nv14

Add some support for SPI ADC (only unit tests)

Remove `jq` usage

fix generate_yaml.py for newer libclang

fix pot config

fix stick names

Some YAML generator improvements

Max 16 Pots on COLORLCD

Fix some source names

Use 10 bits for switches to prevent overflow

Removed horus constants for switches & ADC inputs

Fix unit tests

Fix curve edit

Fix libsimulator

Fix function switches (tpro)

Refine ADC & analog API

Moved hardware definitions scripts and templates into own dir

cleanup API refine

Fix unit tests

Mixer: apply calibration only on required inputs

Place ADC switches after all other ADC inputs

Fix X12S

Remove useless TR_POTS_VSRCRAW, TR_SW_VSRCRAW, and TR_VSRCRAW

Cleanup redundant generated YAML parsers

Fixes Boxer rebase

Add boxer to generate-hw-defs.sh

Obsolete LUA exports

Add boxer ADC_DIRECTION

Split generate_hw_defs.py into multiple files

Some cleanup (+ LUA switches)

Fix AXIS definitions

Fixed translation strings declarations

Some rebase fixes

Remove some useless StdPeriph drivers

fix: set pin mode to reset state on usart deinit

fix: use canonical names for calibration data

fix: ADC driver does not care about unconfigured inputs

fix X12S ADC

Add support for ADC conversion chaining

Better X12S ADC implem

Moved X12S ADC driver to HAL/LL

Improve ADC driver separation

Fixed taranis & nv14

Moved PWM gimbals to HAL/LL

Removed useless TR_EXTRA_VSRCRAW

Fixed include guards

Small fixes

Renamed control inputs

Moved internal and external module pulse driver def to boards

Move more things to the generic_stm32 board

Remove STR_VMIXTRIMS

Added analog labels

Generate main control names

Misuse labels / short labels for main controls

Backward compatibility: sliders and legacy names

New keys driver

Let's get rid of StdPeriph headers in simu

Add jinja2 to CI workflows

Use `grep` instead of `sed`

chore: add python jinja2 oto msys setup script

Removed more static definitions and use dynamic ones instead

Fixes X9E

Fix x7 nav too

212 switch display

Fix default sliders

Removed NUM_STICKS

212 switch display working nicely

Surface radio 'stick' replacements

fix: switch, trim & rotary pin init

Remove old key drivers

Removed VKEYS

Removed ETX_FOURCC

Fixed SURFACE_NAME

Removed TR_VSWITCHES & TR_TRIMS_SWITCHES

Fix xpot switches

Store calibrated analogs in physical order

Use getSourceString in drawSource

Implement missing YAML read/write

Fix isSourceAvailableInInputs()

Fix isSourceAvailable()

Some surface fixes

Fix CLI debug

Ported colour UI of analog diagnostics to new ADC API

Small fixes

Better input mapping

Minor tpro fixes

Fix trims available

Remove TX mode choice on surface radio

Rename surface controls

Channel order alignement

Fix throttle warning

Fix checkTrims()

Fix pot config casting issue

Fix IS_SWITCH_FS()

Fixed input mapping

Fix fswitch auto-switch

Fixed storing / reading function switches in YAML

Fix enableVBatBridge() / disableVBatBridge()

Fix interesting mode conversion

Fix sources issues

Fix special funnction list

Proper function switch handling

128 GUI improvements

Fix compilation

Boxer cosmetics

128 hardware screen cosmetic

Fix TX12 switches

More switches fixes

Simplify CPU type handling

Fix flash size

Fixed page-up / page-down in libopenui
2023-06-25 14:32:39 +02:00
3djcandGitHub 285de8a08e fix: SPORT power handling UI on supported B&W radios (#3636) 2023-06-15 10:07:07 +10:00
MichaelandGitHub 04359757c4 fix: Update built-in Multi-protocol module protocol lists, single source for firmware and cpn (#3435)
* - Concentrated Multi protocol definitions into a consistent single source. Actually two .h files, one for the protocol list and names, the other for subtypes and capababilites, see comments in .h files as to why

- updated available protocols reflecting 1.3.3.20 (15+ protocols)
- fixed Companion always showing f/s and channel map options in model setup disregarding the protocol capability

* Following @pfeerick's review: changed heaeders and typos

fixed Ubuntu runtime error on assert
fixed change of Multi protocol not triggering writing yaml file

* corrected copy/paste error

* fixed FrSky index juggling

* Updated Multiprotocol database to current MPM project status (ref. MPM Multiprotos.ino)

- changed protocol name FX816 to FX
- added Flysky AFHDS2A options PPM and PPWM SBUS 16ch subtypes "PWM,SB16" and  "PPM,SB16
- added V761 option to select TOPRC
- added FX options "816" and "620"
- added FRSKYR9 option "-- 8ch"

* MPM protocol scan excludes some protocols which are not meant to be selected. For Companion and Simualtor (and for radios if there is no MPM connected) this was handled in different places with outdated information. Harmonized and centralized the handling of non-selectabale protocols into the single source for all companion, Simulator and all gui types.

* More cleanup:

- changed some MPM protocol names to the ones the MPM delivers with MPM protocol scan to harmonize names between CPN/Simulator/radio
- added XN2927DUMP and MOULDKG to the list of excluded MPM protocols just like the MPM does with MPM protocol scan
- added new option value limits and moved definitions to single source
- adapted CPN and radio to use common definitions of option values for all GUI types
- moved distributed MPM (as far as possible) to one coherent place under a single #if defined (MULTIMODULE)
- fixed option value not reset at change of protocol
- some editorial stuff

Note: There is still some work to be done on CPN GUI option values. DSM2 servo rates are hard coded, BAYANG telemetry options are only shown by index and not by text as in radio code, AFHDS2A servo update rate is shown as index too which is to no use for users.

I'll try to fix all this in the next session, but request to get rid of BAYANG telemetry options translations. It is much easier to define a common string list by using untranslated.h

* rebase due to fr.h

* resolve merge conflict with main fr.h

* more cleanup:

- deleted multiple definition of MM_RF_CUSTOM_SELECTED in favor of single source define
- bw radios: change to only allow defined protocols rather than a fixed 127 protocols

* Changes:

- magic sentinel number 0xfe as define
- add 10 NN protocol entries for future use of new MPM protocols not yet defined in ETX (still recommend timely ETX maintenance update if MPM releases new firmware)

* Changes by @elecpower:

- align field labels to radio
- change servo update frequency from combo box to spin box with edit only via up/down arrows to stop invalid values being entered via keyboard. Remove frequency list used to populate combo box as only used by Companion.
- add validation to module yaml decode checking for unsupported multi protocols and/or multi protocol sub types and if unsupported set module to OFF just to be safe.

* Changes:

- radio: added validation to module yaml decode checking for unsupported multi protocols and/or multi protocol sub types and if unsupported set module to OFF just to be safe.

* CPN: use sentinel define

* cpn: Sort multi protocols list (courtesy @elecpower)

* fixes #3480

changes:
- moved FrSky subtype defines to MultiProtoDefs.h
- updated bind_button_driver.cpp

* missed replacing one instance of setMultiProtocol()

* changes:

- editorial change
- added multi option to OMP protocol (ref #2713)

* rather go for STR_MULTI_RFTUNE because MPM manual talks about RF tune

* made XN297_DUMP selectable (available with MPM debug fw only)

* corrected merge mistakes
2023-05-22 20:07:29 +10:00
philmozandGitHub ebef94d993 feat(color): More compact Flight Mode list and edit views (#3344)
* Flight mode list and edit changes:
- Update trim ranges in Companion to match radio.
- Move trims setup to main edit view instead of dialog popup.
- Show/edit current trim value for each trim (if enabled)

* Show flight mode list view like logical switches.

* Update FM trim values in edit window if trim is changed (via trim switch).

* Use styles for layout

* Remove grid layouts - use flex flow as it is faster.

* Speed up page build time.
Reduces build time on TX16S Mk2 from ~320ms to ~25ms.

* Fix touch screen events.
2023-03-27 11:43:44 +10:00
Raphael CoefficandGitHub 57bf180a9b feat(mpm): remove FrSky special treatment madness (#3032) 2023-01-26 11:44:46 +10:00
e90cd0f440 feat(X10/X12S) Int/Ext Antenna UI (#1765)
* feature(colorlcd): antenna selection

* fix: let's assume all internal XJT modules used in horus targets are either X10 or X12S type

* fix NV14 compilation

Co-authored-by: Raphael Coeffic <raphael.coeffic@frafos.com>
2022-10-11 21:48:46 +10:00
Raphael CoefficandRaphael Coeffic ee0c37157d Remove legacy fonts and make the bootloader compile with LVGL 2022-06-11 15:38:08 +02:00
Raphael CoefficandRaphael Coeffic 7922afd9ca Implemented proper logic for number of channels (incl. start channel) 2022-03-24 10:40:17 +01:00
Raphael CoefficandRaphael Coeffic 9e40aaa215 Stdlcd UI for Lemon-Rx DSMP 2022-03-24 10:40:17 +01:00
Raphael CoefficandRaphael Coeffic 86d1ca4364 Reorganize module type/subType/rfProtocol 2022-03-24 10:40:17 +01:00
Raphael Coeffic 074a141d81 UI improvements 2022-03-20 16:30:58 +01:00
Raphael Coeffic b5779f2a6a More generic serial port config 2022-03-20 16:30:58 +01:00
Štěpán DaleckýandRaphael Coeffic 77386e6391 IRC Ghost 12 bit support 2022-01-22 13:43:30 +01:00
Raphael CoefficandPeter Feerick dc102f7d03 Remove FLEX options (and make it default) 2021-11-28 21:03:59 +10:00
Raphael CoefficandRaphael Coeffic daf8bae8e4 Added support for internal module config in stdlcd UI in radio hardware 2021-11-25 12:10:16 +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 Coeffic ba906e1d5d [color] Dynamic MPM proto list 2021-09-11 11:10:00 +02:00
Raphael Coeffic 8266948e09 Use static table to determine the existence of channel mapping option 2021-07-19 13:18:13 +02:00
Raphael Coeffic 36bddfb8d2 [color] MPM options: use static options rather than the dynamic ones
This is necessary until a broader solution is found to display real-time info coming from the MPM.
2021-07-19 13:10:53 +02:00
Raphael CoefficandGitHub adde1160b4 [color] enable insta trim on all views (#347)
* [color] enable insta trim on all views

Resolves #342

* Removed warning for colorlcd
2021-06-27 12:28:42 +02:00
Raphael CoefficandRaphael Coeffic b429855675 Fixed editName() 212x64 2021-06-05 20:29:09 +02:00
Raphael Coeffic 2f5b522413 Merge branch '2.3' into 2.4 2021-05-16 12:55:21 +02:00
Raphael CoefficandRaphael Coeffic fcf9683f2d NAVIGATION_HORUS does not exist anymore
Use COLORLCD instead.
2021-05-06 12:55:59 +02:00
3djc 70d24506da Merge branch '2.3' into 2.4
# Conflicts:
#	radio/src/fonts/480x272/font_dblsize.png
#	radio/src/fonts/480x272/font_xxlsize.png
#	radio/src/gui/128x64/model_setup.cpp
#	radio/src/gui/128x64/radio_setup.cpp
#	radio/src/gui/480x272/model_receiver_options.cpp
#	radio/src/gui/480x272/model_setup.cpp
#	radio/src/gui/480x272/radio_calibration.cpp
#	radio/src/gui/480x272/radio_hardware.cpp
#	radio/src/gui/common/stdlcd/draw_functions.cpp
#	radio/src/gui/gui_common.cpp
#	radio/src/keys.h
#	radio/src/lua/interface.cpp
#	radio/src/pulses/afhds3.h
#	radio/src/rtos.h
#	radio/src/switches.cpp
#	radio/src/targets/common/arm/stm32/aux_serial_driver.cpp
#	radio/src/targets/horus/CMakeLists.txt
#	radio/src/targets/horus/lcd_driver.cpp
#	radio/src/targets/horus/startup_stm32f42_43xxx.s
#	radio/src/targets/taranis/CMakeLists.txt
#	radio/src/telemetry/crossfire.h
#	radio/src/telemetry/multi.cpp
#	radio/src/translations.cpp
#	radio/src/translations/it.h.txt
#	radio/src/translations/untranslated.h
#	radio/util/font2png.py
#	tools/commit-tests.sh
2021-04-08 11:42:28 +02:00
Bertrand Songis 5d131093ef Merge with latest 2.3 2021-04-06 09:40:48 +02:00
3djc 84387e7e0f Cosmetics 2021-04-05 11:16:17 +02:00
3djc e3082756c9 Merge branch '2.3' into 3djc/2.3-synced 2021-03-14 10:51:46 +01:00
3djc 71d3f19249 Cosmetcis 2021-02-25 16:17:51 +01:00
3djc 10dadf1f78 Multi : improve options support part 1 2021-02-21 12:25:47 +01:00
Bertrand Songis d418f687cf Compilation fixes 2021-02-02 10:08:17 +01:00
Bertrand Songis 8635f1521f Compilation fixes 2021-02-02 08:55:05 +01:00
Bertrand Songis 72feef3911 All my comments from the PR fixed. Still missing the Companion part 2021-02-01 23:02:52 +01:00
WismyYao baa63a5424 add checkbox for racing mode 2021-01-30 15:15:29 +08:00
WismyYao 744bcab0b9 enter racing mode by spec function 2021-01-30 13:39:09 +08:00
Bertrand Songis a02bf3aa0c Merge with latest 2.3 2021-01-12 17:16:15 +01:00
3djc 885bd9ceb9 Merge branch 'mixer-scheduler-squash-rebase' into 3djc/2.3-synced 2020-12-21 19:33:07 +01:00