mixer: remove used flag stop_outputs

dshot: fix motor test on CANnode

Also includes fixes for the DShot driver since stop_outputs is removed. The esc info command has been removed because it doesn't work with AM32, can only be used via command line, and complicates the driver
This commit is contained in:
Jacob Dahl
2025-07-11 08:53:52 -06:00
committed by Alex Klimaj
parent 6a1cefd7a6
commit 09ebd21e55
37 changed files with 120 additions and 228 deletions
+1 -3
View File
@@ -85,10 +85,8 @@ UavcanEscController::init()
}
void
UavcanEscController::update_outputs(bool stop_motors, uint16_t outputs[MAX_ACTUATORS], unsigned total_outputs)
UavcanEscController::update_outputs(uint16_t outputs[MAX_ACTUATORS], unsigned total_outputs)
{
// TODO: remove stop_motors as it's unnecessary and unused almost everywhere
// TODO: configurable rate limit
const auto timestamp = _node.getMonotonicTime();
+1 -1
View File
@@ -69,7 +69,7 @@ public:
int init();
void update_outputs(bool stop_motors, uint16_t outputs[MAX_ACTUATORS], unsigned total_outputs);
void update_outputs(uint16_t outputs[MAX_ACTUATORS], unsigned total_outputs);
/**
* Sets the number of rotors and enable timer
+1 -1
View File
@@ -45,7 +45,7 @@ UavcanServoController::UavcanServoController(uavcan::INode &node) :
}
void
UavcanServoController::update_outputs(bool stop_motors, uint16_t outputs[MAX_ACTUATORS], unsigned num_outputs)
UavcanServoController::update_outputs(uint16_t outputs[MAX_ACTUATORS], unsigned num_outputs)
{
uavcan::equipment::actuator::ArrayCommand msg;
+1 -1
View File
@@ -52,7 +52,7 @@ public:
UavcanServoController(uavcan::INode &node);
~UavcanServoController() = default;
void update_outputs(bool stop_motors, uint16_t outputs[MAX_ACTUATORS], unsigned num_outputs);
void update_outputs(uint16_t outputs[MAX_ACTUATORS], unsigned num_outputs);
private:
uavcan::INode &_node;
+4 -4
View File
@@ -1012,10 +1012,10 @@ UavcanNode::Run()
}
#if defined(CONFIG_UAVCAN_OUTPUTS_CONTROLLER)
bool UavcanMixingInterfaceESC::updateOutputs(bool stop_motors, uint16_t outputs[MAX_ACTUATORS], unsigned num_outputs,
bool UavcanMixingInterfaceESC::updateOutputs(uint16_t outputs[MAX_ACTUATORS], unsigned num_outputs,
unsigned num_control_groups_updated)
{
_esc_controller.update_outputs(stop_motors, outputs, num_outputs);
_esc_controller.update_outputs(outputs, num_outputs);
return true;
}
@@ -1042,10 +1042,10 @@ void UavcanMixingInterfaceESC::mixerChanged()
_esc_controller.set_rotor_count(rotor_count);
}
bool UavcanMixingInterfaceServo::updateOutputs(bool stop_motors, uint16_t outputs[MAX_ACTUATORS], unsigned num_outputs,
bool UavcanMixingInterfaceServo::updateOutputs(uint16_t outputs[MAX_ACTUATORS], unsigned num_outputs,
unsigned num_control_groups_updated)
{
_servo_controller.update_outputs(stop_motors, outputs, num_outputs);
_servo_controller.update_outputs(outputs, num_outputs);
return true;
}
+2 -2
View File
@@ -127,7 +127,7 @@ public:
_node_mutex(node_mutex),
_esc_controller(esc_controller) {}
bool updateOutputs(bool stop_motors, uint16_t outputs[MAX_ACTUATORS],
bool updateOutputs(uint16_t outputs[MAX_ACTUATORS],
unsigned num_outputs, unsigned num_control_groups_updated) override;
void mixerChanged() override;
@@ -158,7 +158,7 @@ public:
_node_mutex(node_mutex),
_servo_controller(servo_controller) {}
bool updateOutputs(bool stop_motors, uint16_t outputs[MAX_ACTUATORS],
bool updateOutputs(uint16_t outputs[MAX_ACTUATORS],
unsigned num_outputs, unsigned num_control_groups_updated) override;
MixingOutput &mixingOutput() { return _mixing_output; }