* chores(flysky): separate AFHDS2A and AFHDS3 into 2 different module type
This should allow to remove some of the hacks added earlier.
* chore: Add some EL18 CI bits
* fix(afhds): cmake defs
* fix(ci): add el18 to commit-tests.sh
* chore(cpn): separate AFHDS2A and AFHDS3
* chore(cpn): remove binary import of afhds and legacy fxFreq field for afhds3
* fix(cpn): limit available internal afhds protocols to those supported by hardware
* chore(cpn): update Flysky int module test
* fix(cpn): compile error
* fix(cpn): afhds2a max channels
* fix: TR_MODULE_PROTOCOLS
* enh(cpn): more support for afhds2a and 3
* fix(cpn): rebase compile error
* fix(cpn): bit indexes
* fix(cpn): emi toString
* fix(cpn): limit available internal afhds protocols to those supported by hardware
* enh(cpn): add support for Flysky EL18
* fix(cpn): available protocols
* fix(cpn): rebase moduledata
* chore(cpn): add module fields to model print
* Separate AFHDS2A and AFHDS3 UI settings.
* Fix AFHDS3 conversion from old subtype value.
Fix 'Channel Range' layout on portrait LCD.
* Fix name.
---------
Co-authored-by: Peter Feerick <peter.feerick@gmail.com>
Co-authored-by: elecpower <neilh713@tpg.com.au>
Co-authored-by: Phil Mitchell <phil.a.mitchell@gmail.com>
* Fix widgets vs. sensors (TX16s/FS-IA6B FW2.8.3) and updated meaningful units.
* Updated the GPS sensors to degree unit.
* Fixed a bug in AFHDS2 Alt decoding.
* Fixed a typo.
* Update GPS sensors format.
* Change Long/Lat unit to RAW.
* Support all current timezones.
* Fix function name and calculation for timezone offset.
* Allow setting any time offset value from -12 to +14 in 15 minutes increments.
* Alternate timezone editor in Companion (from elecpower).
* Fix compiler warning.
* chore: Add the T20
* fixes#2552
- remove edit option rssiSource
- reset rssiOption to default (none) if carried over from OpenTX conversion
* deleted rssiSource functional code Companion, simulator and radio
* forgot one commented line
* Refresh UI module settings when AHFDS3 config is updated.
* Fix scroll order for module options when 'FlySky' module type selected.
Fix simulator crash issues related to FlySky module.
* Fixed UI refresh problems in UI widget ordering fix.
* Refresh config when receiver is connected.
* Disable change of bind time options when receiver is connected.
* Rename methods to better distinguish between buffer fill or actual send.
* Clean and tidy up AFHDS3 state flow.
* Implemented settings sync upon setting changes.
* Added RF power settings for IRM301/FRM303.
* Added RF power sensors for FRM303.
* Fixed config not saved and only FRM303 supports RF power settings.
* Fixed RF power command error.
* Fixed a crash for IRM301.
* Always check if port exists and return nullptr for driver.
* fix: Make Companion preserve settings *as is*
---------
Co-authored-by: Phil Mitchell <phil.a.mitchell@gmail.com>
Co-authored-by: Peter Feerick <peter.feerick@gmail.com>
Fix the Flight Pack sensor processing.
The main problem was that we expected the data to come in big-endian encoding, but in reality, the sensor send it in little-endian. This was causing the 1st byte to change much faster, and eventually move into the negative value.
Added more validations to handle little-endian values, and recognize NO-DATA scenarios
* #3368 DSM Telemetry Fixes
1. Expand constants for telemetry frame SIDs and optimize flow of processing of sensors (less CPU work)
2. Add Binary GPS
3. Add Dual Battery Sensor monitor
4. Fix bad math on some ESC sensors
5. Fix problem where ESC RPM sensor was changed from "Erpm" to "EscR".. fix it back to "Erpm" for compatibility with 2.8.x
* #3368 DSM Telemetry Fixes
1. Split long if-then-else code into more granular function.
2. fix ESC VBEC (BEC voltage)
3. Improve testing function
* RX stat (formerly known as "RSSI") labeling dependent on protocol (RSSI/dbm, Rqly/%, Sgnl/-) used for range check, multi rf tuning and low/critical warning settings pages
* chore: Bump libopenui
* removed define that was supposed to be for testing only
function getRxStatLabels(): wasting flash as inline, no need to be inlined
* removed inline on getRxStatLabels() - step 2
* introducing external MLink module telemetry as module PPM subtype
* implemented fix for sensor discovery display not showing all detected sensors (is in separate PR too)
implemented PPM subtypes in Companion
* add PPM subtype to model printer
finalize subtypes for PPM in Companion
* added logic to try to use HW UART with inverters turned off first (e.g. NV14), then, if not successfull use soft serial inverted (== uninverted data due to HW inverters on PCB)
changed start bit detection IRQ priority from 5 to the previous 0 (also in separate PR)
* extended telemetry timeout to 2s due to slow Mlink RSSI update rate
* changed the "NOTLM" sub-type texts to:
- "No Telem" for 128x64 (this is the max numbers of characters it can take)
- "No Telemetry" everything else including Companion
* Companion:
- lower case 1st charachter on PpmSubTypeStrings to ppmSubTypeStrings
- added telemetry hooks for ppmSubTypeStrings stringx
* simplified serial port initialization for MLink telemetry
* editorial change: corrected obsolete comment
* Fix the bug that some sensor values are displayed incorrectly
* Fix typos
* Fixed some units problem.
* Unit of SNR should be db and not dbm.
* Fixed Alt scaling in NV14.
* Fixed the temperature and voltage error of the FRM303 module.
* Fixed temperature data error.
---------
Co-authored-by: Richard Li <richard.li@ces.hk>
* - all telemetry sensor name definitions in one place (untranslated.h)
- all telemetry sensor name definitions follow the naming convention STR_SENSOR_<sensor>
- eliminated one redundant definition
- editorial updates to telemetry protocols code to reflect the naming convention changes
- re-introduced translations in da.h (STR_SENSOR_THROTTLE and STR_SENSOR_SPEED)
- re-introduced translation in it.h (STR_SENSOR_GPSDATETIME)
- re-introduced translation for fr.h ( STR_SENSOR_BATT)
- saved 160 Bytes of flash
* removed obsolete translation
saved 280 byte flash memory in total
* finally removed extern const char STR_MENUTEMPLATES[]; definition
adjusted da.h, fr.h, it.h local sensor name definitions to naming conventions STR_SENSOR_<senosr>
* corrected merge
removed obsolete #ifdef
* some more obsolete ones
* added TW and CN translation for TR_PERIOD and TR_INTERVAL
fixed problem in /radio/src/gui/colorlcd/fullscreen_dialog.cpp preventing builds for CZ, IT and FR languages
* 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.
* first commit for FrSky 8s Lipo Sensor
FLVS Advanced transfers up to 8 cell voltages for Cels sensor
* correcting mistake made transferring local change to PR
* complementary extension of Companion telemetry simulator to enable simulation of 8 cells
* change to allow selection of cells 7 and 8 in calculated sensor with formula Cell
* (cpn) Add bin and yml conversions and basic semantic version helper
Co-authored-by: elecpower <neilh713@tpg.com.au>
2022-09-27 20:06:26 +10:00
RistoGitHubNiel Horne (elecpower), Raphael Coeffic (raphaelcoeffic) and Peter Feerick (pfeerick).
Use `-DSPACEMOUSE=YES` CMake option to activate on Horus color targets.
Co-authored-by: Niel Horne (elecpower), Raphael Coeffic (raphaelcoeffic) and Peter Feerick (pfeerick).