diff --git a/src/boards/Main/Radio/Radio.cpp b/src/boards/Main/Radio/Radio.cpp index fe8d4473ef4ff439c572cf070fad792059e64dfb..7d58d8f5be15ded9bb52be822f0c5555bdb5f559 100644 --- a/src/boards/Main/Radio/Radio.cpp +++ b/src/boards/Main/Radio/Radio.cpp @@ -340,13 +340,15 @@ void Radio::handleMessage(const mavlink_message_t& msg) if (press == 0) { getModule<Sensors>()->resetBaroCalibrationReference(); - EventBroker::getInstance().post(TMTC_CALIBRATE, TOPIC_TMTC); + EventBroker::getInstance().post( + TMTC_SET_CALIBRATION_PRESSURE, TOPIC_TMTC); enqueueAck(msg); } else { getModule<Sensors>()->setBaroCalibrationReference(press); - EventBroker::getInstance().post(TMTC_CALIBRATE, TOPIC_TMTC); + EventBroker::getInstance().post( + TMTC_SET_CALIBRATION_PRESSURE, TOPIC_TMTC); if (press < 50000) { diff --git a/src/boards/Main/StateMachines/FlightModeManager/FlightModeManager.cpp b/src/boards/Main/StateMachines/FlightModeManager/FlightModeManager.cpp index 00101fad19bf4ca89fbdb6860eb26bfb7d7afb5c..19289554d7ebcc150a90ad991dd2b2be843ca0c0 100644 --- a/src/boards/Main/StateMachines/FlightModeManager/FlightModeManager.cpp +++ b/src/boards/Main/StateMachines/FlightModeManager/FlightModeManager.cpp @@ -368,6 +368,10 @@ State FlightModeManager::state_disarmed(const Event& event) getModule<CanHandler>()->sendEvent(CanConfig::EventId::CALIBRATE); return transition(&FlightModeManager::state_calibrate_sensors); } + case TMTC_SET_CALIBRATION_PRESSURE: + { + return transition(&FlightModeManager::state_calibrate_sensors); + } case TMTC_ENTER_TEST_MODE: { getModule<CanHandler>()->sendEvent( diff --git a/src/boards/Payload/Radio/MessageHandler.cpp b/src/boards/Payload/Radio/MessageHandler.cpp index 43166cfbaf6159af035b1628a669d3e985c06e73..5d5e322f1cf1f5c08c1c0bcd1c525c06f5824556 100644 --- a/src/boards/Payload/Radio/MessageHandler.cpp +++ b/src/boards/Payload/Radio/MessageHandler.cpp @@ -286,13 +286,15 @@ void Radio::MavlinkBackend::handleMessage(const mavlink_message_t& msg) if (press == 0) { parent.getModule<Sensors>()->resetBaroCalibrationReference(); - EventBroker::getInstance().post(TMTC_CALIBRATE, TOPIC_TMTC); + EventBroker::getInstance().post(TMTC_SET_CALIBRATION_PRESSURE, + TOPIC_TMTC); return enqueueAck(msg); } else { parent.getModule<Sensors>()->setBaroCalibrationReference(press); - EventBroker::getInstance().post(TMTC_CALIBRATE, TOPIC_TMTC); + EventBroker::getInstance().post(TMTC_SET_CALIBRATION_PRESSURE, + TOPIC_TMTC); if (press < 50000) { diff --git a/src/boards/Payload/StateMachines/FlightModeManager/FlightModeManager.cpp b/src/boards/Payload/StateMachines/FlightModeManager/FlightModeManager.cpp index 75e5bcad0bd60da79ad17b74634354431ba59798..3a3d514cc47f45fad926814f7375c70a70b40a6b 100644 --- a/src/boards/Payload/StateMachines/FlightModeManager/FlightModeManager.cpp +++ b/src/boards/Payload/StateMachines/FlightModeManager/FlightModeManager.cpp @@ -412,6 +412,7 @@ State FlightModeManager::OnGroundDisarmed(const Event& event) getModule<CanHandler>()->sendEvent(CanConfig::EventId::CALIBRATE); // Fallthrough } + case TMTC_SET_CALIBRATION_PRESSURE: case CAN_CALIBRATE: { return transition(&FlightModeManager::OnGroundSensorCalibration); diff --git a/src/boards/common/Events.h b/src/boards/common/Events.h index 080074f8b63b37a9363cc528d458de5c014d29f9..fc524997e62255a4e295a0af299ca491f8c49618 100644 --- a/src/boards/common/Events.h +++ b/src/boards/common/Events.h @@ -114,6 +114,7 @@ enum Events : uint8_t TMTC_ARM, TMTC_DISARM, TMTC_CALIBRATE, + TMTC_SET_CALIBRATION_PRESSURE, TMTC_FORCE_INIT, TMTC_FORCE_LAUNCH, TMTC_FORCE_ENGINE_SHUTDOWN, @@ -248,6 +249,7 @@ inline std::string getEventString(uint8_t event) {TMTC_ARM, "TMTC_ARM"}, {TMTC_DISARM, "TMTC_DISARM"}, {TMTC_CALIBRATE, "TMTC_CALIBRATE"}, + {TMTC_SET_CALIBRATION_PRESSURE, "TMTC_SET_CALIBRATION_PRESSURE"}, {TMTC_FORCE_INIT, "TMTC_FORCE_INIT"}, {TMTC_FORCE_LAUNCH, "TMTC_FORCE_LAUNCH"}, {TMTC_FORCE_ENGINE_SHUTDOWN, "TMTC_FORCE_ENGINE_SHUTDOWN"},