Commit Graph
18111 Commits
Author SHA1 Message Date
e576925bee feat: Reduce risk of corrupt radio.yml (#1481)
* reduce risk of corrupt radio.yml #1412

Adds CRC16 checksum to radio.yml when saved.
Adds save to temporary file, folowed by rename to radio.yml
Adds check on load, with fall-back to temporary file

* Made sure that only the first read block of radio.yml is checked for the 'checksum' value.
Added checksum generation on radio.yml produced by conversion.

* Added namespace.
Github actions triggered build failed on this - compiler difference.

* Fixed typo in code not run locally.

* Made checksum result code a enum class.
Fixed null-poionter dereference bug.

* Added check and handling for radio.yml file not read (will be handled as if checksum failed)
Added evaluation of checksum when radio_new.yml is read.
Added f_unlink() calls before f_rename() to ensure the target filename does not exist.

* Added radio.yml cheksum handling to Simulator/Companion.
Cleaned radio firmware handling of checksum field up to be newline agnostic.

* Added handling of files without checksum.
- Letting files pass the check if no checksum field is present (old files) and the size is realistic (25 bytes)

* Fixed bug causing new conversion from binary if no radio.yml BUT a radio_new.yaml
is present in the filesystem.

Now the conversion is only performed if neither file exsits.

* repair rebase problems

* rerun yaml generator

* fix another rebase problem

* update text in companion to be more meaningful when the radio.yml file has a checksum error
fix wrong error message in trace

* add trigger to check radio config when leavin menu_radio

* fix: add handling for temporary and error yaml radio settings files to simu/simulator/libsimulator

* fix corner cases when comverting non crc-ed files

* chore: Tweak radio data warnings for screen sizes
- Changed the define to be a little shorter
- Added missing define for TW
- Three string lengths to suit 128, 212 and basically colorlcd

Co-authored-by: gagarinlg <malte@langermann.net>
Co-authored-by: Peter Feerick <peter.feerick@gmail.com>
2022-08-31 12:56:17 +10:00
gagarinlgandRaphael Coeffic e6697bca89 fix: center splash screen 2022-08-29 07:09:04 +02:00
Raphael CoefficandRaphael Coeffic a7335be7ec Re-added vertical 0-line for mixer monitors 2022-08-28 13:07:03 +02:00
Raphael CoefficandRaphael Coeffic 8769f49fd7 Fix mixer monitor appearance after page switch back and forth 2022-08-28 13:07:03 +02:00
Raphael CoefficandRaphael Coeffic 731d1834e3 More compact views for inputs, mixers and outputs 2022-08-28 13:07:03 +02:00
Raphael CoefficandGitHub cd211cba59 feat(color): Better color picker (#2217)
* Better color picker

* Portrait layout

* Remove obsolete ColorEdit

* Fix label clipping

* chore: Bump libopenui
2022-08-28 19:01:55 +10:00
Peter FeerickandPeter Feerick e038e4d214 fix: Change comment to reflect Mark II board 2022-08-27 19:03:05 +10:00
elecpowerandPeter Feerick f77d4d42bc Fix missing return 2022-08-27 19:03:05 +10:00
elecpowerandPeter Feerick a3bcf54cb6 Fix yaml writing pots and sliders 2022-08-27 19:03:05 +10:00
Peter FeerickandPeter Feerick 6c31b395e9 chore(cpn): Build TX12MK2 simulator 2022-08-27 19:03:05 +10:00
Peter FeerickandPeter Feerick 9cbb3cb2a8 feat(cpn): Initial TX12MK2 support 2022-08-27 19:03:05 +10:00
David PHAM-VANandGitHub dc99dd40d2 feat: Allow Lua widget to override built-in widget with same name (#2208)
* Allow CPP Widgets Override with LUA

* Reset a widget option it the type differs
2022-08-26 16:04:34 +10:00
eshifriandGitHub 4b747caff9 fix: Write model name into models.yml when duplicating model (#2224)
* Update model name in the models.yml file (#2214)

* Fix the length of the name.
2022-08-26 12:47:53 +10:00
eshifriandGitHub e97f23a305 fix(cpn): Fix full path to model notes for Simulator (#2223) 2022-08-25 14:19:52 +10:00
Raphael CoefficandPeter Feerick 3eaeb911e8 fix: set screen setup tab corresponding to current main view 2022-08-24 13:11:01 +10:00
Raphael CoefficandPeter Feerick 6b7b22e660 fix: save and load main view ID 2022-08-24 13:11:01 +10:00
Raphael CoefficandPeter Feerick 0e8f4e55b1 fix: custom curves corruption
Fixes #2204
2022-08-24 12:55:26 +10:00
HThurenandGitHub f9a59eff0d chore: More Danish translations for Companion and radio 🇩🇰 (#2225)
more translations
2022-08-24 12:46:41 +10:00
Raphael CoefficandPeter Feerick df1a146977 chore: make NOHELI the default 2022-08-23 20:37:06 +10:00
Raphael CoefficandPeter Feerick 2dee0e7b68 fix(cpn): revert macOS runner to Python 3.9 2022-08-23 20:33:41 +10:00
Peter Feerick fc7e57ef14 chore: Add to manifest in alphabetical order! 2022-08-23 16:07:32 +10:00
Peter Feerick 66eaae778d chore: Add targets for Flasher/Buddy
For the recently added BETAFPV and iFlight radios
2022-08-23 16:06:06 +10:00
8a57fa4b21 Updated Swedish translations for Companion and radio 🇸🇪 (#2222)
* Minor changes

* Major revision and addition of several missing translations

Major additions, e.g. of several missing panels and now a vast majority of Companion is translated.
Learnt a lot but took me forever, must be a better way of doing it...

* Add files via upload

* Reapply ETX boilerplate header

* `GYRO` define is no longer used

Co-authored-by: Peter Feerick <peter.feerick@gmail.com>
2022-08-21 13:35:15 +10:00
HThurenandPeter Feerick faef92c0be More Danish translations
Update da.h
2022-08-21 13:22:58 +10:00
Peter FeerickandPeter Feerick e40e7ccc68 chore: Regenerate yaml 2022-08-20 10:59:50 +10:00
Peter FeerickandPeter Feerick 1500122b12 fix: Update path and board name for fw builder 2022-08-20 10:59:50 +10:00
Peter FeerickandPeter Feerick f560805fee chore: Change LCD offset to more generic form 2022-08-20 10:59:50 +10:00
zhaobingandPeter Feerick e1ffa373e5 add LCD_HORIZONTAL_INVERT 2022-08-20 10:59:50 +10:00
Peter FeerickandPeter Feerick 0c49cde607 chore: Remove unrelated formatting 2022-08-20 10:59:50 +10:00
Raphael CoefficandPeter Feerick 5779675d2b Remove useless EEPROM_VARIANT 2022-08-20 10:59:50 +10:00
zhaobingandPeter Feerick 680087f182 Increase backlight brightness 2022-08-20 10:59:50 +10:00
zhaobingandPeter Feerick 908d5d7380 Adjust the background image of the emulator page 2022-08-20 10:59:50 +10:00
zhaobingandPeter Feerick 0219426b26 Add LR3PRO as an independent target 2022-08-20 10:59:50 +10:00
zhaobingandPeter Feerick 9d7abf78eb Add LiteRadio3_Pro target on companion and simulator 2022-08-20 10:59:50 +10:00
zhaobingandPeter Feerick 3833a209af Add BETAFPV LiteRadio 3 Pro ELRS radio 2022-08-20 10:59:50 +10:00
3djcandGitHub 6648dffc8c fix: Prevent TF lockup on radios using SDIO (#2210) 2022-08-19 15:16:27 +10:00
MichaelandGitHub 34dadf7b65 fix: Audio/haptic feedback for all hard keys except trim switches (#2201)
* Added audio/haptic feedback for all hard keys excpet trim switches.

Changed logic from application decides if feedback has to be given (was inconsistent and inefficient) to key driver detects button down and triggers immediate feedback if radio settings allowed for acoustic and/or haptic feedback (radio settings, radio setup, sound set to All)

With this change all instances of the application calling for feedback were removed in favor of the centralized approach.

This first commit also introduces a dummy function for providing feedback on key presses in boot.cpp because keys.cpp is also used as the bootloader key driver but with no logic to determine if feedback is allowed. Using a define that indicates keys.cpp is compiled for use in the bootloader would make a much nicer and backwards compatible solution.

* don't want to change libopenui so silence onKeyPress (application requests feedback) in audio.cpp

* made generation of acoustic/haptic feedback conditional on BOOT define, i.e. no feedback if keys.cpp is compiled for the bootloader

* removed onKeyPress()

* fixed crash on acoustic/haptic feedback on hard keys by restoring keys.cpp and moving logic to LvglWrapper.cpp/keyboardDriverRead().

Removed call to getWindowEvent() which would just call getEvent(false) by directly calling getEvent(false). This allowed to remove getWindowEvent() entirely as it was only used by keyboardDriverRead().

* fix: Audio header include no longer needed
2022-08-19 15:00:50 +10:00
Peter FeerickandPeter Feerick 8c228bc50f chore: Bump submodule libopenui 2022-08-18 12:38:35 +10:00
Raphael CoefficandPeter Feerick 2c4533ddbd textedit: extra_chars has been removed 2022-08-18 12:38:35 +10:00
Raphael CoefficandPeter Feerick 00630277a8 Re-add receiver ID
Fixes #2146
2022-08-18 12:38:35 +10:00
Raphael CoefficandPeter Feerick e6dc23b77f Module setup improvements 2022-08-18 12:38:35 +10:00
Raphael CoefficandPeter Feerick 647d19bbc9 Fix access settings pop-ups 2022-08-18 12:38:35 +10:00
Peter Feerick 6028c24f36 chore: Update paths in legacy build scripts 2022-08-16 20:41:09 +10:00
Peter FeerickandPeter Feerick e1ea57cb60 fix: Missing conditional for BATTERY_DIVIDER 2022-08-16 18:44:57 +10:00
Peter FeerickandPeter Feerick 0e1b430ae9 chore: Minor cleanup 2022-08-16 18:44:57 +10:00
Peter FeerickandPeter Feerick d0b693a8dc fix: Radios without RTCLOCK need tmr10ms also
Fix bug introduced in #1967 which only affects !defined(RTCLOCK) boards
2022-08-16 18:44:57 +10:00
XINGandPeter Feerick 299991bc11 Add iFlight Commando8
Add iFlight Commando8 ELRS radio
2022-08-16 18:44:57 +10:00
Peter FeerickandPeter Feerick 7800a6de42 fix: B&W needs to know about spaces as well!
Finishes #645 as model notes with `_` and `0x20`
(space) are tested for  model notes filename also.
2022-08-14 11:50:40 +10:00
Peter FeerickandPeter Feerick c088d1d2f9 chore: Use isFileAvailable instead of f_open 2022-08-14 11:50:40 +10:00
Peter FeerickandPeter Feerick 15a19e1fef fix: Use correct path for model name audio
It is expected to have `_` in the name in place of spaces.
Uncaught side-effect of #645. It now looks for `_` instead
of whitespace first, and then checks for model name with
whitespace.

Also, trigger postModelLoad() alams when changing model
for checks and playing model name.
2022-08-14 11:50:40 +10:00