From 4ff589b5a66905a45bc6b0713c26fd5df35bb3ad Mon Sep 17 00:00:00 2001 From: Niklas Hauser Date: Wed, 28 May 2025 11:17:11 +0200 Subject: [PATCH] [uavcan] Fix unitless actuator range conversion Input [1000us, 2000us] -> [-1, 1] output. --- src/drivers/uavcan/actuators/servo.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/drivers/uavcan/actuators/servo.cpp b/src/drivers/uavcan/actuators/servo.cpp index 56fdea4bba..57b3910e80 100644 --- a/src/drivers/uavcan/actuators/servo.cpp +++ b/src/drivers/uavcan/actuators/servo.cpp @@ -53,7 +53,7 @@ UavcanServoController::update_outputs(bool stop_motors, uint16_t outputs[MAX_ACT uavcan::equipment::actuator::Command cmd; cmd.actuator_id = i; cmd.command_type = uavcan::equipment::actuator::Command::COMMAND_TYPE_UNITLESS; - cmd.command_value = (float)outputs[i] / 500.f - 1.f; // [-1, 1] + cmd.command_value = (float)outputs[i] / 500.f - 3.f; // [1000, 2000] -> [-1, 1] msg.commands.push_back(cmd); }