From b5870c4aa4e24b33f3baa2ce3a7ea6d1b63dbe87 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Niccol=C3=B2=20Betto?= <niccolo.betto@skywarder.eu>
Date: Sun, 24 Nov 2024 19:13:05 +0100
Subject: [PATCH] [Mavlink] Introduce Orion message definitions

Lyra message definitions have been marked deprecated and will display a warning message during compilation.
---
 src/ConRIG/Buttons/Buttons.h                  |  2 +-
 src/ConRIG/Configs/RadioConfig.h              |  2 +-
 src/ConRIG/Radio/Radio.cpp                    |  2 +-
 src/ConRIG/Radio/Radio.h                      |  2 +-
 src/ConRIG/Serial/Serial.h                    |  2 +-
 .../Automated/Actuators/Actuators.h           |  2 +-
 src/Groundstation/Automated/Hub.cpp           |  2 +-
 src/Groundstation/Automated/Hub.h             |  2 +-
 .../Common/Config/GeneralConfig.h             |  2 +-
 src/Groundstation/Common/HubBase.h            |  2 +-
 src/Groundstation/Common/Ports/EthernetBase.h |  2 +-
 src/Groundstation/Common/Ports/Serial.h       |  2 +-
 src/Groundstation/Common/Radio/RadioBase.h    |  2 +-
 src/Groundstation/LyraGS/Base/Hub.h           |  2 +-
 src/Groundstation/LyraGS/BoardStatus.h        |  2 +-
 src/Groundstation/LyraGS/Ports/SerialLyraGS.h |  2 +-
 src/Groundstation/Nokia/Hub.h                 |  2 +-
 src/Groundstation/Rovie/Hub.h                 |  2 +-
 src/Main/Actuators/Actuators.h                |  2 +-
 src/Main/CanHandler/CanHandler.h              |  2 +-
 src/Main/Configs/RadioConfig.h                |  2 +-
 src/Main/Radio/Radio.h                        |  2 +-
 src/Motor/Actuators/Actuators.h               |  2 +-
 src/Payload/Actuators/Actuators.h             |  2 +-
 src/Payload/CanHandler/CanHandler.h           |  2 +-
 src/Payload/Configs/RadioConfig.h             |  2 +-
 src/Payload/PinHandler/PinHandler.h           |  2 +-
 src/Payload/Radio/Radio.h                     |  2 +-
 src/RIGv2/Actuators/Actuators.h               |  2 +-
 src/RIGv2/CanHandler/CanHandler.h             |  2 +-
 src/RIGv2/Configs/RadioConfig.h               |  2 +-
 src/RIGv2/Radio/Radio.h                       |  2 +-
 src/common/MavlinkGemini.h                    |  4 +-
 src/common/MavlinkLyra.h                      | 87 +++++++++++++++++++
 src/common/{Mavlink.h => MavlinkOrion.h}      |  4 +-
 35 files changed, 124 insertions(+), 35 deletions(-)
 create mode 100644 src/common/MavlinkLyra.h
 rename src/common/{Mavlink.h => MavlinkOrion.h} (97%)

diff --git a/src/ConRIG/Buttons/Buttons.h b/src/ConRIG/Buttons/Buttons.h
index 822178854..362207778 100644
--- a/src/ConRIG/Buttons/Buttons.h
+++ b/src/ConRIG/Buttons/Buttons.h
@@ -23,7 +23,7 @@
 #pragma once
 
 #include <ConRIG/BoardScheduler.h>
-#include <common/Mavlink.h>
+#include <common/MavlinkLyra.h>
 #include <diagnostic/PrintLogger.h>
 #include <scheduler/TaskScheduler.h>
 #include <utils/DependencyManager/DependencyManager.h>
diff --git a/src/ConRIG/Configs/RadioConfig.h b/src/ConRIG/Configs/RadioConfig.h
index 42b6d2064..712e4466c 100644
--- a/src/ConRIG/Configs/RadioConfig.h
+++ b/src/ConRIG/Configs/RadioConfig.h
@@ -22,7 +22,7 @@
 
 #pragma once
 
