Skip to content

Conversation

@skorya
Copy link

@skorya skorya commented Jan 25, 2026

PR Type

Bug fix


Description

  • This description is generated by an AI tool. It may have inaccuracies

  • Corrects SmartAudio power level names array

  • Removes invalid "----" placeholder entry

  • Updates power values to match actual mW levels (25, 200, 500, 1000, 3000)


Diagram Walkthrough

flowchart LR
  A["Old power names<br/>with ---- placeholder"] -- "Remove invalid entry" --> B["New power names<br/>with correct mW values"]
  B -- "25, 200, 500, 1000, 3000" --> C["Accurate power levels"]
Loading

File Walkthrough

Relevant files
Bug fix
vtx_smartaudio.c
Correct SmartAudio power level names array                             

src/main/io/vtx_smartaudio.c

  • Removed "----" placeholder from the first power level entry
  • Updated power level names to reflect actual milliwatt values (25, 200,
    500, 1000, 3000)
  • Adjusted spacing in power name strings for consistency
  • Corrected the default power names array to match SmartAudio 2.1 device
    specifications
+1/-1     

@github-actions
Copy link

Branch Targeting Suggestion

You've targeted the master branch with this PR. Please consider if a version branch might be more appropriate:

  • maintenance-9.x - If your change is backward-compatible and won't create compatibility issues between INAV firmware and Configurator 9.x versions. This will allow your PR to be included in the next 9.x release.

  • maintenance-10.x - If your change introduces compatibility requirements between firmware and configurator that would break 9.x compatibility. This is for PRs which will be included in INAV 10.x

If master is the correct target for this change, no action is needed.


This is an automated suggestion to help route contributions to the appropriate branch.

@qodo-code-review
Copy link
Contributor

ⓘ Your approaching your monthly quota for Qodo. Upgrade your plan

PR Compliance Guide 🔍

All compliance sections have been disabled in the configurations.

Comment on lines 64 to 66
const char *saPowerNames[VTX_SMARTAUDIO_MAX_POWER_COUNT + 1] = {
"----", "25 ", "200 ", "500 ", "800 ", " ", " ", " ", " "
"25", "200 ", "500 ", "1000 ", "3000 ", " ", " ", " ", " "
};
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggestion: Truncate the power name strings to a maximum of 4 characters to prevent a potential buffer overflow when they are copied into the sa21PowerNames buffer. [possible issue, importance: 9]

Suggested change
const char *saPowerNames[VTX_SMARTAUDIO_MAX_POWER_COUNT + 1] = {
"----", "25 ", "200 ", "500 ", "800 ", " ", " ", " ", " "
"25", "200 ", "500 ", "1000 ", "3000 ", " ", " ", " ", " "
};
const char *saPowerNames[VTX_SMARTAUDIO_MAX_POWER_COUNT + 1] = {
"25", "200", "500", "1000", "3000", " ", " ", " ", " "
};

@sensei-hacker
Copy link
Member

Where are you getting these numbers, please?

The spec https://www.team-blacksheep.com/media/files/tbs_smartaudio_rev08.pdf?srsltid=AfmBOooUy5f_t1rTHbqvZ3GUb8B3OkCkhyWeXPYeB557HXZ-XtDi5Q2M

Says

Screenshot_20260125-132902

And for the new Pro Unify32 with additional levels added:

Screenshot_20260125-133309

@skorya skorya closed this by deleting the head repository Jan 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants