mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-11-05 07:41:36 +08:00
OutputModuleInterface::updateOutputs return bool to control actuator_outputs pub
Required for pwm_out_sim: only publish actuator_outputs when we get actuator_controls. Otherwise lockstep startup does not work. The issue was there before but hidden, due to a long poll timeout. Works with HIL too.
This commit is contained in:
@@ -79,11 +79,13 @@ PWMSim::Run()
|
||||
_mixing_output.updateSubscriptions(true);
|
||||
}
|
||||
|
||||
void
|
||||
bool
|
||||
PWMSim::updateOutputs(bool stop_motors, uint16_t outputs[MAX_ACTUATORS], unsigned num_outputs,
|
||||
unsigned num_control_groups_updated)
|
||||
{
|
||||
// nothing to do, as we are only interested in the actuator_outputs topic publication
|
||||
// Nothing to do, as we are only interested in the actuator_outputs topic publication.
|
||||
// That should only be published once we receive actuator_controls (important for lock-step to work correctly)
|
||||
return num_control_groups_updated > 0;
|
||||
}
|
||||
|
||||
int
|
||||
|
||||
@@ -66,7 +66,7 @@ public:
|
||||
|
||||
int ioctl(device::file_t *filp, int cmd, unsigned long arg) override;
|
||||
|
||||
void updateOutputs(bool stop_motors, uint16_t outputs[MAX_ACTUATORS],
|
||||
bool updateOutputs(bool stop_motors, uint16_t outputs[MAX_ACTUATORS],
|
||||
unsigned num_outputs, unsigned num_control_groups_updated) override;
|
||||
|
||||
private:
|
||||
|
||||
Reference in New Issue
Block a user