-
-
Notifications
You must be signed in to change notification settings - Fork 638
File updates - rc_link #523
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
WalkthroughThis pull request introduces a comprehensive set of RC link preset files for Betaflight 2025.12, adding 30+ configuration files organized by RC receiver protocol (DJI, FrSky, ELRS, TBS, Ghost, Redpine) and transmission frequency (50Hz to 1000Hz), along with a shared defaults file and multiple flight profile options (Racing, Freestyle, HD Freestyle, Cinematic, Ultra Cinematic). Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 minutes
Possibly related PRs
Suggested reviewers
Poem
Pre-merge checks and finishing touches❌ Failed checks (1 warning, 1 inconclusive)
✅ Passed checks (1 passed)
✨ Finishing touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 3
🧹 Nitpick comments (23)
presets/2025.12/rc_link/generic/150hz_freestyle.txt (1)
8-8: Minor: Redundant phrasing in warning text.The phrase "ABSOLUTELY SURE" is redundant; consider simplifying to "SURE" for conciseness. This applies to the warning text across all preset files in this PR.
presets/2025.12/rc_link/generic/50hz_hd_freestyle.txt (1)
8-8: Minor: Redundant phrasing in warning text.Line 8 contains redundant phrasing. Consider simplifying "ABSOLUTELY SURE" to "SURE" for more concise language.
presets/2025.12/rc_link/generic/500hz_cinematic.txt (1)
8-8: Minor: Redundant phrasing in warning text.Line 8 contains redundant phrasing. Consider simplifying "ABSOLUTELY SURE" to "SURE" for consistency and clarity.
presets/2025.12/rc_link/ghost/race500.txt (1)
56-56: Minor: Consider hyphenating "Ultra Smooth Cinematic".Per style guidance, "Ultra Smooth Cinematic" may read better as "Ultra-Smooth Cinematic" in the OPTION BEGIN label.
presets/2025.12/rc_link/generic/150hz_race.txt (1)
8-8: Minor: Redundant phrasing in warning text.Line 8 contains redundant phrasing. Consider simplifying "ABSOLUTELY SURE" to "SURE" for consistency and clarity.
presets/2025.12/rc_link/generic/50hz_cinematic.txt (1)
8-8: Minor: Redundant phrasing in warning text.Line 8 contains redundant phrasing. Consider simplifying "ABSOLUTELY SURE" to "SURE" for consistency and clarity.
presets/2025.12/rc_link/generic/250hz_cinematic.txt (1)
8-8: Minor: Redundant phrasing in warning text.Line 8 contains redundant phrasing. Consider simplifying "ABSOLUTELY SURE" to "SURE" for consistency and clarity.
presets/2025.12/rc_link/generic/150hz_ultra_cinematic.txt (2)
1-1: Minor: Consider hyphenating "Ultra Cinematic".Per style guidance, "Ultra Cinematic" appears in the TITLE (line 1) and DESCRIPTION (line 7) and may read better as "Ultra-Cinematic" for consistency with hyphenation conventions.
Also applies to: 7-7
8-8: Minor: Redundant phrasing in warning text.Line 8 contains redundant phrasing. Consider simplifying "ABSOLUTELY SURE" to "SURE" for consistency and clarity.
presets/2025.12/rc_link/generic/500hz_freestyle.txt (1)
8-8: Optional: Minor text clarity improvement.The phrase "make ABSOLUTELY SURE" is redundant; consider "make SURE" for conciseness in user-facing text.
presets/2025.12/rc_link/tbs/crossfire_150hz.txt (1)
16-16: Optional: Text clarity improvement in warnings."make ABSOLUTELY SURE" is redundant; consider "make SURE" for conciseness.
presets/2025.12/rc_link/generic/500hz_race.txt (1)
8-8: Optional: Text clarity improvement."make ABSOLUTELY SURE" is redundant; consider "make SURE".
presets/2025.12/rc_link/generic/500hz_hd_freestyle.txt (1)
8-8: Optional: Text clarity improvement."make ABSOLUTELY SURE" is redundant; consider "make SURE".
presets/2025.12/rc_link/generic/150hz_hd_freestyle.txt (1)
8-8: Optional: Text clarity improvement."make ABSOLUTELY SURE" is redundant; consider "make SURE".
presets/2025.12/rc_link/generic/1000hz_race.txt (1)
8-8: Optional: Text clarity improvement."make ABSOLUTELY SURE" is redundant; consider "make SURE".
presets/2025.12/rc_link/generic/500hz_ultra_cinematic.txt (2)
1-1: Optional: Text styling improvement for consistency.Consider using hyphens: "Ultra-Cinematic" and "ultra-smooth cinematic" to match standard hyphenation for compound adjectives in user-facing text.
Also applies to: 7-7
8-8: Optional: Text clarity improvement."make ABSOLUTELY SURE" is redundant; consider "make SURE".
presets/2025.12/rc_link/generic/250hz_hd_freestyle.txt (1)
8-8: Optional: Text clarity improvement."make ABSOLUTELY SURE" is redundant; consider "make SURE".
presets/2025.12/rc_link/DJI_Normal.txt (1)
68-68: Remove trailing whitespace.Line 68 has trailing spaces after the value:
set rc_smoothing_auto_factor = 250. While not breaking functionality, remove the trailing whitespace for consistency with the rest of the preset.-set rc_smoothing_auto_factor = 250 +set rc_smoothing_auto_factor = 250presets/2025.12/rc_link/defaults.txt (1)
25-25: Add newline at end of file.For consistency with typical text file conventions, add a trailing newline after the last configuration statement.
presets/2025.12/rc_link/frsky_sbus_fport.txt (1)
71-72: Remove trailing whitespace on these lines.Lines 71-72 contain trailing spaces after numeric values that should be removed for consistency.
presets/2025.12/rc_link/elrs_50hz.txt (2)
8-8: Minor: Simplify redundant language.Line 8 uses "ABSOLUTELY SURE"—the word "ABSOLUTELY" is redundant. Consider changing to just "SURE" for conciseness.
-#$ DESCRIPTION: WARNING: make ABSOLUTELY SURE that the OpenTx or EdgeTx Hardware ADC Filter is un-checked! +#$ DESCRIPTION: WARNING: make SURE that the OpenTx or EdgeTx Hardware ADC Filter is un-checked!
52-53: Minor: Consider hyphenating compound adjectives.Lines 52-53 use "ultra smooth Cinematic"—for consistency with English style conventions, consider "ultra-smooth" when used as an attributive phrase before a noun.
-# ultra smooth Cinematic (not for racing): +# ultra-smooth Cinematic (not for racing):and
-#$ OPTION BEGIN (UNCHECKED): Ultra Cinematic +#$ OPTION BEGIN (UNCHECKED): Ultra-Cinematic
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (41)
presets/2025.12/rc_link/DJI_Normal.txt(1 hunks)presets/2025.12/rc_link/DJI_SBUS_Fast.txt(1 hunks)presets/2025.12/rc_link/defaults.txt(1 hunks)presets/2025.12/rc_link/elrs_150hz.txt(1 hunks)presets/2025.12/rc_link/elrs_250hz.txt(1 hunks)presets/2025.12/rc_link/elrs_500hz.txt(1 hunks)presets/2025.12/rc_link/elrs_50hz.txt(1 hunks)presets/2025.12/rc_link/frsky_sbus_fport.txt(1 hunks)presets/2025.12/rc_link/generic/1000hz_race.txt(1 hunks)presets/2025.12/rc_link/generic/150hz_cinematic.txt(1 hunks)presets/2025.12/rc_link/generic/150hz_freestyle.txt(1 hunks)presets/2025.12/rc_link/generic/150hz_hd_freestyle.txt(1 hunks)presets/2025.12/rc_link/generic/150hz_race.txt(1 hunks)presets/2025.12/rc_link/generic/150hz_ultra_cinematic.txt(1 hunks)presets/2025.12/rc_link/generic/250hz_cinematic.txt(1 hunks)presets/2025.12/rc_link/generic/250hz_freestyle.txt(1 hunks)presets/2025.12/rc_link/generic/250hz_hd_freestyle.txt(1 hunks)presets/2025.12/rc_link/generic/250hz_race.txt(1 hunks)presets/2025.12/rc_link/generic/250hz_ultra_cinematic.txt(1 hunks)presets/2025.12/rc_link/generic/500hz_cinematic.txt(1 hunks)presets/2025.12/rc_link/generic/500hz_freestyle.txt(1 hunks)presets/2025.12/rc_link/generic/500hz_hd_freestyle.txt(1 hunks)presets/2025.12/rc_link/generic/500hz_race.txt(1 hunks)presets/2025.12/rc_link/generic/500hz_ultra_cinematic.txt(1 hunks)presets/2025.12/rc_link/generic/50hz_cinematic.txt(1 hunks)presets/2025.12/rc_link/generic/50hz_freestyle.txt(1 hunks)presets/2025.12/rc_link/generic/50hz_hd_freestyle.txt(1 hunks)presets/2025.12/rc_link/generic/50hz_race.txt(1 hunks)presets/2025.12/rc_link/generic/50hz_ultra_cinematic.txt(1 hunks)presets/2025.12/rc_link/ghost/long_range.txt(1 hunks)presets/2025.12/rc_link/ghost/normal.txt(1 hunks)presets/2025.12/rc_link/ghost/pure_race.txt(1 hunks)presets/2025.12/rc_link/ghost/race.txt(1 hunks)presets/2025.12/rc_link/ghost/race250.txt(1 hunks)presets/2025.12/rc_link/ghost/race500.txt(1 hunks)presets/2025.12/rc_link/ghost/solid250.txt(1 hunks)presets/2025.12/rc_link/redpine_666hz.txt(1 hunks)presets/2025.12/rc_link/redpine_mpm.txt(1 hunks)presets/2025.12/rc_link/tbs/crossfire_150hz.txt(1 hunks)presets/2025.12/rc_link/tbs/crossfire_50hz.txt(1 hunks)presets/2025.12/rc_link/tbs/tracer_250hz.txt(1 hunks)
🧰 Additional context used
🧠 Learnings (4)
📓 Common learnings
Learnt from: Jaz7Mutant
Repo: betaflight/firmware-presets PR: 512
File: presets/4.5/tune/basher_jazzmutant_tune.txt:118-119
Timestamp: 2025-06-20T20:39:08.723Z
Learning: In Betaflight firmware presets, rates defaults from presets/4.3/rates/defaults.txt are used across multiple firmware versions including 4.5, as the file explicitly declares support for firmware versions 4.3, 4.4, and 4.5. There is no separate defaults.txt file in presets/4.5/rates/ directory.
Learnt from: bensonk
Repo: betaflight/firmware-presets PR: 509
File: presets/4.5/osd/bensonk.txt:138-152
Timestamp: 2025-05-25T22:26:17.328Z
Learning: BrainFPV commands in Betaflight preset files are safely ignored on non-BrainFPV flight controllers, making it safe to include them in presets even when they might be applied to different hardware.
📚 Learning: 2025-06-20T20:39:08.723Z
Learnt from: Jaz7Mutant
Repo: betaflight/firmware-presets PR: 512
File: presets/4.5/tune/basher_jazzmutant_tune.txt:118-119
Timestamp: 2025-06-20T20:39:08.723Z
Learning: In Betaflight firmware presets, rates defaults from presets/4.3/rates/defaults.txt are used across multiple firmware versions including 4.5, as the file explicitly declares support for firmware versions 4.3, 4.4, and 4.5. There is no separate defaults.txt file in presets/4.5/rates/ directory.
Applied to files:
presets/2025.12/rc_link/generic/150hz_freestyle.txtpresets/2025.12/rc_link/ghost/normal.txtpresets/2025.12/rc_link/generic/50hz_race.txtpresets/2025.12/rc_link/generic/1000hz_race.txtpresets/2025.12/rc_link/generic/250hz_cinematic.txtpresets/2025.12/rc_link/generic/500hz_race.txtpresets/2025.12/rc_link/DJI_Normal.txtpresets/2025.12/rc_link/tbs/tracer_250hz.txtpresets/2025.12/rc_link/generic/250hz_freestyle.txtpresets/2025.12/rc_link/generic/50hz_cinematic.txtpresets/2025.12/rc_link/generic/50hz_hd_freestyle.txtpresets/2025.12/rc_link/redpine_666hz.txtpresets/2025.12/rc_link/tbs/crossfire_150hz.txtpresets/2025.12/rc_link/generic/500hz_cinematic.txtpresets/2025.12/rc_link/elrs_50hz.txtpresets/2025.12/rc_link/ghost/pure_race.txtpresets/2025.12/rc_link/generic/500hz_ultra_cinematic.txtpresets/2025.12/rc_link/DJI_SBUS_Fast.txtpresets/2025.12/rc_link/generic/50hz_ultra_cinematic.txtpresets/2025.12/rc_link/generic/250hz_hd_freestyle.txtpresets/2025.12/rc_link/generic/500hz_freestyle.txtpresets/2025.12/rc_link/generic/250hz_race.txtpresets/2025.12/rc_link/generic/150hz_ultra_cinematic.txtpresets/2025.12/rc_link/tbs/crossfire_50hz.txtpresets/2025.12/rc_link/generic/150hz_race.txtpresets/2025.12/rc_link/ghost/race.txtpresets/2025.12/rc_link/elrs_150hz.txtpresets/2025.12/rc_link/elrs_250hz.txtpresets/2025.12/rc_link/ghost/long_range.txtpresets/2025.12/rc_link/generic/150hz_cinematic.txtpresets/2025.12/rc_link/ghost/race250.txtpresets/2025.12/rc_link/generic/150hz_hd_freestyle.txtpresets/2025.12/rc_link/elrs_500hz.txtpresets/2025.12/rc_link/generic/500hz_hd_freestyle.txtpresets/2025.12/rc_link/ghost/solid250.txtpresets/2025.12/rc_link/ghost/race500.txtpresets/2025.12/rc_link/frsky_sbus_fport.txtpresets/2025.12/rc_link/generic/250hz_ultra_cinematic.txtpresets/2025.12/rc_link/defaults.txtpresets/2025.12/rc_link/generic/50hz_freestyle.txtpresets/2025.12/rc_link/redpine_mpm.txt
📚 Learning: 2025-05-25T22:26:17.328Z
Learnt from: bensonk
Repo: betaflight/firmware-presets PR: 509
File: presets/4.5/osd/bensonk.txt:138-152
Timestamp: 2025-05-25T22:26:17.328Z
Learning: BrainFPV commands in Betaflight preset files are safely ignored on non-BrainFPV flight controllers, making it safe to include them in presets even when they might be applied to different hardware.
Applied to files:
presets/2025.12/rc_link/generic/150hz_freestyle.txtpresets/2025.12/rc_link/ghost/normal.txtpresets/2025.12/rc_link/generic/1000hz_race.txtpresets/2025.12/rc_link/DJI_Normal.txtpresets/2025.12/rc_link/tbs/tracer_250hz.txtpresets/2025.12/rc_link/generic/250hz_freestyle.txtpresets/2025.12/rc_link/generic/50hz_hd_freestyle.txtpresets/2025.12/rc_link/redpine_666hz.txtpresets/2025.12/rc_link/tbs/crossfire_150hz.txtpresets/2025.12/rc_link/elrs_50hz.txtpresets/2025.12/rc_link/ghost/pure_race.txtpresets/2025.12/rc_link/DJI_SBUS_Fast.txtpresets/2025.12/rc_link/generic/250hz_hd_freestyle.txtpresets/2025.12/rc_link/generic/500hz_freestyle.txtpresets/2025.12/rc_link/generic/250hz_race.txtpresets/2025.12/rc_link/generic/150hz_ultra_cinematic.txtpresets/2025.12/rc_link/tbs/crossfire_50hz.txtpresets/2025.12/rc_link/generic/150hz_race.txtpresets/2025.12/rc_link/ghost/race.txtpresets/2025.12/rc_link/elrs_150hz.txtpresets/2025.12/rc_link/elrs_250hz.txtpresets/2025.12/rc_link/ghost/long_range.txtpresets/2025.12/rc_link/generic/150hz_cinematic.txtpresets/2025.12/rc_link/ghost/race250.txtpresets/2025.12/rc_link/generic/150hz_hd_freestyle.txtpresets/2025.12/rc_link/elrs_500hz.txtpresets/2025.12/rc_link/generic/500hz_hd_freestyle.txtpresets/2025.12/rc_link/ghost/solid250.txtpresets/2025.12/rc_link/ghost/race500.txtpresets/2025.12/rc_link/frsky_sbus_fport.txtpresets/2025.12/rc_link/defaults.txtpresets/2025.12/rc_link/generic/50hz_freestyle.txtpresets/2025.12/rc_link/redpine_mpm.txt
📚 Learning: 2025-06-20T18:08:54.334Z
Learnt from: Jaz7Mutant
Repo: betaflight/firmware-presets PR: 512
File: presets/4.5/tune/basher_jazzmutant_tune.txt:1-8
Timestamp: 2025-06-20T18:08:54.334Z
Learning: In Betaflight firmware preset files, embedded double quotes in metadata fields like TITLE and KEYWORDS (e.g., `5"`, `3" to 5"`, `8"/9"`) are standard and do not need escaping. The preset parser handles this syntax correctly as evidenced by widespread usage throughout the codebase.
Applied to files:
presets/2025.12/rc_link/generic/150hz_freestyle.txtpresets/2025.12/rc_link/generic/1000hz_race.txtpresets/2025.12/rc_link/tbs/tracer_250hz.txtpresets/2025.12/rc_link/generic/250hz_freestyle.txtpresets/2025.12/rc_link/generic/50hz_hd_freestyle.txtpresets/2025.12/rc_link/tbs/crossfire_150hz.txtpresets/2025.12/rc_link/elrs_50hz.txtpresets/2025.12/rc_link/ghost/pure_race.txtpresets/2025.12/rc_link/DJI_SBUS_Fast.txtpresets/2025.12/rc_link/generic/250hz_hd_freestyle.txtpresets/2025.12/rc_link/generic/500hz_freestyle.txtpresets/2025.12/rc_link/generic/150hz_ultra_cinematic.txtpresets/2025.12/rc_link/tbs/crossfire_50hz.txtpresets/2025.12/rc_link/elrs_150hz.txtpresets/2025.12/rc_link/elrs_250hz.txtpresets/2025.12/rc_link/generic/150hz_cinematic.txtpresets/2025.12/rc_link/ghost/race250.txtpresets/2025.12/rc_link/generic/150hz_hd_freestyle.txtpresets/2025.12/rc_link/generic/500hz_hd_freestyle.txtpresets/2025.12/rc_link/ghost/solid250.txtpresets/2025.12/rc_link/ghost/race500.txtpresets/2025.12/rc_link/frsky_sbus_fport.txtpresets/2025.12/rc_link/defaults.txtpresets/2025.12/rc_link/generic/50hz_freestyle.txtpresets/2025.12/rc_link/redpine_mpm.txt
🪛 LanguageTool
presets/2025.12/rc_link/generic/150hz_freestyle.txt
[style] ~8-~8: This phrase is redundant. Consider writing “SURE”.
Context: ... RC link. #$ DESCRIPTION: WARNING: make ABSOLUTELY SURE that the OpenTx or EdgeTx Hardware ADC ...
(ABSOLUTELY_SURE)
presets/2025.12/rc_link/ghost/normal.txt
[uncategorized] ~57-~57: This expression is usually spelled with a hyphen.
Context: ...PTION END #$ OPTION BEGIN (UNCHECKED): Ultra Smooth Cinematic #$ INCLUDE: presets/2025....
(ULTRA_HYPHEN)
presets/2025.12/rc_link/generic/50hz_race.txt
[style] ~8-~8: This phrase is redundant. Consider writing “SURE”.
Context: ... RC link. #$ DESCRIPTION: WARNING: make ABSOLUTELY SURE that the OpenTx or EdgeTx Hardware ADC ...
(ABSOLUTELY_SURE)
presets/2025.12/rc_link/generic/1000hz_race.txt
[style] ~8-~8: This phrase is redundant. Consider writing “SURE”.
Context: ...or 4.4.1+ #$ DESCRIPTION: WARNING: make ABSOLUTELY SURE that the OpenTx or EdgeTx Hardware ADC ...
(ABSOLUTELY_SURE)
presets/2025.12/rc_link/generic/250hz_cinematic.txt
[style] ~8-~8: This phrase is redundant. Consider writing “SURE”.
Context: ... RC link. #$ DESCRIPTION: WARNING: make ABSOLUTELY SURE that the OpenTx or EdgeTx Hardware ADC ...
(ABSOLUTELY_SURE)
presets/2025.12/rc_link/generic/500hz_race.txt
[style] ~8-~8: This phrase is redundant. Consider writing “SURE”.
Context: ... RC link. #$ DESCRIPTION: WARNING: make ABSOLUTELY SURE that the OpenTx or EdgeTx Hardware ADC ...
(ABSOLUTELY_SURE)
presets/2025.12/rc_link/DJI_Normal.txt
[misspelling] ~6-~6: Possible spelling mistake found.
Context: ... link, transmitter #$ AUTHOR: UAV Tech (Mark Spatz) #$ PARSER: MARKED #$ DESCRIPTION: In...
(EN_MULTITOKEN_SPELLING_TWO)
presets/2025.12/rc_link/tbs/tracer_250hz.txt
[uncategorized] ~51-~51: This expression is usually spelled with a hyphen.
Context: ...PTION END #$ OPTION BEGIN (UNCHECKED): Ultra Smooth Cinematic #$ INCLUDE: presets/2025....
(ULTRA_HYPHEN)
presets/2025.12/rc_link/generic/250hz_freestyle.txt
[style] ~8-~8: This phrase is redundant. Consider writing “SURE”.
Context: ... RC link. #$ DESCRIPTION: WARNING: make ABSOLUTELY SURE that the OpenTx or EdgeTx Hardware ADC ...
(ABSOLUTELY_SURE)
presets/2025.12/rc_link/generic/50hz_cinematic.txt
[style] ~8-~8: This phrase is redundant. Consider writing “SURE”.
Context: ... RC link. #$ DESCRIPTION: WARNING: make ABSOLUTELY SURE that the OpenTx or EdgeTx Hardware ADC ...
(ABSOLUTELY_SURE)
presets/2025.12/rc_link/generic/50hz_hd_freestyle.txt
[style] ~8-~8: This phrase is redundant. Consider writing “SURE”.
Context: ... RC link. #$ DESCRIPTION: WARNING: make ABSOLUTELY SURE that the OpenTx or EdgeTx Hardware ADC ...
(ABSOLUTELY_SURE)
presets/2025.12/rc_link/redpine_666hz.txt
[uncategorized] ~35-~35: It appears that a hyphen is missing (if ‘auto’ is not used in the context of ‘cars’).
Context: ...throttle = 25 #$ OPTION END # at 500hz auto smoothing of 150 is close to 60hz: #$ OPTION BEGI...
(AUTO_HYPHEN)
[uncategorized] ~60-~60: This expression is usually spelled with a hyphen.
Context: ...g_throttle_cutoff = 20 #$ OPTION END # ultra smooth Cinematic (not for racing): #$ OPTION B...
(ULTRA_HYPHEN)
[uncategorized] ~61-~61: This expression is usually spelled with a hyphen.
Context: ...r racing): #$ OPTION BEGIN (UNCHECKED): Ultra Cinematic set feedforward_averaging = 3_POINT set...
(ULTRA_HYPHEN)
presets/2025.12/rc_link/tbs/crossfire_150hz.txt
[uncategorized] ~52-~52: This expression is usually spelled with a hyphen.
Context: ...PTION END #$ OPTION BEGIN (UNCHECKED): Ultra Smooth Cinematic #$ INCLUDE: presets/2025....
(ULTRA_HYPHEN)
presets/2025.12/rc_link/generic/500hz_cinematic.txt
[style] ~8-~8: This phrase is redundant. Consider writing “SURE”.
Context: ... RC link. #$ DESCRIPTION: WARNING: make ABSOLUTELY SURE that the OpenTx or EdgeTx Hardware ADC ...
(ABSOLUTELY_SURE)
presets/2025.12/rc_link/elrs_50hz.txt
[style] ~8-~8: This phrase is redundant. Consider writing “SURE”.
Context: ...via CRSF. #$ DESCRIPTION: WARNING: make ABSOLUTELY SURE that the OpenTx or EdgeTx Hardware ADC ...
(ABSOLUTELY_SURE)
[grammar] ~16-~16: It seems that “to” is missing before the verb.
Context: ...gs in case no tuning option is selected set feedforward_averaging = OFF set feedfor...
(MISSING_TO_BETWEEN_BE_AND_VB)
[uncategorized] ~52-~52: This expression is usually spelled with a hyphen.
Context: ...g_throttle_cutoff = 20 #$ OPTION END # ultra smooth Cinematic (not for racing): #$ OPTION B...
(ULTRA_HYPHEN)
[uncategorized] ~53-~53: This expression is usually spelled with a hyphen.
Context: ...r racing): #$ OPTION BEGIN (UNCHECKED): Ultra Cinematic set feedforward_smooth_factor = 40 set ...
(ULTRA_HYPHEN)
presets/2025.12/rc_link/ghost/pure_race.txt
[uncategorized] ~56-~56: This expression is usually spelled with a hyphen.
Context: ...PTION END #$ OPTION BEGIN (UNCHECKED): Ultra Smooth Cinematic #$ INCLUDE: presets/2025....
(ULTRA_HYPHEN)
presets/2025.12/rc_link/generic/500hz_ultra_cinematic.txt
[uncategorized] ~1-~1: This expression is usually spelled with a hyphen.
Context: #$ TITLE: Generic 500Hz Ultra Cinematic #$ FIRMWARE_VERSION: 2025.12 #$ CATEGOR...
(ULTRA_HYPHEN)
[uncategorized] ~7-~7: This expression is usually spelled with a hyphen.
Context: ...SCRIPTION: Generic RC link settings for ultra smooth cinematic flying with 500Hz RC link. #$...
(ULTRA_HYPHEN)
[style] ~8-~8: This phrase is redundant. Consider writing “SURE”.
Context: ... RC link. #$ DESCRIPTION: WARNING: make ABSOLUTELY SURE that the OpenTx or EdgeTx Hardware ADC ...
(ABSOLUTELY_SURE)
presets/2025.12/rc_link/DJI_SBUS_Fast.txt
[misspelling] ~6-~6: Possible spelling mistake found.
Context: ...c, link, SBUS fast #$ AUTHOR: UAV Tech (Mark Spatz) #$ PARSER: MARKED #$ DESCRIPTION: In...
(EN_MULTITOKEN_SPELLING_TWO)
presets/2025.12/rc_link/generic/50hz_ultra_cinematic.txt
[uncategorized] ~1-~1: This expression is usually spelled with a hyphen.
Context: #$ TITLE: Generic 50Hz Ultra Cinematic #$ FIRMWARE_VERSION: 2025.12 #$ CATEGOR...
(ULTRA_HYPHEN)
[uncategorized] ~7-~7: This expression is usually spelled with a hyphen.
Context: ...SCRIPTION: Generic RC link settings for ultra smooth cinematic flying with 50Hz RC link. #$ ...
(ULTRA_HYPHEN)
[style] ~8-~8: This phrase is redundant. Consider writing “SURE”.
Context: ... RC link. #$ DESCRIPTION: WARNING: make ABSOLUTELY SURE that the OpenTx or EdgeTx Hardware ADC ...
(ABSOLUTELY_SURE)
presets/2025.12/rc_link/generic/250hz_hd_freestyle.txt
[style] ~8-~8: This phrase is redundant. Consider writing “SURE”.
Context: ... RC link. #$ DESCRIPTION: WARNING: make ABSOLUTELY SURE that the OpenTx or EdgeTx Hardware ADC ...
(ABSOLUTELY_SURE)
presets/2025.12/rc_link/generic/500hz_freestyle.txt
[style] ~8-~8: This phrase is redundant. Consider writing “SURE”.
Context: ... RC link. #$ DESCRIPTION: WARNING: make ABSOLUTELY SURE that the OpenTx or EdgeTx Hardware ADC ...
(ABSOLUTELY_SURE)
presets/2025.12/rc_link/generic/250hz_race.txt
[style] ~8-~8: This phrase is redundant. Consider writing “SURE”.
Context: ... RC link. #$ DESCRIPTION: WARNING: make ABSOLUTELY SURE that the OpenTx or EdgeTx Hardware ADC ...
(ABSOLUTELY_SURE)
presets/2025.12/rc_link/generic/150hz_ultra_cinematic.txt
[uncategorized] ~1-~1: This expression is usually spelled with a hyphen.
Context: #$ TITLE: Generic 150Hz Ultra Cinematic #$ FIRMWARE_VERSION: 2025.12 #$ CATEGOR...
(ULTRA_HYPHEN)
[uncategorized] ~7-~7: This expression is usually spelled with a hyphen.
Context: ...SCRIPTION: Generic RC link settings for ultra smooth cinematic with 150Hz RC link. #$ DESCRI...
(ULTRA_HYPHEN)
[style] ~8-~8: This phrase is redundant. Consider writing “SURE”.
Context: ... RC link. #$ DESCRIPTION: WARNING: make ABSOLUTELY SURE that the OpenTx or EdgeTx Hardware ADC ...
(ABSOLUTELY_SURE)
presets/2025.12/rc_link/tbs/crossfire_50hz.txt
[uncategorized] ~53-~53: This expression is usually spelled with a hyphen.
Context: ...PTION END #$ OPTION BEGIN (UNCHECKED): Ultra Smooth Cinematic #$ INCLUDE: presets/2025....
(ULTRA_HYPHEN)
presets/2025.12/rc_link/generic/150hz_race.txt
[style] ~8-~8: This phrase is redundant. Consider writing “SURE”.
Context: ... RC link. #$ DESCRIPTION: WARNING: make ABSOLUTELY SURE that the OpenTx or EdgeTx Hardware ADC ...
(ABSOLUTELY_SURE)
presets/2025.12/rc_link/ghost/race.txt
[uncategorized] ~55-~55: This expression is usually spelled with a hyphen.
Context: ...PTION END #$ OPTION BEGIN (UNCHECKED): Ultra Smooth Cinematic #$ INCLUDE: presets/2025....
(ULTRA_HYPHEN)
presets/2025.12/rc_link/elrs_150hz.txt
[style] ~8-~8: This phrase is redundant. Consider writing “SURE”.
Context: ...via CRSF. #$ DESCRIPTION: WARNING: make ABSOLUTELY SURE that the OpenTx or EdgeTx Hardware ADC ...
(ABSOLUTELY_SURE)
[grammar] ~16-~16: It seems that “to” is missing before the verb.
Context: ...gs in case no tuning option is selected set feedforward_averaging = OFF set feedfor...
(MISSING_TO_BETWEEN_BE_AND_VB)
[uncategorized] ~54-~54: This expression is usually spelled with a hyphen.
Context: ...g_throttle_cutoff = 20 #$ OPTION END # ultra smooth Cinematic (not for racing): #$ OPTION B...
(ULTRA_HYPHEN)
[uncategorized] ~55-~55: This expression is usually spelled with a hyphen.
Context: ...r racing): #$ OPTION BEGIN (UNCHECKED): Ultra Cinematic set feedforward_smooth_factor = 40 set ...
(ULTRA_HYPHEN)
presets/2025.12/rc_link/elrs_250hz.txt
[style] ~8-~8: This phrase is redundant. Consider writing “SURE”.
Context: ...via CRSF. #$ DESCRIPTION: WARNING: make ABSOLUTELY SURE that the OpenTx or EdgeTx Hardware ADC ...
(ABSOLUTELY_SURE)
[uncategorized] ~32-~32: It appears that a hyphen is missing (if ‘auto’ is not used in the context of ‘cars’).
Context: ...tle = 25 #$ OPTION END # for freestyle auto smoothing of 52 is about 60hz: #$ OPTION BEGIN (U...
(AUTO_HYPHEN)
[uncategorized] ~56-~56: This expression is usually spelled with a hyphen.
Context: ...g_throttle_cutoff = 20 #$ OPTION END # ultra smooth Cinematic (not for racing): #$ OPTION B...
(ULTRA_HYPHEN)
[uncategorized] ~57-~57: This expression is usually spelled with a hyphen.
Context: ...r racing): #$ OPTION BEGIN (UNCHECKED): Ultra Cinematic set feedforward_smooth_factor = 65 set ...
(ULTRA_HYPHEN)
presets/2025.12/rc_link/ghost/long_range.txt
[uncategorized] ~13-~13: If this is a compound adjective that modifies the following noun, use a hyphen.
Context: ...5Hz)**. #$ DESCRIPTION: #$ DESCRIPTION: Long Range mode: For the extreme stuff, crazy rang...
(EN_COMPOUND_ADJECTIVE_INTERNAL)
presets/2025.12/rc_link/generic/150hz_cinematic.txt
[style] ~8-~8: This phrase is redundant. Consider writing “SURE”.
Context: ... RC link. #$ DESCRIPTION: WARNING: make ABSOLUTELY SURE that the OpenTx or EdgeTx Hardware ADC ...
(ABSOLUTELY_SURE)
presets/2025.12/rc_link/ghost/race250.txt
[uncategorized] ~56-~56: This expression is usually spelled with a hyphen.
Context: ...PTION END #$ OPTION BEGIN (UNCHECKED): Ultra Smooth Cinematic #$ INCLUDE: presets/2025....
(ULTRA_HYPHEN)
presets/2025.12/rc_link/generic/150hz_hd_freestyle.txt
[style] ~8-~8: This phrase is redundant. Consider writing “SURE”.
Context: ... RC link. #$ DESCRIPTION: WARNING: make ABSOLUTELY SURE that the OpenTx or EdgeTx Hardware ADC ...
(ABSOLUTELY_SURE)
presets/2025.12/rc_link/elrs_500hz.txt
[style] ~8-~8: This phrase is redundant. Consider writing “SURE”.
Context: ...via CRSF. #$ DESCRIPTION: WARNING: make ABSOLUTELY SURE that the OpenTx or EdgeTx Hardware ADC ...
(ABSOLUTELY_SURE)
[uncategorized] ~33-~33: It appears that a hyphen is missing (if ‘auto’ is not used in the context of ‘cars’).
Context: ...throttle = 25 #$ OPTION END # at 500hz auto smoothing of 120 is close to 60hz: #$ OPTION BEGI...
(AUTO_HYPHEN)
[uncategorized] ~57-~57: This expression is usually spelled with a hyphen.
Context: ...g_throttle_cutoff = 20 #$ OPTION END # ultra smooth Cinematic (not for racing): #$ OPTION B...
(ULTRA_HYPHEN)
[uncategorized] ~58-~58: This expression is usually spelled with a hyphen.
Context: ...r racing): #$ OPTION BEGIN (UNCHECKED): Ultra Cinematic set feedforward_smooth_factor = 75 set ...
(ULTRA_HYPHEN)
presets/2025.12/rc_link/generic/500hz_hd_freestyle.txt
[style] ~8-~8: This phrase is redundant. Consider writing “SURE”.
Context: ... RC link. #$ DESCRIPTION: WARNING: make ABSOLUTELY SURE that the OpenTx or EdgeTx Hardware ADC ...
(ABSOLUTELY_SURE)
presets/2025.12/rc_link/ghost/solid250.txt
[uncategorized] ~56-~56: This expression is usually spelled with a hyphen.
Context: ...PTION END #$ OPTION BEGIN (UNCHECKED): Ultra Smooth Cinematic #$ INCLUDE: presets/2025....
(ULTRA_HYPHEN)
presets/2025.12/rc_link/ghost/race500.txt
[uncategorized] ~56-~56: This expression is usually spelled with a hyphen.
Context: ...PTION END #$ OPTION BEGIN (UNCHECKED): Ultra Smooth Cinematic #$ INCLUDE: presets/2025....
(ULTRA_HYPHEN)
presets/2025.12/rc_link/frsky_sbus_fport.txt
[style] ~8-~8: This phrase is redundant. Consider writing “SURE”.
Context: ...ort link. #$ DESCRIPTION: WARNING: make ABSOLUTELY SURE that the OpenTx or EdgeTx Hardware ADC ...
(ABSOLUTELY_SURE)
[uncategorized] ~77-~77: This expression is usually spelled with a hyphen.
Context: ...g_throttle_cutoff = 20 #$ OPTION END # ultra smooth Cinematic (not for racing): #$ OPTION B...
(ULTRA_HYPHEN)
[uncategorized] ~78-~78: This expression is usually spelled with a hyphen.
Context: ...r racing): #$ OPTION BEGIN (UNCHECKED): Ultra Cinematic set feedforward_smooth_factor = 45 set ...
(ULTRA_HYPHEN)
presets/2025.12/rc_link/generic/250hz_ultra_cinematic.txt
[uncategorized] ~1-~1: This expression is usually spelled with a hyphen.
Context: #$ TITLE: Generic 250Hz Ultra Cinematic #$ FIRMWARE_VERSION: 2025.12 #$ CATEGOR...
(ULTRA_HYPHEN)
[uncategorized] ~7-~7: This expression is usually spelled with a hyphen.
Context: ...SCRIPTION: Generic RC link settings for ultra smooth cinematic with 250Hz RC link. #$ DESCRI...
(ULTRA_HYPHEN)
[style] ~8-~8: This phrase is redundant. Consider writing “SURE”.
Context: ... RC link. #$ DESCRIPTION: WARNING: make ABSOLUTELY SURE that the OpenTx or EdgeTx Hardware ADC ...
(ABSOLUTELY_SURE)
presets/2025.12/rc_link/generic/50hz_freestyle.txt
[style] ~8-~8: This phrase is redundant. Consider writing “SURE”.
Context: ... RC link. #$ DESCRIPTION: WARNING: make ABSOLUTELY SURE that the OpenTx or EdgeTx Hardware ADC ...
(ABSOLUTELY_SURE)
presets/2025.12/rc_link/redpine_mpm.txt
[uncategorized] ~45-~45: This expression is usually spelled with a hyphen.
Context: ...g_throttle_cutoff = 20 #$ OPTION END # ultra smooth Cinematic (not for racing): #$ OPTION B...
(ULTRA_HYPHEN)
[uncategorized] ~46-~46: This expression is usually spelled with a hyphen.
Context: ...r racing): #$ OPTION BEGIN (UNCHECKED): Ultra Cinematic set feedforward_jitter_factor = 14 set ...
(ULTRA_HYPHEN)
🔇 Additional comments (38)
presets/2025.12/rc_link/generic/150hz_freestyle.txt (1)
1-17: File structure and configuration look good.All metadata headers are properly formatted, INCLUDE directive correctly references the defaults file, and configuration values are appropriately tuned for the 150Hz Freestyle profile.
presets/2025.12/rc_link/generic/50hz_freestyle.txt (1)
1-18: File structure and configuration are appropriate for 50Hz Freestyle profile.The configuration correctly uses lower smoothing factors and boost settings suitable for 50Hz operation. All metadata is properly formatted and INCLUDE directive is correct.
presets/2025.12/rc_link/generic/50hz_race.txt (1)
1-18: File structure and Race profile configuration are well-tuned.The lower jitter factor (7 vs 9-10 in freestyle) appropriately reflects the tighter responsiveness needed for racing. INCLUDE directive and metadata are correct.
presets/2025.12/rc_link/generic/250hz_ultra_cinematic.txt (1)
1-22: File structure and Ultra Cinematic profile configuration are well-structured.The high RC smoothing auto factors (250) and increased smoothing/jitter factors are appropriately tuned for ultra-smooth cinematic flying. All metadata is properly formatted and INCLUDE directive is correct. The "Ultra Cinematic" terminology (without hyphen) is standard in Betaflight presets.
presets/2025.12/rc_link/generic/50hz_ultra_cinematic.txt (1)
1-23: Configuration appropriately scaled for 50Hz Ultra Cinematic profile.The rc_smoothing_auto_factor of 90 (vs 250 at higher Hz) correctly reflects the constraints of 50Hz operation, while jitter factor 20 and smooth factor 40 provide the ultra-smooth characteristics. All metadata and INCLUDE directive are correct.
presets/2025.12/rc_link/generic/250hz_freestyle.txt (1)
1-19: 250Hz Freestyle profile configuration is well-balanced.The feedforward_smooth_factor of 45 and rc_smoothing_auto_factor of 52 provide appropriate balance for freestyle flying at 250Hz. Metadata headers and INCLUDE directive are correctly formatted.
presets/2025.12/rc_link/generic/250hz_race.txt (1)
1-21: Race profile configuration appropriately tuned for competitive performance.The lower smooth_factor (35), jitter_factor (4), and rc_smoothing_auto_factor (25) correctly prioritize responsiveness over smoothing. feedforward_boost of 18 provides adequate feedforward for race dynamics. Metadata and INCLUDE directive are correct.
presets/2025.12/rc_link/generic/150hz_cinematic.txt (1)
1-22: Cinematic profile configuration is appropriate for 150Hz smooth flying.The rc_smoothing_auto_factor of 175 and throttle_factor of 100 provide smooth cinematic behavior while setpoint_cutoff of 12 maintains responsiveness. All metadata is properly formatted and INCLUDE directive is correct.
presets/2025.12/rc_link/generic/500hz_freestyle.txt (1)
1-18: Preset structure and configuration look good.The file follows established patterns with proper INCLUDE of defaults and consistent parameter organization.
presets/2025.12/rc_link/tbs/crossfire_150hz.txt (1)
36-54: Well-structured option blocks with appropriate presets.The UNCHECKED option groups provide users clear choices across flight profiles, and the pattern follows best practices for modular preset composition.
presets/2025.12/rc_link/generic/500hz_race.txt (1)
1-20: Preset configuration is sound.Race profile parameters are well-tuned with appropriate feedforward boost and smoothing factors.
presets/2025.12/rc_link/generic/500hz_hd_freestyle.txt (1)
1-19: HD Freestyle preset is well-configured.Parameter tuning appropriately balances responsiveness with smoothness for this profile.
presets/2025.12/rc_link/generic/150hz_hd_freestyle.txt (1)
1-20: 150Hz HD Freestyle preset is correctly tuned.Frequency-appropriate parameter selection with OFF averaging and conservative smoothing factors.
presets/2025.12/rc_link/generic/500hz_ultra_cinematic.txt (1)
1-21: Ultra-cinematic preset parameters are well-tuned.Aggressive smoothing and low setpoint cutoff (6) deliver the cinematic effect while maintaining control fidelity.
presets/2025.12/rc_link/generic/250hz_hd_freestyle.txt (1)
1-20: 250Hz HD Freestyle preset is correctly configured.Frequency-appropriate parameter tuning with balanced smoothing and feedforward settings.
presets/2025.12/rc_link/ghost/long_range.txt (1)
1-37: Missing FORCE_OPTIONS_REVIEW flag compared to similar presets.While this preset is functionally correct, other similar RC_LINK presets in this PR (e.g., tbs/crossfire_50hz.txt, tbs/tracer_250hz.txt) include
#$ FORCE_OPTIONS_REVIEW: TRUE. Since this preset defines RC link tuning parameters that users should be aware of, consider adding this flag for consistency unless there's a specific reason to omit it.Is the absence of
FORCE_OPTIONS_REVIEWintentional for this Long Range preset, or should it be added for consistency with other presets in the same category?presets/2025.12/rc_link/elrs_500hz.txt (1)
1-30: Missing PARSER: MARKED tag; confirm intentional.Unlike other RC_LINK presets in this PR, this file lacks
#$ PARSER: MARKEDdeclaration (which appears early in other presets). Verify this is intentional, as the MARKED parser is used consistently throughout the other RC_LINK presets for correct parsing of metadata and options.Should this preset include
#$ PARSER: MARKEDfor consistency with other RC_LINK presets, or is the omission intentional?presets/2025.12/rc_link/ghost/race.txt (2)
5-5: Clarify 166Hz vs 150Hz naming in keywords and includes.The KEYWORDS on line 5 specify "166Hz" and the title on line 11 describes "166Hz", but the preset uses 150Hz base parameters and includes 150Hz generic presets (line 40, 44, 48, 52, 56). If Ghost Race mode is 166Hz, consider whether a dedicated 166Hz preset family should be created, or clarify in the description why 150Hz settings are being used as an approximation.
Is the use of 150Hz presets for the 166Hz Ghost Race mode intentional as the closest available frequency match, or should dedicated 166Hz presets be created?
Also applies to: 11-11
1-57: All five generic 150Hz preset files referenced in this preset are present in the PR and correctly included.presets/2025.12/rc_link/ghost/solid250.txt (1)
1-58: All referenced generic 250Hz preset files are present in the PR and correctly included.presets/2025.12/rc_link/ghost/race250.txt (1)
1-58: All referenced generic 250Hz preset files are present and included in this PR. No issues to address.presets/2025.12/rc_link/DJI_Normal.txt (1)
1-72: The defaults file is present and the include will work correctly.The verification confirms that
presets/2025.12/rc_link/defaults.txtexists in the repository. The DJI_Normal.txt preset can successfully include this file on line 32, and all RC_LINK presets will function as intended.presets/2025.12/rc_link/tbs/tracer_250hz.txt (1)
1-53: All referenced generic 250Hz preset files are present—no issues found.The five generic preset files included via
presets/2025.12/rc_link/generic/250hz_*.txtpaths are all present in the PR:250hz_race.txt,250hz_freestyle.txt,250hz_hd_freestyle.txt,250hz_cinematic.txt, and250hz_ultra_cinematic.txt. The preset structure and dependencies are complete.presets/2025.12/rc_link/tbs/crossfire_50hz.txt (1)
1-55: No issues found — all referenced generic preset files are present.All five generic 50Hz preset files referenced in the crossfire_50hz.txt preset exist in the repository:
50hz_race.txt50hz_freestyle.txt50hz_hd_freestyle.txt50hz_cinematic.txt50hz_ultra_cinematic.txtThe preset will apply without dependency failures.
presets/2025.12/rc_link/defaults.txt (1)
1-25: Well-structured defaults file with clear parameter baseline.The metadata and configuration parameters are properly formatted. This file provides a solid foundation for other RC link presets to build upon.
presets/2025.12/rc_link/ghost/pure_race.txt (1)
1-58: Well-organized Ghost Pure Race preset with comprehensive documentation.The file properly includes defaults, enables Ghost protocol features, establishes 250Hz base configuration, and provides modular options. Structure and option groups are well-formed.
presets/2025.12/rc_link/redpine_mpm.txt (1)
1-70: Well-structured Redpine MPM preset with appropriate multi-profile options.The file properly configures for multiprotocol module use, includes defaults, and provides fine-tuning groups for different flight styles. Structure and parameter ranges appear appropriate for Redpine's slower link characteristics.
presets/2025.12/rc_link/elrs_250hz.txt (1)
1-113: Comprehensive ELRS 250Hz preset with well-organized exclusive option groups.The file properly supports both connection methods (Serial/SPI), includes detailed fine-tuning profiles, and provides flexible voltage reading options. Structure and parameter selections are appropriate for 250Hz ExpressLRS links.
presets/2025.12/rc_link/redpine_666hz.txt (1)
1-89: Well-configured Redpine 666Hz preset with appropriate tuning profiles for Deviation Tx.The file properly distinguishes itself from the MPM preset (2_POINT averaging vs 3_POINT, different smoothing values) based on the specific transmission method. Fine-tuning options and cinematic rates are properly structured.
presets/2025.12/rc_link/elrs_150hz.txt (1)
1-111: Well-structured ELRS 150Hz preset with appropriate frequency-scaled tuning.The file properly adjusts parameters for lower 150Hz update rate (OFF averaging, lower smoothing factors) and maintains consistent structure with ELRS 250Hz preset. Option groups are properly formed and exclusive where appropriate.
presets/2025.12/rc_link/DJI_SBUS_Fast.txt (1)
1-72: Well-documented DJI SBUS Fast preset with appropriate configuration and profile options.The file properly enables SBUS Fast mode, includes well-formatted documentation, and provides three tuning profiles suitable for SBUS link characteristics. The reduced number of options (vs more complex presets) is appropriate for this link type.
presets/2025.12/rc_link/frsky_sbus_fport.txt (1)
1-155: Comprehensive FrSky preset with well-organized exclusive option groups for different configurations.The file properly supports both Sbus and FPort modes with appropriate parameter adjustments, includes hardware options for telemetry inversion/duplex, and provides voltage/units preferences. The warning about >8 channels with corresponding parameter adjustment is particularly valuable.
presets/2025.12/rc_link/elrs_50hz.txt (6)
16-20: LGTM.The base 50Hz feedforward settings are well-configured with appropriate defaults for this refresh rate.
23-62: LGTM.The Fine-tuning option group is well-structured with five unchecked profiles (Racing, Freestyle, HD Freestyle, Cinematic, Ultra Cinematic) that provide sensible tuning variations for different flight styles. Parameter adjustments are appropriate for each profile's intended use case.
65-77: LGTM.The EXCLUSIVE ELRS Rx connection group correctly enforces selection of one method (Serial or SPI) and applies appropriate configuration (serialrx_provider or rx_spi_protocol) for each.
80-91: LGTM.The EXCLUSIVE Voltage readings group is properly structured, allowing users to choose between single-cell or whole-pack voltage reporting via the report_cell_voltage toggle.
94-109: LGTM.The optional Cinematic Rates group provides a complete rate configuration profile with explicit ACTUAL rate type and tuned RC rates/expo/srates for smooth cinematic flying.
1-14: Dependency verified: defaults.txt exists and contains valid RC link settings.The
presets/2025.12/rc_link/defaults.txtfile is present and properly configured with base feedforward and rc_smoothing settings for all RC link presets. The INCLUDE directive on line 14 will resolve correctly. The preset is part of a consistent ELRS preset family (50Hz, 150Hz, 250Hz, 500Hz variants) and no critical issues were found.
| set feedforward_averaging = 2_POINT | ||
| # For 4.3.0, 4.3.1, 4.3.2 and 4.4.0 users | ||
| set feedforward_smooth_factor = 75 | ||
| # For 4.3.3 and 4.4.1 users | ||
| set feedforward_smooth_factor = 87 | ||
| set feedforward_jitter_factor = 2 | ||
| set feedforward_boost = 18 | ||
| set rc_smoothing_auto_factor = 25 | ||
| set rc_smoothing_auto_factor_throttle = 25 No newline at end of file |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧩 Analysis chain
Critical: Conflicting parameter assignment overwrites version-specific tuning intent.
Line 17 sets feedforward_smooth_factor = 75 for older firmware (4.3.0–4.3.2, 4.4.0), but line 19 unconditionally sets the same parameter to 87, which always overrides the first value. All users will receive 87 regardless of firmware version, rendering the version-specific tuning meaningless.
The preset parser does not support conditional logic based on firmware version in this context. You must choose one of the following:
- Use only the newer value (remove lines 16–17 and line 18's comment) if older versions are no longer supported.
- Document version requirements differently (e.g., in DESCRIPTION or separate presets per version) and remove duplicate assignments.
- Investigate if the preset system supports version-conditional syntax that is not apparent in this file.
🏁 Script executed:
#!/bin/bash
# Verify the actual file content at the specified lines
echo "=== File content (lines 15–23) ==="
sed -n '15,23p' presets/2025.12/rc_link/generic/1000hz_race.txt
echo ""
echo "=== Full file for context ==="
cat presets/2025.12/rc_link/generic/1000hz_race.txtLength of output: 1239
🏁 Script executed:
#!/bin/bash
# Search for preset parser implementation or documentation
echo "=== Looking for preset parser logic ==="
fd -e '\.c' -e '\.h' -e '\.py' -e '\.js' -e '\.md' . | xargs rg -l 'preset.*pars|feedforward_smooth_factor' -i
echo ""
echo "=== Search for version conditional syntax examples ==="
rg -nP 'if.*version|ifdef.*version|#if|condition' presets/ --type=txt -C2 2>/dev/null | head -50
echo ""
echo "=== Check for duplicate parameter assignments elsewhere ==="
rg -nP '^\s*set\s+\w+\s*=' presets/2025.12/rc_link/generic/1000hz_race.txtLength of output: 10200
🏁 Script executed:
#!/bin/bash
# Look for preset system documentation or parser behavior
echo "=== Searching for preset-related docs or code ==="
fd -type f -name '*preset*' | head -20
echo ""
echo "=== Search for any conditional syntax in presets ==="
rg -nP 'if|else|case|switch|condition|\$\{|:=|\?:' presets/ --type=txt -i | head -30Length of output: 3200
🏁 Script executed:
#!/bin/bash
# Look for preset parser/loader implementation
echo "=== Searching for preset loading/parsing code ==="
find . -type f \( -name '*.c' -o -name '*.h' -o -name '*.py' -o -name '*.js' -o -name '*.md' \) | xargs rg -l 'preset.*load|parse.*preset|FIRMWARE_VERSION' 2>/dev/null | grep -v node_modules | head -20
echo ""
echo "=== Look for README or docs about presets ==="
find . -type f -name 'README*' -o -name '*preset*' -o -name '*PRESET*' | grep -E '\.(md|txt)$' | head -10Length of output: 120
🏁 Script executed:
#!/bin/bash
# Search for how FIRMWARE_VERSION is used
echo "=== FIRMWARE_VERSION usage in codebase ==="
rg -nP 'FIRMWARE_VERSION' . --type-list | head -5
echo ""
echo "=== Look for preset-related code or documentation ==="
rg -nP 'set\s+\w+\s*=' . --type=py -C3 2>/dev/null | head -40
echo ""
echo "=== Check if multiple same parameters in single preset is common ==="
rg -nP '^set\s+(\w+)\s*=' presets/2025.12/ --type=txt -o | sort | uniq -d | head -20Length of output: 557
🏁 Script executed:
#!/bin/bash
# Search for any reference to preset loading order or precedence
echo "=== Looking for preset loading behavior documentation ==="
find . -name '*.md' -o -name '*.txt' | xargs rg -i 'load.*order|precedence|override|duplicate.*param' 2>/dev/null | grep -v presets/ | head -20
echo ""
echo "=== Check for INCLUDE behavior and how multiple values work ==="
rg -nP 'INCLUDE' presets/2025.12/rc_link/generic/1000hz_race.txt -B2 -A2
echo ""
echo "=== List what is in defaults.txt being included ==="
head -30 presets/2025.12/rc_link/defaults.txtLength of output: 1249
Critical: Duplicate parameter assignment negates version-specific tuning intent.
Line 17 sets feedforward_smooth_factor = 75 (for 4.3.0–4.3.2, 4.4.0), but line 19 unconditionally sets the same parameter to 87, overwriting the first value. According to the preset system documentation, "the last applied Preset takes precedence"—all users will receive 87 regardless of firmware version, rendering the version-specific comments and first assignment meaningless.
The preset system has no version-conditional syntax. Choose one solution:
- Keep only the newer value (remove lines 16–17 and line 18's comment) if older firmware support is no longer needed.
- Maintain version-specific tuning by creating separate preset files for each firmware version and distributing them via FIRMWARE_VERSION metadata or UI selection.
- Document the requirement in DESCRIPTION that this preset applies to 4.3.3+ and 4.4.1+ only, then remove the conflicting assignment.
🤖 Prompt for AI Agents
In presets/2025.12/rc_link/generic/1000hz_race.txt around lines 15–23 you
currently set feedforward_smooth_factor twice which causes the second value (87)
to overwrite the first (75); fix by picking one of the three reviewer options
and applying only that change: A) if older firmware is no longer supported,
delete the lines setting feedforward_smooth_factor = 75 and its comment so only
feedforward_smooth_factor = 87 remains; B) if you must preserve version-specific
tuning, create separate preset files for the affected firmware ranges (e.g.,
4.3.0-4.3.2_4.4.0 preset with =75 and 4.3.3_4.4.1+ preset with =87) and
distribute them via FIRMWARE_VERSION metadata/UI selection; or C) if this preset
is intended only for 4.3.3+/4.4.1+, update DESCRIPTION to state that constraint
and remove the conflicting =75 assignment and its comment so the file contains a
single authoritative value.
|
|
||
| #$ PRIORITY: 0 | ||
|
|
||
| #$ INCLUDE: presets/4.3/rc_link/defaults.txt |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Critical: Incorrect firmware version in INCLUDE path.
Line 13 references presets/4.3/rc_link/defaults.txt, but this is a 2025.12 preset and should reference the 2025.12 defaults file. This will cause incorrect baseline settings to be applied.
Apply this diff to correct the defaults path:
-#$ INCLUDE: presets/4.3/rc_link/defaults.txt
+#$ INCLUDE: presets/2025.12/rc_link/defaults.txt📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| #$ INCLUDE: presets/4.3/rc_link/defaults.txt | |
| #$ INCLUDE: presets/2025.12/rc_link/defaults.txt |
🤖 Prompt for AI Agents
In presets/2025.12/rc_link/generic/150hz_race.txt around line 13, the INCLUDE
line points to presets/4.3/rc_link/defaults.txt which is the wrong
firmware/version; change the include path to
presets/2025.12/rc_link/defaults.txt so the file references the correct 2025.12
defaults (replace the entire INCLUDE line with #$ INCLUDE:
presets/2025.12/rc_link/defaults.txt).
| #$ OPTION END | ||
|
|
||
| #$ OPTION BEGIN (UNCHECKED): Freestyle | ||
| #$ INCLUDE: presets/4.3/rc_link/generic/50hz_freestyle.txt |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Critical: Incorrect INCLUDE paths in option blocks.
Multiple option blocks reference the wrong preset files, causing incorrect configurations to be applied:
- Line 46: References
presets/4.3/rc_link/generic/50hz_freestyle.txt(wrong firmware version) - Line 50: References
50hz_race.txtinstead of50hz_hd_freestyle.txt - Line 54: References
50hz_race.txtinstead of50hz_cinematic.txt - Line 58: References
50hz_race.txtinstead of50hz_ultra_cinematic.txt
These mismatches will cause users selecting options other than Racing to receive incorrect configurations.
Apply this diff to correct the INCLUDE paths:
#$ OPTION BEGIN (UNCHECKED): Freestyle
- #$ INCLUDE: presets/4.3/rc_link/generic/50hz_freestyle.txt
+ #$ INCLUDE: presets/2025.12/rc_link/generic/50hz_freestyle.txt
#$ OPTION END
#$ OPTION BEGIN (UNCHECKED): HD Freestyle
- #$ INCLUDE: presets/2025.12/rc_link/generic/50hz_race.txt
+ #$ INCLUDE: presets/2025.12/rc_link/generic/50hz_hd_freestyle.txt
#$ OPTION END
#$ OPTION BEGIN (UNCHECKED): Cinematic
- #$ INCLUDE: presets/2025.12/rc_link/generic/50hz_race.txt
+ #$ INCLUDE: presets/2025.12/rc_link/generic/50hz_cinematic.txt
#$ OPTION END
#$ OPTION BEGIN (UNCHECKED): Ultra Smooth Cinematic
- #$ INCLUDE: presets/2025.12/rc_link/generic/50hz_race.txt
+ #$ INCLUDE: presets/2025.12/rc_link/generic/50hz_ultra_cinematic.txt
#$ OPTION ENDAlso applies to: 50-50, 54-54, 58-58
🤖 Prompt for AI Agents
In presets/2025.12/rc_link/ghost/normal.txt around lines 46, 50, 54 and 58, the
option INCLUDE paths point to the wrong preset files and firmware folder; change
line 46 to use the correct firmware folder and file: replace
presets/4.3/rc_link/generic/50hz_freestyle.txt with
presets/4.4/rc_link/generic/50hz_freestyle.txt, change line 50 to include
presets/4.4/rc_link/generic/50hz_hd_freestyle.txt instead of 50hz_race.txt,
change line 54 to include presets/4.4/rc_link/generic/50hz_cinematic.txt instead
of 50hz_race.txt, and change line 58 to include
presets/4.4/rc_link/generic/50hz_ultra_cinematic.txt instead of 50hz_race.txt
(apply the same replacements at the corresponding positions noted: 50-50, 54-54,
58-58).
Summary by CodeRabbit
Release Notes