From 2205f73d236f13d1e7d5b87550e527e2323b84cc Mon Sep 17 00:00:00 2001 From: Jonas Elvedal Hole Date: Sat, 25 Apr 2020 19:20:41 +0200 Subject: [PATCH] Add STABILIZED_[YAW, ROLL, PITCH] for logic_condition --- src/main/common/logic_condition.c | 15 ++++++++++++++- src/main/common/logic_condition.h | 3 +++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/src/main/common/logic_condition.c b/src/main/common/logic_condition.c index a4bf5483c0..7ba9dd2f1b 100644 --- a/src/main/common/logic_condition.c +++ b/src/main/common/logic_condition.c @@ -40,6 +40,7 @@ #include "sensors/battery.h" #include "sensors/pitotmeter.h" #include "flight/imu.h" +#include "flight/pid.h" #include "navigation/navigation.h" #include "navigation/navigation_private.h" @@ -330,7 +331,19 @@ static int logicConditionGetFlightOperandValue(int operand) { case LOGIC_CONDITION_OPERAND_FLIGHT_IS_FAILSAFE: // 0/1 return (failsafePhase() == FAILSAFE_RX_LOSS_MONITORING) ? 1 : 0; - break; + break; + + case LOGIC_CONDITION_OPERAND_FLIGHT_STABILIZED_YAW: // + return axisPID[YAW]; + break; + + case LOGIC_CONDITION_OPERAND_FLIGHT_STABILIZED_ROLL: // + return axisPID[ROLL]; + break; + + case LOGIC_CONDITION_OPERAND_FLIGHT_STABILIZED_PITCH: // + return axisPID[PITCH]; + break; default: return 0; diff --git a/src/main/common/logic_condition.h b/src/main/common/logic_condition.h index a158875437..d5eef12d92 100644 --- a/src/main/common/logic_condition.h +++ b/src/main/common/logic_condition.h @@ -90,6 +90,9 @@ typedef enum { LOGIC_CONDITION_OPERAND_FLIGHT_IS_WP, // 0/1 // 23 LOGIC_CONDITION_OPERAND_FLIGHT_IS_LANDING, // 0/1 // 24 LOGIC_CONDITION_OPERAND_FLIGHT_IS_FAILSAFE, // 0/1 // 25 + LOGIC_CONDITION_OPERAND_FLIGHT_STABILIZED_YAW, // 26 + LOGIC_CONDITION_OPERAND_FLIGHT_STABILIZED_ROLL, // 27 + LOGIC_CONDITION_OPERAND_FLIGHT_STABILIZED_PITCH, // 28 } logicFlightOperands_e; typedef enum {