-#include <common/Mavlink.h>
+#include <common/MavlinkLyra.h>
 #include <units/Frequency.h>
 
 namespace ConRIG
diff --git a/src/ConRIG/Radio/Radio.cpp b/src/ConRIG/Radio/Radio.cpp
index d218a284d..a1092628f 100644
--- a/src/ConRIG/Radio/Radio.cpp
+++ b/src/ConRIG/Radio/Radio.cpp
@@ -22,7 +22,7 @@
 
 #include "Radio.h"
 
-#include <common/Mavlink.h>
+#include <common/MavlinkLyra.h>
 #include <common/Radio.h>
 #include <diagnostic/SkywardStack.h>
 #include <drivers/interrupt/external_interrupts.h>
diff --git a/src/ConRIG/Radio/Radio.h b/src/ConRIG/Radio/Radio.h
index ec2c24991..6c0508892 100644
--- a/src/ConRIG/Radio/Radio.h
+++ b/src/ConRIG/Radio/Radio.h
@@ -27,7 +27,7 @@
 #include <ConRIG/Buttons/Buttons.h>
 #include <ConRIG/Configs/RadioConfig.h>
 #include <ConRIG/Serial/Serial.h>
-#include <common/Mavlink.h>
+#include <common/MavlinkLyra.h>
 #include <diagnostic/PrintLogger.h>
 #include <radio/MavlinkDriver/MavlinkDriver.h>
 #include <radio/SX1278/SX1278Lora.h>
diff --git a/src/ConRIG/Serial/Serial.h b/src/ConRIG/Serial/Serial.h
index eb5fc324f..6d53219d1 100644
--- a/src/ConRIG/Serial/Serial.h
+++ b/src/ConRIG/Serial/Serial.h
@@ -22,7 +22,7 @@
 
 #pragma once
 
-#include <common/Mavlink.h>
+#include <common/MavlinkLyra.h>
 #include <radio/MavlinkDriver/MavlinkDriver.h>
 #include <utils/DependencyManager/DependencyManager.h>
 
diff --git a/src/Groundstation/Automated/Actuators/Actuators.h b/src/Groundstation/Automated/Actuators/Actuators.h
index 6f6b6c739..0d457b1af 100644
--- a/src/Groundstation/Automated/Actuators/Actuators.h
+++ b/src/Groundstation/Automated/Actuators/Actuators.h
@@ -21,7 +21,7 @@
  */
 #pragma once
 
-#include <common/Mavlink.h>
+#include <common/MavlinkLyra.h>
 #include <logger/Logger.h>
 #include <utils/DependencyManager/DependencyManager.h>
 
diff --git a/src/Groundstation/Automated/Hub.cpp b/src/Groundstation/Automated/Hub.cpp
index 8ba014793..bf6c80042 100644
--- a/src/Groundstation/Automated/Hub.cpp
+++ b/src/Groundstation/Automated/Hub.cpp
@@ -30,7 +30,7 @@
 #include <Groundstation/LyraGS/Radio/Radio.h>
 #include <algorithms/NAS/NASState.h>
 #include <common/Events.h>
-#include <common/Mavlink.h>
+#include <common/MavlinkLyra.h>
 #include <logger/Logger.h>
 #include <sensors/SensorData.h>
 
diff --git a/src/Groundstation/Automated/Hub.h b/src/Groundstation/Automated/Hub.h
index c27e13c67..9130dd058 100644
--- a/src/Groundstation/Automated/Hub.h
+++ b/src/Groundstation/Automated/Hub.h
@@ -29,7 +29,7 @@
 #include <Groundstation/LyraGS/Ports/SerialLyraGS.h>
 #include <Groundstation/LyraGS/Radio/Radio.h>
 #include <algorithms/NAS/NASState.h>
-#include <common/Mavlink.h>
+#include <common/MavlinkLyra.h>
 #include <miosix.h>
 #include <sensors/SensorData.h>
 #include <utils/DependencyManager/DependencyManager.h>
