From 38b6a9abf3cf65906e229ba481b3ba1eb453f128 Mon Sep 17 00:00:00 2001 From: Nick <145654544+ttechnick@users.noreply.github.com> Date: Tue, 6 Jan 2026 18:05:35 +0100 Subject: [PATCH] pwm: Add PWM center support to Wheel and Gimbal (#26211) * Add Wheel and Gimbal support to PWM center * Document Center feature for PWM Gimbal --- .../config/actuators/qgc_actuators_gimbal.png | Bin 5582 -> 37475 bytes docs/en/advanced/gimbal_control.md | 2 +- src/lib/mixer_module/mixer_module.cpp | 6 ++++-- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/docs/assets/config/actuators/qgc_actuators_gimbal.png b/docs/assets/config/actuators/qgc_actuators_gimbal.png index e19434e678d77061022605cae9b4a1e1fb9dfba7..a062d88da765b2712a8b3aa71be2ee571779d8f5 100644 GIT binary patch literal 37475 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 WWu903{QwOO4UMUxr9r(OEa7i;)vKQX literal 5582 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 diff --git a/docs/en/advanced/gimbal_control.md b/docs/en/advanced/gimbal_control.md index b5a7596ec2..f449b74587 100644 --- a/docs/en/advanced/gimbal_control.md +++ b/docs/en/advanced/gimbal_control.md @@ -74,7 +74,7 @@ For example, you might have the following settings to assign the gimbal roll, pi ![Gimbal Actuator config](../../assets/config/actuators/qgc_actuators_gimbal.png) -The PWM values to use for the disarmed, maximum and minimum values can be determined in the same way as other servo, using the [Actuator Test sliders](../config/actuators.md#actuator-testing) to confirm that each slider moves the appropriate axis, and changing the values so that the gimbal is in the appropriate position at the disarmed, low and high position in the slider. +The PWM values to use for the disarmed, maximum, center and minimum values can be determined in the same way as other servo, using the [Actuator Test sliders](../config/actuators.md#actuator-testing) to confirm that each slider moves the appropriate axis, and changing the values so that the gimbal is in the appropriate position at the disarmed, low, center and high position in the slider. The values may also be provided in gimbal documentation. ## Gimbal Control in Missions diff --git a/src/lib/mixer_module/mixer_module.cpp b/src/lib/mixer_module/mixer_module.cpp index fe1b818f86..eb67188018 100644 --- a/src/lib/mixer_module/mixer_module.cpp +++ b/src/lib/mixer_module/mixer_module.cpp @@ -545,8 +545,10 @@ uint16_t MixingOutput::output_limit_calc_single(int i, float value) const float output = _disarmed_value[i]; - if (_function_assignment[i] >= OutputFunction::Servo1 - && _function_assignment[i] <= OutputFunction::ServoMax + if (((_function_assignment[i] >= OutputFunction::Servo1 + && _function_assignment[i] <= OutputFunction::ServoMax) || _function_assignment[i] == OutputFunction::Landing_Gear_Wheel + || (_function_assignment[i] >= OutputFunction::Gimbal_Roll + && _function_assignment[i] <= OutputFunction::Gimbal_Yaw)) && _param_handles[i].center != PARAM_INVALID && _center_value[i] >= 800 && _center_value[i] <= 2200) {