diff --git a/mavlink_lib.py b/mavlink_lib.py
index 459a22324a8d3a1ca754d66fe0f4f08e421b4e82..2c57eac58b920a3f3cf55f31f402de84c93f95ae 100644
--- a/mavlink_lib.py
+++ b/mavlink_lib.py
@@ -316,8 +316,10 @@ MAV_REGISTRY_ID = 15 # Command to fetch all registry keys
 enums['SystemTMList'][15] = EnumEntry('MAV_REGISTRY_ID', '''Command to fetch all registry keys''')
 MAV_REFERENCE_ID = 16 # Command to fetch reference values
 enums['SystemTMList'][16] = EnumEntry('MAV_REFERENCE_ID', '''Command to fetch reference values''')
-SystemTMList_ENUM_END = 17 # 
-enums['SystemTMList'][17] = EnumEntry('SystemTMList_ENUM_END', '''''')
+MAV_CALIBRATION_ID = 17 # Command to fetch calibration values
+enums['SystemTMList'][17] = EnumEntry('MAV_CALIBRATION_ID', '''Command to fetch calibration values''')
+SystemTMList_ENUM_END = 18 # 
+enums['SystemTMList'][18] = EnumEntry('SystemTMList_ENUM_END', '''''')
 
 # SensorsTMList
 enums['SensorsTMList'] = {}
@@ -508,6 +510,8 @@ MAVLINK_MSG_ID_RAW_EVENT_TC = 14
 MAVLINK_MSG_ID_SET_DEPLOYMENT_ALTITUDE_TC = 15
 MAVLINK_MSG_ID_SET_TARGET_COORDINATES_TC = 16
 MAVLINK_MSG_ID_SET_ALGORITHM_TC = 17
+MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC = 18
+MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC = 19
 MAVLINK_MSG_ID_SET_ATOMIC_VALVE_TIMING_TC = 30
 MAVLINK_MSG_ID_SET_VALVE_MAXIMUM_APERTURE_TC = 31
 MAVLINK_MSG_ID_CONRIG_STATE_TC = 32
@@ -554,6 +558,7 @@ MAVLINK_MSG_ID_ROCKET_STATS_TM = 210
 MAVLINK_MSG_ID_PAYLOAD_STATS_TM = 211
 MAVLINK_MSG_ID_GSE_TM = 212
 MAVLINK_MSG_ID_MOTOR_TM = 213
+MAVLINK_MSG_ID_CALIBRATION_TM = 214
 
 class MAVLink_ping_tc_message(MAVLink_message):
         '''
@@ -1111,6 +1116,70 @@ class MAVLink_set_algorithm_tc_message(MAVLink_message):
         def pack(self, mav, force_mavlink1=False):
                 return MAVLink_message.pack(self, mav, 181, struct.pack('<B', self.algorithm_number), force_mavlink1=force_mavlink1)
 
+class MAVLink_set_calibration_pressure_tc_message(MAVLink_message):
+        '''
+        Set the pressure used for analog pressure calibration
+        '''
+        id = MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC
+        name = 'SET_CALIBRATION_PRESSURE_TC'
+        fieldnames = ['pressure']
+        ordered_fieldnames = ['pressure']
+        fieldtypes = ['float']
+        fielddisplays_by_name = {}
+        fieldenums_by_name = {}
+        fieldunits_by_name = {"pressure": "Pa"}
+        format = '<f'
+        native_format = bytearray('<f', 'ascii')
+        orders = [0]
+        lengths = [1]
+        array_lengths = [0]
+        crc_extra = 199
+        unpacker = struct.Struct('<f')
+        instance_field = None
+        instance_offset = -1
+
+        def __init__(self, pressure):
+                MAVLink_message.__init__(self, MAVLink_set_calibration_pressure_tc_message.id, MAVLink_set_calibration_pressure_tc_message.name)
+                self._fieldnames = MAVLink_set_calibration_pressure_tc_message.fieldnames
+                self._instance_field = MAVLink_set_calibration_pressure_tc_message.instance_field
+                self._instance_offset = MAVLink_set_calibration_pressure_tc_message.instance_offset
+                self.pressure = pressure
+
+        def pack(self, mav, force_mavlink1=False):
+                return MAVLink_message.pack(self, mav, 199, struct.pack('<f', self.pressure), force_mavlink1=force_mavlink1)
+
+class MAVLink_set_initial_mea_mass_tc_message(MAVLink_message):
+        '''
+        Set the initial MEA mass
+        '''
+        id = MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC
+        name = 'SET_INITIAL_MEA_MASS_TC'
+        fieldnames = ['mass']
+        ordered_fieldnames = ['mass']
+        fieldtypes = ['float']
+        fielddisplays_by_name = {}
+        fieldenums_by_name = {}
+        fieldunits_by_name = {"mass": "kg"}
+        format = '<f'
+        native_format = bytearray('<f', 'ascii')
+        orders = [0]
+        lengths = [1]
+        array_lengths = [0]
+        crc_extra = 221
+        unpacker = struct.Struct('<f')
+        instance_field = None
+        instance_offset = -1
+
+        def __init__(self, mass):
+                MAVLink_message.__init__(self, MAVLink_set_initial_mea_mass_tc_message.id, MAVLink_set_initial_mea_mass_tc_message.name)
+                self._fieldnames = MAVLink_set_initial_mea_mass_tc_message.fieldnames
+                self._instance_field = MAVLink_set_initial_mea_mass_tc_message.instance_field
+                self._instance_offset = MAVLink_set_initial_mea_mass_tc_message.instance_offset
+                self.mass = mass
+
+        def pack(self, mav, force_mavlink1=False):
+                return MAVLink_message.pack(self, mav, 221, struct.pack('<f', self.mass), force_mavlink1=force_mavlink1)
+
 class MAVLink_set_atomic_valve_timing_tc_message(MAVLink_message):
         '''
         Sets the maximum time that the valves can be open atomically
@@ -2609,23 +2678,23 @@ class MAVLink_rocket_flight_tm_message(MAVLink_message):
         '''
         id = MAVLINK_MSG_ID_ROCKET_FLIGHT_TM
         name = 'ROCKET_FLIGHT_TM'
-        fieldnames = ['timestamp', 'pressure_ada', 'pressure_digi', 'pressure_static', 'pressure_dpl', 'airspeed_pitot', 'altitude_agl', 'ada_vert_speed', 'mea_mass', 'mea_apogee', 'acc_x', 'acc_y', 'acc_z', 'gyro_x', 'gyro_y', 'gyro_z', 'mag_x', 'mag_y', 'mag_z', 'vn100_qx', 'vn100_qy', 'vn100_qz', 'vn100_qw', 'gps_fix', 'gps_lat', 'gps_lon', 'gps_alt', 'abk_angle', 'nas_n', 'nas_e', 'nas_d', 'nas_vn', 'nas_ve', 'nas_vd', 'nas_qx', 'nas_qy', 'nas_qz', 'nas_qw', 'nas_bias_x', 'nas_bias_y', 'nas_bias_z', 'battery_voltage', 'cam_battery_voltage', 'temperature']
-        ordered_fieldnames = ['timestamp', 'pressure_ada', 'pressure_digi', 'pressure_static', 'pressure_dpl', 'airspeed_pitot', 'altitude_agl', 'ada_vert_speed', 'mea_mass', 'mea_apogee', 'acc_x', 'acc_y', 'acc_z', 'gyro_x', 'gyro_y', 'gyro_z', 'mag_x', 'mag_y', 'mag_z', 'vn100_qx', 'vn100_qy', 'vn100_qz', 'vn100_qw', 'gps_lat', 'gps_lon', 'gps_alt', 'abk_angle', 'nas_n', 'nas_e', 'nas_d', 'nas_vn', 'nas_ve', 'nas_vd', 'nas_qx', 'nas_qy', 'nas_qz', 'nas_qw', 'nas_bias_x', 'nas_bias_y', 'nas_bias_z', 'battery_voltage', 'cam_battery_voltage', 'temperature', 'gps_fix']
-        fieldtypes = ['uint64_t', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'uint8_t', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float']
+        fieldnames = ['timestamp', 'pressure_ada', 'pressure_digi', 'pressure_static', 'pressure_dpl', 'airspeed_pitot', 'altitude_agl', 'ada_vert_speed', 'mea_mass', 'mea_apogee', 'acc_x', 'acc_y', 'acc_z', 'gyro_x', 'gyro_y', 'gyro_z', 'mag_x', 'mag_y', 'mag_z', 'vn100_qx', 'vn100_qy', 'vn100_qz', 'vn100_qw', 'gps_fix', 'gps_lat', 'gps_lon', 'gps_alt', 'fmm_state', 'abk_angle', 'nas_n', 'nas_e', 'nas_d', 'nas_vn', 'nas_ve', 'nas_vd', 'nas_qx', 'nas_qy', 'nas_qz', 'nas_qw', 'nas_bias_x', 'nas_bias_y', 'nas_bias_z', 'battery_voltage', 'cam_battery_voltage', 'temperature']
+        ordered_fieldnames = ['timestamp', 'pressure_ada', 'pressure_digi', 'pressure_static', 'pressure_dpl', 'airspeed_pitot', 'altitude_agl', 'ada_vert_speed', 'mea_mass', 'mea_apogee', 'acc_x', 'acc_y', 'acc_z', 'gyro_x', 'gyro_y', 'gyro_z', 'mag_x', 'mag_y', 'mag_z', 'vn100_qx', 'vn100_qy', 'vn100_qz', 'vn100_qw', 'gps_lat', 'gps_lon', 'gps_alt', 'abk_angle', 'nas_n', 'nas_e', 'nas_d', 'nas_vn', 'nas_ve', 'nas_vd', 'nas_qx', 'nas_qy', 'nas_qz', 'nas_qw', 'nas_bias_x', 'nas_bias_y', 'nas_bias_z', 'battery_voltage', 'cam_battery_voltage', 'temperature', 'gps_fix', 'fmm_state']
+        fieldtypes = ['uint64_t', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'uint8_t', 'float', 'float', 'float', 'uint8_t', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float']
         fielddisplays_by_name = {}
         fieldenums_by_name = {}
         fieldunits_by_name = {"timestamp": "us", "pressure_ada": "Pa", "pressure_digi": "Pa", "pressure_static": "Pa", "pressure_dpl": "Pa", "airspeed_pitot": "m/s", "altitude_agl": "m", "ada_vert_speed": "m/s", "mea_mass": "kg", "mea_apogee": "m", "acc_x": "m/s^2", "acc_y": "m/s^2", "acc_z": "m/s^2", "gyro_x": "rad/s", "gyro_y": "rad/s", "gyro_z": "rad/s", "mag_x": "uT", "mag_y": "uT", "mag_z": "uT", "gps_lat": "deg", "gps_lon": "deg", "gps_alt": "m", "nas_n": "deg", "nas_e": "deg", "nas_d": "m", "nas_vn": "m/s", "nas_ve": "m/s", "nas_vd": "m/s", "battery_voltage": "V", "cam_battery_voltage": "V", "temperature": "degC"}
-        format = '<QffffffffffffffffffffffffffffffffffffffffffB'
-        native_format = bytearray('<QffffffffffffffffffffffffffffffffffffffffffB', 'ascii')
-        orders = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 43, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42]
-        lengths = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
-        array_lengths = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
-        crc_extra = 79
-        unpacker = struct.Struct('<QffffffffffffffffffffffffffffffffffffffffffB')
+        format = '<QffffffffffffffffffffffffffffffffffffffffffBB'
+        native_format = bytearray('<QffffffffffffffffffffffffffffffffffffffffffBB', 'ascii')
+        orders = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 43, 23, 24, 25, 44, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42]
+        lengths = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
+        array_lengths = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
+        crc_extra = 235
+        unpacker = struct.Struct('<QffffffffffffffffffffffffffffffffffffffffffBB')
         instance_field = None
         instance_offset = -1
 
-        def __init__(self, timestamp, pressure_ada, pressure_digi, pressure_static, pressure_dpl, airspeed_pitot, altitude_agl, ada_vert_speed, mea_mass, mea_apogee, acc_x, acc_y, acc_z, gyro_x, gyro_y, gyro_z, mag_x, mag_y, mag_z, vn100_qx, vn100_qy, vn100_qz, vn100_qw, gps_fix, gps_lat, gps_lon, gps_alt, abk_angle, nas_n, nas_e, nas_d, nas_vn, nas_ve, nas_vd, nas_qx, nas_qy, nas_qz, nas_qw, nas_bias_x, nas_bias_y, nas_bias_z, battery_voltage, cam_battery_voltage, temperature):
+        def __init__(self, timestamp, pressure_ada, pressure_digi, pressure_static, pressure_dpl, airspeed_pitot, altitude_agl, ada_vert_speed, mea_mass, mea_apogee, acc_x, acc_y, acc_z, gyro_x, gyro_y, gyro_z, mag_x, mag_y, mag_z, vn100_qx, vn100_qy, vn100_qz, vn100_qw, gps_fix, gps_lat, gps_lon, gps_alt, fmm_state, abk_angle, nas_n, nas_e, nas_d, nas_vn, nas_ve, nas_vd, nas_qx, nas_qy, nas_qz, nas_qw, nas_bias_x, nas_bias_y, nas_bias_z, battery_voltage, cam_battery_voltage, temperature):
                 MAVLink_message.__init__(self, MAVLink_rocket_flight_tm_message.id, MAVLink_rocket_flight_tm_message.name)
                 self._fieldnames = MAVLink_rocket_flight_tm_message.fieldnames
                 self._instance_field = MAVLink_rocket_flight_tm_message.instance_field
@@ -2657,6 +2726,7 @@ class MAVLink_rocket_flight_tm_message(MAVLink_message):
                 self.gps_lat = gps_lat
                 self.gps_lon = gps_lon
                 self.gps_alt = gps_alt
+                self.fmm_state = fmm_state
                 self.abk_angle = abk_angle
                 self.nas_n = nas_n
                 self.nas_e = nas_e
@@ -2676,7 +2746,7 @@ class MAVLink_rocket_flight_tm_message(MAVLink_message):
                 self.temperature = temperature
 
         def pack(self, mav, force_mavlink1=False):
-                return MAVLink_message.pack(self, mav, 79, struct.pack('<QffffffffffffffffffffffffffffffffffffffffffB', self.timestamp, self.pressure_ada, self.pressure_digi, self.pressure_static, self.pressure_dpl, self.airspeed_pitot, self.altitude_agl, self.ada_vert_speed, self.mea_mass, self.mea_apogee, self.acc_x, self.acc_y, self.acc_z, self.gyro_x, self.gyro_y, self.gyro_z, self.mag_x, self.mag_y, self.mag_z, self.vn100_qx, self.vn100_qy, self.vn100_qz, self.vn100_qw, self.gps_lat, self.gps_lon, self.gps_alt, self.abk_angle, self.nas_n, self.nas_e, self.nas_d, self.nas_vn, self.nas_ve, self.nas_vd, self.nas_qx, self.nas_qy, self.nas_qz, self.nas_qw, self.nas_bias_x, self.nas_bias_y, self.nas_bias_z, self.battery_voltage, self.cam_battery_voltage, self.temperature, self.gps_fix), force_mavlink1=force_mavlink1)
+                return MAVLink_message.pack(self, mav, 235, struct.pack('<QffffffffffffffffffffffffffffffffffffffffffBB', self.timestamp, self.pressure_ada, self.pressure_digi, self.pressure_static, self.pressure_dpl, self.airspeed_pitot, self.altitude_agl, self.ada_vert_speed, self.mea_mass, self.mea_apogee, self.acc_x, self.acc_y, self.acc_z, self.gyro_x, self.gyro_y, self.gyro_z, self.mag_x, self.mag_y, self.mag_z, self.vn100_qx, self.vn100_qy, self.vn100_qz, self.vn100_qw, self.gps_lat, self.gps_lon, self.gps_alt, self.abk_angle, self.nas_n, self.nas_e, self.nas_d, self.nas_vn, self.nas_ve, self.nas_vd, self.nas_qx, self.nas_qy, self.nas_qz, self.nas_qw, self.nas_bias_x, self.nas_bias_y, self.nas_bias_z, self.battery_voltage, self.cam_battery_voltage, self.temperature, self.gps_fix, self.fmm_state), force_mavlink1=force_mavlink1)
 
 class MAVLink_payload_flight_tm_message(MAVLink_message):
         '''
@@ -2684,23 +2754,23 @@ class MAVLink_payload_flight_tm_message(MAVLink_message):
         '''
         id = MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM
         name = 'PAYLOAD_FLIGHT_TM'
-        fieldnames = ['timestamp', 'pressure_digi', 'pressure_static', 'airspeed_pitot', 'altitude_agl', 'acc_x', 'acc_y', 'acc_z', 'gyro_x', 'gyro_y', 'gyro_z', 'mag_x', 'mag_y', 'mag_z', 'gps_fix', 'gps_lat', 'gps_lon', 'gps_alt', 'left_servo_angle', 'right_servo_angle', 'nas_n', 'nas_e', 'nas_d', 'nas_vn', 'nas_ve', 'nas_vd', 'nas_qx', 'nas_qy', 'nas_qz', 'nas_qw', 'nas_bias_x', 'nas_bias_y', 'nas_bias_z', 'wes_n', 'wes_e', 'battery_voltage', 'cam_battery_voltage', 'temperature']
-        ordered_fieldnames = ['timestamp', 'pressure_digi', 'pressure_static', 'airspeed_pitot', 'altitude_agl', 'acc_x', 'acc_y', 'acc_z', 'gyro_x', 'gyro_y', 'gyro_z', 'mag_x', 'mag_y', 'mag_z', 'gps_lat', 'gps_lon', 'gps_alt', 'left_servo_angle', 'right_servo_angle', 'nas_n', 'nas_e', 'nas_d', 'nas_vn', 'nas_ve', 'nas_vd', 'nas_qx', 'nas_qy', 'nas_qz', 'nas_qw', 'nas_bias_x', 'nas_bias_y', 'nas_bias_z', 'wes_n', 'wes_e', 'battery_voltage', 'cam_battery_voltage', 'temperature', 'gps_fix']
-        fieldtypes = ['uint64_t', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'uint8_t', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float']
+        fieldnames = ['timestamp', 'pressure_digi', 'pressure_static', 'airspeed_pitot', 'altitude_agl', 'acc_x', 'acc_y', 'acc_z', 'gyro_x', 'gyro_y', 'gyro_z', 'mag_x', 'mag_y', 'mag_z', 'gps_fix', 'gps_lat', 'gps_lon', 'gps_alt', 'fmm_state', 'left_servo_angle', 'right_servo_angle', 'nas_n', 'nas_e', 'nas_d', 'nas_vn', 'nas_ve', 'nas_vd', 'nas_qx', 'nas_qy', 'nas_qz', 'nas_qw', 'nas_bias_x', 'nas_bias_y', 'nas_bias_z', 'wes_n', 'wes_e', 'battery_voltage', 'cam_battery_voltage', 'temperature']
+        ordered_fieldnames = ['timestamp', 'pressure_digi', 'pressure_static', 'airspeed_pitot', 'altitude_agl', 'acc_x', 'acc_y', 'acc_z', 'gyro_x', 'gyro_y', 'gyro_z', 'mag_x', 'mag_y', 'mag_z', 'gps_lat', 'gps_lon', 'gps_alt', 'left_servo_angle', 'right_servo_angle', 'nas_n', 'nas_e', 'nas_d', 'nas_vn', 'nas_ve', 'nas_vd', 'nas_qx', 'nas_qy', 'nas_qz', 'nas_qw', 'nas_bias_x', 'nas_bias_y', 'nas_bias_z', 'wes_n', 'wes_e', 'battery_voltage', 'cam_battery_voltage', 'temperature', 'gps_fix', 'fmm_state']
+        fieldtypes = ['uint64_t', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'uint8_t', 'float', 'float', 'float', 'uint8_t', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float']
         fielddisplays_by_name = {}
         fieldenums_by_name = {}
         fieldunits_by_name = {"timestamp": "us", "pressure_digi": "Pa", "pressure_static": "Pa", "airspeed_pitot": "m/s", "altitude_agl": "m", "acc_x": "m/s^2", "acc_y": "m/s^2", "acc_z": "m/s^2", "gyro_x": "rad/s", "gyro_y": "rad/s", "gyro_z": "rad/s", "mag_x": "uT", "mag_y": "uT", "mag_z": "uT", "gps_lat": "deg", "gps_lon": "deg", "gps_alt": "m", "left_servo_angle": "deg", "right_servo_angle": "deg", "nas_n": "deg", "nas_e": "deg", "nas_d": "m", "nas_vn": "m/s", "nas_ve": "m/s", "nas_vd": "m/s", "wes_n": "m/s", "wes_e": "m/s", "battery_voltage": "V", "cam_battery_voltage": "V", "temperature": "degC"}
-        format = '<QffffffffffffffffffffffffffffffffffffB'
-        native_format = bytearray('<QffffffffffffffffffffffffffffffffffffB', 'ascii')
-        orders = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 37, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36]
-        lengths = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
-        array_lengths = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
-        crc_extra = 195
-        unpacker = struct.Struct('<QffffffffffffffffffffffffffffffffffffB')
+        format = '<QffffffffffffffffffffffffffffffffffffBB'
+        native_format = bytearray('<QffffffffffffffffffffffffffffffffffffBB', 'ascii')
+        orders = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 37, 14, 15, 16, 38, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36]
+        lengths = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
+        array_lengths = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
+        crc_extra = 138
+        unpacker = struct.Struct('<QffffffffffffffffffffffffffffffffffffBB')
         instance_field = None
         instance_offset = -1
 
-        def __init__(self, timestamp, pressure_digi, pressure_static, airspeed_pitot, altitude_agl, acc_x, acc_y, acc_z, gyro_x, gyro_y, gyro_z, mag_x, mag_y, mag_z, gps_fix, gps_lat, gps_lon, gps_alt, left_servo_angle, right_servo_angle, nas_n, nas_e, nas_d, nas_vn, nas_ve, nas_vd, nas_qx, nas_qy, nas_qz, nas_qw, nas_bias_x, nas_bias_y, nas_bias_z, wes_n, wes_e, battery_voltage, cam_battery_voltage, temperature):
+        def __init__(self, timestamp, pressure_digi, pressure_static, airspeed_pitot, altitude_agl, acc_x, acc_y, acc_z, gyro_x, gyro_y, gyro_z, mag_x, mag_y, mag_z, gps_fix, gps_lat, gps_lon, gps_alt, fmm_state, left_servo_angle, right_servo_angle, nas_n, nas_e, nas_d, nas_vn, nas_ve, nas_vd, nas_qx, nas_qy, nas_qz, nas_qw, nas_bias_x, nas_bias_y, nas_bias_z, wes_n, wes_e, battery_voltage, cam_battery_voltage, temperature):
                 MAVLink_message.__init__(self, MAVLink_payload_flight_tm_message.id, MAVLink_payload_flight_tm_message.name)
                 self._fieldnames = MAVLink_payload_flight_tm_message.fieldnames
                 self._instance_field = MAVLink_payload_flight_tm_message.instance_field
@@ -2723,6 +2793,7 @@ class MAVLink_payload_flight_tm_message(MAVLink_message):
                 self.gps_lat = gps_lat
                 self.gps_lon = gps_lon
                 self.gps_alt = gps_alt
+                self.fmm_state = fmm_state
                 self.left_servo_angle = left_servo_angle
                 self.right_servo_angle = right_servo_angle
                 self.nas_n = nas_n
@@ -2745,7 +2816,7 @@ class MAVLink_payload_flight_tm_message(MAVLink_message):
                 self.temperature = temperature
 
         def pack(self, mav, force_mavlink1=False):
-                return MAVLink_message.pack(self, mav, 195, struct.pack('<QffffffffffffffffffffffffffffffffffffB', self.timestamp, self.pressure_digi, self.pressure_static, self.airspeed_pitot, self.altitude_agl, self.acc_x, self.acc_y, self.acc_z, self.gyro_x, self.gyro_y, self.gyro_z, self.mag_x, self.mag_y, self.mag_z, self.gps_lat, self.gps_lon, self.gps_alt, self.left_servo_angle, self.right_servo_angle, self.nas_n, self.nas_e, self.nas_d, self.nas_vn, self.nas_ve, self.nas_vd, self.nas_qx, self.nas_qy, self.nas_qz, self.nas_qw, self.nas_bias_x, self.nas_bias_y, self.nas_bias_z, self.wes_n, self.wes_e, self.battery_voltage, self.cam_battery_voltage, self.temperature, self.gps_fix), force_mavlink1=force_mavlink1)
+                return MAVLink_message.pack(self, mav, 138, struct.pack('<QffffffffffffffffffffffffffffffffffffBB', self.timestamp, self.pressure_digi, self.pressure_static, self.airspeed_pitot, self.altitude_agl, self.acc_x, self.acc_y, self.acc_z, self.gyro_x, self.gyro_y, self.gyro_z, self.mag_x, self.mag_y, self.mag_z, self.gps_lat, self.gps_lon, self.gps_alt, self.left_servo_angle, self.right_servo_angle, self.nas_n, self.nas_e, self.nas_d, self.nas_vn, self.nas_ve, self.nas_vd, self.nas_qx, self.nas_qy, self.nas_qz, self.nas_qw, self.nas_bias_x, self.nas_bias_y, self.nas_bias_z, self.wes_n, self.wes_e, self.battery_voltage, self.cam_battery_voltage, self.temperature, self.gps_fix, self.fmm_state), force_mavlink1=force_mavlink1)
 
 class MAVLink_rocket_stats_tm_message(MAVLink_message):
         '''
@@ -2753,27 +2824,28 @@ class MAVLink_rocket_stats_tm_message(MAVLink_message):
         '''
         id = MAVLINK_MSG_ID_ROCKET_STATS_TM
         name = 'ROCKET_STATS_TM'
-        fieldnames = ['liftoff_ts', 'liftoff_max_acc_ts', 'liftoff_max_acc', 'max_speed_ts', 'max_speed', 'max_speed_altitude', 'max_mach_ts', 'max_mach', 'apogee_ts', 'apogee_lat', 'apogee_lon', 'apogee_alt', 'apogee_max_acc_ts', 'apogee_max_acc', 'dpl_ts', 'dpl_alt', 'dpl_max_acc_ts', 'dpl_max_acc', 'dpl_bay_max_pressure_ts', 'dpl_bay_max_pressure', 'ref_lat', 'ref_lon', 'ref_alt', 'cpu_load', 'free_heap', 'ada_state', 'fmm_state', 'abk_state', 'nas_state', 'mea_state', 'exp_angle', 'pin_launch', 'pin_nosecone', 'pin_expulsion', 'cutter_presence', 'log_number', 'log_good', 'payload_board_state', 'motor_board_state', 'payload_can_status', 'motor_can_status', 'rig_can_status', 'hil_state']
-        ordered_fieldnames = ['liftoff_ts', 'liftoff_max_acc_ts', 'max_speed_ts', 'max_mach_ts', 'apogee_ts', 'apogee_max_acc_ts', 'dpl_ts', 'dpl_max_acc_ts', 'dpl_bay_max_pressure_ts', 'liftoff_max_acc', 'max_speed', 'max_speed_altitude', 'max_mach', 'apogee_lat', 'apogee_lon', 'apogee_alt', 'apogee_max_acc', 'dpl_alt', 'dpl_max_acc', 'dpl_bay_max_pressure', 'ref_lat', 'ref_lon', 'ref_alt', 'cpu_load', 'free_heap', 'exp_angle', 'log_good', 'log_number', 'ada_state', 'fmm_state', 'abk_state', 'nas_state', 'mea_state', 'pin_launch', 'pin_nosecone', 'pin_expulsion', 'cutter_presence', 'payload_board_state', 'motor_board_state', 'payload_can_status', 'motor_can_status', 'rig_can_status', 'hil_state']
-        fieldtypes = ['uint64_t', 'uint64_t', 'float', 'uint64_t', 'float', 'float', 'uint64_t', 'float', 'uint64_t', 'float', 'float', 'float', 'uint64_t', 'float', 'uint64_t', 'float', 'uint64_t', 'float', 'uint64_t', 'float', 'float', 'float', 'float', 'float', 'uint32_t', 'uint8_t', 'uint8_t', 'uint8_t', 'uint8_t', 'uint8_t', 'float', 'uint8_t', 'uint8_t', 'uint8_t', 'uint8_t', 'int16_t', 'int32_t', 'uint8_t', 'uint8_t', 'uint8_t', 'uint8_t', 'uint8_t', 'uint8_t']
+        fieldnames = ['timestamp', 'liftoff_ts', 'liftoff_max_acc_ts', 'liftoff_max_acc', 'max_speed_ts', 'max_speed', 'max_speed_altitude', 'max_mach_ts', 'max_mach', 'shutdown_ts', 'shutdown_alt', 'apogee_ts', 'apogee_lat', 'apogee_lon', 'apogee_alt', 'apogee_max_acc_ts', 'apogee_max_acc', 'dpl_ts', 'dpl_alt', 'dpl_max_acc_ts', 'dpl_max_acc', 'dpl_bay_max_pressure_ts', 'dpl_bay_max_pressure', 'ref_lat', 'ref_lon', 'ref_alt', 'cpu_load', 'free_heap', 'ada_state', 'abk_state', 'nas_state', 'mea_state', 'exp_angle', 'pin_launch', 'pin_nosecone', 'pin_expulsion', 'cutter_presence', 'log_number', 'log_good', 'payload_board_state', 'motor_board_state', 'payload_can_status', 'motor_can_status', 'rig_can_status', 'hil_state']
+        ordered_fieldnames = ['timestamp', 'liftoff_ts', 'liftoff_max_acc_ts', 'max_speed_ts', 'max_mach_ts', 'shutdown_ts', 'apogee_ts', 'apogee_max_acc_ts', 'dpl_ts', 'dpl_max_acc_ts', 'dpl_bay_max_pressure_ts', 'liftoff_max_acc', 'max_speed', 'max_speed_altitude', 'max_mach', 'shutdown_alt', 'apogee_lat', 'apogee_lon', 'apogee_alt', 'apogee_max_acc', 'dpl_alt', 'dpl_max_acc', 'dpl_bay_max_pressure', 'ref_lat', 'ref_lon', 'ref_alt', 'cpu_load', 'free_heap', 'exp_angle', 'log_good', 'log_number', 'ada_state', 'abk_state', 'nas_state', 'mea_state', 'pin_launch', 'pin_nosecone', 'pin_expulsion', 'cutter_presence', 'payload_board_state', 'motor_board_state', 'payload_can_status', 'motor_can_status', 'rig_can_status', 'hil_state']
+        fieldtypes = ['uint64_t', 'uint64_t', 'uint64_t', 'float', 'uint64_t', 'float', 'float', 'uint64_t', 'float', 'uint64_t', 'float', 'uint64_t', 'float', 'float', 'float', 'uint64_t', 'float', 'uint64_t', 'float', 'uint64_t', 'float', 'uint64_t', 'float', 'float', 'float', 'float', 'float', 'uint32_t', 'uint8_t', 'uint8_t', 'uint8_t', 'uint8_t', 'float', 'uint8_t', 'uint8_t', 'uint8_t', 'uint8_t', 'int16_t', 'int32_t', 'uint8_t', 'uint8_t', 'uint8_t', 'uint8_t', 'uint8_t', 'uint8_t']
         fielddisplays_by_name = {}
         fieldenums_by_name = {}
-        fieldunits_by_name = {"liftoff_ts": "us", "liftoff_max_acc_ts": "us", "liftoff_max_acc": "m/s2", "max_speed_ts": "us", "max_speed": "m/s", "max_speed_altitude": "m", "apogee_ts": "us", "apogee_lat": "deg", "apogee_lon": "deg", "apogee_alt": "m", "apogee_max_acc_ts": "us", "apogee_max_acc": "m/s2", "dpl_ts": "us", "dpl_alt": "m", "dpl_max_acc_ts": "us", "dpl_max_acc": "m/s2", "dpl_bay_max_pressure_ts": "us", "dpl_bay_max_pressure": "Pa", "ref_lat": "deg", "ref_lon": "deg", "ref_alt": "m"}
-        format = '<QQQQQQQQQfffffffffffffffIfihBBBBBBBBBBBBBBB'
-        native_format = bytearray('<QQQQQQQQQfffffffffffffffIfihBBBBBBBBBBBBBBB', 'ascii')
-        orders = [0, 1, 9, 2, 10, 11, 3, 12, 4, 13, 14, 15, 5, 16, 6, 17, 7, 18, 8, 19, 20, 21, 22, 23, 24, 28, 29, 30, 31, 32, 25, 33, 34, 35, 36, 27, 26, 37, 38, 39, 40, 41, 42]
-        lengths = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
-        array_lengths = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
-        crc_extra = 14
-        unpacker = struct.Struct('<QQQQQQQQQfffffffffffffffIfihBBBBBBBBBBBBBBB')
+        fieldunits_by_name = {"timestamp": "us", "liftoff_ts": "us", "liftoff_max_acc_ts": "us", "liftoff_max_acc": "m/s2", "max_speed_ts": "us", "max_speed": "m/s", "max_speed_altitude": "m", "apogee_ts": "us", "apogee_lat": "deg", "apogee_lon": "deg", "apogee_alt": "m", "apogee_max_acc_ts": "us", "apogee_max_acc": "m/s2", "dpl_ts": "us", "dpl_alt": "m", "dpl_max_acc_ts": "us", "dpl_max_acc": "m/s2", "dpl_bay_max_pressure_ts": "us", "dpl_bay_max_pressure": "Pa", "ref_lat": "deg", "ref_lon": "deg", "ref_alt": "m"}
+        format = '<QQQQQQQQQQQffffffffffffffffIfihBBBBBBBBBBBBBB'
+        native_format = bytearray('<QQQQQQQQQQQffffffffffffffffIfihBBBBBBBBBBBBBB', 'ascii')
+        orders = [0, 1, 2, 11, 3, 12, 13, 4, 14, 5, 15, 6, 16, 17, 18, 7, 19, 8, 20, 9, 21, 10, 22, 23, 24, 25, 26, 27, 31, 32, 33, 34, 28, 35, 36, 37, 38, 30, 29, 39, 40, 41, 42, 43, 44]
+        lengths = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
+        array_lengths = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
+        crc_extra = 195
+        unpacker = struct.Struct('<QQQQQQQQQQQffffffffffffffffIfihBBBBBBBBBBBBBB')
         instance_field = None
         instance_offset = -1
 
-        def __init__(self, liftoff_ts, liftoff_max_acc_ts, liftoff_max_acc, max_speed_ts, max_speed, max_speed_altitude, max_mach_ts, max_mach, apogee_ts, apogee_lat, apogee_lon, apogee_alt, apogee_max_acc_ts, apogee_max_acc, dpl_ts, dpl_alt, dpl_max_acc_ts, dpl_max_acc, dpl_bay_max_pressure_ts, dpl_bay_max_pressure, ref_lat, ref_lon, ref_alt, cpu_load, free_heap, ada_state, fmm_state, abk_state, nas_state, mea_state, exp_angle, pin_launch, pin_nosecone, pin_expulsion, cutter_presence, log_number, log_good, payload_board_state, motor_board_state, payload_can_status, motor_can_status, rig_can_status, hil_state):
+        def __init__(self, timestamp, liftoff_ts, liftoff_max_acc_ts, liftoff_max_acc, max_speed_ts, max_speed, max_speed_altitude, max_mach_ts, max_mach, shutdown_ts, shutdown_alt, apogee_ts, apogee_lat, apogee_lon, apogee_alt, apogee_max_acc_ts, apogee_max_acc, dpl_ts, dpl_alt, dpl_max_acc_ts, dpl_max_acc, dpl_bay_max_pressure_ts, dpl_bay_max_pressure, ref_lat, ref_lon, ref_alt, cpu_load, free_heap, ada_state, abk_state, nas_state, mea_state, exp_angle, pin_launch, pin_nosecone, pin_expulsion, cutter_presence, log_number, log_good, payload_board_state, motor_board_state, payload_can_status, motor_can_status, rig_can_status, hil_state):
                 MAVLink_message.__init__(self, MAVLink_rocket_stats_tm_message.id, MAVLink_rocket_stats_tm_message.name)
                 self._fieldnames = MAVLink_rocket_stats_tm_message.fieldnames
                 self._instance_field = MAVLink_rocket_stats_tm_message.instance_field
                 self._instance_offset = MAVLink_rocket_stats_tm_message.instance_offset
+                self.timestamp = timestamp
                 self.liftoff_ts = liftoff_ts
                 self.liftoff_max_acc_ts = liftoff_max_acc_ts
                 self.liftoff_max_acc = liftoff_max_acc
@@ -2782,6 +2854,8 @@ class MAVLink_rocket_stats_tm_message(MAVLink_message):
                 self.max_speed_altitude = max_speed_altitude
                 self.max_mach_ts = max_mach_ts
                 self.max_mach = max_mach
+                self.shutdown_ts = shutdown_ts
+                self.shutdown_alt = shutdown_alt
                 self.apogee_ts = apogee_ts
                 self.apogee_lat = apogee_lat
                 self.apogee_lon = apogee_lon
@@ -2800,7 +2874,6 @@ class MAVLink_rocket_stats_tm_message(MAVLink_message):
                 self.cpu_load = cpu_load
                 self.free_heap = free_heap
                 self.ada_state = ada_state
-                self.fmm_state = fmm_state
                 self.abk_state = abk_state
                 self.nas_state = nas_state
                 self.mea_state = mea_state
@@ -2819,7 +2892,7 @@ class MAVLink_rocket_stats_tm_message(MAVLink_message):
                 self.hil_state = hil_state
 
         def pack(self, mav, force_mavlink1=False):
-                return MAVLink_message.pack(self, mav, 14, struct.pack('<QQQQQQQQQfffffffffffffffIfihBBBBBBBBBBBBBBB', self.liftoff_ts, self.liftoff_max_acc_ts, self.max_speed_ts, self.max_mach_ts, self.apogee_ts, self.apogee_max_acc_ts, self.dpl_ts, self.dpl_max_acc_ts, self.dpl_bay_max_pressure_ts, self.liftoff_max_acc, self.max_speed, self.max_speed_altitude, self.max_mach, self.apogee_lat, self.apogee_lon, self.apogee_alt, self.apogee_max_acc, self.dpl_alt, self.dpl_max_acc, self.dpl_bay_max_pressure, self.ref_lat, self.ref_lon, self.ref_alt, self.cpu_load, self.free_heap, self.exp_angle, self.log_good, self.log_number, self.ada_state, self.fmm_state, self.abk_state, self.nas_state, self.mea_state, self.pin_launch, self.pin_nosecone, self.pin_expulsion, self.cutter_presence, self.payload_board_state, self.motor_board_state, self.payload_can_status, self.motor_can_status, self.rig_can_status, self.hil_state), force_mavlink1=force_mavlink1)
+                return MAVLink_message.pack(self, mav, 195, struct.pack('<QQQQQQQQQQQffffffffffffffffIfihBBBBBBBBBBBBBB', self.timestamp, self.liftoff_ts, self.liftoff_max_acc_ts, self.max_speed_ts, self.max_mach_ts, self.shutdown_ts, self.apogee_ts, self.apogee_max_acc_ts, self.dpl_ts, self.dpl_max_acc_ts, self.dpl_bay_max_pressure_ts, self.liftoff_max_acc, self.max_speed, self.max_speed_altitude, self.max_mach, self.shutdown_alt, self.apogee_lat, self.apogee_lon, self.apogee_alt, self.apogee_max_acc, self.dpl_alt, self.dpl_max_acc, self.dpl_bay_max_pressure, self.ref_lat, self.ref_lon, self.ref_alt, self.cpu_load, self.free_heap, self.exp_angle, self.log_good, self.log_number, self.ada_state, self.abk_state, self.nas_state, self.mea_state, self.pin_launch, self.pin_nosecone, self.pin_expulsion, self.cutter_presence, self.payload_board_state, self.motor_board_state, self.payload_can_status, self.motor_can_status, self.rig_can_status, self.hil_state), force_mavlink1=force_mavlink1)
 
 class MAVLink_payload_stats_tm_message(MAVLink_message):
         '''
@@ -2827,23 +2900,23 @@ class MAVLink_payload_stats_tm_message(MAVLink_message):
         '''
         id = MAVLINK_MSG_ID_PAYLOAD_STATS_TM
         name = 'PAYLOAD_STATS_TM'
-        fieldnames = ['liftoff_ts', 'liftoff_max_acc_ts', 'liftoff_max_acc', 'max_speed_ts', 'max_speed', 'max_speed_altitude', 'max_mach_ts', 'max_mach', 'apogee_ts', 'apogee_lat', 'apogee_lon', 'apogee_alt', 'apogee_max_acc_ts', 'apogee_max_acc', 'wing_emc_n', 'wing_emc_e', 'wing_m1_n', 'wing_m1_e', 'wing_m2_n', 'wing_m2_e', 'dpl_ts', 'dpl_alt', 'dpl_max_acc_ts', 'dpl_max_acc', 'ref_lat', 'ref_lon', 'ref_alt', 'min_pressure', 'cpu_load', 'free_heap', 'fmm_state', 'nas_state', 'wes_state', 'pin_launch', 'pin_nosecone', 'cutter_presence', 'log_number', 'log_good', 'main_board_state', 'motor_board_state', 'main_can_status', 'motor_can_status', 'rig_can_status', 'hil_state']
-        ordered_fieldnames = ['liftoff_ts', 'liftoff_max_acc_ts', 'max_speed_ts', 'max_mach_ts', 'apogee_ts', 'apogee_max_acc_ts', 'dpl_ts', 'dpl_max_acc_ts', 'liftoff_max_acc', 'max_speed', 'max_speed_altitude', 'max_mach', 'apogee_lat', 'apogee_lon', 'apogee_alt', 'apogee_max_acc', 'wing_emc_n', 'wing_emc_e', 'wing_m1_n', 'wing_m1_e', 'wing_m2_n', 'wing_m2_e', 'dpl_alt', 'dpl_max_acc', 'ref_lat', 'ref_lon', 'ref_alt', 'min_pressure', 'cpu_load', 'free_heap', 'log_good', 'log_number', 'fmm_state', 'nas_state', 'wes_state', 'pin_launch', 'pin_nosecone', 'cutter_presence', 'main_board_state', 'motor_board_state', 'main_can_status', 'motor_can_status', 'rig_can_status', 'hil_state']
-        fieldtypes = ['uint64_t', 'uint64_t', 'float', 'uint64_t', 'float', 'float', 'uint64_t', 'float', 'uint64_t', 'float', 'float', 'float', 'uint64_t', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'uint64_t', 'float', 'uint64_t', 'float', 'float', 'float', 'float', 'float', 'float', 'uint32_t', 'uint8_t', 'uint8_t', 'uint8_t', 'uint8_t', 'uint8_t', 'uint8_t', 'int16_t', 'int32_t', 'uint8_t', 'uint8_t', 'uint8_t', 'uint8_t', 'uint8_t', 'uint8_t']
+        fieldnames = ['liftoff_ts', 'liftoff_max_acc_ts', 'liftoff_max_acc', 'max_speed_ts', 'max_speed', 'max_speed_altitude', 'max_mach_ts', 'max_mach', 'apogee_ts', 'apogee_lat', 'apogee_lon', 'apogee_alt', 'apogee_max_acc_ts', 'apogee_max_acc', 'wing_emc_n', 'wing_emc_e', 'wing_m1_n', 'wing_m1_e', 'wing_m2_n', 'wing_m2_e', 'dpl_ts', 'dpl_alt', 'dpl_max_acc_ts', 'dpl_max_acc', 'ref_lat', 'ref_lon', 'ref_alt', 'min_pressure', 'cpu_load', 'free_heap', 'nas_state', 'wes_state', 'pin_launch', 'pin_nosecone', 'cutter_presence', 'log_number', 'log_good', 'main_board_state', 'motor_board_state', 'main_can_status', 'motor_can_status', 'rig_can_status', 'hil_state']
+        ordered_fieldnames = ['liftoff_ts', 'liftoff_max_acc_ts', 'max_speed_ts', 'max_mach_ts', 'apogee_ts', 'apogee_max_acc_ts', 'dpl_ts', 'dpl_max_acc_ts', 'liftoff_max_acc', 'max_speed', 'max_speed_altitude', 'max_mach', 'apogee_lat', 'apogee_lon', 'apogee_alt', 'apogee_max_acc', 'wing_emc_n', 'wing_emc_e', 'wing_m1_n', 'wing_m1_e', 'wing_m2_n', 'wing_m2_e', 'dpl_alt', 'dpl_max_acc', 'ref_lat', 'ref_lon', 'ref_alt', 'min_pressure', 'cpu_load', 'free_heap', 'log_good', 'log_number', 'nas_state', 'wes_state', 'pin_launch', 'pin_nosecone', 'cutter_presence', 'main_board_state', 'motor_board_state', 'main_can_status', 'motor_can_status', 'rig_can_status', 'hil_state']
+        fieldtypes = ['uint64_t', 'uint64_t', 'float', 'uint64_t', 'float', 'float', 'uint64_t', 'float', 'uint64_t', 'float', 'float', 'float', 'uint64_t', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'uint64_t', 'float', 'uint64_t', 'float', 'float', 'float', 'float', 'float', 'float', 'uint32_t', 'uint8_t', 'uint8_t', 'uint8_t', 'uint8_t', 'uint8_t', 'int16_t', 'int32_t', 'uint8_t', 'uint8_t', 'uint8_t', 'uint8_t', 'uint8_t', 'uint8_t']
         fielddisplays_by_name = {}
         fieldenums_by_name = {}
         fieldunits_by_name = {"liftoff_ts": "us", "liftoff_max_acc_ts": "us", "liftoff_max_acc": "m/s2", "max_speed_ts": "us", "max_speed": "m/s", "max_speed_altitude": "m", "apogee_ts": "us", "apogee_lat": "deg", "apogee_lon": "deg", "apogee_alt": "m", "apogee_max_acc_ts": "us", "apogee_max_acc": "m/s2", "wing_emc_n": "m", "wing_emc_e": "m", "wing_m1_n": "m", "wing_m1_e": "m", "wing_m2_n": "m", "wing_m2_e": "m", "dpl_ts": "us", "dpl_alt": "m", "dpl_max_acc_ts": "us", "dpl_max_acc": "m/s2", "ref_lat": "deg", "ref_lon": "deg", "ref_alt": "m", "min_pressure": "Pa"}
-        format = '<QQQQQQQQfffffffffffffffffffffIihBBBBBBBBBBBB'
-        native_format = bytearray('<QQQQQQQQfffffffffffffffffffffIihBBBBBBBBBBBB', 'ascii')
-        orders = [0, 1, 8, 2, 9, 10, 3, 11, 4, 12, 13, 14, 5, 15, 16, 17, 18, 19, 20, 21, 6, 22, 7, 23, 24, 25, 26, 27, 28, 29, 32, 33, 34, 35, 36, 37, 31, 30, 38, 39, 40, 41, 42, 43]
-        lengths = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
-        array_lengths = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
-        crc_extra = 172
-        unpacker = struct.Struct('<QQQQQQQQfffffffffffffffffffffIihBBBBBBBBBBBB')
+        format = '<QQQQQQQQfffffffffffffffffffffIihBBBBBBBBBBB'
+        native_format = bytearray('<QQQQQQQQfffffffffffffffffffffIihBBBBBBBBBBB', 'ascii')
+        orders = [0, 1, 8, 2, 9, 10, 3, 11, 4, 12, 13, 14, 5, 15, 16, 17, 18, 19, 20, 21, 6, 22, 7, 23, 24, 25, 26, 27, 28, 29, 32, 33, 34, 35, 36, 31, 30, 37, 38, 39, 40, 41, 42]
+        lengths = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
+        array_lengths = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
+        crc_extra = 206
+        unpacker = struct.Struct('<QQQQQQQQfffffffffffffffffffffIihBBBBBBBBBBB')
         instance_field = None
         instance_offset = -1
 
-        def __init__(self, liftoff_ts, liftoff_max_acc_ts, liftoff_max_acc, max_speed_ts, max_speed, max_speed_altitude, max_mach_ts, max_mach, apogee_ts, apogee_lat, apogee_lon, apogee_alt, apogee_max_acc_ts, apogee_max_acc, wing_emc_n, wing_emc_e, wing_m1_n, wing_m1_e, wing_m2_n, wing_m2_e, dpl_ts, dpl_alt, dpl_max_acc_ts, dpl_max_acc, ref_lat, ref_lon, ref_alt, min_pressure, cpu_load, free_heap, fmm_state, nas_state, wes_state, pin_launch, pin_nosecone, cutter_presence, log_number, log_good, main_board_state, motor_board_state, main_can_status, motor_can_status, rig_can_status, hil_state):
+        def __init__(self, liftoff_ts, liftoff_max_acc_ts, liftoff_max_acc, max_speed_ts, max_speed, max_speed_altitude, max_mach_ts, max_mach, apogee_ts, apogee_lat, apogee_lon, apogee_alt, apogee_max_acc_ts, apogee_max_acc, wing_emc_n, wing_emc_e, wing_m1_n, wing_m1_e, wing_m2_n, wing_m2_e, dpl_ts, dpl_alt, dpl_max_acc_ts, dpl_max_acc, ref_lat, ref_lon, ref_alt, min_pressure, cpu_load, free_heap, nas_state, wes_state, pin_launch, pin_nosecone, cutter_presence, log_number, log_good, main_board_state, motor_board_state, main_can_status, motor_can_status, rig_can_status, hil_state):
                 MAVLink_message.__init__(self, MAVLink_payload_stats_tm_message.id, MAVLink_payload_stats_tm_message.name)
                 self._fieldnames = MAVLink_payload_stats_tm_message.fieldnames
                 self._instance_field = MAVLink_payload_stats_tm_message.instance_field
@@ -2878,7 +2951,6 @@ class MAVLink_payload_stats_tm_message(MAVLink_message):
                 self.min_pressure = min_pressure
                 self.cpu_load = cpu_load
                 self.free_heap = free_heap
-                self.fmm_state = fmm_state
                 self.nas_state = nas_state
                 self.wes_state = wes_state
                 self.pin_launch = pin_launch
@@ -2894,7 +2966,7 @@ class MAVLink_payload_stats_tm_message(MAVLink_message):
                 self.hil_state = hil_state
 
         def pack(self, mav, force_mavlink1=False):
-                return MAVLink_message.pack(self, mav, 172, struct.pack('<QQQQQQQQfffffffffffffffffffffIihBBBBBBBBBBBB', self.liftoff_ts, self.liftoff_max_acc_ts, self.max_speed_ts, self.max_mach_ts, self.apogee_ts, self.apogee_max_acc_ts, self.dpl_ts, self.dpl_max_acc_ts, self.liftoff_max_acc, self.max_speed, self.max_speed_altitude, self.max_mach, self.apogee_lat, self.apogee_lon, self.apogee_alt, self.apogee_max_acc, self.wing_emc_n, self.wing_emc_e, self.wing_m1_n, self.wing_m1_e, self.wing_m2_n, self.wing_m2_e, self.dpl_alt, self.dpl_max_acc, self.ref_lat, self.ref_lon, self.ref_alt, self.min_pressure, self.cpu_load, self.free_heap, self.log_good, self.log_number, self.fmm_state, self.nas_state, self.wes_state, self.pin_launch, self.pin_nosecone, self.cutter_presence, self.main_board_state, self.motor_board_state, self.main_can_status, self.motor_can_status, self.rig_can_status, self.hil_state), force_mavlink1=force_mavlink1)
+                return MAVLink_message.pack(self, mav, 206, struct.pack('<QQQQQQQQfffffffffffffffffffffIihBBBBBBBBBBB', self.liftoff_ts, self.liftoff_max_acc_ts, self.max_speed_ts, self.max_mach_ts, self.apogee_ts, self.apogee_max_acc_ts, self.dpl_ts, self.dpl_max_acc_ts, self.liftoff_max_acc, self.max_speed, self.max_speed_altitude, self.max_mach, self.apogee_lat, self.apogee_lon, self.apogee_alt, self.apogee_max_acc, self.wing_emc_n, self.wing_emc_e, self.wing_m1_n, self.wing_m1_e, self.wing_m2_n, self.wing_m2_e, self.dpl_alt, self.dpl_max_acc, self.ref_lat, self.ref_lon, self.ref_alt, self.min_pressure, self.cpu_load, self.free_heap, self.log_good, self.log_number, self.nas_state, self.wes_state, self.pin_launch, self.pin_nosecone, self.cutter_presence, self.main_board_state, self.motor_board_state, self.main_can_status, self.motor_can_status, self.rig_can_status, self.hil_state), force_mavlink1=force_mavlink1)
 
 class MAVLink_gse_tm_message(MAVLink_message):
         '''
@@ -2993,6 +3065,53 @@ class MAVLink_motor_tm_message(MAVLink_message):
         def pack(self, mav, force_mavlink1=False):
                 return MAVLink_message.pack(self, mav, 67, struct.pack('<QfffffihBBB', self.timestamp, self.top_tank_pressure, self.bottom_tank_pressure, self.combustion_chamber_pressure, self.tank_temperature, self.battery_voltage, self.log_good, self.log_number, self.main_valve_state, self.venting_valve_state, self.hil_state), force_mavlink1=force_mavlink1)
 
+class MAVLink_calibration_tm_message(MAVLink_message):
+        '''
+        Calibration telemetry
+        '''
+        id = MAVLINK_MSG_ID_CALIBRATION_TM
+        name = 'CALIBRATION_TM'
+        fieldnames = ['timestamp', 'gyro_bias_x', 'gyro_bias_y', 'gyro_bias_z', 'mag_bias_x', 'mag_bias_y', 'mag_bias_z', 'mag_scale_x', 'mag_scale_y', 'mag_scale_z', 'static_press_1_bias', 'static_press_1_scale', 'static_press_2_bias', 'static_press_2_scale', 'dpl_bay_press_bias', 'dpl_bay_press_scale']
+        ordered_fieldnames = ['timestamp', 'gyro_bias_x', 'gyro_bias_y', 'gyro_bias_z', 'mag_bias_x', 'mag_bias_y', 'mag_bias_z', 'mag_scale_x', 'mag_scale_y', 'mag_scale_z', 'static_press_1_bias', 'static_press_1_scale', 'static_press_2_bias', 'static_press_2_scale', 'dpl_bay_press_bias', 'dpl_bay_press_scale']
+        fieldtypes = ['uint64_t', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float', 'float']
+        fielddisplays_by_name = {}
+        fieldenums_by_name = {}
+        fieldunits_by_name = {"timestamp": "us", "gyro_bias_x": "deg/s", "gyro_bias_y": "deg/s", "gyro_bias_z": "deg/s", "mag_bias_x": "uT", "mag_bias_y": "uT", "mag_bias_z": "uT", "static_press_1_bias": "Pa", "static_press_2_bias": "Pa", "dpl_bay_press_bias": "Pa"}
+        format = '<Qfffffffffffffff'
+        native_format = bytearray('<Qfffffffffffffff', 'ascii')
+        orders = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
+        lengths = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
+        array_lengths = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
+        crc_extra = 31
+        unpacker = struct.Struct('<Qfffffffffffffff')
+        instance_field = None
+        instance_offset = -1
+
+        def __init__(self, timestamp, gyro_bias_x, gyro_bias_y, gyro_bias_z, mag_bias_x, mag_bias_y, mag_bias_z, mag_scale_x, mag_scale_y, mag_scale_z, static_press_1_bias, static_press_1_scale, static_press_2_bias, static_press_2_scale, dpl_bay_press_bias, dpl_bay_press_scale):
+                MAVLink_message.__init__(self, MAVLink_calibration_tm_message.id, MAVLink_calibration_tm_message.name)
+                self._fieldnames = MAVLink_calibration_tm_message.fieldnames
+                self._instance_field = MAVLink_calibration_tm_message.instance_field
+                self._instance_offset = MAVLink_calibration_tm_message.instance_offset
+                self.timestamp = timestamp
+                self.gyro_bias_x = gyro_bias_x
+                self.gyro_bias_y = gyro_bias_y
+                self.gyro_bias_z = gyro_bias_z
+                self.mag_bias_x = mag_bias_x
+                self.mag_bias_y = mag_bias_y
+                self.mag_bias_z = mag_bias_z
+                self.mag_scale_x = mag_scale_x
+                self.mag_scale_y = mag_scale_y
+                self.mag_scale_z = mag_scale_z
+                self.static_press_1_bias = static_press_1_bias
+                self.static_press_1_scale = static_press_1_scale
+                self.static_press_2_bias = static_press_2_bias
+                self.static_press_2_scale = static_press_2_scale
+                self.dpl_bay_press_bias = dpl_bay_press_bias
+                self.dpl_bay_press_scale = dpl_bay_press_scale
+
+        def pack(self, mav, force_mavlink1=False):
+                return MAVLink_message.pack(self, mav, 31, struct.pack('<Qfffffffffffffff', self.timestamp, self.gyro_bias_x, self.gyro_bias_y, self.gyro_bias_z, self.mag_bias_x, self.mag_bias_y, self.mag_bias_z, self.mag_scale_x, self.mag_scale_y, self.mag_scale_z, self.static_press_1_bias, self.static_press_1_scale, self.static_press_2_bias, self.static_press_2_scale, self.dpl_bay_press_bias, self.dpl_bay_press_scale), force_mavlink1=force_mavlink1)
+
 
 mavlink_map = {
         MAVLINK_MSG_ID_PING_TC : MAVLink_ping_tc_message,
@@ -3012,6 +3131,8 @@ mavlink_map = {
         MAVLINK_MSG_ID_SET_DEPLOYMENT_ALTITUDE_TC : MAVLink_set_deployment_altitude_tc_message,
         MAVLINK_MSG_ID_SET_TARGET_COORDINATES_TC : MAVLink_set_target_coordinates_tc_message,
         MAVLINK_MSG_ID_SET_ALGORITHM_TC : MAVLink_set_algorithm_tc_message,
+        MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC : MAVLink_set_calibration_pressure_tc_message,
+        MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC : MAVLink_set_initial_mea_mass_tc_message,
         MAVLINK_MSG_ID_SET_ATOMIC_VALVE_TIMING_TC : MAVLink_set_atomic_valve_timing_tc_message,
         MAVLINK_MSG_ID_SET_VALVE_MAXIMUM_APERTURE_TC : MAVLink_set_valve_maximum_aperture_tc_message,
         MAVLINK_MSG_ID_CONRIG_STATE_TC : MAVLink_conrig_state_tc_message,
@@ -3058,6 +3179,7 @@ mavlink_map = {
         MAVLINK_MSG_ID_PAYLOAD_STATS_TM : MAVLink_payload_stats_tm_message,
         MAVLINK_MSG_ID_GSE_TM : MAVLink_gse_tm_message,
         MAVLINK_MSG_ID_MOTOR_TM : MAVLink_motor_tm_message,
+        MAVLINK_MSG_ID_CALIBRATION_TM : MAVLink_calibration_tm_message,
 }
 
 class MAVError(Exception):
@@ -3805,6 +3927,42 @@ class MAVLink(object):
                 '''
                 return self.send(self.set_algorithm_tc_encode(algorithm_number), force_mavlink1=force_mavlink1)
 
+        def set_calibration_pressure_tc_encode(self, pressure):
+                '''
+                Set the pressure used for analog pressure calibration
+
+                pressure                  : Pressure [Pa] (type:float)
+
+                '''
+                return MAVLink_set_calibration_pressure_tc_message(pressure)
+
+        def set_calibration_pressure_tc_send(self, pressure, force_mavlink1=False):
+                '''
+                Set the pressure used for analog pressure calibration
+
+                pressure                  : Pressure [Pa] (type:float)
+
+                '''
+                return self.send(self.set_calibration_pressure_tc_encode(pressure), force_mavlink1=force_mavlink1)
+
+        def set_initial_mea_mass_tc_encode(self, mass):
+                '''
+                Set the initial MEA mass
+
+                mass                      : Mass [kg] (type:float)
+
+                '''
+                return MAVLink_set_initial_mea_mass_tc_message(mass)
+
+        def set_initial_mea_mass_tc_send(self, mass, force_mavlink1=False):
+                '''
+                Set the initial MEA mass
+
+                mass                      : Mass [kg] (type:float)
+
+                '''
+                return self.send(self.set_initial_mea_mass_tc_encode(mass), force_mavlink1=force_mavlink1)
+
         def set_atomic_valve_timing_tc_encode(self, servo_id, maximum_timing):
                 '''
                 Sets the maximum time that the valves can be open atomically
@@ -4947,7 +5105,7 @@ class MAVLink(object):
                 '''
                 return self.send(self.mea_tm_encode(timestamp, state, kalman_x0, kalman_x1, kalman_x2, mass, corrected_pressure), force_mavlink1=force_mavlink1)
 
-        def rocket_flight_tm_encode(self, timestamp, pressure_ada, pressure_digi, pressure_static, pressure_dpl, airspeed_pitot, altitude_agl, ada_vert_speed, mea_mass, mea_apogee, acc_x, acc_y, acc_z, gyro_x, gyro_y, gyro_z, mag_x, mag_y, mag_z, vn100_qx, vn100_qy, vn100_qz, vn100_qw, gps_fix, gps_lat, gps_lon, gps_alt, abk_angle, nas_n, nas_e, nas_d, nas_vn, nas_ve, nas_vd, nas_qx, nas_qy, nas_qz, nas_qw, nas_bias_x, nas_bias_y, nas_bias_z, battery_voltage, cam_battery_voltage, temperature):
+        def rocket_flight_tm_encode(self, timestamp, pressure_ada, pressure_digi, pressure_static, pressure_dpl, airspeed_pitot, altitude_agl, ada_vert_speed, mea_mass, mea_apogee, acc_x, acc_y, acc_z, gyro_x, gyro_y, gyro_z, mag_x, mag_y, mag_z, vn100_qx, vn100_qy, vn100_qz, vn100_qw, gps_fix, gps_lat, gps_lon, gps_alt, fmm_state, abk_angle, nas_n, nas_e, nas_d, nas_vn, nas_ve, nas_vd, nas_qx, nas_qy, nas_qz, nas_qw, nas_bias_x, nas_bias_y, nas_bias_z, battery_voltage, cam_battery_voltage, temperature):
                 '''
                 High Rate Telemetry
 
@@ -4978,6 +5136,7 @@ class MAVLink(object):
                 gps_lat                   : Latitude [deg] (type:float)
                 gps_lon                   : Longitude [deg] (type:float)
                 gps_alt                   : GPS Altitude [m] (type:float)
+                fmm_state                 : Flight Mode Manager State (type:uint8_t)
                 abk_angle                 : Air Brakes angle (type:float)
                 nas_n                     : NAS estimated noth position [deg] (type:float)
                 nas_e                     : NAS estimated east position [deg] (type:float)
@@ -4997,9 +5156,9 @@ class MAVLink(object):
                 temperature               : Temperature [degC] (type:float)
 
                 '''
-                return MAVLink_rocket_flight_tm_message(timestamp, pressure_ada, pressure_digi, pressure_static, pressure_dpl, airspeed_pitot, altitude_agl, ada_vert_speed, mea_mass, mea_apogee, acc_x, acc_y, acc_z, gyro_x, gyro_y, gyro_z, mag_x, mag_y, mag_z, vn100_qx, vn100_qy, vn100_qz, vn100_qw, gps_fix, gps_lat, gps_lon, gps_alt, abk_angle, nas_n, nas_e, nas_d, nas_vn, nas_ve, nas_vd, nas_qx, nas_qy, nas_qz, nas_qw, nas_bias_x, nas_bias_y, nas_bias_z, battery_voltage, cam_battery_voltage, temperature)
+                return MAVLink_rocket_flight_tm_message(timestamp, pressure_ada, pressure_digi, pressure_static, pressure_dpl, airspeed_pitot, altitude_agl, ada_vert_speed, mea_mass, mea_apogee, acc_x, acc_y, acc_z, gyro_x, gyro_y, gyro_z, mag_x, mag_y, mag_z, vn100_qx, vn100_qy, vn100_qz, vn100_qw, gps_fix, gps_lat, gps_lon, gps_alt, fmm_state, abk_angle, nas_n, nas_e, nas_d, nas_vn, nas_ve, nas_vd, nas_qx, nas_qy, nas_qz, nas_qw, nas_bias_x, nas_bias_y, nas_bias_z, battery_voltage, cam_battery_voltage, temperature)
 
-        def rocket_flight_tm_send(self, timestamp, pressure_ada, pressure_digi, pressure_static, pressure_dpl, airspeed_pitot, altitude_agl, ada_vert_speed, mea_mass, mea_apogee, acc_x, acc_y, acc_z, gyro_x, gyro_y, gyro_z, mag_x, mag_y, mag_z, vn100_qx, vn100_qy, vn100_qz, vn100_qw, gps_fix, gps_lat, gps_lon, gps_alt, abk_angle, nas_n, nas_e, nas_d, nas_vn, nas_ve, nas_vd, nas_qx, nas_qy, nas_qz, nas_qw, nas_bias_x, nas_bias_y, nas_bias_z, battery_voltage, cam_battery_voltage, temperature, force_mavlink1=False):
+        def rocket_flight_tm_send(self, timestamp, pressure_ada, pressure_digi, pressure_static, pressure_dpl, airspeed_pitot, altitude_agl, ada_vert_speed, mea_mass, mea_apogee, acc_x, acc_y, acc_z, gyro_x, gyro_y, gyro_z, mag_x, mag_y, mag_z, vn100_qx, vn100_qy, vn100_qz, vn100_qw, gps_fix, gps_lat, gps_lon, gps_alt, fmm_state, abk_angle, nas_n, nas_e, nas_d, nas_vn, nas_ve, nas_vd, nas_qx, nas_qy, nas_qz, nas_qw, nas_bias_x, nas_bias_y, nas_bias_z, battery_voltage, cam_battery_voltage, temperature, force_mavlink1=False):
                 '''
                 High Rate Telemetry
 
@@ -5030,6 +5189,7 @@ class MAVLink(object):
                 gps_lat                   : Latitude [deg] (type:float)
                 gps_lon                   : Longitude [deg] (type:float)
                 gps_alt                   : GPS Altitude [m] (type:float)
+                fmm_state                 : Flight Mode Manager State (type:uint8_t)
                 abk_angle                 : Air Brakes angle (type:float)
                 nas_n                     : NAS estimated noth position [deg] (type:float)
                 nas_e                     : NAS estimated east position [deg] (type:float)
@@ -5049,9 +5209,9 @@ class MAVLink(object):
                 temperature               : Temperature [degC] (type:float)
 
                 '''
-                return self.send(self.rocket_flight_tm_encode(timestamp, pressure_ada, pressure_digi, pressure_static, pressure_dpl, airspeed_pitot, altitude_agl, ada_vert_speed, mea_mass, mea_apogee, acc_x, acc_y, acc_z, gyro_x, gyro_y, gyro_z, mag_x, mag_y, mag_z, vn100_qx, vn100_qy, vn100_qz, vn100_qw, gps_fix, gps_lat, gps_lon, gps_alt, abk_angle, nas_n, nas_e, nas_d, nas_vn, nas_ve, nas_vd, nas_qx, nas_qy, nas_qz, nas_qw, nas_bias_x, nas_bias_y, nas_bias_z, battery_voltage, cam_battery_voltage, temperature), force_mavlink1=force_mavlink1)
+                return self.send(self.rocket_flight_tm_encode(timestamp, pressure_ada, pressure_digi, pressure_static, pressure_dpl, airspeed_pitot, altitude_agl, ada_vert_speed, mea_mass, mea_apogee, acc_x, acc_y, acc_z, gyro_x, gyro_y, gyro_z, mag_x, mag_y, mag_z, vn100_qx, vn100_qy, vn100_qz, vn100_qw, gps_fix, gps_lat, gps_lon, gps_alt, fmm_state, abk_angle, nas_n, nas_e, nas_d, nas_vn, nas_ve, nas_vd, nas_qx, nas_qy, nas_qz, nas_qw, nas_bias_x, nas_bias_y, nas_bias_z, battery_voltage, cam_battery_voltage, temperature), force_mavlink1=force_mavlink1)
 
-        def payload_flight_tm_encode(self, timestamp, pressure_digi, pressure_static, airspeed_pitot, altitude_agl, acc_x, acc_y, acc_z, gyro_x, gyro_y, gyro_z, mag_x, mag_y, mag_z, gps_fix, gps_lat, gps_lon, gps_alt, left_servo_angle, right_servo_angle, nas_n, nas_e, nas_d, nas_vn, nas_ve, nas_vd, nas_qx, nas_qy, nas_qz, nas_qw, nas_bias_x, nas_bias_y, nas_bias_z, wes_n, wes_e, battery_voltage, cam_battery_voltage, temperature):
+        def payload_flight_tm_encode(self, timestamp, pressure_digi, pressure_static, airspeed_pitot, altitude_agl, acc_x, acc_y, acc_z, gyro_x, gyro_y, gyro_z, mag_x, mag_y, mag_z, gps_fix, gps_lat, gps_lon, gps_alt, fmm_state, left_servo_angle, right_servo_angle, nas_n, nas_e, nas_d, nas_vn, nas_ve, nas_vd, nas_qx, nas_qy, nas_qz, nas_qw, nas_bias_x, nas_bias_y, nas_bias_z, wes_n, wes_e, battery_voltage, cam_battery_voltage, temperature):
                 '''
                 High Rate Telemetry
 
@@ -5073,6 +5233,7 @@ class MAVLink(object):
                 gps_lat                   : Latitude [deg] (type:float)
                 gps_lon                   : Longitude [deg] (type:float)
                 gps_alt                   : GPS Altitude [m] (type:float)
+                fmm_state                 : Flight Mode Manager State (type:uint8_t)
                 left_servo_angle          : Left servo motor angle [deg] (type:float)
                 right_servo_angle         : Right servo motor angle [deg] (type:float)
                 nas_n                     : NAS estimated noth position [deg] (type:float)
@@ -5095,9 +5256,9 @@ class MAVLink(object):
                 temperature               : Temperature [degC] (type:float)
 
                 '''
-                return MAVLink_payload_flight_tm_message(timestamp, pressure_digi, pressure_static, airspeed_pitot, altitude_agl, acc_x, acc_y, acc_z, gyro_x, gyro_y, gyro_z, mag_x, mag_y, mag_z, gps_fix, gps_lat, gps_lon, gps_alt, left_servo_angle, right_servo_angle, nas_n, nas_e, nas_d, nas_vn, nas_ve, nas_vd, nas_qx, nas_qy, nas_qz, nas_qw, nas_bias_x, nas_bias_y, nas_bias_z, wes_n, wes_e, battery_voltage, cam_battery_voltage, temperature)
+                return MAVLink_payload_flight_tm_message(timestamp, pressure_digi, pressure_static, airspeed_pitot, altitude_agl, acc_x, acc_y, acc_z, gyro_x, gyro_y, gyro_z, mag_x, mag_y, mag_z, gps_fix, gps_lat, gps_lon, gps_alt, fmm_state, left_servo_angle, right_servo_angle, nas_n, nas_e, nas_d, nas_vn, nas_ve, nas_vd, nas_qx, nas_qy, nas_qz, nas_qw, nas_bias_x, nas_bias_y, nas_bias_z, wes_n, wes_e, battery_voltage, cam_battery_voltage, temperature)
 
-        def payload_flight_tm_send(self, timestamp, pressure_digi, pressure_static, airspeed_pitot, altitude_agl, acc_x, acc_y, acc_z, gyro_x, gyro_y, gyro_z, mag_x, mag_y, mag_z, gps_fix, gps_lat, gps_lon, gps_alt, left_servo_angle, right_servo_angle, nas_n, nas_e, nas_d, nas_vn, nas_ve, nas_vd, nas_qx, nas_qy, nas_qz, nas_qw, nas_bias_x, nas_bias_y, nas_bias_z, wes_n, wes_e, battery_voltage, cam_battery_voltage, temperature, force_mavlink1=False):
+        def payload_flight_tm_send(self, timestamp, pressure_digi, pressure_static, airspeed_pitot, altitude_agl, acc_x, acc_y, acc_z, gyro_x, gyro_y, gyro_z, mag_x, mag_y, mag_z, gps_fix, gps_lat, gps_lon, gps_alt, fmm_state, left_servo_angle, right_servo_angle, nas_n, nas_e, nas_d, nas_vn, nas_ve, nas_vd, nas_qx, nas_qy, nas_qz, nas_qw, nas_bias_x, nas_bias_y, nas_bias_z, wes_n, wes_e, battery_voltage, cam_battery_voltage, temperature, force_mavlink1=False):
                 '''
                 High Rate Telemetry
 
@@ -5119,6 +5280,7 @@ class MAVLink(object):
                 gps_lat                   : Latitude [deg] (type:float)
                 gps_lon                   : Longitude [deg] (type:float)
                 gps_alt                   : GPS Altitude [m] (type:float)
+                fmm_state                 : Flight Mode Manager State (type:uint8_t)
                 left_servo_angle          : Left servo motor angle [deg] (type:float)
                 right_servo_angle         : Right servo motor angle [deg] (type:float)
                 nas_n                     : NAS estimated noth position [deg] (type:float)
@@ -5141,12 +5303,13 @@ class MAVLink(object):
                 temperature               : Temperature [degC] (type:float)
 
                 '''
-                return self.send(self.payload_flight_tm_encode(timestamp, pressure_digi, pressure_static, airspeed_pitot, altitude_agl, acc_x, acc_y, acc_z, gyro_x, gyro_y, gyro_z, mag_x, mag_y, mag_z, gps_fix, gps_lat, gps_lon, gps_alt, left_servo_angle, right_servo_angle, nas_n, nas_e, nas_d, nas_vn, nas_ve, nas_vd, nas_qx, nas_qy, nas_qz, nas_qw, nas_bias_x, nas_bias_y, nas_bias_z, wes_n, wes_e, battery_voltage, cam_battery_voltage, temperature), force_mavlink1=force_mavlink1)
+                return self.send(self.payload_flight_tm_encode(timestamp, pressure_digi, pressure_static, airspeed_pitot, altitude_agl, acc_x, acc_y, acc_z, gyro_x, gyro_y, gyro_z, mag_x, mag_y, mag_z, gps_fix, gps_lat, gps_lon, gps_alt, fmm_state, left_servo_angle, right_servo_angle, nas_n, nas_e, nas_d, nas_vn, nas_ve, nas_vd, nas_qx, nas_qy, nas_qz, nas_qw, nas_bias_x, nas_bias_y, nas_bias_z, wes_n, wes_e, battery_voltage, cam_battery_voltage, temperature), force_mavlink1=force_mavlink1)
 
-        def rocket_stats_tm_encode(self, liftoff_ts, liftoff_max_acc_ts, liftoff_max_acc, max_speed_ts, max_speed, max_speed_altitude, max_mach_ts, max_mach, apogee_ts, apogee_lat, apogee_lon, apogee_alt, apogee_max_acc_ts, apogee_max_acc, dpl_ts, dpl_alt, dpl_max_acc_ts, dpl_max_acc, dpl_bay_max_pressure_ts, dpl_bay_max_pressure, ref_lat, ref_lon, ref_alt, cpu_load, free_heap, ada_state, fmm_state, abk_state, nas_state, mea_state, exp_angle, pin_launch, pin_nosecone, pin_expulsion, cutter_presence, log_number, log_good, payload_board_state, motor_board_state, payload_can_status, motor_can_status, rig_can_status, hil_state):
+        def rocket_stats_tm_encode(self, timestamp, liftoff_ts, liftoff_max_acc_ts, liftoff_max_acc, max_speed_ts, max_speed, max_speed_altitude, max_mach_ts, max_mach, shutdown_ts, shutdown_alt, apogee_ts, apogee_lat, apogee_lon, apogee_alt, apogee_max_acc_ts, apogee_max_acc, dpl_ts, dpl_alt, dpl_max_acc_ts, dpl_max_acc, dpl_bay_max_pressure_ts, dpl_bay_max_pressure, ref_lat, ref_lon, ref_alt, cpu_load, free_heap, ada_state, abk_state, nas_state, mea_state, exp_angle, pin_launch, pin_nosecone, pin_expulsion, cutter_presence, log_number, log_good, payload_board_state, motor_board_state, payload_can_status, motor_can_status, rig_can_status, hil_state):
                 '''
                 Low Rate Telemetry
 
+                timestamp                 : Timestamp in microseconds [us] (type:uint64_t)
                 liftoff_ts                : System clock at liftoff [us] (type:uint64_t)
                 liftoff_max_acc_ts        : System clock at the maximum liftoff acceleration [us] (type:uint64_t)
                 liftoff_max_acc           : Maximum liftoff acceleration [m/s2] (type:float)
@@ -5155,6 +5318,8 @@ class MAVLink(object):
                 max_speed_altitude        : Altitude at max speed [m] (type:float)
                 max_mach_ts               : System clock at maximum measured mach (type:uint64_t)
                 max_mach                  : Maximum measured mach (type:float)
+                shutdown_ts               : System clock at shutdown (type:uint64_t)
+                shutdown_alt              : Altitude at shutdown (type:float)
                 apogee_ts                 : System clock at apogee [us] (type:uint64_t)
                 apogee_lat                : Apogee latitude [deg] (type:float)
                 apogee_lon                : Apogee longitude [deg] (type:float)
@@ -5173,7 +5338,6 @@ class MAVLink(object):
                 cpu_load                  : CPU load in percentage (type:float)
                 free_heap                 : Amount of available heap in memory (type:uint32_t)
                 ada_state                 : ADA Controller State (type:uint8_t)
-                fmm_state                 : Flight Mode Manager State (type:uint8_t)
                 abk_state                 : Airbrake FSM state (type:uint8_t)
                 nas_state                 : NAS FSM State (type:uint8_t)
                 mea_state                 : MEA Controller State (type:uint8_t)
@@ -5192,12 +5356,13 @@ class MAVLink(object):
                 hil_state                 : 1 if the board is currently in HIL mode (type:uint8_t)
 
                 '''
-                return MAVLink_rocket_stats_tm_message(liftoff_ts, liftoff_max_acc_ts, liftoff_max_acc, max_speed_ts, max_speed, max_speed_altitude, max_mach_ts, max_mach, apogee_ts, apogee_lat, apogee_lon, apogee_alt, apogee_max_acc_ts, apogee_max_acc, dpl_ts, dpl_alt, dpl_max_acc_ts, dpl_max_acc, dpl_bay_max_pressure_ts, dpl_bay_max_pressure, ref_lat, ref_lon, ref_alt, cpu_load, free_heap, ada_state, fmm_state, abk_state, nas_state, mea_state, exp_angle, pin_launch, pin_nosecone, pin_expulsion, cutter_presence, log_number, log_good, payload_board_state, motor_board_state, payload_can_status, motor_can_status, rig_can_status, hil_state)
+                return MAVLink_rocket_stats_tm_message(timestamp, liftoff_ts, liftoff_max_acc_ts, liftoff_max_acc, max_speed_ts, max_speed, max_speed_altitude, max_mach_ts, max_mach, shutdown_ts, shutdown_alt, apogee_ts, apogee_lat, apogee_lon, apogee_alt, apogee_max_acc_ts, apogee_max_acc, dpl_ts, dpl_alt, dpl_max_acc_ts, dpl_max_acc, dpl_bay_max_pressure_ts, dpl_bay_max_pressure, ref_lat, ref_lon, ref_alt, cpu_load, free_heap, ada_state, abk_state, nas_state, mea_state, exp_angle, pin_launch, pin_nosecone, pin_expulsion, cutter_presence, log_number, log_good, payload_board_state, motor_board_state, payload_can_status, motor_can_status, rig_can_status, hil_state)
 
-        def rocket_stats_tm_send(self, liftoff_ts, liftoff_max_acc_ts, liftoff_max_acc, max_speed_ts, max_speed, max_speed_altitude, max_mach_ts, max_mach, apogee_ts, apogee_lat, apogee_lon, apogee_alt, apogee_max_acc_ts, apogee_max_acc, dpl_ts, dpl_alt, dpl_max_acc_ts, dpl_max_acc, dpl_bay_max_pressure_ts, dpl_bay_max_pressure, ref_lat, ref_lon, ref_alt, cpu_load, free_heap, ada_state, fmm_state, abk_state, nas_state, mea_state, exp_angle, pin_launch, pin_nosecone, pin_expulsion, cutter_presence, log_number, log_good, payload_board_state, motor_board_state, payload_can_status, motor_can_status, rig_can_status, hil_state, force_mavlink1=False):
+        def rocket_stats_tm_send(self, timestamp, liftoff_ts, liftoff_max_acc_ts, liftoff_max_acc, max_speed_ts, max_speed, max_speed_altitude, max_mach_ts, max_mach, shutdown_ts, shutdown_alt, apogee_ts, apogee_lat, apogee_lon, apogee_alt, apogee_max_acc_ts, apogee_max_acc, dpl_ts, dpl_alt, dpl_max_acc_ts, dpl_max_acc, dpl_bay_max_pressure_ts, dpl_bay_max_pressure, ref_lat, ref_lon, ref_alt, cpu_load, free_heap, ada_state, abk_state, nas_state, mea_state, exp_angle, pin_launch, pin_nosecone, pin_expulsion, cutter_presence, log_number, log_good, payload_board_state, motor_board_state, payload_can_status, motor_can_status, rig_can_status, hil_state, force_mavlink1=False):
                 '''
                 Low Rate Telemetry
 
+                timestamp                 : Timestamp in microseconds [us] (type:uint64_t)
                 liftoff_ts                : System clock at liftoff [us] (type:uint64_t)
                 liftoff_max_acc_ts        : System clock at the maximum liftoff acceleration [us] (type:uint64_t)
                 liftoff_max_acc           : Maximum liftoff acceleration [m/s2] (type:float)
@@ -5206,6 +5371,8 @@ class MAVLink(object):
                 max_speed_altitude        : Altitude at max speed [m] (type:float)
                 max_mach_ts               : System clock at maximum measured mach (type:uint64_t)
                 max_mach                  : Maximum measured mach (type:float)
+                shutdown_ts               : System clock at shutdown (type:uint64_t)
+                shutdown_alt              : Altitude at shutdown (type:float)
                 apogee_ts                 : System clock at apogee [us] (type:uint64_t)
                 apogee_lat                : Apogee latitude [deg] (type:float)
                 apogee_lon                : Apogee longitude [deg] (type:float)
@@ -5224,7 +5391,6 @@ class MAVLink(object):
                 cpu_load                  : CPU load in percentage (type:float)
                 free_heap                 : Amount of available heap in memory (type:uint32_t)
                 ada_state                 : ADA Controller State (type:uint8_t)
-                fmm_state                 : Flight Mode Manager State (type:uint8_t)
                 abk_state                 : Airbrake FSM state (type:uint8_t)
                 nas_state                 : NAS FSM State (type:uint8_t)
                 mea_state                 : MEA Controller State (type:uint8_t)
@@ -5243,9 +5409,9 @@ class MAVLink(object):
                 hil_state                 : 1 if the board is currently in HIL mode (type:uint8_t)
 
                 '''
-                return self.send(self.rocket_stats_tm_encode(liftoff_ts, liftoff_max_acc_ts, liftoff_max_acc, max_speed_ts, max_speed, max_speed_altitude, max_mach_ts, max_mach, apogee_ts, apogee_lat, apogee_lon, apogee_alt, apogee_max_acc_ts, apogee_max_acc, dpl_ts, dpl_alt, dpl_max_acc_ts, dpl_max_acc, dpl_bay_max_pressure_ts, dpl_bay_max_pressure, ref_lat, ref_lon, ref_alt, cpu_load, free_heap, ada_state, fmm_state, abk_state, nas_state, mea_state, exp_angle, pin_launch, pin_nosecone, pin_expulsion, cutter_presence, log_number, log_good, payload_board_state, motor_board_state, payload_can_status, motor_can_status, rig_can_status, hil_state), force_mavlink1=force_mavlink1)
+                return self.send(self.rocket_stats_tm_encode(timestamp, liftoff_ts, liftoff_max_acc_ts, liftoff_max_acc, max_speed_ts, max_speed, max_speed_altitude, max_mach_ts, max_mach, shutdown_ts, shutdown_alt, apogee_ts, apogee_lat, apogee_lon, apogee_alt, apogee_max_acc_ts, apogee_max_acc, dpl_ts, dpl_alt, dpl_max_acc_ts, dpl_max_acc, dpl_bay_max_pressure_ts, dpl_bay_max_pressure, ref_lat, ref_lon, ref_alt, cpu_load, free_heap, ada_state, abk_state, nas_state, mea_state, exp_angle, pin_launch, pin_nosecone, pin_expulsion, cutter_presence, log_number, log_good, payload_board_state, motor_board_state, payload_can_status, motor_can_status, rig_can_status, hil_state), force_mavlink1=force_mavlink1)
 
-        def payload_stats_tm_encode(self, liftoff_ts, liftoff_max_acc_ts, liftoff_max_acc, max_speed_ts, max_speed, max_speed_altitude, max_mach_ts, max_mach, apogee_ts, apogee_lat, apogee_lon, apogee_alt, apogee_max_acc_ts, apogee_max_acc, wing_emc_n, wing_emc_e, wing_m1_n, wing_m1_e, wing_m2_n, wing_m2_e, dpl_ts, dpl_alt, dpl_max_acc_ts, dpl_max_acc, ref_lat, ref_lon, ref_alt, min_pressure, cpu_load, free_heap, fmm_state, nas_state, wes_state, pin_launch, pin_nosecone, cutter_presence, log_number, log_good, main_board_state, motor_board_state, main_can_status, motor_can_status, rig_can_status, hil_state):
+        def payload_stats_tm_encode(self, liftoff_ts, liftoff_max_acc_ts, liftoff_max_acc, max_speed_ts, max_speed, max_speed_altitude, max_mach_ts, max_mach, apogee_ts, apogee_lat, apogee_lon, apogee_alt, apogee_max_acc_ts, apogee_max_acc, wing_emc_n, wing_emc_e, wing_m1_n, wing_m1_e, wing_m2_n, wing_m2_e, dpl_ts, dpl_alt, dpl_max_acc_ts, dpl_max_acc, ref_lat, ref_lon, ref_alt, min_pressure, cpu_load, free_heap, nas_state, wes_state, pin_launch, pin_nosecone, cutter_presence, log_number, log_good, main_board_state, motor_board_state, main_can_status, motor_can_status, rig_can_status, hil_state):
                 '''
                 Low Rate Telemetry
 
@@ -5279,7 +5445,6 @@ class MAVLink(object):
                 min_pressure              : Apogee pressure - Digital barometer [Pa] (type:float)
                 cpu_load                  : CPU load in percentage (type:float)
                 free_heap                 : Amount of available heap in memory (type:uint32_t)
-                fmm_state                 : Flight Mode Manager State (type:uint8_t)
                 nas_state                 : NAS FSM State (type:uint8_t)
                 wes_state                 : Wind Estimation System FSM State (type:uint8_t)
                 pin_launch                : Launch pin status (1 = connected, 0 = disconnected) (type:uint8_t)
@@ -5295,9 +5460,9 @@ class MAVLink(object):
                 hil_state                 : 1 if the board is currently in HIL mode (type:uint8_t)
 
                 '''
-                return MAVLink_payload_stats_tm_message(liftoff_ts, liftoff_max_acc_ts, liftoff_max_acc, max_speed_ts, max_speed, max_speed_altitude, max_mach_ts, max_mach, apogee_ts, apogee_lat, apogee_lon, apogee_alt, apogee_max_acc_ts, apogee_max_acc, wing_emc_n, wing_emc_e, wing_m1_n, wing_m1_e, wing_m2_n, wing_m2_e, dpl_ts, dpl_alt, dpl_max_acc_ts, dpl_max_acc, ref_lat, ref_lon, ref_alt, min_pressure, cpu_load, free_heap, fmm_state, nas_state, wes_state, pin_launch, pin_nosecone, cutter_presence, log_number, log_good, main_board_state, motor_board_state, main_can_status, motor_can_status, rig_can_status, hil_state)
+                return MAVLink_payload_stats_tm_message(liftoff_ts, liftoff_max_acc_ts, liftoff_max_acc, max_speed_ts, max_speed, max_speed_altitude, max_mach_ts, max_mach, apogee_ts, apogee_lat, apogee_lon, apogee_alt, apogee_max_acc_ts, apogee_max_acc, wing_emc_n, wing_emc_e, wing_m1_n, wing_m1_e, wing_m2_n, wing_m2_e, dpl_ts, dpl_alt, dpl_max_acc_ts, dpl_max_acc, ref_lat, ref_lon, ref_alt, min_pressure, cpu_load, free_heap, nas_state, wes_state, pin_launch, pin_nosecone, cutter_presence, log_number, log_good, main_board_state, motor_board_state, main_can_status, motor_can_status, rig_can_status, hil_state)
 
-        def payload_stats_tm_send(self, liftoff_ts, liftoff_max_acc_ts, liftoff_max_acc, max_speed_ts, max_speed, max_speed_altitude, max_mach_ts, max_mach, apogee_ts, apogee_lat, apogee_lon, apogee_alt, apogee_max_acc_ts, apogee_max_acc, wing_emc_n, wing_emc_e, wing_m1_n, wing_m1_e, wing_m2_n, wing_m2_e, dpl_ts, dpl_alt, dpl_max_acc_ts, dpl_max_acc, ref_lat, ref_lon, ref_alt, min_pressure, cpu_load, free_heap, fmm_state, nas_state, wes_state, pin_launch, pin_nosecone, cutter_presence, log_number, log_good, main_board_state, motor_board_state, main_can_status, motor_can_status, rig_can_status, hil_state, force_mavlink1=False):
+        def payload_stats_tm_send(self, liftoff_ts, liftoff_max_acc_ts, liftoff_max_acc, max_speed_ts, max_speed, max_speed_altitude, max_mach_ts, max_mach, apogee_ts, apogee_lat, apogee_lon, apogee_alt, apogee_max_acc_ts, apogee_max_acc, wing_emc_n, wing_emc_e, wing_m1_n, wing_m1_e, wing_m2_n, wing_m2_e, dpl_ts, dpl_alt, dpl_max_acc_ts, dpl_max_acc, ref_lat, ref_lon, ref_alt, min_pressure, cpu_load, free_heap, nas_state, wes_state, pin_launch, pin_nosecone, cutter_presence, log_number, log_good, main_board_state, motor_board_state, main_can_status, motor_can_status, rig_can_status, hil_state, force_mavlink1=False):
                 '''
                 Low Rate Telemetry
 
@@ -5331,7 +5496,6 @@ class MAVLink(object):
                 min_pressure              : Apogee pressure - Digital barometer [Pa] (type:float)
                 cpu_load                  : CPU load in percentage (type:float)
                 free_heap                 : Amount of available heap in memory (type:uint32_t)
-                fmm_state                 : Flight Mode Manager State (type:uint8_t)
                 nas_state                 : NAS FSM State (type:uint8_t)
                 wes_state                 : Wind Estimation System FSM State (type:uint8_t)
                 pin_launch                : Launch pin status (1 = connected, 0 = disconnected) (type:uint8_t)
@@ -5347,7 +5511,7 @@ class MAVLink(object):
                 hil_state                 : 1 if the board is currently in HIL mode (type:uint8_t)
 
                 '''
-                return self.send(self.payload_stats_tm_encode(liftoff_ts, liftoff_max_acc_ts, liftoff_max_acc, max_speed_ts, max_speed, max_speed_altitude, max_mach_ts, max_mach, apogee_ts, apogee_lat, apogee_lon, apogee_alt, apogee_max_acc_ts, apogee_max_acc, wing_emc_n, wing_emc_e, wing_m1_n, wing_m1_e, wing_m2_n, wing_m2_e, dpl_ts, dpl_alt, dpl_max_acc_ts, dpl_max_acc, ref_lat, ref_lon, ref_alt, min_pressure, cpu_load, free_heap, fmm_state, nas_state, wes_state, pin_launch, pin_nosecone, cutter_presence, log_number, log_good, main_board_state, motor_board_state, main_can_status, motor_can_status, rig_can_status, hil_state), force_mavlink1=force_mavlink1)
+                return self.send(self.payload_stats_tm_encode(liftoff_ts, liftoff_max_acc_ts, liftoff_max_acc, max_speed_ts, max_speed, max_speed_altitude, max_mach_ts, max_mach, apogee_ts, apogee_lat, apogee_lon, apogee_alt, apogee_max_acc_ts, apogee_max_acc, wing_emc_n, wing_emc_e, wing_m1_n, wing_m1_e, wing_m2_n, wing_m2_e, dpl_ts, dpl_alt, dpl_max_acc_ts, dpl_max_acc, ref_lat, ref_lon, ref_alt, min_pressure, cpu_load, free_heap, nas_state, wes_state, pin_launch, pin_nosecone, cutter_presence, log_number, log_good, main_board_state, motor_board_state, main_can_status, motor_can_status, rig_can_status, hil_state), force_mavlink1=force_mavlink1)
 
         def gse_tm_encode(self, timestamp, loadcell_rocket, loadcell_vessel, filling_pressure, vessel_pressure, filling_valve_state, venting_valve_state, release_valve_state, main_valve_state, nitrogen_valve_state, gmm_state, tars_state, arming_state, battery_voltage, current_consumption, umbilical_current_consumption, main_board_state, payload_board_state, motor_board_state, main_can_status, payload_can_status, motor_can_status, log_number, log_good):
                 '''
@@ -5451,3 +5615,51 @@ class MAVLink(object):
                 '''
                 return self.send(self.motor_tm_encode(timestamp, top_tank_pressure, bottom_tank_pressure, combustion_chamber_pressure, tank_temperature, main_valve_state, venting_valve_state, battery_voltage, log_number, log_good, hil_state), force_mavlink1=force_mavlink1)
 
+        def calibration_tm_encode(self, timestamp, gyro_bias_x, gyro_bias_y, gyro_bias_z, mag_bias_x, mag_bias_y, mag_bias_z, mag_scale_x, mag_scale_y, mag_scale_z, static_press_1_bias, static_press_1_scale, static_press_2_bias, static_press_2_scale, dpl_bay_press_bias, dpl_bay_press_scale):
+                '''
+                Calibration telemetry
+
+                timestamp                 : Timestamp in microseconds [us] (type:uint64_t)
+                gyro_bias_x               : Gyroscope X bias [deg/s] (type:float)
+                gyro_bias_y               : Gyroscope Y bias [deg/s] (type:float)
+                gyro_bias_z               : Gyroscope Z bias [deg/s] (type:float)
+                mag_bias_x                : Magnetometer X bias [uT] (type:float)
+                mag_bias_y                : Magnetometer Y bias [uT] (type:float)
+                mag_bias_z                : Magnetometer Z bias [uT] (type:float)
+                mag_scale_x               : Magnetometer X scale (type:float)
+                mag_scale_y               : Magnetometer Y scale (type:float)
+                mag_scale_z               : Magnetometer Z scale (type:float)
+                static_press_1_bias        : Static pressure 1 bias [Pa] (type:float)
+                static_press_1_scale        : Static pressure 1 scale (type:float)
+                static_press_2_bias        : Static pressure 2 bias [Pa] (type:float)
+                static_press_2_scale        : Static pressure 2 scale (type:float)
+                dpl_bay_press_bias        : Deployment bay pressure bias [Pa] (type:float)
+                dpl_bay_press_scale        : Deployment bay pressure scale (type:float)
+
+                '''
+                return MAVLink_calibration_tm_message(timestamp, gyro_bias_x, gyro_bias_y, gyro_bias_z, mag_bias_x, mag_bias_y, mag_bias_z, mag_scale_x, mag_scale_y, mag_scale_z, static_press_1_bias, static_press_1_scale, static_press_2_bias, static_press_2_scale, dpl_bay_press_bias, dpl_bay_press_scale)
+
+        def calibration_tm_send(self, timestamp, gyro_bias_x, gyro_bias_y, gyro_bias_z, mag_bias_x, mag_bias_y, mag_bias_z, mag_scale_x, mag_scale_y, mag_scale_z, static_press_1_bias, static_press_1_scale, static_press_2_bias, static_press_2_scale, dpl_bay_press_bias, dpl_bay_press_scale, force_mavlink1=False):
+                '''
+                Calibration telemetry
+
+                timestamp                 : Timestamp in microseconds [us] (type:uint64_t)
+                gyro_bias_x               : Gyroscope X bias [deg/s] (type:float)
+                gyro_bias_y               : Gyroscope Y bias [deg/s] (type:float)
+                gyro_bias_z               : Gyroscope Z bias [deg/s] (type:float)
+                mag_bias_x                : Magnetometer X bias [uT] (type:float)
+                mag_bias_y                : Magnetometer Y bias [uT] (type:float)
+                mag_bias_z                : Magnetometer Z bias [uT] (type:float)
+                mag_scale_x               : Magnetometer X scale (type:float)
+                mag_scale_y               : Magnetometer Y scale (type:float)
+                mag_scale_z               : Magnetometer Z scale (type:float)
+                static_press_1_bias        : Static pressure 1 bias [Pa] (type:float)
+                static_press_1_scale        : Static pressure 1 scale (type:float)
+                static_press_2_bias        : Static pressure 2 bias [Pa] (type:float)
+                static_press_2_scale        : Static pressure 2 scale (type:float)
+                dpl_bay_press_bias        : Deployment bay pressure bias [Pa] (type:float)
+                dpl_bay_press_scale        : Deployment bay pressure scale (type:float)
+
+                '''
+                return self.send(self.calibration_tm_encode(timestamp, gyro_bias_x, gyro_bias_y, gyro_bias_z, mag_bias_x, mag_bias_y, mag_bias_z, mag_scale_x, mag_scale_y, mag_scale_z, static_press_1_bias, static_press_1_scale, static_press_2_bias, static_press_2_scale, dpl_bay_press_bias, dpl_bay_press_scale), force_mavlink1=force_mavlink1)
+
diff --git a/mavlink_lib/lyra/lyra.h b/mavlink_lib/lyra/lyra.h
index 2106d44af3a4b6e0818c2c561a073f6a701dae25..03a81d5821f91df7c0aed0b821a4ce22377b5c71 100644
--- a/mavlink_lib/lyra/lyra.h
+++ b/mavlink_lib/lyra/lyra.h
@@ -11,7 +11,7 @@
 #endif
 
 #undef MAVLINK_THIS_XML_HASH
-#define MAVLINK_THIS_XML_HASH 3376817544474608324
+#define MAVLINK_THIS_XML_HASH -3518193324732693372
 
 #ifdef __cplusplus
 extern "C" {
@@ -20,11 +20,11 @@ extern "C" {
 // MESSAGE LENGTHS AND CRCS
 
 #ifndef MAVLINK_MESSAGE_LENGTHS
-#define MAVLINK_MESSAGE_LENGTHS {0, 8, 1, 1, 1, 1, 5, 1, 1, 4, 4, 12, 16, 8, 2, 4, 8, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 7, 4, 4, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 12, 12, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 4, 4, 74, 64, 32, 60, 32, 32, 32, 32, 56, 22, 5, 19, 36, 36, 36, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 104, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 46, 28, 20, 44, 53, 77, 29, 177, 153, 161, 170, 56, 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
+#define MAVLINK_MESSAGE_LENGTHS {0, 8, 1, 1, 1, 1, 5, 1, 1, 4, 4, 12, 16, 8, 2, 4, 8, 1, 4, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 7, 4, 4, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 12, 12, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 4, 4, 74, 64, 32, 60, 32, 32, 32, 32, 56, 22, 5, 19, 36, 36, 36, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 104, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 46, 28, 20, 44, 53, 77, 29, 178, 154, 180, 169, 56, 37, 68, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
 #endif
 
 #ifndef MAVLINK_MESSAGE_CRCS
-#define MAVLINK_MESSAGE_CRCS {0, 136, 198, 165, 248, 184, 215, 226, 160, 113, 38, 71, 168, 67, 218, 44, 81, 181, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 110, 22, 65, 79, 167, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 180, 246, 173, 183, 220, 181, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 251, 51, 57, 72, 87, 229, 245, 212, 140, 148, 6, 165, 87, 255, 103, 9, 68, 234, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 239, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 142, 108, 39, 19, 234, 66, 11, 79, 195, 14, 172, 33, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
+#define MAVLINK_MESSAGE_CRCS {0, 136, 198, 165, 248, 184, 215, 226, 160, 113, 38, 71, 168, 67, 218, 44, 81, 181, 199, 221, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 110, 22, 65, 79, 167, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 180, 246, 173, 183, 220, 181, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 251, 51, 57, 72, 87, 229, 245, 212, 140, 148, 6, 165, 87, 255, 103, 9, 68, 234, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 239, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 142, 108, 39, 19, 234, 66, 11, 235, 138, 195, 206, 33, 67, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
 #endif
 
 #include "../protocol.h"
@@ -69,7 +69,8 @@ typedef enum SystemTMList
    MAV_MOTOR_ID=14, /* Rocket Motor data | */
    MAV_REGISTRY_ID=15, /* Command to fetch all registry keys | */
    MAV_REFERENCE_ID=16, /* Command to fetch reference values | */
-   SystemTMList_ENUM_END=17, /*  | */
+   MAV_CALIBRATION_ID=17, /* Command to fetch calibration values | */
+   SystemTMList_ENUM_END=18, /*  | */
 } SystemTMList;
 #endif
 
@@ -217,6 +218,8 @@ typedef enum PinsList
 #include "./mavlink_msg_set_deployment_altitude_tc.h"
 #include "./mavlink_msg_set_target_coordinates_tc.h"
 #include "./mavlink_msg_set_algorithm_tc.h"
+#include "./mavlink_msg_set_calibration_pressure_tc.h"
+#include "./mavlink_msg_set_initial_mea_mass_tc.h"
 #include "./mavlink_msg_set_atomic_valve_timing_tc.h"
 #include "./mavlink_msg_set_valve_maximum_aperture_tc.h"
 #include "./mavlink_msg_conrig_state_tc.h"
@@ -263,16 +266,17 @@ typedef enum PinsList
 #include "./mavlink_msg_payload_stats_tm.h"
 #include "./mavlink_msg_gse_tm.h"
 #include "./mavlink_msg_motor_tm.h"
+#include "./mavlink_msg_calibration_tm.h"
 
 // base include
 
 
 #undef MAVLINK_THIS_XML_HASH
-#define MAVLINK_THIS_XML_HASH 3376817544474608324
+#define MAVLINK_THIS_XML_HASH -3518193324732693372
 
 #if MAVLINK_THIS_XML_HASH == MAVLINK_PRIMARY_XML_HASH
-# define MAVLINK_MESSAGE_INFO {{"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, MAVLINK_MESSAGE_INFO_PING_TC, MAVLINK_MESSAGE_INFO_COMMAND_TC, MAVLINK_MESSAGE_INFO_SYSTEM_TM_REQUEST_TC, MAVLINK_MESSAGE_INFO_SENSOR_TM_REQUEST_TC, MAVLINK_MESSAGE_INFO_SERVO_TM_REQUEST_TC, MAVLINK_MESSAGE_INFO_SET_SERVO_ANGLE_TC, MAVLINK_MESSAGE_INFO_RESET_SERVO_TC, MAVLINK_MESSAGE_INFO_WIGGLE_SERVO_TC, MAVLINK_MESSAGE_INFO_SET_REFERENCE_ALTITUDE_TC, MAVLINK_MESSAGE_INFO_SET_REFERENCE_TEMPERATURE_TC, MAVLINK_MESSAGE_INFO_SET_ORIENTATION_TC, MAVLINK_MESSAGE_INFO_SET_ORIENTATION_QUAT_TC, MAVLINK_MESSAGE_INFO_SET_COORDINATES_TC, MAVLINK_MESSAGE_INFO_RAW_EVENT_TC, MAVLINK_MESSAGE_INFO_SET_DEPLOYMENT_ALTITUDE_TC, MAVLINK_MESSAGE_INFO_SET_TARGET_COORDINATES_TC, MAVLINK_MESSAGE_INFO_SET_ALGORITHM_TC, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, MAVLINK_MESSAGE_INFO_SET_ATOMIC_VALVE_TIMING_TC, MAVLINK_MESSAGE_INFO_SET_VALVE_MAXIMUM_APERTURE_TC, MAVLINK_MESSAGE_INFO_CONRIG_STATE_TC, MAVLINK_MESSAGE_INFO_SET_IGNITION_TIME_TC, MAVLINK_MESSAGE_INFO_SET_NITROGEN_TIME_TC, MAVLINK_MESSAGE_INFO_SET_COOLING_TIME_TC, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, MAVLINK_MESSAGE_INFO_SET_STEPPER_ANGLE_TC, MAVLINK_MESSAGE_INFO_SET_STEPPER_STEPS_TC, MAVLINK_MESSAGE_INFO_SET_STEPPER_MULTIPLIER_TC, MAVLINK_MESSAGE_INFO_SET_ANTENNA_COORDINATES_ARP_TC, MAVLINK_MESSAGE_INFO_SET_ROCKET_COORDINATES_ARP_TC, MAVLINK_MESSAGE_INFO_ARP_COMMAND_TC, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, MAVLINK_MESSAGE_INFO_ACK_TM, MAVLINK_MESSAGE_INFO_NACK_TM, MAVLINK_MESSAGE_INFO_WACK_TM, MAVLINK_MESSAGE_INFO_GPS_TM, MAVLINK_MESSAGE_INFO_IMU_TM, MAVLINK_MESSAGE_INFO_PRESSURE_TM, MAVLINK_MESSAGE_INFO_ADC_TM, MAVLINK_MESSAGE_INFO_VOLTAGE_TM, MAVLINK_MESSAGE_INFO_CURRENT_TM, MAVLINK_MESSAGE_INFO_TEMP_TM, MAVLINK_MESSAGE_INFO_LOAD_TM, MAVLINK_MESSAGE_INFO_ATTITUDE_TM, MAVLINK_MESSAGE_INFO_SENSOR_STATE_TM, MAVLINK_MESSAGE_INFO_SERVO_TM, MAVLINK_MESSAGE_INFO_PIN_TM, MAVLINK_MESSAGE_INFO_REFERENCE_TM, MAVLINK_MESSAGE_INFO_REGISTRY_FLOAT_TM, MAVLINK_MESSAGE_INFO_REGISTRY_INT_TM, MAVLINK_MESSAGE_INFO_REGISTRY_COORD_TM, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, MAVLINK_MESSAGE_INFO_ARP_TM, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, MAVLINK_MESSAGE_INFO_SYS_TM, MAVLINK_MESSAGE_INFO_LOGGER_TM, MAVLINK_MESSAGE_INFO_MAVLINK_STATS_TM, MAVLINK_MESSAGE_INFO_CAN_STATS_TM, MAVLINK_MESSAGE_INFO_TASK_STATS_TM, MAVLINK_MESSAGE_INFO_ADA_TM, MAVLINK_MESSAGE_INFO_NAS_TM, MAVLINK_MESSAGE_INFO_MEA_TM, MAVLINK_MESSAGE_INFO_ROCKET_FLIGHT_TM, MAVLINK_MESSAGE_INFO_PAYLOAD_FLIGHT_TM, MAVLINK_MESSAGE_INFO_ROCKET_STATS_TM, MAVLINK_MESSAGE_INFO_PAYLOAD_STATS_TM, MAVLINK_MESSAGE_INFO_GSE_TM, MAVLINK_MESSAGE_INFO_MOTOR_TM, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}}
-# define MAVLINK_MESSAGE_NAMES {{ "ACK_TM", 100 }, { "ADA_TM", 205 }, { "ADC_TM", 106 }, { "ARP_COMMAND_TC", 65 }, { "ARP_TM", 150 }, { "ATTITUDE_TM", 111 }, { "CAN_STATS_TM", 203 }, { "COMMAND_TC", 2 }, { "CONRIG_STATE_TC", 32 }, { "CURRENT_TM", 108 }, { "GPS_TM", 103 }, { "GSE_TM", 212 }, { "IMU_TM", 104 }, { "LOAD_TM", 110 }, { "LOGGER_TM", 201 }, { "MAVLINK_STATS_TM", 202 }, { "MEA_TM", 207 }, { "MOTOR_TM", 213 }, { "NACK_TM", 101 }, { "NAS_TM", 206 }, { "PAYLOAD_FLIGHT_TM", 209 }, { "PAYLOAD_STATS_TM", 211 }, { "PING_TC", 1 }, { "PIN_TM", 114 }, { "PRESSURE_TM", 105 }, { "RAW_EVENT_TC", 14 }, { "REFERENCE_TM", 115 }, { "REGISTRY_COORD_TM", 118 }, { "REGISTRY_FLOAT_TM", 116 }, { "REGISTRY_INT_TM", 117 }, { "RESET_SERVO_TC", 7 }, { "ROCKET_FLIGHT_TM", 208 }, { "ROCKET_STATS_TM", 210 }, { "SENSOR_STATE_TM", 112 }, { "SENSOR_TM_REQUEST_TC", 4 }, { "SERVO_TM", 113 }, { "SERVO_TM_REQUEST_TC", 5 }, { "SET_ALGORITHM_TC", 17 }, { "SET_ANTENNA_COORDINATES_ARP_TC", 63 }, { "SET_ATOMIC_VALVE_TIMING_TC", 30 }, { "SET_COOLING_TIME_TC", 35 }, { "SET_COORDINATES_TC", 13 }, { "SET_DEPLOYMENT_ALTITUDE_TC", 15 }, { "SET_IGNITION_TIME_TC", 33 }, { "SET_NITROGEN_TIME_TC", 34 }, { "SET_ORIENTATION_QUAT_TC", 12 }, { "SET_ORIENTATION_TC", 11 }, { "SET_REFERENCE_ALTITUDE_TC", 9 }, { "SET_REFERENCE_TEMPERATURE_TC", 10 }, { "SET_ROCKET_COORDINATES_ARP_TC", 64 }, { "SET_SERVO_ANGLE_TC", 6 }, { "SET_STEPPER_ANGLE_TC", 60 }, { "SET_STEPPER_MULTIPLIER_TC", 62 }, { "SET_STEPPER_STEPS_TC", 61 }, { "SET_TARGET_COORDINATES_TC", 16 }, { "SET_VALVE_MAXIMUM_APERTURE_TC", 31 }, { "SYSTEM_TM_REQUEST_TC", 3 }, { "SYS_TM", 200 }, { "TASK_STATS_TM", 204 }, { "TEMP_TM", 109 }, { "VOLTAGE_TM", 107 }, { "WACK_TM", 102 }, { "WIGGLE_SERVO_TC", 8 }}
+# define MAVLINK_MESSAGE_INFO {{"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, MAVLINK_MESSAGE_INFO_PING_TC, MAVLINK_MESSAGE_INFO_COMMAND_TC, MAVLINK_MESSAGE_INFO_SYSTEM_TM_REQUEST_TC, MAVLINK_MESSAGE_INFO_SENSOR_TM_REQUEST_TC, MAVLINK_MESSAGE_INFO_SERVO_TM_REQUEST_TC, MAVLINK_MESSAGE_INFO_SET_SERVO_ANGLE_TC, MAVLINK_MESSAGE_INFO_RESET_SERVO_TC, MAVLINK_MESSAGE_INFO_WIGGLE_SERVO_TC, MAVLINK_MESSAGE_INFO_SET_REFERENCE_ALTITUDE_TC, MAVLINK_MESSAGE_INFO_SET_REFERENCE_TEMPERATURE_TC, MAVLINK_MESSAGE_INFO_SET_ORIENTATION_TC, MAVLINK_MESSAGE_INFO_SET_ORIENTATION_QUAT_TC, MAVLINK_MESSAGE_INFO_SET_COORDINATES_TC, MAVLINK_MESSAGE_INFO_RAW_EVENT_TC, MAVLINK_MESSAGE_INFO_SET_DEPLOYMENT_ALTITUDE_TC, MAVLINK_MESSAGE_INFO_SET_TARGET_COORDINATES_TC, MAVLINK_MESSAGE_INFO_SET_ALGORITHM_TC, MAVLINK_MESSAGE_INFO_SET_CALIBRATION_PRESSURE_TC, MAVLINK_MESSAGE_INFO_SET_INITIAL_MEA_MASS_TC, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, MAVLINK_MESSAGE_INFO_SET_ATOMIC_VALVE_TIMING_TC, MAVLINK_MESSAGE_INFO_SET_VALVE_MAXIMUM_APERTURE_TC, MAVLINK_MESSAGE_INFO_CONRIG_STATE_TC, MAVLINK_MESSAGE_INFO_SET_IGNITION_TIME_TC, MAVLINK_MESSAGE_INFO_SET_NITROGEN_TIME_TC, MAVLINK_MESSAGE_INFO_SET_COOLING_TIME_TC, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, MAVLINK_MESSAGE_INFO_SET_STEPPER_ANGLE_TC, MAVLINK_MESSAGE_INFO_SET_STEPPER_STEPS_TC, MAVLINK_MESSAGE_INFO_SET_STEPPER_MULTIPLIER_TC, MAVLINK_MESSAGE_INFO_SET_ANTENNA_COORDINATES_ARP_TC, MAVLINK_MESSAGE_INFO_SET_ROCKET_COORDINATES_ARP_TC, MAVLINK_MESSAGE_INFO_ARP_COMMAND_TC, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, MAVLINK_MESSAGE_INFO_ACK_TM, MAVLINK_MESSAGE_INFO_NACK_TM, MAVLINK_MESSAGE_INFO_WACK_TM, MAVLINK_MESSAGE_INFO_GPS_TM, MAVLINK_MESSAGE_INFO_IMU_TM, MAVLINK_MESSAGE_INFO_PRESSURE_TM, MAVLINK_MESSAGE_INFO_ADC_TM, MAVLINK_MESSAGE_INFO_VOLTAGE_TM, MAVLINK_MESSAGE_INFO_CURRENT_TM, MAVLINK_MESSAGE_INFO_TEMP_TM, MAVLINK_MESSAGE_INFO_LOAD_TM, MAVLINK_MESSAGE_INFO_ATTITUDE_TM, MAVLINK_MESSAGE_INFO_SENSOR_STATE_TM, MAVLINK_MESSAGE_INFO_SERVO_TM, MAVLINK_MESSAGE_INFO_PIN_TM, MAVLINK_MESSAGE_INFO_REFERENCE_TM, MAVLINK_MESSAGE_INFO_REGISTRY_FLOAT_TM, MAVLINK_MESSAGE_INFO_REGISTRY_INT_TM, MAVLINK_MESSAGE_INFO_REGISTRY_COORD_TM, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, MAVLINK_MESSAGE_INFO_ARP_TM, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, MAVLINK_MESSAGE_INFO_SYS_TM, MAVLINK_MESSAGE_INFO_LOGGER_TM, MAVLINK_MESSAGE_INFO_MAVLINK_STATS_TM, MAVLINK_MESSAGE_INFO_CAN_STATS_TM, MAVLINK_MESSAGE_INFO_TASK_STATS_TM, MAVLINK_MESSAGE_INFO_ADA_TM, MAVLINK_MESSAGE_INFO_NAS_TM, MAVLINK_MESSAGE_INFO_MEA_TM, MAVLINK_MESSAGE_INFO_ROCKET_FLIGHT_TM, MAVLINK_MESSAGE_INFO_PAYLOAD_FLIGHT_TM, MAVLINK_MESSAGE_INFO_ROCKET_STATS_TM, MAVLINK_MESSAGE_INFO_PAYLOAD_STATS_TM, MAVLINK_MESSAGE_INFO_GSE_TM, MAVLINK_MESSAGE_INFO_MOTOR_TM, MAVLINK_MESSAGE_INFO_CALIBRATION_TM, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}}
+# define MAVLINK_MESSAGE_NAMES {{ "ACK_TM", 100 }, { "ADA_TM", 205 }, { "ADC_TM", 106 }, { "ARP_COMMAND_TC", 65 }, { "ARP_TM", 150 }, { "ATTITUDE_TM", 111 }, { "CALIBRATION_TM", 214 }, { "CAN_STATS_TM", 203 }, { "COMMAND_TC", 2 }, { "CONRIG_STATE_TC", 32 }, { "CURRENT_TM", 108 }, { "GPS_TM", 103 }, { "GSE_TM", 212 }, { "IMU_TM", 104 }, { "LOAD_TM", 110 }, { "LOGGER_TM", 201 }, { "MAVLINK_STATS_TM", 202 }, { "MEA_TM", 207 }, { "MOTOR_TM", 213 }, { "NACK_TM", 101 }, { "NAS_TM", 206 }, { "PAYLOAD_FLIGHT_TM", 209 }, { "PAYLOAD_STATS_TM", 211 }, { "PING_TC", 1 }, { "PIN_TM", 114 }, { "PRESSURE_TM", 105 }, { "RAW_EVENT_TC", 14 }, { "REFERENCE_TM", 115 }, { "REGISTRY_COORD_TM", 118 }, { "REGISTRY_FLOAT_TM", 116 }, { "REGISTRY_INT_TM", 117 }, { "RESET_SERVO_TC", 7 }, { "ROCKET_FLIGHT_TM", 208 }, { "ROCKET_STATS_TM", 210 }, { "SENSOR_STATE_TM", 112 }, { "SENSOR_TM_REQUEST_TC", 4 }, { "SERVO_TM", 113 }, { "SERVO_TM_REQUEST_TC", 5 }, { "SET_ALGORITHM_TC", 17 }, { "SET_ANTENNA_COORDINATES_ARP_TC", 63 }, { "SET_ATOMIC_VALVE_TIMING_TC", 30 }, { "SET_CALIBRATION_PRESSURE_TC", 18 }, { "SET_COOLING_TIME_TC", 35 }, { "SET_COORDINATES_TC", 13 }, { "SET_DEPLOYMENT_ALTITUDE_TC", 15 }, { "SET_IGNITION_TIME_TC", 33 }, { "SET_INITIAL_MEA_MASS_TC", 19 }, { "SET_NITROGEN_TIME_TC", 34 }, { "SET_ORIENTATION_QUAT_TC", 12 }, { "SET_ORIENTATION_TC", 11 }, { "SET_REFERENCE_ALTITUDE_TC", 9 }, { "SET_REFERENCE_TEMPERATURE_TC", 10 }, { "SET_ROCKET_COORDINATES_ARP_TC", 64 }, { "SET_SERVO_ANGLE_TC", 6 }, { "SET_STEPPER_ANGLE_TC", 60 }, { "SET_STEPPER_MULTIPLIER_TC", 62 }, { "SET_STEPPER_STEPS_TC", 61 }, { "SET_TARGET_COORDINATES_TC", 16 }, { "SET_VALVE_MAXIMUM_APERTURE_TC", 31 }, { "SYSTEM_TM_REQUEST_TC", 3 }, { "SYS_TM", 200 }, { "TASK_STATS_TM", 204 }, { "TEMP_TM", 109 }, { "VOLTAGE_TM", 107 }, { "WACK_TM", 102 }, { "WIGGLE_SERVO_TC", 8 }}
 # if MAVLINK_COMMAND_24BIT
 #  include "../mavlink_get_info.h"
 # endif
diff --git a/mavlink_lib/lyra/mavlink.h b/mavlink_lib/lyra/mavlink.h
index 26c3c0a14a9105162d258fb8003632e814192f03..863dcf0be232d1fe79f4c25c0a00d8657add3f4c 100644
--- a/mavlink_lib/lyra/mavlink.h
+++ b/mavlink_lib/lyra/mavlink.h
@@ -6,7 +6,7 @@
 #ifndef MAVLINK_H
 #define MAVLINK_H
 
-#define MAVLINK_PRIMARY_XML_HASH 3376817544474608324
+#define MAVLINK_PRIMARY_XML_HASH -3518193324732693372
 
 #ifndef MAVLINK_STX
 #define MAVLINK_STX 254
diff --git a/mavlink_lib/lyra/mavlink_msg_calibration_tm.h b/mavlink_lib/lyra/mavlink_msg_calibration_tm.h
new file mode 100644
index 0000000000000000000000000000000000000000..451a43094ab8f7ea0133f89d8ec059f0b1e4ddfe
--- /dev/null
+++ b/mavlink_lib/lyra/mavlink_msg_calibration_tm.h
@@ -0,0 +1,588 @@
+#pragma once
+// MESSAGE CALIBRATION_TM PACKING
+
+#define MAVLINK_MSG_ID_CALIBRATION_TM 214
+
+
+typedef struct __mavlink_calibration_tm_t {
+ uint64_t timestamp; /*< [us] Timestamp in microseconds*/
+ float gyro_bias_x; /*< [deg/s] Gyroscope X bias*/
+ float gyro_bias_y; /*< [deg/s] Gyroscope Y bias*/
+ float gyro_bias_z; /*< [deg/s] Gyroscope Z bias*/
+ float mag_bias_x; /*< [uT] Magnetometer X bias*/
+ float mag_bias_y; /*< [uT] Magnetometer Y bias*/
+ float mag_bias_z; /*< [uT] Magnetometer Z bias*/
+ float mag_scale_x; /*<  Magnetometer X scale*/
+ float mag_scale_y; /*<  Magnetometer Y scale*/
+ float mag_scale_z; /*<  Magnetometer Z scale*/
+ float static_press_1_bias; /*< [Pa] Static pressure 1 bias*/
+ float static_press_1_scale; /*<  Static pressure 1 scale*/
+ float static_press_2_bias; /*< [Pa] Static pressure 2 bias*/
+ float static_press_2_scale; /*<  Static pressure 2 scale*/
+ float dpl_bay_press_bias; /*< [Pa] Deployment bay pressure bias*/
+ float dpl_bay_press_scale; /*<  Deployment bay pressure scale*/
+} mavlink_calibration_tm_t;
+
+#define MAVLINK_MSG_ID_CALIBRATION_TM_LEN 68
+#define MAVLINK_MSG_ID_CALIBRATION_TM_MIN_LEN 68
+#define MAVLINK_MSG_ID_214_LEN 68
+#define MAVLINK_MSG_ID_214_MIN_LEN 68
+
+#define MAVLINK_MSG_ID_CALIBRATION_TM_CRC 31
+#define MAVLINK_MSG_ID_214_CRC 31
+
+
+
+#if MAVLINK_COMMAND_24BIT
+#define MAVLINK_MESSAGE_INFO_CALIBRATION_TM { \
+    214, \
+    "CALIBRATION_TM", \
+    16, \
+    {  { "timestamp", NULL, MAVLINK_TYPE_UINT64_T, 0, 0, offsetof(mavlink_calibration_tm_t, timestamp) }, \
+         { "gyro_bias_x", NULL, MAVLINK_TYPE_FLOAT, 0, 8, offsetof(mavlink_calibration_tm_t, gyro_bias_x) }, \
+         { "gyro_bias_y", NULL, MAVLINK_TYPE_FLOAT, 0, 12, offsetof(mavlink_calibration_tm_t, gyro_bias_y) }, \
+         { "gyro_bias_z", NULL, MAVLINK_TYPE_FLOAT, 0, 16, offsetof(mavlink_calibration_tm_t, gyro_bias_z) }, \
+         { "mag_bias_x", NULL, MAVLINK_TYPE_FLOAT, 0, 20, offsetof(mavlink_calibration_tm_t, mag_bias_x) }, \
+         { "mag_bias_y", NULL, MAVLINK_TYPE_FLOAT, 0, 24, offsetof(mavlink_calibration_tm_t, mag_bias_y) }, \
+         { "mag_bias_z", NULL, MAVLINK_TYPE_FLOAT, 0, 28, offsetof(mavlink_calibration_tm_t, mag_bias_z) }, \
+         { "mag_scale_x", NULL, MAVLINK_TYPE_FLOAT, 0, 32, offsetof(mavlink_calibration_tm_t, mag_scale_x) }, \
+         { "mag_scale_y", NULL, MAVLINK_TYPE_FLOAT, 0, 36, offsetof(mavlink_calibration_tm_t, mag_scale_y) }, \
+         { "mag_scale_z", NULL, MAVLINK_TYPE_FLOAT, 0, 40, offsetof(mavlink_calibration_tm_t, mag_scale_z) }, \
+         { "static_press_1_bias", NULL, MAVLINK_TYPE_FLOAT, 0, 44, offsetof(mavlink_calibration_tm_t, static_press_1_bias) }, \
+         { "static_press_1_scale", NULL, MAVLINK_TYPE_FLOAT, 0, 48, offsetof(mavlink_calibration_tm_t, static_press_1_scale) }, \
+         { "static_press_2_bias", NULL, MAVLINK_TYPE_FLOAT, 0, 52, offsetof(mavlink_calibration_tm_t, static_press_2_bias) }, \
+         { "static_press_2_scale", NULL, MAVLINK_TYPE_FLOAT, 0, 56, offsetof(mavlink_calibration_tm_t, static_press_2_scale) }, \
+         { "dpl_bay_press_bias", NULL, MAVLINK_TYPE_FLOAT, 0, 60, offsetof(mavlink_calibration_tm_t, dpl_bay_press_bias) }, \
+         { "dpl_bay_press_scale", NULL, MAVLINK_TYPE_FLOAT, 0, 64, offsetof(mavlink_calibration_tm_t, dpl_bay_press_scale) }, \
+         } \
+}
+#else
+#define MAVLINK_MESSAGE_INFO_CALIBRATION_TM { \
+    "CALIBRATION_TM", \
+    16, \
+    {  { "timestamp", NULL, MAVLINK_TYPE_UINT64_T, 0, 0, offsetof(mavlink_calibration_tm_t, timestamp) }, \
+         { "gyro_bias_x", NULL, MAVLINK_TYPE_FLOAT, 0, 8, offsetof(mavlink_calibration_tm_t, gyro_bias_x) }, \
+         { "gyro_bias_y", NULL, MAVLINK_TYPE_FLOAT, 0, 12, offsetof(mavlink_calibration_tm_t, gyro_bias_y) }, \
+         { "gyro_bias_z", NULL, MAVLINK_TYPE_FLOAT, 0, 16, offsetof(mavlink_calibration_tm_t, gyro_bias_z) }, \
+         { "mag_bias_x", NULL, MAVLINK_TYPE_FLOAT, 0, 20, offsetof(mavlink_calibration_tm_t, mag_bias_x) }, \
+         { "mag_bias_y", NULL, MAVLINK_TYPE_FLOAT, 0, 24, offsetof(mavlink_calibration_tm_t, mag_bias_y) }, \
+         { "mag_bias_z", NULL, MAVLINK_TYPE_FLOAT, 0, 28, offsetof(mavlink_calibration_tm_t, mag_bias_z) }, \
+         { "mag_scale_x", NULL, MAVLINK_TYPE_FLOAT, 0, 32, offsetof(mavlink_calibration_tm_t, mag_scale_x) }, \
+         { "mag_scale_y", NULL, MAVLINK_TYPE_FLOAT, 0, 36, offsetof(mavlink_calibration_tm_t, mag_scale_y) }, \
+         { "mag_scale_z", NULL, MAVLINK_TYPE_FLOAT, 0, 40, offsetof(mavlink_calibration_tm_t, mag_scale_z) }, \
+         { "static_press_1_bias", NULL, MAVLINK_TYPE_FLOAT, 0, 44, offsetof(mavlink_calibration_tm_t, static_press_1_bias) }, \
+         { "static_press_1_scale", NULL, MAVLINK_TYPE_FLOAT, 0, 48, offsetof(mavlink_calibration_tm_t, static_press_1_scale) }, \
+         { "static_press_2_bias", NULL, MAVLINK_TYPE_FLOAT, 0, 52, offsetof(mavlink_calibration_tm_t, static_press_2_bias) }, \
+         { "static_press_2_scale", NULL, MAVLINK_TYPE_FLOAT, 0, 56, offsetof(mavlink_calibration_tm_t, static_press_2_scale) }, \
+         { "dpl_bay_press_bias", NULL, MAVLINK_TYPE_FLOAT, 0, 60, offsetof(mavlink_calibration_tm_t, dpl_bay_press_bias) }, \
+         { "dpl_bay_press_scale", NULL, MAVLINK_TYPE_FLOAT, 0, 64, offsetof(mavlink_calibration_tm_t, dpl_bay_press_scale) }, \
+         } \
+}
+#endif
+
+/**
+ * @brief Pack a calibration_tm message
+ * @param system_id ID of this system
+ * @param component_id ID of this component (e.g. 200 for IMU)
+ * @param msg The MAVLink message to compress the data into
+ *
+ * @param timestamp [us] Timestamp in microseconds
+ * @param gyro_bias_x [deg/s] Gyroscope X bias
+ * @param gyro_bias_y [deg/s] Gyroscope Y bias
+ * @param gyro_bias_z [deg/s] Gyroscope Z bias
+ * @param mag_bias_x [uT] Magnetometer X bias
+ * @param mag_bias_y [uT] Magnetometer Y bias
+ * @param mag_bias_z [uT] Magnetometer Z bias
+ * @param mag_scale_x  Magnetometer X scale
+ * @param mag_scale_y  Magnetometer Y scale
+ * @param mag_scale_z  Magnetometer Z scale
+ * @param static_press_1_bias [Pa] Static pressure 1 bias
+ * @param static_press_1_scale  Static pressure 1 scale
+ * @param static_press_2_bias [Pa] Static pressure 2 bias
+ * @param static_press_2_scale  Static pressure 2 scale
+ * @param dpl_bay_press_bias [Pa] Deployment bay pressure bias
+ * @param dpl_bay_press_scale  Deployment bay pressure scale
+ * @return length of the message in bytes (excluding serial stream start sign)
+ */
+static inline uint16_t mavlink_msg_calibration_tm_pack(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg,
+                               uint64_t timestamp, float gyro_bias_x, float gyro_bias_y, float gyro_bias_z, float mag_bias_x, float mag_bias_y, float mag_bias_z, float mag_scale_x, float mag_scale_y, float mag_scale_z, float static_press_1_bias, float static_press_1_scale, float static_press_2_bias, float static_press_2_scale, float dpl_bay_press_bias, float dpl_bay_press_scale)
+{
+#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
+    char buf[MAVLINK_MSG_ID_CALIBRATION_TM_LEN];
+    _mav_put_uint64_t(buf, 0, timestamp);
+    _mav_put_float(buf, 8, gyro_bias_x);
+    _mav_put_float(buf, 12, gyro_bias_y);
+    _mav_put_float(buf, 16, gyro_bias_z);
+    _mav_put_float(buf, 20, mag_bias_x);
+    _mav_put_float(buf, 24, mag_bias_y);
+    _mav_put_float(buf, 28, mag_bias_z);
+    _mav_put_float(buf, 32, mag_scale_x);
+    _mav_put_float(buf, 36, mag_scale_y);
+    _mav_put_float(buf, 40, mag_scale_z);
+    _mav_put_float(buf, 44, static_press_1_bias);
+    _mav_put_float(buf, 48, static_press_1_scale);
+    _mav_put_float(buf, 52, static_press_2_bias);
+    _mav_put_float(buf, 56, static_press_2_scale);
+    _mav_put_float(buf, 60, dpl_bay_press_bias);
+    _mav_put_float(buf, 64, dpl_bay_press_scale);
+
+        memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_CALIBRATION_TM_LEN);
+#else
+    mavlink_calibration_tm_t packet;
+    packet.timestamp = timestamp;
+    packet.gyro_bias_x = gyro_bias_x;
+    packet.gyro_bias_y = gyro_bias_y;
+    packet.gyro_bias_z = gyro_bias_z;
+    packet.mag_bias_x = mag_bias_x;
+    packet.mag_bias_y = mag_bias_y;
+    packet.mag_bias_z = mag_bias_z;
+    packet.mag_scale_x = mag_scale_x;
+    packet.mag_scale_y = mag_scale_y;
+    packet.mag_scale_z = mag_scale_z;
+    packet.static_press_1_bias = static_press_1_bias;
+    packet.static_press_1_scale = static_press_1_scale;
+    packet.static_press_2_bias = static_press_2_bias;
+    packet.static_press_2_scale = static_press_2_scale;
+    packet.dpl_bay_press_bias = dpl_bay_press_bias;
+    packet.dpl_bay_press_scale = dpl_bay_press_scale;
+
+        memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_CALIBRATION_TM_LEN);
+#endif
+
+    msg->msgid = MAVLINK_MSG_ID_CALIBRATION_TM;
+    return mavlink_finalize_message(msg, system_id, component_id, MAVLINK_MSG_ID_CALIBRATION_TM_MIN_LEN, MAVLINK_MSG_ID_CALIBRATION_TM_LEN, MAVLINK_MSG_ID_CALIBRATION_TM_CRC);
+}
+
+/**
+ * @brief Pack a calibration_tm message on a channel
+ * @param system_id ID of this system
+ * @param component_id ID of this component (e.g. 200 for IMU)
+ * @param chan The MAVLink channel this message will be sent over
+ * @param msg The MAVLink message to compress the data into
+ * @param timestamp [us] Timestamp in microseconds
+ * @param gyro_bias_x [deg/s] Gyroscope X bias
+ * @param gyro_bias_y [deg/s] Gyroscope Y bias
+ * @param gyro_bias_z [deg/s] Gyroscope Z bias
+ * @param mag_bias_x [uT] Magnetometer X bias
+ * @param mag_bias_y [uT] Magnetometer Y bias
+ * @param mag_bias_z [uT] Magnetometer Z bias
+ * @param mag_scale_x  Magnetometer X scale
+ * @param mag_scale_y  Magnetometer Y scale
+ * @param mag_scale_z  Magnetometer Z scale
+ * @param static_press_1_bias [Pa] Static pressure 1 bias
+ * @param static_press_1_scale  Static pressure 1 scale
+ * @param static_press_2_bias [Pa] Static pressure 2 bias
+ * @param static_press_2_scale  Static pressure 2 scale
+ * @param dpl_bay_press_bias [Pa] Deployment bay pressure bias
+ * @param dpl_bay_press_scale  Deployment bay pressure scale
+ * @return length of the message in bytes (excluding serial stream start sign)
+ */
+static inline uint16_t mavlink_msg_calibration_tm_pack_chan(uint8_t system_id, uint8_t component_id, uint8_t chan,
+                               mavlink_message_t* msg,
+                                   uint64_t timestamp,float gyro_bias_x,float gyro_bias_y,float gyro_bias_z,float mag_bias_x,float mag_bias_y,float mag_bias_z,float mag_scale_x,float mag_scale_y,float mag_scale_z,float static_press_1_bias,float static_press_1_scale,float static_press_2_bias,float static_press_2_scale,float dpl_bay_press_bias,float dpl_bay_press_scale)
+{
+#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
+    char buf[MAVLINK_MSG_ID_CALIBRATION_TM_LEN];
+    _mav_put_uint64_t(buf, 0, timestamp);
+    _mav_put_float(buf, 8, gyro_bias_x);
+    _mav_put_float(buf, 12, gyro_bias_y);
+    _mav_put_float(buf, 16, gyro_bias_z);
+    _mav_put_float(buf, 20, mag_bias_x);
+    _mav_put_float(buf, 24, mag_bias_y);
+    _mav_put_float(buf, 28, mag_bias_z);
+    _mav_put_float(buf, 32, mag_scale_x);
+    _mav_put_float(buf, 36, mag_scale_y);
+    _mav_put_float(buf, 40, mag_scale_z);
+    _mav_put_float(buf, 44, static_press_1_bias);
+    _mav_put_float(buf, 48, static_press_1_scale);
+    _mav_put_float(buf, 52, static_press_2_bias);
+    _mav_put_float(buf, 56, static_press_2_scale);
+    _mav_put_float(buf, 60, dpl_bay_press_bias);
+    _mav_put_float(buf, 64, dpl_bay_press_scale);
+
+        memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_CALIBRATION_TM_LEN);
+#else
+    mavlink_calibration_tm_t packet;
+    packet.timestamp = timestamp;
+    packet.gyro_bias_x = gyro_bias_x;
+    packet.gyro_bias_y = gyro_bias_y;
+    packet.gyro_bias_z = gyro_bias_z;
+    packet.mag_bias_x = mag_bias_x;
+    packet.mag_bias_y = mag_bias_y;
+    packet.mag_bias_z = mag_bias_z;
+    packet.mag_scale_x = mag_scale_x;
+    packet.mag_scale_y = mag_scale_y;
+    packet.mag_scale_z = mag_scale_z;
+    packet.static_press_1_bias = static_press_1_bias;
+    packet.static_press_1_scale = static_press_1_scale;
+    packet.static_press_2_bias = static_press_2_bias;
+    packet.static_press_2_scale = static_press_2_scale;
+    packet.dpl_bay_press_bias = dpl_bay_press_bias;
+    packet.dpl_bay_press_scale = dpl_bay_press_scale;
+
+        memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_CALIBRATION_TM_LEN);
+#endif
+
+    msg->msgid = MAVLINK_MSG_ID_CALIBRATION_TM;
+    return mavlink_finalize_message_chan(msg, system_id, component_id, chan, MAVLINK_MSG_ID_CALIBRATION_TM_MIN_LEN, MAVLINK_MSG_ID_CALIBRATION_TM_LEN, MAVLINK_MSG_ID_CALIBRATION_TM_CRC);
+}
+
+/**
+ * @brief Encode a calibration_tm struct
+ *
+ * @param system_id ID of this system
+ * @param component_id ID of this component (e.g. 200 for IMU)
+ * @param msg The MAVLink message to compress the data into
+ * @param calibration_tm C-struct to read the message contents from
+ */
+static inline uint16_t mavlink_msg_calibration_tm_encode(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg, const mavlink_calibration_tm_t* calibration_tm)
+{
+    return mavlink_msg_calibration_tm_pack(system_id, component_id, msg, calibration_tm->timestamp, calibration_tm->gyro_bias_x, calibration_tm->gyro_bias_y, calibration_tm->gyro_bias_z, calibration_tm->mag_bias_x, calibration_tm->mag_bias_y, calibration_tm->mag_bias_z, calibration_tm->mag_scale_x, calibration_tm->mag_scale_y, calibration_tm->mag_scale_z, calibration_tm->static_press_1_bias, calibration_tm->static_press_1_scale, calibration_tm->static_press_2_bias, calibration_tm->static_press_2_scale, calibration_tm->dpl_bay_press_bias, calibration_tm->dpl_bay_press_scale);
+}
+
+/**
+ * @brief Encode a calibration_tm struct on a channel
+ *
+ * @param system_id ID of this system
+ * @param component_id ID of this component (e.g. 200 for IMU)
+ * @param chan The MAVLink channel this message will be sent over
+ * @param msg The MAVLink message to compress the data into
+ * @param calibration_tm C-struct to read the message contents from
+ */
+static inline uint16_t mavlink_msg_calibration_tm_encode_chan(uint8_t system_id, uint8_t component_id, uint8_t chan, mavlink_message_t* msg, const mavlink_calibration_tm_t* calibration_tm)
+{
+    return mavlink_msg_calibration_tm_pack_chan(system_id, component_id, chan, msg, calibration_tm->timestamp, calibration_tm->gyro_bias_x, calibration_tm->gyro_bias_y, calibration_tm->gyro_bias_z, calibration_tm->mag_bias_x, calibration_tm->mag_bias_y, calibration_tm->mag_bias_z, calibration_tm->mag_scale_x, calibration_tm->mag_scale_y, calibration_tm->mag_scale_z, calibration_tm->static_press_1_bias, calibration_tm->static_press_1_scale, calibration_tm->static_press_2_bias, calibration_tm->static_press_2_scale, calibration_tm->dpl_bay_press_bias, calibration_tm->dpl_bay_press_scale);
+}
+
+/**
+ * @brief Send a calibration_tm message
+ * @param chan MAVLink channel to send the message
+ *
+ * @param timestamp [us] Timestamp in microseconds
+ * @param gyro_bias_x [deg/s] Gyroscope X bias
+ * @param gyro_bias_y [deg/s] Gyroscope Y bias
+ * @param gyro_bias_z [deg/s] Gyroscope Z bias
+ * @param mag_bias_x [uT] Magnetometer X bias
+ * @param mag_bias_y [uT] Magnetometer Y bias
+ * @param mag_bias_z [uT] Magnetometer Z bias
+ * @param mag_scale_x  Magnetometer X scale
+ * @param mag_scale_y  Magnetometer Y scale
+ * @param mag_scale_z  Magnetometer Z scale
+ * @param static_press_1_bias [Pa] Static pressure 1 bias
+ * @param static_press_1_scale  Static pressure 1 scale
+ * @param static_press_2_bias [Pa] Static pressure 2 bias
+ * @param static_press_2_scale  Static pressure 2 scale
+ * @param dpl_bay_press_bias [Pa] Deployment bay pressure bias
+ * @param dpl_bay_press_scale  Deployment bay pressure scale
+ */
+#ifdef MAVLINK_USE_CONVENIENCE_FUNCTIONS
+
+static inline void mavlink_msg_calibration_tm_send(mavlink_channel_t chan, uint64_t timestamp, float gyro_bias_x, float gyro_bias_y, float gyro_bias_z, float mag_bias_x, float mag_bias_y, float mag_bias_z, float mag_scale_x, float mag_scale_y, float mag_scale_z, float static_press_1_bias, float static_press_1_scale, float static_press_2_bias, float static_press_2_scale, float dpl_bay_press_bias, float dpl_bay_press_scale)
+{
+#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
+    char buf[MAVLINK_MSG_ID_CALIBRATION_TM_LEN];
+    _mav_put_uint64_t(buf, 0, timestamp);
+    _mav_put_float(buf, 8, gyro_bias_x);
+    _mav_put_float(buf, 12, gyro_bias_y);
+    _mav_put_float(buf, 16, gyro_bias_z);
+    _mav_put_float(buf, 20, mag_bias_x);
+    _mav_put_float(buf, 24, mag_bias_y);
+    _mav_put_float(buf, 28, mag_bias_z);
+    _mav_put_float(buf, 32, mag_scale_x);
+    _mav_put_float(buf, 36, mag_scale_y);
+    _mav_put_float(buf, 40, mag_scale_z);
+    _mav_put_float(buf, 44, static_press_1_bias);
+    _mav_put_float(buf, 48, static_press_1_scale);
+    _mav_put_float(buf, 52, static_press_2_bias);
+    _mav_put_float(buf, 56, static_press_2_scale);
+    _mav_put_float(buf, 60, dpl_bay_press_bias);
+    _mav_put_float(buf, 64, dpl_bay_press_scale);
+
+    _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_CALIBRATION_TM, buf, MAVLINK_MSG_ID_CALIBRATION_TM_MIN_LEN, MAVLINK_MSG_ID_CALIBRATION_TM_LEN, MAVLINK_MSG_ID_CALIBRATION_TM_CRC);
+#else
+    mavlink_calibration_tm_t packet;
+    packet.timestamp = timestamp;
+    packet.gyro_bias_x = gyro_bias_x;
+    packet.gyro_bias_y = gyro_bias_y;
+    packet.gyro_bias_z = gyro_bias_z;
+    packet.mag_bias_x = mag_bias_x;
+    packet.mag_bias_y = mag_bias_y;
+    packet.mag_bias_z = mag_bias_z;
+    packet.mag_scale_x = mag_scale_x;
+    packet.mag_scale_y = mag_scale_y;
+    packet.mag_scale_z = mag_scale_z;
+    packet.static_press_1_bias = static_press_1_bias;
+    packet.static_press_1_scale = static_press_1_scale;
+    packet.static_press_2_bias = static_press_2_bias;
+    packet.static_press_2_scale = static_press_2_scale;
+    packet.dpl_bay_press_bias = dpl_bay_press_bias;
+    packet.dpl_bay_press_scale = dpl_bay_press_scale;
+
+    _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_CALIBRATION_TM, (const char *)&packet, MAVLINK_MSG_ID_CALIBRATION_TM_MIN_LEN, MAVLINK_MSG_ID_CALIBRATION_TM_LEN, MAVLINK_MSG_ID_CALIBRATION_TM_CRC);
+#endif
+}
+
+/**
+ * @brief Send a calibration_tm message
+ * @param chan MAVLink channel to send the message
+ * @param struct The MAVLink struct to serialize
+ */
+static inline void mavlink_msg_calibration_tm_send_struct(mavlink_channel_t chan, const mavlink_calibration_tm_t* calibration_tm)
+{
+#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
+    mavlink_msg_calibration_tm_send(chan, calibration_tm->timestamp, calibration_tm->gyro_bias_x, calibration_tm->gyro_bias_y, calibration_tm->gyro_bias_z, calibration_tm->mag_bias_x, calibration_tm->mag_bias_y, calibration_tm->mag_bias_z, calibration_tm->mag_scale_x, calibration_tm->mag_scale_y, calibration_tm->mag_scale_z, calibration_tm->static_press_1_bias, calibration_tm->static_press_1_scale, calibration_tm->static_press_2_bias, calibration_tm->static_press_2_scale, calibration_tm->dpl_bay_press_bias, calibration_tm->dpl_bay_press_scale);
+#else
+    _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_CALIBRATION_TM, (const char *)calibration_tm, MAVLINK_MSG_ID_CALIBRATION_TM_MIN_LEN, MAVLINK_MSG_ID_CALIBRATION_TM_LEN, MAVLINK_MSG_ID_CALIBRATION_TM_CRC);
+#endif
+}
+
+#if MAVLINK_MSG_ID_CALIBRATION_TM_LEN <= MAVLINK_MAX_PAYLOAD_LEN
+/*
+  This variant of _send() can be used to save stack space by re-using
+  memory from the receive buffer.  The caller provides a
+  mavlink_message_t which is the size of a full mavlink message. This
+  is usually the receive buffer for the channel, and allows a reply to an
+  incoming message with minimum stack space usage.
+ */
+static inline void mavlink_msg_calibration_tm_send_buf(mavlink_message_t *msgbuf, mavlink_channel_t chan,  uint64_t timestamp, float gyro_bias_x, float gyro_bias_y, float gyro_bias_z, float mag_bias_x, float mag_bias_y, float mag_bias_z, float mag_scale_x, float mag_scale_y, float mag_scale_z, float static_press_1_bias, float static_press_1_scale, float static_press_2_bias, float static_press_2_scale, float dpl_bay_press_bias, float dpl_bay_press_scale)
+{
+#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
+    char *buf = (char *)msgbuf;
+    _mav_put_uint64_t(buf, 0, timestamp);
+    _mav_put_float(buf, 8, gyro_bias_x);
+    _mav_put_float(buf, 12, gyro_bias_y);
+    _mav_put_float(buf, 16, gyro_bias_z);
+    _mav_put_float(buf, 20, mag_bias_x);
+    _mav_put_float(buf, 24, mag_bias_y);
+    _mav_put_float(buf, 28, mag_bias_z);
+    _mav_put_float(buf, 32, mag_scale_x);
+    _mav_put_float(buf, 36, mag_scale_y);
+    _mav_put_float(buf, 40, mag_scale_z);
+    _mav_put_float(buf, 44, static_press_1_bias);
+    _mav_put_float(buf, 48, static_press_1_scale);
+    _mav_put_float(buf, 52, static_press_2_bias);
+    _mav_put_float(buf, 56, static_press_2_scale);
+    _mav_put_float(buf, 60, dpl_bay_press_bias);
+    _mav_put_float(buf, 64, dpl_bay_press_scale);
+
+    _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_CALIBRATION_TM, buf, MAVLINK_MSG_ID_CALIBRATION_TM_MIN_LEN, MAVLINK_MSG_ID_CALIBRATION_TM_LEN, MAVLINK_MSG_ID_CALIBRATION_TM_CRC);
+#else
+    mavlink_calibration_tm_t *packet = (mavlink_calibration_tm_t *)msgbuf;
+    packet->timestamp = timestamp;
+    packet->gyro_bias_x = gyro_bias_x;
+    packet->gyro_bias_y = gyro_bias_y;
+    packet->gyro_bias_z = gyro_bias_z;
+    packet->mag_bias_x = mag_bias_x;
+    packet->mag_bias_y = mag_bias_y;
+    packet->mag_bias_z = mag_bias_z;
+    packet->mag_scale_x = mag_scale_x;
+    packet->mag_scale_y = mag_scale_y;
+    packet->mag_scale_z = mag_scale_z;
+    packet->static_press_1_bias = static_press_1_bias;
+    packet->static_press_1_scale = static_press_1_scale;
+    packet->static_press_2_bias = static_press_2_bias;
+    packet->static_press_2_scale = static_press_2_scale;
+    packet->dpl_bay_press_bias = dpl_bay_press_bias;
+    packet->dpl_bay_press_scale = dpl_bay_press_scale;
+
+    _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_CALIBRATION_TM, (const char *)packet, MAVLINK_MSG_ID_CALIBRATION_TM_MIN_LEN, MAVLINK_MSG_ID_CALIBRATION_TM_LEN, MAVLINK_MSG_ID_CALIBRATION_TM_CRC);
+#endif
+}
+#endif
+
+#endif
+
+// MESSAGE CALIBRATION_TM UNPACKING
+
+
+/**
+ * @brief Get field timestamp from calibration_tm message
+ *
+ * @return [us] Timestamp in microseconds
+ */
+static inline uint64_t mavlink_msg_calibration_tm_get_timestamp(const mavlink_message_t* msg)
+{
+    return _MAV_RETURN_uint64_t(msg,  0);
+}
+
+/**
+ * @brief Get field gyro_bias_x from calibration_tm message
+ *
+ * @return [deg/s] Gyroscope X bias
+ */
+static inline float mavlink_msg_calibration_tm_get_gyro_bias_x(const mavlink_message_t* msg)
+{
+    return _MAV_RETURN_float(msg,  8);
+}
+
+/**
+ * @brief Get field gyro_bias_y from calibration_tm message
+ *
+ * @return [deg/s] Gyroscope Y bias
+ */
+static inline float mavlink_msg_calibration_tm_get_gyro_bias_y(const mavlink_message_t* msg)
+{
+    return _MAV_RETURN_float(msg,  12);
+}
+
+/**
+ * @brief Get field gyro_bias_z from calibration_tm message
+ *
+ * @return [deg/s] Gyroscope Z bias
+ */
+static inline float mavlink_msg_calibration_tm_get_gyro_bias_z(const mavlink_message_t* msg)
+{
+    return _MAV_RETURN_float(msg,  16);
+}
+
+/**
+ * @brief Get field mag_bias_x from calibration_tm message
+ *
+ * @return [uT] Magnetometer X bias
+ */
+static inline float mavlink_msg_calibration_tm_get_mag_bias_x(const mavlink_message_t* msg)
+{
+    return _MAV_RETURN_float(msg,  20);
+}
+
+/**
+ * @brief Get field mag_bias_y from calibration_tm message
+ *
+ * @return [uT] Magnetometer Y bias
+ */
+static inline float mavlink_msg_calibration_tm_get_mag_bias_y(const mavlink_message_t* msg)
+{
+    return _MAV_RETURN_float(msg,  24);
+}
+
+/**
+ * @brief Get field mag_bias_z from calibration_tm message
+ *
+ * @return [uT] Magnetometer Z bias
+ */
+static inline float mavlink_msg_calibration_tm_get_mag_bias_z(const mavlink_message_t* msg)
+{
+    return _MAV_RETURN_float(msg,  28);
+}
+
+/**
+ * @brief Get field mag_scale_x from calibration_tm message
+ *
+ * @return  Magnetometer X scale
+ */
+static inline float mavlink_msg_calibration_tm_get_mag_scale_x(const mavlink_message_t* msg)
+{
+    return _MAV_RETURN_float(msg,  32);
+}
+
+/**
+ * @brief Get field mag_scale_y from calibration_tm message
+ *
+ * @return  Magnetometer Y scale
+ */
+static inline float mavlink_msg_calibration_tm_get_mag_scale_y(const mavlink_message_t* msg)
+{
+    return _MAV_RETURN_float(msg,  36);
+}
+
+/**
+ * @brief Get field mag_scale_z from calibration_tm message
+ *
+ * @return  Magnetometer Z scale
+ */
+static inline float mavlink_msg_calibration_tm_get_mag_scale_z(const mavlink_message_t* msg)
+{
+    return _MAV_RETURN_float(msg,  40);
+}
+
+/**
+ * @brief Get field static_press_1_bias from calibration_tm message
+ *
+ * @return [Pa] Static pressure 1 bias
+ */
+static inline float mavlink_msg_calibration_tm_get_static_press_1_bias(const mavlink_message_t* msg)
+{
+    return _MAV_RETURN_float(msg,  44);
+}
+
+/**
+ * @brief Get field static_press_1_scale from calibration_tm message
+ *
+ * @return  Static pressure 1 scale
+ */
+static inline float mavlink_msg_calibration_tm_get_static_press_1_scale(const mavlink_message_t* msg)
+{
+    return _MAV_RETURN_float(msg,  48);
+}
+
+/**
+ * @brief Get field static_press_2_bias from calibration_tm message
+ *
+ * @return [Pa] Static pressure 2 bias
+ */
+static inline float mavlink_msg_calibration_tm_get_static_press_2_bias(const mavlink_message_t* msg)
+{
+    return _MAV_RETURN_float(msg,  52);
+}
+
+/**
+ * @brief Get field static_press_2_scale from calibration_tm message
+ *
+ * @return  Static pressure 2 scale
+ */
+static inline float mavlink_msg_calibration_tm_get_static_press_2_scale(const mavlink_message_t* msg)
+{
+    return _MAV_RETURN_float(msg,  56);
+}
+
+/**
+ * @brief Get field dpl_bay_press_bias from calibration_tm message
+ *
+ * @return [Pa] Deployment bay pressure bias
+ */
+static inline float mavlink_msg_calibration_tm_get_dpl_bay_press_bias(const mavlink_message_t* msg)
+{
+    return _MAV_RETURN_float(msg,  60);
+}
+
+/**
+ * @brief Get field dpl_bay_press_scale from calibration_tm message
+ *
+ * @return  Deployment bay pressure scale
+ */
+static inline float mavlink_msg_calibration_tm_get_dpl_bay_press_scale(const mavlink_message_t* msg)
+{
+    return _MAV_RETURN_float(msg,  64);
+}
+
+/**
+ * @brief Decode a calibration_tm message into a struct
+ *
+ * @param msg The message to decode
+ * @param calibration_tm C-struct to decode the message contents into
+ */
+static inline void mavlink_msg_calibration_tm_decode(const mavlink_message_t* msg, mavlink_calibration_tm_t* calibration_tm)
+{
+#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
+    calibration_tm->timestamp = mavlink_msg_calibration_tm_get_timestamp(msg);
+    calibration_tm->gyro_bias_x = mavlink_msg_calibration_tm_get_gyro_bias_x(msg);
+    calibration_tm->gyro_bias_y = mavlink_msg_calibration_tm_get_gyro_bias_y(msg);
+    calibration_tm->gyro_bias_z = mavlink_msg_calibration_tm_get_gyro_bias_z(msg);
+    calibration_tm->mag_bias_x = mavlink_msg_calibration_tm_get_mag_bias_x(msg);
+    calibration_tm->mag_bias_y = mavlink_msg_calibration_tm_get_mag_bias_y(msg);
+    calibration_tm->mag_bias_z = mavlink_msg_calibration_tm_get_mag_bias_z(msg);
+    calibration_tm->mag_scale_x = mavlink_msg_calibration_tm_get_mag_scale_x(msg);
+    calibration_tm->mag_scale_y = mavlink_msg_calibration_tm_get_mag_scale_y(msg);
+    calibration_tm->mag_scale_z = mavlink_msg_calibration_tm_get_mag_scale_z(msg);
+    calibration_tm->static_press_1_bias = mavlink_msg_calibration_tm_get_static_press_1_bias(msg);
+    calibration_tm->static_press_1_scale = mavlink_msg_calibration_tm_get_static_press_1_scale(msg);
+    calibration_tm->static_press_2_bias = mavlink_msg_calibration_tm_get_static_press_2_bias(msg);
+    calibration_tm->static_press_2_scale = mavlink_msg_calibration_tm_get_static_press_2_scale(msg);
+    calibration_tm->dpl_bay_press_bias = mavlink_msg_calibration_tm_get_dpl_bay_press_bias(msg);
+    calibration_tm->dpl_bay_press_scale = mavlink_msg_calibration_tm_get_dpl_bay_press_scale(msg);
+#else
+        uint8_t len = msg->len < MAVLINK_MSG_ID_CALIBRATION_TM_LEN? msg->len : MAVLINK_MSG_ID_CALIBRATION_TM_LEN;
+        memset(calibration_tm, 0, MAVLINK_MSG_ID_CALIBRATION_TM_LEN);
+    memcpy(calibration_tm, _MAV_PAYLOAD(msg), len);
+#endif
+}
diff --git a/mavlink_lib/lyra/mavlink_msg_payload_flight_tm.h b/mavlink_lib/lyra/mavlink_msg_payload_flight_tm.h
index 0afb6952d018332c627a51af1696f56b7de7be3b..7d1f851413b4c3141c22d592a6c619be05f92b4d 100644
--- a/mavlink_lib/lyra/mavlink_msg_payload_flight_tm.h
+++ b/mavlink_lib/lyra/mavlink_msg_payload_flight_tm.h
@@ -43,15 +43,16 @@ typedef struct __mavlink_payload_flight_tm_t {
  float cam_battery_voltage; /*< [V] Camera battery voltage*/
  float temperature; /*< [degC] Temperature*/
  uint8_t gps_fix; /*<  Wether the GPS has a FIX*/
+ uint8_t fmm_state; /*<  Flight Mode Manager State*/
 } mavlink_payload_flight_tm_t;
 
-#define MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM_LEN 153
-#define MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM_MIN_LEN 153
-#define MAVLINK_MSG_ID_209_LEN 153
-#define MAVLINK_MSG_ID_209_MIN_LEN 153
+#define MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM_LEN 154
+#define MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM_MIN_LEN 154
+#define MAVLINK_MSG_ID_209_LEN 154
+#define MAVLINK_MSG_ID_209_MIN_LEN 154
 
-#define MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM_CRC 195
-#define MAVLINK_MSG_ID_209_CRC 195
+#define MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM_CRC 138
+#define MAVLINK_MSG_ID_209_CRC 138
 
 
 
@@ -59,7 +60,7 @@ typedef struct __mavlink_payload_flight_tm_t {
 #define MAVLINK_MESSAGE_INFO_PAYLOAD_FLIGHT_TM { \
     209, \
     "PAYLOAD_FLIGHT_TM", \
-    38, \
+    39, \
     {  { "timestamp", NULL, MAVLINK_TYPE_UINT64_T, 0, 0, offsetof(mavlink_payload_flight_tm_t, timestamp) }, \
          { "pressure_digi", NULL, MAVLINK_TYPE_FLOAT, 0, 8, offsetof(mavlink_payload_flight_tm_t, pressure_digi) }, \
          { "pressure_static", NULL, MAVLINK_TYPE_FLOAT, 0, 12, offsetof(mavlink_payload_flight_tm_t, pressure_static) }, \
@@ -78,6 +79,7 @@ typedef struct __mavlink_payload_flight_tm_t {
          { "gps_lat", NULL, MAVLINK_TYPE_FLOAT, 0, 60, offsetof(mavlink_payload_flight_tm_t, gps_lat) }, \
          { "gps_lon", NULL, MAVLINK_TYPE_FLOAT, 0, 64, offsetof(mavlink_payload_flight_tm_t, gps_lon) }, \
          { "gps_alt", NULL, MAVLINK_TYPE_FLOAT, 0, 68, offsetof(mavlink_payload_flight_tm_t, gps_alt) }, \
+         { "fmm_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 153, offsetof(mavlink_payload_flight_tm_t, fmm_state) }, \
          { "left_servo_angle", NULL, MAVLINK_TYPE_FLOAT, 0, 72, offsetof(mavlink_payload_flight_tm_t, left_servo_angle) }, \
          { "right_servo_angle", NULL, MAVLINK_TYPE_FLOAT, 0, 76, offsetof(mavlink_payload_flight_tm_t, right_servo_angle) }, \
          { "nas_n", NULL, MAVLINK_TYPE_FLOAT, 0, 80, offsetof(mavlink_payload_flight_tm_t, nas_n) }, \
@@ -103,7 +105,7 @@ typedef struct __mavlink_payload_flight_tm_t {
 #else
 #define MAVLINK_MESSAGE_INFO_PAYLOAD_FLIGHT_TM { \
     "PAYLOAD_FLIGHT_TM", \
-    38, \
+    39, \
     {  { "timestamp", NULL, MAVLINK_TYPE_UINT64_T, 0, 0, offsetof(mavlink_payload_flight_tm_t, timestamp) }, \
          { "pressure_digi", NULL, MAVLINK_TYPE_FLOAT, 0, 8, offsetof(mavlink_payload_flight_tm_t, pressure_digi) }, \
          { "pressure_static", NULL, MAVLINK_TYPE_FLOAT, 0, 12, offsetof(mavlink_payload_flight_tm_t, pressure_static) }, \
@@ -122,6 +124,7 @@ typedef struct __mavlink_payload_flight_tm_t {
          { "gps_lat", NULL, MAVLINK_TYPE_FLOAT, 0, 60, offsetof(mavlink_payload_flight_tm_t, gps_lat) }, \
          { "gps_lon", NULL, MAVLINK_TYPE_FLOAT, 0, 64, offsetof(mavlink_payload_flight_tm_t, gps_lon) }, \
          { "gps_alt", NULL, MAVLINK_TYPE_FLOAT, 0, 68, offsetof(mavlink_payload_flight_tm_t, gps_alt) }, \
+         { "fmm_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 153, offsetof(mavlink_payload_flight_tm_t, fmm_state) }, \
          { "left_servo_angle", NULL, MAVLINK_TYPE_FLOAT, 0, 72, offsetof(mavlink_payload_flight_tm_t, left_servo_angle) }, \
          { "right_servo_angle", NULL, MAVLINK_TYPE_FLOAT, 0, 76, offsetof(mavlink_payload_flight_tm_t, right_servo_angle) }, \
          { "nas_n", NULL, MAVLINK_TYPE_FLOAT, 0, 80, offsetof(mavlink_payload_flight_tm_t, nas_n) }, \
@@ -170,6 +173,7 @@ typedef struct __mavlink_payload_flight_tm_t {
  * @param gps_lat [deg] Latitude
  * @param gps_lon [deg] Longitude
  * @param gps_alt [m] GPS Altitude
+ * @param fmm_state  Flight Mode Manager State
  * @param left_servo_angle [deg] Left servo motor angle
  * @param right_servo_angle [deg] Right servo motor angle
  * @param nas_n [deg] NAS estimated noth position
@@ -193,7 +197,7 @@ typedef struct __mavlink_payload_flight_tm_t {
  * @return length of the message in bytes (excluding serial stream start sign)
  */
 static inline uint16_t mavlink_msg_payload_flight_tm_pack(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg,
-                               uint64_t timestamp, float pressure_digi, float pressure_static, float airspeed_pitot, float altitude_agl, float acc_x, float acc_y, float acc_z, float gyro_x, float gyro_y, float gyro_z, float mag_x, float mag_y, float mag_z, uint8_t gps_fix, float gps_lat, float gps_lon, float gps_alt, float left_servo_angle, float right_servo_angle, float nas_n, float nas_e, float nas_d, float nas_vn, float nas_ve, float nas_vd, float nas_qx, float nas_qy, float nas_qz, float nas_qw, float nas_bias_x, float nas_bias_y, float nas_bias_z, float wes_n, float wes_e, float battery_voltage, float cam_battery_voltage, float temperature)
+                               uint64_t timestamp, float pressure_digi, float pressure_static, float airspeed_pitot, float altitude_agl, float acc_x, float acc_y, float acc_z, float gyro_x, float gyro_y, float gyro_z, float mag_x, float mag_y, float mag_z, uint8_t gps_fix, float gps_lat, float gps_lon, float gps_alt, uint8_t fmm_state, float left_servo_angle, float right_servo_angle, float nas_n, float nas_e, float nas_d, float nas_vn, float nas_ve, float nas_vd, float nas_qx, float nas_qy, float nas_qz, float nas_qw, float nas_bias_x, float nas_bias_y, float nas_bias_z, float wes_n, float wes_e, float battery_voltage, float cam_battery_voltage, float temperature)
 {
 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
     char buf[MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM_LEN];
@@ -235,6 +239,7 @@ static inline uint16_t mavlink_msg_payload_flight_tm_pack(uint8_t system_id, uin
     _mav_put_float(buf, 144, cam_battery_voltage);
     _mav_put_float(buf, 148, temperature);
     _mav_put_uint8_t(buf, 152, gps_fix);
+    _mav_put_uint8_t(buf, 153, fmm_state);
 
         memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM_LEN);
 #else
@@ -277,6 +282,7 @@ static inline uint16_t mavlink_msg_payload_flight_tm_pack(uint8_t system_id, uin
     packet.cam_battery_voltage = cam_battery_voltage;
     packet.temperature = temperature;
     packet.gps_fix = gps_fix;
+    packet.fmm_state = fmm_state;
 
         memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM_LEN);
 #endif
@@ -309,6 +315,7 @@ static inline uint16_t mavlink_msg_payload_flight_tm_pack(uint8_t system_id, uin
  * @param gps_lat [deg] Latitude
  * @param gps_lon [deg] Longitude
  * @param gps_alt [m] GPS Altitude
+ * @param fmm_state  Flight Mode Manager State
  * @param left_servo_angle [deg] Left servo motor angle
  * @param right_servo_angle [deg] Right servo motor angle
  * @param nas_n [deg] NAS estimated noth position
@@ -333,7 +340,7 @@ static inline uint16_t mavlink_msg_payload_flight_tm_pack(uint8_t system_id, uin
  */
 static inline uint16_t mavlink_msg_payload_flight_tm_pack_chan(uint8_t system_id, uint8_t component_id, uint8_t chan,
                                mavlink_message_t* msg,
-                                   uint64_t timestamp,float pressure_digi,float pressure_static,float airspeed_pitot,float altitude_agl,float acc_x,float acc_y,float acc_z,float gyro_x,float gyro_y,float gyro_z,float mag_x,float mag_y,float mag_z,uint8_t gps_fix,float gps_lat,float gps_lon,float gps_alt,float left_servo_angle,float right_servo_angle,float nas_n,float nas_e,float nas_d,float nas_vn,float nas_ve,float nas_vd,float nas_qx,float nas_qy,float nas_qz,float nas_qw,float nas_bias_x,float nas_bias_y,float nas_bias_z,float wes_n,float wes_e,float battery_voltage,float cam_battery_voltage,float temperature)
+                                   uint64_t timestamp,float pressure_digi,float pressure_static,float airspeed_pitot,float altitude_agl,float acc_x,float acc_y,float acc_z,float gyro_x,float gyro_y,float gyro_z,float mag_x,float mag_y,float mag_z,uint8_t gps_fix,float gps_lat,float gps_lon,float gps_alt,uint8_t fmm_state,float left_servo_angle,float right_servo_angle,float nas_n,float nas_e,float nas_d,float nas_vn,float nas_ve,float nas_vd,float nas_qx,float nas_qy,float nas_qz,float nas_qw,float nas_bias_x,float nas_bias_y,float nas_bias_z,float wes_n,float wes_e,float battery_voltage,float cam_battery_voltage,float temperature)
 {
 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
     char buf[MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM_LEN];
@@ -375,6 +382,7 @@ static inline uint16_t mavlink_msg_payload_flight_tm_pack_chan(uint8_t system_id
     _mav_put_float(buf, 144, cam_battery_voltage);
     _mav_put_float(buf, 148, temperature);
     _mav_put_uint8_t(buf, 152, gps_fix);
+    _mav_put_uint8_t(buf, 153, fmm_state);
 
         memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM_LEN);
 #else
@@ -417,6 +425,7 @@ static inline uint16_t mavlink_msg_payload_flight_tm_pack_chan(uint8_t system_id
     packet.cam_battery_voltage = cam_battery_voltage;
     packet.temperature = temperature;
     packet.gps_fix = gps_fix;
+    packet.fmm_state = fmm_state;
 
         memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM_LEN);
 #endif
@@ -435,7 +444,7 @@ static inline uint16_t mavlink_msg_payload_flight_tm_pack_chan(uint8_t system_id
  */
 static inline uint16_t mavlink_msg_payload_flight_tm_encode(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg, const mavlink_payload_flight_tm_t* payload_flight_tm)
 {
-    return mavlink_msg_payload_flight_tm_pack(system_id, component_id, msg, payload_flight_tm->timestamp, payload_flight_tm->pressure_digi, payload_flight_tm->pressure_static, payload_flight_tm->airspeed_pitot, payload_flight_tm->altitude_agl, payload_flight_tm->acc_x, payload_flight_tm->acc_y, payload_flight_tm->acc_z, payload_flight_tm->gyro_x, payload_flight_tm->gyro_y, payload_flight_tm->gyro_z, payload_flight_tm->mag_x, payload_flight_tm->mag_y, payload_flight_tm->mag_z, payload_flight_tm->gps_fix, payload_flight_tm->gps_lat, payload_flight_tm->gps_lon, payload_flight_tm->gps_alt, payload_flight_tm->left_servo_angle, payload_flight_tm->right_servo_angle, payload_flight_tm->nas_n, payload_flight_tm->nas_e, payload_flight_tm->nas_d, payload_flight_tm->nas_vn, payload_flight_tm->nas_ve, payload_flight_tm->nas_vd, payload_flight_tm->nas_qx, payload_flight_tm->nas_qy, payload_flight_tm->nas_qz, payload_flight_tm->nas_qw, payload_flight_tm->nas_bias_x, payload_flight_tm->nas_bias_y, payload_flight_tm->nas_bias_z, payload_flight_tm->wes_n, payload_flight_tm->wes_e, payload_flight_tm->battery_voltage, payload_flight_tm->cam_battery_voltage, payload_flight_tm->temperature);
+    return mavlink_msg_payload_flight_tm_pack(system_id, component_id, msg, payload_flight_tm->timestamp, payload_flight_tm->pressure_digi, payload_flight_tm->pressure_static, payload_flight_tm->airspeed_pitot, payload_flight_tm->altitude_agl, payload_flight_tm->acc_x, payload_flight_tm->acc_y, payload_flight_tm->acc_z, payload_flight_tm->gyro_x, payload_flight_tm->gyro_y, payload_flight_tm->gyro_z, payload_flight_tm->mag_x, payload_flight_tm->mag_y, payload_flight_tm->mag_z, payload_flight_tm->gps_fix, payload_flight_tm->gps_lat, payload_flight_tm->gps_lon, payload_flight_tm->gps_alt, payload_flight_tm->fmm_state, payload_flight_tm->left_servo_angle, payload_flight_tm->right_servo_angle, payload_flight_tm->nas_n, payload_flight_tm->nas_e, payload_flight_tm->nas_d, payload_flight_tm->nas_vn, payload_flight_tm->nas_ve, payload_flight_tm->nas_vd, payload_flight_tm->nas_qx, payload_flight_tm->nas_qy, payload_flight_tm->nas_qz, payload_flight_tm->nas_qw, payload_flight_tm->nas_bias_x, payload_flight_tm->nas_bias_y, payload_flight_tm->nas_bias_z, payload_flight_tm->wes_n, payload_flight_tm->wes_e, payload_flight_tm->battery_voltage, payload_flight_tm->cam_battery_voltage, payload_flight_tm->temperature);
 }
 
 /**
@@ -449,7 +458,7 @@ static inline uint16_t mavlink_msg_payload_flight_tm_encode(uint8_t system_id, u
  */
 static inline uint16_t mavlink_msg_payload_flight_tm_encode_chan(uint8_t system_id, uint8_t component_id, uint8_t chan, mavlink_message_t* msg, const mavlink_payload_flight_tm_t* payload_flight_tm)
 {
-    return mavlink_msg_payload_flight_tm_pack_chan(system_id, component_id, chan, msg, payload_flight_tm->timestamp, payload_flight_tm->pressure_digi, payload_flight_tm->pressure_static, payload_flight_tm->airspeed_pitot, payload_flight_tm->altitude_agl, payload_flight_tm->acc_x, payload_flight_tm->acc_y, payload_flight_tm->acc_z, payload_flight_tm->gyro_x, payload_flight_tm->gyro_y, payload_flight_tm->gyro_z, payload_flight_tm->mag_x, payload_flight_tm->mag_y, payload_flight_tm->mag_z, payload_flight_tm->gps_fix, payload_flight_tm->gps_lat, payload_flight_tm->gps_lon, payload_flight_tm->gps_alt, payload_flight_tm->left_servo_angle, payload_flight_tm->right_servo_angle, payload_flight_tm->nas_n, payload_flight_tm->nas_e, payload_flight_tm->nas_d, payload_flight_tm->nas_vn, payload_flight_tm->nas_ve, payload_flight_tm->nas_vd, payload_flight_tm->nas_qx, payload_flight_tm->nas_qy, payload_flight_tm->nas_qz, payload_flight_tm->nas_qw, payload_flight_tm->nas_bias_x, payload_flight_tm->nas_bias_y, payload_flight_tm->nas_bias_z, payload_flight_tm->wes_n, payload_flight_tm->wes_e, payload_flight_tm->battery_voltage, payload_flight_tm->cam_battery_voltage, payload_flight_tm->temperature);
+    return mavlink_msg_payload_flight_tm_pack_chan(system_id, component_id, chan, msg, payload_flight_tm->timestamp, payload_flight_tm->pressure_digi, payload_flight_tm->pressure_static, payload_flight_tm->airspeed_pitot, payload_flight_tm->altitude_agl, payload_flight_tm->acc_x, payload_flight_tm->acc_y, payload_flight_tm->acc_z, payload_flight_tm->gyro_x, payload_flight_tm->gyro_y, payload_flight_tm->gyro_z, payload_flight_tm->mag_x, payload_flight_tm->mag_y, payload_flight_tm->mag_z, payload_flight_tm->gps_fix, payload_flight_tm->gps_lat, payload_flight_tm->gps_lon, payload_flight_tm->gps_alt, payload_flight_tm->fmm_state, payload_flight_tm->left_servo_angle, payload_flight_tm->right_servo_angle, payload_flight_tm->nas_n, payload_flight_tm->nas_e, payload_flight_tm->nas_d, payload_flight_tm->nas_vn, payload_flight_tm->nas_ve, payload_flight_tm->nas_vd, payload_flight_tm->nas_qx, payload_flight_tm->nas_qy, payload_flight_tm->nas_qz, payload_flight_tm->nas_qw, payload_flight_tm->nas_bias_x, payload_flight_tm->nas_bias_y, payload_flight_tm->nas_bias_z, payload_flight_tm->wes_n, payload_flight_tm->wes_e, payload_flight_tm->battery_voltage, payload_flight_tm->cam_battery_voltage, payload_flight_tm->temperature);
 }
 
 /**
@@ -474,6 +483,7 @@ static inline uint16_t mavlink_msg_payload_flight_tm_encode_chan(uint8_t system_
  * @param gps_lat [deg] Latitude
  * @param gps_lon [deg] Longitude
  * @param gps_alt [m] GPS Altitude
+ * @param fmm_state  Flight Mode Manager State
  * @param left_servo_angle [deg] Left servo motor angle
  * @param right_servo_angle [deg] Right servo motor angle
  * @param nas_n [deg] NAS estimated noth position
@@ -497,7 +507,7 @@ static inline uint16_t mavlink_msg_payload_flight_tm_encode_chan(uint8_t system_
  */
 #ifdef MAVLINK_USE_CONVENIENCE_FUNCTIONS
 
-static inline void mavlink_msg_payload_flight_tm_send(mavlink_channel_t chan, uint64_t timestamp, float pressure_digi, float pressure_static, float airspeed_pitot, float altitude_agl, float acc_x, float acc_y, float acc_z, float gyro_x, float gyro_y, float gyro_z, float mag_x, float mag_y, float mag_z, uint8_t gps_fix, float gps_lat, float gps_lon, float gps_alt, float left_servo_angle, float right_servo_angle, float nas_n, float nas_e, float nas_d, float nas_vn, float nas_ve, float nas_vd, float nas_qx, float nas_qy, float nas_qz, float nas_qw, float nas_bias_x, float nas_bias_y, float nas_bias_z, float wes_n, float wes_e, float battery_voltage, float cam_battery_voltage, float temperature)
+static inline void mavlink_msg_payload_flight_tm_send(mavlink_channel_t chan, uint64_t timestamp, float pressure_digi, float pressure_static, float airspeed_pitot, float altitude_agl, float acc_x, float acc_y, float acc_z, float gyro_x, float gyro_y, float gyro_z, float mag_x, float mag_y, float mag_z, uint8_t gps_fix, float gps_lat, float gps_lon, float gps_alt, uint8_t fmm_state, float left_servo_angle, float right_servo_angle, float nas_n, float nas_e, float nas_d, float nas_vn, float nas_ve, float nas_vd, float nas_qx, float nas_qy, float nas_qz, float nas_qw, float nas_bias_x, float nas_bias_y, float nas_bias_z, float wes_n, float wes_e, float battery_voltage, float cam_battery_voltage, float temperature)
 {
 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
     char buf[MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM_LEN];
@@ -539,6 +549,7 @@ static inline void mavlink_msg_payload_flight_tm_send(mavlink_channel_t chan, ui
     _mav_put_float(buf, 144, cam_battery_voltage);
     _mav_put_float(buf, 148, temperature);
     _mav_put_uint8_t(buf, 152, gps_fix);
+    _mav_put_uint8_t(buf, 153, fmm_state);
 
     _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM, buf, MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM_MIN_LEN, MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM_LEN, MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM_CRC);
 #else
@@ -581,6 +592,7 @@ static inline void mavlink_msg_payload_flight_tm_send(mavlink_channel_t chan, ui
     packet.cam_battery_voltage = cam_battery_voltage;
     packet.temperature = temperature;
     packet.gps_fix = gps_fix;
+    packet.fmm_state = fmm_state;
 
     _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM, (const char *)&packet, MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM_MIN_LEN, MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM_LEN, MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM_CRC);
 #endif
@@ -594,7 +606,7 @@ static inline void mavlink_msg_payload_flight_tm_send(mavlink_channel_t chan, ui
 static inline void mavlink_msg_payload_flight_tm_send_struct(mavlink_channel_t chan, const mavlink_payload_flight_tm_t* payload_flight_tm)
 {
 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
-    mavlink_msg_payload_flight_tm_send(chan, payload_flight_tm->timestamp, payload_flight_tm->pressure_digi, payload_flight_tm->pressure_static, payload_flight_tm->airspeed_pitot, payload_flight_tm->altitude_agl, payload_flight_tm->acc_x, payload_flight_tm->acc_y, payload_flight_tm->acc_z, payload_flight_tm->gyro_x, payload_flight_tm->gyro_y, payload_flight_tm->gyro_z, payload_flight_tm->mag_x, payload_flight_tm->mag_y, payload_flight_tm->mag_z, payload_flight_tm->gps_fix, payload_flight_tm->gps_lat, payload_flight_tm->gps_lon, payload_flight_tm->gps_alt, payload_flight_tm->left_servo_angle, payload_flight_tm->right_servo_angle, payload_flight_tm->nas_n, payload_flight_tm->nas_e, payload_flight_tm->nas_d, payload_flight_tm->nas_vn, payload_flight_tm->nas_ve, payload_flight_tm->nas_vd, payload_flight_tm->nas_qx, payload_flight_tm->nas_qy, payload_flight_tm->nas_qz, payload_flight_tm->nas_qw, payload_flight_tm->nas_bias_x, payload_flight_tm->nas_bias_y, payload_flight_tm->nas_bias_z, payload_flight_tm->wes_n, payload_flight_tm->wes_e, payload_flight_tm->battery_voltage, payload_flight_tm->cam_battery_voltage, payload_flight_tm->temperature);
+    mavlink_msg_payload_flight_tm_send(chan, payload_flight_tm->timestamp, payload_flight_tm->pressure_digi, payload_flight_tm->pressure_static, payload_flight_tm->airspeed_pitot, payload_flight_tm->altitude_agl, payload_flight_tm->acc_x, payload_flight_tm->acc_y, payload_flight_tm->acc_z, payload_flight_tm->gyro_x, payload_flight_tm->gyro_y, payload_flight_tm->gyro_z, payload_flight_tm->mag_x, payload_flight_tm->mag_y, payload_flight_tm->mag_z, payload_flight_tm->gps_fix, payload_flight_tm->gps_lat, payload_flight_tm->gps_lon, payload_flight_tm->gps_alt, payload_flight_tm->fmm_state, payload_flight_tm->left_servo_angle, payload_flight_tm->right_servo_angle, payload_flight_tm->nas_n, payload_flight_tm->nas_e, payload_flight_tm->nas_d, payload_flight_tm->nas_vn, payload_flight_tm->nas_ve, payload_flight_tm->nas_vd, payload_flight_tm->nas_qx, payload_flight_tm->nas_qy, payload_flight_tm->nas_qz, payload_flight_tm->nas_qw, payload_flight_tm->nas_bias_x, payload_flight_tm->nas_bias_y, payload_flight_tm->nas_bias_z, payload_flight_tm->wes_n, payload_flight_tm->wes_e, payload_flight_tm->battery_voltage, payload_flight_tm->cam_battery_voltage, payload_flight_tm->temperature);
 #else
     _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM, (const char *)payload_flight_tm, MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM_MIN_LEN, MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM_LEN, MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM_CRC);
 #endif
@@ -608,7 +620,7 @@ static inline void mavlink_msg_payload_flight_tm_send_struct(mavlink_channel_t c
   is usually the receive buffer for the channel, and allows a reply to an
   incoming message with minimum stack space usage.
  */
-static inline void mavlink_msg_payload_flight_tm_send_buf(mavlink_message_t *msgbuf, mavlink_channel_t chan,  uint64_t timestamp, float pressure_digi, float pressure_static, float airspeed_pitot, float altitude_agl, float acc_x, float acc_y, float acc_z, float gyro_x, float gyro_y, float gyro_z, float mag_x, float mag_y, float mag_z, uint8_t gps_fix, float gps_lat, float gps_lon, float gps_alt, float left_servo_angle, float right_servo_angle, float nas_n, float nas_e, float nas_d, float nas_vn, float nas_ve, float nas_vd, float nas_qx, float nas_qy, float nas_qz, float nas_qw, float nas_bias_x, float nas_bias_y, float nas_bias_z, float wes_n, float wes_e, float battery_voltage, float cam_battery_voltage, float temperature)
+static inline void mavlink_msg_payload_flight_tm_send_buf(mavlink_message_t *msgbuf, mavlink_channel_t chan,  uint64_t timestamp, float pressure_digi, float pressure_static, float airspeed_pitot, float altitude_agl, float acc_x, float acc_y, float acc_z, float gyro_x, float gyro_y, float gyro_z, float mag_x, float mag_y, float mag_z, uint8_t gps_fix, float gps_lat, float gps_lon, float gps_alt, uint8_t fmm_state, float left_servo_angle, float right_servo_angle, float nas_n, float nas_e, float nas_d, float nas_vn, float nas_ve, float nas_vd, float nas_qx, float nas_qy, float nas_qz, float nas_qw, float nas_bias_x, float nas_bias_y, float nas_bias_z, float wes_n, float wes_e, float battery_voltage, float cam_battery_voltage, float temperature)
 {
 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
     char *buf = (char *)msgbuf;
@@ -650,6 +662,7 @@ static inline void mavlink_msg_payload_flight_tm_send_buf(mavlink_message_t *msg
     _mav_put_float(buf, 144, cam_battery_voltage);
     _mav_put_float(buf, 148, temperature);
     _mav_put_uint8_t(buf, 152, gps_fix);
+    _mav_put_uint8_t(buf, 153, fmm_state);
 
     _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM, buf, MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM_MIN_LEN, MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM_LEN, MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM_CRC);
 #else
@@ -692,6 +705,7 @@ static inline void mavlink_msg_payload_flight_tm_send_buf(mavlink_message_t *msg
     packet->cam_battery_voltage = cam_battery_voltage;
     packet->temperature = temperature;
     packet->gps_fix = gps_fix;
+    packet->fmm_state = fmm_state;
 
     _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM, (const char *)packet, MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM_MIN_LEN, MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM_LEN, MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM_CRC);
 #endif
@@ -883,6 +897,16 @@ static inline float mavlink_msg_payload_flight_tm_get_gps_alt(const mavlink_mess
     return _MAV_RETURN_float(msg,  68);
 }
 
+/**
+ * @brief Get field fmm_state from payload_flight_tm message
+ *
+ * @return  Flight Mode Manager State
+ */
+static inline uint8_t mavlink_msg_payload_flight_tm_get_fmm_state(const mavlink_message_t* msg)
+{
+    return _MAV_RETURN_uint8_t(msg,  153);
+}
+
 /**
  * @brief Get field left_servo_angle from payload_flight_tm message
  *
@@ -1130,6 +1154,7 @@ static inline void mavlink_msg_payload_flight_tm_decode(const mavlink_message_t*
     payload_flight_tm->cam_battery_voltage = mavlink_msg_payload_flight_tm_get_cam_battery_voltage(msg);
     payload_flight_tm->temperature = mavlink_msg_payload_flight_tm_get_temperature(msg);
     payload_flight_tm->gps_fix = mavlink_msg_payload_flight_tm_get_gps_fix(msg);
+    payload_flight_tm->fmm_state = mavlink_msg_payload_flight_tm_get_fmm_state(msg);
 #else
         uint8_t len = msg->len < MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM_LEN? msg->len : MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM_LEN;
         memset(payload_flight_tm, 0, MAVLINK_MSG_ID_PAYLOAD_FLIGHT_TM_LEN);
diff --git a/mavlink_lib/lyra/mavlink_msg_payload_stats_tm.h b/mavlink_lib/lyra/mavlink_msg_payload_stats_tm.h
index e5dbeb0037ccc32c9cfe07468632bd7b4607f26c..a7d04ef658f8237e9af249ad2ea1ba3782addc0d 100644
--- a/mavlink_lib/lyra/mavlink_msg_payload_stats_tm.h
+++ b/mavlink_lib/lyra/mavlink_msg_payload_stats_tm.h
@@ -37,7 +37,6 @@ typedef struct __mavlink_payload_stats_tm_t {
  uint32_t free_heap; /*<  Amount of available heap in memory*/
  int32_t log_good; /*<  0 if log failed, 1 otherwise*/
  int16_t log_number; /*<  Currently active log file, -1 if the logger is inactive*/
- uint8_t fmm_state; /*<  Flight Mode Manager State*/
  uint8_t nas_state; /*<  NAS FSM State*/
  uint8_t wes_state; /*<  Wind Estimation System FSM State*/
  uint8_t pin_launch; /*<  Launch pin status (1 = connected, 0 = disconnected)*/
@@ -51,13 +50,13 @@ typedef struct __mavlink_payload_stats_tm_t {
  uint8_t hil_state; /*<  1 if the board is currently in HIL mode*/
 } mavlink_payload_stats_tm_t;
 
-#define MAVLINK_MSG_ID_PAYLOAD_STATS_TM_LEN 170
-#define MAVLINK_MSG_ID_PAYLOAD_STATS_TM_MIN_LEN 170
-#define MAVLINK_MSG_ID_211_LEN 170
-#define MAVLINK_MSG_ID_211_MIN_LEN 170
+#define MAVLINK_MSG_ID_PAYLOAD_STATS_TM_LEN 169
+#define MAVLINK_MSG_ID_PAYLOAD_STATS_TM_MIN_LEN 169
+#define MAVLINK_MSG_ID_211_LEN 169
+#define MAVLINK_MSG_ID_211_MIN_LEN 169
 
-#define MAVLINK_MSG_ID_PAYLOAD_STATS_TM_CRC 172
-#define MAVLINK_MSG_ID_211_CRC 172
+#define MAVLINK_MSG_ID_PAYLOAD_STATS_TM_CRC 206
+#define MAVLINK_MSG_ID_211_CRC 206
 
 
 
@@ -65,7 +64,7 @@ typedef struct __mavlink_payload_stats_tm_t {
 #define MAVLINK_MESSAGE_INFO_PAYLOAD_STATS_TM { \
     211, \
     "PAYLOAD_STATS_TM", \
-    44, \
+    43, \
     {  { "liftoff_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 0, offsetof(mavlink_payload_stats_tm_t, liftoff_ts) }, \
          { "liftoff_max_acc_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 8, offsetof(mavlink_payload_stats_tm_t, liftoff_max_acc_ts) }, \
          { "liftoff_max_acc", NULL, MAVLINK_TYPE_FLOAT, 0, 64, offsetof(mavlink_payload_stats_tm_t, liftoff_max_acc) }, \
@@ -96,26 +95,25 @@ typedef struct __mavlink_payload_stats_tm_t {
          { "min_pressure", NULL, MAVLINK_TYPE_FLOAT, 0, 140, offsetof(mavlink_payload_stats_tm_t, min_pressure) }, \
          { "cpu_load", NULL, MAVLINK_TYPE_FLOAT, 0, 144, offsetof(mavlink_payload_stats_tm_t, cpu_load) }, \
          { "free_heap", NULL, MAVLINK_TYPE_UINT32_T, 0, 148, offsetof(mavlink_payload_stats_tm_t, free_heap) }, \
-         { "fmm_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 158, offsetof(mavlink_payload_stats_tm_t, fmm_state) }, \
-         { "nas_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 159, offsetof(mavlink_payload_stats_tm_t, nas_state) }, \
-         { "wes_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 160, offsetof(mavlink_payload_stats_tm_t, wes_state) }, \
-         { "pin_launch", NULL, MAVLINK_TYPE_UINT8_T, 0, 161, offsetof(mavlink_payload_stats_tm_t, pin_launch) }, \
-         { "pin_nosecone", NULL, MAVLINK_TYPE_UINT8_T, 0, 162, offsetof(mavlink_payload_stats_tm_t, pin_nosecone) }, \
-         { "cutter_presence", NULL, MAVLINK_TYPE_UINT8_T, 0, 163, offsetof(mavlink_payload_stats_tm_t, cutter_presence) }, \
+         { "nas_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 158, offsetof(mavlink_payload_stats_tm_t, nas_state) }, \
+         { "wes_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 159, offsetof(mavlink_payload_stats_tm_t, wes_state) }, \
+         { "pin_launch", NULL, MAVLINK_TYPE_UINT8_T, 0, 160, offsetof(mavlink_payload_stats_tm_t, pin_launch) }, \
+         { "pin_nosecone", NULL, MAVLINK_TYPE_UINT8_T, 0, 161, offsetof(mavlink_payload_stats_tm_t, pin_nosecone) }, \
+         { "cutter_presence", NULL, MAVLINK_TYPE_UINT8_T, 0, 162, offsetof(mavlink_payload_stats_tm_t, cutter_presence) }, \
          { "log_number", NULL, MAVLINK_TYPE_INT16_T, 0, 156, offsetof(mavlink_payload_stats_tm_t, log_number) }, \
          { "log_good", NULL, MAVLINK_TYPE_INT32_T, 0, 152, offsetof(mavlink_payload_stats_tm_t, log_good) }, \
-         { "main_board_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 164, offsetof(mavlink_payload_stats_tm_t, main_board_state) }, \
-         { "motor_board_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 165, offsetof(mavlink_payload_stats_tm_t, motor_board_state) }, \
-         { "main_can_status", NULL, MAVLINK_TYPE_UINT8_T, 0, 166, offsetof(mavlink_payload_stats_tm_t, main_can_status) }, \
-         { "motor_can_status", NULL, MAVLINK_TYPE_UINT8_T, 0, 167, offsetof(mavlink_payload_stats_tm_t, motor_can_status) }, \
-         { "rig_can_status", NULL, MAVLINK_TYPE_UINT8_T, 0, 168, offsetof(mavlink_payload_stats_tm_t, rig_can_status) }, \
-         { "hil_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 169, offsetof(mavlink_payload_stats_tm_t, hil_state) }, \
+         { "main_board_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 163, offsetof(mavlink_payload_stats_tm_t, main_board_state) }, \
+         { "motor_board_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 164, offsetof(mavlink_payload_stats_tm_t, motor_board_state) }, \
+         { "main_can_status", NULL, MAVLINK_TYPE_UINT8_T, 0, 165, offsetof(mavlink_payload_stats_tm_t, main_can_status) }, \
+         { "motor_can_status", NULL, MAVLINK_TYPE_UINT8_T, 0, 166, offsetof(mavlink_payload_stats_tm_t, motor_can_status) }, \
+         { "rig_can_status", NULL, MAVLINK_TYPE_UINT8_T, 0, 167, offsetof(mavlink_payload_stats_tm_t, rig_can_status) }, \
+         { "hil_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 168, offsetof(mavlink_payload_stats_tm_t, hil_state) }, \
          } \
 }
 #else
 #define MAVLINK_MESSAGE_INFO_PAYLOAD_STATS_TM { \
     "PAYLOAD_STATS_TM", \
-    44, \
+    43, \
     {  { "liftoff_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 0, offsetof(mavlink_payload_stats_tm_t, liftoff_ts) }, \
          { "liftoff_max_acc_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 8, offsetof(mavlink_payload_stats_tm_t, liftoff_max_acc_ts) }, \
          { "liftoff_max_acc", NULL, MAVLINK_TYPE_FLOAT, 0, 64, offsetof(mavlink_payload_stats_tm_t, liftoff_max_acc) }, \
@@ -146,20 +144,19 @@ typedef struct __mavlink_payload_stats_tm_t {
          { "min_pressure", NULL, MAVLINK_TYPE_FLOAT, 0, 140, offsetof(mavlink_payload_stats_tm_t, min_pressure) }, \
          { "cpu_load", NULL, MAVLINK_TYPE_FLOAT, 0, 144, offsetof(mavlink_payload_stats_tm_t, cpu_load) }, \
          { "free_heap", NULL, MAVLINK_TYPE_UINT32_T, 0, 148, offsetof(mavlink_payload_stats_tm_t, free_heap) }, \
-         { "fmm_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 158, offsetof(mavlink_payload_stats_tm_t, fmm_state) }, \
-         { "nas_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 159, offsetof(mavlink_payload_stats_tm_t, nas_state) }, \
-         { "wes_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 160, offsetof(mavlink_payload_stats_tm_t, wes_state) }, \
-         { "pin_launch", NULL, MAVLINK_TYPE_UINT8_T, 0, 161, offsetof(mavlink_payload_stats_tm_t, pin_launch) }, \
-         { "pin_nosecone", NULL, MAVLINK_TYPE_UINT8_T, 0, 162, offsetof(mavlink_payload_stats_tm_t, pin_nosecone) }, \
-         { "cutter_presence", NULL, MAVLINK_TYPE_UINT8_T, 0, 163, offsetof(mavlink_payload_stats_tm_t, cutter_presence) }, \
+         { "nas_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 158, offsetof(mavlink_payload_stats_tm_t, nas_state) }, \
+         { "wes_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 159, offsetof(mavlink_payload_stats_tm_t, wes_state) }, \
+         { "pin_launch", NULL, MAVLINK_TYPE_UINT8_T, 0, 160, offsetof(mavlink_payload_stats_tm_t, pin_launch) }, \
+         { "pin_nosecone", NULL, MAVLINK_TYPE_UINT8_T, 0, 161, offsetof(mavlink_payload_stats_tm_t, pin_nosecone) }, \
+         { "cutter_presence", NULL, MAVLINK_TYPE_UINT8_T, 0, 162, offsetof(mavlink_payload_stats_tm_t, cutter_presence) }, \
          { "log_number", NULL, MAVLINK_TYPE_INT16_T, 0, 156, offsetof(mavlink_payload_stats_tm_t, log_number) }, \
          { "log_good", NULL, MAVLINK_TYPE_INT32_T, 0, 152, offsetof(mavlink_payload_stats_tm_t, log_good) }, \
-         { "main_board_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 164, offsetof(mavlink_payload_stats_tm_t, main_board_state) }, \
-         { "motor_board_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 165, offsetof(mavlink_payload_stats_tm_t, motor_board_state) }, \
-         { "main_can_status", NULL, MAVLINK_TYPE_UINT8_T, 0, 166, offsetof(mavlink_payload_stats_tm_t, main_can_status) }, \
-         { "motor_can_status", NULL, MAVLINK_TYPE_UINT8_T, 0, 167, offsetof(mavlink_payload_stats_tm_t, motor_can_status) }, \
-         { "rig_can_status", NULL, MAVLINK_TYPE_UINT8_T, 0, 168, offsetof(mavlink_payload_stats_tm_t, rig_can_status) }, \
-         { "hil_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 169, offsetof(mavlink_payload_stats_tm_t, hil_state) }, \
+         { "main_board_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 163, offsetof(mavlink_payload_stats_tm_t, main_board_state) }, \
+         { "motor_board_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 164, offsetof(mavlink_payload_stats_tm_t, motor_board_state) }, \
+         { "main_can_status", NULL, MAVLINK_TYPE_UINT8_T, 0, 165, offsetof(mavlink_payload_stats_tm_t, main_can_status) }, \
+         { "motor_can_status", NULL, MAVLINK_TYPE_UINT8_T, 0, 166, offsetof(mavlink_payload_stats_tm_t, motor_can_status) }, \
+         { "rig_can_status", NULL, MAVLINK_TYPE_UINT8_T, 0, 167, offsetof(mavlink_payload_stats_tm_t, rig_can_status) }, \
+         { "hil_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 168, offsetof(mavlink_payload_stats_tm_t, hil_state) }, \
          } \
 }
 #endif
@@ -200,7 +197,6 @@ typedef struct __mavlink_payload_stats_tm_t {
  * @param min_pressure [Pa] Apogee pressure - Digital barometer
  * @param cpu_load  CPU load in percentage
  * @param free_heap  Amount of available heap in memory
- * @param fmm_state  Flight Mode Manager State
  * @param nas_state  NAS FSM State
  * @param wes_state  Wind Estimation System FSM State
  * @param pin_launch  Launch pin status (1 = connected, 0 = disconnected)
@@ -217,7 +213,7 @@ typedef struct __mavlink_payload_stats_tm_t {
  * @return length of the message in bytes (excluding serial stream start sign)
  */
 static inline uint16_t mavlink_msg_payload_stats_tm_pack(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg,
-                               uint64_t liftoff_ts, uint64_t liftoff_max_acc_ts, float liftoff_max_acc, uint64_t max_speed_ts, float max_speed, float max_speed_altitude, uint64_t max_mach_ts, float max_mach, uint64_t apogee_ts, float apogee_lat, float apogee_lon, float apogee_alt, uint64_t apogee_max_acc_ts, float apogee_max_acc, float wing_emc_n, float wing_emc_e, float wing_m1_n, float wing_m1_e, float wing_m2_n, float wing_m2_e, uint64_t dpl_ts, float dpl_alt, uint64_t dpl_max_acc_ts, float dpl_max_acc, float ref_lat, float ref_lon, float ref_alt, float min_pressure, float cpu_load, uint32_t free_heap, uint8_t fmm_state, uint8_t nas_state, uint8_t wes_state, uint8_t pin_launch, uint8_t pin_nosecone, uint8_t cutter_presence, int16_t log_number, int32_t log_good, uint8_t main_board_state, uint8_t motor_board_state, uint8_t main_can_status, uint8_t motor_can_status, uint8_t rig_can_status, uint8_t hil_state)
+                               uint64_t liftoff_ts, uint64_t liftoff_max_acc_ts, float liftoff_max_acc, uint64_t max_speed_ts, float max_speed, float max_speed_altitude, uint64_t max_mach_ts, float max_mach, uint64_t apogee_ts, float apogee_lat, float apogee_lon, float apogee_alt, uint64_t apogee_max_acc_ts, float apogee_max_acc, float wing_emc_n, float wing_emc_e, float wing_m1_n, float wing_m1_e, float wing_m2_n, float wing_m2_e, uint64_t dpl_ts, float dpl_alt, uint64_t dpl_max_acc_ts, float dpl_max_acc, float ref_lat, float ref_lon, float ref_alt, float min_pressure, float cpu_load, uint32_t free_heap, uint8_t nas_state, uint8_t wes_state, uint8_t pin_launch, uint8_t pin_nosecone, uint8_t cutter_presence, int16_t log_number, int32_t log_good, uint8_t main_board_state, uint8_t motor_board_state, uint8_t main_can_status, uint8_t motor_can_status, uint8_t rig_can_status, uint8_t hil_state)
 {
 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
     char buf[MAVLINK_MSG_ID_PAYLOAD_STATS_TM_LEN];
@@ -253,18 +249,17 @@ static inline uint16_t mavlink_msg_payload_stats_tm_pack(uint8_t system_id, uint
     _mav_put_uint32_t(buf, 148, free_heap);
     _mav_put_int32_t(buf, 152, log_good);
     _mav_put_int16_t(buf, 156, log_number);
-    _mav_put_uint8_t(buf, 158, fmm_state);
-    _mav_put_uint8_t(buf, 159, nas_state);
-    _mav_put_uint8_t(buf, 160, wes_state);
-    _mav_put_uint8_t(buf, 161, pin_launch);
-    _mav_put_uint8_t(buf, 162, pin_nosecone);
-    _mav_put_uint8_t(buf, 163, cutter_presence);
-    _mav_put_uint8_t(buf, 164, main_board_state);
-    _mav_put_uint8_t(buf, 165, motor_board_state);
-    _mav_put_uint8_t(buf, 166, main_can_status);
-    _mav_put_uint8_t(buf, 167, motor_can_status);
-    _mav_put_uint8_t(buf, 168, rig_can_status);
-    _mav_put_uint8_t(buf, 169, hil_state);
+    _mav_put_uint8_t(buf, 158, nas_state);
+    _mav_put_uint8_t(buf, 159, wes_state);
+    _mav_put_uint8_t(buf, 160, pin_launch);
+    _mav_put_uint8_t(buf, 161, pin_nosecone);
+    _mav_put_uint8_t(buf, 162, cutter_presence);
+    _mav_put_uint8_t(buf, 163, main_board_state);
+    _mav_put_uint8_t(buf, 164, motor_board_state);
+    _mav_put_uint8_t(buf, 165, main_can_status);
+    _mav_put_uint8_t(buf, 166, motor_can_status);
+    _mav_put_uint8_t(buf, 167, rig_can_status);
+    _mav_put_uint8_t(buf, 168, hil_state);
 
         memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_PAYLOAD_STATS_TM_LEN);
 #else
@@ -301,7 +296,6 @@ static inline uint16_t mavlink_msg_payload_stats_tm_pack(uint8_t system_id, uint
     packet.free_heap = free_heap;
     packet.log_good = log_good;
     packet.log_number = log_number;
-    packet.fmm_state = fmm_state;
     packet.nas_state = nas_state;
     packet.wes_state = wes_state;
     packet.pin_launch = pin_launch;
@@ -357,7 +351,6 @@ static inline uint16_t mavlink_msg_payload_stats_tm_pack(uint8_t system_id, uint
  * @param min_pressure [Pa] Apogee pressure - Digital barometer
  * @param cpu_load  CPU load in percentage
  * @param free_heap  Amount of available heap in memory
- * @param fmm_state  Flight Mode Manager State
  * @param nas_state  NAS FSM State
  * @param wes_state  Wind Estimation System FSM State
  * @param pin_launch  Launch pin status (1 = connected, 0 = disconnected)
@@ -375,7 +368,7 @@ static inline uint16_t mavlink_msg_payload_stats_tm_pack(uint8_t system_id, uint
  */
 static inline uint16_t mavlink_msg_payload_stats_tm_pack_chan(uint8_t system_id, uint8_t component_id, uint8_t chan,
                                mavlink_message_t* msg,
-                                   uint64_t liftoff_ts,uint64_t liftoff_max_acc_ts,float liftoff_max_acc,uint64_t max_speed_ts,float max_speed,float max_speed_altitude,uint64_t max_mach_ts,float max_mach,uint64_t apogee_ts,float apogee_lat,float apogee_lon,float apogee_alt,uint64_t apogee_max_acc_ts,float apogee_max_acc,float wing_emc_n,float wing_emc_e,float wing_m1_n,float wing_m1_e,float wing_m2_n,float wing_m2_e,uint64_t dpl_ts,float dpl_alt,uint64_t dpl_max_acc_ts,float dpl_max_acc,float ref_lat,float ref_lon,float ref_alt,float min_pressure,float cpu_load,uint32_t free_heap,uint8_t fmm_state,uint8_t nas_state,uint8_t wes_state,uint8_t pin_launch,uint8_t pin_nosecone,uint8_t cutter_presence,int16_t log_number,int32_t log_good,uint8_t main_board_state,uint8_t motor_board_state,uint8_t main_can_status,uint8_t motor_can_status,uint8_t rig_can_status,uint8_t hil_state)
+                                   uint64_t liftoff_ts,uint64_t liftoff_max_acc_ts,float liftoff_max_acc,uint64_t max_speed_ts,float max_speed,float max_speed_altitude,uint64_t max_mach_ts,float max_mach,uint64_t apogee_ts,float apogee_lat,float apogee_lon,float apogee_alt,uint64_t apogee_max_acc_ts,float apogee_max_acc,float wing_emc_n,float wing_emc_e,float wing_m1_n,float wing_m1_e,float wing_m2_n,float wing_m2_e,uint64_t dpl_ts,float dpl_alt,uint64_t dpl_max_acc_ts,float dpl_max_acc,float ref_lat,float ref_lon,float ref_alt,float min_pressure,float cpu_load,uint32_t free_heap,uint8_t nas_state,uint8_t wes_state,uint8_t pin_launch,uint8_t pin_nosecone,uint8_t cutter_presence,int16_t log_number,int32_t log_good,uint8_t main_board_state,uint8_t motor_board_state,uint8_t main_can_status,uint8_t motor_can_status,uint8_t rig_can_status,uint8_t hil_state)
 {
 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
     char buf[MAVLINK_MSG_ID_PAYLOAD_STATS_TM_LEN];
@@ -411,18 +404,17 @@ static inline uint16_t mavlink_msg_payload_stats_tm_pack_chan(uint8_t system_id,
     _mav_put_uint32_t(buf, 148, free_heap);
     _mav_put_int32_t(buf, 152, log_good);
     _mav_put_int16_t(buf, 156, log_number);
-    _mav_put_uint8_t(buf, 158, fmm_state);
-    _mav_put_uint8_t(buf, 159, nas_state);
-    _mav_put_uint8_t(buf, 160, wes_state);
-    _mav_put_uint8_t(buf, 161, pin_launch);
-    _mav_put_uint8_t(buf, 162, pin_nosecone);
-    _mav_put_uint8_t(buf, 163, cutter_presence);
-    _mav_put_uint8_t(buf, 164, main_board_state);
-    _mav_put_uint8_t(buf, 165, motor_board_state);
-    _mav_put_uint8_t(buf, 166, main_can_status);
-    _mav_put_uint8_t(buf, 167, motor_can_status);
-    _mav_put_uint8_t(buf, 168, rig_can_status);
-    _mav_put_uint8_t(buf, 169, hil_state);
+    _mav_put_uint8_t(buf, 158, nas_state);
+    _mav_put_uint8_t(buf, 159, wes_state);
+    _mav_put_uint8_t(buf, 160, pin_launch);
+    _mav_put_uint8_t(buf, 161, pin_nosecone);
+    _mav_put_uint8_t(buf, 162, cutter_presence);
+    _mav_put_uint8_t(buf, 163, main_board_state);
+    _mav_put_uint8_t(buf, 164, motor_board_state);
+    _mav_put_uint8_t(buf, 165, main_can_status);
+    _mav_put_uint8_t(buf, 166, motor_can_status);
+    _mav_put_uint8_t(buf, 167, rig_can_status);
+    _mav_put_uint8_t(buf, 168, hil_state);
 
         memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_PAYLOAD_STATS_TM_LEN);
 #else
@@ -459,7 +451,6 @@ static inline uint16_t mavlink_msg_payload_stats_tm_pack_chan(uint8_t system_id,
     packet.free_heap = free_heap;
     packet.log_good = log_good;
     packet.log_number = log_number;
-    packet.fmm_state = fmm_state;
     packet.nas_state = nas_state;
     packet.wes_state = wes_state;
     packet.pin_launch = pin_launch;
@@ -489,7 +480,7 @@ static inline uint16_t mavlink_msg_payload_stats_tm_pack_chan(uint8_t system_id,
  */
 static inline uint16_t mavlink_msg_payload_stats_tm_encode(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg, const mavlink_payload_stats_tm_t* payload_stats_tm)
 {
-    return mavlink_msg_payload_stats_tm_pack(system_id, component_id, msg, payload_stats_tm->liftoff_ts, payload_stats_tm->liftoff_max_acc_ts, payload_stats_tm->liftoff_max_acc, payload_stats_tm->max_speed_ts, payload_stats_tm->max_speed, payload_stats_tm->max_speed_altitude, payload_stats_tm->max_mach_ts, payload_stats_tm->max_mach, payload_stats_tm->apogee_ts, payload_stats_tm->apogee_lat, payload_stats_tm->apogee_lon, payload_stats_tm->apogee_alt, payload_stats_tm->apogee_max_acc_ts, payload_stats_tm->apogee_max_acc, payload_stats_tm->wing_emc_n, payload_stats_tm->wing_emc_e, payload_stats_tm->wing_m1_n, payload_stats_tm->wing_m1_e, payload_stats_tm->wing_m2_n, payload_stats_tm->wing_m2_e, payload_stats_tm->dpl_ts, payload_stats_tm->dpl_alt, payload_stats_tm->dpl_max_acc_ts, payload_stats_tm->dpl_max_acc, payload_stats_tm->ref_lat, payload_stats_tm->ref_lon, payload_stats_tm->ref_alt, payload_stats_tm->min_pressure, payload_stats_tm->cpu_load, payload_stats_tm->free_heap, payload_stats_tm->fmm_state, payload_stats_tm->nas_state, payload_stats_tm->wes_state, payload_stats_tm->pin_launch, payload_stats_tm->pin_nosecone, payload_stats_tm->cutter_presence, payload_stats_tm->log_number, payload_stats_tm->log_good, payload_stats_tm->main_board_state, payload_stats_tm->motor_board_state, payload_stats_tm->main_can_status, payload_stats_tm->motor_can_status, payload_stats_tm->rig_can_status, payload_stats_tm->hil_state);
+    return mavlink_msg_payload_stats_tm_pack(system_id, component_id, msg, payload_stats_tm->liftoff_ts, payload_stats_tm->liftoff_max_acc_ts, payload_stats_tm->liftoff_max_acc, payload_stats_tm->max_speed_ts, payload_stats_tm->max_speed, payload_stats_tm->max_speed_altitude, payload_stats_tm->max_mach_ts, payload_stats_tm->max_mach, payload_stats_tm->apogee_ts, payload_stats_tm->apogee_lat, payload_stats_tm->apogee_lon, payload_stats_tm->apogee_alt, payload_stats_tm->apogee_max_acc_ts, payload_stats_tm->apogee_max_acc, payload_stats_tm->wing_emc_n, payload_stats_tm->wing_emc_e, payload_stats_tm->wing_m1_n, payload_stats_tm->wing_m1_e, payload_stats_tm->wing_m2_n, payload_stats_tm->wing_m2_e, payload_stats_tm->dpl_ts, payload_stats_tm->dpl_alt, payload_stats_tm->dpl_max_acc_ts, payload_stats_tm->dpl_max_acc, payload_stats_tm->ref_lat, payload_stats_tm->ref_lon, payload_stats_tm->ref_alt, payload_stats_tm->min_pressure, payload_stats_tm->cpu_load, payload_stats_tm->free_heap, payload_stats_tm->nas_state, payload_stats_tm->wes_state, payload_stats_tm->pin_launch, payload_stats_tm->pin_nosecone, payload_stats_tm->cutter_presence, payload_stats_tm->log_number, payload_stats_tm->log_good, payload_stats_tm->main_board_state, payload_stats_tm->motor_board_state, payload_stats_tm->main_can_status, payload_stats_tm->motor_can_status, payload_stats_tm->rig_can_status, payload_stats_tm->hil_state);
 }
 
 /**
@@ -503,7 +494,7 @@ static inline uint16_t mavlink_msg_payload_stats_tm_encode(uint8_t system_id, ui
  */
 static inline uint16_t mavlink_msg_payload_stats_tm_encode_chan(uint8_t system_id, uint8_t component_id, uint8_t chan, mavlink_message_t* msg, const mavlink_payload_stats_tm_t* payload_stats_tm)
 {
-    return mavlink_msg_payload_stats_tm_pack_chan(system_id, component_id, chan, msg, payload_stats_tm->liftoff_ts, payload_stats_tm->liftoff_max_acc_ts, payload_stats_tm->liftoff_max_acc, payload_stats_tm->max_speed_ts, payload_stats_tm->max_speed, payload_stats_tm->max_speed_altitude, payload_stats_tm->max_mach_ts, payload_stats_tm->max_mach, payload_stats_tm->apogee_ts, payload_stats_tm->apogee_lat, payload_stats_tm->apogee_lon, payload_stats_tm->apogee_alt, payload_stats_tm->apogee_max_acc_ts, payload_stats_tm->apogee_max_acc, payload_stats_tm->wing_emc_n, payload_stats_tm->wing_emc_e, payload_stats_tm->wing_m1_n, payload_stats_tm->wing_m1_e, payload_stats_tm->wing_m2_n, payload_stats_tm->wing_m2_e, payload_stats_tm->dpl_ts, payload_stats_tm->dpl_alt, payload_stats_tm->dpl_max_acc_ts, payload_stats_tm->dpl_max_acc, payload_stats_tm->ref_lat, payload_stats_tm->ref_lon, payload_stats_tm->ref_alt, payload_stats_tm->min_pressure, payload_stats_tm->cpu_load, payload_stats_tm->free_heap, payload_stats_tm->fmm_state, payload_stats_tm->nas_state, payload_stats_tm->wes_state, payload_stats_tm->pin_launch, payload_stats_tm->pin_nosecone, payload_stats_tm->cutter_presence, payload_stats_tm->log_number, payload_stats_tm->log_good, payload_stats_tm->main_board_state, payload_stats_tm->motor_board_state, payload_stats_tm->main_can_status, payload_stats_tm->motor_can_status, payload_stats_tm->rig_can_status, payload_stats_tm->hil_state);
+    return mavlink_msg_payload_stats_tm_pack_chan(system_id, component_id, chan, msg, payload_stats_tm->liftoff_ts, payload_stats_tm->liftoff_max_acc_ts, payload_stats_tm->liftoff_max_acc, payload_stats_tm->max_speed_ts, payload_stats_tm->max_speed, payload_stats_tm->max_speed_altitude, payload_stats_tm->max_mach_ts, payload_stats_tm->max_mach, payload_stats_tm->apogee_ts, payload_stats_tm->apogee_lat, payload_stats_tm->apogee_lon, payload_stats_tm->apogee_alt, payload_stats_tm->apogee_max_acc_ts, payload_stats_tm->apogee_max_acc, payload_stats_tm->wing_emc_n, payload_stats_tm->wing_emc_e, payload_stats_tm->wing_m1_n, payload_stats_tm->wing_m1_e, payload_stats_tm->wing_m2_n, payload_stats_tm->wing_m2_e, payload_stats_tm->dpl_ts, payload_stats_tm->dpl_alt, payload_stats_tm->dpl_max_acc_ts, payload_stats_tm->dpl_max_acc, payload_stats_tm->ref_lat, payload_stats_tm->ref_lon, payload_stats_tm->ref_alt, payload_stats_tm->min_pressure, payload_stats_tm->cpu_load, payload_stats_tm->free_heap, payload_stats_tm->nas_state, payload_stats_tm->wes_state, payload_stats_tm->pin_launch, payload_stats_tm->pin_nosecone, payload_stats_tm->cutter_presence, payload_stats_tm->log_number, payload_stats_tm->log_good, payload_stats_tm->main_board_state, payload_stats_tm->motor_board_state, payload_stats_tm->main_can_status, payload_stats_tm->motor_can_status, payload_stats_tm->rig_can_status, payload_stats_tm->hil_state);
 }
 
 /**
@@ -540,7 +531,6 @@ static inline uint16_t mavlink_msg_payload_stats_tm_encode_chan(uint8_t system_i
  * @param min_pressure [Pa] Apogee pressure - Digital barometer
  * @param cpu_load  CPU load in percentage
  * @param free_heap  Amount of available heap in memory
- * @param fmm_state  Flight Mode Manager State
  * @param nas_state  NAS FSM State
  * @param wes_state  Wind Estimation System FSM State
  * @param pin_launch  Launch pin status (1 = connected, 0 = disconnected)
@@ -557,7 +547,7 @@ static inline uint16_t mavlink_msg_payload_stats_tm_encode_chan(uint8_t system_i
  */
 #ifdef MAVLINK_USE_CONVENIENCE_FUNCTIONS
 
-static inline void mavlink_msg_payload_stats_tm_send(mavlink_channel_t chan, uint64_t liftoff_ts, uint64_t liftoff_max_acc_ts, float liftoff_max_acc, uint64_t max_speed_ts, float max_speed, float max_speed_altitude, uint64_t max_mach_ts, float max_mach, uint64_t apogee_ts, float apogee_lat, float apogee_lon, float apogee_alt, uint64_t apogee_max_acc_ts, float apogee_max_acc, float wing_emc_n, float wing_emc_e, float wing_m1_n, float wing_m1_e, float wing_m2_n, float wing_m2_e, uint64_t dpl_ts, float dpl_alt, uint64_t dpl_max_acc_ts, float dpl_max_acc, float ref_lat, float ref_lon, float ref_alt, float min_pressure, float cpu_load, uint32_t free_heap, uint8_t fmm_state, uint8_t nas_state, uint8_t wes_state, uint8_t pin_launch, uint8_t pin_nosecone, uint8_t cutter_presence, int16_t log_number, int32_t log_good, uint8_t main_board_state, uint8_t motor_board_state, uint8_t main_can_status, uint8_t motor_can_status, uint8_t rig_can_status, uint8_t hil_state)
+static inline void mavlink_msg_payload_stats_tm_send(mavlink_channel_t chan, uint64_t liftoff_ts, uint64_t liftoff_max_acc_ts, float liftoff_max_acc, uint64_t max_speed_ts, float max_speed, float max_speed_altitude, uint64_t max_mach_ts, float max_mach, uint64_t apogee_ts, float apogee_lat, float apogee_lon, float apogee_alt, uint64_t apogee_max_acc_ts, float apogee_max_acc, float wing_emc_n, float wing_emc_e, float wing_m1_n, float wing_m1_e, float wing_m2_n, float wing_m2_e, uint64_t dpl_ts, float dpl_alt, uint64_t dpl_max_acc_ts, float dpl_max_acc, float ref_lat, float ref_lon, float ref_alt, float min_pressure, float cpu_load, uint32_t free_heap, uint8_t nas_state, uint8_t wes_state, uint8_t pin_launch, uint8_t pin_nosecone, uint8_t cutter_presence, int16_t log_number, int32_t log_good, uint8_t main_board_state, uint8_t motor_board_state, uint8_t main_can_status, uint8_t motor_can_status, uint8_t rig_can_status, uint8_t hil_state)
 {
 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
     char buf[MAVLINK_MSG_ID_PAYLOAD_STATS_TM_LEN];
@@ -593,18 +583,17 @@ static inline void mavlink_msg_payload_stats_tm_send(mavlink_channel_t chan, uin
     _mav_put_uint32_t(buf, 148, free_heap);
     _mav_put_int32_t(buf, 152, log_good);
     _mav_put_int16_t(buf, 156, log_number);
-    _mav_put_uint8_t(buf, 158, fmm_state);
-    _mav_put_uint8_t(buf, 159, nas_state);
-    _mav_put_uint8_t(buf, 160, wes_state);
-    _mav_put_uint8_t(buf, 161, pin_launch);
-    _mav_put_uint8_t(buf, 162, pin_nosecone);
-    _mav_put_uint8_t(buf, 163, cutter_presence);
-    _mav_put_uint8_t(buf, 164, main_board_state);
-    _mav_put_uint8_t(buf, 165, motor_board_state);
-    _mav_put_uint8_t(buf, 166, main_can_status);
-    _mav_put_uint8_t(buf, 167, motor_can_status);
-    _mav_put_uint8_t(buf, 168, rig_can_status);
-    _mav_put_uint8_t(buf, 169, hil_state);
+    _mav_put_uint8_t(buf, 158, nas_state);
+    _mav_put_uint8_t(buf, 159, wes_state);
+    _mav_put_uint8_t(buf, 160, pin_launch);
+    _mav_put_uint8_t(buf, 161, pin_nosecone);
+    _mav_put_uint8_t(buf, 162, cutter_presence);
+    _mav_put_uint8_t(buf, 163, main_board_state);
+    _mav_put_uint8_t(buf, 164, motor_board_state);
+    _mav_put_uint8_t(buf, 165, main_can_status);
+    _mav_put_uint8_t(buf, 166, motor_can_status);
+    _mav_put_uint8_t(buf, 167, rig_can_status);
+    _mav_put_uint8_t(buf, 168, hil_state);
 
     _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_PAYLOAD_STATS_TM, buf, MAVLINK_MSG_ID_PAYLOAD_STATS_TM_MIN_LEN, MAVLINK_MSG_ID_PAYLOAD_STATS_TM_LEN, MAVLINK_MSG_ID_PAYLOAD_STATS_TM_CRC);
 #else
@@ -641,7 +630,6 @@ static inline void mavlink_msg_payload_stats_tm_send(mavlink_channel_t chan, uin
     packet.free_heap = free_heap;
     packet.log_good = log_good;
     packet.log_number = log_number;
-    packet.fmm_state = fmm_state;
     packet.nas_state = nas_state;
     packet.wes_state = wes_state;
     packet.pin_launch = pin_launch;
@@ -666,7 +654,7 @@ static inline void mavlink_msg_payload_stats_tm_send(mavlink_channel_t chan, uin
 static inline void mavlink_msg_payload_stats_tm_send_struct(mavlink_channel_t chan, const mavlink_payload_stats_tm_t* payload_stats_tm)
 {
 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
-    mavlink_msg_payload_stats_tm_send(chan, payload_stats_tm->liftoff_ts, payload_stats_tm->liftoff_max_acc_ts, payload_stats_tm->liftoff_max_acc, payload_stats_tm->max_speed_ts, payload_stats_tm->max_speed, payload_stats_tm->max_speed_altitude, payload_stats_tm->max_mach_ts, payload_stats_tm->max_mach, payload_stats_tm->apogee_ts, payload_stats_tm->apogee_lat, payload_stats_tm->apogee_lon, payload_stats_tm->apogee_alt, payload_stats_tm->apogee_max_acc_ts, payload_stats_tm->apogee_max_acc, payload_stats_tm->wing_emc_n, payload_stats_tm->wing_emc_e, payload_stats_tm->wing_m1_n, payload_stats_tm->wing_m1_e, payload_stats_tm->wing_m2_n, payload_stats_tm->wing_m2_e, payload_stats_tm->dpl_ts, payload_stats_tm->dpl_alt, payload_stats_tm->dpl_max_acc_ts, payload_stats_tm->dpl_max_acc, payload_stats_tm->ref_lat, payload_stats_tm->ref_lon, payload_stats_tm->ref_alt, payload_stats_tm->min_pressure, payload_stats_tm->cpu_load, payload_stats_tm->free_heap, payload_stats_tm->fmm_state, payload_stats_tm->nas_state, payload_stats_tm->wes_state, payload_stats_tm->pin_launch, payload_stats_tm->pin_nosecone, payload_stats_tm->cutter_presence, payload_stats_tm->log_number, payload_stats_tm->log_good, payload_stats_tm->main_board_state, payload_stats_tm->motor_board_state, payload_stats_tm->main_can_status, payload_stats_tm->motor_can_status, payload_stats_tm->rig_can_status, payload_stats_tm->hil_state);
+    mavlink_msg_payload_stats_tm_send(chan, payload_stats_tm->liftoff_ts, payload_stats_tm->liftoff_max_acc_ts, payload_stats_tm->liftoff_max_acc, payload_stats_tm->max_speed_ts, payload_stats_tm->max_speed, payload_stats_tm->max_speed_altitude, payload_stats_tm->max_mach_ts, payload_stats_tm->max_mach, payload_stats_tm->apogee_ts, payload_stats_tm->apogee_lat, payload_stats_tm->apogee_lon, payload_stats_tm->apogee_alt, payload_stats_tm->apogee_max_acc_ts, payload_stats_tm->apogee_max_acc, payload_stats_tm->wing_emc_n, payload_stats_tm->wing_emc_e, payload_stats_tm->wing_m1_n, payload_stats_tm->wing_m1_e, payload_stats_tm->wing_m2_n, payload_stats_tm->wing_m2_e, payload_stats_tm->dpl_ts, payload_stats_tm->dpl_alt, payload_stats_tm->dpl_max_acc_ts, payload_stats_tm->dpl_max_acc, payload_stats_tm->ref_lat, payload_stats_tm->ref_lon, payload_stats_tm->ref_alt, payload_stats_tm->min_pressure, payload_stats_tm->cpu_load, payload_stats_tm->free_heap, payload_stats_tm->nas_state, payload_stats_tm->wes_state, payload_stats_tm->pin_launch, payload_stats_tm->pin_nosecone, payload_stats_tm->cutter_presence, payload_stats_tm->log_number, payload_stats_tm->log_good, payload_stats_tm->main_board_state, payload_stats_tm->motor_board_state, payload_stats_tm->main_can_status, payload_stats_tm->motor_can_status, payload_stats_tm->rig_can_status, payload_stats_tm->hil_state);
 #else
     _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_PAYLOAD_STATS_TM, (const char *)payload_stats_tm, MAVLINK_MSG_ID_PAYLOAD_STATS_TM_MIN_LEN, MAVLINK_MSG_ID_PAYLOAD_STATS_TM_LEN, MAVLINK_MSG_ID_PAYLOAD_STATS_TM_CRC);
 #endif
@@ -680,7 +668,7 @@ static inline void mavlink_msg_payload_stats_tm_send_struct(mavlink_channel_t ch
   is usually the receive buffer for the channel, and allows a reply to an
   incoming message with minimum stack space usage.
  */
-static inline void mavlink_msg_payload_stats_tm_send_buf(mavlink_message_t *msgbuf, mavlink_channel_t chan,  uint64_t liftoff_ts, uint64_t liftoff_max_acc_ts, float liftoff_max_acc, uint64_t max_speed_ts, float max_speed, float max_speed_altitude, uint64_t max_mach_ts, float max_mach, uint64_t apogee_ts, float apogee_lat, float apogee_lon, float apogee_alt, uint64_t apogee_max_acc_ts, float apogee_max_acc, float wing_emc_n, float wing_emc_e, float wing_m1_n, float wing_m1_e, float wing_m2_n, float wing_m2_e, uint64_t dpl_ts, float dpl_alt, uint64_t dpl_max_acc_ts, float dpl_max_acc, float ref_lat, float ref_lon, float ref_alt, float min_pressure, float cpu_load, uint32_t free_heap, uint8_t fmm_state, uint8_t nas_state, uint8_t wes_state, uint8_t pin_launch, uint8_t pin_nosecone, uint8_t cutter_presence, int16_t log_number, int32_t log_good, uint8_t main_board_state, uint8_t motor_board_state, uint8_t main_can_status, uint8_t motor_can_status, uint8_t rig_can_status, uint8_t hil_state)
+static inline void mavlink_msg_payload_stats_tm_send_buf(mavlink_message_t *msgbuf, mavlink_channel_t chan,  uint64_t liftoff_ts, uint64_t liftoff_max_acc_ts, float liftoff_max_acc, uint64_t max_speed_ts, float max_speed, float max_speed_altitude, uint64_t max_mach_ts, float max_mach, uint64_t apogee_ts, float apogee_lat, float apogee_lon, float apogee_alt, uint64_t apogee_max_acc_ts, float apogee_max_acc, float wing_emc_n, float wing_emc_e, float wing_m1_n, float wing_m1_e, float wing_m2_n, float wing_m2_e, uint64_t dpl_ts, float dpl_alt, uint64_t dpl_max_acc_ts, float dpl_max_acc, float ref_lat, float ref_lon, float ref_alt, float min_pressure, float cpu_load, uint32_t free_heap, uint8_t nas_state, uint8_t wes_state, uint8_t pin_launch, uint8_t pin_nosecone, uint8_t cutter_presence, int16_t log_number, int32_t log_good, uint8_t main_board_state, uint8_t motor_board_state, uint8_t main_can_status, uint8_t motor_can_status, uint8_t rig_can_status, uint8_t hil_state)
 {
 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
     char *buf = (char *)msgbuf;
@@ -716,18 +704,17 @@ static inline void mavlink_msg_payload_stats_tm_send_buf(mavlink_message_t *msgb
     _mav_put_uint32_t(buf, 148, free_heap);
     _mav_put_int32_t(buf, 152, log_good);
     _mav_put_int16_t(buf, 156, log_number);
-    _mav_put_uint8_t(buf, 158, fmm_state);
-    _mav_put_uint8_t(buf, 159, nas_state);
-    _mav_put_uint8_t(buf, 160, wes_state);
-    _mav_put_uint8_t(buf, 161, pin_launch);
-    _mav_put_uint8_t(buf, 162, pin_nosecone);
-    _mav_put_uint8_t(buf, 163, cutter_presence);
-    _mav_put_uint8_t(buf, 164, main_board_state);
-    _mav_put_uint8_t(buf, 165, motor_board_state);
-    _mav_put_uint8_t(buf, 166, main_can_status);
-    _mav_put_uint8_t(buf, 167, motor_can_status);
-    _mav_put_uint8_t(buf, 168, rig_can_status);
-    _mav_put_uint8_t(buf, 169, hil_state);
+    _mav_put_uint8_t(buf, 158, nas_state);
+    _mav_put_uint8_t(buf, 159, wes_state);
+    _mav_put_uint8_t(buf, 160, pin_launch);
+    _mav_put_uint8_t(buf, 161, pin_nosecone);
+    _mav_put_uint8_t(buf, 162, cutter_presence);
+    _mav_put_uint8_t(buf, 163, main_board_state);
+    _mav_put_uint8_t(buf, 164, motor_board_state);
+    _mav_put_uint8_t(buf, 165, main_can_status);
+    _mav_put_uint8_t(buf, 166, motor_can_status);
+    _mav_put_uint8_t(buf, 167, rig_can_status);
+    _mav_put_uint8_t(buf, 168, hil_state);
 
     _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_PAYLOAD_STATS_TM, buf, MAVLINK_MSG_ID_PAYLOAD_STATS_TM_MIN_LEN, MAVLINK_MSG_ID_PAYLOAD_STATS_TM_LEN, MAVLINK_MSG_ID_PAYLOAD_STATS_TM_CRC);
 #else
@@ -764,7 +751,6 @@ static inline void mavlink_msg_payload_stats_tm_send_buf(mavlink_message_t *msgb
     packet->free_heap = free_heap;
     packet->log_good = log_good;
     packet->log_number = log_number;
-    packet->fmm_state = fmm_state;
     packet->nas_state = nas_state;
     packet->wes_state = wes_state;
     packet->pin_launch = pin_launch;
@@ -1087,16 +1073,6 @@ static inline uint32_t mavlink_msg_payload_stats_tm_get_free_heap(const mavlink_
     return _MAV_RETURN_uint32_t(msg,  148);
 }
 
-/**
- * @brief Get field fmm_state from payload_stats_tm message
- *
- * @return  Flight Mode Manager State
- */
-static inline uint8_t mavlink_msg_payload_stats_tm_get_fmm_state(const mavlink_message_t* msg)
-{
-    return _MAV_RETURN_uint8_t(msg,  158);
-}
-
 /**
  * @brief Get field nas_state from payload_stats_tm message
  *
@@ -1104,7 +1080,7 @@ static inline uint8_t mavlink_msg_payload_stats_tm_get_fmm_state(const mavlink_m
  */
 static inline uint8_t mavlink_msg_payload_stats_tm_get_nas_state(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint8_t(msg,  159);
+    return _MAV_RETURN_uint8_t(msg,  158);
 }
 
 /**
@@ -1114,7 +1090,7 @@ static inline uint8_t mavlink_msg_payload_stats_tm_get_nas_state(const mavlink_m
  */
 static inline uint8_t mavlink_msg_payload_stats_tm_get_wes_state(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint8_t(msg,  160);
+    return _MAV_RETURN_uint8_t(msg,  159);
 }
 
 /**
@@ -1124,7 +1100,7 @@ static inline uint8_t mavlink_msg_payload_stats_tm_get_wes_state(const mavlink_m
  */
 static inline uint8_t mavlink_msg_payload_stats_tm_get_pin_launch(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint8_t(msg,  161);
+    return _MAV_RETURN_uint8_t(msg,  160);
 }
 
 /**
@@ -1134,7 +1110,7 @@ static inline uint8_t mavlink_msg_payload_stats_tm_get_pin_launch(const mavlink_
  */
 static inline uint8_t mavlink_msg_payload_stats_tm_get_pin_nosecone(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint8_t(msg,  162);
+    return _MAV_RETURN_uint8_t(msg,  161);
 }
 
 /**
@@ -1144,7 +1120,7 @@ static inline uint8_t mavlink_msg_payload_stats_tm_get_pin_nosecone(const mavlin
  */
 static inline uint8_t mavlink_msg_payload_stats_tm_get_cutter_presence(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint8_t(msg,  163);
+    return _MAV_RETURN_uint8_t(msg,  162);
 }
 
 /**
@@ -1174,7 +1150,7 @@ static inline int32_t mavlink_msg_payload_stats_tm_get_log_good(const mavlink_me
  */
 static inline uint8_t mavlink_msg_payload_stats_tm_get_main_board_state(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint8_t(msg,  164);
+    return _MAV_RETURN_uint8_t(msg,  163);
 }
 
 /**
@@ -1184,7 +1160,7 @@ static inline uint8_t mavlink_msg_payload_stats_tm_get_main_board_state(const ma
  */
 static inline uint8_t mavlink_msg_payload_stats_tm_get_motor_board_state(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint8_t(msg,  165);
+    return _MAV_RETURN_uint8_t(msg,  164);
 }
 
 /**
@@ -1194,7 +1170,7 @@ static inline uint8_t mavlink_msg_payload_stats_tm_get_motor_board_state(const m
  */
 static inline uint8_t mavlink_msg_payload_stats_tm_get_main_can_status(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint8_t(msg,  166);
+    return _MAV_RETURN_uint8_t(msg,  165);
 }
 
 /**
@@ -1204,7 +1180,7 @@ static inline uint8_t mavlink_msg_payload_stats_tm_get_main_can_status(const mav
  */
 static inline uint8_t mavlink_msg_payload_stats_tm_get_motor_can_status(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint8_t(msg,  167);
+    return _MAV_RETURN_uint8_t(msg,  166);
 }
 
 /**
@@ -1214,7 +1190,7 @@ static inline uint8_t mavlink_msg_payload_stats_tm_get_motor_can_status(const ma
  */
 static inline uint8_t mavlink_msg_payload_stats_tm_get_rig_can_status(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint8_t(msg,  168);
+    return _MAV_RETURN_uint8_t(msg,  167);
 }
 
 /**
@@ -1224,7 +1200,7 @@ static inline uint8_t mavlink_msg_payload_stats_tm_get_rig_can_status(const mavl
  */
 static inline uint8_t mavlink_msg_payload_stats_tm_get_hil_state(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint8_t(msg,  169);
+    return _MAV_RETURN_uint8_t(msg,  168);
 }
 
 /**
@@ -1268,7 +1244,6 @@ static inline void mavlink_msg_payload_stats_tm_decode(const mavlink_message_t*
     payload_stats_tm->free_heap = mavlink_msg_payload_stats_tm_get_free_heap(msg);
     payload_stats_tm->log_good = mavlink_msg_payload_stats_tm_get_log_good(msg);
     payload_stats_tm->log_number = mavlink_msg_payload_stats_tm_get_log_number(msg);
-    payload_stats_tm->fmm_state = mavlink_msg_payload_stats_tm_get_fmm_state(msg);
     payload_stats_tm->nas_state = mavlink_msg_payload_stats_tm_get_nas_state(msg);
     payload_stats_tm->wes_state = mavlink_msg_payload_stats_tm_get_wes_state(msg);
     payload_stats_tm->pin_launch = mavlink_msg_payload_stats_tm_get_pin_launch(msg);
diff --git a/mavlink_lib/lyra/mavlink_msg_rocket_flight_tm.h b/mavlink_lib/lyra/mavlink_msg_rocket_flight_tm.h
index b8602c82aef89afe9df07be3aaea41192079abaf..86ad5b4e22180b95afc42dc5d53169a6813e3368 100644
--- a/mavlink_lib/lyra/mavlink_msg_rocket_flight_tm.h
+++ b/mavlink_lib/lyra/mavlink_msg_rocket_flight_tm.h
@@ -49,15 +49,16 @@ typedef struct __mavlink_rocket_flight_tm_t {
  float cam_battery_voltage; /*< [V] Camera battery voltage*/
  float temperature; /*< [degC] Temperature*/
  uint8_t gps_fix; /*<  Wether the GPS has a FIX*/
+ uint8_t fmm_state; /*<  Flight Mode Manager State*/
 } mavlink_rocket_flight_tm_t;
 
-#define MAVLINK_MSG_ID_ROCKET_FLIGHT_TM_LEN 177
-#define MAVLINK_MSG_ID_ROCKET_FLIGHT_TM_MIN_LEN 177
-#define MAVLINK_MSG_ID_208_LEN 177
-#define MAVLINK_MSG_ID_208_MIN_LEN 177
+#define MAVLINK_MSG_ID_ROCKET_FLIGHT_TM_LEN 178
+#define MAVLINK_MSG_ID_ROCKET_FLIGHT_TM_MIN_LEN 178
+#define MAVLINK_MSG_ID_208_LEN 178
+#define MAVLINK_MSG_ID_208_MIN_LEN 178
 
-#define MAVLINK_MSG_ID_ROCKET_FLIGHT_TM_CRC 79
-#define MAVLINK_MSG_ID_208_CRC 79
+#define MAVLINK_MSG_ID_ROCKET_FLIGHT_TM_CRC 235
+#define MAVLINK_MSG_ID_208_CRC 235
 
 
 
@@ -65,7 +66,7 @@ typedef struct __mavlink_rocket_flight_tm_t {
 #define MAVLINK_MESSAGE_INFO_ROCKET_FLIGHT_TM { \
     208, \
     "ROCKET_FLIGHT_TM", \
-    44, \
+    45, \
     {  { "timestamp", NULL, MAVLINK_TYPE_UINT64_T, 0, 0, offsetof(mavlink_rocket_flight_tm_t, timestamp) }, \
          { "pressure_ada", NULL, MAVLINK_TYPE_FLOAT, 0, 8, offsetof(mavlink_rocket_flight_tm_t, pressure_ada) }, \
          { "pressure_digi", NULL, MAVLINK_TYPE_FLOAT, 0, 12, offsetof(mavlink_rocket_flight_tm_t, pressure_digi) }, \
@@ -93,6 +94,7 @@ typedef struct __mavlink_rocket_flight_tm_t {
          { "gps_lat", NULL, MAVLINK_TYPE_FLOAT, 0, 96, offsetof(mavlink_rocket_flight_tm_t, gps_lat) }, \
          { "gps_lon", NULL, MAVLINK_TYPE_FLOAT, 0, 100, offsetof(mavlink_rocket_flight_tm_t, gps_lon) }, \
          { "gps_alt", NULL, MAVLINK_TYPE_FLOAT, 0, 104, offsetof(mavlink_rocket_flight_tm_t, gps_alt) }, \
+         { "fmm_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 177, offsetof(mavlink_rocket_flight_tm_t, fmm_state) }, \
          { "abk_angle", NULL, MAVLINK_TYPE_FLOAT, 0, 108, offsetof(mavlink_rocket_flight_tm_t, abk_angle) }, \
          { "nas_n", NULL, MAVLINK_TYPE_FLOAT, 0, 112, offsetof(mavlink_rocket_flight_tm_t, nas_n) }, \
          { "nas_e", NULL, MAVLINK_TYPE_FLOAT, 0, 116, offsetof(mavlink_rocket_flight_tm_t, nas_e) }, \
@@ -115,7 +117,7 @@ typedef struct __mavlink_rocket_flight_tm_t {
 #else
 #define MAVLINK_MESSAGE_INFO_ROCKET_FLIGHT_TM { \
     "ROCKET_FLIGHT_TM", \
-    44, \
+    45, \
     {  { "timestamp", NULL, MAVLINK_TYPE_UINT64_T, 0, 0, offsetof(mavlink_rocket_flight_tm_t, timestamp) }, \
          { "pressure_ada", NULL, MAVLINK_TYPE_FLOAT, 0, 8, offsetof(mavlink_rocket_flight_tm_t, pressure_ada) }, \
          { "pressure_digi", NULL, MAVLINK_TYPE_FLOAT, 0, 12, offsetof(mavlink_rocket_flight_tm_t, pressure_digi) }, \
@@ -143,6 +145,7 @@ typedef struct __mavlink_rocket_flight_tm_t {
          { "gps_lat", NULL, MAVLINK_TYPE_FLOAT, 0, 96, offsetof(mavlink_rocket_flight_tm_t, gps_lat) }, \
          { "gps_lon", NULL, MAVLINK_TYPE_FLOAT, 0, 100, offsetof(mavlink_rocket_flight_tm_t, gps_lon) }, \
          { "gps_alt", NULL, MAVLINK_TYPE_FLOAT, 0, 104, offsetof(mavlink_rocket_flight_tm_t, gps_alt) }, \
+         { "fmm_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 177, offsetof(mavlink_rocket_flight_tm_t, fmm_state) }, \
          { "abk_angle", NULL, MAVLINK_TYPE_FLOAT, 0, 108, offsetof(mavlink_rocket_flight_tm_t, abk_angle) }, \
          { "nas_n", NULL, MAVLINK_TYPE_FLOAT, 0, 112, offsetof(mavlink_rocket_flight_tm_t, nas_n) }, \
          { "nas_e", NULL, MAVLINK_TYPE_FLOAT, 0, 116, offsetof(mavlink_rocket_flight_tm_t, nas_e) }, \
@@ -197,6 +200,7 @@ typedef struct __mavlink_rocket_flight_tm_t {
  * @param gps_lat [deg] Latitude
  * @param gps_lon [deg] Longitude
  * @param gps_alt [m] GPS Altitude
+ * @param fmm_state  Flight Mode Manager State
  * @param abk_angle  Air Brakes angle
  * @param nas_n [deg] NAS estimated noth position
  * @param nas_e [deg] NAS estimated east position
@@ -217,7 +221,7 @@ typedef struct __mavlink_rocket_flight_tm_t {
  * @return length of the message in bytes (excluding serial stream start sign)
  */
 static inline uint16_t mavlink_msg_rocket_flight_tm_pack(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg,
-                               uint64_t timestamp, float pressure_ada, float pressure_digi, float pressure_static, float pressure_dpl, float airspeed_pitot, float altitude_agl, float ada_vert_speed, float mea_mass, float mea_apogee, float acc_x, float acc_y, float acc_z, float gyro_x, float gyro_y, float gyro_z, float mag_x, float mag_y, float mag_z, float vn100_qx, float vn100_qy, float vn100_qz, float vn100_qw, uint8_t gps_fix, float gps_lat, float gps_lon, float gps_alt, float abk_angle, float nas_n, float nas_e, float nas_d, float nas_vn, float nas_ve, float nas_vd, float nas_qx, float nas_qy, float nas_qz, float nas_qw, float nas_bias_x, float nas_bias_y, float nas_bias_z, float battery_voltage, float cam_battery_voltage, float temperature)
+                               uint64_t timestamp, float pressure_ada, float pressure_digi, float pressure_static, float pressure_dpl, float airspeed_pitot, float altitude_agl, float ada_vert_speed, float mea_mass, float mea_apogee, float acc_x, float acc_y, float acc_z, float gyro_x, float gyro_y, float gyro_z, float mag_x, float mag_y, float mag_z, float vn100_qx, float vn100_qy, float vn100_qz, float vn100_qw, uint8_t gps_fix, float gps_lat, float gps_lon, float gps_alt, uint8_t fmm_state, float abk_angle, float nas_n, float nas_e, float nas_d, float nas_vn, float nas_ve, float nas_vd, float nas_qx, float nas_qy, float nas_qz, float nas_qw, float nas_bias_x, float nas_bias_y, float nas_bias_z, float battery_voltage, float cam_battery_voltage, float temperature)
 {
 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
     char buf[MAVLINK_MSG_ID_ROCKET_FLIGHT_TM_LEN];
@@ -265,6 +269,7 @@ static inline uint16_t mavlink_msg_rocket_flight_tm_pack(uint8_t system_id, uint
     _mav_put_float(buf, 168, cam_battery_voltage);
     _mav_put_float(buf, 172, temperature);
     _mav_put_uint8_t(buf, 176, gps_fix);
+    _mav_put_uint8_t(buf, 177, fmm_state);
 
         memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_ROCKET_FLIGHT_TM_LEN);
 #else
@@ -313,6 +318,7 @@ static inline uint16_t mavlink_msg_rocket_flight_tm_pack(uint8_t system_id, uint
     packet.cam_battery_voltage = cam_battery_voltage;
     packet.temperature = temperature;
     packet.gps_fix = gps_fix;
+    packet.fmm_state = fmm_state;
 
         memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_ROCKET_FLIGHT_TM_LEN);
 #endif
@@ -354,6 +360,7 @@ static inline uint16_t mavlink_msg_rocket_flight_tm_pack(uint8_t system_id, uint
  * @param gps_lat [deg] Latitude
  * @param gps_lon [deg] Longitude
  * @param gps_alt [m] GPS Altitude
+ * @param fmm_state  Flight Mode Manager State
  * @param abk_angle  Air Brakes angle
  * @param nas_n [deg] NAS estimated noth position
  * @param nas_e [deg] NAS estimated east position
@@ -375,7 +382,7 @@ static inline uint16_t mavlink_msg_rocket_flight_tm_pack(uint8_t system_id, uint
  */
 static inline uint16_t mavlink_msg_rocket_flight_tm_pack_chan(uint8_t system_id, uint8_t component_id, uint8_t chan,
                                mavlink_message_t* msg,
-                                   uint64_t timestamp,float pressure_ada,float pressure_digi,float pressure_static,float pressure_dpl,float airspeed_pitot,float altitude_agl,float ada_vert_speed,float mea_mass,float mea_apogee,float acc_x,float acc_y,float acc_z,float gyro_x,float gyro_y,float gyro_z,float mag_x,float mag_y,float mag_z,float vn100_qx,float vn100_qy,float vn100_qz,float vn100_qw,uint8_t gps_fix,float gps_lat,float gps_lon,float gps_alt,float abk_angle,float nas_n,float nas_e,float nas_d,float nas_vn,float nas_ve,float nas_vd,float nas_qx,float nas_qy,float nas_qz,float nas_qw,float nas_bias_x,float nas_bias_y,float nas_bias_z,float battery_voltage,float cam_battery_voltage,float temperature)
+                                   uint64_t timestamp,float pressure_ada,float pressure_digi,float pressure_static,float pressure_dpl,float airspeed_pitot,float altitude_agl,float ada_vert_speed,float mea_mass,float mea_apogee,float acc_x,float acc_y,float acc_z,float gyro_x,float gyro_y,float gyro_z,float mag_x,float mag_y,float mag_z,float vn100_qx,float vn100_qy,float vn100_qz,float vn100_qw,uint8_t gps_fix,float gps_lat,float gps_lon,float gps_alt,uint8_t fmm_state,float abk_angle,float nas_n,float nas_e,float nas_d,float nas_vn,float nas_ve,float nas_vd,float nas_qx,float nas_qy,float nas_qz,float nas_qw,float nas_bias_x,float nas_bias_y,float nas_bias_z,float battery_voltage,float cam_battery_voltage,float temperature)
 {
 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
     char buf[MAVLINK_MSG_ID_ROCKET_FLIGHT_TM_LEN];
@@ -423,6 +430,7 @@ static inline uint16_t mavlink_msg_rocket_flight_tm_pack_chan(uint8_t system_id,
     _mav_put_float(buf, 168, cam_battery_voltage);
     _mav_put_float(buf, 172, temperature);
     _mav_put_uint8_t(buf, 176, gps_fix);
+    _mav_put_uint8_t(buf, 177, fmm_state);
 
         memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_ROCKET_FLIGHT_TM_LEN);
 #else
@@ -471,6 +479,7 @@ static inline uint16_t mavlink_msg_rocket_flight_tm_pack_chan(uint8_t system_id,
     packet.cam_battery_voltage = cam_battery_voltage;
     packet.temperature = temperature;
     packet.gps_fix = gps_fix;
+    packet.fmm_state = fmm_state;
 
         memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_ROCKET_FLIGHT_TM_LEN);
 #endif
@@ -489,7 +498,7 @@ static inline uint16_t mavlink_msg_rocket_flight_tm_pack_chan(uint8_t system_id,
  */
 static inline uint16_t mavlink_msg_rocket_flight_tm_encode(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg, const mavlink_rocket_flight_tm_t* rocket_flight_tm)
 {
-    return mavlink_msg_rocket_flight_tm_pack(system_id, component_id, msg, rocket_flight_tm->timestamp, rocket_flight_tm->pressure_ada, rocket_flight_tm->pressure_digi, rocket_flight_tm->pressure_static, rocket_flight_tm->pressure_dpl, rocket_flight_tm->airspeed_pitot, rocket_flight_tm->altitude_agl, rocket_flight_tm->ada_vert_speed, rocket_flight_tm->mea_mass, rocket_flight_tm->mea_apogee, rocket_flight_tm->acc_x, rocket_flight_tm->acc_y, rocket_flight_tm->acc_z, rocket_flight_tm->gyro_x, rocket_flight_tm->gyro_y, rocket_flight_tm->gyro_z, rocket_flight_tm->mag_x, rocket_flight_tm->mag_y, rocket_flight_tm->mag_z, rocket_flight_tm->vn100_qx, rocket_flight_tm->vn100_qy, rocket_flight_tm->vn100_qz, rocket_flight_tm->vn100_qw, rocket_flight_tm->gps_fix, rocket_flight_tm->gps_lat, rocket_flight_tm->gps_lon, rocket_flight_tm->gps_alt, rocket_flight_tm->abk_angle, rocket_flight_tm->nas_n, rocket_flight_tm->nas_e, rocket_flight_tm->nas_d, rocket_flight_tm->nas_vn, rocket_flight_tm->nas_ve, rocket_flight_tm->nas_vd, rocket_flight_tm->nas_qx, rocket_flight_tm->nas_qy, rocket_flight_tm->nas_qz, rocket_flight_tm->nas_qw, rocket_flight_tm->nas_bias_x, rocket_flight_tm->nas_bias_y, rocket_flight_tm->nas_bias_z, rocket_flight_tm->battery_voltage, rocket_flight_tm->cam_battery_voltage, rocket_flight_tm->temperature);
+    return mavlink_msg_rocket_flight_tm_pack(system_id, component_id, msg, rocket_flight_tm->timestamp, rocket_flight_tm->pressure_ada, rocket_flight_tm->pressure_digi, rocket_flight_tm->pressure_static, rocket_flight_tm->pressure_dpl, rocket_flight_tm->airspeed_pitot, rocket_flight_tm->altitude_agl, rocket_flight_tm->ada_vert_speed, rocket_flight_tm->mea_mass, rocket_flight_tm->mea_apogee, rocket_flight_tm->acc_x, rocket_flight_tm->acc_y, rocket_flight_tm->acc_z, rocket_flight_tm->gyro_x, rocket_flight_tm->gyro_y, rocket_flight_tm->gyro_z, rocket_flight_tm->mag_x, rocket_flight_tm->mag_y, rocket_flight_tm->mag_z, rocket_flight_tm->vn100_qx, rocket_flight_tm->vn100_qy, rocket_flight_tm->vn100_qz, rocket_flight_tm->vn100_qw, rocket_flight_tm->gps_fix, rocket_flight_tm->gps_lat, rocket_flight_tm->gps_lon, rocket_flight_tm->gps_alt, rocket_flight_tm->fmm_state, rocket_flight_tm->abk_angle, rocket_flight_tm->nas_n, rocket_flight_tm->nas_e, rocket_flight_tm->nas_d, rocket_flight_tm->nas_vn, rocket_flight_tm->nas_ve, rocket_flight_tm->nas_vd, rocket_flight_tm->nas_qx, rocket_flight_tm->nas_qy, rocket_flight_tm->nas_qz, rocket_flight_tm->nas_qw, rocket_flight_tm->nas_bias_x, rocket_flight_tm->nas_bias_y, rocket_flight_tm->nas_bias_z, rocket_flight_tm->battery_voltage, rocket_flight_tm->cam_battery_voltage, rocket_flight_tm->temperature);
 }
 
 /**
@@ -503,7 +512,7 @@ static inline uint16_t mavlink_msg_rocket_flight_tm_encode(uint8_t system_id, ui
  */
 static inline uint16_t mavlink_msg_rocket_flight_tm_encode_chan(uint8_t system_id, uint8_t component_id, uint8_t chan, mavlink_message_t* msg, const mavlink_rocket_flight_tm_t* rocket_flight_tm)
 {
-    return mavlink_msg_rocket_flight_tm_pack_chan(system_id, component_id, chan, msg, rocket_flight_tm->timestamp, rocket_flight_tm->pressure_ada, rocket_flight_tm->pressure_digi, rocket_flight_tm->pressure_static, rocket_flight_tm->pressure_dpl, rocket_flight_tm->airspeed_pitot, rocket_flight_tm->altitude_agl, rocket_flight_tm->ada_vert_speed, rocket_flight_tm->mea_mass, rocket_flight_tm->mea_apogee, rocket_flight_tm->acc_x, rocket_flight_tm->acc_y, rocket_flight_tm->acc_z, rocket_flight_tm->gyro_x, rocket_flight_tm->gyro_y, rocket_flight_tm->gyro_z, rocket_flight_tm->mag_x, rocket_flight_tm->mag_y, rocket_flight_tm->mag_z, rocket_flight_tm->vn100_qx, rocket_flight_tm->vn100_qy, rocket_flight_tm->vn100_qz, rocket_flight_tm->vn100_qw, rocket_flight_tm->gps_fix, rocket_flight_tm->gps_lat, rocket_flight_tm->gps_lon, rocket_flight_tm->gps_alt, rocket_flight_tm->abk_angle, rocket_flight_tm->nas_n, rocket_flight_tm->nas_e, rocket_flight_tm->nas_d, rocket_flight_tm->nas_vn, rocket_flight_tm->nas_ve, rocket_flight_tm->nas_vd, rocket_flight_tm->nas_qx, rocket_flight_tm->nas_qy, rocket_flight_tm->nas_qz, rocket_flight_tm->nas_qw, rocket_flight_tm->nas_bias_x, rocket_flight_tm->nas_bias_y, rocket_flight_tm->nas_bias_z, rocket_flight_tm->battery_voltage, rocket_flight_tm->cam_battery_voltage, rocket_flight_tm->temperature);
+    return mavlink_msg_rocket_flight_tm_pack_chan(system_id, component_id, chan, msg, rocket_flight_tm->timestamp, rocket_flight_tm->pressure_ada, rocket_flight_tm->pressure_digi, rocket_flight_tm->pressure_static, rocket_flight_tm->pressure_dpl, rocket_flight_tm->airspeed_pitot, rocket_flight_tm->altitude_agl, rocket_flight_tm->ada_vert_speed, rocket_flight_tm->mea_mass, rocket_flight_tm->mea_apogee, rocket_flight_tm->acc_x, rocket_flight_tm->acc_y, rocket_flight_tm->acc_z, rocket_flight_tm->gyro_x, rocket_flight_tm->gyro_y, rocket_flight_tm->gyro_z, rocket_flight_tm->mag_x, rocket_flight_tm->mag_y, rocket_flight_tm->mag_z, rocket_flight_tm->vn100_qx, rocket_flight_tm->vn100_qy, rocket_flight_tm->vn100_qz, rocket_flight_tm->vn100_qw, rocket_flight_tm->gps_fix, rocket_flight_tm->gps_lat, rocket_flight_tm->gps_lon, rocket_flight_tm->gps_alt, rocket_flight_tm->fmm_state, rocket_flight_tm->abk_angle, rocket_flight_tm->nas_n, rocket_flight_tm->nas_e, rocket_flight_tm->nas_d, rocket_flight_tm->nas_vn, rocket_flight_tm->nas_ve, rocket_flight_tm->nas_vd, rocket_flight_tm->nas_qx, rocket_flight_tm->nas_qy, rocket_flight_tm->nas_qz, rocket_flight_tm->nas_qw, rocket_flight_tm->nas_bias_x, rocket_flight_tm->nas_bias_y, rocket_flight_tm->nas_bias_z, rocket_flight_tm->battery_voltage, rocket_flight_tm->cam_battery_voltage, rocket_flight_tm->temperature);
 }
 
 /**
@@ -537,6 +546,7 @@ static inline uint16_t mavlink_msg_rocket_flight_tm_encode_chan(uint8_t system_i
  * @param gps_lat [deg] Latitude
  * @param gps_lon [deg] Longitude
  * @param gps_alt [m] GPS Altitude
+ * @param fmm_state  Flight Mode Manager State
  * @param abk_angle  Air Brakes angle
  * @param nas_n [deg] NAS estimated noth position
  * @param nas_e [deg] NAS estimated east position
@@ -557,7 +567,7 @@ static inline uint16_t mavlink_msg_rocket_flight_tm_encode_chan(uint8_t system_i
  */
 #ifdef MAVLINK_USE_CONVENIENCE_FUNCTIONS
 
-static inline void mavlink_msg_rocket_flight_tm_send(mavlink_channel_t chan, uint64_t timestamp, float pressure_ada, float pressure_digi, float pressure_static, float pressure_dpl, float airspeed_pitot, float altitude_agl, float ada_vert_speed, float mea_mass, float mea_apogee, float acc_x, float acc_y, float acc_z, float gyro_x, float gyro_y, float gyro_z, float mag_x, float mag_y, float mag_z, float vn100_qx, float vn100_qy, float vn100_qz, float vn100_qw, uint8_t gps_fix, float gps_lat, float gps_lon, float gps_alt, float abk_angle, float nas_n, float nas_e, float nas_d, float nas_vn, float nas_ve, float nas_vd, float nas_qx, float nas_qy, float nas_qz, float nas_qw, float nas_bias_x, float nas_bias_y, float nas_bias_z, float battery_voltage, float cam_battery_voltage, float temperature)
+static inline void mavlink_msg_rocket_flight_tm_send(mavlink_channel_t chan, uint64_t timestamp, float pressure_ada, float pressure_digi, float pressure_static, float pressure_dpl, float airspeed_pitot, float altitude_agl, float ada_vert_speed, float mea_mass, float mea_apogee, float acc_x, float acc_y, float acc_z, float gyro_x, float gyro_y, float gyro_z, float mag_x, float mag_y, float mag_z, float vn100_qx, float vn100_qy, float vn100_qz, float vn100_qw, uint8_t gps_fix, float gps_lat, float gps_lon, float gps_alt, uint8_t fmm_state, float abk_angle, float nas_n, float nas_e, float nas_d, float nas_vn, float nas_ve, float nas_vd, float nas_qx, float nas_qy, float nas_qz, float nas_qw, float nas_bias_x, float nas_bias_y, float nas_bias_z, float battery_voltage, float cam_battery_voltage, float temperature)
 {
 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
     char buf[MAVLINK_MSG_ID_ROCKET_FLIGHT_TM_LEN];
@@ -605,6 +615,7 @@ static inline void mavlink_msg_rocket_flight_tm_send(mavlink_channel_t chan, uin
     _mav_put_float(buf, 168, cam_battery_voltage);
     _mav_put_float(buf, 172, temperature);
     _mav_put_uint8_t(buf, 176, gps_fix);
+    _mav_put_uint8_t(buf, 177, fmm_state);
 
     _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_ROCKET_FLIGHT_TM, buf, MAVLINK_MSG_ID_ROCKET_FLIGHT_TM_MIN_LEN, MAVLINK_MSG_ID_ROCKET_FLIGHT_TM_LEN, MAVLINK_MSG_ID_ROCKET_FLIGHT_TM_CRC);
 #else
@@ -653,6 +664,7 @@ static inline void mavlink_msg_rocket_flight_tm_send(mavlink_channel_t chan, uin
     packet.cam_battery_voltage = cam_battery_voltage;
     packet.temperature = temperature;
     packet.gps_fix = gps_fix;
+    packet.fmm_state = fmm_state;
 
     _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_ROCKET_FLIGHT_TM, (const char *)&packet, MAVLINK_MSG_ID_ROCKET_FLIGHT_TM_MIN_LEN, MAVLINK_MSG_ID_ROCKET_FLIGHT_TM_LEN, MAVLINK_MSG_ID_ROCKET_FLIGHT_TM_CRC);
 #endif
@@ -666,7 +678,7 @@ static inline void mavlink_msg_rocket_flight_tm_send(mavlink_channel_t chan, uin
 static inline void mavlink_msg_rocket_flight_tm_send_struct(mavlink_channel_t chan, const mavlink_rocket_flight_tm_t* rocket_flight_tm)
 {
 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
-    mavlink_msg_rocket_flight_tm_send(chan, rocket_flight_tm->timestamp, rocket_flight_tm->pressure_ada, rocket_flight_tm->pressure_digi, rocket_flight_tm->pressure_static, rocket_flight_tm->pressure_dpl, rocket_flight_tm->airspeed_pitot, rocket_flight_tm->altitude_agl, rocket_flight_tm->ada_vert_speed, rocket_flight_tm->mea_mass, rocket_flight_tm->mea_apogee, rocket_flight_tm->acc_x, rocket_flight_tm->acc_y, rocket_flight_tm->acc_z, rocket_flight_tm->gyro_x, rocket_flight_tm->gyro_y, rocket_flight_tm->gyro_z, rocket_flight_tm->mag_x, rocket_flight_tm->mag_y, rocket_flight_tm->mag_z, rocket_flight_tm->vn100_qx, rocket_flight_tm->vn100_qy, rocket_flight_tm->vn100_qz, rocket_flight_tm->vn100_qw, rocket_flight_tm->gps_fix, rocket_flight_tm->gps_lat, rocket_flight_tm->gps_lon, rocket_flight_tm->gps_alt, rocket_flight_tm->abk_angle, rocket_flight_tm->nas_n, rocket_flight_tm->nas_e, rocket_flight_tm->nas_d, rocket_flight_tm->nas_vn, rocket_flight_tm->nas_ve, rocket_flight_tm->nas_vd, rocket_flight_tm->nas_qx, rocket_flight_tm->nas_qy, rocket_flight_tm->nas_qz, rocket_flight_tm->nas_qw, rocket_flight_tm->nas_bias_x, rocket_flight_tm->nas_bias_y, rocket_flight_tm->nas_bias_z, rocket_flight_tm->battery_voltage, rocket_flight_tm->cam_battery_voltage, rocket_flight_tm->temperature);
+    mavlink_msg_rocket_flight_tm_send(chan, rocket_flight_tm->timestamp, rocket_flight_tm->pressure_ada, rocket_flight_tm->pressure_digi, rocket_flight_tm->pressure_static, rocket_flight_tm->pressure_dpl, rocket_flight_tm->airspeed_pitot, rocket_flight_tm->altitude_agl, rocket_flight_tm->ada_vert_speed, rocket_flight_tm->mea_mass, rocket_flight_tm->mea_apogee, rocket_flight_tm->acc_x, rocket_flight_tm->acc_y, rocket_flight_tm->acc_z, rocket_flight_tm->gyro_x, rocket_flight_tm->gyro_y, rocket_flight_tm->gyro_z, rocket_flight_tm->mag_x, rocket_flight_tm->mag_y, rocket_flight_tm->mag_z, rocket_flight_tm->vn100_qx, rocket_flight_tm->vn100_qy, rocket_flight_tm->vn100_qz, rocket_flight_tm->vn100_qw, rocket_flight_tm->gps_fix, rocket_flight_tm->gps_lat, rocket_flight_tm->gps_lon, rocket_flight_tm->gps_alt, rocket_flight_tm->fmm_state, rocket_flight_tm->abk_angle, rocket_flight_tm->nas_n, rocket_flight_tm->nas_e, rocket_flight_tm->nas_d, rocket_flight_tm->nas_vn, rocket_flight_tm->nas_ve, rocket_flight_tm->nas_vd, rocket_flight_tm->nas_qx, rocket_flight_tm->nas_qy, rocket_flight_tm->nas_qz, rocket_flight_tm->nas_qw, rocket_flight_tm->nas_bias_x, rocket_flight_tm->nas_bias_y, rocket_flight_tm->nas_bias_z, rocket_flight_tm->battery_voltage, rocket_flight_tm->cam_battery_voltage, rocket_flight_tm->temperature);
 #else
     _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_ROCKET_FLIGHT_TM, (const char *)rocket_flight_tm, MAVLINK_MSG_ID_ROCKET_FLIGHT_TM_MIN_LEN, MAVLINK_MSG_ID_ROCKET_FLIGHT_TM_LEN, MAVLINK_MSG_ID_ROCKET_FLIGHT_TM_CRC);
 #endif
@@ -680,7 +692,7 @@ static inline void mavlink_msg_rocket_flight_tm_send_struct(mavlink_channel_t ch
   is usually the receive buffer for the channel, and allows a reply to an
   incoming message with minimum stack space usage.
  */
-static inline void mavlink_msg_rocket_flight_tm_send_buf(mavlink_message_t *msgbuf, mavlink_channel_t chan,  uint64_t timestamp, float pressure_ada, float pressure_digi, float pressure_static, float pressure_dpl, float airspeed_pitot, float altitude_agl, float ada_vert_speed, float mea_mass, float mea_apogee, float acc_x, float acc_y, float acc_z, float gyro_x, float gyro_y, float gyro_z, float mag_x, float mag_y, float mag_z, float vn100_qx, float vn100_qy, float vn100_qz, float vn100_qw, uint8_t gps_fix, float gps_lat, float gps_lon, float gps_alt, float abk_angle, float nas_n, float nas_e, float nas_d, float nas_vn, float nas_ve, float nas_vd, float nas_qx, float nas_qy, float nas_qz, float nas_qw, float nas_bias_x, float nas_bias_y, float nas_bias_z, float battery_voltage, float cam_battery_voltage, float temperature)
+static inline void mavlink_msg_rocket_flight_tm_send_buf(mavlink_message_t *msgbuf, mavlink_channel_t chan,  uint64_t timestamp, float pressure_ada, float pressure_digi, float pressure_static, float pressure_dpl, float airspeed_pitot, float altitude_agl, float ada_vert_speed, float mea_mass, float mea_apogee, float acc_x, float acc_y, float acc_z, float gyro_x, float gyro_y, float gyro_z, float mag_x, float mag_y, float mag_z, float vn100_qx, float vn100_qy, float vn100_qz, float vn100_qw, uint8_t gps_fix, float gps_lat, float gps_lon, float gps_alt, uint8_t fmm_state, float abk_angle, float nas_n, float nas_e, float nas_d, float nas_vn, float nas_ve, float nas_vd, float nas_qx, float nas_qy, float nas_qz, float nas_qw, float nas_bias_x, float nas_bias_y, float nas_bias_z, float battery_voltage, float cam_battery_voltage, float temperature)
 {
 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
     char *buf = (char *)msgbuf;
@@ -728,6 +740,7 @@ static inline void mavlink_msg_rocket_flight_tm_send_buf(mavlink_message_t *msgb
     _mav_put_float(buf, 168, cam_battery_voltage);
     _mav_put_float(buf, 172, temperature);
     _mav_put_uint8_t(buf, 176, gps_fix);
+    _mav_put_uint8_t(buf, 177, fmm_state);
 
     _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_ROCKET_FLIGHT_TM, buf, MAVLINK_MSG_ID_ROCKET_FLIGHT_TM_MIN_LEN, MAVLINK_MSG_ID_ROCKET_FLIGHT_TM_LEN, MAVLINK_MSG_ID_ROCKET_FLIGHT_TM_CRC);
 #else
@@ -776,6 +789,7 @@ static inline void mavlink_msg_rocket_flight_tm_send_buf(mavlink_message_t *msgb
     packet->cam_battery_voltage = cam_battery_voltage;
     packet->temperature = temperature;
     packet->gps_fix = gps_fix;
+    packet->fmm_state = fmm_state;
 
     _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_ROCKET_FLIGHT_TM, (const char *)packet, MAVLINK_MSG_ID_ROCKET_FLIGHT_TM_MIN_LEN, MAVLINK_MSG_ID_ROCKET_FLIGHT_TM_LEN, MAVLINK_MSG_ID_ROCKET_FLIGHT_TM_CRC);
 #endif
@@ -1057,6 +1071,16 @@ static inline float mavlink_msg_rocket_flight_tm_get_gps_alt(const mavlink_messa
     return _MAV_RETURN_float(msg,  104);
 }
 
+/**
+ * @brief Get field fmm_state from rocket_flight_tm message
+ *
+ * @return  Flight Mode Manager State
+ */
+static inline uint8_t mavlink_msg_rocket_flight_tm_get_fmm_state(const mavlink_message_t* msg)
+{
+    return _MAV_RETURN_uint8_t(msg,  177);
+}
+
 /**
  * @brief Get field abk_angle from rocket_flight_tm message
  *
@@ -1280,6 +1304,7 @@ static inline void mavlink_msg_rocket_flight_tm_decode(const mavlink_message_t*
     rocket_flight_tm->cam_battery_voltage = mavlink_msg_rocket_flight_tm_get_cam_battery_voltage(msg);
     rocket_flight_tm->temperature = mavlink_msg_rocket_flight_tm_get_temperature(msg);
     rocket_flight_tm->gps_fix = mavlink_msg_rocket_flight_tm_get_gps_fix(msg);
+    rocket_flight_tm->fmm_state = mavlink_msg_rocket_flight_tm_get_fmm_state(msg);
 #else
         uint8_t len = msg->len < MAVLINK_MSG_ID_ROCKET_FLIGHT_TM_LEN? msg->len : MAVLINK_MSG_ID_ROCKET_FLIGHT_TM_LEN;
         memset(rocket_flight_tm, 0, MAVLINK_MSG_ID_ROCKET_FLIGHT_TM_LEN);
diff --git a/mavlink_lib/lyra/mavlink_msg_rocket_stats_tm.h b/mavlink_lib/lyra/mavlink_msg_rocket_stats_tm.h
index 1926c164730674b7ce42db554e3ea01ab89efa5d..a80c315fc9880a1ead77f8d828b38bed87bc6d41 100644
--- a/mavlink_lib/lyra/mavlink_msg_rocket_stats_tm.h
+++ b/mavlink_lib/lyra/mavlink_msg_rocket_stats_tm.h
@@ -5,10 +5,12 @@
 
 
 typedef struct __mavlink_rocket_stats_tm_t {
+ uint64_t timestamp; /*< [us] Timestamp in microseconds*/
  uint64_t liftoff_ts; /*< [us] System clock at liftoff*/
  uint64_t liftoff_max_acc_ts; /*< [us] System clock at the maximum liftoff acceleration*/
  uint64_t max_speed_ts; /*< [us] System clock at max speed*/
  uint64_t max_mach_ts; /*<  System clock at maximum measured mach*/
+ uint64_t shutdown_ts; /*<  System clock at shutdown*/
  uint64_t apogee_ts; /*< [us] System clock at apogee*/
  uint64_t apogee_max_acc_ts; /*< [us] System clock at max acceleration after apogee*/
  uint64_t dpl_ts; /*< [us] System clock at main deployment*/
@@ -18,6 +20,7 @@ typedef struct __mavlink_rocket_stats_tm_t {
  float max_speed; /*< [m/s] Max measured speed*/
  float max_speed_altitude; /*< [m] Altitude at max speed*/
  float max_mach; /*<  Maximum measured mach*/
+ float shutdown_alt; /*<  Altitude at shutdown*/
  float apogee_lat; /*< [deg] Apogee latitude*/
  float apogee_lon; /*< [deg] Apogee longitude*/
  float apogee_alt; /*< [m] Apogee altitude*/
@@ -34,7 +37,6 @@ typedef struct __mavlink_rocket_stats_tm_t {
  int32_t log_good; /*<  0 if log failed, 1 otherwise*/
  int16_t log_number; /*<  Currently active log file, -1 if the logger is inactive*/
  uint8_t ada_state; /*<  ADA Controller State*/
- uint8_t fmm_state; /*<  Flight Mode Manager State*/
  uint8_t abk_state; /*<  Airbrake FSM state*/
  uint8_t nas_state; /*<  NAS FSM State*/
  uint8_t mea_state; /*<  MEA Controller State*/
@@ -50,13 +52,13 @@ typedef struct __mavlink_rocket_stats_tm_t {
  uint8_t hil_state; /*<  1 if the board is currently in HIL mode*/
 } mavlink_rocket_stats_tm_t;
 
-#define MAVLINK_MSG_ID_ROCKET_STATS_TM_LEN 161
-#define MAVLINK_MSG_ID_ROCKET_STATS_TM_MIN_LEN 161
-#define MAVLINK_MSG_ID_210_LEN 161
-#define MAVLINK_MSG_ID_210_MIN_LEN 161
+#define MAVLINK_MSG_ID_ROCKET_STATS_TM_LEN 180
+#define MAVLINK_MSG_ID_ROCKET_STATS_TM_MIN_LEN 180
+#define MAVLINK_MSG_ID_210_LEN 180
+#define MAVLINK_MSG_ID_210_MIN_LEN 180
 
-#define MAVLINK_MSG_ID_ROCKET_STATS_TM_CRC 14
-#define MAVLINK_MSG_ID_210_CRC 14
+#define MAVLINK_MSG_ID_ROCKET_STATS_TM_CRC 195
+#define MAVLINK_MSG_ID_210_CRC 195
 
 
 
@@ -64,99 +66,103 @@ typedef struct __mavlink_rocket_stats_tm_t {
 #define MAVLINK_MESSAGE_INFO_ROCKET_STATS_TM { \
     210, \
     "ROCKET_STATS_TM", \
-    43, \
-    {  { "liftoff_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 0, offsetof(mavlink_rocket_stats_tm_t, liftoff_ts) }, \
-         { "liftoff_max_acc_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 8, offsetof(mavlink_rocket_stats_tm_t, liftoff_max_acc_ts) }, \
-         { "liftoff_max_acc", NULL, MAVLINK_TYPE_FLOAT, 0, 72, offsetof(mavlink_rocket_stats_tm_t, liftoff_max_acc) }, \
-         { "max_speed_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 16, offsetof(mavlink_rocket_stats_tm_t, max_speed_ts) }, \
-         { "max_speed", NULL, MAVLINK_TYPE_FLOAT, 0, 76, offsetof(mavlink_rocket_stats_tm_t, max_speed) }, \
-         { "max_speed_altitude", NULL, MAVLINK_TYPE_FLOAT, 0, 80, offsetof(mavlink_rocket_stats_tm_t, max_speed_altitude) }, \
-         { "max_mach_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 24, offsetof(mavlink_rocket_stats_tm_t, max_mach_ts) }, \
-         { "max_mach", NULL, MAVLINK_TYPE_FLOAT, 0, 84, offsetof(mavlink_rocket_stats_tm_t, max_mach) }, \
-         { "apogee_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 32, offsetof(mavlink_rocket_stats_tm_t, apogee_ts) }, \
-         { "apogee_lat", NULL, MAVLINK_TYPE_FLOAT, 0, 88, offsetof(mavlink_rocket_stats_tm_t, apogee_lat) }, \
-         { "apogee_lon", NULL, MAVLINK_TYPE_FLOAT, 0, 92, offsetof(mavlink_rocket_stats_tm_t, apogee_lon) }, \
-         { "apogee_alt", NULL, MAVLINK_TYPE_FLOAT, 0, 96, offsetof(mavlink_rocket_stats_tm_t, apogee_alt) }, \
-         { "apogee_max_acc_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 40, offsetof(mavlink_rocket_stats_tm_t, apogee_max_acc_ts) }, \
-         { "apogee_max_acc", NULL, MAVLINK_TYPE_FLOAT, 0, 100, offsetof(mavlink_rocket_stats_tm_t, apogee_max_acc) }, \
-         { "dpl_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 48, offsetof(mavlink_rocket_stats_tm_t, dpl_ts) }, \
-         { "dpl_alt", NULL, MAVLINK_TYPE_FLOAT, 0, 104, offsetof(mavlink_rocket_stats_tm_t, dpl_alt) }, \
-         { "dpl_max_acc_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 56, offsetof(mavlink_rocket_stats_tm_t, dpl_max_acc_ts) }, \
-         { "dpl_max_acc", NULL, MAVLINK_TYPE_FLOAT, 0, 108, offsetof(mavlink_rocket_stats_tm_t, dpl_max_acc) }, \
-         { "dpl_bay_max_pressure_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 64, offsetof(mavlink_rocket_stats_tm_t, dpl_bay_max_pressure_ts) }, \
-         { "dpl_bay_max_pressure", NULL, MAVLINK_TYPE_FLOAT, 0, 112, offsetof(mavlink_rocket_stats_tm_t, dpl_bay_max_pressure) }, \
-         { "ref_lat", NULL, MAVLINK_TYPE_FLOAT, 0, 116, offsetof(mavlink_rocket_stats_tm_t, ref_lat) }, \
-         { "ref_lon", NULL, MAVLINK_TYPE_FLOAT, 0, 120, offsetof(mavlink_rocket_stats_tm_t, ref_lon) }, \
-         { "ref_alt", NULL, MAVLINK_TYPE_FLOAT, 0, 124, offsetof(mavlink_rocket_stats_tm_t, ref_alt) }, \
-         { "cpu_load", NULL, MAVLINK_TYPE_FLOAT, 0, 128, offsetof(mavlink_rocket_stats_tm_t, cpu_load) }, \
-         { "free_heap", NULL, MAVLINK_TYPE_UINT32_T, 0, 132, offsetof(mavlink_rocket_stats_tm_t, free_heap) }, \
-         { "ada_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 146, offsetof(mavlink_rocket_stats_tm_t, ada_state) }, \
-         { "fmm_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 147, offsetof(mavlink_rocket_stats_tm_t, fmm_state) }, \
-         { "abk_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 148, offsetof(mavlink_rocket_stats_tm_t, abk_state) }, \
-         { "nas_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 149, offsetof(mavlink_rocket_stats_tm_t, nas_state) }, \
-         { "mea_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 150, offsetof(mavlink_rocket_stats_tm_t, mea_state) }, \
-         { "exp_angle", NULL, MAVLINK_TYPE_FLOAT, 0, 136, offsetof(mavlink_rocket_stats_tm_t, exp_angle) }, \
-         { "pin_launch", NULL, MAVLINK_TYPE_UINT8_T, 0, 151, offsetof(mavlink_rocket_stats_tm_t, pin_launch) }, \
-         { "pin_nosecone", NULL, MAVLINK_TYPE_UINT8_T, 0, 152, offsetof(mavlink_rocket_stats_tm_t, pin_nosecone) }, \
-         { "pin_expulsion", NULL, MAVLINK_TYPE_UINT8_T, 0, 153, offsetof(mavlink_rocket_stats_tm_t, pin_expulsion) }, \
-         { "cutter_presence", NULL, MAVLINK_TYPE_UINT8_T, 0, 154, offsetof(mavlink_rocket_stats_tm_t, cutter_presence) }, \
-         { "log_number", NULL, MAVLINK_TYPE_INT16_T, 0, 144, offsetof(mavlink_rocket_stats_tm_t, log_number) }, \
-         { "log_good", NULL, MAVLINK_TYPE_INT32_T, 0, 140, offsetof(mavlink_rocket_stats_tm_t, log_good) }, \
-         { "payload_board_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 155, offsetof(mavlink_rocket_stats_tm_t, payload_board_state) }, \
-         { "motor_board_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 156, offsetof(mavlink_rocket_stats_tm_t, motor_board_state) }, \
-         { "payload_can_status", NULL, MAVLINK_TYPE_UINT8_T, 0, 157, offsetof(mavlink_rocket_stats_tm_t, payload_can_status) }, \
-         { "motor_can_status", NULL, MAVLINK_TYPE_UINT8_T, 0, 158, offsetof(mavlink_rocket_stats_tm_t, motor_can_status) }, \
-         { "rig_can_status", NULL, MAVLINK_TYPE_UINT8_T, 0, 159, offsetof(mavlink_rocket_stats_tm_t, rig_can_status) }, \
-         { "hil_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 160, offsetof(mavlink_rocket_stats_tm_t, hil_state) }, \
+    45, \
+    {  { "timestamp", NULL, MAVLINK_TYPE_UINT64_T, 0, 0, offsetof(mavlink_rocket_stats_tm_t, timestamp) }, \
+         { "liftoff_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 8, offsetof(mavlink_rocket_stats_tm_t, liftoff_ts) }, \
+         { "liftoff_max_acc_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 16, offsetof(mavlink_rocket_stats_tm_t, liftoff_max_acc_ts) }, \
+         { "liftoff_max_acc", NULL, MAVLINK_TYPE_FLOAT, 0, 88, offsetof(mavlink_rocket_stats_tm_t, liftoff_max_acc) }, \
+         { "max_speed_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 24, offsetof(mavlink_rocket_stats_tm_t, max_speed_ts) }, \
+         { "max_speed", NULL, MAVLINK_TYPE_FLOAT, 0, 92, offsetof(mavlink_rocket_stats_tm_t, max_speed) }, \
+         { "max_speed_altitude", NULL, MAVLINK_TYPE_FLOAT, 0, 96, offsetof(mavlink_rocket_stats_tm_t, max_speed_altitude) }, \
+         { "max_mach_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 32, offsetof(mavlink_rocket_stats_tm_t, max_mach_ts) }, \
+         { "max_mach", NULL, MAVLINK_TYPE_FLOAT, 0, 100, offsetof(mavlink_rocket_stats_tm_t, max_mach) }, \
+         { "shutdown_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 40, offsetof(mavlink_rocket_stats_tm_t, shutdown_ts) }, \
+         { "shutdown_alt", NULL, MAVLINK_TYPE_FLOAT, 0, 104, offsetof(mavlink_rocket_stats_tm_t, shutdown_alt) }, \
+         { "apogee_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 48, offsetof(mavlink_rocket_stats_tm_t, apogee_ts) }, \
+         { "apogee_lat", NULL, MAVLINK_TYPE_FLOAT, 0, 108, offsetof(mavlink_rocket_stats_tm_t, apogee_lat) }, \
+         { "apogee_lon", NULL, MAVLINK_TYPE_FLOAT, 0, 112, offsetof(mavlink_rocket_stats_tm_t, apogee_lon) }, \
+         { "apogee_alt", NULL, MAVLINK_TYPE_FLOAT, 0, 116, offsetof(mavlink_rocket_stats_tm_t, apogee_alt) }, \
+         { "apogee_max_acc_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 56, offsetof(mavlink_rocket_stats_tm_t, apogee_max_acc_ts) }, \
+         { "apogee_max_acc", NULL, MAVLINK_TYPE_FLOAT, 0, 120, offsetof(mavlink_rocket_stats_tm_t, apogee_max_acc) }, \
+         { "dpl_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 64, offsetof(mavlink_rocket_stats_tm_t, dpl_ts) }, \
+         { "dpl_alt", NULL, MAVLINK_TYPE_FLOAT, 0, 124, offsetof(mavlink_rocket_stats_tm_t, dpl_alt) }, \
+         { "dpl_max_acc_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 72, offsetof(mavlink_rocket_stats_tm_t, dpl_max_acc_ts) }, \
+         { "dpl_max_acc", NULL, MAVLINK_TYPE_FLOAT, 0, 128, offsetof(mavlink_rocket_stats_tm_t, dpl_max_acc) }, \
+         { "dpl_bay_max_pressure_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 80, offsetof(mavlink_rocket_stats_tm_t, dpl_bay_max_pressure_ts) }, \
+         { "dpl_bay_max_pressure", NULL, MAVLINK_TYPE_FLOAT, 0, 132, offsetof(mavlink_rocket_stats_tm_t, dpl_bay_max_pressure) }, \
+         { "ref_lat", NULL, MAVLINK_TYPE_FLOAT, 0, 136, offsetof(mavlink_rocket_stats_tm_t, ref_lat) }, \
+         { "ref_lon", NULL, MAVLINK_TYPE_FLOAT, 0, 140, offsetof(mavlink_rocket_stats_tm_t, ref_lon) }, \
+         { "ref_alt", NULL, MAVLINK_TYPE_FLOAT, 0, 144, offsetof(mavlink_rocket_stats_tm_t, ref_alt) }, \
+         { "cpu_load", NULL, MAVLINK_TYPE_FLOAT, 0, 148, offsetof(mavlink_rocket_stats_tm_t, cpu_load) }, \
+         { "free_heap", NULL, MAVLINK_TYPE_UINT32_T, 0, 152, offsetof(mavlink_rocket_stats_tm_t, free_heap) }, \
+         { "ada_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 166, offsetof(mavlink_rocket_stats_tm_t, ada_state) }, \
+         { "abk_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 167, offsetof(mavlink_rocket_stats_tm_t, abk_state) }, \
+         { "nas_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 168, offsetof(mavlink_rocket_stats_tm_t, nas_state) }, \
+         { "mea_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 169, offsetof(mavlink_rocket_stats_tm_t, mea_state) }, \
+         { "exp_angle", NULL, MAVLINK_TYPE_FLOAT, 0, 156, offsetof(mavlink_rocket_stats_tm_t, exp_angle) }, \
+         { "pin_launch", NULL, MAVLINK_TYPE_UINT8_T, 0, 170, offsetof(mavlink_rocket_stats_tm_t, pin_launch) }, \
+         { "pin_nosecone", NULL, MAVLINK_TYPE_UINT8_T, 0, 171, offsetof(mavlink_rocket_stats_tm_t, pin_nosecone) }, \
+         { "pin_expulsion", NULL, MAVLINK_TYPE_UINT8_T, 0, 172, offsetof(mavlink_rocket_stats_tm_t, pin_expulsion) }, \
+         { "cutter_presence", NULL, MAVLINK_TYPE_UINT8_T, 0, 173, offsetof(mavlink_rocket_stats_tm_t, cutter_presence) }, \
+         { "log_number", NULL, MAVLINK_TYPE_INT16_T, 0, 164, offsetof(mavlink_rocket_stats_tm_t, log_number) }, \
+         { "log_good", NULL, MAVLINK_TYPE_INT32_T, 0, 160, offsetof(mavlink_rocket_stats_tm_t, log_good) }, \
+         { "payload_board_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 174, offsetof(mavlink_rocket_stats_tm_t, payload_board_state) }, \
+         { "motor_board_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 175, offsetof(mavlink_rocket_stats_tm_t, motor_board_state) }, \
+         { "payload_can_status", NULL, MAVLINK_TYPE_UINT8_T, 0, 176, offsetof(mavlink_rocket_stats_tm_t, payload_can_status) }, \
+         { "motor_can_status", NULL, MAVLINK_TYPE_UINT8_T, 0, 177, offsetof(mavlink_rocket_stats_tm_t, motor_can_status) }, \
+         { "rig_can_status", NULL, MAVLINK_TYPE_UINT8_T, 0, 178, offsetof(mavlink_rocket_stats_tm_t, rig_can_status) }, \
+         { "hil_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 179, offsetof(mavlink_rocket_stats_tm_t, hil_state) }, \
          } \
 }
 #else
 #define MAVLINK_MESSAGE_INFO_ROCKET_STATS_TM { \
     "ROCKET_STATS_TM", \
-    43, \
-    {  { "liftoff_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 0, offsetof(mavlink_rocket_stats_tm_t, liftoff_ts) }, \
-         { "liftoff_max_acc_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 8, offsetof(mavlink_rocket_stats_tm_t, liftoff_max_acc_ts) }, \
-         { "liftoff_max_acc", NULL, MAVLINK_TYPE_FLOAT, 0, 72, offsetof(mavlink_rocket_stats_tm_t, liftoff_max_acc) }, \
-         { "max_speed_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 16, offsetof(mavlink_rocket_stats_tm_t, max_speed_ts) }, \
-         { "max_speed", NULL, MAVLINK_TYPE_FLOAT, 0, 76, offsetof(mavlink_rocket_stats_tm_t, max_speed) }, \
-         { "max_speed_altitude", NULL, MAVLINK_TYPE_FLOAT, 0, 80, offsetof(mavlink_rocket_stats_tm_t, max_speed_altitude) }, \
-         { "max_mach_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 24, offsetof(mavlink_rocket_stats_tm_t, max_mach_ts) }, \
-         { "max_mach", NULL, MAVLINK_TYPE_FLOAT, 0, 84, offsetof(mavlink_rocket_stats_tm_t, max_mach) }, \
-         { "apogee_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 32, offsetof(mavlink_rocket_stats_tm_t, apogee_ts) }, \
-         { "apogee_lat", NULL, MAVLINK_TYPE_FLOAT, 0, 88, offsetof(mavlink_rocket_stats_tm_t, apogee_lat) }, \
-         { "apogee_lon", NULL, MAVLINK_TYPE_FLOAT, 0, 92, offsetof(mavlink_rocket_stats_tm_t, apogee_lon) }, \
-         { "apogee_alt", NULL, MAVLINK_TYPE_FLOAT, 0, 96, offsetof(mavlink_rocket_stats_tm_t, apogee_alt) }, \
-         { "apogee_max_acc_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 40, offsetof(mavlink_rocket_stats_tm_t, apogee_max_acc_ts) }, \
-         { "apogee_max_acc", NULL, MAVLINK_TYPE_FLOAT, 0, 100, offsetof(mavlink_rocket_stats_tm_t, apogee_max_acc) }, \
-         { "dpl_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 48, offsetof(mavlink_rocket_stats_tm_t, dpl_ts) }, \
-         { "dpl_alt", NULL, MAVLINK_TYPE_FLOAT, 0, 104, offsetof(mavlink_rocket_stats_tm_t, dpl_alt) }, \
-         { "dpl_max_acc_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 56, offsetof(mavlink_rocket_stats_tm_t, dpl_max_acc_ts) }, \
-         { "dpl_max_acc", NULL, MAVLINK_TYPE_FLOAT, 0, 108, offsetof(mavlink_rocket_stats_tm_t, dpl_max_acc) }, \
-         { "dpl_bay_max_pressure_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 64, offsetof(mavlink_rocket_stats_tm_t, dpl_bay_max_pressure_ts) }, \
-         { "dpl_bay_max_pressure", NULL, MAVLINK_TYPE_FLOAT, 0, 112, offsetof(mavlink_rocket_stats_tm_t, dpl_bay_max_pressure) }, \
-         { "ref_lat", NULL, MAVLINK_TYPE_FLOAT, 0, 116, offsetof(mavlink_rocket_stats_tm_t, ref_lat) }, \
-         { "ref_lon", NULL, MAVLINK_TYPE_FLOAT, 0, 120, offsetof(mavlink_rocket_stats_tm_t, ref_lon) }, \
-         { "ref_alt", NULL, MAVLINK_TYPE_FLOAT, 0, 124, offsetof(mavlink_rocket_stats_tm_t, ref_alt) }, \
-         { "cpu_load", NULL, MAVLINK_TYPE_FLOAT, 0, 128, offsetof(mavlink_rocket_stats_tm_t, cpu_load) }, \
-         { "free_heap", NULL, MAVLINK_TYPE_UINT32_T, 0, 132, offsetof(mavlink_rocket_stats_tm_t, free_heap) }, \
-         { "ada_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 146, offsetof(mavlink_rocket_stats_tm_t, ada_state) }, \
-         { "fmm_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 147, offsetof(mavlink_rocket_stats_tm_t, fmm_state) }, \
-         { "abk_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 148, offsetof(mavlink_rocket_stats_tm_t, abk_state) }, \
-         { "nas_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 149, offsetof(mavlink_rocket_stats_tm_t, nas_state) }, \
-         { "mea_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 150, offsetof(mavlink_rocket_stats_tm_t, mea_state) }, \
-         { "exp_angle", NULL, MAVLINK_TYPE_FLOAT, 0, 136, offsetof(mavlink_rocket_stats_tm_t, exp_angle) }, \
-         { "pin_launch", NULL, MAVLINK_TYPE_UINT8_T, 0, 151, offsetof(mavlink_rocket_stats_tm_t, pin_launch) }, \
-         { "pin_nosecone", NULL, MAVLINK_TYPE_UINT8_T, 0, 152, offsetof(mavlink_rocket_stats_tm_t, pin_nosecone) }, \
-         { "pin_expulsion", NULL, MAVLINK_TYPE_UINT8_T, 0, 153, offsetof(mavlink_rocket_stats_tm_t, pin_expulsion) }, \
-         { "cutter_presence", NULL, MAVLINK_TYPE_UINT8_T, 0, 154, offsetof(mavlink_rocket_stats_tm_t, cutter_presence) }, \
-         { "log_number", NULL, MAVLINK_TYPE_INT16_T, 0, 144, offsetof(mavlink_rocket_stats_tm_t, log_number) }, \
-         { "log_good", NULL, MAVLINK_TYPE_INT32_T, 0, 140, offsetof(mavlink_rocket_stats_tm_t, log_good) }, \
-         { "payload_board_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 155, offsetof(mavlink_rocket_stats_tm_t, payload_board_state) }, \
-         { "motor_board_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 156, offsetof(mavlink_rocket_stats_tm_t, motor_board_state) }, \
-         { "payload_can_status", NULL, MAVLINK_TYPE_UINT8_T, 0, 157, offsetof(mavlink_rocket_stats_tm_t, payload_can_status) }, \
-         { "motor_can_status", NULL, MAVLINK_TYPE_UINT8_T, 0, 158, offsetof(mavlink_rocket_stats_tm_t, motor_can_status) }, \
-         { "rig_can_status", NULL, MAVLINK_TYPE_UINT8_T, 0, 159, offsetof(mavlink_rocket_stats_tm_t, rig_can_status) }, \
-         { "hil_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 160, offsetof(mavlink_rocket_stats_tm_t, hil_state) }, \
+    45, \
+    {  { "timestamp", NULL, MAVLINK_TYPE_UINT64_T, 0, 0, offsetof(mavlink_rocket_stats_tm_t, timestamp) }, \
+         { "liftoff_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 8, offsetof(mavlink_rocket_stats_tm_t, liftoff_ts) }, \
+         { "liftoff_max_acc_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 16, offsetof(mavlink_rocket_stats_tm_t, liftoff_max_acc_ts) }, \
+         { "liftoff_max_acc", NULL, MAVLINK_TYPE_FLOAT, 0, 88, offsetof(mavlink_rocket_stats_tm_t, liftoff_max_acc) }, \
+         { "max_speed_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 24, offsetof(mavlink_rocket_stats_tm_t, max_speed_ts) }, \
+         { "max_speed", NULL, MAVLINK_TYPE_FLOAT, 0, 92, offsetof(mavlink_rocket_stats_tm_t, max_speed) }, \
+         { "max_speed_altitude", NULL, MAVLINK_TYPE_FLOAT, 0, 96, offsetof(mavlink_rocket_stats_tm_t, max_speed_altitude) }, \
+         { "max_mach_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 32, offsetof(mavlink_rocket_stats_tm_t, max_mach_ts) }, \
+         { "max_mach", NULL, MAVLINK_TYPE_FLOAT, 0, 100, offsetof(mavlink_rocket_stats_tm_t, max_mach) }, \
+         { "shutdown_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 40, offsetof(mavlink_rocket_stats_tm_t, shutdown_ts) }, \
+         { "shutdown_alt", NULL, MAVLINK_TYPE_FLOAT, 0, 104, offsetof(mavlink_rocket_stats_tm_t, shutdown_alt) }, \
+         { "apogee_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 48, offsetof(mavlink_rocket_stats_tm_t, apogee_ts) }, \
+         { "apogee_lat", NULL, MAVLINK_TYPE_FLOAT, 0, 108, offsetof(mavlink_rocket_stats_tm_t, apogee_lat) }, \
+         { "apogee_lon", NULL, MAVLINK_TYPE_FLOAT, 0, 112, offsetof(mavlink_rocket_stats_tm_t, apogee_lon) }, \
+         { "apogee_alt", NULL, MAVLINK_TYPE_FLOAT, 0, 116, offsetof(mavlink_rocket_stats_tm_t, apogee_alt) }, \
+         { "apogee_max_acc_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 56, offsetof(mavlink_rocket_stats_tm_t, apogee_max_acc_ts) }, \
+         { "apogee_max_acc", NULL, MAVLINK_TYPE_FLOAT, 0, 120, offsetof(mavlink_rocket_stats_tm_t, apogee_max_acc) }, \
+         { "dpl_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 64, offsetof(mavlink_rocket_stats_tm_t, dpl_ts) }, \
+         { "dpl_alt", NULL, MAVLINK_TYPE_FLOAT, 0, 124, offsetof(mavlink_rocket_stats_tm_t, dpl_alt) }, \
+         { "dpl_max_acc_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 72, offsetof(mavlink_rocket_stats_tm_t, dpl_max_acc_ts) }, \
+         { "dpl_max_acc", NULL, MAVLINK_TYPE_FLOAT, 0, 128, offsetof(mavlink_rocket_stats_tm_t, dpl_max_acc) }, \
+         { "dpl_bay_max_pressure_ts", NULL, MAVLINK_TYPE_UINT64_T, 0, 80, offsetof(mavlink_rocket_stats_tm_t, dpl_bay_max_pressure_ts) }, \
+         { "dpl_bay_max_pressure", NULL, MAVLINK_TYPE_FLOAT, 0, 132, offsetof(mavlink_rocket_stats_tm_t, dpl_bay_max_pressure) }, \
+         { "ref_lat", NULL, MAVLINK_TYPE_FLOAT, 0, 136, offsetof(mavlink_rocket_stats_tm_t, ref_lat) }, \
+         { "ref_lon", NULL, MAVLINK_TYPE_FLOAT, 0, 140, offsetof(mavlink_rocket_stats_tm_t, ref_lon) }, \
+         { "ref_alt", NULL, MAVLINK_TYPE_FLOAT, 0, 144, offsetof(mavlink_rocket_stats_tm_t, ref_alt) }, \
+         { "cpu_load", NULL, MAVLINK_TYPE_FLOAT, 0, 148, offsetof(mavlink_rocket_stats_tm_t, cpu_load) }, \
+         { "free_heap", NULL, MAVLINK_TYPE_UINT32_T, 0, 152, offsetof(mavlink_rocket_stats_tm_t, free_heap) }, \
+         { "ada_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 166, offsetof(mavlink_rocket_stats_tm_t, ada_state) }, \
+         { "abk_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 167, offsetof(mavlink_rocket_stats_tm_t, abk_state) }, \
+         { "nas_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 168, offsetof(mavlink_rocket_stats_tm_t, nas_state) }, \
+         { "mea_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 169, offsetof(mavlink_rocket_stats_tm_t, mea_state) }, \
+         { "exp_angle", NULL, MAVLINK_TYPE_FLOAT, 0, 156, offsetof(mavlink_rocket_stats_tm_t, exp_angle) }, \
+         { "pin_launch", NULL, MAVLINK_TYPE_UINT8_T, 0, 170, offsetof(mavlink_rocket_stats_tm_t, pin_launch) }, \
+         { "pin_nosecone", NULL, MAVLINK_TYPE_UINT8_T, 0, 171, offsetof(mavlink_rocket_stats_tm_t, pin_nosecone) }, \
+         { "pin_expulsion", NULL, MAVLINK_TYPE_UINT8_T, 0, 172, offsetof(mavlink_rocket_stats_tm_t, pin_expulsion) }, \
+         { "cutter_presence", NULL, MAVLINK_TYPE_UINT8_T, 0, 173, offsetof(mavlink_rocket_stats_tm_t, cutter_presence) }, \
+         { "log_number", NULL, MAVLINK_TYPE_INT16_T, 0, 164, offsetof(mavlink_rocket_stats_tm_t, log_number) }, \
+         { "log_good", NULL, MAVLINK_TYPE_INT32_T, 0, 160, offsetof(mavlink_rocket_stats_tm_t, log_good) }, \
+         { "payload_board_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 174, offsetof(mavlink_rocket_stats_tm_t, payload_board_state) }, \
+         { "motor_board_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 175, offsetof(mavlink_rocket_stats_tm_t, motor_board_state) }, \
+         { "payload_can_status", NULL, MAVLINK_TYPE_UINT8_T, 0, 176, offsetof(mavlink_rocket_stats_tm_t, payload_can_status) }, \
+         { "motor_can_status", NULL, MAVLINK_TYPE_UINT8_T, 0, 177, offsetof(mavlink_rocket_stats_tm_t, motor_can_status) }, \
+         { "rig_can_status", NULL, MAVLINK_TYPE_UINT8_T, 0, 178, offsetof(mavlink_rocket_stats_tm_t, rig_can_status) }, \
+         { "hil_state", NULL, MAVLINK_TYPE_UINT8_T, 0, 179, offsetof(mavlink_rocket_stats_tm_t, hil_state) }, \
          } \
 }
 #endif
@@ -167,6 +173,7 @@ typedef struct __mavlink_rocket_stats_tm_t {
  * @param component_id ID of this component (e.g. 200 for IMU)
  * @param msg The MAVLink message to compress the data into
  *
+ * @param timestamp [us] Timestamp in microseconds
  * @param liftoff_ts [us] System clock at liftoff
  * @param liftoff_max_acc_ts [us] System clock at the maximum liftoff acceleration
  * @param liftoff_max_acc [m/s2] Maximum liftoff acceleration
@@ -175,6 +182,8 @@ typedef struct __mavlink_rocket_stats_tm_t {
  * @param max_speed_altitude [m] Altitude at max speed
  * @param max_mach_ts  System clock at maximum measured mach
  * @param max_mach  Maximum measured mach
+ * @param shutdown_ts  System clock at shutdown
+ * @param shutdown_alt  Altitude at shutdown
  * @param apogee_ts [us] System clock at apogee
  * @param apogee_lat [deg] Apogee latitude
  * @param apogee_lon [deg] Apogee longitude
@@ -193,7 +202,6 @@ typedef struct __mavlink_rocket_stats_tm_t {
  * @param cpu_load  CPU load in percentage
  * @param free_heap  Amount of available heap in memory
  * @param ada_state  ADA Controller State
- * @param fmm_state  Flight Mode Manager State
  * @param abk_state  Airbrake FSM state
  * @param nas_state  NAS FSM State
  * @param mea_state  MEA Controller State
@@ -213,61 +221,65 @@ typedef struct __mavlink_rocket_stats_tm_t {
  * @return length of the message in bytes (excluding serial stream start sign)
  */
 static inline uint16_t mavlink_msg_rocket_stats_tm_pack(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg,
-                               uint64_t liftoff_ts, uint64_t liftoff_max_acc_ts, float liftoff_max_acc, uint64_t max_speed_ts, float max_speed, float max_speed_altitude, uint64_t max_mach_ts, float max_mach, uint64_t apogee_ts, float apogee_lat, float apogee_lon, float apogee_alt, uint64_t apogee_max_acc_ts, float apogee_max_acc, uint64_t dpl_ts, float dpl_alt, uint64_t dpl_max_acc_ts, float dpl_max_acc, uint64_t dpl_bay_max_pressure_ts, float dpl_bay_max_pressure, float ref_lat, float ref_lon, float ref_alt, float cpu_load, uint32_t free_heap, uint8_t ada_state, uint8_t fmm_state, uint8_t abk_state, uint8_t nas_state, uint8_t mea_state, float exp_angle, uint8_t pin_launch, uint8_t pin_nosecone, uint8_t pin_expulsion, uint8_t cutter_presence, int16_t log_number, int32_t log_good, uint8_t payload_board_state, uint8_t motor_board_state, uint8_t payload_can_status, uint8_t motor_can_status, uint8_t rig_can_status, uint8_t hil_state)
+                               uint64_t timestamp, uint64_t liftoff_ts, uint64_t liftoff_max_acc_ts, float liftoff_max_acc, uint64_t max_speed_ts, float max_speed, float max_speed_altitude, uint64_t max_mach_ts, float max_mach, uint64_t shutdown_ts, float shutdown_alt, uint64_t apogee_ts, float apogee_lat, float apogee_lon, float apogee_alt, uint64_t apogee_max_acc_ts, float apogee_max_acc, uint64_t dpl_ts, float dpl_alt, uint64_t dpl_max_acc_ts, float dpl_max_acc, uint64_t dpl_bay_max_pressure_ts, float dpl_bay_max_pressure, float ref_lat, float ref_lon, float ref_alt, float cpu_load, uint32_t free_heap, uint8_t ada_state, uint8_t abk_state, uint8_t nas_state, uint8_t mea_state, float exp_angle, uint8_t pin_launch, uint8_t pin_nosecone, uint8_t pin_expulsion, uint8_t cutter_presence, int16_t log_number, int32_t log_good, uint8_t payload_board_state, uint8_t motor_board_state, uint8_t payload_can_status, uint8_t motor_can_status, uint8_t rig_can_status, uint8_t hil_state)
 {
 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
     char buf[MAVLINK_MSG_ID_ROCKET_STATS_TM_LEN];
-    _mav_put_uint64_t(buf, 0, liftoff_ts);
-    _mav_put_uint64_t(buf, 8, liftoff_max_acc_ts);
-    _mav_put_uint64_t(buf, 16, max_speed_ts);
-    _mav_put_uint64_t(buf, 24, max_mach_ts);
-    _mav_put_uint64_t(buf, 32, apogee_ts);
-    _mav_put_uint64_t(buf, 40, apogee_max_acc_ts);
-    _mav_put_uint64_t(buf, 48, dpl_ts);
-    _mav_put_uint64_t(buf, 56, dpl_max_acc_ts);
-    _mav_put_uint64_t(buf, 64, dpl_bay_max_pressure_ts);
-    _mav_put_float(buf, 72, liftoff_max_acc);
-    _mav_put_float(buf, 76, max_speed);
-    _mav_put_float(buf, 80, max_speed_altitude);
-    _mav_put_float(buf, 84, max_mach);
-    _mav_put_float(buf, 88, apogee_lat);
-    _mav_put_float(buf, 92, apogee_lon);
-    _mav_put_float(buf, 96, apogee_alt);
-    _mav_put_float(buf, 100, apogee_max_acc);
-    _mav_put_float(buf, 104, dpl_alt);
-    _mav_put_float(buf, 108, dpl_max_acc);
-    _mav_put_float(buf, 112, dpl_bay_max_pressure);
-    _mav_put_float(buf, 116, ref_lat);
-    _mav_put_float(buf, 120, ref_lon);
-    _mav_put_float(buf, 124, ref_alt);
-    _mav_put_float(buf, 128, cpu_load);
-    _mav_put_uint32_t(buf, 132, free_heap);
-    _mav_put_float(buf, 136, exp_angle);
-    _mav_put_int32_t(buf, 140, log_good);
-    _mav_put_int16_t(buf, 144, log_number);
-    _mav_put_uint8_t(buf, 146, ada_state);
-    _mav_put_uint8_t(buf, 147, fmm_state);
-    _mav_put_uint8_t(buf, 148, abk_state);
-    _mav_put_uint8_t(buf, 149, nas_state);
-    _mav_put_uint8_t(buf, 150, mea_state);
-    _mav_put_uint8_t(buf, 151, pin_launch);
-    _mav_put_uint8_t(buf, 152, pin_nosecone);
-    _mav_put_uint8_t(buf, 153, pin_expulsion);
-    _mav_put_uint8_t(buf, 154, cutter_presence);
-    _mav_put_uint8_t(buf, 155, payload_board_state);
-    _mav_put_uint8_t(buf, 156, motor_board_state);
-    _mav_put_uint8_t(buf, 157, payload_can_status);
-    _mav_put_uint8_t(buf, 158, motor_can_status);
-    _mav_put_uint8_t(buf, 159, rig_can_status);
-    _mav_put_uint8_t(buf, 160, hil_state);
+    _mav_put_uint64_t(buf, 0, timestamp);
+    _mav_put_uint64_t(buf, 8, liftoff_ts);
+    _mav_put_uint64_t(buf, 16, liftoff_max_acc_ts);
+    _mav_put_uint64_t(buf, 24, max_speed_ts);
+    _mav_put_uint64_t(buf, 32, max_mach_ts);
+    _mav_put_uint64_t(buf, 40, shutdown_ts);
+    _mav_put_uint64_t(buf, 48, apogee_ts);
+    _mav_put_uint64_t(buf, 56, apogee_max_acc_ts);
+    _mav_put_uint64_t(buf, 64, dpl_ts);
+    _mav_put_uint64_t(buf, 72, dpl_max_acc_ts);
+    _mav_put_uint64_t(buf, 80, dpl_bay_max_pressure_ts);
+    _mav_put_float(buf, 88, liftoff_max_acc);
+    _mav_put_float(buf, 92, max_speed);
+    _mav_put_float(buf, 96, max_speed_altitude);
+    _mav_put_float(buf, 100, max_mach);
+    _mav_put_float(buf, 104, shutdown_alt);
+    _mav_put_float(buf, 108, apogee_lat);
+    _mav_put_float(buf, 112, apogee_lon);
+    _mav_put_float(buf, 116, apogee_alt);
+    _mav_put_float(buf, 120, apogee_max_acc);
+    _mav_put_float(buf, 124, dpl_alt);
+    _mav_put_float(buf, 128, dpl_max_acc);
+    _mav_put_float(buf, 132, dpl_bay_max_pressure);
+    _mav_put_float(buf, 136, ref_lat);
+    _mav_put_float(buf, 140, ref_lon);
+    _mav_put_float(buf, 144, ref_alt);
+    _mav_put_float(buf, 148, cpu_load);
+    _mav_put_uint32_t(buf, 152, free_heap);
+    _mav_put_float(buf, 156, exp_angle);
+    _mav_put_int32_t(buf, 160, log_good);
+    _mav_put_int16_t(buf, 164, log_number);
+    _mav_put_uint8_t(buf, 166, ada_state);
+    _mav_put_uint8_t(buf, 167, abk_state);
+    _mav_put_uint8_t(buf, 168, nas_state);
+    _mav_put_uint8_t(buf, 169, mea_state);
+    _mav_put_uint8_t(buf, 170, pin_launch);
+    _mav_put_uint8_t(buf, 171, pin_nosecone);
+    _mav_put_uint8_t(buf, 172, pin_expulsion);
+    _mav_put_uint8_t(buf, 173, cutter_presence);
+    _mav_put_uint8_t(buf, 174, payload_board_state);
+    _mav_put_uint8_t(buf, 175, motor_board_state);
+    _mav_put_uint8_t(buf, 176, payload_can_status);
+    _mav_put_uint8_t(buf, 177, motor_can_status);
+    _mav_put_uint8_t(buf, 178, rig_can_status);
+    _mav_put_uint8_t(buf, 179, hil_state);
 
         memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_ROCKET_STATS_TM_LEN);
 #else
     mavlink_rocket_stats_tm_t packet;
+    packet.timestamp = timestamp;
     packet.liftoff_ts = liftoff_ts;
     packet.liftoff_max_acc_ts = liftoff_max_acc_ts;
     packet.max_speed_ts = max_speed_ts;
     packet.max_mach_ts = max_mach_ts;
+    packet.shutdown_ts = shutdown_ts;
     packet.apogee_ts = apogee_ts;
     packet.apogee_max_acc_ts = apogee_max_acc_ts;
     packet.dpl_ts = dpl_ts;
@@ -277,6 +289,7 @@ static inline uint16_t mavlink_msg_rocket_stats_tm_pack(uint8_t system_id, uint8
     packet.max_speed = max_speed;
     packet.max_speed_altitude = max_speed_altitude;
     packet.max_mach = max_mach;
+    packet.shutdown_alt = shutdown_alt;
     packet.apogee_lat = apogee_lat;
     packet.apogee_lon = apogee_lon;
     packet.apogee_alt = apogee_alt;
@@ -293,7 +306,6 @@ static inline uint16_t mavlink_msg_rocket_stats_tm_pack(uint8_t system_id, uint8
     packet.log_good = log_good;
     packet.log_number = log_number;
     packet.ada_state = ada_state;
-    packet.fmm_state = fmm_state;
     packet.abk_state = abk_state;
     packet.nas_state = nas_state;
     packet.mea_state = mea_state;
@@ -321,6 +333,7 @@ static inline uint16_t mavlink_msg_rocket_stats_tm_pack(uint8_t system_id, uint8
  * @param component_id ID of this component (e.g. 200 for IMU)
  * @param chan The MAVLink channel this message will be sent over
  * @param msg The MAVLink message to compress the data into
+ * @param timestamp [us] Timestamp in microseconds
  * @param liftoff_ts [us] System clock at liftoff
  * @param liftoff_max_acc_ts [us] System clock at the maximum liftoff acceleration
  * @param liftoff_max_acc [m/s2] Maximum liftoff acceleration
@@ -329,6 +342,8 @@ static inline uint16_t mavlink_msg_rocket_stats_tm_pack(uint8_t system_id, uint8
  * @param max_speed_altitude [m] Altitude at max speed
  * @param max_mach_ts  System clock at maximum measured mach
  * @param max_mach  Maximum measured mach
+ * @param shutdown_ts  System clock at shutdown
+ * @param shutdown_alt  Altitude at shutdown
  * @param apogee_ts [us] System clock at apogee
  * @param apogee_lat [deg] Apogee latitude
  * @param apogee_lon [deg] Apogee longitude
@@ -347,7 +362,6 @@ static inline uint16_t mavlink_msg_rocket_stats_tm_pack(uint8_t system_id, uint8
  * @param cpu_load  CPU load in percentage
  * @param free_heap  Amount of available heap in memory
  * @param ada_state  ADA Controller State
- * @param fmm_state  Flight Mode Manager State
  * @param abk_state  Airbrake FSM state
  * @param nas_state  NAS FSM State
  * @param mea_state  MEA Controller State
@@ -368,61 +382,65 @@ static inline uint16_t mavlink_msg_rocket_stats_tm_pack(uint8_t system_id, uint8
  */
 static inline uint16_t mavlink_msg_rocket_stats_tm_pack_chan(uint8_t system_id, uint8_t component_id, uint8_t chan,
                                mavlink_message_t* msg,
-                                   uint64_t liftoff_ts,uint64_t liftoff_max_acc_ts,float liftoff_max_acc,uint64_t max_speed_ts,float max_speed,float max_speed_altitude,uint64_t max_mach_ts,float max_mach,uint64_t apogee_ts,float apogee_lat,float apogee_lon,float apogee_alt,uint64_t apogee_max_acc_ts,float apogee_max_acc,uint64_t dpl_ts,float dpl_alt,uint64_t dpl_max_acc_ts,float dpl_max_acc,uint64_t dpl_bay_max_pressure_ts,float dpl_bay_max_pressure,float ref_lat,float ref_lon,float ref_alt,float cpu_load,uint32_t free_heap,uint8_t ada_state,uint8_t fmm_state,uint8_t abk_state,uint8_t nas_state,uint8_t mea_state,float exp_angle,uint8_t pin_launch,uint8_t pin_nosecone,uint8_t pin_expulsion,uint8_t cutter_presence,int16_t log_number,int32_t log_good,uint8_t payload_board_state,uint8_t motor_board_state,uint8_t payload_can_status,uint8_t motor_can_status,uint8_t rig_can_status,uint8_t hil_state)
+                                   uint64_t timestamp,uint64_t liftoff_ts,uint64_t liftoff_max_acc_ts,float liftoff_max_acc,uint64_t max_speed_ts,float max_speed,float max_speed_altitude,uint64_t max_mach_ts,float max_mach,uint64_t shutdown_ts,float shutdown_alt,uint64_t apogee_ts,float apogee_lat,float apogee_lon,float apogee_alt,uint64_t apogee_max_acc_ts,float apogee_max_acc,uint64_t dpl_ts,float dpl_alt,uint64_t dpl_max_acc_ts,float dpl_max_acc,uint64_t dpl_bay_max_pressure_ts,float dpl_bay_max_pressure,float ref_lat,float ref_lon,float ref_alt,float cpu_load,uint32_t free_heap,uint8_t ada_state,uint8_t abk_state,uint8_t nas_state,uint8_t mea_state,float exp_angle,uint8_t pin_launch,uint8_t pin_nosecone,uint8_t pin_expulsion,uint8_t cutter_presence,int16_t log_number,int32_t log_good,uint8_t payload_board_state,uint8_t motor_board_state,uint8_t payload_can_status,uint8_t motor_can_status,uint8_t rig_can_status,uint8_t hil_state)
 {
 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
     char buf[MAVLINK_MSG_ID_ROCKET_STATS_TM_LEN];
-    _mav_put_uint64_t(buf, 0, liftoff_ts);
-    _mav_put_uint64_t(buf, 8, liftoff_max_acc_ts);
-    _mav_put_uint64_t(buf, 16, max_speed_ts);
-    _mav_put_uint64_t(buf, 24, max_mach_ts);
-    _mav_put_uint64_t(buf, 32, apogee_ts);
-    _mav_put_uint64_t(buf, 40, apogee_max_acc_ts);
-    _mav_put_uint64_t(buf, 48, dpl_ts);
-    _mav_put_uint64_t(buf, 56, dpl_max_acc_ts);
-    _mav_put_uint64_t(buf, 64, dpl_bay_max_pressure_ts);
-    _mav_put_float(buf, 72, liftoff_max_acc);
-    _mav_put_float(buf, 76, max_speed);
-    _mav_put_float(buf, 80, max_speed_altitude);
-    _mav_put_float(buf, 84, max_mach);
-    _mav_put_float(buf, 88, apogee_lat);
-    _mav_put_float(buf, 92, apogee_lon);
-    _mav_put_float(buf, 96, apogee_alt);
-    _mav_put_float(buf, 100, apogee_max_acc);
-    _mav_put_float(buf, 104, dpl_alt);
-    _mav_put_float(buf, 108, dpl_max_acc);
-    _mav_put_float(buf, 112, dpl_bay_max_pressure);
-    _mav_put_float(buf, 116, ref_lat);
-    _mav_put_float(buf, 120, ref_lon);
-    _mav_put_float(buf, 124, ref_alt);
-    _mav_put_float(buf, 128, cpu_load);
-    _mav_put_uint32_t(buf, 132, free_heap);
-    _mav_put_float(buf, 136, exp_angle);
-    _mav_put_int32_t(buf, 140, log_good);
-    _mav_put_int16_t(buf, 144, log_number);
-    _mav_put_uint8_t(buf, 146, ada_state);
-    _mav_put_uint8_t(buf, 147, fmm_state);
-    _mav_put_uint8_t(buf, 148, abk_state);
-    _mav_put_uint8_t(buf, 149, nas_state);
-    _mav_put_uint8_t(buf, 150, mea_state);
-    _mav_put_uint8_t(buf, 151, pin_launch);
-    _mav_put_uint8_t(buf, 152, pin_nosecone);
-    _mav_put_uint8_t(buf, 153, pin_expulsion);
-    _mav_put_uint8_t(buf, 154, cutter_presence);
-    _mav_put_uint8_t(buf, 155, payload_board_state);
-    _mav_put_uint8_t(buf, 156, motor_board_state);
-    _mav_put_uint8_t(buf, 157, payload_can_status);
-    _mav_put_uint8_t(buf, 158, motor_can_status);
-    _mav_put_uint8_t(buf, 159, rig_can_status);
-    _mav_put_uint8_t(buf, 160, hil_state);
+    _mav_put_uint64_t(buf, 0, timestamp);
+    _mav_put_uint64_t(buf, 8, liftoff_ts);
+    _mav_put_uint64_t(buf, 16, liftoff_max_acc_ts);
+    _mav_put_uint64_t(buf, 24, max_speed_ts);
+    _mav_put_uint64_t(buf, 32, max_mach_ts);
+    _mav_put_uint64_t(buf, 40, shutdown_ts);
+    _mav_put_uint64_t(buf, 48, apogee_ts);
+    _mav_put_uint64_t(buf, 56, apogee_max_acc_ts);
+    _mav_put_uint64_t(buf, 64, dpl_ts);
+    _mav_put_uint64_t(buf, 72, dpl_max_acc_ts);
+    _mav_put_uint64_t(buf, 80, dpl_bay_max_pressure_ts);
+    _mav_put_float(buf, 88, liftoff_max_acc);
+    _mav_put_float(buf, 92, max_speed);
+    _mav_put_float(buf, 96, max_speed_altitude);
+    _mav_put_float(buf, 100, max_mach);
+    _mav_put_float(buf, 104, shutdown_alt);
+    _mav_put_float(buf, 108, apogee_lat);
+    _mav_put_float(buf, 112, apogee_lon);
+    _mav_put_float(buf, 116, apogee_alt);
+    _mav_put_float(buf, 120, apogee_max_acc);
+    _mav_put_float(buf, 124, dpl_alt);
+    _mav_put_float(buf, 128, dpl_max_acc);
+    _mav_put_float(buf, 132, dpl_bay_max_pressure);
+    _mav_put_float(buf, 136, ref_lat);
+    _mav_put_float(buf, 140, ref_lon);
+    _mav_put_float(buf, 144, ref_alt);
+    _mav_put_float(buf, 148, cpu_load);
+    _mav_put_uint32_t(buf, 152, free_heap);
+    _mav_put_float(buf, 156, exp_angle);
+    _mav_put_int32_t(buf, 160, log_good);
+    _mav_put_int16_t(buf, 164, log_number);
+    _mav_put_uint8_t(buf, 166, ada_state);
+    _mav_put_uint8_t(buf, 167, abk_state);
+    _mav_put_uint8_t(buf, 168, nas_state);
+    _mav_put_uint8_t(buf, 169, mea_state);
+    _mav_put_uint8_t(buf, 170, pin_launch);
+    _mav_put_uint8_t(buf, 171, pin_nosecone);
+    _mav_put_uint8_t(buf, 172, pin_expulsion);
+    _mav_put_uint8_t(buf, 173, cutter_presence);
+    _mav_put_uint8_t(buf, 174, payload_board_state);
+    _mav_put_uint8_t(buf, 175, motor_board_state);
+    _mav_put_uint8_t(buf, 176, payload_can_status);
+    _mav_put_uint8_t(buf, 177, motor_can_status);
+    _mav_put_uint8_t(buf, 178, rig_can_status);
+    _mav_put_uint8_t(buf, 179, hil_state);
 
         memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_ROCKET_STATS_TM_LEN);
 #else
     mavlink_rocket_stats_tm_t packet;
+    packet.timestamp = timestamp;
     packet.liftoff_ts = liftoff_ts;
     packet.liftoff_max_acc_ts = liftoff_max_acc_ts;
     packet.max_speed_ts = max_speed_ts;
     packet.max_mach_ts = max_mach_ts;
+    packet.shutdown_ts = shutdown_ts;
     packet.apogee_ts = apogee_ts;
     packet.apogee_max_acc_ts = apogee_max_acc_ts;
     packet.dpl_ts = dpl_ts;
@@ -432,6 +450,7 @@ static inline uint16_t mavlink_msg_rocket_stats_tm_pack_chan(uint8_t system_id,
     packet.max_speed = max_speed;
     packet.max_speed_altitude = max_speed_altitude;
     packet.max_mach = max_mach;
+    packet.shutdown_alt = shutdown_alt;
     packet.apogee_lat = apogee_lat;
     packet.apogee_lon = apogee_lon;
     packet.apogee_alt = apogee_alt;
@@ -448,7 +467,6 @@ static inline uint16_t mavlink_msg_rocket_stats_tm_pack_chan(uint8_t system_id,
     packet.log_good = log_good;
     packet.log_number = log_number;
     packet.ada_state = ada_state;
-    packet.fmm_state = fmm_state;
     packet.abk_state = abk_state;
     packet.nas_state = nas_state;
     packet.mea_state = mea_state;
@@ -480,7 +498,7 @@ static inline uint16_t mavlink_msg_rocket_stats_tm_pack_chan(uint8_t system_id,
  */
 static inline uint16_t mavlink_msg_rocket_stats_tm_encode(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg, const mavlink_rocket_stats_tm_t* rocket_stats_tm)
 {
-    return mavlink_msg_rocket_stats_tm_pack(system_id, component_id, msg, rocket_stats_tm->liftoff_ts, rocket_stats_tm->liftoff_max_acc_ts, rocket_stats_tm->liftoff_max_acc, rocket_stats_tm->max_speed_ts, rocket_stats_tm->max_speed, rocket_stats_tm->max_speed_altitude, rocket_stats_tm->max_mach_ts, rocket_stats_tm->max_mach, rocket_stats_tm->apogee_ts, rocket_stats_tm->apogee_lat, rocket_stats_tm->apogee_lon, rocket_stats_tm->apogee_alt, rocket_stats_tm->apogee_max_acc_ts, rocket_stats_tm->apogee_max_acc, rocket_stats_tm->dpl_ts, rocket_stats_tm->dpl_alt, rocket_stats_tm->dpl_max_acc_ts, rocket_stats_tm->dpl_max_acc, rocket_stats_tm->dpl_bay_max_pressure_ts, rocket_stats_tm->dpl_bay_max_pressure, rocket_stats_tm->ref_lat, rocket_stats_tm->ref_lon, rocket_stats_tm->ref_alt, rocket_stats_tm->cpu_load, rocket_stats_tm->free_heap, rocket_stats_tm->ada_state, rocket_stats_tm->fmm_state, rocket_stats_tm->abk_state, rocket_stats_tm->nas_state, rocket_stats_tm->mea_state, rocket_stats_tm->exp_angle, rocket_stats_tm->pin_launch, rocket_stats_tm->pin_nosecone, rocket_stats_tm->pin_expulsion, rocket_stats_tm->cutter_presence, rocket_stats_tm->log_number, rocket_stats_tm->log_good, rocket_stats_tm->payload_board_state, rocket_stats_tm->motor_board_state, rocket_stats_tm->payload_can_status, rocket_stats_tm->motor_can_status, rocket_stats_tm->rig_can_status, rocket_stats_tm->hil_state);
+    return mavlink_msg_rocket_stats_tm_pack(system_id, component_id, msg, rocket_stats_tm->timestamp, rocket_stats_tm->liftoff_ts, rocket_stats_tm->liftoff_max_acc_ts, rocket_stats_tm->liftoff_max_acc, rocket_stats_tm->max_speed_ts, rocket_stats_tm->max_speed, rocket_stats_tm->max_speed_altitude, rocket_stats_tm->max_mach_ts, rocket_stats_tm->max_mach, rocket_stats_tm->shutdown_ts, rocket_stats_tm->shutdown_alt, rocket_stats_tm->apogee_ts, rocket_stats_tm->apogee_lat, rocket_stats_tm->apogee_lon, rocket_stats_tm->apogee_alt, rocket_stats_tm->apogee_max_acc_ts, rocket_stats_tm->apogee_max_acc, rocket_stats_tm->dpl_ts, rocket_stats_tm->dpl_alt, rocket_stats_tm->dpl_max_acc_ts, rocket_stats_tm->dpl_max_acc, rocket_stats_tm->dpl_bay_max_pressure_ts, rocket_stats_tm->dpl_bay_max_pressure, rocket_stats_tm->ref_lat, rocket_stats_tm->ref_lon, rocket_stats_tm->ref_alt, rocket_stats_tm->cpu_load, rocket_stats_tm->free_heap, rocket_stats_tm->ada_state, rocket_stats_tm->abk_state, rocket_stats_tm->nas_state, rocket_stats_tm->mea_state, rocket_stats_tm->exp_angle, rocket_stats_tm->pin_launch, rocket_stats_tm->pin_nosecone, rocket_stats_tm->pin_expulsion, rocket_stats_tm->cutter_presence, rocket_stats_tm->log_number, rocket_stats_tm->log_good, rocket_stats_tm->payload_board_state, rocket_stats_tm->motor_board_state, rocket_stats_tm->payload_can_status, rocket_stats_tm->motor_can_status, rocket_stats_tm->rig_can_status, rocket_stats_tm->hil_state);
 }
 
 /**
@@ -494,13 +512,14 @@ static inline uint16_t mavlink_msg_rocket_stats_tm_encode(uint8_t system_id, uin
  */
 static inline uint16_t mavlink_msg_rocket_stats_tm_encode_chan(uint8_t system_id, uint8_t component_id, uint8_t chan, mavlink_message_t* msg, const mavlink_rocket_stats_tm_t* rocket_stats_tm)
 {
-    return mavlink_msg_rocket_stats_tm_pack_chan(system_id, component_id, chan, msg, rocket_stats_tm->liftoff_ts, rocket_stats_tm->liftoff_max_acc_ts, rocket_stats_tm->liftoff_max_acc, rocket_stats_tm->max_speed_ts, rocket_stats_tm->max_speed, rocket_stats_tm->max_speed_altitude, rocket_stats_tm->max_mach_ts, rocket_stats_tm->max_mach, rocket_stats_tm->apogee_ts, rocket_stats_tm->apogee_lat, rocket_stats_tm->apogee_lon, rocket_stats_tm->apogee_alt, rocket_stats_tm->apogee_max_acc_ts, rocket_stats_tm->apogee_max_acc, rocket_stats_tm->dpl_ts, rocket_stats_tm->dpl_alt, rocket_stats_tm->dpl_max_acc_ts, rocket_stats_tm->dpl_max_acc, rocket_stats_tm->dpl_bay_max_pressure_ts, rocket_stats_tm->dpl_bay_max_pressure, rocket_stats_tm->ref_lat, rocket_stats_tm->ref_lon, rocket_stats_tm->ref_alt, rocket_stats_tm->cpu_load, rocket_stats_tm->free_heap, rocket_stats_tm->ada_state, rocket_stats_tm->fmm_state, rocket_stats_tm->abk_state, rocket_stats_tm->nas_state, rocket_stats_tm->mea_state, rocket_stats_tm->exp_angle, rocket_stats_tm->pin_launch, rocket_stats_tm->pin_nosecone, rocket_stats_tm->pin_expulsion, rocket_stats_tm->cutter_presence, rocket_stats_tm->log_number, rocket_stats_tm->log_good, rocket_stats_tm->payload_board_state, rocket_stats_tm->motor_board_state, rocket_stats_tm->payload_can_status, rocket_stats_tm->motor_can_status, rocket_stats_tm->rig_can_status, rocket_stats_tm->hil_state);
+    return mavlink_msg_rocket_stats_tm_pack_chan(system_id, component_id, chan, msg, rocket_stats_tm->timestamp, rocket_stats_tm->liftoff_ts, rocket_stats_tm->liftoff_max_acc_ts, rocket_stats_tm->liftoff_max_acc, rocket_stats_tm->max_speed_ts, rocket_stats_tm->max_speed, rocket_stats_tm->max_speed_altitude, rocket_stats_tm->max_mach_ts, rocket_stats_tm->max_mach, rocket_stats_tm->shutdown_ts, rocket_stats_tm->shutdown_alt, rocket_stats_tm->apogee_ts, rocket_stats_tm->apogee_lat, rocket_stats_tm->apogee_lon, rocket_stats_tm->apogee_alt, rocket_stats_tm->apogee_max_acc_ts, rocket_stats_tm->apogee_max_acc, rocket_stats_tm->dpl_ts, rocket_stats_tm->dpl_alt, rocket_stats_tm->dpl_max_acc_ts, rocket_stats_tm->dpl_max_acc, rocket_stats_tm->dpl_bay_max_pressure_ts, rocket_stats_tm->dpl_bay_max_pressure, rocket_stats_tm->ref_lat, rocket_stats_tm->ref_lon, rocket_stats_tm->ref_alt, rocket_stats_tm->cpu_load, rocket_stats_tm->free_heap, rocket_stats_tm->ada_state, rocket_stats_tm->abk_state, rocket_stats_tm->nas_state, rocket_stats_tm->mea_state, rocket_stats_tm->exp_angle, rocket_stats_tm->pin_launch, rocket_stats_tm->pin_nosecone, rocket_stats_tm->pin_expulsion, rocket_stats_tm->cutter_presence, rocket_stats_tm->log_number, rocket_stats_tm->log_good, rocket_stats_tm->payload_board_state, rocket_stats_tm->motor_board_state, rocket_stats_tm->payload_can_status, rocket_stats_tm->motor_can_status, rocket_stats_tm->rig_can_status, rocket_stats_tm->hil_state);
 }
 
 /**
  * @brief Send a rocket_stats_tm message
  * @param chan MAVLink channel to send the message
  *
+ * @param timestamp [us] Timestamp in microseconds
  * @param liftoff_ts [us] System clock at liftoff
  * @param liftoff_max_acc_ts [us] System clock at the maximum liftoff acceleration
  * @param liftoff_max_acc [m/s2] Maximum liftoff acceleration
@@ -509,6 +528,8 @@ static inline uint16_t mavlink_msg_rocket_stats_tm_encode_chan(uint8_t system_id
  * @param max_speed_altitude [m] Altitude at max speed
  * @param max_mach_ts  System clock at maximum measured mach
  * @param max_mach  Maximum measured mach
+ * @param shutdown_ts  System clock at shutdown
+ * @param shutdown_alt  Altitude at shutdown
  * @param apogee_ts [us] System clock at apogee
  * @param apogee_lat [deg] Apogee latitude
  * @param apogee_lon [deg] Apogee longitude
@@ -527,7 +548,6 @@ static inline uint16_t mavlink_msg_rocket_stats_tm_encode_chan(uint8_t system_id
  * @param cpu_load  CPU load in percentage
  * @param free_heap  Amount of available heap in memory
  * @param ada_state  ADA Controller State
- * @param fmm_state  Flight Mode Manager State
  * @param abk_state  Airbrake FSM state
  * @param nas_state  NAS FSM State
  * @param mea_state  MEA Controller State
@@ -547,61 +567,65 @@ static inline uint16_t mavlink_msg_rocket_stats_tm_encode_chan(uint8_t system_id
  */
 #ifdef MAVLINK_USE_CONVENIENCE_FUNCTIONS
 
-static inline void mavlink_msg_rocket_stats_tm_send(mavlink_channel_t chan, uint64_t liftoff_ts, uint64_t liftoff_max_acc_ts, float liftoff_max_acc, uint64_t max_speed_ts, float max_speed, float max_speed_altitude, uint64_t max_mach_ts, float max_mach, uint64_t apogee_ts, float apogee_lat, float apogee_lon, float apogee_alt, uint64_t apogee_max_acc_ts, float apogee_max_acc, uint64_t dpl_ts, float dpl_alt, uint64_t dpl_max_acc_ts, float dpl_max_acc, uint64_t dpl_bay_max_pressure_ts, float dpl_bay_max_pressure, float ref_lat, float ref_lon, float ref_alt, float cpu_load, uint32_t free_heap, uint8_t ada_state, uint8_t fmm_state, uint8_t abk_state, uint8_t nas_state, uint8_t mea_state, float exp_angle, uint8_t pin_launch, uint8_t pin_nosecone, uint8_t pin_expulsion, uint8_t cutter_presence, int16_t log_number, int32_t log_good, uint8_t payload_board_state, uint8_t motor_board_state, uint8_t payload_can_status, uint8_t motor_can_status, uint8_t rig_can_status, uint8_t hil_state)
+static inline void mavlink_msg_rocket_stats_tm_send(mavlink_channel_t chan, uint64_t timestamp, uint64_t liftoff_ts, uint64_t liftoff_max_acc_ts, float liftoff_max_acc, uint64_t max_speed_ts, float max_speed, float max_speed_altitude, uint64_t max_mach_ts, float max_mach, uint64_t shutdown_ts, float shutdown_alt, uint64_t apogee_ts, float apogee_lat, float apogee_lon, float apogee_alt, uint64_t apogee_max_acc_ts, float apogee_max_acc, uint64_t dpl_ts, float dpl_alt, uint64_t dpl_max_acc_ts, float dpl_max_acc, uint64_t dpl_bay_max_pressure_ts, float dpl_bay_max_pressure, float ref_lat, float ref_lon, float ref_alt, float cpu_load, uint32_t free_heap, uint8_t ada_state, uint8_t abk_state, uint8_t nas_state, uint8_t mea_state, float exp_angle, uint8_t pin_launch, uint8_t pin_nosecone, uint8_t pin_expulsion, uint8_t cutter_presence, int16_t log_number, int32_t log_good, uint8_t payload_board_state, uint8_t motor_board_state, uint8_t payload_can_status, uint8_t motor_can_status, uint8_t rig_can_status, uint8_t hil_state)
 {
 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
     char buf[MAVLINK_MSG_ID_ROCKET_STATS_TM_LEN];
-    _mav_put_uint64_t(buf, 0, liftoff_ts);
-    _mav_put_uint64_t(buf, 8, liftoff_max_acc_ts);
-    _mav_put_uint64_t(buf, 16, max_speed_ts);
-    _mav_put_uint64_t(buf, 24, max_mach_ts);
-    _mav_put_uint64_t(buf, 32, apogee_ts);
-    _mav_put_uint64_t(buf, 40, apogee_max_acc_ts);
-    _mav_put_uint64_t(buf, 48, dpl_ts);
-    _mav_put_uint64_t(buf, 56, dpl_max_acc_ts);
-    _mav_put_uint64_t(buf, 64, dpl_bay_max_pressure_ts);
-    _mav_put_float(buf, 72, liftoff_max_acc);
-    _mav_put_float(buf, 76, max_speed);
-    _mav_put_float(buf, 80, max_speed_altitude);
-    _mav_put_float(buf, 84, max_mach);
-    _mav_put_float(buf, 88, apogee_lat);
-    _mav_put_float(buf, 92, apogee_lon);
-    _mav_put_float(buf, 96, apogee_alt);
-    _mav_put_float(buf, 100, apogee_max_acc);
-    _mav_put_float(buf, 104, dpl_alt);
-    _mav_put_float(buf, 108, dpl_max_acc);
-    _mav_put_float(buf, 112, dpl_bay_max_pressure);
-    _mav_put_float(buf, 116, ref_lat);
-    _mav_put_float(buf, 120, ref_lon);
-    _mav_put_float(buf, 124, ref_alt);
-    _mav_put_float(buf, 128, cpu_load);
-    _mav_put_uint32_t(buf, 132, free_heap);
-    _mav_put_float(buf, 136, exp_angle);
-    _mav_put_int32_t(buf, 140, log_good);
-    _mav_put_int16_t(buf, 144, log_number);
-    _mav_put_uint8_t(buf, 146, ada_state);
-    _mav_put_uint8_t(buf, 147, fmm_state);
-    _mav_put_uint8_t(buf, 148, abk_state);
-    _mav_put_uint8_t(buf, 149, nas_state);
-    _mav_put_uint8_t(buf, 150, mea_state);
-    _mav_put_uint8_t(buf, 151, pin_launch);
-    _mav_put_uint8_t(buf, 152, pin_nosecone);
-    _mav_put_uint8_t(buf, 153, pin_expulsion);
-    _mav_put_uint8_t(buf, 154, cutter_presence);
-    _mav_put_uint8_t(buf, 155, payload_board_state);
-    _mav_put_uint8_t(buf, 156, motor_board_state);
-    _mav_put_uint8_t(buf, 157, payload_can_status);
-    _mav_put_uint8_t(buf, 158, motor_can_status);
-    _mav_put_uint8_t(buf, 159, rig_can_status);
-    _mav_put_uint8_t(buf, 160, hil_state);
+    _mav_put_uint64_t(buf, 0, timestamp);
+    _mav_put_uint64_t(buf, 8, liftoff_ts);
+    _mav_put_uint64_t(buf, 16, liftoff_max_acc_ts);
+    _mav_put_uint64_t(buf, 24, max_speed_ts);
+    _mav_put_uint64_t(buf, 32, max_mach_ts);
+    _mav_put_uint64_t(buf, 40, shutdown_ts);
+    _mav_put_uint64_t(buf, 48, apogee_ts);
+    _mav_put_uint64_t(buf, 56, apogee_max_acc_ts);
+    _mav_put_uint64_t(buf, 64, dpl_ts);
+    _mav_put_uint64_t(buf, 72, dpl_max_acc_ts);
+    _mav_put_uint64_t(buf, 80, dpl_bay_max_pressure_ts);
+    _mav_put_float(buf, 88, liftoff_max_acc);
+    _mav_put_float(buf, 92, max_speed);
+    _mav_put_float(buf, 96, max_speed_altitude);
+    _mav_put_float(buf, 100, max_mach);
+    _mav_put_float(buf, 104, shutdown_alt);
+    _mav_put_float(buf, 108, apogee_lat);
+    _mav_put_float(buf, 112, apogee_lon);
+    _mav_put_float(buf, 116, apogee_alt);
+    _mav_put_float(buf, 120, apogee_max_acc);
+    _mav_put_float(buf, 124, dpl_alt);
+    _mav_put_float(buf, 128, dpl_max_acc);
+    _mav_put_float(buf, 132, dpl_bay_max_pressure);
+    _mav_put_float(buf, 136, ref_lat);
+    _mav_put_float(buf, 140, ref_lon);
+    _mav_put_float(buf, 144, ref_alt);
+    _mav_put_float(buf, 148, cpu_load);
+    _mav_put_uint32_t(buf, 152, free_heap);
+    _mav_put_float(buf, 156, exp_angle);
+    _mav_put_int32_t(buf, 160, log_good);
+    _mav_put_int16_t(buf, 164, log_number);
+    _mav_put_uint8_t(buf, 166, ada_state);
+    _mav_put_uint8_t(buf, 167, abk_state);
+    _mav_put_uint8_t(buf, 168, nas_state);
+    _mav_put_uint8_t(buf, 169, mea_state);
+    _mav_put_uint8_t(buf, 170, pin_launch);
+    _mav_put_uint8_t(buf, 171, pin_nosecone);
+    _mav_put_uint8_t(buf, 172, pin_expulsion);
+    _mav_put_uint8_t(buf, 173, cutter_presence);
+    _mav_put_uint8_t(buf, 174, payload_board_state);
+    _mav_put_uint8_t(buf, 175, motor_board_state);
+    _mav_put_uint8_t(buf, 176, payload_can_status);
+    _mav_put_uint8_t(buf, 177, motor_can_status);
+    _mav_put_uint8_t(buf, 178, rig_can_status);
+    _mav_put_uint8_t(buf, 179, hil_state);
 
     _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_ROCKET_STATS_TM, buf, MAVLINK_MSG_ID_ROCKET_STATS_TM_MIN_LEN, MAVLINK_MSG_ID_ROCKET_STATS_TM_LEN, MAVLINK_MSG_ID_ROCKET_STATS_TM_CRC);
 #else
     mavlink_rocket_stats_tm_t packet;
+    packet.timestamp = timestamp;
     packet.liftoff_ts = liftoff_ts;
     packet.liftoff_max_acc_ts = liftoff_max_acc_ts;
     packet.max_speed_ts = max_speed_ts;
     packet.max_mach_ts = max_mach_ts;
+    packet.shutdown_ts = shutdown_ts;
     packet.apogee_ts = apogee_ts;
     packet.apogee_max_acc_ts = apogee_max_acc_ts;
     packet.dpl_ts = dpl_ts;
@@ -611,6 +635,7 @@ static inline void mavlink_msg_rocket_stats_tm_send(mavlink_channel_t chan, uint
     packet.max_speed = max_speed;
     packet.max_speed_altitude = max_speed_altitude;
     packet.max_mach = max_mach;
+    packet.shutdown_alt = shutdown_alt;
     packet.apogee_lat = apogee_lat;
     packet.apogee_lon = apogee_lon;
     packet.apogee_alt = apogee_alt;
@@ -627,7 +652,6 @@ static inline void mavlink_msg_rocket_stats_tm_send(mavlink_channel_t chan, uint
     packet.log_good = log_good;
     packet.log_number = log_number;
     packet.ada_state = ada_state;
-    packet.fmm_state = fmm_state;
     packet.abk_state = abk_state;
     packet.nas_state = nas_state;
     packet.mea_state = mea_state;
@@ -654,7 +678,7 @@ static inline void mavlink_msg_rocket_stats_tm_send(mavlink_channel_t chan, uint
 static inline void mavlink_msg_rocket_stats_tm_send_struct(mavlink_channel_t chan, const mavlink_rocket_stats_tm_t* rocket_stats_tm)
 {
 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
-    mavlink_msg_rocket_stats_tm_send(chan, rocket_stats_tm->liftoff_ts, rocket_stats_tm->liftoff_max_acc_ts, rocket_stats_tm->liftoff_max_acc, rocket_stats_tm->max_speed_ts, rocket_stats_tm->max_speed, rocket_stats_tm->max_speed_altitude, rocket_stats_tm->max_mach_ts, rocket_stats_tm->max_mach, rocket_stats_tm->apogee_ts, rocket_stats_tm->apogee_lat, rocket_stats_tm->apogee_lon, rocket_stats_tm->apogee_alt, rocket_stats_tm->apogee_max_acc_ts, rocket_stats_tm->apogee_max_acc, rocket_stats_tm->dpl_ts, rocket_stats_tm->dpl_alt, rocket_stats_tm->dpl_max_acc_ts, rocket_stats_tm->dpl_max_acc, rocket_stats_tm->dpl_bay_max_pressure_ts, rocket_stats_tm->dpl_bay_max_pressure, rocket_stats_tm->ref_lat, rocket_stats_tm->ref_lon, rocket_stats_tm->ref_alt, rocket_stats_tm->cpu_load, rocket_stats_tm->free_heap, rocket_stats_tm->ada_state, rocket_stats_tm->fmm_state, rocket_stats_tm->abk_state, rocket_stats_tm->nas_state, rocket_stats_tm->mea_state, rocket_stats_tm->exp_angle, rocket_stats_tm->pin_launch, rocket_stats_tm->pin_nosecone, rocket_stats_tm->pin_expulsion, rocket_stats_tm->cutter_presence, rocket_stats_tm->log_number, rocket_stats_tm->log_good, rocket_stats_tm->payload_board_state, rocket_stats_tm->motor_board_state, rocket_stats_tm->payload_can_status, rocket_stats_tm->motor_can_status, rocket_stats_tm->rig_can_status, rocket_stats_tm->hil_state);
+    mavlink_msg_rocket_stats_tm_send(chan, rocket_stats_tm->timestamp, rocket_stats_tm->liftoff_ts, rocket_stats_tm->liftoff_max_acc_ts, rocket_stats_tm->liftoff_max_acc, rocket_stats_tm->max_speed_ts, rocket_stats_tm->max_speed, rocket_stats_tm->max_speed_altitude, rocket_stats_tm->max_mach_ts, rocket_stats_tm->max_mach, rocket_stats_tm->shutdown_ts, rocket_stats_tm->shutdown_alt, rocket_stats_tm->apogee_ts, rocket_stats_tm->apogee_lat, rocket_stats_tm->apogee_lon, rocket_stats_tm->apogee_alt, rocket_stats_tm->apogee_max_acc_ts, rocket_stats_tm->apogee_max_acc, rocket_stats_tm->dpl_ts, rocket_stats_tm->dpl_alt, rocket_stats_tm->dpl_max_acc_ts, rocket_stats_tm->dpl_max_acc, rocket_stats_tm->dpl_bay_max_pressure_ts, rocket_stats_tm->dpl_bay_max_pressure, rocket_stats_tm->ref_lat, rocket_stats_tm->ref_lon, rocket_stats_tm->ref_alt, rocket_stats_tm->cpu_load, rocket_stats_tm->free_heap, rocket_stats_tm->ada_state, rocket_stats_tm->abk_state, rocket_stats_tm->nas_state, rocket_stats_tm->mea_state, rocket_stats_tm->exp_angle, rocket_stats_tm->pin_launch, rocket_stats_tm->pin_nosecone, rocket_stats_tm->pin_expulsion, rocket_stats_tm->cutter_presence, rocket_stats_tm->log_number, rocket_stats_tm->log_good, rocket_stats_tm->payload_board_state, rocket_stats_tm->motor_board_state, rocket_stats_tm->payload_can_status, rocket_stats_tm->motor_can_status, rocket_stats_tm->rig_can_status, rocket_stats_tm->hil_state);
 #else
     _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_ROCKET_STATS_TM, (const char *)rocket_stats_tm, MAVLINK_MSG_ID_ROCKET_STATS_TM_MIN_LEN, MAVLINK_MSG_ID_ROCKET_STATS_TM_LEN, MAVLINK_MSG_ID_ROCKET_STATS_TM_CRC);
 #endif
@@ -668,61 +692,65 @@ static inline void mavlink_msg_rocket_stats_tm_send_struct(mavlink_channel_t cha
   is usually the receive buffer for the channel, and allows a reply to an
   incoming message with minimum stack space usage.
  */
-static inline void mavlink_msg_rocket_stats_tm_send_buf(mavlink_message_t *msgbuf, mavlink_channel_t chan,  uint64_t liftoff_ts, uint64_t liftoff_max_acc_ts, float liftoff_max_acc, uint64_t max_speed_ts, float max_speed, float max_speed_altitude, uint64_t max_mach_ts, float max_mach, uint64_t apogee_ts, float apogee_lat, float apogee_lon, float apogee_alt, uint64_t apogee_max_acc_ts, float apogee_max_acc, uint64_t dpl_ts, float dpl_alt, uint64_t dpl_max_acc_ts, float dpl_max_acc, uint64_t dpl_bay_max_pressure_ts, float dpl_bay_max_pressure, float ref_lat, float ref_lon, float ref_alt, float cpu_load, uint32_t free_heap, uint8_t ada_state, uint8_t fmm_state, uint8_t abk_state, uint8_t nas_state, uint8_t mea_state, float exp_angle, uint8_t pin_launch, uint8_t pin_nosecone, uint8_t pin_expulsion, uint8_t cutter_presence, int16_t log_number, int32_t log_good, uint8_t payload_board_state, uint8_t motor_board_state, uint8_t payload_can_status, uint8_t motor_can_status, uint8_t rig_can_status, uint8_t hil_state)
+static inline void mavlink_msg_rocket_stats_tm_send_buf(mavlink_message_t *msgbuf, mavlink_channel_t chan,  uint64_t timestamp, uint64_t liftoff_ts, uint64_t liftoff_max_acc_ts, float liftoff_max_acc, uint64_t max_speed_ts, float max_speed, float max_speed_altitude, uint64_t max_mach_ts, float max_mach, uint64_t shutdown_ts, float shutdown_alt, uint64_t apogee_ts, float apogee_lat, float apogee_lon, float apogee_alt, uint64_t apogee_max_acc_ts, float apogee_max_acc, uint64_t dpl_ts, float dpl_alt, uint64_t dpl_max_acc_ts, float dpl_max_acc, uint64_t dpl_bay_max_pressure_ts, float dpl_bay_max_pressure, float ref_lat, float ref_lon, float ref_alt, float cpu_load, uint32_t free_heap, uint8_t ada_state, uint8_t abk_state, uint8_t nas_state, uint8_t mea_state, float exp_angle, uint8_t pin_launch, uint8_t pin_nosecone, uint8_t pin_expulsion, uint8_t cutter_presence, int16_t log_number, int32_t log_good, uint8_t payload_board_state, uint8_t motor_board_state, uint8_t payload_can_status, uint8_t motor_can_status, uint8_t rig_can_status, uint8_t hil_state)
 {
 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
     char *buf = (char *)msgbuf;
-    _mav_put_uint64_t(buf, 0, liftoff_ts);
-    _mav_put_uint64_t(buf, 8, liftoff_max_acc_ts);
-    _mav_put_uint64_t(buf, 16, max_speed_ts);
-    _mav_put_uint64_t(buf, 24, max_mach_ts);
-    _mav_put_uint64_t(buf, 32, apogee_ts);
-    _mav_put_uint64_t(buf, 40, apogee_max_acc_ts);
-    _mav_put_uint64_t(buf, 48, dpl_ts);
-    _mav_put_uint64_t(buf, 56, dpl_max_acc_ts);
-    _mav_put_uint64_t(buf, 64, dpl_bay_max_pressure_ts);
-    _mav_put_float(buf, 72, liftoff_max_acc);
-    _mav_put_float(buf, 76, max_speed);
-    _mav_put_float(buf, 80, max_speed_altitude);
-    _mav_put_float(buf, 84, max_mach);
-    _mav_put_float(buf, 88, apogee_lat);
-    _mav_put_float(buf, 92, apogee_lon);
-    _mav_put_float(buf, 96, apogee_alt);
-    _mav_put_float(buf, 100, apogee_max_acc);
-    _mav_put_float(buf, 104, dpl_alt);
-    _mav_put_float(buf, 108, dpl_max_acc);
-    _mav_put_float(buf, 112, dpl_bay_max_pressure);
-    _mav_put_float(buf, 116, ref_lat);
-    _mav_put_float(buf, 120, ref_lon);
-    _mav_put_float(buf, 124, ref_alt);
-    _mav_put_float(buf, 128, cpu_load);
-    _mav_put_uint32_t(buf, 132, free_heap);
-    _mav_put_float(buf, 136, exp_angle);
-    _mav_put_int32_t(buf, 140, log_good);
-    _mav_put_int16_t(buf, 144, log_number);
-    _mav_put_uint8_t(buf, 146, ada_state);
-    _mav_put_uint8_t(buf, 147, fmm_state);
-    _mav_put_uint8_t(buf, 148, abk_state);
-    _mav_put_uint8_t(buf, 149, nas_state);
-    _mav_put_uint8_t(buf, 150, mea_state);
-    _mav_put_uint8_t(buf, 151, pin_launch);
-    _mav_put_uint8_t(buf, 152, pin_nosecone);
-    _mav_put_uint8_t(buf, 153, pin_expulsion);
-    _mav_put_uint8_t(buf, 154, cutter_presence);
-    _mav_put_uint8_t(buf, 155, payload_board_state);
-    _mav_put_uint8_t(buf, 156, motor_board_state);
-    _mav_put_uint8_t(buf, 157, payload_can_status);
-    _mav_put_uint8_t(buf, 158, motor_can_status);
-    _mav_put_uint8_t(buf, 159, rig_can_status);
-    _mav_put_uint8_t(buf, 160, hil_state);
+    _mav_put_uint64_t(buf, 0, timestamp);
+    _mav_put_uint64_t(buf, 8, liftoff_ts);
+    _mav_put_uint64_t(buf, 16, liftoff_max_acc_ts);
+    _mav_put_uint64_t(buf, 24, max_speed_ts);
+    _mav_put_uint64_t(buf, 32, max_mach_ts);
+    _mav_put_uint64_t(buf, 40, shutdown_ts);
+    _mav_put_uint64_t(buf, 48, apogee_ts);
+    _mav_put_uint64_t(buf, 56, apogee_max_acc_ts);
+    _mav_put_uint64_t(buf, 64, dpl_ts);
+    _mav_put_uint64_t(buf, 72, dpl_max_acc_ts);
+    _mav_put_uint64_t(buf, 80, dpl_bay_max_pressure_ts);
+    _mav_put_float(buf, 88, liftoff_max_acc);
+    _mav_put_float(buf, 92, max_speed);
+    _mav_put_float(buf, 96, max_speed_altitude);
+    _mav_put_float(buf, 100, max_mach);
+    _mav_put_float(buf, 104, shutdown_alt);
+    _mav_put_float(buf, 108, apogee_lat);
+    _mav_put_float(buf, 112, apogee_lon);
+    _mav_put_float(buf, 116, apogee_alt);
+    _mav_put_float(buf, 120, apogee_max_acc);
+    _mav_put_float(buf, 124, dpl_alt);
+    _mav_put_float(buf, 128, dpl_max_acc);
+    _mav_put_float(buf, 132, dpl_bay_max_pressure);
+    _mav_put_float(buf, 136, ref_lat);
+    _mav_put_float(buf, 140, ref_lon);
+    _mav_put_float(buf, 144, ref_alt);
+    _mav_put_float(buf, 148, cpu_load);
+    _mav_put_uint32_t(buf, 152, free_heap);
+    _mav_put_float(buf, 156, exp_angle);
+    _mav_put_int32_t(buf, 160, log_good);
+    _mav_put_int16_t(buf, 164, log_number);
+    _mav_put_uint8_t(buf, 166, ada_state);
+    _mav_put_uint8_t(buf, 167, abk_state);
+    _mav_put_uint8_t(buf, 168, nas_state);
+    _mav_put_uint8_t(buf, 169, mea_state);
+    _mav_put_uint8_t(buf, 170, pin_launch);
+    _mav_put_uint8_t(buf, 171, pin_nosecone);
+    _mav_put_uint8_t(buf, 172, pin_expulsion);
+    _mav_put_uint8_t(buf, 173, cutter_presence);
+    _mav_put_uint8_t(buf, 174, payload_board_state);
+    _mav_put_uint8_t(buf, 175, motor_board_state);
+    _mav_put_uint8_t(buf, 176, payload_can_status);
+    _mav_put_uint8_t(buf, 177, motor_can_status);
+    _mav_put_uint8_t(buf, 178, rig_can_status);
+    _mav_put_uint8_t(buf, 179, hil_state);
 
     _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_ROCKET_STATS_TM, buf, MAVLINK_MSG_ID_ROCKET_STATS_TM_MIN_LEN, MAVLINK_MSG_ID_ROCKET_STATS_TM_LEN, MAVLINK_MSG_ID_ROCKET_STATS_TM_CRC);
 #else
     mavlink_rocket_stats_tm_t *packet = (mavlink_rocket_stats_tm_t *)msgbuf;
+    packet->timestamp = timestamp;
     packet->liftoff_ts = liftoff_ts;
     packet->liftoff_max_acc_ts = liftoff_max_acc_ts;
     packet->max_speed_ts = max_speed_ts;
     packet->max_mach_ts = max_mach_ts;
+    packet->shutdown_ts = shutdown_ts;
     packet->apogee_ts = apogee_ts;
     packet->apogee_max_acc_ts = apogee_max_acc_ts;
     packet->dpl_ts = dpl_ts;
@@ -732,6 +760,7 @@ static inline void mavlink_msg_rocket_stats_tm_send_buf(mavlink_message_t *msgbu
     packet->max_speed = max_speed;
     packet->max_speed_altitude = max_speed_altitude;
     packet->max_mach = max_mach;
+    packet->shutdown_alt = shutdown_alt;
     packet->apogee_lat = apogee_lat;
     packet->apogee_lon = apogee_lon;
     packet->apogee_alt = apogee_alt;
@@ -748,7 +777,6 @@ static inline void mavlink_msg_rocket_stats_tm_send_buf(mavlink_message_t *msgbu
     packet->log_good = log_good;
     packet->log_number = log_number;
     packet->ada_state = ada_state;
-    packet->fmm_state = fmm_state;
     packet->abk_state = abk_state;
     packet->nas_state = nas_state;
     packet->mea_state = mea_state;
@@ -773,6 +801,16 @@ static inline void mavlink_msg_rocket_stats_tm_send_buf(mavlink_message_t *msgbu
 // MESSAGE ROCKET_STATS_TM UNPACKING
 
 
+/**
+ * @brief Get field timestamp from rocket_stats_tm message
+ *
+ * @return [us] Timestamp in microseconds
+ */
+static inline uint64_t mavlink_msg_rocket_stats_tm_get_timestamp(const mavlink_message_t* msg)
+{
+    return _MAV_RETURN_uint64_t(msg,  0);
+}
+
 /**
  * @brief Get field liftoff_ts from rocket_stats_tm message
  *
@@ -780,7 +818,7 @@ static inline void mavlink_msg_rocket_stats_tm_send_buf(mavlink_message_t *msgbu
  */
 static inline uint64_t mavlink_msg_rocket_stats_tm_get_liftoff_ts(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint64_t(msg,  0);
+    return _MAV_RETURN_uint64_t(msg,  8);
 }
 
 /**
@@ -790,7 +828,7 @@ static inline uint64_t mavlink_msg_rocket_stats_tm_get_liftoff_ts(const mavlink_
  */
 static inline uint64_t mavlink_msg_rocket_stats_tm_get_liftoff_max_acc_ts(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint64_t(msg,  8);
+    return _MAV_RETURN_uint64_t(msg,  16);
 }
 
 /**
@@ -800,7 +838,7 @@ static inline uint64_t mavlink_msg_rocket_stats_tm_get_liftoff_max_acc_ts(const
  */
 static inline float mavlink_msg_rocket_stats_tm_get_liftoff_max_acc(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_float(msg,  72);
+    return _MAV_RETURN_float(msg,  88);
 }
 
 /**
@@ -810,7 +848,7 @@ static inline float mavlink_msg_rocket_stats_tm_get_liftoff_max_acc(const mavlin
  */
 static inline uint64_t mavlink_msg_rocket_stats_tm_get_max_speed_ts(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint64_t(msg,  16);
+    return _MAV_RETURN_uint64_t(msg,  24);
 }
 
 /**
@@ -820,7 +858,7 @@ static inline uint64_t mavlink_msg_rocket_stats_tm_get_max_speed_ts(const mavlin
  */
 static inline float mavlink_msg_rocket_stats_tm_get_max_speed(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_float(msg,  76);
+    return _MAV_RETURN_float(msg,  92);
 }
 
 /**
@@ -830,7 +868,7 @@ static inline float mavlink_msg_rocket_stats_tm_get_max_speed(const mavlink_mess
  */
 static inline float mavlink_msg_rocket_stats_tm_get_max_speed_altitude(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_float(msg,  80);
+    return _MAV_RETURN_float(msg,  96);
 }
 
 /**
@@ -840,7 +878,7 @@ static inline float mavlink_msg_rocket_stats_tm_get_max_speed_altitude(const mav
  */
 static inline uint64_t mavlink_msg_rocket_stats_tm_get_max_mach_ts(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint64_t(msg,  24);
+    return _MAV_RETURN_uint64_t(msg,  32);
 }
 
 /**
@@ -850,7 +888,27 @@ static inline uint64_t mavlink_msg_rocket_stats_tm_get_max_mach_ts(const mavlink
  */
 static inline float mavlink_msg_rocket_stats_tm_get_max_mach(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_float(msg,  84);
+    return _MAV_RETURN_float(msg,  100);
+}
+
+/**
+ * @brief Get field shutdown_ts from rocket_stats_tm message
+ *
+ * @return  System clock at shutdown
+ */
+static inline uint64_t mavlink_msg_rocket_stats_tm_get_shutdown_ts(const mavlink_message_t* msg)
+{
+    return _MAV_RETURN_uint64_t(msg,  40);
+}
+
+/**
+ * @brief Get field shutdown_alt from rocket_stats_tm message
+ *
+ * @return  Altitude at shutdown
+ */
+static inline float mavlink_msg_rocket_stats_tm_get_shutdown_alt(const mavlink_message_t* msg)
+{
+    return _MAV_RETURN_float(msg,  104);
 }
 
 /**
@@ -860,7 +918,7 @@ static inline float mavlink_msg_rocket_stats_tm_get_max_mach(const mavlink_messa
  */
 static inline uint64_t mavlink_msg_rocket_stats_tm_get_apogee_ts(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint64_t(msg,  32);
+    return _MAV_RETURN_uint64_t(msg,  48);
 }
 
 /**
@@ -870,7 +928,7 @@ static inline uint64_t mavlink_msg_rocket_stats_tm_get_apogee_ts(const mavlink_m
  */
 static inline float mavlink_msg_rocket_stats_tm_get_apogee_lat(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_float(msg,  88);
+    return _MAV_RETURN_float(msg,  108);
 }
 
 /**
@@ -880,7 +938,7 @@ static inline float mavlink_msg_rocket_stats_tm_get_apogee_lat(const mavlink_mes
  */
 static inline float mavlink_msg_rocket_stats_tm_get_apogee_lon(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_float(msg,  92);
+    return _MAV_RETURN_float(msg,  112);
 }
 
 /**
@@ -890,7 +948,7 @@ static inline float mavlink_msg_rocket_stats_tm_get_apogee_lon(const mavlink_mes
  */
 static inline float mavlink_msg_rocket_stats_tm_get_apogee_alt(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_float(msg,  96);
+    return _MAV_RETURN_float(msg,  116);
 }
 
 /**
@@ -900,7 +958,7 @@ static inline float mavlink_msg_rocket_stats_tm_get_apogee_alt(const mavlink_mes
  */
 static inline uint64_t mavlink_msg_rocket_stats_tm_get_apogee_max_acc_ts(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint64_t(msg,  40);
+    return _MAV_RETURN_uint64_t(msg,  56);
 }
 
 /**
@@ -910,7 +968,7 @@ static inline uint64_t mavlink_msg_rocket_stats_tm_get_apogee_max_acc_ts(const m
  */
 static inline float mavlink_msg_rocket_stats_tm_get_apogee_max_acc(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_float(msg,  100);
+    return _MAV_RETURN_float(msg,  120);
 }
 
 /**
@@ -920,7 +978,7 @@ static inline float mavlink_msg_rocket_stats_tm_get_apogee_max_acc(const mavlink
  */
 static inline uint64_t mavlink_msg_rocket_stats_tm_get_dpl_ts(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint64_t(msg,  48);
+    return _MAV_RETURN_uint64_t(msg,  64);
 }
 
 /**
@@ -930,7 +988,7 @@ static inline uint64_t mavlink_msg_rocket_stats_tm_get_dpl_ts(const mavlink_mess
  */
 static inline float mavlink_msg_rocket_stats_tm_get_dpl_alt(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_float(msg,  104);
+    return _MAV_RETURN_float(msg,  124);
 }
 
 /**
@@ -940,7 +998,7 @@ static inline float mavlink_msg_rocket_stats_tm_get_dpl_alt(const mavlink_messag
  */
 static inline uint64_t mavlink_msg_rocket_stats_tm_get_dpl_max_acc_ts(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint64_t(msg,  56);
+    return _MAV_RETURN_uint64_t(msg,  72);
 }
 
 /**
@@ -950,7 +1008,7 @@ static inline uint64_t mavlink_msg_rocket_stats_tm_get_dpl_max_acc_ts(const mavl
  */
 static inline float mavlink_msg_rocket_stats_tm_get_dpl_max_acc(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_float(msg,  108);
+    return _MAV_RETURN_float(msg,  128);
 }
 
 /**
@@ -960,7 +1018,7 @@ static inline float mavlink_msg_rocket_stats_tm_get_dpl_max_acc(const mavlink_me
  */
 static inline uint64_t mavlink_msg_rocket_stats_tm_get_dpl_bay_max_pressure_ts(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint64_t(msg,  64);
+    return _MAV_RETURN_uint64_t(msg,  80);
 }
 
 /**
@@ -970,7 +1028,7 @@ static inline uint64_t mavlink_msg_rocket_stats_tm_get_dpl_bay_max_pressure_ts(c
  */
 static inline float mavlink_msg_rocket_stats_tm_get_dpl_bay_max_pressure(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_float(msg,  112);
+    return _MAV_RETURN_float(msg,  132);
 }
 
 /**
@@ -980,7 +1038,7 @@ static inline float mavlink_msg_rocket_stats_tm_get_dpl_bay_max_pressure(const m
  */
 static inline float mavlink_msg_rocket_stats_tm_get_ref_lat(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_float(msg,  116);
+    return _MAV_RETURN_float(msg,  136);
 }
 
 /**
@@ -990,7 +1048,7 @@ static inline float mavlink_msg_rocket_stats_tm_get_ref_lat(const mavlink_messag
  */
 static inline float mavlink_msg_rocket_stats_tm_get_ref_lon(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_float(msg,  120);
+    return _MAV_RETURN_float(msg,  140);
 }
 
 /**
@@ -1000,7 +1058,7 @@ static inline float mavlink_msg_rocket_stats_tm_get_ref_lon(const mavlink_messag
  */
 static inline float mavlink_msg_rocket_stats_tm_get_ref_alt(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_float(msg,  124);
+    return _MAV_RETURN_float(msg,  144);
 }
 
 /**
@@ -1010,7 +1068,7 @@ static inline float mavlink_msg_rocket_stats_tm_get_ref_alt(const mavlink_messag
  */
 static inline float mavlink_msg_rocket_stats_tm_get_cpu_load(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_float(msg,  128);
+    return _MAV_RETURN_float(msg,  148);
 }
 
 /**
@@ -1020,7 +1078,7 @@ static inline float mavlink_msg_rocket_stats_tm_get_cpu_load(const mavlink_messa
  */
 static inline uint32_t mavlink_msg_rocket_stats_tm_get_free_heap(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint32_t(msg,  132);
+    return _MAV_RETURN_uint32_t(msg,  152);
 }
 
 /**
@@ -1030,17 +1088,7 @@ static inline uint32_t mavlink_msg_rocket_stats_tm_get_free_heap(const mavlink_m
  */
 static inline uint8_t mavlink_msg_rocket_stats_tm_get_ada_state(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint8_t(msg,  146);
-}
-
-/**
- * @brief Get field fmm_state from rocket_stats_tm message
- *
- * @return  Flight Mode Manager State
- */
-static inline uint8_t mavlink_msg_rocket_stats_tm_get_fmm_state(const mavlink_message_t* msg)
-{
-    return _MAV_RETURN_uint8_t(msg,  147);
+    return _MAV_RETURN_uint8_t(msg,  166);
 }
 
 /**
@@ -1050,7 +1098,7 @@ static inline uint8_t mavlink_msg_rocket_stats_tm_get_fmm_state(const mavlink_me
  */
 static inline uint8_t mavlink_msg_rocket_stats_tm_get_abk_state(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint8_t(msg,  148);
+    return _MAV_RETURN_uint8_t(msg,  167);
 }
 
 /**
@@ -1060,7 +1108,7 @@ static inline uint8_t mavlink_msg_rocket_stats_tm_get_abk_state(const mavlink_me
  */
 static inline uint8_t mavlink_msg_rocket_stats_tm_get_nas_state(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint8_t(msg,  149);
+    return _MAV_RETURN_uint8_t(msg,  168);
 }
 
 /**
@@ -1070,7 +1118,7 @@ static inline uint8_t mavlink_msg_rocket_stats_tm_get_nas_state(const mavlink_me
  */
 static inline uint8_t mavlink_msg_rocket_stats_tm_get_mea_state(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint8_t(msg,  150);
+    return _MAV_RETURN_uint8_t(msg,  169);
 }
 
 /**
@@ -1080,7 +1128,7 @@ static inline uint8_t mavlink_msg_rocket_stats_tm_get_mea_state(const mavlink_me
  */
 static inline float mavlink_msg_rocket_stats_tm_get_exp_angle(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_float(msg,  136);
+    return _MAV_RETURN_float(msg,  156);
 }
 
 /**
@@ -1090,7 +1138,7 @@ static inline float mavlink_msg_rocket_stats_tm_get_exp_angle(const mavlink_mess
  */
 static inline uint8_t mavlink_msg_rocket_stats_tm_get_pin_launch(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint8_t(msg,  151);
+    return _MAV_RETURN_uint8_t(msg,  170);
 }
 
 /**
@@ -1100,7 +1148,7 @@ static inline uint8_t mavlink_msg_rocket_stats_tm_get_pin_launch(const mavlink_m
  */
 static inline uint8_t mavlink_msg_rocket_stats_tm_get_pin_nosecone(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint8_t(msg,  152);
+    return _MAV_RETURN_uint8_t(msg,  171);
 }
 
 /**
@@ -1110,7 +1158,7 @@ static inline uint8_t mavlink_msg_rocket_stats_tm_get_pin_nosecone(const mavlink
  */
 static inline uint8_t mavlink_msg_rocket_stats_tm_get_pin_expulsion(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint8_t(msg,  153);
+    return _MAV_RETURN_uint8_t(msg,  172);
 }
 
 /**
@@ -1120,7 +1168,7 @@ static inline uint8_t mavlink_msg_rocket_stats_tm_get_pin_expulsion(const mavlin
  */
 static inline uint8_t mavlink_msg_rocket_stats_tm_get_cutter_presence(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint8_t(msg,  154);
+    return _MAV_RETURN_uint8_t(msg,  173);
 }
 
 /**
@@ -1130,7 +1178,7 @@ static inline uint8_t mavlink_msg_rocket_stats_tm_get_cutter_presence(const mavl
  */
 static inline int16_t mavlink_msg_rocket_stats_tm_get_log_number(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_int16_t(msg,  144);
+    return _MAV_RETURN_int16_t(msg,  164);
 }
 
 /**
@@ -1140,7 +1188,7 @@ static inline int16_t mavlink_msg_rocket_stats_tm_get_log_number(const mavlink_m
  */
 static inline int32_t mavlink_msg_rocket_stats_tm_get_log_good(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_int32_t(msg,  140);
+    return _MAV_RETURN_int32_t(msg,  160);
 }
 
 /**
@@ -1150,7 +1198,7 @@ static inline int32_t mavlink_msg_rocket_stats_tm_get_log_good(const mavlink_mes
  */
 static inline uint8_t mavlink_msg_rocket_stats_tm_get_payload_board_state(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint8_t(msg,  155);
+    return _MAV_RETURN_uint8_t(msg,  174);
 }
 
 /**
@@ -1160,7 +1208,7 @@ static inline uint8_t mavlink_msg_rocket_stats_tm_get_payload_board_state(const
  */
 static inline uint8_t mavlink_msg_rocket_stats_tm_get_motor_board_state(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint8_t(msg,  156);
+    return _MAV_RETURN_uint8_t(msg,  175);
 }
 
 /**
@@ -1170,7 +1218,7 @@ static inline uint8_t mavlink_msg_rocket_stats_tm_get_motor_board_state(const ma
  */
 static inline uint8_t mavlink_msg_rocket_stats_tm_get_payload_can_status(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint8_t(msg,  157);
+    return _MAV_RETURN_uint8_t(msg,  176);
 }
 
 /**
@@ -1180,7 +1228,7 @@ static inline uint8_t mavlink_msg_rocket_stats_tm_get_payload_can_status(const m
  */
 static inline uint8_t mavlink_msg_rocket_stats_tm_get_motor_can_status(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint8_t(msg,  158);
+    return _MAV_RETURN_uint8_t(msg,  177);
 }
 
 /**
@@ -1190,7 +1238,7 @@ static inline uint8_t mavlink_msg_rocket_stats_tm_get_motor_can_status(const mav
  */
 static inline uint8_t mavlink_msg_rocket_stats_tm_get_rig_can_status(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint8_t(msg,  159);
+    return _MAV_RETURN_uint8_t(msg,  178);
 }
 
 /**
@@ -1200,7 +1248,7 @@ static inline uint8_t mavlink_msg_rocket_stats_tm_get_rig_can_status(const mavli
  */
 static inline uint8_t mavlink_msg_rocket_stats_tm_get_hil_state(const mavlink_message_t* msg)
 {
-    return _MAV_RETURN_uint8_t(msg,  160);
+    return _MAV_RETURN_uint8_t(msg,  179);
 }
 
 /**
@@ -1212,10 +1260,12 @@ static inline uint8_t mavlink_msg_rocket_stats_tm_get_hil_state(const mavlink_me
 static inline void mavlink_msg_rocket_stats_tm_decode(const mavlink_message_t* msg, mavlink_rocket_stats_tm_t* rocket_stats_tm)
 {
 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
+    rocket_stats_tm->timestamp = mavlink_msg_rocket_stats_tm_get_timestamp(msg);
     rocket_stats_tm->liftoff_ts = mavlink_msg_rocket_stats_tm_get_liftoff_ts(msg);
     rocket_stats_tm->liftoff_max_acc_ts = mavlink_msg_rocket_stats_tm_get_liftoff_max_acc_ts(msg);
     rocket_stats_tm->max_speed_ts = mavlink_msg_rocket_stats_tm_get_max_speed_ts(msg);
     rocket_stats_tm->max_mach_ts = mavlink_msg_rocket_stats_tm_get_max_mach_ts(msg);
+    rocket_stats_tm->shutdown_ts = mavlink_msg_rocket_stats_tm_get_shutdown_ts(msg);
     rocket_stats_tm->apogee_ts = mavlink_msg_rocket_stats_tm_get_apogee_ts(msg);
     rocket_stats_tm->apogee_max_acc_ts = mavlink_msg_rocket_stats_tm_get_apogee_max_acc_ts(msg);
     rocket_stats_tm->dpl_ts = mavlink_msg_rocket_stats_tm_get_dpl_ts(msg);
@@ -1225,6 +1275,7 @@ static inline void mavlink_msg_rocket_stats_tm_decode(const mavlink_message_t* m
     rocket_stats_tm->max_speed = mavlink_msg_rocket_stats_tm_get_max_speed(msg);
     rocket_stats_tm->max_speed_altitude = mavlink_msg_rocket_stats_tm_get_max_speed_altitude(msg);
     rocket_stats_tm->max_mach = mavlink_msg_rocket_stats_tm_get_max_mach(msg);
+    rocket_stats_tm->shutdown_alt = mavlink_msg_rocket_stats_tm_get_shutdown_alt(msg);
     rocket_stats_tm->apogee_lat = mavlink_msg_rocket_stats_tm_get_apogee_lat(msg);
     rocket_stats_tm->apogee_lon = mavlink_msg_rocket_stats_tm_get_apogee_lon(msg);
     rocket_stats_tm->apogee_alt = mavlink_msg_rocket_stats_tm_get_apogee_alt(msg);
@@ -1241,7 +1292,6 @@ static inline void mavlink_msg_rocket_stats_tm_decode(const mavlink_message_t* m
     rocket_stats_tm->log_good = mavlink_msg_rocket_stats_tm_get_log_good(msg);
     rocket_stats_tm->log_number = mavlink_msg_rocket_stats_tm_get_log_number(msg);
     rocket_stats_tm->ada_state = mavlink_msg_rocket_stats_tm_get_ada_state(msg);
-    rocket_stats_tm->fmm_state = mavlink_msg_rocket_stats_tm_get_fmm_state(msg);
     rocket_stats_tm->abk_state = mavlink_msg_rocket_stats_tm_get_abk_state(msg);
     rocket_stats_tm->nas_state = mavlink_msg_rocket_stats_tm_get_nas_state(msg);
     rocket_stats_tm->mea_state = mavlink_msg_rocket_stats_tm_get_mea_state(msg);
diff --git a/mavlink_lib/lyra/mavlink_msg_set_calibration_pressure.h b/mavlink_lib/lyra/mavlink_msg_set_calibration_pressure.h
new file mode 100644
index 0000000000000000000000000000000000000000..3024208b024a7bcd22639cd384f98afb06dd447d
--- /dev/null
+++ b/mavlink_lib/lyra/mavlink_msg_set_calibration_pressure.h
@@ -0,0 +1,213 @@
+#pragma once
+// MESSAGE SET_CALIBRATION_PRESSURE PACKING
+
+#define MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE 18
+
+
+typedef struct __mavlink_set_calibration_pressure_t {
+ float pressure; /*< [Pa] Pressure*/
+} mavlink_set_calibration_pressure_t;
+
+#define MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_LEN 4
+#define MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_MIN_LEN 4
+#define MAVLINK_MSG_ID_18_LEN 4
+#define MAVLINK_MSG_ID_18_MIN_LEN 4
+
+#define MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_CRC 31
+#define MAVLINK_MSG_ID_18_CRC 31
+
+
+
+#if MAVLINK_COMMAND_24BIT
+#define MAVLINK_MESSAGE_INFO_SET_CALIBRATION_PRESSURE { \
+    18, \
+    "SET_CALIBRATION_PRESSURE", \
+    1, \
+    {  { "pressure", NULL, MAVLINK_TYPE_FLOAT, 0, 0, offsetof(mavlink_set_calibration_pressure_t, pressure) }, \
+         } \
+}
+#else
+#define MAVLINK_MESSAGE_INFO_SET_CALIBRATION_PRESSURE { \
+    "SET_CALIBRATION_PRESSURE", \
+    1, \
+    {  { "pressure", NULL, MAVLINK_TYPE_FLOAT, 0, 0, offsetof(mavlink_set_calibration_pressure_t, pressure) }, \
+         } \
+}
+#endif
+
+/**
+ * @brief Pack a set_calibration_pressure message
+ * @param system_id ID of this system
+ * @param component_id ID of this component (e.g. 200 for IMU)
+ * @param msg The MAVLink message to compress the data into
+ *
+ * @param pressure [Pa] Pressure
+ * @return length of the message in bytes (excluding serial stream start sign)
+ */
+static inline uint16_t mavlink_msg_set_calibration_pressure_pack(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg,
+                               float pressure)
+{
+#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
+    char buf[MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_LEN];
+    _mav_put_float(buf, 0, pressure);
+
+        memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_LEN);
+#else
+    mavlink_set_calibration_pressure_t packet;
+    packet.pressure = pressure;
+
+        memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_LEN);
+#endif
+
+    msg->msgid = MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE;
+    return mavlink_finalize_message(msg, system_id, component_id, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_MIN_LEN, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_LEN, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_CRC);
+}
+
+/**
+ * @brief Pack a set_calibration_pressure message on a channel
+ * @param system_id ID of this system
+ * @param component_id ID of this component (e.g. 200 for IMU)
+ * @param chan The MAVLink channel this message will be sent over
+ * @param msg The MAVLink message to compress the data into
+ * @param pressure [Pa] Pressure
+ * @return length of the message in bytes (excluding serial stream start sign)
+ */
+static inline uint16_t mavlink_msg_set_calibration_pressure_pack_chan(uint8_t system_id, uint8_t component_id, uint8_t chan,
+                               mavlink_message_t* msg,
+                                   float pressure)
+{
+#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
+    char buf[MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_LEN];
+    _mav_put_float(buf, 0, pressure);
+
+        memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_LEN);
+#else
+    mavlink_set_calibration_pressure_t packet;
+    packet.pressure = pressure;
+
+        memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_LEN);
+#endif
+
+    msg->msgid = MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE;
+    return mavlink_finalize_message_chan(msg, system_id, component_id, chan, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_MIN_LEN, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_LEN, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_CRC);
+}
+
+/**
+ * @brief Encode a set_calibration_pressure struct
+ *
+ * @param system_id ID of this system
+ * @param component_id ID of this component (e.g. 200 for IMU)
+ * @param msg The MAVLink message to compress the data into
+ * @param set_calibration_pressure C-struct to read the message contents from
+ */
+static inline uint16_t mavlink_msg_set_calibration_pressure_encode(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg, const mavlink_set_calibration_pressure_t* set_calibration_pressure)
+{
+    return mavlink_msg_set_calibration_pressure_pack(system_id, component_id, msg, set_calibration_pressure->pressure);
+}
+
+/**
+ * @brief Encode a set_calibration_pressure struct on a channel
+ *
+ * @param system_id ID of this system
+ * @param component_id ID of this component (e.g. 200 for IMU)
+ * @param chan The MAVLink channel this message will be sent over
+ * @param msg The MAVLink message to compress the data into
+ * @param set_calibration_pressure C-struct to read the message contents from
+ */
+static inline uint16_t mavlink_msg_set_calibration_pressure_encode_chan(uint8_t system_id, uint8_t component_id, uint8_t chan, mavlink_message_t* msg, const mavlink_set_calibration_pressure_t* set_calibration_pressure)
+{
+    return mavlink_msg_set_calibration_pressure_pack_chan(system_id, component_id, chan, msg, set_calibration_pressure->pressure);
+}
+
+/**
+ * @brief Send a set_calibration_pressure message
+ * @param chan MAVLink channel to send the message
+ *
+ * @param pressure [Pa] Pressure
+ */
+#ifdef MAVLINK_USE_CONVENIENCE_FUNCTIONS
+
+static inline void mavlink_msg_set_calibration_pressure_send(mavlink_channel_t chan, float pressure)
+{
+#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
+    char buf[MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_LEN];
+    _mav_put_float(buf, 0, pressure);
+
+    _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE, buf, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_MIN_LEN, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_LEN, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_CRC);
+#else
+    mavlink_set_calibration_pressure_t packet;
+    packet.pressure = pressure;
+
+    _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE, (const char *)&packet, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_MIN_LEN, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_LEN, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_CRC);
+#endif
+}
+
+/**
+ * @brief Send a set_calibration_pressure message
+ * @param chan MAVLink channel to send the message
+ * @param struct The MAVLink struct to serialize
+ */
+static inline void mavlink_msg_set_calibration_pressure_send_struct(mavlink_channel_t chan, const mavlink_set_calibration_pressure_t* set_calibration_pressure)
+{
+#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
+    mavlink_msg_set_calibration_pressure_send(chan, set_calibration_pressure->pressure);
+#else
+    _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE, (const char *)set_calibration_pressure, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_MIN_LEN, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_LEN, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_CRC);
+#endif
+}
+
+#if MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_LEN <= MAVLINK_MAX_PAYLOAD_LEN
+/*
+  This variant of _send() can be used to save stack space by re-using
+  memory from the receive buffer.  The caller provides a
+  mavlink_message_t which is the size of a full mavlink message. This
+  is usually the receive buffer for the channel, and allows a reply to an
+  incoming message with minimum stack space usage.
+ */
+static inline void mavlink_msg_set_calibration_pressure_send_buf(mavlink_message_t *msgbuf, mavlink_channel_t chan,  float pressure)
+{
+#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
+    char *buf = (char *)msgbuf;
+    _mav_put_float(buf, 0, pressure);
+
+    _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE, buf, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_MIN_LEN, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_LEN, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_CRC);
+#else
+    mavlink_set_calibration_pressure_t *packet = (mavlink_set_calibration_pressure_t *)msgbuf;
+    packet->pressure = pressure;
+
+    _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE, (const char *)packet, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_MIN_LEN, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_LEN, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_CRC);
+#endif
+}
+#endif
+
+#endif
+
+// MESSAGE SET_CALIBRATION_PRESSURE UNPACKING
+
+
+/**
+ * @brief Get field pressure from set_calibration_pressure message
+ *
+ * @return [Pa] Pressure
+ */
+static inline float mavlink_msg_set_calibration_pressure_get_pressure(const mavlink_message_t* msg)
+{
+    return _MAV_RETURN_float(msg,  0);
+}
+
+/**
+ * @brief Decode a set_calibration_pressure message into a struct
+ *
+ * @param msg The message to decode
+ * @param set_calibration_pressure C-struct to decode the message contents into
+ */
+static inline void mavlink_msg_set_calibration_pressure_decode(const mavlink_message_t* msg, mavlink_set_calibration_pressure_t* set_calibration_pressure)
+{
+#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
+    set_calibration_pressure->pressure = mavlink_msg_set_calibration_pressure_get_pressure(msg);
+#else
+        uint8_t len = msg->len < MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_LEN? msg->len : MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_LEN;
+        memset(set_calibration_pressure, 0, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_LEN);
+    memcpy(set_calibration_pressure, _MAV_PAYLOAD(msg), len);
+#endif
+}
diff --git a/mavlink_lib/lyra/mavlink_msg_set_calibration_pressure_tc.h b/mavlink_lib/lyra/mavlink_msg_set_calibration_pressure_tc.h
new file mode 100644
index 0000000000000000000000000000000000000000..439fbb69824388a60cbb56a4849970d034169c87
--- /dev/null
+++ b/mavlink_lib/lyra/mavlink_msg_set_calibration_pressure_tc.h
@@ -0,0 +1,213 @@
+#pragma once
+// MESSAGE SET_CALIBRATION_PRESSURE_TC PACKING
+
+#define MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC 18
+
+
+typedef struct __mavlink_set_calibration_pressure_tc_t {
+ float pressure; /*< [Pa] Pressure*/
+} mavlink_set_calibration_pressure_tc_t;
+
+#define MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_LEN 4
+#define MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_MIN_LEN 4
+#define MAVLINK_MSG_ID_18_LEN 4
+#define MAVLINK_MSG_ID_18_MIN_LEN 4
+
+#define MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_CRC 199
+#define MAVLINK_MSG_ID_18_CRC 199
+
+
+
+#if MAVLINK_COMMAND_24BIT
+#define MAVLINK_MESSAGE_INFO_SET_CALIBRATION_PRESSURE_TC { \
+    18, \
+    "SET_CALIBRATION_PRESSURE_TC", \
+    1, \
+    {  { "pressure", NULL, MAVLINK_TYPE_FLOAT, 0, 0, offsetof(mavlink_set_calibration_pressure_tc_t, pressure) }, \
+         } \
+}
+#else
+#define MAVLINK_MESSAGE_INFO_SET_CALIBRATION_PRESSURE_TC { \
+    "SET_CALIBRATION_PRESSURE_TC", \
+    1, \
+    {  { "pressure", NULL, MAVLINK_TYPE_FLOAT, 0, 0, offsetof(mavlink_set_calibration_pressure_tc_t, pressure) }, \
+         } \
+}
+#endif
+
+/**
+ * @brief Pack a set_calibration_pressure_tc message
+ * @param system_id ID of this system
+ * @param component_id ID of this component (e.g. 200 for IMU)
+ * @param msg The MAVLink message to compress the data into
+ *
+ * @param pressure [Pa] Pressure
+ * @return length of the message in bytes (excluding serial stream start sign)
+ */
+static inline uint16_t mavlink_msg_set_calibration_pressure_tc_pack(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg,
+                               float pressure)
+{
+#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
+    char buf[MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_LEN];
+    _mav_put_float(buf, 0, pressure);
+
+        memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_LEN);
+#else
+    mavlink_set_calibration_pressure_tc_t packet;
+    packet.pressure = pressure;
+
+        memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_LEN);
+#endif
+
+    msg->msgid = MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC;
+    return mavlink_finalize_message(msg, system_id, component_id, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_MIN_LEN, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_LEN, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_CRC);
+}
+
+/**
+ * @brief Pack a set_calibration_pressure_tc message on a channel
+ * @param system_id ID of this system
+ * @param component_id ID of this component (e.g. 200 for IMU)
+ * @param chan The MAVLink channel this message will be sent over
+ * @param msg The MAVLink message to compress the data into
+ * @param pressure [Pa] Pressure
+ * @return length of the message in bytes (excluding serial stream start sign)
+ */
+static inline uint16_t mavlink_msg_set_calibration_pressure_tc_pack_chan(uint8_t system_id, uint8_t component_id, uint8_t chan,
+                               mavlink_message_t* msg,
+                                   float pressure)
+{
+#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
+    char buf[MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_LEN];
+    _mav_put_float(buf, 0, pressure);
+
+        memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_LEN);
+#else
+    mavlink_set_calibration_pressure_tc_t packet;
+    packet.pressure = pressure;
+
+        memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_LEN);
+#endif
+
+    msg->msgid = MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC;
+    return mavlink_finalize_message_chan(msg, system_id, component_id, chan, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_MIN_LEN, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_LEN, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_CRC);
+}
+
+/**
+ * @brief Encode a set_calibration_pressure_tc struct
+ *
+ * @param system_id ID of this system
+ * @param component_id ID of this component (e.g. 200 for IMU)
+ * @param msg The MAVLink message to compress the data into
+ * @param set_calibration_pressure_tc C-struct to read the message contents from
+ */
+static inline uint16_t mavlink_msg_set_calibration_pressure_tc_encode(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg, const mavlink_set_calibration_pressure_tc_t* set_calibration_pressure_tc)
+{
+    return mavlink_msg_set_calibration_pressure_tc_pack(system_id, component_id, msg, set_calibration_pressure_tc->pressure);
+}
+
+/**
+ * @brief Encode a set_calibration_pressure_tc struct on a channel
+ *
+ * @param system_id ID of this system
+ * @param component_id ID of this component (e.g. 200 for IMU)
+ * @param chan The MAVLink channel this message will be sent over
+ * @param msg The MAVLink message to compress the data into
+ * @param set_calibration_pressure_tc C-struct to read the message contents from
+ */
+static inline uint16_t mavlink_msg_set_calibration_pressure_tc_encode_chan(uint8_t system_id, uint8_t component_id, uint8_t chan, mavlink_message_t* msg, const mavlink_set_calibration_pressure_tc_t* set_calibration_pressure_tc)
+{
+    return mavlink_msg_set_calibration_pressure_tc_pack_chan(system_id, component_id, chan, msg, set_calibration_pressure_tc->pressure);
+}
+
+/**
+ * @brief Send a set_calibration_pressure_tc message
+ * @param chan MAVLink channel to send the message
+ *
+ * @param pressure [Pa] Pressure
+ */
+#ifdef MAVLINK_USE_CONVENIENCE_FUNCTIONS
+
+static inline void mavlink_msg_set_calibration_pressure_tc_send(mavlink_channel_t chan, float pressure)
+{
+#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
+    char buf[MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_LEN];
+    _mav_put_float(buf, 0, pressure);
+
+    _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC, buf, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_MIN_LEN, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_LEN, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_CRC);
+#else
+    mavlink_set_calibration_pressure_tc_t packet;
+    packet.pressure = pressure;
+
+    _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC, (const char *)&packet, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_MIN_LEN, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_LEN, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_CRC);
+#endif
+}
+
+/**
+ * @brief Send a set_calibration_pressure_tc message
+ * @param chan MAVLink channel to send the message
+ * @param struct The MAVLink struct to serialize
+ */
+static inline void mavlink_msg_set_calibration_pressure_tc_send_struct(mavlink_channel_t chan, const mavlink_set_calibration_pressure_tc_t* set_calibration_pressure_tc)
+{
+#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
+    mavlink_msg_set_calibration_pressure_tc_send(chan, set_calibration_pressure_tc->pressure);
+#else
+    _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC, (const char *)set_calibration_pressure_tc, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_MIN_LEN, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_LEN, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_CRC);
+#endif
+}
+
+#if MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_LEN <= MAVLINK_MAX_PAYLOAD_LEN
+/*
+  This variant of _send() can be used to save stack space by re-using
+  memory from the receive buffer.  The caller provides a
+  mavlink_message_t which is the size of a full mavlink message. This
+  is usually the receive buffer for the channel, and allows a reply to an
+  incoming message with minimum stack space usage.
+ */
+static inline void mavlink_msg_set_calibration_pressure_tc_send_buf(mavlink_message_t *msgbuf, mavlink_channel_t chan,  float pressure)
+{
+#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
+    char *buf = (char *)msgbuf;
+    _mav_put_float(buf, 0, pressure);
+
+    _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC, buf, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_MIN_LEN, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_LEN, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_CRC);
+#else
+    mavlink_set_calibration_pressure_tc_t *packet = (mavlink_set_calibration_pressure_tc_t *)msgbuf;
+    packet->pressure = pressure;
+
+    _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC, (const char *)packet, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_MIN_LEN, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_LEN, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_CRC);
+#endif
+}
+#endif
+
+#endif
+
+// MESSAGE SET_CALIBRATION_PRESSURE_TC UNPACKING
+
+
+/**
+ * @brief Get field pressure from set_calibration_pressure_tc message
+ *
+ * @return [Pa] Pressure
+ */
+static inline float mavlink_msg_set_calibration_pressure_tc_get_pressure(const mavlink_message_t* msg)
+{
+    return _MAV_RETURN_float(msg,  0);
+}
+
+/**
+ * @brief Decode a set_calibration_pressure_tc message into a struct
+ *
+ * @param msg The message to decode
+ * @param set_calibration_pressure_tc C-struct to decode the message contents into
+ */
+static inline void mavlink_msg_set_calibration_pressure_tc_decode(const mavlink_message_t* msg, mavlink_set_calibration_pressure_tc_t* set_calibration_pressure_tc)
+{
+#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
+    set_calibration_pressure_tc->pressure = mavlink_msg_set_calibration_pressure_tc_get_pressure(msg);
+#else
+        uint8_t len = msg->len < MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_LEN? msg->len : MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_LEN;
+        memset(set_calibration_pressure_tc, 0, MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_LEN);
+    memcpy(set_calibration_pressure_tc, _MAV_PAYLOAD(msg), len);
+#endif
+}
diff --git a/mavlink_lib/lyra/mavlink_msg_set_initial_mea_mass.h b/mavlink_lib/lyra/mavlink_msg_set_initial_mea_mass.h
new file mode 100644
index 0000000000000000000000000000000000000000..1f9629401a80bca41bb2a5c043f04589e845c0b0
--- /dev/null
+++ b/mavlink_lib/lyra/mavlink_msg_set_initial_mea_mass.h
@@ -0,0 +1,213 @@
+#pragma once
+// MESSAGE SET_INITIAL_MEA_MASS PACKING
+
+#define MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS 19
+
+
+typedef struct __mavlink_set_initial_mea_mass_t {
+ float mass; /*< [kg] Mass*/
+} mavlink_set_initial_mea_mass_t;
+
+#define MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_LEN 4
+#define MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_MIN_LEN 4
+#define MAVLINK_MSG_ID_19_LEN 4
+#define MAVLINK_MSG_ID_19_MIN_LEN 4
+
+#define MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_CRC 154
+#define MAVLINK_MSG_ID_19_CRC 154
+
+
+
+#if MAVLINK_COMMAND_24BIT
+#define MAVLINK_MESSAGE_INFO_SET_INITIAL_MEA_MASS { \
+    19, \
+    "SET_INITIAL_MEA_MASS", \
+    1, \
+    {  { "mass", NULL, MAVLINK_TYPE_FLOAT, 0, 0, offsetof(mavlink_set_initial_mea_mass_t, mass) }, \
+         } \
+}
+#else
+#define MAVLINK_MESSAGE_INFO_SET_INITIAL_MEA_MASS { \
+    "SET_INITIAL_MEA_MASS", \
+    1, \
+    {  { "mass", NULL, MAVLINK_TYPE_FLOAT, 0, 0, offsetof(mavlink_set_initial_mea_mass_t, mass) }, \
+         } \
+}
+#endif
+
+/**
+ * @brief Pack a set_initial_mea_mass message
+ * @param system_id ID of this system
+ * @param component_id ID of this component (e.g. 200 for IMU)
+ * @param msg The MAVLink message to compress the data into
+ *
+ * @param mass [kg] Mass
+ * @return length of the message in bytes (excluding serial stream start sign)
+ */
+static inline uint16_t mavlink_msg_set_initial_mea_mass_pack(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg,
+                               float mass)
+{
+#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
+    char buf[MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_LEN];
+    _mav_put_float(buf, 0, mass);
+
+        memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_LEN);
+#else
+    mavlink_set_initial_mea_mass_t packet;
+    packet.mass = mass;
+
+        memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_LEN);
+#endif
+
+    msg->msgid = MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS;
+    return mavlink_finalize_message(msg, system_id, component_id, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_MIN_LEN, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_LEN, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_CRC);
+}
+
+/**
+ * @brief Pack a set_initial_mea_mass message on a channel
+ * @param system_id ID of this system
+ * @param component_id ID of this component (e.g. 200 for IMU)
+ * @param chan The MAVLink channel this message will be sent over
+ * @param msg The MAVLink message to compress the data into
+ * @param mass [kg] Mass
+ * @return length of the message in bytes (excluding serial stream start sign)
+ */
+static inline uint16_t mavlink_msg_set_initial_mea_mass_pack_chan(uint8_t system_id, uint8_t component_id, uint8_t chan,
+                               mavlink_message_t* msg,
+                                   float mass)
+{
+#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
+    char buf[MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_LEN];
+    _mav_put_float(buf, 0, mass);
+
+        memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_LEN);
+#else
+    mavlink_set_initial_mea_mass_t packet;
+    packet.mass = mass;
+
+        memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_LEN);
+#endif
+
+    msg->msgid = MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS;
+    return mavlink_finalize_message_chan(msg, system_id, component_id, chan, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_MIN_LEN, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_LEN, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_CRC);
+}
+
+/**
+ * @brief Encode a set_initial_mea_mass struct
+ *
+ * @param system_id ID of this system
+ * @param component_id ID of this component (e.g. 200 for IMU)
+ * @param msg The MAVLink message to compress the data into
+ * @param set_initial_mea_mass C-struct to read the message contents from
+ */
+static inline uint16_t mavlink_msg_set_initial_mea_mass_encode(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg, const mavlink_set_initial_mea_mass_t* set_initial_mea_mass)
+{
+    return mavlink_msg_set_initial_mea_mass_pack(system_id, component_id, msg, set_initial_mea_mass->mass);
+}
+
+/**
+ * @brief Encode a set_initial_mea_mass struct on a channel
+ *
+ * @param system_id ID of this system
+ * @param component_id ID of this component (e.g. 200 for IMU)
+ * @param chan The MAVLink channel this message will be sent over
+ * @param msg The MAVLink message to compress the data into
+ * @param set_initial_mea_mass C-struct to read the message contents from
+ */
+static inline uint16_t mavlink_msg_set_initial_mea_mass_encode_chan(uint8_t system_id, uint8_t component_id, uint8_t chan, mavlink_message_t* msg, const mavlink_set_initial_mea_mass_t* set_initial_mea_mass)
+{
+    return mavlink_msg_set_initial_mea_mass_pack_chan(system_id, component_id, chan, msg, set_initial_mea_mass->mass);
+}
+
+/**
+ * @brief Send a set_initial_mea_mass message
+ * @param chan MAVLink channel to send the message
+ *
+ * @param mass [kg] Mass
+ */
+#ifdef MAVLINK_USE_CONVENIENCE_FUNCTIONS
+
+static inline void mavlink_msg_set_initial_mea_mass_send(mavlink_channel_t chan, float mass)
+{
+#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
+    char buf[MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_LEN];
+    _mav_put_float(buf, 0, mass);
+
+    _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS, buf, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_MIN_LEN, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_LEN, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_CRC);
+#else
+    mavlink_set_initial_mea_mass_t packet;
+    packet.mass = mass;
+
+    _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS, (const char *)&packet, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_MIN_LEN, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_LEN, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_CRC);
+#endif
+}
+
+/**
+ * @brief Send a set_initial_mea_mass message
+ * @param chan MAVLink channel to send the message
+ * @param struct The MAVLink struct to serialize
+ */
+static inline void mavlink_msg_set_initial_mea_mass_send_struct(mavlink_channel_t chan, const mavlink_set_initial_mea_mass_t* set_initial_mea_mass)
+{
+#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
+    mavlink_msg_set_initial_mea_mass_send(chan, set_initial_mea_mass->mass);
+#else
+    _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS, (const char *)set_initial_mea_mass, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_MIN_LEN, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_LEN, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_CRC);
+#endif
+}
+
+#if MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_LEN <= MAVLINK_MAX_PAYLOAD_LEN
+/*
+  This variant of _send() can be used to save stack space by re-using
+  memory from the receive buffer.  The caller provides a
+  mavlink_message_t which is the size of a full mavlink message. This
+  is usually the receive buffer for the channel, and allows a reply to an
+  incoming message with minimum stack space usage.
+ */
+static inline void mavlink_msg_set_initial_mea_mass_send_buf(mavlink_message_t *msgbuf, mavlink_channel_t chan,  float mass)
+{
+#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
+    char *buf = (char *)msgbuf;
+    _mav_put_float(buf, 0, mass);
+
+    _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS, buf, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_MIN_LEN, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_LEN, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_CRC);
+#else
+    mavlink_set_initial_mea_mass_t *packet = (mavlink_set_initial_mea_mass_t *)msgbuf;
+    packet->mass = mass;
+
+    _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS, (const char *)packet, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_MIN_LEN, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_LEN, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_CRC);
+#endif
+}
+#endif
+
+#endif
+
+// MESSAGE SET_INITIAL_MEA_MASS UNPACKING
+
+
+/**
+ * @brief Get field mass from set_initial_mea_mass message
+ *
+ * @return [kg] Mass
+ */
+static inline float mavlink_msg_set_initial_mea_mass_get_mass(const mavlink_message_t* msg)
+{
+    return _MAV_RETURN_float(msg,  0);
+}
+
+/**
+ * @brief Decode a set_initial_mea_mass message into a struct
+ *
+ * @param msg The message to decode
+ * @param set_initial_mea_mass C-struct to decode the message contents into
+ */
+static inline void mavlink_msg_set_initial_mea_mass_decode(const mavlink_message_t* msg, mavlink_set_initial_mea_mass_t* set_initial_mea_mass)
+{
+#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
+    set_initial_mea_mass->mass = mavlink_msg_set_initial_mea_mass_get_mass(msg);
+#else
+        uint8_t len = msg->len < MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_LEN? msg->len : MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_LEN;
+        memset(set_initial_mea_mass, 0, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_LEN);
+    memcpy(set_initial_mea_mass, _MAV_PAYLOAD(msg), len);
+#endif
+}
diff --git a/mavlink_lib/lyra/mavlink_msg_set_initial_mea_mass_tc.h b/mavlink_lib/lyra/mavlink_msg_set_initial_mea_mass_tc.h
new file mode 100644
index 0000000000000000000000000000000000000000..7875d2021eb480c6dad24627ceaab73c5d24f336
--- /dev/null
+++ b/mavlink_lib/lyra/mavlink_msg_set_initial_mea_mass_tc.h
@@ -0,0 +1,213 @@
+#pragma once
+// MESSAGE SET_INITIAL_MEA_MASS_TC PACKING
+
+#define MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC 19
+
+
+typedef struct __mavlink_set_initial_mea_mass_tc_t {
+ float mass; /*< [kg] Mass*/
+} mavlink_set_initial_mea_mass_tc_t;
+
+#define MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_LEN 4
+#define MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_MIN_LEN 4
+#define MAVLINK_MSG_ID_19_LEN 4
+#define MAVLINK_MSG_ID_19_MIN_LEN 4
+
+#define MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_CRC 221
+#define MAVLINK_MSG_ID_19_CRC 221
+
+
+
+#if MAVLINK_COMMAND_24BIT
+#define MAVLINK_MESSAGE_INFO_SET_INITIAL_MEA_MASS_TC { \
+    19, \
+    "SET_INITIAL_MEA_MASS_TC", \
+    1, \
+    {  { "mass", NULL, MAVLINK_TYPE_FLOAT, 0, 0, offsetof(mavlink_set_initial_mea_mass_tc_t, mass) }, \
+         } \
+}
+#else
+#define MAVLINK_MESSAGE_INFO_SET_INITIAL_MEA_MASS_TC { \
+    "SET_INITIAL_MEA_MASS_TC", \
+    1, \
+    {  { "mass", NULL, MAVLINK_TYPE_FLOAT, 0, 0, offsetof(mavlink_set_initial_mea_mass_tc_t, mass) }, \
+         } \
+}
+#endif
+
+/**
+ * @brief Pack a set_initial_mea_mass_tc message
+ * @param system_id ID of this system
+ * @param component_id ID of this component (e.g. 200 for IMU)
+ * @param msg The MAVLink message to compress the data into
+ *
+ * @param mass [kg] Mass
+ * @return length of the message in bytes (excluding serial stream start sign)
+ */
+static inline uint16_t mavlink_msg_set_initial_mea_mass_tc_pack(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg,
+                               float mass)
+{
+#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
+    char buf[MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_LEN];
+    _mav_put_float(buf, 0, mass);
+
+        memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_LEN);
+#else
+    mavlink_set_initial_mea_mass_tc_t packet;
+    packet.mass = mass;
+
+        memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_LEN);
+#endif
+
+    msg->msgid = MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC;
+    return mavlink_finalize_message(msg, system_id, component_id, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_MIN_LEN, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_LEN, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_CRC);
+}
+
+/**
+ * @brief Pack a set_initial_mea_mass_tc message on a channel
+ * @param system_id ID of this system
+ * @param component_id ID of this component (e.g. 200 for IMU)
+ * @param chan The MAVLink channel this message will be sent over
+ * @param msg The MAVLink message to compress the data into
+ * @param mass [kg] Mass
+ * @return length of the message in bytes (excluding serial stream start sign)
+ */
+static inline uint16_t mavlink_msg_set_initial_mea_mass_tc_pack_chan(uint8_t system_id, uint8_t component_id, uint8_t chan,
+                               mavlink_message_t* msg,
+                                   float mass)
+{
+#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
+    char buf[MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_LEN];
+    _mav_put_float(buf, 0, mass);
+
+        memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_LEN);
+#else
+    mavlink_set_initial_mea_mass_tc_t packet;
+    packet.mass = mass;
+
+        memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_LEN);
+#endif
+
+    msg->msgid = MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC;
+    return mavlink_finalize_message_chan(msg, system_id, component_id, chan, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_MIN_LEN, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_LEN, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_CRC);
+}
+
+/**
+ * @brief Encode a set_initial_mea_mass_tc struct
+ *
+ * @param system_id ID of this system
+ * @param component_id ID of this component (e.g. 200 for IMU)
+ * @param msg The MAVLink message to compress the data into
+ * @param set_initial_mea_mass_tc C-struct to read the message contents from
+ */
+static inline uint16_t mavlink_msg_set_initial_mea_mass_tc_encode(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg, const mavlink_set_initial_mea_mass_tc_t* set_initial_mea_mass_tc)
+{
+    return mavlink_msg_set_initial_mea_mass_tc_pack(system_id, component_id, msg, set_initial_mea_mass_tc->mass);
+}
+
+/**
+ * @brief Encode a set_initial_mea_mass_tc struct on a channel
+ *
+ * @param system_id ID of this system
+ * @param component_id ID of this component (e.g. 200 for IMU)
+ * @param chan The MAVLink channel this message will be sent over
+ * @param msg The MAVLink message to compress the data into
+ * @param set_initial_mea_mass_tc C-struct to read the message contents from
+ */
+static inline uint16_t mavlink_msg_set_initial_mea_mass_tc_encode_chan(uint8_t system_id, uint8_t component_id, uint8_t chan, mavlink_message_t* msg, const mavlink_set_initial_mea_mass_tc_t* set_initial_mea_mass_tc)
+{
+    return mavlink_msg_set_initial_mea_mass_tc_pack_chan(system_id, component_id, chan, msg, set_initial_mea_mass_tc->mass);
+}
+
+/**
+ * @brief Send a set_initial_mea_mass_tc message
+ * @param chan MAVLink channel to send the message
+ *
+ * @param mass [kg] Mass
+ */
+#ifdef MAVLINK_USE_CONVENIENCE_FUNCTIONS
+
+static inline void mavlink_msg_set_initial_mea_mass_tc_send(mavlink_channel_t chan, float mass)
+{
+#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
+    char buf[MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_LEN];
+    _mav_put_float(buf, 0, mass);
+
+    _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC, buf, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_MIN_LEN, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_LEN, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_CRC);
+#else
+    mavlink_set_initial_mea_mass_tc_t packet;
+    packet.mass = mass;
+
+    _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC, (const char *)&packet, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_MIN_LEN, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_LEN, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_CRC);
+#endif
+}
+
+/**
+ * @brief Send a set_initial_mea_mass_tc message
+ * @param chan MAVLink channel to send the message
+ * @param struct The MAVLink struct to serialize
+ */
+static inline void mavlink_msg_set_initial_mea_mass_tc_send_struct(mavlink_channel_t chan, const mavlink_set_initial_mea_mass_tc_t* set_initial_mea_mass_tc)
+{
+#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
+    mavlink_msg_set_initial_mea_mass_tc_send(chan, set_initial_mea_mass_tc->mass);
+#else
+    _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC, (const char *)set_initial_mea_mass_tc, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_MIN_LEN, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_LEN, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_CRC);
+#endif
+}
+
+#if MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_LEN <= MAVLINK_MAX_PAYLOAD_LEN
+/*
+  This variant of _send() can be used to save stack space by re-using
+  memory from the receive buffer.  The caller provides a
+  mavlink_message_t which is the size of a full mavlink message. This
+  is usually the receive buffer for the channel, and allows a reply to an
+  incoming message with minimum stack space usage.
+ */
+static inline void mavlink_msg_set_initial_mea_mass_tc_send_buf(mavlink_message_t *msgbuf, mavlink_channel_t chan,  float mass)
+{
+#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
+    char *buf = (char *)msgbuf;
+    _mav_put_float(buf, 0, mass);
+
+    _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC, buf, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_MIN_LEN, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_LEN, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_CRC);
+#else
+    mavlink_set_initial_mea_mass_tc_t *packet = (mavlink_set_initial_mea_mass_tc_t *)msgbuf;
+    packet->mass = mass;
+
+    _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC, (const char *)packet, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_MIN_LEN, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_LEN, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_CRC);
+#endif
+}
+#endif
+
+#endif
+
+// MESSAGE SET_INITIAL_MEA_MASS_TC UNPACKING
+
+
+/**
+ * @brief Get field mass from set_initial_mea_mass_tc message
+ *
+ * @return [kg] Mass
+ */
+static inline float mavlink_msg_set_initial_mea_mass_tc_get_mass(const mavlink_message_t* msg)
+{
+    return _MAV_RETURN_float(msg,  0);
+}
+
+/**
+ * @brief Decode a set_initial_mea_mass_tc message into a struct
+ *
+ * @param msg The message to decode
+ * @param set_initial_mea_mass_tc C-struct to decode the message contents into
+ */
+static inline void mavlink_msg_set_initial_mea_mass_tc_decode(const mavlink_message_t* msg, mavlink_set_initial_mea_mass_tc_t* set_initial_mea_mass_tc)
+{
+#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
+    set_initial_mea_mass_tc->mass = mavlink_msg_set_initial_mea_mass_tc_get_mass(msg);
+#else
+        uint8_t len = msg->len < MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_LEN? msg->len : MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_LEN;
+        memset(set_initial_mea_mass_tc, 0, MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_LEN);
+    memcpy(set_initial_mea_mass_tc, _MAV_PAYLOAD(msg), len);
+#endif
+}
diff --git a/mavlink_lib/lyra/testsuite.h b/mavlink_lib/lyra/testsuite.h
index 1a2e2f6b6c2a1fbf2a6fd9f4b62a92f99eb9df8e..cbab659278a022a048662193defc2c0b25d24c1f 100644
--- a/mavlink_lib/lyra/testsuite.h
+++ b/mavlink_lib/lyra/testsuite.h
@@ -1037,6 +1037,124 @@ static void mavlink_test_set_algorithm_tc(uint8_t system_id, uint8_t component_i
 #endif
 }
 
+static void mavlink_test_set_calibration_pressure_tc(uint8_t system_id, uint8_t component_id, mavlink_message_t *last_msg)
+{
+#ifdef MAVLINK_STATUS_FLAG_OUT_MAVLINK1
+    mavlink_status_t *status = mavlink_get_channel_status(MAVLINK_COMM_0);
+        if ((status->flags & MAVLINK_STATUS_FLAG_OUT_MAVLINK1) && MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC >= 256) {
+            return;
+        }
+#endif
+    mavlink_message_t msg;
+        uint8_t buffer[MAVLINK_MAX_PACKET_LEN];
+        uint16_t i;
+    mavlink_set_calibration_pressure_tc_t packet_in = {
+        17.0
+    };
+    mavlink_set_calibration_pressure_tc_t packet1, packet2;
+        memset(&packet1, 0, sizeof(packet1));
+        packet1.pressure = packet_in.pressure;
+        
+        
+#ifdef MAVLINK_STATUS_FLAG_OUT_MAVLINK1
+        if (status->flags & MAVLINK_STATUS_FLAG_OUT_MAVLINK1) {
+           // cope with extensions
+           memset(MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_MIN_LEN + (char *)&packet1, 0, sizeof(packet1)-MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC_MIN_LEN);
+        }
+#endif
+        memset(&packet2, 0, sizeof(packet2));
+    mavlink_msg_set_calibration_pressure_tc_encode(system_id, component_id, &msg, &packet1);
+    mavlink_msg_set_calibration_pressure_tc_decode(&msg, &packet2);
+        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
+
+        memset(&packet2, 0, sizeof(packet2));
+    mavlink_msg_set_calibration_pressure_tc_pack(system_id, component_id, &msg , packet1.pressure );
+    mavlink_msg_set_calibration_pressure_tc_decode(&msg, &packet2);
+        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
+
+        memset(&packet2, 0, sizeof(packet2));
+    mavlink_msg_set_calibration_pressure_tc_pack_chan(system_id, component_id, MAVLINK_COMM_0, &msg , packet1.pressure );
+    mavlink_msg_set_calibration_pressure_tc_decode(&msg, &packet2);
+        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
+
+        memset(&packet2, 0, sizeof(packet2));
+        mavlink_msg_to_send_buffer(buffer, &msg);
+        for (i=0; i<mavlink_msg_get_send_buffer_length(&msg); i++) {
+            comm_send_ch(MAVLINK_COMM_0, buffer[i]);
+        }
+    mavlink_msg_set_calibration_pressure_tc_decode(last_msg, &packet2);
+        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
+        
+        memset(&packet2, 0, sizeof(packet2));
+    mavlink_msg_set_calibration_pressure_tc_send(MAVLINK_COMM_1 , packet1.pressure );
+    mavlink_msg_set_calibration_pressure_tc_decode(last_msg, &packet2);
+        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
+
+#ifdef MAVLINK_HAVE_GET_MESSAGE_INFO
+    MAVLINK_ASSERT(mavlink_get_message_info_by_name("SET_CALIBRATION_PRESSURE_TC") != NULL);
+    MAVLINK_ASSERT(mavlink_get_message_info_by_id(MAVLINK_MSG_ID_SET_CALIBRATION_PRESSURE_TC) != NULL);
+#endif
+}
+
+static void mavlink_test_set_initial_mea_mass_tc(uint8_t system_id, uint8_t component_id, mavlink_message_t *last_msg)
+{
+#ifdef MAVLINK_STATUS_FLAG_OUT_MAVLINK1
+    mavlink_status_t *status = mavlink_get_channel_status(MAVLINK_COMM_0);
+        if ((status->flags & MAVLINK_STATUS_FLAG_OUT_MAVLINK1) && MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC >= 256) {
+            return;
+        }
+#endif
+    mavlink_message_t msg;
+        uint8_t buffer[MAVLINK_MAX_PACKET_LEN];
+        uint16_t i;
+    mavlink_set_initial_mea_mass_tc_t packet_in = {
+        17.0
+    };
+    mavlink_set_initial_mea_mass_tc_t packet1, packet2;
+        memset(&packet1, 0, sizeof(packet1));
+        packet1.mass = packet_in.mass;
+        
+        
+#ifdef MAVLINK_STATUS_FLAG_OUT_MAVLINK1
+        if (status->flags & MAVLINK_STATUS_FLAG_OUT_MAVLINK1) {
+           // cope with extensions
+           memset(MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_MIN_LEN + (char *)&packet1, 0, sizeof(packet1)-MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC_MIN_LEN);
+        }
+#endif
+        memset(&packet2, 0, sizeof(packet2));
+    mavlink_msg_set_initial_mea_mass_tc_encode(system_id, component_id, &msg, &packet1);
+    mavlink_msg_set_initial_mea_mass_tc_decode(&msg, &packet2);
+        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
+
+        memset(&packet2, 0, sizeof(packet2));
+    mavlink_msg_set_initial_mea_mass_tc_pack(system_id, component_id, &msg , packet1.mass );
+    mavlink_msg_set_initial_mea_mass_tc_decode(&msg, &packet2);
+        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
+
+        memset(&packet2, 0, sizeof(packet2));
+    mavlink_msg_set_initial_mea_mass_tc_pack_chan(system_id, component_id, MAVLINK_COMM_0, &msg , packet1.mass );
+    mavlink_msg_set_initial_mea_mass_tc_decode(&msg, &packet2);
+        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
+
+        memset(&packet2, 0, sizeof(packet2));
+        mavlink_msg_to_send_buffer(buffer, &msg);
+        for (i=0; i<mavlink_msg_get_send_buffer_length(&msg); i++) {
+            comm_send_ch(MAVLINK_COMM_0, buffer[i]);
+        }
+    mavlink_msg_set_initial_mea_mass_tc_decode(last_msg, &packet2);
+        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
+        
+        memset(&packet2, 0, sizeof(packet2));
+    mavlink_msg_set_initial_mea_mass_tc_send(MAVLINK_COMM_1 , packet1.mass );
+    mavlink_msg_set_initial_mea_mass_tc_decode(last_msg, &packet2);
+        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
+
+#ifdef MAVLINK_HAVE_GET_MESSAGE_INFO
+    MAVLINK_ASSERT(mavlink_get_message_info_by_name("SET_INITIAL_MEA_MASS_TC") != NULL);
+    MAVLINK_ASSERT(mavlink_get_message_info_by_id(MAVLINK_MSG_ID_SET_INITIAL_MEA_MASS_TC) != NULL);
+#endif
+}
+
 static void mavlink_test_set_atomic_valve_timing_tc(uint8_t system_id, uint8_t component_id, mavlink_message_t *last_msg)
 {
 #ifdef MAVLINK_STATUS_FLAG_OUT_MAVLINK1
@@ -3614,7 +3732,7 @@ static void mavlink_test_rocket_flight_tm(uint8_t system_id, uint8_t component_i
         uint8_t buffer[MAVLINK_MAX_PACKET_LEN];
         uint16_t i;
     mavlink_rocket_flight_tm_t packet_in = {
-        93372036854775807ULL,73.0,101.0,129.0,157.0,185.0,213.0,241.0,269.0,297.0,325.0,353.0,381.0,409.0,437.0,465.0,493.0,521.0,549.0,577.0,605.0,633.0,661.0,689.0,717.0,745.0,773.0,801.0,829.0,857.0,885.0,913.0,941.0,969.0,997.0,1025.0,1053.0,1081.0,1109.0,1137.0,1165.0,1193.0,1221.0,21
+        93372036854775807ULL,73.0,101.0,129.0,157.0,185.0,213.0,241.0,269.0,297.0,325.0,353.0,381.0,409.0,437.0,465.0,493.0,521.0,549.0,577.0,605.0,633.0,661.0,689.0,717.0,745.0,773.0,801.0,829.0,857.0,885.0,913.0,941.0,969.0,997.0,1025.0,1053.0,1081.0,1109.0,1137.0,1165.0,1193.0,1221.0,21,88
     };
     mavlink_rocket_flight_tm_t packet1, packet2;
         memset(&packet1, 0, sizeof(packet1));
@@ -3662,6 +3780,7 @@ static void mavlink_test_rocket_flight_tm(uint8_t system_id, uint8_t component_i
         packet1.cam_battery_voltage = packet_in.cam_battery_voltage;
         packet1.temperature = packet_in.temperature;
         packet1.gps_fix = packet_in.gps_fix;
+        packet1.fmm_state = packet_in.fmm_state;
         
         
 #ifdef MAVLINK_STATUS_FLAG_OUT_MAVLINK1
@@ -3676,12 +3795,12 @@ static void mavlink_test_rocket_flight_tm(uint8_t system_id, uint8_t component_i
         MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
 
         memset(&packet2, 0, sizeof(packet2));
-    mavlink_msg_rocket_flight_tm_pack(system_id, component_id, &msg , packet1.timestamp , packet1.pressure_ada , packet1.pressure_digi , packet1.pressure_static , packet1.pressure_dpl , packet1.airspeed_pitot , packet1.altitude_agl , packet1.ada_vert_speed , packet1.mea_mass , packet1.mea_apogee , packet1.acc_x , packet1.acc_y , packet1.acc_z , packet1.gyro_x , packet1.gyro_y , packet1.gyro_z , packet1.mag_x , packet1.mag_y , packet1.mag_z , packet1.vn100_qx , packet1.vn100_qy , packet1.vn100_qz , packet1.vn100_qw , packet1.gps_fix , packet1.gps_lat , packet1.gps_lon , packet1.gps_alt , packet1.abk_angle , packet1.nas_n , packet1.nas_e , packet1.nas_d , packet1.nas_vn , packet1.nas_ve , packet1.nas_vd , packet1.nas_qx , packet1.nas_qy , packet1.nas_qz , packet1.nas_qw , packet1.nas_bias_x , packet1.nas_bias_y , packet1.nas_bias_z , packet1.battery_voltage , packet1.cam_battery_voltage , packet1.temperature );
+    mavlink_msg_rocket_flight_tm_pack(system_id, component_id, &msg , packet1.timestamp , packet1.pressure_ada , packet1.pressure_digi , packet1.pressure_static , packet1.pressure_dpl , packet1.airspeed_pitot , packet1.altitude_agl , packet1.ada_vert_speed , packet1.mea_mass , packet1.mea_apogee , packet1.acc_x , packet1.acc_y , packet1.acc_z , packet1.gyro_x , packet1.gyro_y , packet1.gyro_z , packet1.mag_x , packet1.mag_y , packet1.mag_z , packet1.vn100_qx , packet1.vn100_qy , packet1.vn100_qz , packet1.vn100_qw , packet1.gps_fix , packet1.gps_lat , packet1.gps_lon , packet1.gps_alt , packet1.fmm_state , packet1.abk_angle , packet1.nas_n , packet1.nas_e , packet1.nas_d , packet1.nas_vn , packet1.nas_ve , packet1.nas_vd , packet1.nas_qx , packet1.nas_qy , packet1.nas_qz , packet1.nas_qw , packet1.nas_bias_x , packet1.nas_bias_y , packet1.nas_bias_z , packet1.battery_voltage , packet1.cam_battery_voltage , packet1.temperature );
     mavlink_msg_rocket_flight_tm_decode(&msg, &packet2);
         MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
 
         memset(&packet2, 0, sizeof(packet2));
-    mavlink_msg_rocket_flight_tm_pack_chan(system_id, component_id, MAVLINK_COMM_0, &msg , packet1.timestamp , packet1.pressure_ada , packet1.pressure_digi , packet1.pressure_static , packet1.pressure_dpl , packet1.airspeed_pitot , packet1.altitude_agl , packet1.ada_vert_speed , packet1.mea_mass , packet1.mea_apogee , packet1.acc_x , packet1.acc_y , packet1.acc_z , packet1.gyro_x , packet1.gyro_y , packet1.gyro_z , packet1.mag_x , packet1.mag_y , packet1.mag_z , packet1.vn100_qx , packet1.vn100_qy , packet1.vn100_qz , packet1.vn100_qw , packet1.gps_fix , packet1.gps_lat , packet1.gps_lon , packet1.gps_alt , packet1.abk_angle , packet1.nas_n , packet1.nas_e , packet1.nas_d , packet1.nas_vn , packet1.nas_ve , packet1.nas_vd , packet1.nas_qx , packet1.nas_qy , packet1.nas_qz , packet1.nas_qw , packet1.nas_bias_x , packet1.nas_bias_y , packet1.nas_bias_z , packet1.battery_voltage , packet1.cam_battery_voltage , packet1.temperature );
+    mavlink_msg_rocket_flight_tm_pack_chan(system_id, component_id, MAVLINK_COMM_0, &msg , packet1.timestamp , packet1.pressure_ada , packet1.pressure_digi , packet1.pressure_static , packet1.pressure_dpl , packet1.airspeed_pitot , packet1.altitude_agl , packet1.ada_vert_speed , packet1.mea_mass , packet1.mea_apogee , packet1.acc_x , packet1.acc_y , packet1.acc_z , packet1.gyro_x , packet1.gyro_y , packet1.gyro_z , packet1.mag_x , packet1.mag_y , packet1.mag_z , packet1.vn100_qx , packet1.vn100_qy , packet1.vn100_qz , packet1.vn100_qw , packet1.gps_fix , packet1.gps_lat , packet1.gps_lon , packet1.gps_alt , packet1.fmm_state , packet1.abk_angle , packet1.nas_n , packet1.nas_e , packet1.nas_d , packet1.nas_vn , packet1.nas_ve , packet1.nas_vd , packet1.nas_qx , packet1.nas_qy , packet1.nas_qz , packet1.nas_qw , packet1.nas_bias_x , packet1.nas_bias_y , packet1.nas_bias_z , packet1.battery_voltage , packet1.cam_battery_voltage , packet1.temperature );
     mavlink_msg_rocket_flight_tm_decode(&msg, &packet2);
         MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
 
@@ -3694,7 +3813,7 @@ static void mavlink_test_rocket_flight_tm(uint8_t system_id, uint8_t component_i
         MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
         
         memset(&packet2, 0, sizeof(packet2));
-    mavlink_msg_rocket_flight_tm_send(MAVLINK_COMM_1 , packet1.timestamp , packet1.pressure_ada , packet1.pressure_digi , packet1.pressure_static , packet1.pressure_dpl , packet1.airspeed_pitot , packet1.altitude_agl , packet1.ada_vert_speed , packet1.mea_mass , packet1.mea_apogee , packet1.acc_x , packet1.acc_y , packet1.acc_z , packet1.gyro_x , packet1.gyro_y , packet1.gyro_z , packet1.mag_x , packet1.mag_y , packet1.mag_z , packet1.vn100_qx , packet1.vn100_qy , packet1.vn100_qz , packet1.vn100_qw , packet1.gps_fix , packet1.gps_lat , packet1.gps_lon , packet1.gps_alt , packet1.abk_angle , packet1.nas_n , packet1.nas_e , packet1.nas_d , packet1.nas_vn , packet1.nas_ve , packet1.nas_vd , packet1.nas_qx , packet1.nas_qy , packet1.nas_qz , packet1.nas_qw , packet1.nas_bias_x , packet1.nas_bias_y , packet1.nas_bias_z , packet1.battery_voltage , packet1.cam_battery_voltage , packet1.temperature );
+    mavlink_msg_rocket_flight_tm_send(MAVLINK_COMM_1 , packet1.timestamp , packet1.pressure_ada , packet1.pressure_digi , packet1.pressure_static , packet1.pressure_dpl , packet1.airspeed_pitot , packet1.altitude_agl , packet1.ada_vert_speed , packet1.mea_mass , packet1.mea_apogee , packet1.acc_x , packet1.acc_y , packet1.acc_z , packet1.gyro_x , packet1.gyro_y , packet1.gyro_z , packet1.mag_x , packet1.mag_y , packet1.mag_z , packet1.vn100_qx , packet1.vn100_qy , packet1.vn100_qz , packet1.vn100_qw , packet1.gps_fix , packet1.gps_lat , packet1.gps_lon , packet1.gps_alt , packet1.fmm_state , packet1.abk_angle , packet1.nas_n , packet1.nas_e , packet1.nas_d , packet1.nas_vn , packet1.nas_ve , packet1.nas_vd , packet1.nas_qx , packet1.nas_qy , packet1.nas_qz , packet1.nas_qw , packet1.nas_bias_x , packet1.nas_bias_y , packet1.nas_bias_z , packet1.battery_voltage , packet1.cam_battery_voltage , packet1.temperature );
     mavlink_msg_rocket_flight_tm_decode(last_msg, &packet2);
         MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
 
@@ -3716,7 +3835,7 @@ static void mavlink_test_payload_flight_tm(uint8_t system_id, uint8_t component_
         uint8_t buffer[MAVLINK_MAX_PACKET_LEN];
         uint16_t i;
     mavlink_payload_flight_tm_t packet_in = {
-        93372036854775807ULL,73.0,101.0,129.0,157.0,185.0,213.0,241.0,269.0,297.0,325.0,353.0,381.0,409.0,437.0,465.0,493.0,521.0,549.0,577.0,605.0,633.0,661.0,689.0,717.0,745.0,773.0,801.0,829.0,857.0,885.0,913.0,941.0,969.0,997.0,1025.0,1053.0,205
+        93372036854775807ULL,73.0,101.0,129.0,157.0,185.0,213.0,241.0,269.0,297.0,325.0,353.0,381.0,409.0,437.0,465.0,493.0,521.0,549.0,577.0,605.0,633.0,661.0,689.0,717.0,745.0,773.0,801.0,829.0,857.0,885.0,913.0,941.0,969.0,997.0,1025.0,1053.0,205,16
     };
     mavlink_payload_flight_tm_t packet1, packet2;
         memset(&packet1, 0, sizeof(packet1));
@@ -3758,6 +3877,7 @@ static void mavlink_test_payload_flight_tm(uint8_t system_id, uint8_t component_
         packet1.cam_battery_voltage = packet_in.cam_battery_voltage;
         packet1.temperature = packet_in.temperature;
         packet1.gps_fix = packet_in.gps_fix;
+        packet1.fmm_state = packet_in.fmm_state;
         
         
 #ifdef MAVLINK_STATUS_FLAG_OUT_MAVLINK1
@@ -3772,12 +3892,12 @@ static void mavlink_test_payload_flight_tm(uint8_t system_id, uint8_t component_
         MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
 
         memset(&packet2, 0, sizeof(packet2));
-    mavlink_msg_payload_flight_tm_pack(system_id, component_id, &msg , packet1.timestamp , packet1.pressure_digi , packet1.pressure_static , packet1.airspeed_pitot , packet1.altitude_agl , packet1.acc_x , packet1.acc_y , packet1.acc_z , packet1.gyro_x , packet1.gyro_y , packet1.gyro_z , packet1.mag_x , packet1.mag_y , packet1.mag_z , packet1.gps_fix , packet1.gps_lat , packet1.gps_lon , packet1.gps_alt , packet1.left_servo_angle , packet1.right_servo_angle , packet1.nas_n , packet1.nas_e , packet1.nas_d , packet1.nas_vn , packet1.nas_ve , packet1.nas_vd , packet1.nas_qx , packet1.nas_qy , packet1.nas_qz , packet1.nas_qw , packet1.nas_bias_x , packet1.nas_bias_y , packet1.nas_bias_z , packet1.wes_n , packet1.wes_e , packet1.battery_voltage , packet1.cam_battery_voltage , packet1.temperature );
+    mavlink_msg_payload_flight_tm_pack(system_id, component_id, &msg , packet1.timestamp , packet1.pressure_digi , packet1.pressure_static , packet1.airspeed_pitot , packet1.altitude_agl , packet1.acc_x , packet1.acc_y , packet1.acc_z , packet1.gyro_x , packet1.gyro_y , packet1.gyro_z , packet1.mag_x , packet1.mag_y , packet1.mag_z , packet1.gps_fix , packet1.gps_lat , packet1.gps_lon , packet1.gps_alt , packet1.fmm_state , packet1.left_servo_angle , packet1.right_servo_angle , packet1.nas_n , packet1.nas_e , packet1.nas_d , packet1.nas_vn , packet1.nas_ve , packet1.nas_vd , packet1.nas_qx , packet1.nas_qy , packet1.nas_qz , packet1.nas_qw , packet1.nas_bias_x , packet1.nas_bias_y , packet1.nas_bias_z , packet1.wes_n , packet1.wes_e , packet1.battery_voltage , packet1.cam_battery_voltage , packet1.temperature );
     mavlink_msg_payload_flight_tm_decode(&msg, &packet2);
         MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
 
         memset(&packet2, 0, sizeof(packet2));
-    mavlink_msg_payload_flight_tm_pack_chan(system_id, component_id, MAVLINK_COMM_0, &msg , packet1.timestamp , packet1.pressure_digi , packet1.pressure_static , packet1.airspeed_pitot , packet1.altitude_agl , packet1.acc_x , packet1.acc_y , packet1.acc_z , packet1.gyro_x , packet1.gyro_y , packet1.gyro_z , packet1.mag_x , packet1.mag_y , packet1.mag_z , packet1.gps_fix , packet1.gps_lat , packet1.gps_lon , packet1.gps_alt , packet1.left_servo_angle , packet1.right_servo_angle , packet1.nas_n , packet1.nas_e , packet1.nas_d , packet1.nas_vn , packet1.nas_ve , packet1.nas_vd , packet1.nas_qx , packet1.nas_qy , packet1.nas_qz , packet1.nas_qw , packet1.nas_bias_x , packet1.nas_bias_y , packet1.nas_bias_z , packet1.wes_n , packet1.wes_e , packet1.battery_voltage , packet1.cam_battery_voltage , packet1.temperature );
+    mavlink_msg_payload_flight_tm_pack_chan(system_id, component_id, MAVLINK_COMM_0, &msg , packet1.timestamp , packet1.pressure_digi , packet1.pressure_static , packet1.airspeed_pitot , packet1.altitude_agl , packet1.acc_x , packet1.acc_y , packet1.acc_z , packet1.gyro_x , packet1.gyro_y , packet1.gyro_z , packet1.mag_x , packet1.mag_y , packet1.mag_z , packet1.gps_fix , packet1.gps_lat , packet1.gps_lon , packet1.gps_alt , packet1.fmm_state , packet1.left_servo_angle , packet1.right_servo_angle , packet1.nas_n , packet1.nas_e , packet1.nas_d , packet1.nas_vn , packet1.nas_ve , packet1.nas_vd , packet1.nas_qx , packet1.nas_qy , packet1.nas_qz , packet1.nas_qw , packet1.nas_bias_x , packet1.nas_bias_y , packet1.nas_bias_z , packet1.wes_n , packet1.wes_e , packet1.battery_voltage , packet1.cam_battery_voltage , packet1.temperature );
     mavlink_msg_payload_flight_tm_decode(&msg, &packet2);
         MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
 
@@ -3790,7 +3910,7 @@ static void mavlink_test_payload_flight_tm(uint8_t system_id, uint8_t component_
         MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
         
         memset(&packet2, 0, sizeof(packet2));
-    mavlink_msg_payload_flight_tm_send(MAVLINK_COMM_1 , packet1.timestamp , packet1.pressure_digi , packet1.pressure_static , packet1.airspeed_pitot , packet1.altitude_agl , packet1.acc_x , packet1.acc_y , packet1.acc_z , packet1.gyro_x , packet1.gyro_y , packet1.gyro_z , packet1.mag_x , packet1.mag_y , packet1.mag_z , packet1.gps_fix , packet1.gps_lat , packet1.gps_lon , packet1.gps_alt , packet1.left_servo_angle , packet1.right_servo_angle , packet1.nas_n , packet1.nas_e , packet1.nas_d , packet1.nas_vn , packet1.nas_ve , packet1.nas_vd , packet1.nas_qx , packet1.nas_qy , packet1.nas_qz , packet1.nas_qw , packet1.nas_bias_x , packet1.nas_bias_y , packet1.nas_bias_z , packet1.wes_n , packet1.wes_e , packet1.battery_voltage , packet1.cam_battery_voltage , packet1.temperature );
+    mavlink_msg_payload_flight_tm_send(MAVLINK_COMM_1 , packet1.timestamp , packet1.pressure_digi , packet1.pressure_static , packet1.airspeed_pitot , packet1.altitude_agl , packet1.acc_x , packet1.acc_y , packet1.acc_z , packet1.gyro_x , packet1.gyro_y , packet1.gyro_z , packet1.mag_x , packet1.mag_y , packet1.mag_z , packet1.gps_fix , packet1.gps_lat , packet1.gps_lon , packet1.gps_alt , packet1.fmm_state , packet1.left_servo_angle , packet1.right_servo_angle , packet1.nas_n , packet1.nas_e , packet1.nas_d , packet1.nas_vn , packet1.nas_ve , packet1.nas_vd , packet1.nas_qx , packet1.nas_qy , packet1.nas_qz , packet1.nas_qw , packet1.nas_bias_x , packet1.nas_bias_y , packet1.nas_bias_z , packet1.wes_n , packet1.wes_e , packet1.battery_voltage , packet1.cam_battery_voltage , packet1.temperature );
     mavlink_msg_payload_flight_tm_decode(last_msg, &packet2);
         MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
 
@@ -3812,14 +3932,16 @@ static void mavlink_test_rocket_stats_tm(uint8_t system_id, uint8_t component_id
         uint8_t buffer[MAVLINK_MAX_PACKET_LEN];
         uint16_t i;
     mavlink_rocket_stats_tm_t packet_in = {
-        93372036854775807ULL,93372036854776311ULL,93372036854776815ULL,93372036854777319ULL,93372036854777823ULL,93372036854778327ULL,93372036854778831ULL,93372036854779335ULL,93372036854779839ULL,521.0,549.0,577.0,605.0,633.0,661.0,689.0,717.0,745.0,773.0,801.0,829.0,857.0,885.0,913.0,963504328,969.0,963504744,24723,59,126,193,4,71,138,205,16,83,150,217,28,95,162,229
+        93372036854775807ULL,93372036854776311ULL,93372036854776815ULL,93372036854777319ULL,93372036854777823ULL,93372036854778327ULL,93372036854778831ULL,93372036854779335ULL,93372036854779839ULL,93372036854780343ULL,93372036854780847ULL,633.0,661.0,689.0,717.0,745.0,773.0,801.0,829.0,857.0,885.0,913.0,941.0,969.0,997.0,1025.0,1053.0,963505368,1109.0,963505784,25763,119,186,253,64,131,198,9,76,143,210,21,88,155,222
     };
     mavlink_rocket_stats_tm_t packet1, packet2;
         memset(&packet1, 0, sizeof(packet1));
+        packet1.timestamp = packet_in.timestamp;
         packet1.liftoff_ts = packet_in.liftoff_ts;
         packet1.liftoff_max_acc_ts = packet_in.liftoff_max_acc_ts;
         packet1.max_speed_ts = packet_in.max_speed_ts;
         packet1.max_mach_ts = packet_in.max_mach_ts;
+        packet1.shutdown_ts = packet_in.shutdown_ts;
         packet1.apogee_ts = packet_in.apogee_ts;
         packet1.apogee_max_acc_ts = packet_in.apogee_max_acc_ts;
         packet1.dpl_ts = packet_in.dpl_ts;
@@ -3829,6 +3951,7 @@ static void mavlink_test_rocket_stats_tm(uint8_t system_id, uint8_t component_id
         packet1.max_speed = packet_in.max_speed;
         packet1.max_speed_altitude = packet_in.max_speed_altitude;
         packet1.max_mach = packet_in.max_mach;
+        packet1.shutdown_alt = packet_in.shutdown_alt;
         packet1.apogee_lat = packet_in.apogee_lat;
         packet1.apogee_lon = packet_in.apogee_lon;
         packet1.apogee_alt = packet_in.apogee_alt;
@@ -3845,7 +3968,6 @@ static void mavlink_test_rocket_stats_tm(uint8_t system_id, uint8_t component_id
         packet1.log_good = packet_in.log_good;
         packet1.log_number = packet_in.log_number;
         packet1.ada_state = packet_in.ada_state;
-        packet1.fmm_state = packet_in.fmm_state;
         packet1.abk_state = packet_in.abk_state;
         packet1.nas_state = packet_in.nas_state;
         packet1.mea_state = packet_in.mea_state;
@@ -3873,12 +3995,12 @@ static void mavlink_test_rocket_stats_tm(uint8_t system_id, uint8_t component_id
         MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
 
         memset(&packet2, 0, sizeof(packet2));
-    mavlink_msg_rocket_stats_tm_pack(system_id, component_id, &msg , packet1.liftoff_ts , packet1.liftoff_max_acc_ts , packet1.liftoff_max_acc , packet1.max_speed_ts , packet1.max_speed , packet1.max_speed_altitude , packet1.max_mach_ts , packet1.max_mach , packet1.apogee_ts , packet1.apogee_lat , packet1.apogee_lon , packet1.apogee_alt , packet1.apogee_max_acc_ts , packet1.apogee_max_acc , packet1.dpl_ts , packet1.dpl_alt , packet1.dpl_max_acc_ts , packet1.dpl_max_acc , packet1.dpl_bay_max_pressure_ts , packet1.dpl_bay_max_pressure , packet1.ref_lat , packet1.ref_lon , packet1.ref_alt , packet1.cpu_load , packet1.free_heap , packet1.ada_state , packet1.fmm_state , packet1.abk_state , packet1.nas_state , packet1.mea_state , packet1.exp_angle , packet1.pin_launch , packet1.pin_nosecone , packet1.pin_expulsion , packet1.cutter_presence , packet1.log_number , packet1.log_good , packet1.payload_board_state , packet1.motor_board_state , packet1.payload_can_status , packet1.motor_can_status , packet1.rig_can_status , packet1.hil_state );
+    mavlink_msg_rocket_stats_tm_pack(system_id, component_id, &msg , packet1.timestamp , packet1.liftoff_ts , packet1.liftoff_max_acc_ts , packet1.liftoff_max_acc , packet1.max_speed_ts , packet1.max_speed , packet1.max_speed_altitude , packet1.max_mach_ts , packet1.max_mach , packet1.shutdown_ts , packet1.shutdown_alt , packet1.apogee_ts , packet1.apogee_lat , packet1.apogee_lon , packet1.apogee_alt , packet1.apogee_max_acc_ts , packet1.apogee_max_acc , packet1.dpl_ts , packet1.dpl_alt , packet1.dpl_max_acc_ts , packet1.dpl_max_acc , packet1.dpl_bay_max_pressure_ts , packet1.dpl_bay_max_pressure , packet1.ref_lat , packet1.ref_lon , packet1.ref_alt , packet1.cpu_load , packet1.free_heap , packet1.ada_state , packet1.abk_state , packet1.nas_state , packet1.mea_state , packet1.exp_angle , packet1.pin_launch , packet1.pin_nosecone , packet1.pin_expulsion , packet1.cutter_presence , packet1.log_number , packet1.log_good , packet1.payload_board_state , packet1.motor_board_state , packet1.payload_can_status , packet1.motor_can_status , packet1.rig_can_status , packet1.hil_state );
     mavlink_msg_rocket_stats_tm_decode(&msg, &packet2);
         MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
 
         memset(&packet2, 0, sizeof(packet2));
-    mavlink_msg_rocket_stats_tm_pack_chan(system_id, component_id, MAVLINK_COMM_0, &msg , packet1.liftoff_ts , packet1.liftoff_max_acc_ts , packet1.liftoff_max_acc , packet1.max_speed_ts , packet1.max_speed , packet1.max_speed_altitude , packet1.max_mach_ts , packet1.max_mach , packet1.apogee_ts , packet1.apogee_lat , packet1.apogee_lon , packet1.apogee_alt , packet1.apogee_max_acc_ts , packet1.apogee_max_acc , packet1.dpl_ts , packet1.dpl_alt , packet1.dpl_max_acc_ts , packet1.dpl_max_acc , packet1.dpl_bay_max_pressure_ts , packet1.dpl_bay_max_pressure , packet1.ref_lat , packet1.ref_lon , packet1.ref_alt , packet1.cpu_load , packet1.free_heap , packet1.ada_state , packet1.fmm_state , packet1.abk_state , packet1.nas_state , packet1.mea_state , packet1.exp_angle , packet1.pin_launch , packet1.pin_nosecone , packet1.pin_expulsion , packet1.cutter_presence , packet1.log_number , packet1.log_good , packet1.payload_board_state , packet1.motor_board_state , packet1.payload_can_status , packet1.motor_can_status , packet1.rig_can_status , packet1.hil_state );
+    mavlink_msg_rocket_stats_tm_pack_chan(system_id, component_id, MAVLINK_COMM_0, &msg , packet1.timestamp , packet1.liftoff_ts , packet1.liftoff_max_acc_ts , packet1.liftoff_max_acc , packet1.max_speed_ts , packet1.max_speed , packet1.max_speed_altitude , packet1.max_mach_ts , packet1.max_mach , packet1.shutdown_ts , packet1.shutdown_alt , packet1.apogee_ts , packet1.apogee_lat , packet1.apogee_lon , packet1.apogee_alt , packet1.apogee_max_acc_ts , packet1.apogee_max_acc , packet1.dpl_ts , packet1.dpl_alt , packet1.dpl_max_acc_ts , packet1.dpl_max_acc , packet1.dpl_bay_max_pressure_ts , packet1.dpl_bay_max_pressure , packet1.ref_lat , packet1.ref_lon , packet1.ref_alt , packet1.cpu_load , packet1.free_heap , packet1.ada_state , packet1.abk_state , packet1.nas_state , packet1.mea_state , packet1.exp_angle , packet1.pin_launch , packet1.pin_nosecone , packet1.pin_expulsion , packet1.cutter_presence , packet1.log_number , packet1.log_good , packet1.payload_board_state , packet1.motor_board_state , packet1.payload_can_status , packet1.motor_can_status , packet1.rig_can_status , packet1.hil_state );
     mavlink_msg_rocket_stats_tm_decode(&msg, &packet2);
         MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
 
@@ -3891,7 +4013,7 @@ static void mavlink_test_rocket_stats_tm(uint8_t system_id, uint8_t component_id
         MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
         
         memset(&packet2, 0, sizeof(packet2));
-    mavlink_msg_rocket_stats_tm_send(MAVLINK_COMM_1 , packet1.liftoff_ts , packet1.liftoff_max_acc_ts , packet1.liftoff_max_acc , packet1.max_speed_ts , packet1.max_speed , packet1.max_speed_altitude , packet1.max_mach_ts , packet1.max_mach , packet1.apogee_ts , packet1.apogee_lat , packet1.apogee_lon , packet1.apogee_alt , packet1.apogee_max_acc_ts , packet1.apogee_max_acc , packet1.dpl_ts , packet1.dpl_alt , packet1.dpl_max_acc_ts , packet1.dpl_max_acc , packet1.dpl_bay_max_pressure_ts , packet1.dpl_bay_max_pressure , packet1.ref_lat , packet1.ref_lon , packet1.ref_alt , packet1.cpu_load , packet1.free_heap , packet1.ada_state , packet1.fmm_state , packet1.abk_state , packet1.nas_state , packet1.mea_state , packet1.exp_angle , packet1.pin_launch , packet1.pin_nosecone , packet1.pin_expulsion , packet1.cutter_presence , packet1.log_number , packet1.log_good , packet1.payload_board_state , packet1.motor_board_state , packet1.payload_can_status , packet1.motor_can_status , packet1.rig_can_status , packet1.hil_state );
+    mavlink_msg_rocket_stats_tm_send(MAVLINK_COMM_1 , packet1.timestamp , packet1.liftoff_ts , packet1.liftoff_max_acc_ts , packet1.liftoff_max_acc , packet1.max_speed_ts , packet1.max_speed , packet1.max_speed_altitude , packet1.max_mach_ts , packet1.max_mach , packet1.shutdown_ts , packet1.shutdown_alt , packet1.apogee_ts , packet1.apogee_lat , packet1.apogee_lon , packet1.apogee_alt , packet1.apogee_max_acc_ts , packet1.apogee_max_acc , packet1.dpl_ts , packet1.dpl_alt , packet1.dpl_max_acc_ts , packet1.dpl_max_acc , packet1.dpl_bay_max_pressure_ts , packet1.dpl_bay_max_pressure , packet1.ref_lat , packet1.ref_lon , packet1.ref_alt , packet1.cpu_load , packet1.free_heap , packet1.ada_state , packet1.abk_state , packet1.nas_state , packet1.mea_state , packet1.exp_angle , packet1.pin_launch , packet1.pin_nosecone , packet1.pin_expulsion , packet1.cutter_presence , packet1.log_number , packet1.log_good , packet1.payload_board_state , packet1.motor_board_state , packet1.payload_can_status , packet1.motor_can_status , packet1.rig_can_status , packet1.hil_state );
     mavlink_msg_rocket_stats_tm_decode(last_msg, &packet2);
         MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
 
@@ -3913,7 +4035,7 @@ static void mavlink_test_payload_stats_tm(uint8_t system_id, uint8_t component_i
         uint8_t buffer[MAVLINK_MAX_PACKET_LEN];
         uint16_t i;
     mavlink_payload_stats_tm_t packet_in = {
-        93372036854775807ULL,93372036854776311ULL,93372036854776815ULL,93372036854777319ULL,93372036854777823ULL,93372036854778327ULL,93372036854778831ULL,93372036854779335ULL,465.0,493.0,521.0,549.0,577.0,605.0,633.0,661.0,689.0,717.0,745.0,773.0,801.0,829.0,857.0,885.0,913.0,941.0,969.0,997.0,1025.0,963505160,963505368,25347,95,162,229,40,107,174,241,52,119,186,253,64
+        93372036854775807ULL,93372036854776311ULL,93372036854776815ULL,93372036854777319ULL,93372036854777823ULL,93372036854778327ULL,93372036854778831ULL,93372036854779335ULL,465.0,493.0,521.0,549.0,577.0,605.0,633.0,661.0,689.0,717.0,745.0,773.0,801.0,829.0,857.0,885.0,913.0,941.0,969.0,997.0,1025.0,963505160,963505368,25347,95,162,229,40,107,174,241,52,119,186,253
     };
     mavlink_payload_stats_tm_t packet1, packet2;
         memset(&packet1, 0, sizeof(packet1));
@@ -3949,7 +4071,6 @@ static void mavlink_test_payload_stats_tm(uint8_t system_id, uint8_t component_i
         packet1.free_heap = packet_in.free_heap;
         packet1.log_good = packet_in.log_good;
         packet1.log_number = packet_in.log_number;
-        packet1.fmm_state = packet_in.fmm_state;
         packet1.nas_state = packet_in.nas_state;
         packet1.wes_state = packet_in.wes_state;
         packet1.pin_launch = packet_in.pin_launch;
@@ -3975,12 +4096,12 @@ static void mavlink_test_payload_stats_tm(uint8_t system_id, uint8_t component_i
         MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
 
         memset(&packet2, 0, sizeof(packet2));
-    mavlink_msg_payload_stats_tm_pack(system_id, component_id, &msg , packet1.liftoff_ts , packet1.liftoff_max_acc_ts , packet1.liftoff_max_acc , packet1.max_speed_ts , packet1.max_speed , packet1.max_speed_altitude , packet1.max_mach_ts , packet1.max_mach , packet1.apogee_ts , packet1.apogee_lat , packet1.apogee_lon , packet1.apogee_alt , packet1.apogee_max_acc_ts , packet1.apogee_max_acc , packet1.wing_emc_n , packet1.wing_emc_e , packet1.wing_m1_n , packet1.wing_m1_e , packet1.wing_m2_n , packet1.wing_m2_e , packet1.dpl_ts , packet1.dpl_alt , packet1.dpl_max_acc_ts , packet1.dpl_max_acc , packet1.ref_lat , packet1.ref_lon , packet1.ref_alt , packet1.min_pressure , packet1.cpu_load , packet1.free_heap , packet1.fmm_state , packet1.nas_state , packet1.wes_state , packet1.pin_launch , packet1.pin_nosecone , packet1.cutter_presence , packet1.log_number , packet1.log_good , packet1.main_board_state , packet1.motor_board_state , packet1.main_can_status , packet1.motor_can_status , packet1.rig_can_status , packet1.hil_state );
+    mavlink_msg_payload_stats_tm_pack(system_id, component_id, &msg , packet1.liftoff_ts , packet1.liftoff_max_acc_ts , packet1.liftoff_max_acc , packet1.max_speed_ts , packet1.max_speed , packet1.max_speed_altitude , packet1.max_mach_ts , packet1.max_mach , packet1.apogee_ts , packet1.apogee_lat , packet1.apogee_lon , packet1.apogee_alt , packet1.apogee_max_acc_ts , packet1.apogee_max_acc , packet1.wing_emc_n , packet1.wing_emc_e , packet1.wing_m1_n , packet1.wing_m1_e , packet1.wing_m2_n , packet1.wing_m2_e , packet1.dpl_ts , packet1.dpl_alt , packet1.dpl_max_acc_ts , packet1.dpl_max_acc , packet1.ref_lat , packet1.ref_lon , packet1.ref_alt , packet1.min_pressure , packet1.cpu_load , packet1.free_heap , packet1.nas_state , packet1.wes_state , packet1.pin_launch , packet1.pin_nosecone , packet1.cutter_presence , packet1.log_number , packet1.log_good , packet1.main_board_state , packet1.motor_board_state , packet1.main_can_status , packet1.motor_can_status , packet1.rig_can_status , packet1.hil_state );
     mavlink_msg_payload_stats_tm_decode(&msg, &packet2);
         MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
 
         memset(&packet2, 0, sizeof(packet2));
-    mavlink_msg_payload_stats_tm_pack_chan(system_id, component_id, MAVLINK_COMM_0, &msg , packet1.liftoff_ts , packet1.liftoff_max_acc_ts , packet1.liftoff_max_acc , packet1.max_speed_ts , packet1.max_speed , packet1.max_speed_altitude , packet1.max_mach_ts , packet1.max_mach , packet1.apogee_ts , packet1.apogee_lat , packet1.apogee_lon , packet1.apogee_alt , packet1.apogee_max_acc_ts , packet1.apogee_max_acc , packet1.wing_emc_n , packet1.wing_emc_e , packet1.wing_m1_n , packet1.wing_m1_e , packet1.wing_m2_n , packet1.wing_m2_e , packet1.dpl_ts , packet1.dpl_alt , packet1.dpl_max_acc_ts , packet1.dpl_max_acc , packet1.ref_lat , packet1.ref_lon , packet1.ref_alt , packet1.min_pressure , packet1.cpu_load , packet1.free_heap , packet1.fmm_state , packet1.nas_state , packet1.wes_state , packet1.pin_launch , packet1.pin_nosecone , packet1.cutter_presence , packet1.log_number , packet1.log_good , packet1.main_board_state , packet1.motor_board_state , packet1.main_can_status , packet1.motor_can_status , packet1.rig_can_status , packet1.hil_state );
+    mavlink_msg_payload_stats_tm_pack_chan(system_id, component_id, MAVLINK_COMM_0, &msg , packet1.liftoff_ts , packet1.liftoff_max_acc_ts , packet1.liftoff_max_acc , packet1.max_speed_ts , packet1.max_speed , packet1.max_speed_altitude , packet1.max_mach_ts , packet1.max_mach , packet1.apogee_ts , packet1.apogee_lat , packet1.apogee_lon , packet1.apogee_alt , packet1.apogee_max_acc_ts , packet1.apogee_max_acc , packet1.wing_emc_n , packet1.wing_emc_e , packet1.wing_m1_n , packet1.wing_m1_e , packet1.wing_m2_n , packet1.wing_m2_e , packet1.dpl_ts , packet1.dpl_alt , packet1.dpl_max_acc_ts , packet1.dpl_max_acc , packet1.ref_lat , packet1.ref_lon , packet1.ref_alt , packet1.min_pressure , packet1.cpu_load , packet1.free_heap , packet1.nas_state , packet1.wes_state , packet1.pin_launch , packet1.pin_nosecone , packet1.cutter_presence , packet1.log_number , packet1.log_good , packet1.main_board_state , packet1.motor_board_state , packet1.main_can_status , packet1.motor_can_status , packet1.rig_can_status , packet1.hil_state );
     mavlink_msg_payload_stats_tm_decode(&msg, &packet2);
         MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
 
@@ -3993,7 +4114,7 @@ static void mavlink_test_payload_stats_tm(uint8_t system_id, uint8_t component_i
         MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
         
         memset(&packet2, 0, sizeof(packet2));
-    mavlink_msg_payload_stats_tm_send(MAVLINK_COMM_1 , packet1.liftoff_ts , packet1.liftoff_max_acc_ts , packet1.liftoff_max_acc , packet1.max_speed_ts , packet1.max_speed , packet1.max_speed_altitude , packet1.max_mach_ts , packet1.max_mach , packet1.apogee_ts , packet1.apogee_lat , packet1.apogee_lon , packet1.apogee_alt , packet1.apogee_max_acc_ts , packet1.apogee_max_acc , packet1.wing_emc_n , packet1.wing_emc_e , packet1.wing_m1_n , packet1.wing_m1_e , packet1.wing_m2_n , packet1.wing_m2_e , packet1.dpl_ts , packet1.dpl_alt , packet1.dpl_max_acc_ts , packet1.dpl_max_acc , packet1.ref_lat , packet1.ref_lon , packet1.ref_alt , packet1.min_pressure , packet1.cpu_load , packet1.free_heap , packet1.fmm_state , packet1.nas_state , packet1.wes_state , packet1.pin_launch , packet1.pin_nosecone , packet1.cutter_presence , packet1.log_number , packet1.log_good , packet1.main_board_state , packet1.motor_board_state , packet1.main_can_status , packet1.motor_can_status , packet1.rig_can_status , packet1.hil_state );
+    mavlink_msg_payload_stats_tm_send(MAVLINK_COMM_1 , packet1.liftoff_ts , packet1.liftoff_max_acc_ts , packet1.liftoff_max_acc , packet1.max_speed_ts , packet1.max_speed , packet1.max_speed_altitude , packet1.max_mach_ts , packet1.max_mach , packet1.apogee_ts , packet1.apogee_lat , packet1.apogee_lon , packet1.apogee_alt , packet1.apogee_max_acc_ts , packet1.apogee_max_acc , packet1.wing_emc_n , packet1.wing_emc_e , packet1.wing_m1_n , packet1.wing_m1_e , packet1.wing_m2_n , packet1.wing_m2_e , packet1.dpl_ts , packet1.dpl_alt , packet1.dpl_max_acc_ts , packet1.dpl_max_acc , packet1.ref_lat , packet1.ref_lon , packet1.ref_alt , packet1.min_pressure , packet1.cpu_load , packet1.free_heap , packet1.nas_state , packet1.wes_state , packet1.pin_launch , packet1.pin_nosecone , packet1.cutter_presence , packet1.log_number , packet1.log_good , packet1.main_board_state , packet1.motor_board_state , packet1.main_can_status , packet1.motor_can_status , packet1.rig_can_status , packet1.hil_state );
     mavlink_msg_payload_stats_tm_decode(last_msg, &packet2);
         MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
 
@@ -4154,6 +4275,80 @@ static void mavlink_test_motor_tm(uint8_t system_id, uint8_t component_id, mavli
 #endif
 }
 
+static void mavlink_test_calibration_tm(uint8_t system_id, uint8_t component_id, mavlink_message_t *last_msg)
+{
+#ifdef MAVLINK_STATUS_FLAG_OUT_MAVLINK1
+    mavlink_status_t *status = mavlink_get_channel_status(MAVLINK_COMM_0);
+        if ((status->flags & MAVLINK_STATUS_FLAG_OUT_MAVLINK1) && MAVLINK_MSG_ID_CALIBRATION_TM >= 256) {
+            return;
+        }
+#endif
+    mavlink_message_t msg;
+        uint8_t buffer[MAVLINK_MAX_PACKET_LEN];
+        uint16_t i;
+    mavlink_calibration_tm_t packet_in = {
+        93372036854775807ULL,73.0,101.0,129.0,157.0,185.0,213.0,241.0,269.0,297.0,325.0,353.0,381.0,409.0,437.0,465.0
+    };
+    mavlink_calibration_tm_t packet1, packet2;
+        memset(&packet1, 0, sizeof(packet1));
+        packet1.timestamp = packet_in.timestamp;
+        packet1.gyro_bias_x = packet_in.gyro_bias_x;
+        packet1.gyro_bias_y = packet_in.gyro_bias_y;
+        packet1.gyro_bias_z = packet_in.gyro_bias_z;
+        packet1.mag_bias_x = packet_in.mag_bias_x;
+        packet1.mag_bias_y = packet_in.mag_bias_y;
+        packet1.mag_bias_z = packet_in.mag_bias_z;
+        packet1.mag_scale_x = packet_in.mag_scale_x;
+        packet1.mag_scale_y = packet_in.mag_scale_y;
+        packet1.mag_scale_z = packet_in.mag_scale_z;
+        packet1.static_press_1_bias = packet_in.static_press_1_bias;
+        packet1.static_press_1_scale = packet_in.static_press_1_scale;
+        packet1.static_press_2_bias = packet_in.static_press_2_bias;
+        packet1.static_press_2_scale = packet_in.static_press_2_scale;
+        packet1.dpl_bay_press_bias = packet_in.dpl_bay_press_bias;
+        packet1.dpl_bay_press_scale = packet_in.dpl_bay_press_scale;
+        
+        
+#ifdef MAVLINK_STATUS_FLAG_OUT_MAVLINK1
+        if (status->flags & MAVLINK_STATUS_FLAG_OUT_MAVLINK1) {
+           // cope with extensions
+           memset(MAVLINK_MSG_ID_CALIBRATION_TM_MIN_LEN + (char *)&packet1, 0, sizeof(packet1)-MAVLINK_MSG_ID_CALIBRATION_TM_MIN_LEN);
+        }
+#endif
+        memset(&packet2, 0, sizeof(packet2));
+    mavlink_msg_calibration_tm_encode(system_id, component_id, &msg, &packet1);
+    mavlink_msg_calibration_tm_decode(&msg, &packet2);
+        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
+
+        memset(&packet2, 0, sizeof(packet2));
+    mavlink_msg_calibration_tm_pack(system_id, component_id, &msg , packet1.timestamp , packet1.gyro_bias_x , packet1.gyro_bias_y , packet1.gyro_bias_z , packet1.mag_bias_x , packet1.mag_bias_y , packet1.mag_bias_z , packet1.mag_scale_x , packet1.mag_scale_y , packet1.mag_scale_z , packet1.static_press_1_bias , packet1.static_press_1_scale , packet1.static_press_2_bias , packet1.static_press_2_scale , packet1.dpl_bay_press_bias , packet1.dpl_bay_press_scale );
+    mavlink_msg_calibration_tm_decode(&msg, &packet2);
+        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
+
+        memset(&packet2, 0, sizeof(packet2));
+    mavlink_msg_calibration_tm_pack_chan(system_id, component_id, MAVLINK_COMM_0, &msg , packet1.timestamp , packet1.gyro_bias_x , packet1.gyro_bias_y , packet1.gyro_bias_z , packet1.mag_bias_x , packet1.mag_bias_y , packet1.mag_bias_z , packet1.mag_scale_x , packet1.mag_scale_y , packet1.mag_scale_z , packet1.static_press_1_bias , packet1.static_press_1_scale , packet1.static_press_2_bias , packet1.static_press_2_scale , packet1.dpl_bay_press_bias , packet1.dpl_bay_press_scale );
+    mavlink_msg_calibration_tm_decode(&msg, &packet2);
+        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
+
+        memset(&packet2, 0, sizeof(packet2));
+        mavlink_msg_to_send_buffer(buffer, &msg);
+        for (i=0; i<mavlink_msg_get_send_buffer_length(&msg); i++) {
+            comm_send_ch(MAVLINK_COMM_0, buffer[i]);
+        }
+    mavlink_msg_calibration_tm_decode(last_msg, &packet2);
+        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
+        
+        memset(&packet2, 0, sizeof(packet2));
+    mavlink_msg_calibration_tm_send(MAVLINK_COMM_1 , packet1.timestamp , packet1.gyro_bias_x , packet1.gyro_bias_y , packet1.gyro_bias_z , packet1.mag_bias_x , packet1.mag_bias_y , packet1.mag_bias_z , packet1.mag_scale_x , packet1.mag_scale_y , packet1.mag_scale_z , packet1.static_press_1_bias , packet1.static_press_1_scale , packet1.static_press_2_bias , packet1.static_press_2_scale , packet1.dpl_bay_press_bias , packet1.dpl_bay_press_scale );
+    mavlink_msg_calibration_tm_decode(last_msg, &packet2);
+        MAVLINK_ASSERT(memcmp(&packet1, &packet2, sizeof(packet1)) == 0);
+
+#ifdef MAVLINK_HAVE_GET_MESSAGE_INFO
+    MAVLINK_ASSERT(mavlink_get_message_info_by_name("CALIBRATION_TM") != NULL);
+    MAVLINK_ASSERT(mavlink_get_message_info_by_id(MAVLINK_MSG_ID_CALIBRATION_TM) != NULL);
+#endif
+}
+
 static void mavlink_test_lyra(uint8_t system_id, uint8_t component_id, mavlink_message_t *last_msg)
 {
     mavlink_test_ping_tc(system_id, component_id, last_msg);
@@ -4173,6 +4368,8 @@ static void mavlink_test_lyra(uint8_t system_id, uint8_t component_id, mavlink_m
     mavlink_test_set_deployment_altitude_tc(system_id, component_id, last_msg);
     mavlink_test_set_target_coordinates_tc(system_id, component_id, last_msg);
     mavlink_test_set_algorithm_tc(system_id, component_id, last_msg);
+    mavlink_test_set_calibration_pressure_tc(system_id, component_id, last_msg);
+    mavlink_test_set_initial_mea_mass_tc(system_id, component_id, last_msg);
     mavlink_test_set_atomic_valve_timing_tc(system_id, component_id, last_msg);
     mavlink_test_set_valve_maximum_aperture_tc(system_id, component_id, last_msg);
     mavlink_test_conrig_state_tc(system_id, component_id, last_msg);
@@ -4219,6 +4416,7 @@ static void mavlink_test_lyra(uint8_t system_id, uint8_t component_id, mavlink_m
     mavlink_test_payload_stats_tm(system_id, component_id, last_msg);
     mavlink_test_gse_tm(system_id, component_id, last_msg);
     mavlink_test_motor_tm(system_id, component_id, last_msg);
+    mavlink_test_calibration_tm(system_id, component_id, last_msg);
 }
 
 #ifdef __cplusplus
diff --git a/mavlink_lib/lyra/version.h b/mavlink_lib/lyra/version.h
index 62d858d066976d8a1b4c4461a35c939f53dc1c12..55d7020e789fab51bea0846a34be80f93ff8699f 100644
--- a/mavlink_lib/lyra/version.h
+++ b/mavlink_lib/lyra/version.h
@@ -7,8 +7,8 @@
 #ifndef MAVLINK_VERSION_H
 #define MAVLINK_VERSION_H
 
-#define MAVLINK_BUILD_DATE "Wed Aug 14 2024"
+#define MAVLINK_BUILD_DATE "Tue Sep 03 2024"
 #define MAVLINK_WIRE_PROTOCOL_VERSION "1.0"
-#define MAVLINK_MAX_DIALECT_PAYLOAD_SIZE 177
+#define MAVLINK_MAX_DIALECT_PAYLOAD_SIZE 180
  
 #endif // MAVLINK_VERSION_H
diff --git a/message_definitions/lyra.xml b/message_definitions/lyra.xml
index 4b39d83b0a13a573763f19d0bdafa0f4f6610b26..7e58ab113c722d434941022fc18ecc6147d3e55b 100644
--- a/message_definitions/lyra.xml
+++ b/message_definitions/lyra.xml
@@ -61,6 +61,9 @@
             <entry name="MAV_REFERENCE_ID" value="16">
                 <description>Command to fetch reference values</description>
             </entry>
+            <entry name="MAV_CALIBRATION_ID" value="17">
+                <description>Command to fetch calibration values</description>
+            </entry>
         </enum>
         <enum name="SensorsTMList">
             <description>Enum list of all sensors telemetries that can be requested</description>
@@ -346,6 +349,14 @@
             <description>Sets the algorithm number (for parafoil guidance)</description>
             <field name="algorithm_number" type="uint8_t">Algorithm number</field>
         </message>
+        <message id="18" name="SET_CALIBRATION_PRESSURE_TC">
+            <description>Set the pressure used for analog pressure calibration</description>
+            <field name="pressure" type="float" units="Pa">Pressure</field>
+        </message>
+        <message id="19" name="SET_INITIAL_MEA_MASS_TC">
+            <description>Set the initial MEA mass</description>
+            <field name="mass" type="float" units="kg">Mass</field>
+        </message>
 
         <!-- FROM GROUND TO GSE -->
         <message id="30" name="SET_ATOMIC_VALVE_TIMING_TC">
@@ -750,6 +761,7 @@
             <field name="gps_lat" type="float" units="deg">Latitude</field>
             <field name="gps_lon" type="float" units="deg">Longitude</field>
             <field name="gps_alt" type="float" units="m">GPS Altitude</field>
+            <field name="fmm_state" type="uint8_t">Flight Mode Manager State</field>
             <field name="abk_angle" type="float">Air Brakes angle</field>
             <field name="nas_n" type="float" units="deg">NAS estimated noth position</field>
             <field name="nas_e" type="float" units="deg">NAS estimated east position</field>
@@ -788,6 +800,7 @@
             <field name="gps_lat" type="float" units="deg">Latitude</field>
             <field name="gps_lon" type="float" units="deg">Longitude</field>
             <field name="gps_alt" type="float" units="m">GPS Altitude</field>
+            <field name="fmm_state" type="uint8_t">Flight Mode Manager State</field>
             <field name="left_servo_angle" type="float" units="deg">Left servo motor angle</field>
             <field name="right_servo_angle" type="float" units="deg">Right servo motor angle</field>
             <field name="nas_n" type="float" units="deg">NAS estimated noth position</field>
@@ -811,6 +824,7 @@
         </message>
         <message id="210" name="ROCKET_STATS_TM">
             <description>Low Rate Telemetry</description>
+            <field name="timestamp" type="uint64_t" units="us">Timestamp in microseconds</field>
             <field name="liftoff_ts" type="uint64_t" units="us">System clock at liftoff</field>
             <field name="liftoff_max_acc_ts" type="uint64_t" units="us">System clock at the maximum liftoff acceleration</field>
             <field name="liftoff_max_acc" type="float" units="m/s2">Maximum liftoff acceleration</field>
@@ -819,6 +833,8 @@
             <field name="max_speed_altitude" type="float" units="m">Altitude at max speed</field>
             <field name="max_mach_ts" type="uint64_t">System clock at maximum measured mach</field>
             <field name="max_mach" type="float">Maximum measured mach</field>
+            <field name="shutdown_ts" type="uint64_t">System clock at shutdown</field>
+            <field name="shutdown_alt" type="float">Altitude at shutdown</field>
             <field name="apogee_ts" type="uint64_t" units="us">System clock at apogee</field>
             <field name="apogee_lat" type="float" units="deg">Apogee latitude</field>
             <field name="apogee_lon" type="float" units="deg">Apogee longitude</field>
@@ -837,7 +853,6 @@
             <field name="cpu_load" type="float">CPU load in percentage</field>
             <field name="free_heap" type="uint32_t">Amount of available heap in memory</field>
             <field name="ada_state" type="uint8_t">ADA Controller State</field>
-            <field name="fmm_state" type="uint8_t">Flight Mode Manager State</field>
             <field name="abk_state" type="uint8_t">Airbrake FSM state</field>
             <field name="nas_state" type="uint8_t">NAS FSM State</field>
             <field name="mea_state" type="uint8_t">MEA Controller State</field>
@@ -887,7 +902,6 @@
             <field name="min_pressure" type="float" units="Pa">Apogee pressure - Digital barometer</field>
             <field name="cpu_load" type="float">CPU load in percentage</field>
             <field name="free_heap" type="uint32_t">Amount of available heap in memory</field>
-            <field name="fmm_state" type="uint8_t">Flight Mode Manager State</field>
             <field name="nas_state" type="uint8_t">NAS FSM State</field>
             <field name="wes_state" type="uint8_t">Wind Estimation System FSM State</field>
             <field name="pin_launch" type="uint8_t">Launch pin status (1 = connected, 0 = disconnected)</field>
@@ -943,5 +957,24 @@
             <field name="log_good" type="int32_t">0 if log failed, 1 otherwise</field>
             <field name="hil_state" type="uint8_t">1 if the board is currently in HIL mode</field>
         </message>
+        <message id="214" name="CALIBRATION_TM">
+            <description>Calibration telemetry</description>
+            <field name="timestamp" type="uint64_t" units="us">Timestamp in microseconds</field>
+            <field name="gyro_bias_x" type="float" units="deg/s">Gyroscope X bias</field>
+            <field name="gyro_bias_y" type="float" units="deg/s">Gyroscope Y bias</field>
+            <field name="gyro_bias_z" type="float" units="deg/s">Gyroscope Z bias</field>
+            <field name="mag_bias_x" type="float" units="uT">Magnetometer X bias</field>
+            <field name="mag_bias_y" type="float" units="uT">Magnetometer Y bias</field>
+            <field name="mag_bias_z" type="float" units="uT">Magnetometer Z bias</field>
+            <field name="mag_scale_x" type="float">Magnetometer X scale</field>
+            <field name="mag_scale_y" type="float">Magnetometer Y scale</field>
+            <field name="mag_scale_z" type="float">Magnetometer Z scale</field>
+            <field name="static_press_1_bias" type="float" units="Pa">Static pressure 1 bias</field>
+            <field name="static_press_1_scale" type="float">Static pressure 1 scale</field>
+            <field name="static_press_2_bias" type="float" units="Pa">Static pressure 2 bias</field>
+            <field name="static_press_2_scale" type="float">Static pressure 2 scale</field>
+            <field name="dpl_bay_press_bias" type="float" units="Pa">Deployment bay pressure bias</field>
+            <field name="dpl_bay_press_scale" type="float">Deployment bay pressure scale</field>
+        </message>
     </messages>
 </mavlink>