diff --git a/src/Groundstation/Common/Config/GeneralConfig.h b/src/Groundstation/Common/Config/GeneralConfig.h
index 9d0314170..ef304c86d 100644
--- a/src/Groundstation/Common/Config/GeneralConfig.h
+++ b/src/Groundstation/Common/Config/GeneralConfig.h
@@ -22,7 +22,7 @@
 
 #pragma once
 
-#include <common/Mavlink.h>
+#include <common/MavlinkLyra.h>
 
 #include <cstdint>
 namespace Groundstation
diff --git a/src/Groundstation/Common/HubBase.h b/src/Groundstation/Common/HubBase.h
index ea981ffcd..f121655d1 100644
--- a/src/Groundstation/Common/HubBase.h
+++ b/src/Groundstation/Common/HubBase.h
@@ -22,7 +22,7 @@
 
 #pragma once
 
-#include <common/Mavlink.h>
+#include <common/MavlinkLyra.h>
 #include <utils/DependencyManager/DependencyManager.h>
 
 namespace Groundstation
diff --git a/src/Groundstation/Common/Ports/EthernetBase.h b/src/Groundstation/Common/Ports/EthernetBase.h
index c370ae3d0..1113560c8 100644
--- a/src/Groundstation/Common/Ports/EthernetBase.h
+++ b/src/Groundstation/Common/Ports/EthernetBase.h
@@ -24,7 +24,7 @@
 
 #include <ActiveObject.h>
 #include <Groundstation/Common/HubBase.h>
-#include <common/Mavlink.h>
+#include <common/MavlinkLyra.h>
 #include <drivers/WIZ5500/WIZ5500.h>
 #include <radio/MavlinkDriver/MavlinkDriver.h>
 #include <utils/DependencyManager/DependencyManager.h>
diff --git a/src/Groundstation/Common/Ports/Serial.h b/src/Groundstation/Common/Ports/Serial.h
index 199bc1ba4..abfba264d 100644
--- a/src/Groundstation/Common/Ports/Serial.h
+++ b/src/Groundstation/Common/Ports/Serial.h
@@ -24,7 +24,7 @@
 
 #include <ActiveObject.h>
 #include <Groundstation/Common/HubBase.h>
-#include <common/Mavlink.h>
+#include <common/MavlinkLyra.h>
 #include <filesystem/console/console_device.h>
 #include <radio/MavlinkDriver/MavlinkDriver.h>
 #include <utils/DependencyManager/DependencyManager.h>
diff --git a/src/Groundstation/Common/Radio/RadioBase.h b/src/Groundstation/Common/Radio/RadioBase.h
index fc8bf2d33..6a6c454ab 100644
--- a/src/Groundstation/Common/Radio/RadioBase.h
+++ b/src/Groundstation/Common/Radio/RadioBase.h
@@ -25,7 +25,7 @@
 #include <ActiveObject.h>
 #include <Groundstation/Common/Config/RadioConfig.h>
 #include <Groundstation/Common/HubBase.h>
-#include <common/Mavlink.h>
+#include <common/MavlinkLyra.h>
 #include <common/Radio.h>
 #include <radio/MavlinkDriver/MavlinkDriver.h>
 #include <radio/SX1278/SX1278Fsk.h>
diff --git a/src/Groundstation/LyraGS/Base/Hub.h b/src/Groundstation/LyraGS/Base/Hub.h
index 0e792bf28..628f3d617 100644
--- a/src/Groundstation/LyraGS/Base/Hub.h
+++ b/src/Groundstation/LyraGS/Base/Hub.h
@@ -25,7 +25,7 @@
 #include <Groundstation/Common/HubBase.h>
 #include <Groundstation/LyraGS/Ports/Ethernet.h>
 #include <Groundstation/LyraGS/Ports/SerialLyraGS.h>
-#include <common/Mavlink.h>
+#include <common/MavlinkLyra.h>
 #include <utils/DependencyManager/DependencyManager.h>
 
 namespace GroundstationBase
diff --git a/src/Groundstation/LyraGS/BoardStatus.h b/src/Groundstation/LyraGS/BoardStatus.h
index 0396a2b07..185327fc8 100644
--- a/src/Groundstation/LyraGS/BoardStatus.h
+++ b/src/Groundstation/LyraGS/BoardStatus.h
@@ -32,7 +32,7 @@
 #include <Groundstation/Common/Radio/RadioBase.h>
 #include <Groundstation/LyraGS/Ports/Ethernet.h>
 #include <Groundstation/LyraGS/Radio/Radio.h>
-#include <common/Mavlink.h>
+#include <common/MavlinkLyra.h>
 #include <drivers/timer/TimestampTimer.h>
 #include <utils/DependencyManager/DependencyManager.h>
 #include <utils/collections/CircularBuffer.h>
diff --git a/src/Groundstation/LyraGS/Ports/SerialLyraGS.h b/src/Groundstation/LyraGS/Ports/SerialLyraGS.h
index 5fdece2f3..bc54eb152 100644
--- a/src/Groundstation/LyraGS/Ports/SerialLyraGS.h
+++ b/src/Groundstation/LyraGS/Ports/SerialLyraGS.h
@@ -27,7 +27,7 @@
 #include <Groundstation/Common/Ports/Serial.h>
 #include <Groundstation/LyraGS/BoardStatus.h>
 #include <Groundstation/LyraGS/Buses.h>
-#include <common/Mavlink.h>
+#include <common/MavlinkLyra.h>
 #include <drivers/usart/USART.h>
 #include <filesystem/console/console_device.h>
 #include <radio/MavlinkDriver/MavlinkDriver.h>
diff --git a/src/Groundstation/Nokia/Hub.h b/src/Groundstation/Nokia/Hub.h
index 920e151cd..ab90123f1 100644
--- a/src/Groundstation/Nokia/Hub.h
+++ b/src/Groundstation/Nokia/Hub.h
@@ -25,7 +25,7 @@
 #include <Groundstation/Common/HubBase.h>
 #include <Groundstation/Common/Ports/Serial.h>
 #include <Groundstation/Nokia/Radio/Radio.h>
-#include <common/Mavlink.h>
+#include <common/MavlinkLyra.h>
 #include <utils/DependencyManager/DependencyManager.h>
 
 namespace GroundstationNokia
diff --git a/src/Groundstation/Rovie/Hub.h b/src/Groundstation/Rovie/Hub.h
index b74a80901..02b132826 100644
--- a/src/Groundstation/Rovie/Hub.h
+++ b/src/Groundstation/Rovie/Hub.h
@@ -26,7 +26,7 @@
 #include <Groundstation/Common/Ports/Serial.h>
 #include <Groundstation/Rovie/Ports/Ethernet.h>
 #include <Groundstation/Rovie/Radio/Radio.h>
-#include <common/Mavlink.h>
+#include <common/MavlinkLyra.h>
 #include <utils/DependencyManager/DependencyManager.h>
 
 namespace GroundstationRovie
diff --git a/src/Main/Actuators/Actuators.h b/src/Main/Actuators/Actuators.h
index 3e5801147..6b8651179 100644
--- a/src/Main/Actuators/Actuators.h
+++ b/src/Main/Actuators/Actuators.h
@@ -24,7 +24,7 @@
 
 #include <Main/BoardScheduler.h>
 #include <actuators/Servo/Servo.h>
-#include <common/Mavlink.h>
+#include <common/MavlinkLyra.h>
 #include <scheduler/TaskScheduler.h>
 #include <utils/DependencyManager/DependencyManager.h>
 
diff --git a/src/Main/CanHandler/CanHandler.h b/src/Main/CanHandler/CanHandler.h
index 60c7c47fe..b8ddac87d 100644
--- a/src/Main/CanHandler/CanHandler.h
+++ b/src/Main/CanHandler/CanHandler.h
@@ -27,7 +27,7 @@
 #include <Main/PersistentVars/PersistentVars.h>
 #include <Main/Sensors/Sensors.h>
 #include <common/CanConfig.h>
-#include <common/Mavlink.h>
+#include <common/MavlinkLyra.h>
 #include <drivers/canbus/CanProtocol/CanProtocol.h>
 #include <utils/DependencyManager/DependencyManager.h>
 
