From 84ebc16976149560c2c8c44ee71de382ea3ba3c8 Mon Sep 17 00:00:00 2001 From: Davide Basso <davide.basso@skywarder.eu> Date: Wed, 14 May 2025 16:49:03 +0200 Subject: [PATCH] [Parafoil] Avoid extra DPL_FLARE_START event --- .../StateMachines/WingController/WingController.cpp | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/Parafoil/StateMachines/WingController/WingController.cpp b/src/Parafoil/StateMachines/WingController/WingController.cpp index 0930dcc74..61ec4b6ad 100644 --- a/src/Parafoil/StateMachines/WingController/WingController.cpp +++ b/src/Parafoil/StateMachines/WingController/WingController.cpp @@ -175,11 +175,6 @@ State WingController::FlyingDeployment(const Boardcore::Event& event) } case DPL_FLARE_START: { - if (pumpCount == 0) - { - EventBroker::getInstance().post(DPL_DONE, TOPIC_DPL); - return HANDLED; - } pumpCount--; auto pump = Wing::Deployment::PUMPS.at(pumpCount); @@ -194,6 +189,13 @@ State WingController::FlyingDeployment(const Boardcore::Event& event) auto pump = Wing::Deployment::PUMPS.at(pumpCount); resetWing(); + + if (pumpCount - 1 == 0) + { + EventBroker::getInstance().post(DPL_DONE, TOPIC_DPL); + return HANDLED; + } + flareTimeoutEventId = EventBroker::getInstance().postDelayed( DPL_FLARE_START, TOPIC_DPL, Millisecond{pump.resetTime}.value()); -- GitLab