ROMFS: disable esc failure detector for fixed-wing simulations #23586
+2
−5
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Problem
When running SITL simulations for fixed-wing models like rc_cessna or advanced_plane, arming the system in manual or position mode results in an ESC Failure, preventing the system from arming.
Solution
This issue can be resolved by disabling the ESC failure detector (FD_ESCS_EN: 0).
The ESC failure detector monitors the esc_armed_flags from the esc_status topic. In real aircraft, motor output drivers like PX4IO or pwm_out check whether the ESC is actually armed.
However, in a simulation environment, the ESC status is inferred from the actuator's velocity using the gz_bridge module (as implemented in GZMixingInterfaceESC.cpp).
For fixed-wing aircraft, the motor does not spin until the throttle is increased, even when the system is armed. Therefore, it is necessary to disable the ESC failure detector for fixed-wing simulations.