diff --git a/src/Main/Configs/RadioConfig.h b/src/Main/Configs/RadioConfig.h
index 05a31165a..34fe287ff 100644
--- a/src/Main/Configs/RadioConfig.h
+++ b/src/Main/Configs/RadioConfig.h
@@ -22,7 +22,7 @@
 
 #pragma once
 
-#include <common/Mavlink.h>
+#include <common/MavlinkLyra.h>
 #include <units/Frequency.h>
 
 namespace Main
diff --git a/src/Main/Radio/Radio.h b/src/Main/Radio/Radio.h
index a77ed4eea..33e89244e 100644
--- a/src/Main/Radio/Radio.h
+++ b/src/Main/Radio/Radio.h
@@ -36,7 +36,7 @@
 #include <Main/StateMachines/MEAController/MEAController.h>
 #include <Main/StateMachines/NASController/NASController.h>
 #include <Main/StatsRecorder/StatsRecorder.h>
-#include <common/Mavlink.h>
+#include <common/MavlinkLyra.h>
 #include <radio/MavlinkDriver/MavlinkDriver.h>
 #include <radio/SX1278/SX1278Fsk.h>
 #include <scheduler/TaskScheduler.h>
diff --git a/src/Motor/Actuators/Actuators.h b/src/Motor/Actuators/Actuators.h
index 0e4eed38c..329d0c5ff 100644
--- a/src/Motor/Actuators/Actuators.h
+++ b/src/Motor/Actuators/Actuators.h
@@ -25,7 +25,7 @@
 #include <Motor/BoardScheduler.h>
 #include <Motor/CanHandler/CanHandler.h>
 #include <actuators/Servo/Servo.h>
-#include <common/Mavlink.h>
+#include <common/MavlinkLyra.h>
 #include <utils/DependencyManager/DependencyManager.h>
 
 namespace Motor
diff --git a/src/Payload/Actuators/Actuators.h b/src/Payload/Actuators/Actuators.h
index 3ad14d3db..14911fd85 100644
--- a/src/Payload/Actuators/Actuators.h
+++ b/src/Payload/Actuators/Actuators.h
@@ -23,7 +23,7 @@
 #pragma once
 
 #include <actuators/Servo/Servo.h>
-#include <common/Mavlink.h>
+#include <common/MavlinkLyra.h>
 #include <utils/DependencyManager/DependencyManager.h>
 
 namespace Payload
diff --git a/src/Payload/CanHandler/CanHandler.h b/src/Payload/CanHandler/CanHandler.h
index a45ccdc94..fee6448ca 100644
--- a/src/Payload/CanHandler/CanHandler.h
+++ b/src/Payload/CanHandler/CanHandler.h
@@ -23,7 +23,7 @@
 #pragma once
 
 #include <common/CanConfig.h>
-#include <common/Mavlink.h>
+#include <common/MavlinkLyra.h>
 #include <drivers/canbus/CanProtocol/CanProtocol.h>
 #include <utils/DependencyManager/DependencyManager.h>
 
diff --git a/src/Payload/Configs/RadioConfig.h b/src/Payload/Configs/RadioConfig.h
index 0175d6997..92a3c76a0 100644
--- a/src/Payload/Configs/RadioConfig.h
+++ b/src/Payload/Configs/RadioConfig.h
@@ -21,7 +21,7 @@
  */
 #pragma once
 
-#include <common/Mavlink.h>
+#include <common/MavlinkLyra.h>
 #include <units/Frequency.h>
 
 #include <chrono>
diff --git a/src/Payload/PinHandler/PinHandler.h b/src/Payload/PinHandler/PinHandler.h
index 308c5770e..159614f9a 100644
--- a/src/Payload/PinHandler/PinHandler.h
+++ b/src/Payload/PinHandler/PinHandler.h
@@ -22,7 +22,7 @@
 
 #pragma once
 
-#include <common/Mavlink.h>
+#include <common/MavlinkLyra.h>
 #include <diagnostic/PrintLogger.h>
 #include <utils/DependencyManager/DependencyManager.h>
 #include <utils/PinObserver/PinObserver.h>
diff --git a/src/Payload/Radio/Radio.h b/src/Payload/Radio/Radio.h
index 817e961f8..563d0b56e 100644
--- a/src/Payload/Radio/Radio.h
+++ b/src/Payload/Radio/Radio.h
@@ -24,7 +24,7 @@
 
 #include <Payload/Configs/RadioConfig.h>
 #include <Payload/PersistentVars/PersistentVars.h>
-#include <common/Mavlink.h>
+#include <common/MavlinkLyra.h>
 #include <radio/MavlinkDriver/MavlinkDriver.h>
 #include <radio/SX1278/SX1278Fsk.h>
 #include <radio/SerialTransceiver/SerialTransceiver.h>
diff --git a/src/RIGv2/Actuators/Actuators.h b/src/RIGv2/Actuators/Actuators.h
index bd2ef33fd..939cd5e25 100644
--- a/src/RIGv2/Actuators/Actuators.h
+++ b/src/RIGv2/Actuators/Actuators.h
@@ -26,7 +26,7 @@
 #include <RIGv2/CanHandler/CanHandler.h>
 #include <RIGv2/Registry/Registry.h>
 #include <actuators/Servo/Servo.h>
-#include <common/Mavlink.h>
+#include <common/MavlinkLyra.h>
 #include <miosix.h>
 #include <scheduler/TaskScheduler.h>
 
diff --git a/src/RIGv2/CanHandler/CanHandler.h b/src/RIGv2/CanHandler/CanHandler.h
index 065389a4e..66a242ac8 100644
--- a/src/RIGv2/CanHandler/CanHandler.h
+++ b/src/RIGv2/CanHandler/CanHandler.h
@@ -26,7 +26,7 @@
 #include <RIGv2/Configs/CanHandlerConfig.h>
 #include <RIGv2/Sensors/Sensors.h>
 #include <common/CanConfig.h>
-#include <common/Mavlink.h>
+#include <common/MavlinkLyra.h>
 #include <drivers/canbus/CanProtocol/CanProtocol.h>
 #include <utils/DependencyManager/DependencyManager.h>
 
diff --git a/src/RIGv2/Configs/RadioConfig.h b/src/RIGv2/Configs/RadioConfig.h
index a094a7a9f..9b3039b9a 100644
--- a/src/RIGv2/Configs/RadioConfig.h
+++ b/src/RIGv2/Configs/RadioConfig.h
@@ -22,7 +22,7 @@
 
 #pragma once
 
