Skip to content

Mixer output mapping: prioritize dedicated timer outputs#2596

Open
sensei-hacker wants to merge 1 commit intoiNavFlight:maintenance-9.xfrom
sensei-hacker:fix/output-mapping-timer-priority
Open

Mixer output mapping: prioritize dedicated timer outputs#2596
sensei-hacker wants to merge 1 commit intoiNavFlight:maintenance-9.xfrom
sensei-hacker:fix/output-mapping-timer-priority

Conversation

@sensei-hacker
Copy link
Member

@sensei-hacker sensei-hacker commented Mar 19, 2026

Before, even if the user specifically set MOTOR and SERVO timers (output), it would instead use the AUTO ones, disregarding the user's explicit instructions:

image

Now, it follows instructions - if the user sets a timer as servos, use that for servos first:

image

Companion firmware PR:
iNavFlight/inav#11445

Tests completed

  • Connect to FC with timerOverrides configured (e.g. TIM1=MOTORS, TIM2=SERVOS in config.c)
  • Load airplane preset in mixer tab
  • Verify output mapping preview shows motors on dedicated motor timer outputs and servos on dedicated servo timer outputs
  • Connect to FC with no timerOverrides and verify output mapping preview is unchanged from previous behavior

The output mapping preview assigned motors and servos purely by
array position, ignoring timerOverrides. Targets that configure
dedicated motor/servo timers in config.c saw incorrect previews.

Use two-pass assignment matching firmware pwmBuildTimerOutputList():
dedicated outputs (OUTPUT_MODE_MOTORS/SERVOS) first, then auto.
@sonarqubecloud
Copy link

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant