added and using circuit_breaker_enabled_by_val() where possible instead of circuit_breaker_enabled() which search for cbrk parameters by name, which is extensive process.
Condition to enter the prearmed state, an intermediate state between disarmed and armed
* in which non-throttling actuators are active.
*
* @value 0 Disabled
* @value 1 Safety button
* @value 2 Always
This param has no effect within the Firmware.
The param can be used for example:
* in log post processing to have context about the flight
* in ground stations to adapt the UI automatically
outside the fence" to "engage geofence failsafe on transition". This
way, the pilot is not stucked in the non flight zone and can switch to
a manual mode and fly back or trigger RTL.
This moves the hysteresis test out of the systemlib and makes it its own
small library. Since it still depends on hrt_absolute_time this does not
link yet. My attempt to get all link dependencies together failed.
Since onboard controllers bootup times are hardware dependent, it makes sense to have the possibility to adapt timeout time according to the specific HW.
Signed-off-by: Claudio Micheli <claudio@auterion.com>
Since Timeout from onboard controller is something that does not require a lot of modifications there is no sense to having it parametrized.
Signed-off-by: Claudio Micheli <claudio@auterion.com>
Since commander handles all telemetry_status the same there is no need to subscribe to multiple instances.
Signed-off-by: Claudio Micheli <claudio@auterion.com>
Added COM_ONB_LOSS_T and COM_ONB_REG_T parameters to specify thresholds that triggers "onboard link lost" and "onboard link regained".
Signed-off-by: Claudio Micheli <claudio@auterion.com>
Major changes:
- Prevent "HIGH LATENCY DATA LINK LOST" message to appear if iridium telemetry is not used.
- Prevent "DATA LINK LOSS" mavlink messages flooding when QGC is open and then closed.
- Changed "DATA LINK REGAINED" condition (use _datalink_last_heartbeat_gcs insthead of _datalink_lost)
Signed-off-by: Claudio Micheli <claudio@auterion.com>
- use pragma once guard in FailureDetector.hpp
- send Commander parent to ModuleParams and remove update_params() method
- simplify attitude checks
- FailureDetector::get_status() (previously named "get") is now a constant method that returns a constant reference