-#include <common/Mavlink.h>
+#include <common/MavlinkLyra.h>
 
 namespace RIGv2
 {
diff --git a/src/RIGv2/Radio/Radio.h b/src/RIGv2/Radio/Radio.h
index 01cf7e4ba..e55d15bde 100644
--- a/src/RIGv2/Radio/Radio.h
+++ b/src/RIGv2/Radio/Radio.h
@@ -31,7 +31,7 @@
 #include <RIGv2/Sensors/Sensors.h>
 #include <RIGv2/StateMachines/GroundModeManager/GroundModeManager.h>
 #include <RIGv2/StateMachines/TARS1/TARS1.h>
-#include <common/Mavlink.h>
+#include <common/MavlinkLyra.h>
 #include <interfaces-impl/hwmapping.h>
 #include <radio/MavlinkDriver/MavlinkDriver.h>
 #include <radio/SX1278/SX1278Lora.h>
diff --git a/src/common/MavlinkGemini.h b/src/common/MavlinkGemini.h
index 97ea89d8f..0cb3e7cf1 100644
--- a/src/common/MavlinkGemini.h
+++ b/src/common/MavlinkGemini.h
@@ -26,4 +26,6 @@
 #pragma GCC diagnostic ignored "-Waddress-of-packed-member"
 #pragma GCC diagnostic ignored "-Wmaybe-uninitialized"
 #include <mavlink_lib/gemini/mavlink.h>
-#pragma GCC diagnostic pop
\ No newline at end of file
+#pragma GCC diagnostic pop
+
+#warning "Gemini message definitions are deprecated, consider updating"
diff --git a/src/common/MavlinkLyra.h b/src/common/MavlinkLyra.h
new file mode 100644
index 000000000..e6cd6b5c0
--- /dev/null
+++ b/src/common/MavlinkLyra.h
@@ -0,0 +1,87 @@
+/* Copyright (c) 2024 Skyward Experimental Rocketry
+ * Author: Davide Mor
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
+#pragma once
+
+// Ignore warnings as these are auto-generated headers made by a third party
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wcast-align"
+#pragma GCC diagnostic ignored "-Waddress-of-packed-member"
+#pragma GCC diagnostic ignored "-Wmaybe-uninitialized"
+#include <mavlink_lib/lyra/mavlink.h>
+#pragma GCC diagnostic pop
+
+#warning "Lyra message definitions are deprecated, consider updating"
+
+#include <common/Events.h>
+
+namespace Common
+{
+
+inline Events mavCmdToEvent(uint8_t id)
+{
+    switch (id)
+    {
+        case MAV_CMD_ARM:
+            return TMTC_ARM;
+        case MAV_CMD_DISARM:
+            return TMTC_DISARM;
+        case MAV_CMD_CALIBRATE:
+            return TMTC_CALIBRATE;
+        case MAV_CMD_FORCE_INIT:
+            return TMTC_FORCE_INIT;
+        case MAV_CMD_FORCE_LAUNCH:
+            return TMTC_FORCE_LAUNCH;
+        case MAV_CMD_FORCE_ENGINE_SHUTDOWN:
+            return TMTC_FORCE_ENGINE_SHUTDOWN;
+        case MAV_CMD_FORCE_EXPULSION:
+            return TMTC_FORCE_EXPULSION;
+        case MAV_CMD_FORCE_DEPLOYMENT:
+            return TMTC_FORCE_DEPLOYMENT;
+        case MAV_CMD_FORCE_LANDING:
+            return TMTC_FORCE_LANDING;
+        case MAV_CMD_START_LOGGING:
+            return TMTC_START_LOGGING;
+        case MAV_CMD_STOP_LOGGING:
+            return TMTC_STOP_LOGGING;
+        case MAV_CMD_FORCE_REBOOT:
+            return TMTC_RESET_BOARD;
+        case MAV_CMD_ENTER_TEST_MODE:
+            return TMTC_ENTER_TEST_MODE;
+        case MAV_CMD_EXIT_TEST_MODE:
+            return TMTC_EXIT_TEST_MODE;
+        case MAV_CMD_ENTER_HIL:
+            return TMTC_ENTER_HIL_MODE;
+        case MAV_CMD_EXIT_HIL:
+            return TMTC_EXIT_HIL_MODE;
+        case MAV_CMD_START_RECORDING:
+            return TMTC_START_RECORDING;
+        case MAV_CMD_STOP_RECORDING:
+            return TMTC_STOP_RECORDING;
+        case MAV_CMD_OPEN_NITROGEN:
+            return TMTC_OPEN_NITROGEN;
+        default:
+            return LAST_EVENT;
+    }
+}
+
+}  // namespace Common
\ No newline at end of file
diff --git a/src/common/Mavlink.h b/src/common/MavlinkOrion.h
similarity index 97%
rename from src/common/Mavlink.h
rename to src/common/MavlinkOrion.h
index ac00532fa..bd6f7ffaa 100644
--- a/src/common/Mavlink.h
+++ b/src/common/MavlinkOrion.h
@@ -1,5 +1,5 @@
 /* Copyright (c) 2024 Skyward Experimental Rocketry
- * Author: Davide Mor
+ * Author: Niccolò Betto
  *
  * Permission is hereby granted, free of charge, to any person obtaining a copy
  * of this software and associated documentation files (the "Software"), to deal
@@ -27,7 +27,7 @@
 #pragma GCC diagnostic ignored "-Wcast-align"
 #pragma GCC diagnostic ignored "-Waddress-of-packed-member"
 #pragma GCC diagnostic ignored "-Wmaybe-uninitialized"
-#include <mavlink_lib/lyra/mavlink.h>
+#include <mavlink_lib/orion/mavlink.h>
 #pragma GCC diagnostic pop
 
 #include <common/Events.h>
-- 
GitLab