Merge remote-tracking branch 'origin/develop' into mueller/version-bump

This commit is contained in:
Robin Müller 2021-08-09 14:29:47 +02:00
commit 6871cc597a
22 changed files with 1452 additions and 595 deletions

View File

@ -95,6 +95,13 @@ void initmission::initTasks() {
initmission::printAddObjectError("UDP_POLLING", objects::TMTC_POLLING_TASK); initmission::printAddObjectError("UDP_POLLING", objects::TMTC_POLLING_TASK);
} }
PeriodicTaskIF* plocUpdaterTask = factory->createPeriodicTask(
"PLOC_UPDATER_TASK", 30, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.5, missedDeadlineFunc);
result = plocUpdaterTask->addComponent(objects::PLOC_UPDATER);
if(result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("PLOC_UPDATER_TASK", objects::PLOC_UPDATER);
}
// FS task, task interval does not matter because it runs in permanent loop, priority low // FS task, task interval does not matter because it runs in permanent loop, priority low
// because it is a non-essential background task // because it is a non-essential background task
@ -137,6 +144,7 @@ void initmission::initTasks() {
tmtcBridgeTask->startTask(); tmtcBridgeTask->startTask();
tmtcPollingTask->startTask(); tmtcPollingTask->startTask();
coreController->startTask(); coreController->startTask();
plocUpdaterTask->startTask();
taskStarter(pstTasks, "PST task vector"); taskStarter(pstTasks, "PST task vector");
taskStarter(pusTasks, "PUS task vector"); taskStarter(pusTasks, "PUS task vector");

View File

@ -37,6 +37,7 @@
#include "mission/devices/RadiationSensorHandler.h" #include "mission/devices/RadiationSensorHandler.h"
#include "mission/devices/RwHandler.h" #include "mission/devices/RwHandler.h"
#include "mission/devices/StarTrackerHandler.h" #include "mission/devices/StarTrackerHandler.h"
#include "mission/devices/PlocUpdater.h"
#include "mission/devices/devicedefinitions/GomspaceDefinitions.h" #include "mission/devices/devicedefinitions/GomspaceDefinitions.h"
#include "mission/devices/devicedefinitions/SyrlinksDefinitions.h" #include "mission/devices/devicedefinitions/SyrlinksDefinitions.h"
#include "mission/devices/devicedefinitions/PlocMPSoCDefinitions.h" #include "mission/devices/devicedefinitions/PlocMPSoCDefinitions.h"
@ -178,6 +179,7 @@ void ObjectFactory::produce(void* args){
#endif #endif
new PlocUpdater(objects::PLOC_UPDATER);
} }
void ObjectFactory::createTmpComponents() { void ObjectFactory::createTmpComponents() {

View File

@ -179,7 +179,7 @@ public:
sd::SdCard prefSdCard = sd::SdCard::NONE); sd::SdCard prefSdCard = sd::SdCard::NONE);
/** /**
* If sd::SdCard::NONE is passed as an argument, this funtion will get the currently * If sd::SdCard::NONE is passed as an argument, this function will get the currently
* preferred SD card from the scratch buffer. * preferred SD card from the scratch buffer.
* @param prefSdCardPtr * @param prefSdCardPtr
* @return * @return

View File

@ -19,6 +19,7 @@ enum commonClassIds: uint8_t {
PLOC_SUPERVISOR_HANDLER, //PLSV PLOC_SUPERVISOR_HANDLER, //PLSV
SUS_HANDLER, //SUSS SUS_HANDLER, //SUSS
CCSDS_IP_CORE_BRIDGE, //IPCI CCSDS_IP_CORE_BRIDGE, //IPCI
PLOC_UPDATER, //PLUD
COMMON_CLASS_ID_END // [EXPORT] : [END] COMMON_CLASS_ID_END // [EXPORT] : [END]
}; };

View File

@ -5,6 +5,6 @@
// Use TCP instead of UDP for the TMTC bridge. This allows using the TMTC client locally // Use TCP instead of UDP for the TMTC bridge. This allows using the TMTC client locally
// because UDP packets are not allowed in the VPN // because UDP packets are not allowed in the VPN
#define OBSW_USE_TMTC_TCP_BRIDGE 1 #define OBSW_USE_TMTC_TCP_BRIDGE 0
#endif /* COMMON_CONFIG_COMMONCONFIG_H_ */ #endif /* COMMON_CONFIG_COMMONCONFIG_H_ */

View File

@ -80,7 +80,9 @@ enum commonObjects: uint32_t {
RW3 = 0x44120003, RW3 = 0x44120003,
RW4 = 0x44120004, RW4 = 0x44120004,
START_TRACKER = 0x44130001 START_TRACKER = 0x44130001,
PLOC_UPDATER = 0x44330000
}; };
} }

View File

@ -17,6 +17,7 @@ enum: uint8_t {
STR_HANDLER = 114, STR_HANDLER = 114,
PLOC_SUPERVISOR_HANDLER = 115, PLOC_SUPERVISOR_HANDLER = 115,
FILE_SYSTEM = 116, FILE_SYSTEM = 116,
PLOC_UPDATER = 117,
COMMON_SUBSYSTEM_ID_END COMMON_SUBSYSTEM_ID_END
}; };
} }

View File

@ -1,96 +1,102 @@
2200;STORE_SEND_WRITE_FAILED;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h 2200;STORE_SEND_WRITE_FAILED;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2201;STORE_WRITE_FAILED;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h 2201;STORE_WRITE_FAILED;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2202;STORE_SEND_READ_FAILED;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h 2202;STORE_SEND_READ_FAILED;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2203;STORE_READ_FAILED;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h 2203;STORE_READ_FAILED;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2204;UNEXPECTED_MSG;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h 2204;UNEXPECTED_MSG;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2205;STORING_FAILED;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h 2205;STORING_FAILED;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2206;TM_DUMP_FAILED;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h 2206;TM_DUMP_FAILED;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2207;STORE_INIT_FAILED;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h 2207;STORE_INIT_FAILED;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2208;STORE_INIT_EMPTY;INFO;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h 2208;STORE_INIT_EMPTY;INFO;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2209;STORE_CONTENT_CORRUPTED;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h 2209;STORE_CONTENT_CORRUPTED;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2210;STORE_INITIALIZE;INFO;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h 2210;STORE_INITIALIZE;INFO;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2211;INIT_DONE;INFO;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h 2211;INIT_DONE;INFO;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2212;DUMP_FINISHED;INFO;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h 2212;DUMP_FINISHED;INFO;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2213;DELETION_FINISHED;INFO;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h 2213;DELETION_FINISHED;INFO;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2214;DELETION_FAILED;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h 2214;DELETION_FAILED;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2215;AUTO_CATALOGS_SENDING_FAILED;INFO;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h 2215;AUTO_CATALOGS_SENDING_FAILED;INFO;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2600;GET_DATA_FAILED;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/storagemanager/StorageManagerIF.h 2600;GET_DATA_FAILED;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/storagemanager/StorageManagerIF.h
2601;STORE_DATA_FAILED;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/storagemanager/StorageManagerIF.h 2601;STORE_DATA_FAILED;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/storagemanager/StorageManagerIF.h
2800;DEVICE_BUILDING_COMMAND_FAILED;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h 2800;DEVICE_BUILDING_COMMAND_FAILED;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
2801;DEVICE_SENDING_COMMAND_FAILED;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h 2801;DEVICE_SENDING_COMMAND_FAILED;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
2802;DEVICE_REQUESTING_REPLY_FAILED;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h 2802;DEVICE_REQUESTING_REPLY_FAILED;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
2803;DEVICE_READING_REPLY_FAILED;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h 2803;DEVICE_READING_REPLY_FAILED;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
2804;DEVICE_INTERPRETING_REPLY_FAILED;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h 2804;DEVICE_INTERPRETING_REPLY_FAILED;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
2805;DEVICE_MISSED_REPLY;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h 2805;DEVICE_MISSED_REPLY;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
2806;DEVICE_UNKNOWN_REPLY;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h 2806;DEVICE_UNKNOWN_REPLY;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
2807;DEVICE_UNREQUESTED_REPLY;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h 2807;DEVICE_UNREQUESTED_REPLY;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
2808;INVALID_DEVICE_COMMAND;LOW;Indicates a SW bug in child class.;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h 2808;INVALID_DEVICE_COMMAND;LOW;Indicates a SW bug in child class.;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
2809;MONITORING_LIMIT_EXCEEDED;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h 2809;MONITORING_LIMIT_EXCEEDED;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
2810;MONITORING_AMBIGUOUS;HIGH;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h 2810;MONITORING_AMBIGUOUS;HIGH;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
4201;FUSE_CURRENT_HIGH;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/power/Fuse.h 4201;FUSE_CURRENT_HIGH;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/power/Fuse.h
4202;FUSE_WENT_OFF;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/power/Fuse.h 4202;FUSE_WENT_OFF;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/power/Fuse.h
4204;POWER_ABOVE_HIGH_LIMIT;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/power/Fuse.h 4204;POWER_ABOVE_HIGH_LIMIT;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/power/Fuse.h
4205;POWER_BELOW_LOW_LIMIT;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/power/Fuse.h 4205;POWER_BELOW_LOW_LIMIT;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/power/Fuse.h
4300;SWITCH_WENT_OFF;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/power/PowerSwitchIF.h 4300;SWITCH_WENT_OFF;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/power/PowerSwitchIF.h
5000;HEATER_ON;INFO;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/thermal/Heater.h 5000;HEATER_ON;INFO;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/thermal/Heater.h
5001;HEATER_OFF;INFO;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/thermal/Heater.h 5001;HEATER_OFF;INFO;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/thermal/Heater.h
5002;HEATER_TIMEOUT;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/thermal/Heater.h 5002;HEATER_TIMEOUT;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/thermal/Heater.h
5003;HEATER_STAYED_ON;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/thermal/Heater.h 5003;HEATER_STAYED_ON;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/thermal/Heater.h
5004;HEATER_STAYED_OFF;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/thermal/Heater.h 5004;HEATER_STAYED_OFF;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/thermal/Heater.h
5200;TEMP_SENSOR_HIGH;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/thermal/AbstractTemperatureSensor.h 5200;TEMP_SENSOR_HIGH;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/thermal/AbstractTemperatureSensor.h
5201;TEMP_SENSOR_LOW;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/thermal/AbstractTemperatureSensor.h 5201;TEMP_SENSOR_LOW;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/thermal/AbstractTemperatureSensor.h
5202;TEMP_SENSOR_GRADIENT;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/thermal/AbstractTemperatureSensor.h 5202;TEMP_SENSOR_GRADIENT;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/thermal/AbstractTemperatureSensor.h
5901;COMPONENT_TEMP_LOW;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/thermal/ThermalComponentIF.h 5901;COMPONENT_TEMP_LOW;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/thermal/ThermalComponentIF.h
5902;COMPONENT_TEMP_HIGH;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/thermal/ThermalComponentIF.h 5902;COMPONENT_TEMP_HIGH;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/thermal/ThermalComponentIF.h
5903;COMPONENT_TEMP_OOL_LOW;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/thermal/ThermalComponentIF.h 5903;COMPONENT_TEMP_OOL_LOW;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/thermal/ThermalComponentIF.h
5904;COMPONENT_TEMP_OOL_HIGH;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/thermal/ThermalComponentIF.h 5904;COMPONENT_TEMP_OOL_HIGH;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/thermal/ThermalComponentIF.h
5905;TEMP_NOT_IN_OP_RANGE;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/thermal/ThermalComponentIF.h 5905;TEMP_NOT_IN_OP_RANGE;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/thermal/ThermalComponentIF.h
7101;FDIR_CHANGED_STATE;INFO;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/fdir/FailureIsolationBase.h 7101;FDIR_CHANGED_STATE;INFO;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/fdir/FailureIsolationBase.h
7102;FDIR_STARTS_RECOVERY;MEDIUM;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/fdir/FailureIsolationBase.h 7102;FDIR_STARTS_RECOVERY;MEDIUM;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/fdir/FailureIsolationBase.h
7103;FDIR_TURNS_OFF_DEVICE;MEDIUM;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/fdir/FailureIsolationBase.h 7103;FDIR_TURNS_OFF_DEVICE;MEDIUM;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/fdir/FailureIsolationBase.h
7201;MONITOR_CHANGED_STATE;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h 7201;MONITOR_CHANGED_STATE;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h
7202;VALUE_BELOW_LOW_LIMIT;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h 7202;VALUE_BELOW_LOW_LIMIT;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h
7203;VALUE_ABOVE_HIGH_LIMIT;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h 7203;VALUE_ABOVE_HIGH_LIMIT;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h
7204;VALUE_OUT_OF_RANGE;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h 7204;VALUE_OUT_OF_RANGE;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h
7301;SWITCHING_TM_FAILED;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datapool/HkSwitchHelper.h 7301;SWITCHING_TM_FAILED;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datapool/HkSwitchHelper.h
7400;CHANGING_MODE;INFO;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/modes/HasModesIF.h 7400;CHANGING_MODE;INFO;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/modes/HasModesIF.h
7401;MODE_INFO;INFO;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/modes/HasModesIF.h 7401;MODE_INFO;INFO;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/modes/HasModesIF.h
7402;FALLBACK_FAILED;HIGH;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/modes/HasModesIF.h 7402;FALLBACK_FAILED;HIGH;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/modes/HasModesIF.h
7403;MODE_TRANSITION_FAILED;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/modes/HasModesIF.h 7403;MODE_TRANSITION_FAILED;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/modes/HasModesIF.h
7404;CANT_KEEP_MODE;HIGH;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/modes/HasModesIF.h 7404;CANT_KEEP_MODE;HIGH;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/modes/HasModesIF.h
7405;OBJECT_IN_INVALID_MODE;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/modes/HasModesIF.h 7405;OBJECT_IN_INVALID_MODE;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/modes/HasModesIF.h
7406;FORCING_MODE;MEDIUM;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/modes/HasModesIF.h 7406;FORCING_MODE;MEDIUM;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/modes/HasModesIF.h
7407;MODE_CMD_REJECTED;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/modes/HasModesIF.h 7407;MODE_CMD_REJECTED;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/modes/HasModesIF.h
7506;HEALTH_INFO;INFO;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/health/HasHealthIF.h 7506;HEALTH_INFO;INFO;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/health/HasHealthIF.h
7507;CHILD_CHANGED_HEALTH;INFO;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/health/HasHealthIF.h 7507;CHILD_CHANGED_HEALTH;INFO;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/health/HasHealthIF.h
7508;CHILD_PROBLEMS;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/health/HasHealthIF.h 7508;CHILD_PROBLEMS;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/health/HasHealthIF.h
7509;OVERWRITING_HEALTH;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/health/HasHealthIF.h 7509;OVERWRITING_HEALTH;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/health/HasHealthIF.h
7510;TRYING_RECOVERY;MEDIUM;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/health/HasHealthIF.h 7510;TRYING_RECOVERY;MEDIUM;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/health/HasHealthIF.h
7511;RECOVERY_STEP;MEDIUM;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/health/HasHealthIF.h 7511;RECOVERY_STEP;MEDIUM;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/health/HasHealthIF.h
7512;RECOVERY_DONE;MEDIUM;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/health/HasHealthIF.h 7512;RECOVERY_DONE;MEDIUM;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/health/HasHealthIF.h
7900;RF_AVAILABLE;INFO;A RF available signal was detected. P1: raw RFA state, P2: 0;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/DataLinkLayer.h 7900;RF_AVAILABLE;INFO;A RF available signal was detected. P1: raw RFA state, P2: 0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/DataLinkLayer.h
7901;RF_LOST;INFO;A previously found RF available signal was lost. P1: raw RFA state, P2: 0;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/DataLinkLayer.h 7901;RF_LOST;INFO;A previously found RF available signal was lost. P1: raw RFA state, P2: 0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/DataLinkLayer.h
7902;BIT_LOCK;INFO;A Bit Lock signal. Was detected. P1: raw BLO state, P2: 0;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/DataLinkLayer.h 7902;BIT_LOCK;INFO;A Bit Lock signal. Was detected. P1: raw BLO state, P2: 0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/DataLinkLayer.h
7903;BIT_LOCK_LOST;INFO;A previously found Bit Lock signal was lost. P1: raw BLO state, P2: 0;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/DataLinkLayer.h 7903;BIT_LOCK_LOST;INFO;A previously found Bit Lock signal was lost. P1: raw BLO state, P2: 0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/DataLinkLayer.h
7905;FRAME_PROCESSING_FAILED;LOW;The CCSDS Board could not interpret a TC;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/DataLinkLayer.h 7905;FRAME_PROCESSING_FAILED;LOW;The CCSDS Board could not interpret a TC;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/DataLinkLayer.h
8900;CLOCK_SET;INFO;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/pus/Service9TimeManagement.h 8900;CLOCK_SET;INFO;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/pus/Service9TimeManagement.h
8901;CLOCK_SET_FAILURE;LOW;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/pus/Service9TimeManagement.h 8901;CLOCK_SET_FAILURE;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/pus/Service9TimeManagement.h
9700;TEST;INFO;;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/pus/Service17Test.h 9700;TEST;INFO;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/pus/Service17Test.h
10600;CHANGE_OF_SETUP_PARAMETER;LOW;;/home/rmueller/EIVE/eive-obsw/mission/devices/MGMHandlerLIS3MDL.h 10600;CHANGE_OF_SETUP_PARAMETER;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/MGMHandlerLIS3MDL.h
11101;MEMORY_READ_RPT_CRC_FAILURE;LOW;;/home/rmueller/EIVE/eive-obsw/mission/devices/PlocMPSoCHandler.h 11101;MEMORY_READ_RPT_CRC_FAILURE;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocMPSoCHandler.h
11102;ACK_FAILURE;LOW;;/home/rmueller/EIVE/eive-obsw/mission/devices/PlocMPSoCHandler.h 11102;ACK_FAILURE;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocMPSoCHandler.h
11103;EXE_FAILURE;LOW;;/home/rmueller/EIVE/eive-obsw/mission/devices/PlocMPSoCHandler.h 11103;EXE_FAILURE;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocMPSoCHandler.h
11104;CRC_FAILURE_EVENT;LOW;;/home/rmueller/EIVE/eive-obsw/mission/devices/PlocMPSoCHandler.h 11104;CRC_FAILURE_EVENT;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocMPSoCHandler.h
11201;SELF_TEST_I2C_FAILURE;LOW;Get self test result returns I2C failure P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA;/home/rmueller/EIVE/eive-obsw/mission/devices/IMTQHandler.h 11201;SELF_TEST_I2C_FAILURE;LOW;Get self test result returns I2C failure P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/IMTQHandler.h
11202;SELF_TEST_SPI_FAILURE;LOW;Get self test result returns SPI failure. This concerns the MTM connectivity. P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA;/home/rmueller/EIVE/eive-obsw/mission/devices/IMTQHandler.h 11202;SELF_TEST_SPI_FAILURE;LOW;Get self test result returns SPI failure. This concerns the MTM connectivity. P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/IMTQHandler.h
11203;SELF_TEST_ADC_FAILURE;LOW;Get self test result returns failure in measurement of current and temperature. P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA;/home/rmueller/EIVE/eive-obsw/mission/devices/IMTQHandler.h 11203;SELF_TEST_ADC_FAILURE;LOW;Get self test result returns failure in measurement of current and temperature. P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/IMTQHandler.h
11204;SELF_TEST_PWM_FAILURE;LOW;Get self test result returns PWM failure which concerns the coil actuation. P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA;/home/rmueller/EIVE/eive-obsw/mission/devices/IMTQHandler.h 11204;SELF_TEST_PWM_FAILURE;LOW;Get self test result returns PWM failure which concerns the coil actuation. P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/IMTQHandler.h
11205;SELF_TEST_TC_FAILURE;LOW;Get self test result returns TC failure (system failure) P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA;/home/rmueller/EIVE/eive-obsw/mission/devices/IMTQHandler.h 11205;SELF_TEST_TC_FAILURE;LOW;Get self test result returns TC failure (system failure) P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/IMTQHandler.h
11206;SELF_TEST_MTM_RANGE_FAILURE;LOW;Get self test result returns failure that MTM values were outside of the expected range. P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA;/home/rmueller/EIVE/eive-obsw/mission/devices/IMTQHandler.h 11206;SELF_TEST_MTM_RANGE_FAILURE;LOW;Get self test result returns failure that MTM values were outside of the expected range. P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/IMTQHandler.h
11207;SELF_TEST_COIL_CURRENT_FAILURE;LOW;Get self test result returns failure indicating that the coil current was outside of the expected range P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA;/home/rmueller/EIVE/eive-obsw/mission/devices/IMTQHandler.h 11207;SELF_TEST_COIL_CURRENT_FAILURE;LOW;Get self test result returns failure indicating that the coil current was outside of the expected range P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/IMTQHandler.h
11208;INVALID_ERROR_BYTE;LOW;Received invalid error byte. This indicates an error of the communication link between IMTQ and OBC.;/home/rmueller/EIVE/eive-obsw/mission/devices/IMTQHandler.h 11208;INVALID_ERROR_BYTE;LOW;Received invalid error byte. This indicates an error of the communication link between IMTQ and OBC.;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/IMTQHandler.h
11301;ERROR_STATE;HIGH;Reaction wheel signals an error state;/home/rmueller/EIVE/eive-obsw/mission/devices/RwHandler.h 11301;ERROR_STATE;HIGH;Reaction wheel signals an error state;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/RwHandler.h
11501;SUPV_MEMORY_READ_RPT_CRC_FAILURE;LOW;PLOC supervrisor crc failure in telemetry packet;/home/rmueller/EIVE/eive-obsw/mission/devices/PlocSupervisorHandler.h 11501;SUPV_MEMORY_READ_RPT_CRC_FAILURE;LOW;PLOC supervisor crc failure in telemetry packet;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocSupervisorHandler.h
11502;SUPV_ACK_FAILURE;LOW;PLOC supervisor received acknowledgment failure report;/home/rmueller/EIVE/eive-obsw/mission/devices/PlocSupervisorHandler.h 11502;SUPV_ACK_FAILURE;LOW;PLOC supervisor received acknowledgment failure report;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocSupervisorHandler.h
11503;SUPV_EXE_FAILURE;LOW;PLOC received execution failure report;/home/rmueller/EIVE/eive-obsw/mission/devices/PlocSupervisorHandler.h 11503;SUPV_EXE_FAILURE;LOW;PLOC received execution failure report;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocSupervisorHandler.h
11504;SUPV_CRC_FAILURE_EVENT;LOW;PLOC supervisor reply has invalid crc;/home/rmueller/EIVE/eive-obsw/mission/devices/PlocSupervisorHandler.h 11504;SUPV_CRC_FAILURE_EVENT;LOW;PLOC supervisor reply has invalid crc;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocSupervisorHandler.h
11700;UPDATE_FILE_NOT_EXISTS;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocUpdater.h
11701;ACTION_COMMANDING_FAILED;LOW;;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocUpdater.h
11702;UPDATE_AVAILABLE_FAILED;LOW;Supervisor handler replied action message indicating a command execution failure of the update available command;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocUpdater.h
11703;UPDATE_TRANSFER_FAILED;LOW;Supervisor handler failed to transfer an update space packet. P1: Parameter holds the number of update packets already sent.;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocUpdater.h
11704;UPDATE_VERIFY_FAILED;LOW;Supervisor failed to execute the update verify command.;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocUpdater.h
11705;UPDATE_FINISHED;INFO;MPSoC update successful completed;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocUpdater.h

1 2200 STORE_SEND_WRITE_FAILED LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2 2201 STORE_WRITE_FAILED LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
3 2202 STORE_SEND_READ_FAILED LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
4 2203 STORE_READ_FAILED LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
5 2204 UNEXPECTED_MSG LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
6 2205 STORING_FAILED LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
7 2206 TM_DUMP_FAILED LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
8 2207 STORE_INIT_FAILED LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
9 2208 STORE_INIT_EMPTY INFO /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
10 2209 STORE_CONTENT_CORRUPTED LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
11 2210 STORE_INITIALIZE INFO /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
12 2211 INIT_DONE INFO /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
13 2212 DUMP_FINISHED INFO /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
14 2213 DELETION_FINISHED INFO /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
15 2214 DELETION_FAILED LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
16 2215 AUTO_CATALOGS_SENDING_FAILED INFO /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
17 2600 GET_DATA_FAILED LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/storagemanager/StorageManagerIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/storagemanager/StorageManagerIF.h
18 2601 STORE_DATA_FAILED LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/storagemanager/StorageManagerIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/storagemanager/StorageManagerIF.h
19 2800 DEVICE_BUILDING_COMMAND_FAILED LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
20 2801 DEVICE_SENDING_COMMAND_FAILED LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
21 2802 DEVICE_REQUESTING_REPLY_FAILED LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
22 2803 DEVICE_READING_REPLY_FAILED LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
23 2804 DEVICE_INTERPRETING_REPLY_FAILED LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
24 2805 DEVICE_MISSED_REPLY LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
25 2806 DEVICE_UNKNOWN_REPLY LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
26 2807 DEVICE_UNREQUESTED_REPLY LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
27 2808 INVALID_DEVICE_COMMAND LOW Indicates a SW bug in child class. /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
28 2809 MONITORING_LIMIT_EXCEEDED LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
29 2810 MONITORING_AMBIGUOUS HIGH /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
30 4201 FUSE_CURRENT_HIGH LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/power/Fuse.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/power/Fuse.h
31 4202 FUSE_WENT_OFF LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/power/Fuse.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/power/Fuse.h
32 4204 POWER_ABOVE_HIGH_LIMIT LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/power/Fuse.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/power/Fuse.h
33 4205 POWER_BELOW_LOW_LIMIT LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/power/Fuse.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/power/Fuse.h
34 4300 SWITCH_WENT_OFF LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/power/PowerSwitchIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/power/PowerSwitchIF.h
35 5000 HEATER_ON INFO /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/thermal/Heater.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/thermal/Heater.h
36 5001 HEATER_OFF INFO /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/thermal/Heater.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/thermal/Heater.h
37 5002 HEATER_TIMEOUT LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/thermal/Heater.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/thermal/Heater.h
38 5003 HEATER_STAYED_ON LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/thermal/Heater.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/thermal/Heater.h
39 5004 HEATER_STAYED_OFF LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/thermal/Heater.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/thermal/Heater.h
40 5200 TEMP_SENSOR_HIGH LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/thermal/AbstractTemperatureSensor.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/thermal/AbstractTemperatureSensor.h
41 5201 TEMP_SENSOR_LOW LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/thermal/AbstractTemperatureSensor.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/thermal/AbstractTemperatureSensor.h
42 5202 TEMP_SENSOR_GRADIENT LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/thermal/AbstractTemperatureSensor.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/thermal/AbstractTemperatureSensor.h
43 5901 COMPONENT_TEMP_LOW LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/thermal/ThermalComponentIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/thermal/ThermalComponentIF.h
44 5902 COMPONENT_TEMP_HIGH LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/thermal/ThermalComponentIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/thermal/ThermalComponentIF.h
45 5903 COMPONENT_TEMP_OOL_LOW LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/thermal/ThermalComponentIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/thermal/ThermalComponentIF.h
46 5904 COMPONENT_TEMP_OOL_HIGH LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/thermal/ThermalComponentIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/thermal/ThermalComponentIF.h
47 5905 TEMP_NOT_IN_OP_RANGE LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/thermal/ThermalComponentIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/thermal/ThermalComponentIF.h
48 7101 FDIR_CHANGED_STATE INFO /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/fdir/FailureIsolationBase.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/fdir/FailureIsolationBase.h
49 7102 FDIR_STARTS_RECOVERY MEDIUM /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/fdir/FailureIsolationBase.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/fdir/FailureIsolationBase.h
50 7103 FDIR_TURNS_OFF_DEVICE MEDIUM /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/fdir/FailureIsolationBase.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/fdir/FailureIsolationBase.h
51 7201 MONITOR_CHANGED_STATE LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h
52 7202 VALUE_BELOW_LOW_LIMIT LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h
53 7203 VALUE_ABOVE_HIGH_LIMIT LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h
54 7204 VALUE_OUT_OF_RANGE LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h
55 7301 SWITCHING_TM_FAILED LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datapool/HkSwitchHelper.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datapool/HkSwitchHelper.h
56 7400 CHANGING_MODE INFO /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/modes/HasModesIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/modes/HasModesIF.h
57 7401 MODE_INFO INFO /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/modes/HasModesIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/modes/HasModesIF.h
58 7402 FALLBACK_FAILED HIGH /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/modes/HasModesIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/modes/HasModesIF.h
59 7403 MODE_TRANSITION_FAILED LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/modes/HasModesIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/modes/HasModesIF.h
60 7404 CANT_KEEP_MODE HIGH /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/modes/HasModesIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/modes/HasModesIF.h
61 7405 OBJECT_IN_INVALID_MODE LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/modes/HasModesIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/modes/HasModesIF.h
62 7406 FORCING_MODE MEDIUM /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/modes/HasModesIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/modes/HasModesIF.h
63 7407 MODE_CMD_REJECTED LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/modes/HasModesIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/modes/HasModesIF.h
64 7506 HEALTH_INFO INFO /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/health/HasHealthIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/health/HasHealthIF.h
65 7507 CHILD_CHANGED_HEALTH INFO /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/health/HasHealthIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/health/HasHealthIF.h
66 7508 CHILD_PROBLEMS LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/health/HasHealthIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/health/HasHealthIF.h
67 7509 OVERWRITING_HEALTH LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/health/HasHealthIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/health/HasHealthIF.h
68 7510 TRYING_RECOVERY MEDIUM /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/health/HasHealthIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/health/HasHealthIF.h
69 7511 RECOVERY_STEP MEDIUM /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/health/HasHealthIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/health/HasHealthIF.h
70 7512 RECOVERY_DONE MEDIUM /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/health/HasHealthIF.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/health/HasHealthIF.h
71 7900 RF_AVAILABLE INFO A RF available signal was detected. P1: raw RFA state, P2: 0 /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/DataLinkLayer.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/DataLinkLayer.h
72 7901 RF_LOST INFO A previously found RF available signal was lost. P1: raw RFA state, P2: 0 /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/DataLinkLayer.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/DataLinkLayer.h
73 7902 BIT_LOCK INFO A Bit Lock signal. Was detected. P1: raw BLO state, P2: 0 /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/DataLinkLayer.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/DataLinkLayer.h
74 7903 BIT_LOCK_LOST INFO A previously found Bit Lock signal was lost. P1: raw BLO state, P2: 0 /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/DataLinkLayer.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/DataLinkLayer.h
75 7905 FRAME_PROCESSING_FAILED LOW The CCSDS Board could not interpret a TC /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/DataLinkLayer.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/DataLinkLayer.h
76 8900 CLOCK_SET INFO /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/pus/Service9TimeManagement.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/pus/Service9TimeManagement.h
77 8901 CLOCK_SET_FAILURE LOW /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/pus/Service9TimeManagement.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/pus/Service9TimeManagement.h
78 9700 TEST INFO /home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/pus/Service17Test.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/pus/Service17Test.h
79 10600 CHANGE_OF_SETUP_PARAMETER LOW /home/rmueller/EIVE/eive-obsw/mission/devices/MGMHandlerLIS3MDL.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/MGMHandlerLIS3MDL.h
80 11101 MEMORY_READ_RPT_CRC_FAILURE LOW /home/rmueller/EIVE/eive-obsw/mission/devices/PlocMPSoCHandler.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocMPSoCHandler.h
81 11102 ACK_FAILURE LOW /home/rmueller/EIVE/eive-obsw/mission/devices/PlocMPSoCHandler.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocMPSoCHandler.h
82 11103 EXE_FAILURE LOW /home/rmueller/EIVE/eive-obsw/mission/devices/PlocMPSoCHandler.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocMPSoCHandler.h
83 11104 CRC_FAILURE_EVENT LOW /home/rmueller/EIVE/eive-obsw/mission/devices/PlocMPSoCHandler.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocMPSoCHandler.h
84 11201 SELF_TEST_I2C_FAILURE LOW Get self test result returns I2C failure P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA /home/rmueller/EIVE/eive-obsw/mission/devices/IMTQHandler.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/IMTQHandler.h
85 11202 SELF_TEST_SPI_FAILURE LOW Get self test result returns SPI failure. This concerns the MTM connectivity. P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA /home/rmueller/EIVE/eive-obsw/mission/devices/IMTQHandler.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/IMTQHandler.h
86 11203 SELF_TEST_ADC_FAILURE LOW Get self test result returns failure in measurement of current and temperature. P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA /home/rmueller/EIVE/eive-obsw/mission/devices/IMTQHandler.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/IMTQHandler.h
87 11204 SELF_TEST_PWM_FAILURE LOW Get self test result returns PWM failure which concerns the coil actuation. P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA /home/rmueller/EIVE/eive-obsw/mission/devices/IMTQHandler.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/IMTQHandler.h
88 11205 SELF_TEST_TC_FAILURE LOW Get self test result returns TC failure (system failure) P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA /home/rmueller/EIVE/eive-obsw/mission/devices/IMTQHandler.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/IMTQHandler.h
89 11206 SELF_TEST_MTM_RANGE_FAILURE LOW Get self test result returns failure that MTM values were outside of the expected range. P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA /home/rmueller/EIVE/eive-obsw/mission/devices/IMTQHandler.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/IMTQHandler.h
90 11207 SELF_TEST_COIL_CURRENT_FAILURE LOW Get self test result returns failure indicating that the coil current was outside of the expected range P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA /home/rmueller/EIVE/eive-obsw/mission/devices/IMTQHandler.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/IMTQHandler.h
91 11208 INVALID_ERROR_BYTE LOW Received invalid error byte. This indicates an error of the communication link between IMTQ and OBC. /home/rmueller/EIVE/eive-obsw/mission/devices/IMTQHandler.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/IMTQHandler.h
92 11301 ERROR_STATE HIGH Reaction wheel signals an error state /home/rmueller/EIVE/eive-obsw/mission/devices/RwHandler.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/RwHandler.h
93 11501 SUPV_MEMORY_READ_RPT_CRC_FAILURE LOW PLOC supervrisor crc failure in telemetry packet PLOC supervisor crc failure in telemetry packet /home/rmueller/EIVE/eive-obsw/mission/devices/PlocSupervisorHandler.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocSupervisorHandler.h
94 11502 SUPV_ACK_FAILURE LOW PLOC supervisor received acknowledgment failure report /home/rmueller/EIVE/eive-obsw/mission/devices/PlocSupervisorHandler.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocSupervisorHandler.h
95 11503 SUPV_EXE_FAILURE LOW PLOC received execution failure report /home/rmueller/EIVE/eive-obsw/mission/devices/PlocSupervisorHandler.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocSupervisorHandler.h
96 11504 SUPV_CRC_FAILURE_EVENT LOW PLOC supervisor reply has invalid crc /home/rmueller/EIVE/eive-obsw/mission/devices/PlocSupervisorHandler.h C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocSupervisorHandler.h
97 11700 UPDATE_FILE_NOT_EXISTS LOW C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocUpdater.h
98 11701 ACTION_COMMANDING_FAILED LOW C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocUpdater.h
99 11702 UPDATE_AVAILABLE_FAILED LOW Supervisor handler replied action message indicating a command execution failure of the update available command C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocUpdater.h
100 11703 UPDATE_TRANSFER_FAILED LOW Supervisor handler failed to transfer an update space packet. P1: Parameter holds the number of update packets already sent. C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocUpdater.h
101 11704 UPDATE_VERIFY_FAILED LOW Supervisor failed to execute the update verify command. C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocUpdater.h
102 11705 UPDATE_FINISHED INFO MPSoC update successful completed C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocUpdater.h

View File

@ -37,6 +37,7 @@
0x44250002;PDU2_HANDLER 0x44250002;PDU2_HANDLER
0x44250003;ACU_HANDLER 0x44250003;ACU_HANDLER
0x443200A5;RAD_SENSOR 0x443200A5;RAD_SENSOR
0x44330000;PLOC_UPDATER
0x44330015;PLOC_MPSOC_HANDLER 0x44330015;PLOC_MPSOC_HANDLER
0x44330016;PLOC_SUPERVISOR_HANDLER 0x44330016;PLOC_SUPERVISOR_HANDLER
0x444100A2;SOLAR_ARRAY_DEPL_HANDLER 0x444100A2;SOLAR_ARRAY_DEPL_HANDLER

1 0x00005060 P60DOCK_TEST_TASK
37 0x44250002 PDU2_HANDLER
38 0x44250003 ACU_HANDLER
39 0x443200A5 RAD_SENSOR
40 0x44330000 PLOC_UPDATER
41 0x44330015 PLOC_MPSOC_HANDLER
42 0x44330016 PLOC_SUPERVISOR_HANDLER
43 0x444100A2 SOLAR_ARRAY_DEPL_HANDLER

View File

@ -1,451 +1,461 @@
0x0;OK;System-wide code for ok.;RETURN_OK;HasReturnvaluesIF.h;HasReturnvaluesIF 0x0;OK;System-wide code for ok.;RETURN_OK;HasReturnvaluesIF.h;HasReturnvaluesIF
0x1;Failed;Unspecified system-wide code for failed.;RETURN_FAILED;HasReturnvaluesIF.h;HasReturnvaluesIF 0x1;Failed;Unspecified system-wide code for failed.;RETURN_FAILED;HasReturnvaluesIF.h;HasReturnvaluesIF
0x5d00;GOMS_PacketTooLong;;0;/home/rmueller/EIVE/eive-obsw/mission/devices/GomspaceDeviceHandler.h;GOM_SPACE_HANDLER 0x5e00;GOMS_PacketTooLong;;0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/GomspaceDeviceHandler.h;GOM_SPACE_HANDLER
0x5d01;GOMS_InvalidTableId;;1;/home/rmueller/EIVE/eive-obsw/mission/devices/GomspaceDeviceHandler.h;GOM_SPACE_HANDLER 0x5e01;GOMS_InvalidTableId;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/GomspaceDeviceHandler.h;GOM_SPACE_HANDLER
0x5d02;GOMS_InvalidAddress;;2;/home/rmueller/EIVE/eive-obsw/mission/devices/GomspaceDeviceHandler.h;GOM_SPACE_HANDLER 0x5e02;GOMS_InvalidAddress;;2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/GomspaceDeviceHandler.h;GOM_SPACE_HANDLER
0x5d03;GOMS_InvalidParamSize;;3;/home/rmueller/EIVE/eive-obsw/mission/devices/GomspaceDeviceHandler.h;GOM_SPACE_HANDLER 0x5e03;GOMS_InvalidParamSize;;3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/GomspaceDeviceHandler.h;GOM_SPACE_HANDLER
0x5d04;GOMS_InvalidPayloadSize;;4;/home/rmueller/EIVE/eive-obsw/mission/devices/GomspaceDeviceHandler.h;GOM_SPACE_HANDLER 0x5e04;GOMS_InvalidPayloadSize;;4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/GomspaceDeviceHandler.h;GOM_SPACE_HANDLER
0x5d05;GOMS_UnknownReplyId;;5;/home/rmueller/EIVE/eive-obsw/mission/devices/GomspaceDeviceHandler.h;GOM_SPACE_HANDLER 0x5e05;GOMS_UnknownReplyId;;5;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/GomspaceDeviceHandler.h;GOM_SPACE_HANDLER
0x54a0;PLSV_CrcFailure;Space Packet received from PLOC supervisor has invalid CRC;0xA0;/home/rmueller/EIVE/eive-obsw/mission/devices/PlocSupervisorHandler.h;PLOC_SUPERVISOR_HANDLER 0x50a0;IMTQ_InvalidCommandCode;;0xA0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/IMTQHandler.h;IMTQ_HANDLER
0x54a1;PLSV_ReceivedAckFailure;Received ACK failure reply from PLOC supervisor;0xA1;/home/rmueller/EIVE/eive-obsw/mission/devices/PlocSupervisorHandler.h;PLOC_SUPERVISOR_HANDLER 0x50a1;IMTQ_ParameterMissing;;0xA1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/IMTQHandler.h;IMTQ_HANDLER
0x54a2;PLSV_ReceivedExeFailure;Received execution failure reply from PLOC supervisor;0xA2;/home/rmueller/EIVE/eive-obsw/mission/devices/PlocSupervisorHandler.h;PLOC_SUPERVISOR_HANDLER 0x50a2;IMTQ_ParameterInvalid;;0xA2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/IMTQHandler.h;IMTQ_HANDLER
0x54a3;PLSV_InvalidApid;Received space packet with invalid APID from PLOC supervisor;0xA3;/home/rmueller/EIVE/eive-obsw/mission/devices/PlocSupervisorHandler.h;PLOC_SUPERVISOR_HANDLER 0x50a3;IMTQ_CcUnavailable;;0xA3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/IMTQHandler.h;IMTQ_HANDLER
0x54a4;PLSV_GetTimeFailure;Failed to read current system time;0xA4;/home/rmueller/EIVE/eive-obsw/mission/devices/PlocSupervisorHandler.h;PLOC_SUPERVISOR_HANDLER 0x50a4;IMTQ_InternalProcessingError;;0xA4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/IMTQHandler.h;IMTQ_HANDLER
0x54a5;PLSV_InvalidUartComIf;Invalid communication interface specified;0xA5;/home/rmueller/EIVE/eive-obsw/mission/devices/PlocSupervisorHandler.h;PLOC_SUPERVISOR_HANDLER 0x50a5;IMTQ_RejectedWithoutReason;;0xA5;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/IMTQHandler.h;IMTQ_HANDLER
0x51b0;RWHA_SpiWriteFailure;;0xB0;/home/rmueller/EIVE/eive-obsw/mission/devices/RwHandler.h;RW_HANDLER 0x50a6;IMTQ_CmdErrUnknown;;0xA6;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/IMTQHandler.h;IMTQ_HANDLER
0x51b1;RWHA_SpiReadFailure;Used by the spi send function to tell a failing read call;0xB1;/home/rmueller/EIVE/eive-obsw/mission/devices/RwHandler.h;RW_HANDLER 0x50a7;IMTQ_UnexpectedSelfTestReply;The status reply to a self test command was received but no self test command has been sent. This should normally never happen.;0xA7;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/IMTQHandler.h;IMTQ_HANDLER
0x51b2;RWHA_MissingStartSign;Can be used by the HDLC decoding mechanism to inform about a missing start sign 0x7E;0xB2;/home/rmueller/EIVE/eive-obsw/mission/devices/RwHandler.h;RW_HANDLER 0x53a0;PLMP_CrcFailure;;0xA0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocMPSoCHandler.h;PLOC_MPSOC_HANDLER
0x51b3;RWHA_InvalidSubstitute;Can be used by the HDLC decoding mechanism to inform about an invalid substitution combination;0xB3;/home/rmueller/EIVE/eive-obsw/mission/devices/RwHandler.h;RW_HANDLER 0x53a1;PLMP_ReceivedAckFailure;;0xA1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocMPSoCHandler.h;PLOC_MPSOC_HANDLER
0x51b4;RWHA_MissingEndSign;HDLC decoding mechanism never receives the end sign 0x7E;0xB4;/home/rmueller/EIVE/eive-obsw/mission/devices/RwHandler.h;RW_HANDLER 0x53a2;PLMP_ReceivedExeFailure;;0xA2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocMPSoCHandler.h;PLOC_MPSOC_HANDLER
0x51b5;RWHA_NoReply;Reaction wheel only responds with empty frames.;0xB5;/home/rmueller/EIVE/eive-obsw/mission/devices/RwHandler.h;RW_HANDLER 0x53a3;PLMP_InvalidApid;;0xA3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocMPSoCHandler.h;PLOC_MPSOC_HANDLER
0x51a0;RWHA_InvalidSpeed;Action Message with invalid speed was received. Valid speeds must be in the range of [-65000; 1000] or [1000; 65000];0xA0;/home/rmueller/EIVE/eive-obsw/mission/devices/RwHandler.h;RW_HANDLER 0x54a0;PLSV_CrcFailure;Space Packet received from PLOC supervisor has invalid CRC;0xA0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocSupervisorHandler.h;PLOC_SUPERVISOR_HANDLER
0x51a1;RWHA_InvalidRampTime;Action Message with invalid ramp time was received.;0xA1;/home/rmueller/EIVE/eive-obsw/mission/devices/RwHandler.h;RW_HANDLER 0x54a1;PLSV_ReceivedAckFailure;Received ACK failure reply from PLOC supervisor;0xA1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocSupervisorHandler.h;PLOC_SUPERVISOR_HANDLER
0x51a2;RWHA_SetSpeedCommandInvalidLength;Received set speed command has invalid length. Should be 6.;0xA2;/home/rmueller/EIVE/eive-obsw/mission/devices/RwHandler.h;RW_HANDLER 0x54a2;PLSV_ReceivedExeFailure;Received execution failure reply from PLOC supervisor;0xA2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocSupervisorHandler.h;PLOC_SUPERVISOR_HANDLER
0x51a3;RWHA_ExecutionFailed;Command execution failed;0xA3;/home/rmueller/EIVE/eive-obsw/mission/devices/RwHandler.h;RW_HANDLER 0x54a3;PLSV_InvalidApid;Received space packet with invalid APID from PLOC supervisor;0xA3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocSupervisorHandler.h;PLOC_SUPERVISOR_HANDLER
0x51a4;RWHA_CrcError;Reaction wheel reply has invalid crc;0xA4;/home/rmueller/EIVE/eive-obsw/mission/devices/RwHandler.h;RW_HANDLER 0x54a4;PLSV_GetTimeFailure;Failed to read current system time;0xA4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocSupervisorHandler.h;PLOC_SUPERVISOR_HANDLER
0x52b0;STRH_CrcFailure;Received reply with invalid CRC;0xB0;/home/rmueller/EIVE/eive-obsw/mission/devices/StarTrackerHandler.h;STR_HANDLER 0x54a5;PLSV_InvalidUartComIf;Invalid communication interface specified;0xA5;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocSupervisorHandler.h;PLOC_SUPERVISOR_HANDLER
0x52a0;STRH_TmReplyError;Result code of tm reply indicates an error;0xA0;/home/rmueller/EIVE/eive-obsw/mission/devices/StarTrackerHandler.h;STR_HANDLER 0x54a6;PLSV_InvalidWatchdog;Received command with invalid watchdog parameter. Valid watchdogs are 0 for PS, 1 for PL and 2 for INT;0xA6;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocSupervisorHandler.h;PLOC_SUPERVISOR_HANDLER
0x50a0;IMTQ_InvalidCommandCode;;0xA0;/home/rmueller/EIVE/eive-obsw/mission/devices/IMTQHandler.h;IMTQ_HANDLER 0x54a7;PLSV_InvalidWatchdogTimeout;Received watchdog timeout config command with invalid timeout. Valid timeouts must be in the range between 1000 and 360000 ms.;0xA7;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocSupervisorHandler.h;PLOC_SUPERVISOR_HANDLER
0x50a1;IMTQ_ParameterMissing;;0xA1;/home/rmueller/EIVE/eive-obsw/mission/devices/IMTQHandler.h;IMTQ_HANDLER 0x54a8;PLSV_InvalidLatchupId;Received latchup config command with invalid latchup ID;0xA8;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocSupervisorHandler.h;PLOC_SUPERVISOR_HANDLER
0x50a2;IMTQ_ParameterInvalid;;0xA2;/home/rmueller/EIVE/eive-obsw/mission/devices/IMTQHandler.h;IMTQ_HANDLER 0x54a9;PLSV_SweepPeriodTooSmall;Received set adc sweep period command with invalid sweep period. Must be larger than 21.;0xA9;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocSupervisorHandler.h;PLOC_SUPERVISOR_HANDLER
0x50a3;IMTQ_CcUnavailable;;0xA3;/home/rmueller/EIVE/eive-obsw/mission/devices/IMTQHandler.h;IMTQ_HANDLER 0x54aa;PLSV_InvalidTestParam;Receive auto EM test command with invalid test param. Valid params are 1 and 2.;0xAA;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocSupervisorHandler.h;PLOC_SUPERVISOR_HANDLER
0x50a4;IMTQ_InternalProcessingError;;0xA4;/home/rmueller/EIVE/eive-obsw/mission/devices/IMTQHandler.h;IMTQ_HANDLER 0x54ab;PLSV_MramPacketParsingFailure;Returned when scanning for MRAM dump packets failed.;0xAB;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocSupervisorHandler.h;PLOC_SUPERVISOR_HANDLER
0x50a5;IMTQ_RejectedWithoutReason;;0xA5;/home/rmueller/EIVE/eive-obsw/mission/devices/IMTQHandler.h;IMTQ_HANDLER 0x54ac;PLSV_InvalidMramAddresses;Returned when the start and stop addresses of the MRAM dump or MRAM wipe commands are invalid (e.g. start address bigger than stop address);0xAC;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocSupervisorHandler.h;PLOC_SUPERVISOR_HANDLER
0x50a6;IMTQ_CmdErrUnknown;;0xA6;/home/rmueller/EIVE/eive-obsw/mission/devices/IMTQHandler.h;IMTQ_HANDLER 0x54ad;PLSV_NoMramPacket;Expect reception of an MRAM dump packet but received space packet with other apid.;0xAD;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocSupervisorHandler.h;PLOC_SUPERVISOR_HANDLER
0x50a7;IMTQ_UnexpectedSelfTestReply;The status reply to a self test command was received but no self test command has been sent. This should normally never happen.;0xA7;/home/rmueller/EIVE/eive-obsw/mission/devices/IMTQHandler.h;IMTQ_HANDLER 0x57a0;PLUD_UpdaterBusy;Updater is already performing an update;0xA0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocUpdater.h;PLOC_UPDATER
0x4fa0;SYRLINKS_CrcFailure;;0xA0;/home/rmueller/EIVE/eive-obsw/mission/devices/SyrlinksHkHandler.h;SYRLINKS_HANDLER 0x57a1;PLUD_NameTooLong;Received update command with invalid path string (too long).;0xA1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocUpdater.h;PLOC_UPDATER
0x4fa1;SYRLINKS_UartFraminOrParityErrorAck;;0xA1;/home/rmueller/EIVE/eive-obsw/mission/devices/SyrlinksHkHandler.h;SYRLINKS_HANDLER 0x57a2;PLUD_SdNotMounted;Received command to initiate update but SD card with update image not mounted.;0xA2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocUpdater.h;PLOC_UPDATER
0x4fa2;SYRLINKS_BadCharacterAck;;0xA2;/home/rmueller/EIVE/eive-obsw/mission/devices/SyrlinksHkHandler.h;SYRLINKS_HANDLER 0x57a3;PLUD_FileNotExists;Update file received with update command does not exist.;0xA3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/PlocUpdater.h;PLOC_UPDATER
0x4fa3;SYRLINKS_BadParameterValueAck;;0xA3;/home/rmueller/EIVE/eive-obsw/mission/devices/SyrlinksHkHandler.h;SYRLINKS_HANDLER 0x51b0;RWHA_SpiWriteFailure;;0xB0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/RwHandler.h;RW_HANDLER
0x4fa4;SYRLINKS_BadEndOfFrameAck;;0xA4;/home/rmueller/EIVE/eive-obsw/mission/devices/SyrlinksHkHandler.h;SYRLINKS_HANDLER 0x51b1;RWHA_SpiReadFailure;Used by the spi send function to tell a failing read call;0xB1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/RwHandler.h;RW_HANDLER
0x4fa5;SYRLINKS_UnknownCommandIdAck;;0xA5;/home/rmueller/EIVE/eive-obsw/mission/devices/SyrlinksHkHandler.h;SYRLINKS_HANDLER 0x51b2;RWHA_MissingStartSign;Can be used by the HDLC decoding mechanism to inform about a missing start sign 0x7E;0xB2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/RwHandler.h;RW_HANDLER
0x4fa6;SYRLINKS_BadCrcAck;;0xA6;/home/rmueller/EIVE/eive-obsw/mission/devices/SyrlinksHkHandler.h;SYRLINKS_HANDLER 0x51b3;RWHA_InvalidSubstitute;Can be used by the HDLC decoding mechanism to inform about an invalid substitution combination;0xB3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/RwHandler.h;RW_HANDLER
0x4fa7;SYRLINKS_ReplyWrongSize;;0xA7;/home/rmueller/EIVE/eive-obsw/mission/devices/SyrlinksHkHandler.h;SYRLINKS_HANDLER 0x51b4;RWHA_MissingEndSign;HDLC decoding mechanism never receives the end sign 0x7E;0xB4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/RwHandler.h;RW_HANDLER
0x4fa8;SYRLINKS_MissingStartFrameCharacter;;0xA8;/home/rmueller/EIVE/eive-obsw/mission/devices/SyrlinksHkHandler.h;SYRLINKS_HANDLER 0x51b5;RWHA_NoReply;Reaction wheel only responds with empty frames.;0xB5;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/RwHandler.h;RW_HANDLER
0x53a0;PLMP_CrcFailure;;0xA0;/home/rmueller/EIVE/eive-obsw/mission/devices/PlocMPSoCHandler.h;PLOC_MPSOC_HANDLER 0x51a0;RWHA_InvalidSpeed;Action Message with invalid speed was received. Valid speeds must be in the range of [-65000; 1000] or [1000; 65000];0xA0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/RwHandler.h;RW_HANDLER
0x53a1;PLMP_ReceivedAckFailure;;0xA1;/home/rmueller/EIVE/eive-obsw/mission/devices/PlocMPSoCHandler.h;PLOC_MPSOC_HANDLER 0x51a1;RWHA_InvalidRampTime;Action Message with invalid ramp time was received.;0xA1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/RwHandler.h;RW_HANDLER
0x53a2;PLMP_ReceivedExeFailure;;0xA2;/home/rmueller/EIVE/eive-obsw/mission/devices/PlocMPSoCHandler.h;PLOC_MPSOC_HANDLER 0x51a2;RWHA_SetSpeedCommandInvalidLength;Received set speed command has invalid length. Should be 6.;0xA2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/RwHandler.h;RW_HANDLER
0x53a3;PLMP_InvalidApid;;0xA3;/home/rmueller/EIVE/eive-obsw/mission/devices/PlocMPSoCHandler.h;PLOC_MPSOC_HANDLER 0x51a3;RWHA_ExecutionFailed;Command execution failed;0xA3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/RwHandler.h;RW_HANDLER
0x4100;HSPI_HalTimeoutRetval;;0;/home/rmueller/EIVE/eive-obsw/fsfw/hal/src/fsfw/hal/stm32h7/spi/spiDefinitions.h;HAL_SPI 0x51a4;RWHA_CrcError;Reaction wheel reply has invalid crc;0xA4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/RwHandler.h;RW_HANDLER
0x4101;HSPI_HalBusyRetval;;1;/home/rmueller/EIVE/eive-obsw/fsfw/hal/src/fsfw/hal/stm32h7/spi/spiDefinitions.h;HAL_SPI 0x52b0;STRH_CrcFailure;Received reply with invalid CRC;0xB0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/StarTrackerHandler.h;STR_HANDLER
0x4102;HSPI_HalErrorRetval;;2;/home/rmueller/EIVE/eive-obsw/fsfw/hal/src/fsfw/hal/stm32h7/spi/spiDefinitions.h;HAL_SPI 0x52a0;STRH_TmReplyError;Result code of tm reply indicates an error;0xA0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/StarTrackerHandler.h;STR_HANDLER
0x4201;HURT_UartReadFailure;;1;/home/rmueller/EIVE/eive-obsw/fsfw/hal/src/fsfw/hal/linux/uart/UartComIF.h;HAL_UART 0x4fa0;SYRLINKS_CrcFailure;;0xA0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/SyrlinksHkHandler.h;SYRLINKS_HANDLER
0x4202;HURT_UartReadSizeMissmatch;;2;/home/rmueller/EIVE/eive-obsw/fsfw/hal/src/fsfw/hal/linux/uart/UartComIF.h;HAL_UART 0x4fa1;SYRLINKS_UartFraminOrParityErrorAck;;0xA1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/SyrlinksHkHandler.h;SYRLINKS_HANDLER
0x4203;HURT_UartRxBufferTooSmall;;3;/home/rmueller/EIVE/eive-obsw/fsfw/hal/src/fsfw/hal/linux/uart/UartComIF.h;HAL_UART 0x4fa2;SYRLINKS_BadCharacterAck;;0xA2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/SyrlinksHkHandler.h;SYRLINKS_HANDLER
0x4401;HGIO_UnknownGpioId;;1;/home/rmueller/EIVE/eive-obsw/fsfw/hal/src/fsfw/hal/linux/gpio/LinuxLibgpioIF.h;HAL_GPIO 0x4fa3;SYRLINKS_BadParameterValueAck;;0xA3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/SyrlinksHkHandler.h;SYRLINKS_HANDLER
0x4402;HGIO_DriveGpioFailure;;2;/home/rmueller/EIVE/eive-obsw/fsfw/hal/src/fsfw/hal/linux/gpio/LinuxLibgpioIF.h;HAL_GPIO 0x4fa4;SYRLINKS_BadEndOfFrameAck;;0xA4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/SyrlinksHkHandler.h;SYRLINKS_HANDLER
0x4403;HGIO_GpioTypeFailure;;3;/home/rmueller/EIVE/eive-obsw/fsfw/hal/src/fsfw/hal/linux/gpio/LinuxLibgpioIF.h;HAL_GPIO 0x4fa5;SYRLINKS_UnknownCommandIdAck;;0xA5;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/SyrlinksHkHandler.h;SYRLINKS_HANDLER
0x4404;HGIO_GpioInvalidInstance;;4;/home/rmueller/EIVE/eive-obsw/fsfw/hal/src/fsfw/hal/linux/gpio/LinuxLibgpioIF.h;HAL_GPIO 0x4fa6;SYRLINKS_BadCrcAck;;0xA6;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/SyrlinksHkHandler.h;SYRLINKS_HANDLER
0x2b01;CCS_BcIsSetVrCommand;;0x01;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF 0x4fa7;SYRLINKS_ReplyWrongSize;;0xA7;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/SyrlinksHkHandler.h;SYRLINKS_HANDLER
0x2b02;CCS_BcIsUnlockCommand;;0x02;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF 0x4fa8;SYRLINKS_MissingStartFrameCharacter;;0xA8;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/mission/devices/SyrlinksHkHandler.h;SYRLINKS_HANDLER
0x2bb0;CCS_BcIllegalCommand;;0xB0;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF 0x4401;HGIO_UnknownGpioId;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/hal/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h;HAL_GPIO
0x2bb1;CCS_BoardReadingNotFinished;;0xB1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF 0x4402;HGIO_DriveGpioFailure;;2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/hal/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h;HAL_GPIO
0x2bf0;CCS_NsPositiveW;;0xF0;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF 0x4403;HGIO_GpioTypeFailure;;3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/hal/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h;HAL_GPIO
0x2bf1;CCS_NsNegativeW;;0xF1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF 0x4404;HGIO_GpioInvalidInstance;;4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/hal/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h;HAL_GPIO
0x2bf2;CCS_NsLockout;;0xF2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF 0x4100;HSPI_HalTimeoutRetval;;0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/hal/src/fsfw_hal/stm32h7/spi/spiDefinitions.h;HAL_SPI
0x2bf3;CCS_FarmInLockout;;0xF3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF 0x4101;HSPI_HalBusyRetval;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/hal/src/fsfw_hal/stm32h7/spi/spiDefinitions.h;HAL_SPI
0x2bf4;CCS_FarmInWait;;0xF4;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF 0x4102;HSPI_HalErrorRetval;;2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/hal/src/fsfw_hal/stm32h7/spi/spiDefinitions.h;HAL_SPI
0x2be0;CCS_WrongSymbol;;0xE0;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF 0x4201;HURT_UartReadFailure;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/hal/src/fsfw_hal/linux/uart/UartComIF.h;HAL_UART
0x2be1;CCS_DoubleStart;;0xE1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF 0x4202;HURT_UartReadSizeMissmatch;;2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/hal/src/fsfw_hal/linux/uart/UartComIF.h;HAL_UART
0x2be2;CCS_StartSymbolMissed;;0xE2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF 0x4203;HURT_UartRxBufferTooSmall;;3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/hal/src/fsfw_hal/linux/uart/UartComIF.h;HAL_UART
0x2be3;CCS_EndWithoutStart;;0xE3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF 0x3101;CF_ObjectHasNoFunctions;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/action/CommandsActionsIF.h;COMMANDS_ACTIONS_IF
0x2be4;CCS_TooLarge;;0xE4;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF 0x3102;CF_AlreadyCommanding;;2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/action/CommandsActionsIF.h;COMMANDS_ACTIONS_IF
0x2be5;CCS_TooShort;;0xE5;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF 0x3201;HF_IsBusy;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/action/HasActionsIF.h;HAS_ACTIONS_IF
0x2be6;CCS_WrongTfVersion;;0xE6;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF 0x3202;HF_InvalidParameters;;2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/action/HasActionsIF.h;HAS_ACTIONS_IF
0x2be7;CCS_WrongSpacecraftId;;0xE7;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF 0x3203;HF_ExecutionFinished;;3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/action/HasActionsIF.h;HAS_ACTIONS_IF
0x2be8;CCS_NoValidFrameType;;0xE8;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF 0x3204;HF_InvalidActionId;;4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/action/HasActionsIF.h;HAS_ACTIONS_IF
0x2be9;CCS_CrcFailed;;0xE9;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF 0x1101;AL_Full;;0x01;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/container/ArrayList.h;ARRAY_LIST
0x2bea;CCS_VcNotFound;;0xEA;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF 0x1801;FF_Full;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/container/FIFOBase.h;FIFO_CLASS
0x2beb;CCS_ForwardingFailed;;0xEB;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF 0x1802;FF_Empty;;2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/container/FIFOBase.h;FIFO_CLASS
0x2bec;CCS_ContentTooLarge;;0xEC;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF 0x1501;FM_KeyAlreadyExists;;0x01;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/container/FixedMap.h;FIXED_MAP
0x2bed;CCS_ResidualData;;0xED;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF 0x1502;FM_MapFull;;0x02;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/container/FixedMap.h;FIXED_MAP
0x2bee;CCS_DataCorrupted;;0xEE;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF 0x1503;FM_KeyDoesNotExist;;0x03;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/container/FixedMap.h;FIXED_MAP
0x2bef;CCS_IllegalSegmentationFlag;;0xEF;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF 0x1601;FMM_MapFull;;0x01;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/container/FixedOrderedMultimap.h;FIXED_MULTIMAP
0x2bd0;CCS_IllegalFlagCombination;;0xD0;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF 0x1602;FMM_KeyDoesNotExist;;0x02;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/container/FixedOrderedMultimap.h;FIXED_MULTIMAP
0x2bd1;CCS_ShorterThanHeader;;0xD1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF 0x36a1;SGP4_InvalidEccentricity;;0xA1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS
0x2bd2;CCS_TooShortBlockedPacket;;0xD2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF 0x36a2;SGP4_InvalidMeanMotion;;0xA2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS
0x2bd3;CCS_TooShortMapExtraction;;0xD3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF 0x36a3;SGP4_InvalidPerturbationElements;;0xA3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS
0x2901;IEC_NoConfigurationTable;;0x01;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES 0x36a4;SGP4_InvalidSemiLatusRectum;;0xA4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS
0x2902;IEC_NoCpuTable;;0x02;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES 0x36a5;SGP4_InvalidEpochElements;;0xA5;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS
0x2903;IEC_InvalidWorkspaceAddress;;0x03;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES 0x36a6;SGP4_SatelliteHasDecayed;;0xA6;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS
0x2904;IEC_TooLittleWorkspace;;0x04;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES 0x36b1;SGP4_TleTooOld;;0xB1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS
0x2905;IEC_WorkspaceAllocation;;0x05;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES 0x36b2;SGP4_TleNotInitialized;;0xB2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS
0x2906;IEC_InterruptStackTooSmall;;0x06;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES 0x2b01;CCS_BcIsSetVrCommand;;0x01;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2907;IEC_ThreadExitted;;0x07;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES 0x2b02;CCS_BcIsUnlockCommand;;0x02;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2908;IEC_InconsistentMpInformation;;0x08;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES 0x2bb0;CCS_BcIllegalCommand;;0xB0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2909;IEC_InvalidNode;;0x09;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES 0x2bb1;CCS_BoardReadingNotFinished;;0xB1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x290a;IEC_NoMpci;;0x0a;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES 0x2bf0;CCS_NsPositiveW;;0xF0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x290b;IEC_BadPacket;;0x0b;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES 0x2bf1;CCS_NsNegativeW;;0xF1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x290c;IEC_OutOfPackets;;0x0c;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES 0x2bf2;CCS_NsLockout;;0xF2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x290d;IEC_OutOfGlobalObjects;;0x0d;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES 0x2bf3;CCS_FarmInLockout;;0xF3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x290e;IEC_OutOfProxies;;0x0e;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES 0x2bf4;CCS_FarmInWait;;0xF4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x290f;IEC_InvalidGlobalId;;0x0f;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES 0x2be0;CCS_WrongSymbol;;0xE0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2910;IEC_BadStackHook;;0x10;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES 0x2be1;CCS_DoubleStart;;0xE1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2911;IEC_BadAttributes;;0x11;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES 0x2be2;CCS_StartSymbolMissed;;0xE2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2912;IEC_ImplementationKeyCreateInconsistency;;0x12;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES 0x2be3;CCS_EndWithoutStart;;0xE3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2913;IEC_ImplementationBlockingOperationCancel;;0x13;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES 0x2be4;CCS_TooLarge;;0xE4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2914;IEC_MutexObtainFromBadState;;0x14;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES 0x2be5;CCS_TooShort;;0xE5;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2915;IEC_UnlimitedAndMaximumIs0;;0x15;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES 0x2be6;CCS_WrongTfVersion;;0xE6;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0xe01;HM_InvalidMode;;0x01;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/modes/HasModesIF.h;HAS_MODES_IF 0x2be7;CCS_WrongSpacecraftId;;0xE7;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0xe02;HM_TransNotAllowed;;0x02;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/modes/HasModesIF.h;HAS_MODES_IF 0x2be8;CCS_NoValidFrameType;;0xE8;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0xe03;HM_InTransition;;0x03;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/modes/HasModesIF.h;HAS_MODES_IF 0x2be9;CCS_CrcFailed;;0xE9;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0xe04;HM_InvalidSubmode;;0x04;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/modes/HasModesIF.h;HAS_MODES_IF 0x2bea;CCS_VcNotFound;;0xEA;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2d01;HPA_InvalidIdentifierId;;0x01;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/parameters/HasParametersIF.h;HAS_PARAMETERS_IF 0x2beb;CCS_ForwardingFailed;;0xEB;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2d02;HPA_InvalidDomainId;;0x02;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/parameters/HasParametersIF.h;HAS_PARAMETERS_IF 0x2bec;CCS_ContentTooLarge;;0xEC;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2d03;HPA_InvalidValue;;0x03;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/parameters/HasParametersIF.h;HAS_PARAMETERS_IF 0x2bed;CCS_ResidualData;;0xED;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2d05;HPA_ReadOnly;;0x05;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/parameters/HasParametersIF.h;HAS_PARAMETERS_IF 0x2bee;CCS_DataCorrupted;;0xEE;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2c01;PAW_UnknownDatatype;;0x01;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER 0x2bef;CCS_IllegalSegmentationFlag;;0xEF;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2c02;PAW_DatatypeMissmatch;;0x02;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER 0x2bd0;CCS_IllegalFlagCombination;;0xD0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2c03;PAW_Readonly;;0x03;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER 0x2bd1;CCS_ShorterThanHeader;;0xD1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2c04;PAW_TooBig;;0x04;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER 0x2bd2;CCS_TooShortBlockedPacket;;0xD2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2c05;PAW_SourceNotSet;;0x05;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER 0x2bd3;CCS_TooShortMapExtraction;;0xD3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2c06;PAW_OutOfBounds;;0x06;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER 0x801;DPS_InvalidParameterDefinition;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datapool/DataSetIF.h;DATA_SET_CLASS
0x2c07;PAW_NotSet;;0x07;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER 0x802;DPS_SetWasAlreadyRead;;2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datapool/DataSetIF.h;DATA_SET_CLASS
0x2c08;PAW_ColumnOrRowsZero;;0x08;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER 0x803;DPS_CommitingWithoutReading;;3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datapool/DataSetIF.h;DATA_SET_CLASS
0x3101;CF_ObjectHasNoFunctions;;1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/action/CommandsActionsIF.h;COMMANDS_ACTIONS_IF 0x804;DPS_DataSetUninitialised;;4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datapool/DataSetIF.h;DATA_SET_CLASS
0x3102;CF_AlreadyCommanding;;2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/action/CommandsActionsIF.h;COMMANDS_ACTIONS_IF 0x805;DPS_DataSetFull;;5;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datapool/DataSetIF.h;DATA_SET_CLASS
0x3201;HF_IsBusy;;1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/action/HasActionsIF.h;HAS_ACTIONS_IF 0x806;DPS_PoolVarNull;;6;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datapool/DataSetIF.h;DATA_SET_CLASS
0x3202;HF_InvalidParameters;;2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/action/HasActionsIF.h;HAS_ACTIONS_IF 0x3ba0;PVA_InvalidReadWriteMode;;0xA0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datapool/PoolVariableIF.h;POOL_VARIABLE_IF
0x3203;HF_ExecutionFinished;;3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/action/HasActionsIF.h;HAS_ACTIONS_IF 0x3ba1;PVA_InvalidPoolEntry;;0xA1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datapool/PoolVariableIF.h;POOL_VARIABLE_IF
0x3204;HF_InvalidActionId;;4;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/action/HasActionsIF.h;HAS_ACTIONS_IF 0x3c00;HKM_QueueOrDestinationInvalid;;0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h;HOUSEKEEPING_MANAGER
0x201;OM_InsertionFailed;;1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/objectmanager/ObjectManagerIF.h;OBJECT_MANAGER_IF 0x3c01;HKM_WrongHkPacketType;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h;HOUSEKEEPING_MANAGER
0x202;OM_NotFound;;2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/objectmanager/ObjectManagerIF.h;OBJECT_MANAGER_IF 0x3c02;HKM_ReportingStatusUnchanged;;2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h;HOUSEKEEPING_MANAGER
0x203;OM_ChildInitFailed;;3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/objectmanager/ObjectManagerIF.h;OBJECT_MANAGER_IF 0x3c03;HKM_PeriodicHelperInvalid;;3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h;HOUSEKEEPING_MANAGER
0x204;OM_InternalErrReporterUninit;;4;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/objectmanager/ObjectManagerIF.h;OBJECT_MANAGER_IF 0x3c04;HKM_PoolobjectNotFound;;4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h;HOUSEKEEPING_MANAGER
0x2500;FDI_YourFault;;0;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/fdir/ConfirmsFailuresIF.h;HANDLES_FAILURES_IF 0x3c05;HKM_DatasetNotFound;;5;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h;HOUSEKEEPING_MANAGER
0x2501;FDI_MyFault;;1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/fdir/ConfirmsFailuresIF.h;HANDLES_FAILURES_IF 0x3a00;LPIF_PoolEntryNotFound;;0x00;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datapoollocal/localPoolDefinitions.h;LOCAL_POOL_OWNER_IF
0x2502;FDI_ConfirmLater;;2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/fdir/ConfirmsFailuresIF.h;HANDLES_FAILURES_IF 0x3a01;LPIF_PoolEntryTypeConflict;;0x01;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/datapoollocal/localPoolDefinitions.h;LOCAL_POOL_OWNER_IF
0x2101;TMF_Busy;;1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF 0x1201;AB_NeedSecondStep;;0x01;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/AssemblyBase.h;ASSEMBLY_BASE
0x2102;TMF_LastPacketFound;;2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF 0x1202;AB_NeedToReconfigure;;0x02;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/AssemblyBase.h;ASSEMBLY_BASE
0x2103;TMF_StopFetch;;3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF 0x1203;AB_ModeFallback;;0x03;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/AssemblyBase.h;ASSEMBLY_BASE
0x2104;TMF_Timeout;;4;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF 0x1204;AB_ChildNotCommandable;;0x04;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/AssemblyBase.h;ASSEMBLY_BASE
0x2105;TMF_TmChannelFull;;5;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF 0x1205;AB_NeedToChangeHealth;;0x05;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/AssemblyBase.h;ASSEMBLY_BASE
0x2106;TMF_NotStored;;6;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF 0x12a1;AB_NotEnoughChildrenInCorrectState;;0xa1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/AssemblyBase.h;ASSEMBLY_BASE
0x2107;TMF_AllDeleted;;7;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF 0x3301;DC_NoReplyReceived;;0x01;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h;DEVICE_COMMUNICATION_IF
0x2108;TMF_InvalidData;;8;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF 0x3302;DC_ProtocolError;;0x02;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h;DEVICE_COMMUNICATION_IF
0x2109;TMF_NotReady;;9;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF 0x3303;DC_Nullpointer;;0x03;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h;DEVICE_COMMUNICATION_IF
0x2001;TMB_Busy;;1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF 0x3304;DC_InvalidCookieType;;0x04;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h;DEVICE_COMMUNICATION_IF
0x2002;TMB_Full;;2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF 0x3305;DC_NotActive;;0x05;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h;DEVICE_COMMUNICATION_IF
0x2003;TMB_Empty;;3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF 0x3306;DC_TooMuchData;;0x06;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h;DEVICE_COMMUNICATION_IF
0x2004;TMB_NullRequested;;4;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF 0x3a0;DHB_InvalidChannel;;0xA0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x2005;TMB_TooLarge;;5;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF 0x3b0;DHB_AperiodicReply;;0xB0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x2006;TMB_NotReady;;6;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF 0x3b1;DHB_IgnoreReplyData;;0xB1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x2007;TMB_DumpError;;7;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF 0x3b2;DHB_IgnoreFullPacket;;0xB2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x2008;TMB_CrcError;;8;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF 0x3c0;DHB_NothingToSend;;0xC0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x2009;TMB_Timeout;;9;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF 0x3c2;DHB_CommandMapError;;0xC2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x200a;TMB_IdlePacketFound;;10;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF 0x3d0;DHB_NoSwitch;;0xD0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x200b;TMB_TelecommandFound;;11;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF 0x3e0;DHB_ChildTimeout;;0xE0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x200c;TMB_NoPusATm;;12;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF 0x3e1;DHB_SwitchFailed;;0xE1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x200d;TMB_TooSmall;;13;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF 0x26a0;DHI_NoCommandData;;0xA0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x200e;TMB_BlockNotFound;;14;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF 0x26a1;DHI_CommandNotSupported;;0xA1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x200f;TMB_InvalidRequest;;15;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF 0x26a2;DHI_CommandAlreadySent;;0xA2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x1c01;TCD_PacketLost;;1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tcdistribution/TcDistributor.h;PACKET_DISTRIBUTION 0x26a3;DHI_CommandWasNotSent;;0xA3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x1c02;TCD_DestinationNotFound;;2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tcdistribution/TcDistributor.h;PACKET_DISTRIBUTION 0x26a4;DHI_CantSwitchAddress;;0xA4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x1c03;TCD_ServiceIdAlreadyExists;;3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tcdistribution/TcDistributor.h;PACKET_DISTRIBUTION 0x26a5;DHI_WrongModeForCommand;;0xA5;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x1b00;TCC_IllegalApid;;0;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tcdistribution/TcPacketCheck.h;TC_PACKET_CHECK 0x26a6;DHI_Timeout;;0xA6;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x1b01;TCC_IncompletePacket;;1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tcdistribution/TcPacketCheck.h;TC_PACKET_CHECK 0x26a7;DHI_Busy;;0xA7;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x1b02;TCC_IncorrectChecksum;;2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tcdistribution/TcPacketCheck.h;TC_PACKET_CHECK 0x26a8;DHI_NoReplyExpected;;0xA8;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x1b03;TCC_IllegalPacketType;;3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tcdistribution/TcPacketCheck.h;TC_PACKET_CHECK 0x26a9;DHI_NonOpTemperature;;0xA9;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x1b04;TCC_IllegalPacketSubtype;;4;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tcdistribution/TcPacketCheck.h;TC_PACKET_CHECK 0x26aa;DHI_CommandNotImplemented;;0xAA;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x1b05;TCC_IncorrectPrimaryHeader;;5;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tcdistribution/TcPacketCheck.h;TC_PACKET_CHECK 0x26b0;DHI_ChecksumError;;0xB0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x1b06;TCC_IncorrectSecondaryHeader;;6;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tcdistribution/TcPacketCheck.h;TC_PACKET_CHECK 0x26b1;DHI_LengthMissmatch;;0xB1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x4e1;RMP_CommandNoDescriptorsAvailable;;0xE1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x26b2;DHI_InvalidData;;0xB2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x4e2;RMP_CommandBufferFull;;0xE2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x26b3;DHI_ProtocolError;;0xB3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x4e3;RMP_CommandChannelOutOfRange;;0xE3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x26c0;DHI_DeviceDidNotExecute;;0xC0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x4e6;RMP_CommandChannelDeactivated;;0xE6;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x26c1;DHI_DeviceReportedError;;0xC1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x4e7;RMP_CommandPortOutOfRange;;0xE7;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x26c2;DHI_UnknownDeviceReply;;0xC2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x4e8;RMP_CommandPortInUse;;0xE8;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x26c3;DHI_DeviceReplyInvalid;;0xC3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x4e9;RMP_CommandNoChannel;;0xE9;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x26d0;DHI_InvalidCommandParameter;;0xD0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x4ea;RMP_NoHwCrc;;0xEA;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x26d1;DHI_InvalidNumberOrLengthOfParameters;;0xD1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x4d0;RMP_ReplyNoReply;;0xD0;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x2401;EV_ListenerNotFound;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/events/EventManagerIF.h;EVENT_MANAGER_IF
0x4d1;RMP_ReplyNotSent;;0xD1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x2500;FDI_YourFault;;0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/fdir/ConfirmsFailuresIF.h;HANDLES_FAILURES_IF
0x4d2;RMP_ReplyNotYetSent;;0xD2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x2501;FDI_MyFault;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/fdir/ConfirmsFailuresIF.h;HANDLES_FAILURES_IF
0x4d3;RMP_ReplyMissmatch;;0xD3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x2502;FDI_ConfirmLater;;2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/fdir/ConfirmsFailuresIF.h;HANDLES_FAILURES_IF
0x4d4;RMP_ReplyTimeout;;0xD4;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x2301;MT_TooDetailedRequest;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/globalfunctions/matching/MatchTree.h;MATCH_TREE_CLASS
0x4c0;RMP_ReplyInterfaceBusy;;0xC0;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x2302;MT_TooGeneralRequest;;2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/globalfunctions/matching/MatchTree.h;MATCH_TREE_CLASS
0x4c1;RMP_ReplyTransmissionError;;0xC1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x2303;MT_NoMatch;;3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/globalfunctions/matching/MatchTree.h;MATCH_TREE_CLASS
0x4c2;RMP_ReplyInvalidData;;0xC2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x2304;MT_Full;;4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/globalfunctions/matching/MatchTree.h;MATCH_TREE_CLASS
0x4c3;RMP_ReplyNotSupported;;0xC3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x2305;MT_NewNodeCreated;;5;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/globalfunctions/matching/MatchTree.h;MATCH_TREE_CLASS
0x4f0;RMP_LinkDown;;0xF0;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x2e01;ASC_TooLongForTargetType;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/globalfunctions/AsciiConverter.h;ASCII_CONVERTER
0x4f1;RMP_SpwCredit;;0xF1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x2e02;ASC_InvalidCharacters;;2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/globalfunctions/AsciiConverter.h;ASCII_CONVERTER
0x4f2;RMP_SpwEscape;;0xF2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x2e03;ASC_BufferTooSmall;;0x3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/globalfunctions/AsciiConverter.h;ASCII_CONVERTER
0x4f3;RMP_SpwDisconnect;;0xF3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x3d01;DLEE_StreamTooShort;;0x01;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/globalfunctions/DleEncoder.h;DLE_ENCODER
0x4f4;RMP_SpwParity;;0xF4;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x3d02;DLEE_DecodingError;;0x02;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/globalfunctions/DleEncoder.h;DLE_ENCODER
0x4f5;RMP_SpwWriteSync;;0xF5;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x1701;HHI_ObjectNotHealthy;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/health/HasHealthIF.h;HAS_HEALTH_IF
0x4f6;RMP_SpwInvalidAddress;;0xF6;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x1702;HHI_InvalidHealthState;;2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/health/HasHealthIF.h;HAS_HEALTH_IF
0x4f7;RMP_SpwEarlyEop;;0xF7;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0xf01;CM_UnknownCommand;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/ipc/CommandMessageIF.h;COMMAND_MESSAGE
0x4f8;RMP_SpwDma;;0xF8;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x3801;MQI_Empty;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/ipc/MessageQueueIF.h;MESSAGE_QUEUE_IF
0x4f9;RMP_SpwLinkError;;0xF9;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x3802;MQI_Full;No space left for more messages;2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/ipc/MessageQueueIF.h;MESSAGE_QUEUE_IF
0x400;RMP_ReplyOk;;0;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x3803;MQI_NoReplyPartner;Returned if a reply method was called without partner;3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/ipc/MessageQueueIF.h;MESSAGE_QUEUE_IF
0x401;RMP_ReplyGeneralErrorCode;;1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x3804;MQI_DestinationInvalid;Returned if the target destination is invalid.;4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/ipc/MessageQueueIF.h;MESSAGE_QUEUE_IF
0x402;RMP_ReplyUnusedPacketTypeOrCommandCode;;2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x3701;MUX_NotEnoughResources;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x403;RMP_ReplyInvalidKey;;3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x3702;MUX_InsufficientMemory;;2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x404;RMP_ReplyInvalidDataCrc;;4;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x3703;MUX_NoPrivilege;;3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x405;RMP_ReplyEarlyEop;;5;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x3704;MUX_WrongAttributeSetting;;4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x406;RMP_ReplyTooMuchData;;6;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x3705;MUX_MutexAlreadyLocked;;5;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x407;RMP_ReplyEep;;7;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x3706;MUX_MutexNotFound;;6;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x408;RMP_ReplyReserved;;8;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x3707;MUX_MutexMaxLocks;;7;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x409;RMP_ReplyVerifyBufferOverrun;;9;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x3708;MUX_CurrThreadAlreadyOwnsMutex;;8;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x40a;RMP_ReplyCommandNotImplementedOrNotAuthorised;;10;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x3709;MUX_CurrThreadDoesNotOwnMutex;;9;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x40b;RMP_ReplyRmwDataLengthError;;11;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x370a;MUX_MutexTimeout;;10;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x40c;RMP_ReplyInvalidTargetLogicalAddress;;12;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL 0x370b;MUX_MutexInvalidId;;11;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x2701;SM_DataTooLarge;;1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/storagemanager/StorageManagerIF.h;STORAGE_MANAGER_IF 0x370c;MUX_MutexDestroyedWhileWaiting;;12;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x2702;SM_DataStorageFull;;2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/storagemanager/StorageManagerIF.h;STORAGE_MANAGER_IF 0x4000;FILS_GenericFileError;;0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x2703;SM_IllegalStorageId;;3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/storagemanager/StorageManagerIF.h;STORAGE_MANAGER_IF 0x4001;FILS_IsBusy;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x2704;SM_DataDoesNotExist;;4;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/storagemanager/StorageManagerIF.h;STORAGE_MANAGER_IF 0x4002;FILS_InvalidParameters;;2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x2705;SM_IllegalAddress;;5;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/storagemanager/StorageManagerIF.h;STORAGE_MANAGER_IF 0x4005;FILS_FileDoesNotExist;;5;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x2706;SM_PoolTooLarge;;6;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/storagemanager/StorageManagerIF.h;STORAGE_MANAGER_IF 0x4006;FILS_FileAlreadyExists;;6;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x36a1;SGP4_InvalidEccentricity;;0xA1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS 0x4007;FILS_FileLocked;;7;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x36a2;SGP4_InvalidMeanMotion;;0xA2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS 0x400a;FILS_DirectoryDoesNotExist;;10;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x36a3;SGP4_InvalidPerturbationElements;;0xA3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS 0x400b;FILS_DirectoryAlreadyExists;;11;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x36a4;SGP4_InvalidSemiLatusRectum;;0xA4;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS 0x400c;FILS_DirectoryNotEmpty;;12;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x36a5;SGP4_InvalidEpochElements;;0xA5;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS 0x400f;FILS_SequencePacketMissingWrite;;15;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x36a6;SGP4_SatelliteHasDecayed;;0xA6;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS 0x4010;FILS_SequencePacketMissingRead;;16;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x36b1;SGP4_TleTooOld;;0xB1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS 0x601;PP_DoItMyself;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x36b2;SGP4_TleNotInitialized;;0xB2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS 0x602;PP_PointsToVariable;;2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x2301;MT_TooDetailedRequest;;1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/globalfunctions/matching/MatchTree.h;MATCH_TREE_CLASS 0x603;PP_PointsToMemory;;3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x2302;MT_TooGeneralRequest;;2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/globalfunctions/matching/MatchTree.h;MATCH_TREE_CLASS 0x604;PP_ActivityCompleted;;4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x2303;MT_NoMatch;;3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/globalfunctions/matching/MatchTree.h;MATCH_TREE_CLASS 0x605;PP_PointsToVectorUint8;;5;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x2304;MT_Full;;4;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/globalfunctions/matching/MatchTree.h;MATCH_TREE_CLASS 0x606;PP_PointsToVectorUint16;;6;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x2305;MT_NewNodeCreated;;5;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/globalfunctions/matching/MatchTree.h;MATCH_TREE_CLASS 0x607;PP_PointsToVectorUint32;;7;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x3d01;DLEE_StreamTooShort;;0x01;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/globalfunctions/DleEncoder.h;DLE_ENCODER 0x608;PP_PointsToVectorFloat;;8;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x3d02;DLEE_DecodingError;;0x02;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/globalfunctions/DleEncoder.h;DLE_ENCODER 0x6a0;PP_DumpNotSupported;;0xA0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x2e01;ASC_TooLongForTargetType;;1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/globalfunctions/AsciiConverter.h;ASCII_CONVERTER 0x6e0;PP_InvalidSize;;0xE0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x2e02;ASC_InvalidCharacters;;2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/globalfunctions/AsciiConverter.h;ASCII_CONVERTER 0x6e1;PP_InvalidAddress;;0xE1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x2e03;ASC_BufferTooSmall;;0x3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/globalfunctions/AsciiConverter.h;ASCII_CONVERTER 0x6e2;PP_InvalidContent;;0xE2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0xf01;CM_UnknownCommand;;1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/ipc/CommandMessageIF.h;COMMAND_MESSAGE 0x6e3;PP_UnalignedAccess;;0xE3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x3801;MQI_Empty;;1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/ipc/MessageQueueIF.h;MESSAGE_QUEUE_IF 0x6e4;PP_WriteProtected;;0xE4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x3802;MQI_Full;No space left for more messages;2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/ipc/MessageQueueIF.h;MESSAGE_QUEUE_IF 0x13e0;MH_UnknownCmd;;0xE0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/memory/MemoryHelper.h;MEMORY_HELPER
0x3803;MQI_NoReplyPartner;Returned if a reply method was called without partner;3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/ipc/MessageQueueIF.h;MESSAGE_QUEUE_IF 0x13e1;MH_InvalidAddress;;0xE1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/memory/MemoryHelper.h;MEMORY_HELPER
0x3804;MQI_DestinationInvalid;Returned if the target destination is invalid.;4;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/ipc/MessageQueueIF.h;MESSAGE_QUEUE_IF 0x13e2;MH_InvalidSize;;0xE2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/memory/MemoryHelper.h;MEMORY_HELPER
0x3701;MUX_NotEnoughResources;;1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF 0x13e3;MH_StateMismatch;;0xE3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/memory/MemoryHelper.h;MEMORY_HELPER
0x3702;MUX_InsufficientMemory;;2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF 0xe01;HM_InvalidMode;;0x01;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/modes/HasModesIF.h;HAS_MODES_IF
0x3703;MUX_NoPrivilege;;3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF 0xe02;HM_TransNotAllowed;;0x02;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/modes/HasModesIF.h;HAS_MODES_IF
0x3704;MUX_WrongAttributeSetting;;4;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF 0xe03;HM_InTransition;;0x03;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/modes/HasModesIF.h;HAS_MODES_IF
0x3705;MUX_MutexAlreadyLocked;;5;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF 0xe04;HM_InvalidSubmode;;0x04;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/modes/HasModesIF.h;HAS_MODES_IF
0x3706;MUX_MutexNotFound;;6;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF 0x3001;LIM_Unchecked;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x3707;MUX_MutexMaxLocks;;7;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF 0x3002;LIM_Invalid;;2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x3708;MUX_CurrThreadAlreadyOwnsMutex;;8;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF 0x3003;LIM_Unselected;;3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x3709;MUX_CurrThreadDoesNotOwnMutex;;9;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF 0x3004;LIM_BelowLowLimit;;4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x370a;MUX_MutexTimeout;;10;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF 0x3005;LIM_AboveHighLimit;;5;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x370b;MUX_MutexInvalidId;;11;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF 0x3006;LIM_UnexpectedValue;;6;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x370c;MUX_MutexDestroyedWhileWaiting;;12;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF 0x3007;LIM_OutOfRange;;7;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x3901;SPH_SemaphoreTimeout;;1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tasks/SemaphoreIF.h;SEMAPHORE_IF 0x30a0;LIM_FirstSample;;0xA0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x3902;SPH_SemaphoreNotOwned;;2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tasks/SemaphoreIF.h;SEMAPHORE_IF 0x30e0;LIM_InvalidSize;;0xE0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x3903;SPH_SemaphoreInvalid;;3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tasks/SemaphoreIF.h;SEMAPHORE_IF 0x30e1;LIM_WrongType;;0xE1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x2801;TC_InvalidTargetState;;1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/thermal/ThermalComponentIF.h;THERMAL_COMPONENT_IF 0x30e2;LIM_WrongPid;;0xE2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x28f1;TC_AboveOperationalLimit;;0xF1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/thermal/ThermalComponentIF.h;THERMAL_COMPONENT_IF 0x30e3;LIM_WrongLimitId;;0xE3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x28f2;TC_BelowOperationalLimit;;0xF2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/thermal/ThermalComponentIF.h;THERMAL_COMPONENT_IF 0x30ee;LIM_MonitorNotFound;;0xEE;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0xc02;MS_InvalidEntry;;0x02;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/subsystem/modes/ModeStoreIF.h;MODE_STORE_IF 0x1a01;TRC_NotEnoughSensors;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/monitoring/TriplexMonitor.h;TRIPLE_REDUNDACY_CHECK
0xc03;MS_TooManyElements;;0x03;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/subsystem/modes/ModeStoreIF.h;MODE_STORE_IF 0x1a02;TRC_LowestValueOol;;2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/monitoring/TriplexMonitor.h;TRIPLE_REDUNDACY_CHECK
0xc04;MS_CantStoreEmpty;;0x04;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/subsystem/modes/ModeStoreIF.h;MODE_STORE_IF 0x1a03;TRC_HighestValueOol;;3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/monitoring/TriplexMonitor.h;TRIPLE_REDUNDACY_CHECK
0xd01;SS_SequenceAlreadyExists;;0x01;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM 0x1a04;TRC_BothValuesOol;;4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/monitoring/TriplexMonitor.h;TRIPLE_REDUNDACY_CHECK
0xd02;SS_TableAlreadyExists;;0x02;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM 0x1a05;TRC_DuplexOol;;5;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/monitoring/TriplexMonitor.h;TRIPLE_REDUNDACY_CHECK
0xd03;SS_TableDoesNotExist;;0x03;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM 0x201;OM_InsertionFailed;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/objectmanager/ObjectManagerIF.h;OBJECT_MANAGER_IF
0xd04;SS_TableOrSequenceLengthInvalid;;0x04;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM 0x202;OM_NotFound;;2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/objectmanager/ObjectManagerIF.h;OBJECT_MANAGER_IF
0xd05;SS_SequenceDoesNotExist;;0x05;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM 0x203;OM_ChildInitFailed;;3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/objectmanager/ObjectManagerIF.h;OBJECT_MANAGER_IF
0xd06;SS_TableContainsInvalidObjectId;;0x06;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM 0x204;OM_InternalErrReporterUninit;;4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/objectmanager/ObjectManagerIF.h;OBJECT_MANAGER_IF
0xd07;SS_FallbackSequenceDoesNotExist;;0x07;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM 0x2901;IEC_NoConfigurationTable;;0x01;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0xd08;SS_NoTargetTable;;0x08;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM 0x2902;IEC_NoCpuTable;;0x02;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0xd09;SS_SequenceOrTableTooLong;;0x09;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM 0x2903;IEC_InvalidWorkspaceAddress;;0x03;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0xd0b;SS_IsFallbackSequence;;0x0B;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM 0x2904;IEC_TooLittleWorkspace;;0x04;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0xd0c;SS_AccessDenied;;0x0C;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM 0x2905;IEC_WorkspaceAllocation;;0x05;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0xd0e;SS_TableInUse;;0x0E;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM 0x2906;IEC_InterruptStackTooSmall;;0x06;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0xda1;SS_TargetTableNotReached;;0xA1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM 0x2907;IEC_ThreadExitted;;0x07;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0xda2;SS_TableCheckFailed;;0xA2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM 0x2908;IEC_InconsistentMpInformation;;0x08;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0xb01;SB_ChildNotFound;;0x01;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/subsystem/SubsystemBase.h;SUBSYSTEM_BASE 0x2909;IEC_InvalidNode;;0x09;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0xb02;SB_ChildInfoUpdated;;0x02;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/subsystem/SubsystemBase.h;SUBSYSTEM_BASE 0x290a;IEC_NoMpci;;0x0a;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0xb03;SB_ChildDoesntHaveModes;;0x03;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/subsystem/SubsystemBase.h;SUBSYSTEM_BASE 0x290b;IEC_BadPacket;;0x0b;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0xb04;SB_CouldNotInsertChild;;0x04;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/subsystem/SubsystemBase.h;SUBSYSTEM_BASE 0x290c;IEC_OutOfPackets;;0x0c;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0xb05;SB_TableContainsInvalidObjectId;;0x05;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/subsystem/SubsystemBase.h;SUBSYSTEM_BASE 0x290d;IEC_OutOfGlobalObjects;;0x0d;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x3c00;HKM_QueueOrDestinationInvalid;;0;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h;HOUSEKEEPING_MANAGER 0x290e;IEC_OutOfProxies;;0x0e;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x3c01;HKM_WrongHkPacketType;;1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h;HOUSEKEEPING_MANAGER 0x290f;IEC_InvalidGlobalId;;0x0f;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x3c02;HKM_ReportingStatusUnchanged;;2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h;HOUSEKEEPING_MANAGER 0x2910;IEC_BadStackHook;;0x10;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x3c03;HKM_PeriodicHelperInvalid;;3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h;HOUSEKEEPING_MANAGER 0x2911;IEC_BadAttributes;;0x11;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x3c04;HKM_PoolobjectNotFound;;4;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h;HOUSEKEEPING_MANAGER 0x2912;IEC_ImplementationKeyCreateInconsistency;;0x12;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x3c05;HKM_DatasetNotFound;;5;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h;HOUSEKEEPING_MANAGER 0x2913;IEC_ImplementationBlockingOperationCancel;;0x13;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x3a00;LPIF_PoolEntryNotFound;;0x00;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datapoollocal/localPoolDefinitions.h;LOCAL_POOL_OWNER_IF 0x2914;IEC_MutexObtainFromBadState;;0x14;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x3a01;LPIF_PoolEntryTypeConflict;;0x01;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datapoollocal/localPoolDefinitions.h;LOCAL_POOL_OWNER_IF 0x2915;IEC_UnlimitedAndMaximumIs0;;0x15;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x3ba0;PVA_InvalidReadWriteMode;;0xA0;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datapool/PoolVariableIF.h;POOL_VARIABLE_IF 0x2d01;HPA_InvalidIdentifierId;;0x01;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/parameters/HasParametersIF.h;HAS_PARAMETERS_IF
0x3ba1;PVA_InvalidPoolEntry;;0xA1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datapool/PoolVariableIF.h;POOL_VARIABLE_IF 0x2d02;HPA_InvalidDomainId;;0x02;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/parameters/HasParametersIF.h;HAS_PARAMETERS_IF
0x801;DPS_InvalidParameterDefinition;;1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datapool/DataSetIF.h;DATA_SET_CLASS 0x2d03;HPA_InvalidValue;;0x03;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/parameters/HasParametersIF.h;HAS_PARAMETERS_IF
0x802;DPS_SetWasAlreadyRead;;2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datapool/DataSetIF.h;DATA_SET_CLASS 0x2d05;HPA_ReadOnly;;0x05;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/parameters/HasParametersIF.h;HAS_PARAMETERS_IF
0x803;DPS_CommitingWithoutReading;;3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datapool/DataSetIF.h;DATA_SET_CLASS 0x2c01;PAW_UnknownDatatype;;0x01;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER
0x804;DPS_DataSetUninitialised;;4;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datapool/DataSetIF.h;DATA_SET_CLASS 0x2c02;PAW_DatatypeMissmatch;;0x02;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER
0x805;DPS_DataSetFull;;5;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datapool/DataSetIF.h;DATA_SET_CLASS 0x2c03;PAW_Readonly;;0x03;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER
0x806;DPS_PoolVarNull;;6;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/datapool/DataSetIF.h;DATA_SET_CLASS 0x2c04;PAW_TooBig;;0x04;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER
0x1000;TIM_UnsupportedTimeFormat;;0;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/timemanager/CCSDSTime.h;CCSDS_TIME_HELPER_CLASS 0x2c05;PAW_SourceNotSet;;0x05;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER
0x1001;TIM_NotEnoughInformationForTargetFormat;;1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/timemanager/CCSDSTime.h;CCSDS_TIME_HELPER_CLASS 0x2c06;PAW_OutOfBounds;;0x06;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER
0x1002;TIM_LengthMismatch;;2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/timemanager/CCSDSTime.h;CCSDS_TIME_HELPER_CLASS 0x2c07;PAW_NotSet;;0x07;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER
0x1003;TIM_InvalidTimeFormat;;3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/timemanager/CCSDSTime.h;CCSDS_TIME_HELPER_CLASS 0x2c08;PAW_ColumnOrRowsZero;;0x08;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER
0x1004;TIM_InvalidDayOfYear;;4;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/timemanager/CCSDSTime.h;CCSDS_TIME_HELPER_CLASS 0x2f01;POS_InPowerTransition;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/power/PowerSwitcher.h;POWER_SWITCHER
0x1005;TIM_TimeDoesNotFitFormat;;5;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/timemanager/CCSDSTime.h;CCSDS_TIME_HELPER_CLASS 0x2f02;POS_SwitchStateMismatch;;2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/power/PowerSwitcher.h;POWER_SWITCHER
0x3501;TSI_BadTimestamp;;1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/timemanager/TimeStamperIF.h;TIME_STAMPER_IF 0x501;PS_SwitchOn;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/power/PowerSwitchIF.h;POWER_SWITCH_IF
0x1d01;PUS_ActivityStarted;;1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmtcservices/AcceptsTelecommandsIF.h;ACCEPTS_TELECOMMANDS_IF 0x500;PS_SwitchOff;;0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/power/PowerSwitchIF.h;POWER_SWITCH_IF
0x1d02;PUS_InvalidSubservice;;2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmtcservices/AcceptsTelecommandsIF.h;ACCEPTS_TELECOMMANDS_IF 0x502;PS_SwitchTimeout;;2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/power/PowerSwitchIF.h;POWER_SWITCH_IF
0x1d03;PUS_IllegalApplicationData;;3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmtcservices/AcceptsTelecommandsIF.h;ACCEPTS_TELECOMMANDS_IF 0x503;PS_FuseOn;;3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/power/PowerSwitchIF.h;POWER_SWITCH_IF
0x1d04;PUS_SendTmFailed;;4;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmtcservices/AcceptsTelecommandsIF.h;ACCEPTS_TELECOMMANDS_IF 0x504;PS_FuseOff;;4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/power/PowerSwitchIF.h;POWER_SWITCH_IF
0x1d05;PUS_Timeout;;5;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmtcservices/AcceptsTelecommandsIF.h;ACCEPTS_TELECOMMANDS_IF 0x4e1;RMP_CommandNoDescriptorsAvailable;;0xE1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x1f01;CSB_ExecutionComplete;;1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE 0x4e2;RMP_CommandBufferFull;;0xE2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x1f02;CSB_NoStepMessage;;2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE 0x4e3;RMP_CommandChannelOutOfRange;;0xE3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x1f03;CSB_ObjectBusy;;3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE 0x4e6;RMP_CommandChannelDeactivated;;0xE6;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x1f04;CSB_Busy;;4;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE 0x4e7;RMP_CommandPortOutOfRange;;0xE7;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x1f05;CSB_InvalidTc;;5;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE 0x4e8;RMP_CommandPortInUse;;0xE8;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x1f06;CSB_InvalidObject;;6;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE 0x4e9;RMP_CommandNoChannel;;0xE9;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x1f07;CSB_InvalidReply;;7;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE 0x4ea;RMP_NoHwCrc;;0xEA;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x1101;AL_Full;;0x01;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/container/ArrayList.h;ARRAY_LIST 0x4d0;RMP_ReplyNoReply;;0xD0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x1801;FF_Full;;1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/container/FIFOBase.h;FIFO_CLASS 0x4d1;RMP_ReplyNotSent;;0xD1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x1802;FF_Empty;;2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/container/FIFOBase.h;FIFO_CLASS 0x4d2;RMP_ReplyNotYetSent;;0xD2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x1601;FMM_MapFull;;0x01;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/container/FixedOrderedMultimap.h;FIXED_MULTIMAP 0x4d3;RMP_ReplyMissmatch;;0xD3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x1602;FMM_KeyDoesNotExist;;0x02;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/container/FixedOrderedMultimap.h;FIXED_MULTIMAP 0x4d4;RMP_ReplyTimeout;;0xD4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x1501;FM_KeyAlreadyExists;;0x01;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/container/FixedMap.h;FIXED_MAP 0x4c0;RMP_ReplyInterfaceBusy;;0xC0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x1502;FM_MapFull;;0x02;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/container/FixedMap.h;FIXED_MAP 0x4c1;RMP_ReplyTransmissionError;;0xC1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x1503;FM_KeyDoesNotExist;;0x03;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/container/FixedMap.h;FIXED_MAP 0x4c2;RMP_ReplyInvalidData;;0xC2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x2401;EV_ListenerNotFound;;1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/events/EventManagerIF.h;EVENT_MANAGER_IF 0x4c3;RMP_ReplyNotSupported;;0xC3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x1701;HHI_ObjectNotHealthy;;1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/health/HasHealthIF.h;HAS_HEALTH_IF 0x4f0;RMP_LinkDown;;0xF0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x1702;HHI_InvalidHealthState;;2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/health/HasHealthIF.h;HAS_HEALTH_IF 0x4f1;RMP_SpwCredit;;0xF1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x2f01;POS_InPowerTransition;;1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/power/PowerSwitcher.h;POWER_SWITCHER 0x4f2;RMP_SpwEscape;;0xF2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x2f02;POS_SwitchStateMismatch;;2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/power/PowerSwitcher.h;POWER_SWITCHER 0x4f3;RMP_SpwDisconnect;;0xF3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x501;PS_SwitchOn;;1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/power/PowerSwitchIF.h;POWER_SWITCH_IF 0x4f4;RMP_SpwParity;;0xF4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x500;PS_SwitchOff;;0;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/power/PowerSwitchIF.h;POWER_SWITCH_IF 0x4f5;RMP_SpwWriteSync;;0xF5;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x502;PS_SwitchTimeout;;2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/power/PowerSwitchIF.h;POWER_SWITCH_IF 0x4f6;RMP_SpwInvalidAddress;;0xF6;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x503;PS_FuseOn;;3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/power/PowerSwitchIF.h;POWER_SWITCH_IF 0x4f7;RMP_SpwEarlyEop;;0xF7;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x504;PS_FuseOff;;4;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/power/PowerSwitchIF.h;POWER_SWITCH_IF 0x4f8;RMP_SpwDma;;0xF8;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x1a01;TRC_NotEnoughSensors;;1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/monitoring/TriplexMonitor.h;TRIPLE_REDUNDACY_CHECK 0x4f9;RMP_SpwLinkError;;0xF9;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x1a02;TRC_LowestValueOol;;2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/monitoring/TriplexMonitor.h;TRIPLE_REDUNDACY_CHECK 0x400;RMP_ReplyOk;;0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x1a03;TRC_HighestValueOol;;3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/monitoring/TriplexMonitor.h;TRIPLE_REDUNDACY_CHECK 0x401;RMP_ReplyGeneralErrorCode;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x1a04;TRC_BothValuesOol;;4;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/monitoring/TriplexMonitor.h;TRIPLE_REDUNDACY_CHECK 0x402;RMP_ReplyUnusedPacketTypeOrCommandCode;;2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x1a05;TRC_DuplexOol;;5;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/monitoring/TriplexMonitor.h;TRIPLE_REDUNDACY_CHECK 0x403;RMP_ReplyInvalidKey;;3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x3001;LIM_Unchecked;;1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF 0x404;RMP_ReplyInvalidDataCrc;;4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x3002;LIM_Invalid;;2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF 0x405;RMP_ReplyEarlyEop;;5;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x3003;LIM_Unselected;;3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF 0x406;RMP_ReplyTooMuchData;;6;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x3004;LIM_BelowLowLimit;;4;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF 0x407;RMP_ReplyEep;;7;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x3005;LIM_AboveHighLimit;;5;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF 0x408;RMP_ReplyReserved;;8;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x3006;LIM_UnexpectedValue;;6;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF 0x409;RMP_ReplyVerifyBufferOverrun;;9;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x3007;LIM_OutOfRange;;7;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF 0x40a;RMP_ReplyCommandNotImplementedOrNotAuthorised;;10;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x30a0;LIM_FirstSample;;0xA0;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF 0x40b;RMP_ReplyRmwDataLengthError;;11;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x30e0;LIM_InvalidSize;;0xE0;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF 0x40c;RMP_ReplyInvalidTargetLogicalAddress;;12;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x30e1;LIM_WrongType;;0xE1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF 0x1401;SE_BufferTooShort;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/serialize/SerializeIF.h;SERIALIZE_IF
0x30e2;LIM_WrongPid;;0xE2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF 0x1402;SE_StreamTooShort;;2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/serialize/SerializeIF.h;SERIALIZE_IF
0x30e3;LIM_WrongLimitId;;0xE3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF 0x1403;SE_TooManyElements;;3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/serialize/SerializeIF.h;SERIALIZE_IF
0x30ee;LIM_MonitorNotFound;;0xEE;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF 0x2701;SM_DataTooLarge;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/storagemanager/StorageManagerIF.h;STORAGE_MANAGER_IF
0x4000;FILS_GenericFileError;;0;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM 0x2702;SM_DataStorageFull;;2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/storagemanager/StorageManagerIF.h;STORAGE_MANAGER_IF
0x4001;FILS_IsBusy;;1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM 0x2703;SM_IllegalStorageId;;3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/storagemanager/StorageManagerIF.h;STORAGE_MANAGER_IF
0x4002;FILS_InvalidParameters;;2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM 0x2704;SM_DataDoesNotExist;;4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/storagemanager/StorageManagerIF.h;STORAGE_MANAGER_IF
0x4005;FILS_FileDoesNotExist;;5;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM 0x2705;SM_IllegalAddress;;5;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/storagemanager/StorageManagerIF.h;STORAGE_MANAGER_IF
0x4006;FILS_FileAlreadyExists;;6;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM 0x2706;SM_PoolTooLarge;;6;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/storagemanager/StorageManagerIF.h;STORAGE_MANAGER_IF
0x4007;FILS_FileLocked;;7;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM 0xc02;MS_InvalidEntry;;0x02;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/subsystem/modes/ModeStoreIF.h;MODE_STORE_IF
0x400a;FILS_DirectoryDoesNotExist;;10;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM 0xc03;MS_TooManyElements;;0x03;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/subsystem/modes/ModeStoreIF.h;MODE_STORE_IF
0x400b;FILS_DirectoryAlreadyExists;;11;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM 0xc04;MS_CantStoreEmpty;;0x04;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/subsystem/modes/ModeStoreIF.h;MODE_STORE_IF
0x400c;FILS_DirectoryNotEmpty;;12;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM 0xd01;SS_SequenceAlreadyExists;;0x01;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0x400f;FILS_SequencePacketMissingWrite;;15;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM 0xd02;SS_TableAlreadyExists;;0x02;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0x4010;FILS_SequencePacketMissingRead;;16;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM 0xd03;SS_TableDoesNotExist;;0x03;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0x601;PP_DoItMyself;;1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF 0xd04;SS_TableOrSequenceLengthInvalid;;0x04;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0x602;PP_PointsToVariable;;2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF 0xd05;SS_SequenceDoesNotExist;;0x05;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0x603;PP_PointsToMemory;;3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF 0xd06;SS_TableContainsInvalidObjectId;;0x06;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0x604;PP_ActivityCompleted;;4;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF 0xd07;SS_FallbackSequenceDoesNotExist;;0x07;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0x605;PP_PointsToVectorUint8;;5;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF 0xd08;SS_NoTargetTable;;0x08;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0x606;PP_PointsToVectorUint16;;6;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF 0xd09;SS_SequenceOrTableTooLong;;0x09;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0x607;PP_PointsToVectorUint32;;7;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF 0xd0b;SS_IsFallbackSequence;;0x0B;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0x608;PP_PointsToVectorFloat;;8;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF 0xd0c;SS_AccessDenied;;0x0C;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0x6a0;PP_DumpNotSupported;;0xA0;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF 0xd0e;SS_TableInUse;;0x0E;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0x6e0;PP_InvalidSize;;0xE0;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF 0xda1;SS_TargetTableNotReached;;0xA1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0x6e1;PP_InvalidAddress;;0xE1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF 0xda2;SS_TableCheckFailed;;0xA2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0x6e2;PP_InvalidContent;;0xE2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF 0xb01;SB_ChildNotFound;;0x01;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/subsystem/SubsystemBase.h;SUBSYSTEM_BASE
0x6e3;PP_UnalignedAccess;;0xE3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF 0xb02;SB_ChildInfoUpdated;;0x02;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/subsystem/SubsystemBase.h;SUBSYSTEM_BASE
0x6e4;PP_WriteProtected;;0xE4;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF 0xb03;SB_ChildDoesntHaveModes;;0x03;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/subsystem/SubsystemBase.h;SUBSYSTEM_BASE
0x13e0;MH_UnknownCmd;;0xE0;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/memory/MemoryHelper.h;MEMORY_HELPER 0xb04;SB_CouldNotInsertChild;;0x04;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/subsystem/SubsystemBase.h;SUBSYSTEM_BASE
0x13e1;MH_InvalidAddress;;0xE1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/memory/MemoryHelper.h;MEMORY_HELPER 0xb05;SB_TableContainsInvalidObjectId;;0x05;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/subsystem/SubsystemBase.h;SUBSYSTEM_BASE
0x13e2;MH_InvalidSize;;0xE2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/memory/MemoryHelper.h;MEMORY_HELPER 0x3901;SPH_SemaphoreTimeout;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tasks/SemaphoreIF.h;SEMAPHORE_IF
0x13e3;MH_StateMismatch;;0xE3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/memory/MemoryHelper.h;MEMORY_HELPER 0x3902;SPH_SemaphoreNotOwned;;2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tasks/SemaphoreIF.h;SEMAPHORE_IF
0x1201;AB_NeedSecondStep;;0x01;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/AssemblyBase.h;ASSEMBLY_BASE 0x3903;SPH_SemaphoreInvalid;;3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tasks/SemaphoreIF.h;SEMAPHORE_IF
0x1202;AB_NeedToReconfigure;;0x02;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/AssemblyBase.h;ASSEMBLY_BASE 0x1c01;TCD_PacketLost;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tcdistribution/TcDistributor.h;PACKET_DISTRIBUTION
0x1203;AB_ModeFallback;;0x03;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/AssemblyBase.h;ASSEMBLY_BASE 0x1c02;TCD_DestinationNotFound;;2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tcdistribution/TcDistributor.h;PACKET_DISTRIBUTION
0x1204;AB_ChildNotCommandable;;0x04;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/AssemblyBase.h;ASSEMBLY_BASE 0x1c03;TCD_ServiceIdAlreadyExists;;3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tcdistribution/TcDistributor.h;PACKET_DISTRIBUTION
0x1205;AB_NeedToChangeHealth;;0x05;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/AssemblyBase.h;ASSEMBLY_BASE 0x1b00;TCC_IllegalApid;;0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tcdistribution/TcPacketCheck.h;TC_PACKET_CHECK
0x12a1;AB_NotEnoughChildrenInCorrectState;;0xa1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/AssemblyBase.h;ASSEMBLY_BASE 0x1b01;TCC_IncompletePacket;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tcdistribution/TcPacketCheck.h;TC_PACKET_CHECK
0x3a0;DHB_InvalidChannel;;0xA0;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE 0x1b02;TCC_IncorrectChecksum;;2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tcdistribution/TcPacketCheck.h;TC_PACKET_CHECK
0x3b0;DHB_AperiodicReply;;0xB0;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE 0x1b03;TCC_IllegalPacketType;;3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tcdistribution/TcPacketCheck.h;TC_PACKET_CHECK
0x3b1;DHB_IgnoreReplyData;;0xB1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE 0x1b04;TCC_IllegalPacketSubtype;;4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tcdistribution/TcPacketCheck.h;TC_PACKET_CHECK
0x3b2;DHB_IgnoreFullPacket;;0xB2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE 0x1b05;TCC_IncorrectPrimaryHeader;;5;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tcdistribution/TcPacketCheck.h;TC_PACKET_CHECK
0x3c0;DHB_NothingToSend;;0xC0;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE 0x1b06;TCC_IncorrectSecondaryHeader;;6;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tcdistribution/TcPacketCheck.h;TC_PACKET_CHECK
0x3c2;DHB_CommandMapError;;0xC2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE 0x2801;TC_InvalidTargetState;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/thermal/ThermalComponentIF.h;THERMAL_COMPONENT_IF
0x3d0;DHB_NoSwitch;;0xD0;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE 0x28f1;TC_AboveOperationalLimit;;0xF1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/thermal/ThermalComponentIF.h;THERMAL_COMPONENT_IF
0x3e0;DHB_ChildTimeout;;0xE0;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE 0x28f2;TC_BelowOperationalLimit;;0xF2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/thermal/ThermalComponentIF.h;THERMAL_COMPONENT_IF
0x3e1;DHB_SwitchFailed;;0xE1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE 0x1000;TIM_UnsupportedTimeFormat;;0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/timemanager/CCSDSTime.h;CCSDS_TIME_HELPER_CLASS
0x3301;DC_NoReplyReceived;;0x01;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h;DEVICE_COMMUNICATION_IF 0x1001;TIM_NotEnoughInformationForTargetFormat;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/timemanager/CCSDSTime.h;CCSDS_TIME_HELPER_CLASS
0x3302;DC_ProtocolError;;0x02;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h;DEVICE_COMMUNICATION_IF 0x1002;TIM_LengthMismatch;;2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/timemanager/CCSDSTime.h;CCSDS_TIME_HELPER_CLASS
0x3303;DC_Nullpointer;;0x03;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h;DEVICE_COMMUNICATION_IF 0x1003;TIM_InvalidTimeFormat;;3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/timemanager/CCSDSTime.h;CCSDS_TIME_HELPER_CLASS
0x3304;DC_InvalidCookieType;;0x04;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h;DEVICE_COMMUNICATION_IF 0x1004;TIM_InvalidDayOfYear;;4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/timemanager/CCSDSTime.h;CCSDS_TIME_HELPER_CLASS
0x3305;DC_NotActive;;0x05;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h;DEVICE_COMMUNICATION_IF 0x1005;TIM_TimeDoesNotFitFormat;;5;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/timemanager/CCSDSTime.h;CCSDS_TIME_HELPER_CLASS
0x3306;DC_TooMuchData;;0x06;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h;DEVICE_COMMUNICATION_IF 0x3501;TSI_BadTimestamp;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/timemanager/TimeStamperIF.h;TIME_STAMPER_IF
0x26a0;DHI_NoCommandData;;0xA0;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF 0x2001;TMB_Busy;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x26a1;DHI_CommandNotSupported;;0xA1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF 0x2002;TMB_Full;;2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x26a2;DHI_CommandAlreadySent;;0xA2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF 0x2003;TMB_Empty;;3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x26a3;DHI_CommandWasNotSent;;0xA3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF 0x2004;TMB_NullRequested;;4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x26a4;DHI_CantSwitchAddress;;0xA4;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF 0x2005;TMB_TooLarge;;5;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x26a5;DHI_WrongModeForCommand;;0xA5;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF 0x2006;TMB_NotReady;;6;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x26a6;DHI_Timeout;;0xA6;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF 0x2007;TMB_DumpError;;7;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x26a7;DHI_Busy;;0xA7;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF 0x2008;TMB_CrcError;;8;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x26a8;DHI_NoReplyExpected;;0xA8;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF 0x2009;TMB_Timeout;;9;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x26a9;DHI_NonOpTemperature;;0xA9;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF 0x200a;TMB_IdlePacketFound;;10;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x26aa;DHI_CommandNotImplemented;;0xAA;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF 0x200b;TMB_TelecommandFound;;11;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x26b0;DHI_ChecksumError;;0xB0;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF 0x200c;TMB_NoPusATm;;12;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x26b1;DHI_LengthMissmatch;;0xB1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF 0x200d;TMB_TooSmall;;13;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x26b2;DHI_InvalidData;;0xB2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF 0x200e;TMB_BlockNotFound;;14;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x26b3;DHI_ProtocolError;;0xB3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF 0x200f;TMB_InvalidRequest;;15;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x26c0;DHI_DeviceDidNotExecute;;0xC0;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF 0x2101;TMF_Busy;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x26c1;DHI_DeviceReportedError;;0xC1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF 0x2102;TMF_LastPacketFound;;2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x26c2;DHI_UnknownDeviceReply;;0xC2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF 0x2103;TMF_StopFetch;;3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x26c3;DHI_DeviceReplyInvalid;;0xC3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF 0x2104;TMF_Timeout;;4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x26d0;DHI_InvalidCommandParameter;;0xD0;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF 0x2105;TMF_TmChannelFull;;5;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x26d1;DHI_InvalidNumberOrLengthOfParameters;;0xD1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF 0x2106;TMF_NotStored;;6;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x1401;SE_BufferTooShort;;1;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/serialize/SerializeIF.h;SERIALIZE_IF 0x2107;TMF_AllDeleted;;7;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x1402;SE_StreamTooShort;;2;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/serialize/SerializeIF.h;SERIALIZE_IF 0x2108;TMF_InvalidData;;8;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x1403;SE_TooManyElements;;3;/home/rmueller/EIVE/eive-obsw/fsfw/src/fsfw/serialize/SerializeIF.h;SERIALIZE_IF 0x2109;TMF_NotReady;;9;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x5f00;SDMA_AlreadyOn;;0;/home/rmueller/EIVE/eive-obsw/bsp_q7s/memory/SdCardManager.h;SD_CARD_MANAGER 0x1d01;PUS_ActivityStarted;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmtcservices/AcceptsTelecommandsIF.h;ACCEPTS_TELECOMMANDS_IF
0x5f01;SDMA_AlreadyMounted;;1;/home/rmueller/EIVE/eive-obsw/bsp_q7s/memory/SdCardManager.h;SD_CARD_MANAGER 0x1d02;PUS_InvalidSubservice;;2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmtcservices/AcceptsTelecommandsIF.h;ACCEPTS_TELECOMMANDS_IF
0x5f02;SDMA_AlreadyOff;;2;/home/rmueller/EIVE/eive-obsw/bsp_q7s/memory/SdCardManager.h;SD_CARD_MANAGER 0x1d03;PUS_IllegalApplicationData;;3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmtcservices/AcceptsTelecommandsIF.h;ACCEPTS_TELECOMMANDS_IF
0x5f0a;SDMA_StatusFileNexists;;10;/home/rmueller/EIVE/eive-obsw/bsp_q7s/memory/SdCardManager.h;SD_CARD_MANAGER 0x1d04;PUS_SendTmFailed;;4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmtcservices/AcceptsTelecommandsIF.h;ACCEPTS_TELECOMMANDS_IF
0x5f0b;SDMA_StatusFileFormatInvalid;;11;/home/rmueller/EIVE/eive-obsw/bsp_q7s/memory/SdCardManager.h;SD_CARD_MANAGER 0x1d05;PUS_Timeout;;5;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmtcservices/AcceptsTelecommandsIF.h;ACCEPTS_TELECOMMANDS_IF
0x5f0c;SDMA_MountError;;12;/home/rmueller/EIVE/eive-obsw/bsp_q7s/memory/SdCardManager.h;SD_CARD_MANAGER 0x1f01;CSB_ExecutionComplete;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE
0x5f0d;SDMA_UnmountError;;13;/home/rmueller/EIVE/eive-obsw/bsp_q7s/memory/SdCardManager.h;SD_CARD_MANAGER 0x1f02;CSB_NoStepMessage;;2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE
0x5f0e;SDMA_SystemCallError;;14;/home/rmueller/EIVE/eive-obsw/bsp_q7s/memory/SdCardManager.h;SD_CARD_MANAGER 0x1f03;CSB_ObjectBusy;;3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE
0x6000;SCBU_KeyNotFound;;0;/home/rmueller/EIVE/eive-obsw/bsp_q7s/memory/scratchApi.h;SCRATCH_BUFFER 0x1f04;CSB_Busy;;4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE
0x4ea1;HEATER_CommandNotSupported;;0xA1;/home/rmueller/EIVE/eive-obsw/linux/devices/HeaterHandler.h;HEATER_HANDLER 0x1f05;CSB_InvalidTc;;5;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE
0x4ea2;HEATER_InitFailed;;0xA2;/home/rmueller/EIVE/eive-obsw/linux/devices/HeaterHandler.h;HEATER_HANDLER 0x1f06;CSB_InvalidObject;;6;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE
0x4ea3;HEATER_InvalidSwitchNr;;0xA3;/home/rmueller/EIVE/eive-obsw/linux/devices/HeaterHandler.h;HEATER_HANDLER 0x1f07;CSB_InvalidReply;;7;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE
0x4ea4;HEATER_MainSwitchSetTimeout;;0xA4;/home/rmueller/EIVE/eive-obsw/linux/devices/HeaterHandler.h;HEATER_HANDLER 0x6100;SCBU_KeyNotFound;;0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/bsp_q7s/memory/scratchApi.h;SCRATCH_BUFFER
0x4ea5;HEATER_CommandAlreadyWaiting;;0xA5;/home/rmueller/EIVE/eive-obsw/linux/devices/HeaterHandler.h;HEATER_HANDLER 0x6000;SDMA_AlreadyOn;;0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/bsp_q7s/memory/SdCardManager.h;SD_CARD_MANAGER
0x55a0;SUSS_ErrorUnlockMutex;;0xA0;/home/rmueller/EIVE/eive-obsw/linux/devices/SusHandler.h;SUS_HANDLER 0x6001;SDMA_UnknownGpioId;;1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/linux/archive/gpio/LinuxLibgpioIF.h;SD_CARD_MANAGER
0x55a1;SUSS_ErrorLockMutex;;0xA1;/home/rmueller/EIVE/eive-obsw/linux/devices/SusHandler.h;SUS_HANDLER 0x6002;SDMA_DriveGpioFailure;;2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/linux/archive/gpio/LinuxLibgpioIF.h;SD_CARD_MANAGER
0x5ea0;SADPL_CommandNotSupported;;0xA0;/home/rmueller/EIVE/eive-obsw/linux/devices/SolarArrayDeploymentHandler.h;SA_DEPL_HANDLER 0x600a;SDMA_StatusFileNexists;;10;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/bsp_q7s/memory/SdCardManager.h;SD_CARD_MANAGER
0x5ea1;SADPL_DeploymentAlreadyExecuting;;0xA1;/home/rmueller/EIVE/eive-obsw/linux/devices/SolarArrayDeploymentHandler.h;SA_DEPL_HANDLER 0x600b;SDMA_StatusFileFormatInvalid;;11;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/bsp_q7s/memory/SdCardManager.h;SD_CARD_MANAGER
0x5ea2;SADPL_MainSwitchTimeoutFailure;;0xA2;/home/rmueller/EIVE/eive-obsw/linux/devices/SolarArrayDeploymentHandler.h;SA_DEPL_HANDLER 0x600c;SDMA_MountError;;12;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/bsp_q7s/memory/SdCardManager.h;SD_CARD_MANAGER
0x5ea3;SADPL_SwitchingDeplSa1Failed;;0xA3;/home/rmueller/EIVE/eive-obsw/linux/devices/SolarArrayDeploymentHandler.h;SA_DEPL_HANDLER 0x600d;SDMA_UnmountError;;13;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/bsp_q7s/memory/SdCardManager.h;SD_CARD_MANAGER
0x5ea4;SADPL_SwitchingDeplSa2Failed;;0xA4;/home/rmueller/EIVE/eive-obsw/linux/devices/SolarArrayDeploymentHandler.h;SA_DEPL_HANDLER 0x600e;SDMA_SystemCallError;;14;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/bsp_q7s/memory/SdCardManager.h;SD_CARD_MANAGER
0x5e01;SADPL_UnknownGpioId;;1;/home/rmueller/EIVE/eive-obsw/linux/archive/gpio/LinuxLibgpioIF.h;SA_DEPL_HANDLER 0x6003;SDMA_GpioTypeFailure;;3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/linux/archive/gpio/LinuxLibgpioIF.h;SD_CARD_MANAGER
0x5e02;SADPL_DriveGpioFailure;;2;/home/rmueller/EIVE/eive-obsw/linux/archive/gpio/LinuxLibgpioIF.h;SA_DEPL_HANDLER 0x6004;SDMA_GpioInvalidInstance;;4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/linux/archive/gpio/LinuxLibgpioIF.h;SD_CARD_MANAGER
0x5e03;SADPL_GpioTypeFailure;;3;/home/rmueller/EIVE/eive-obsw/linux/archive/gpio/LinuxLibgpioIF.h;SA_DEPL_HANDLER 0x4ea1;HEATER_CommandNotSupported;;0xA1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/linux/devices/HeaterHandler.h;HEATER_HANDLER
0x5e04;SADPL_GpioInvalidInstance;;4;/home/rmueller/EIVE/eive-obsw/linux/archive/gpio/LinuxLibgpioIF.h;SA_DEPL_HANDLER 0x4ea2;HEATER_InitFailed;;0xA2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/linux/devices/HeaterHandler.h;HEATER_HANDLER
0x56a0;IPCI_PapbBusy;;0xA0;/home/rmueller/EIVE/eive-obsw/linux/obc/CCSDSIPCoreBridge.h;CCSDS_IP_CORE_BRIDGE 0x4ea3;HEATER_InvalidSwitchNr;;0xA3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/linux/devices/HeaterHandler.h;HEATER_HANDLER
0x4ea4;HEATER_MainSwitchSetTimeout;;0xA4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/linux/devices/HeaterHandler.h;HEATER_HANDLER
0x4ea5;HEATER_CommandAlreadyWaiting;;0xA5;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/linux/devices/HeaterHandler.h;HEATER_HANDLER
0x5fa0;SADPL_CommandNotSupported;;0xA0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/linux/devices/SolarArrayDeploymentHandler.h;SA_DEPL_HANDLER
0x5fa1;SADPL_DeploymentAlreadyExecuting;;0xA1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/linux/devices/SolarArrayDeploymentHandler.h;SA_DEPL_HANDLER
0x5fa2;SADPL_MainSwitchTimeoutFailure;;0xA2;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/linux/devices/SolarArrayDeploymentHandler.h;SA_DEPL_HANDLER
0x5fa3;SADPL_SwitchingDeplSa1Failed;;0xA3;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/linux/devices/SolarArrayDeploymentHandler.h;SA_DEPL_HANDLER
0x5fa4;SADPL_SwitchingDeplSa2Failed;;0xA4;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/linux/devices/SolarArrayDeploymentHandler.h;SA_DEPL_HANDLER
0x55a0;SUSS_ErrorUnlockMutex;;0xA0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/linux/devices/SusHandler.h;SUS_HANDLER
0x55a1;SUSS_ErrorLockMutex;;0xA1;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/linux/devices/SusHandler.h;SUS_HANDLER
0x56a0;IPCI_PapbBusy;;0xA0;C:\Users\jakob\Work\EIVE\Q7S\Software\eive_obsw/linux/obc/CCSDSIPCoreBridge.h;CCSDS_IP_CORE_BRIDGE

Can't render this file because it has a wrong number of fields in line 21.

View File

@ -1,7 +1,7 @@
/** /**
* @brief Auto-generated event translation file. Contains 96 translations. * @brief Auto-generated event translation file. Contains 102 translations.
* @details * @details
* Generated on: 2021-08-02 11:41:47 * Generated on: 2021-08-07 18:11:16
*/ */
#include "translateEvents.h" #include "translateEvents.h"
@ -101,6 +101,12 @@ const char *SUPV_MEMORY_READ_RPT_CRC_FAILURE_STRING = "SUPV_MEMORY_READ_RPT_CRC_
const char *SUPV_ACK_FAILURE_STRING = "SUPV_ACK_FAILURE"; const char *SUPV_ACK_FAILURE_STRING = "SUPV_ACK_FAILURE";
const char *SUPV_EXE_FAILURE_STRING = "SUPV_EXE_FAILURE"; const char *SUPV_EXE_FAILURE_STRING = "SUPV_EXE_FAILURE";
const char *SUPV_CRC_FAILURE_EVENT_STRING = "SUPV_CRC_FAILURE_EVENT"; const char *SUPV_CRC_FAILURE_EVENT_STRING = "SUPV_CRC_FAILURE_EVENT";
const char *UPDATE_FILE_NOT_EXISTS_STRING = "UPDATE_FILE_NOT_EXISTS";
const char *ACTION_COMMANDING_FAILED_STRING = "ACTION_COMMANDING_FAILED";
const char *UPDATE_AVAILABLE_FAILED_STRING = "UPDATE_AVAILABLE_FAILED";
const char *UPDATE_TRANSFER_FAILED_STRING = "UPDATE_TRANSFER_FAILED";
const char *UPDATE_VERIFY_FAILED_STRING = "UPDATE_VERIFY_FAILED";
const char *UPDATE_FINISHED_STRING = "UPDATE_FINISHED";
const char * translateEvents(Event event) { const char * translateEvents(Event event) {
switch( (event & 0xffff) ) { switch( (event & 0xffff) ) {
@ -296,6 +302,18 @@ const char * translateEvents(Event event) {
return SUPV_EXE_FAILURE_STRING; return SUPV_EXE_FAILURE_STRING;
case(11504): case(11504):
return SUPV_CRC_FAILURE_EVENT_STRING; return SUPV_CRC_FAILURE_EVENT_STRING;
case(11700):
return UPDATE_FILE_NOT_EXISTS_STRING;
case(11701):
return ACTION_COMMANDING_FAILED_STRING;
case(11702):
return UPDATE_AVAILABLE_FAILED_STRING;
case(11703):
return UPDATE_TRANSFER_FAILED_STRING;
case(11704):
return UPDATE_VERIFY_FAILED_STRING;
case(11705):
return UPDATE_FINISHED_STRING;
default: default:
return "UNKNOWN_EVENT"; return "UNKNOWN_EVENT";
} }

View File

@ -1,8 +1,8 @@
/** /**
* @brief Auto-generated object translation file. * @brief Auto-generated object translation file.
* @details * @details
* Contains 103 translations. * Contains 104 translations.
* Generated on: 2021-08-02 13:00:48 * Generated on: 2021-08-07 18:08:35
*/ */
#include "translateObjects.h" #include "translateObjects.h"
@ -45,6 +45,7 @@ const char *PDU1_HANDLER_STRING = "PDU1_HANDLER";
const char *PDU2_HANDLER_STRING = "PDU2_HANDLER"; const char *PDU2_HANDLER_STRING = "PDU2_HANDLER";
const char *ACU_HANDLER_STRING = "ACU_HANDLER"; const char *ACU_HANDLER_STRING = "ACU_HANDLER";
const char *RAD_SENSOR_STRING = "RAD_SENSOR"; const char *RAD_SENSOR_STRING = "RAD_SENSOR";
const char *PLOC_UPDATER_STRING = "PLOC_UPDATER";
const char *PLOC_MPSOC_HANDLER_STRING = "PLOC_MPSOC_HANDLER"; const char *PLOC_MPSOC_HANDLER_STRING = "PLOC_MPSOC_HANDLER";
const char *PLOC_SUPERVISOR_HANDLER_STRING = "PLOC_SUPERVISOR_HANDLER"; const char *PLOC_SUPERVISOR_HANDLER_STRING = "PLOC_SUPERVISOR_HANDLER";
const char *SOLAR_ARRAY_DEPL_HANDLER_STRING = "SOLAR_ARRAY_DEPL_HANDLER"; const char *SOLAR_ARRAY_DEPL_HANDLER_STRING = "SOLAR_ARRAY_DEPL_HANDLER";
@ -190,6 +191,8 @@ const char* translateObject(object_id_t object) {
return ACU_HANDLER_STRING; return ACU_HANDLER_STRING;
case 0x443200A5: case 0x443200A5:
return RAD_SENSOR_STRING; return RAD_SENSOR_STRING;
case 0x44330000:
return PLOC_UPDATER_STRING;
case 0x44330015: case 0x44330015:
return PLOC_MPSOC_HANDLER_STRING; return PLOC_MPSOC_HANDLER_STRING;
case 0x44330016: case 0x44330016:

View File

@ -80,6 +80,7 @@ namespace config {
/* Add mission configuration flags here */ /* Add mission configuration flags here */
static constexpr uint32_t OBSW_FILESYSTEM_HANDLER_QUEUE_SIZE = 50; static constexpr uint32_t OBSW_FILESYSTEM_HANDLER_QUEUE_SIZE = 50;
static constexpr uint32_t PLOC_UPDATER_QUEUE_SIZE = 50;
#ifdef __cplusplus #ifdef __cplusplus
} }

View File

@ -1,7 +1,7 @@
/** /**
* @brief Auto-generated event translation file. Contains 96 translations. * @brief Auto-generated event translation file. Contains 102 translations.
* @details * @details
* Generated on: 2021-08-02 11:41:47 * Generated on: 2021-08-07 18:11:16
*/ */
#include "translateEvents.h" #include "translateEvents.h"
@ -101,6 +101,12 @@ const char *SUPV_MEMORY_READ_RPT_CRC_FAILURE_STRING = "SUPV_MEMORY_READ_RPT_CRC_
const char *SUPV_ACK_FAILURE_STRING = "SUPV_ACK_FAILURE"; const char *SUPV_ACK_FAILURE_STRING = "SUPV_ACK_FAILURE";
const char *SUPV_EXE_FAILURE_STRING = "SUPV_EXE_FAILURE"; const char *SUPV_EXE_FAILURE_STRING = "SUPV_EXE_FAILURE";
const char *SUPV_CRC_FAILURE_EVENT_STRING = "SUPV_CRC_FAILURE_EVENT"; const char *SUPV_CRC_FAILURE_EVENT_STRING = "SUPV_CRC_FAILURE_EVENT";
const char *UPDATE_FILE_NOT_EXISTS_STRING = "UPDATE_FILE_NOT_EXISTS";
const char *ACTION_COMMANDING_FAILED_STRING = "ACTION_COMMANDING_FAILED";
const char *UPDATE_AVAILABLE_FAILED_STRING = "UPDATE_AVAILABLE_FAILED";
const char *UPDATE_TRANSFER_FAILED_STRING = "UPDATE_TRANSFER_FAILED";
const char *UPDATE_VERIFY_FAILED_STRING = "UPDATE_VERIFY_FAILED";
const char *UPDATE_FINISHED_STRING = "UPDATE_FINISHED";
const char * translateEvents(Event event) { const char * translateEvents(Event event) {
switch( (event & 0xffff) ) { switch( (event & 0xffff) ) {
@ -296,6 +302,18 @@ const char * translateEvents(Event event) {
return SUPV_EXE_FAILURE_STRING; return SUPV_EXE_FAILURE_STRING;
case(11504): case(11504):
return SUPV_CRC_FAILURE_EVENT_STRING; return SUPV_CRC_FAILURE_EVENT_STRING;
case(11700):
return UPDATE_FILE_NOT_EXISTS_STRING;
case(11701):
return ACTION_COMMANDING_FAILED_STRING;
case(11702):
return UPDATE_AVAILABLE_FAILED_STRING;
case(11703):
return UPDATE_TRANSFER_FAILED_STRING;
case(11704):
return UPDATE_VERIFY_FAILED_STRING;
case(11705):
return UPDATE_FINISHED_STRING;
default: default:
return "UNKNOWN_EVENT"; return "UNKNOWN_EVENT";
} }

View File

@ -62,7 +62,7 @@ enum sourceObjects: uint32_t {
UART_TEST = 0x54000020, UART_TEST = 0x54000020,
DUMMY_INTERFACE = 0x5400CAFE, DUMMY_INTERFACE = 0x5400CAFE,
DUMMY_HANDLER = 0x5400AFFE, DUMMY_HANDLER = 0x5400AFFE,
P60DOCK_TEST_TASK = 0x00005060 P60DOCK_TEST_TASK = 0x00005060,
}; };
} }

View File

@ -1,8 +1,8 @@
/** /**
* @brief Auto-generated object translation file. * @brief Auto-generated object translation file.
* @details * @details
* Contains 103 translations. * Contains 104 translations.
* Generated on: 2021-08-02 13:00:48 * Generated on: 2021-08-07 18:08:35
*/ */
#include "translateObjects.h" #include "translateObjects.h"
@ -45,6 +45,7 @@ const char *PDU1_HANDLER_STRING = "PDU1_HANDLER";
const char *PDU2_HANDLER_STRING = "PDU2_HANDLER"; const char *PDU2_HANDLER_STRING = "PDU2_HANDLER";
const char *ACU_HANDLER_STRING = "ACU_HANDLER"; const char *ACU_HANDLER_STRING = "ACU_HANDLER";
const char *RAD_SENSOR_STRING = "RAD_SENSOR"; const char *RAD_SENSOR_STRING = "RAD_SENSOR";
const char *PLOC_UPDATER_STRING = "PLOC_UPDATER";
const char *PLOC_MPSOC_HANDLER_STRING = "PLOC_MPSOC_HANDLER"; const char *PLOC_MPSOC_HANDLER_STRING = "PLOC_MPSOC_HANDLER";
const char *PLOC_SUPERVISOR_HANDLER_STRING = "PLOC_SUPERVISOR_HANDLER"; const char *PLOC_SUPERVISOR_HANDLER_STRING = "PLOC_SUPERVISOR_HANDLER";
const char *SOLAR_ARRAY_DEPL_HANDLER_STRING = "SOLAR_ARRAY_DEPL_HANDLER"; const char *SOLAR_ARRAY_DEPL_HANDLER_STRING = "SOLAR_ARRAY_DEPL_HANDLER";
@ -190,6 +191,8 @@ const char* translateObject(object_id_t object) {
return ACU_HANDLER_STRING; return ACU_HANDLER_STRING;
case 0x443200A5: case 0x443200A5:
return RAD_SENSOR_STRING; return RAD_SENSOR_STRING;
case 0x44330000:
return PLOC_UPDATER_STRING;
case 0x44330015: case 0x44330015:
return PLOC_MPSOC_HANDLER_STRING; return PLOC_MPSOC_HANDLER_STRING;
case 0x44330016: case 0x44330016:

View File

@ -18,6 +18,7 @@ target_sources(${TARGET_NAME} PUBLIC
GyroADIS16507Handler.cpp GyroADIS16507Handler.cpp
RwHandler.cpp RwHandler.cpp
StarTrackerHandler.cpp StarTrackerHandler.cpp
PlocUpdater.cpp
) )

View File

@ -1,3 +1,8 @@
#include <sstream>
#include <string>
#include <fstream>
#include <filesystem>
#include "PlocSupervisorHandler.h" #include "PlocSupervisorHandler.h"
#include "OBSWConfig.h" #include "OBSWConfig.h"
@ -28,6 +33,9 @@ ReturnValue_t PlocSupervisorHandler::initialize() {
sif::warning << "PlocSupervisorHandler::initialize: Invalid uart com if" << std::endl; sif::warning << "PlocSupervisorHandler::initialize: Invalid uart com if" << std::endl;
return INVALID_UART_COM_IF; return INVALID_UART_COM_IF;
} }
sdcMan = SdCardManager::instance();
return result; return result;
} }
@ -112,11 +120,6 @@ ReturnValue_t PlocSupervisorHandler::buildCommandFromCommand(
prepareEmptyCmd(PLOC_SPV::APID_GET_BOOT_STATUS_RPT); prepareEmptyCmd(PLOC_SPV::APID_GET_BOOT_STATUS_RPT);
result = RETURN_OK; result = RETURN_OK;
break; break;
}
case(PLOC_SPV::UPDATE_AVAILABLE): {
prepareUpdateAvailableCmd(commandData);
result = RETURN_OK;
break;
} }
case(PLOC_SPV::WATCHDOGS_ENABLE): { case(PLOC_SPV::WATCHDOGS_ENABLE): {
prepareWatchdogsEnableCmd(commandData); prepareWatchdogsEnableCmd(commandData);
@ -207,6 +210,11 @@ ReturnValue_t PlocSupervisorHandler::buildCommandFromCommand(
prepareSetDbgVerbosityCmd(commandData); prepareSetDbgVerbosityCmd(commandData);
result = RETURN_OK; result = RETURN_OK;
break; break;
}
case(PLOC_SPV::CAN_LOOPBACK_TEST): {
prepareEmptyCmd(PLOC_SPV::APID_CAN_LOOPBACK_TEST);
result = RETURN_OK;
break;
} }
case(PLOC_SPV::SET_GPIO): { case(PLOC_SPV::SET_GPIO): {
prepareSetGpioCmd(commandData); prepareSetGpioCmd(commandData);
@ -241,6 +249,16 @@ ReturnValue_t PlocSupervisorHandler::buildCommandFromCommand(
result = RETURN_OK; result = RETURN_OK;
break; break;
} }
case(PLOC_SPV::UPDATE_AVAILABLE):
case(PLOC_SPV::UPDATE_IMAGE_DATA):
case(PLOC_SPV::UPDATE_VERIFY):
// Simply forward data from PLOC Updater to supervisor
std::memcpy(commandBuffer, commandData, commandDataLen);
rawPacket = commandBuffer;
rawPacketLen = commandDataLen;
nextReplyId = PLOC_SPV::ACK_REPORT;
result = RETURN_OK;
break;
default: default:
sif::debug << "PlocSupervisorHandler::buildCommandFromCommand: Command not implemented" sif::debug << "PlocSupervisorHandler::buildCommandFromCommand: Command not implemented"
<< std::endl; << std::endl;
@ -271,6 +289,8 @@ void PlocSupervisorHandler::fillCommandAndReplyMap() {
this->insertInCommandMap(PLOC_SPV::DISABLE_PERIOIC_HK_TRANSMISSION); this->insertInCommandMap(PLOC_SPV::DISABLE_PERIOIC_HK_TRANSMISSION);
this->insertInCommandMap(PLOC_SPV::GET_BOOT_STATUS_REPORT); this->insertInCommandMap(PLOC_SPV::GET_BOOT_STATUS_REPORT);
this->insertInCommandMap(PLOC_SPV::UPDATE_AVAILABLE); this->insertInCommandMap(PLOC_SPV::UPDATE_AVAILABLE);
this->insertInCommandMap(PLOC_SPV::UPDATE_VERIFY);
this->insertInCommandMap(PLOC_SPV::UPDATE_IMAGE_DATA);
this->insertInCommandMap(PLOC_SPV::WATCHDOGS_ENABLE); this->insertInCommandMap(PLOC_SPV::WATCHDOGS_ENABLE);
this->insertInCommandMap(PLOC_SPV::WATCHDOGS_CONFIG_TIMEOUT); this->insertInCommandMap(PLOC_SPV::WATCHDOGS_CONFIG_TIMEOUT);
this->insertInCommandMap(PLOC_SPV::ENABLE_LATCHUP_ALERT); this->insertInCommandMap(PLOC_SPV::ENABLE_LATCHUP_ALERT);
@ -296,6 +316,7 @@ void PlocSupervisorHandler::fillCommandAndReplyMap() {
this->insertInCommandMap(PLOC_SPV::FACTORY_RESET_CLEAR_ALL); this->insertInCommandMap(PLOC_SPV::FACTORY_RESET_CLEAR_ALL);
this->insertInCommandMap(PLOC_SPV::FACTORY_RESET_CLEAR_MIRROR); this->insertInCommandMap(PLOC_SPV::FACTORY_RESET_CLEAR_MIRROR);
this->insertInCommandMap(PLOC_SPV::FACTORY_RESET_CLEAR_CIRCULAR); this->insertInCommandMap(PLOC_SPV::FACTORY_RESET_CLEAR_CIRCULAR);
this->insertInCommandMap(PLOC_SPV::CAN_LOOPBACK_TEST);
this->insertInCommandAndReplyMap(PLOC_SPV::DUMP_MRAM, 3); this->insertInCommandAndReplyMap(PLOC_SPV::DUMP_MRAM, 3);
this->insertInReplyMap(PLOC_SPV::ACK_REPORT, 3, nullptr, PLOC_SPV::SIZE_ACK_REPORT); this->insertInReplyMap(PLOC_SPV::ACK_REPORT, 3, nullptr, PLOC_SPV::SIZE_ACK_REPORT);
this->insertInReplyMap(PLOC_SPV::EXE_REPORT, 3, nullptr, PLOC_SPV::SIZE_EXE_REPORT); this->insertInReplyMap(PLOC_SPV::EXE_REPORT, 3, nullptr, PLOC_SPV::SIZE_EXE_REPORT);
@ -506,6 +527,8 @@ ReturnValue_t PlocSupervisorHandler::enableReplyInReplyMap(DeviceCommandMap::ite
case PLOC_SPV::RESET_MPSOC: case PLOC_SPV::RESET_MPSOC:
case PLOC_SPV::SET_TIME_REF: case PLOC_SPV::SET_TIME_REF:
case PLOC_SPV::UPDATE_AVAILABLE: case PLOC_SPV::UPDATE_AVAILABLE:
case PLOC_SPV::UPDATE_IMAGE_DATA:
case PLOC_SPV::UPDATE_VERIFY:
case PLOC_SPV::WATCHDOGS_ENABLE: case PLOC_SPV::WATCHDOGS_ENABLE:
case PLOC_SPV::WATCHDOGS_CONFIG_TIMEOUT: case PLOC_SPV::WATCHDOGS_CONFIG_TIMEOUT:
case PLOC_SPV::ENABLE_LATCHUP_ALERT: case PLOC_SPV::ENABLE_LATCHUP_ALERT:
@ -1004,26 +1027,6 @@ void PlocSupervisorHandler::prepareRestartTriesCmd(const uint8_t * commandData)
packetToOutBuffer(packet.getWholeData(), packet.getFullSize()); packetToOutBuffer(packet.getWholeData(), packet.getFullSize());
} }
void PlocSupervisorHandler::prepareUpdateAvailableCmd(const uint8_t * commandData) {
uint8_t offset = 0;
uint8_t imageSelect = *(commandData + offset);
offset += 1;
uint8_t imagePartition = *(commandData + offset);
offset += 1;
uint32_t imageSize = *(commandData + offset) << 24 | *(commandData + offset + 1) << 16
| *(commandData + offset + 2) << 8 | *(commandData + offset + 3);
offset += 4;
uint32_t imageCrc = *(commandData + offset) << 24 | *(commandData + offset + 1) << 16
| *(commandData + offset + 2) << 8 | *(commandData + offset + 3);
offset += 4;
uint32_t numberOfPackets = *(commandData + offset) << 24 | *(commandData + offset + 1) << 16
| *(commandData + offset + 2) << 8 | *(commandData + offset + 3);
PLOC_SPV::UpdateAvailable packet(imageSelect, imagePartition, imageSize, imageCrc,
numberOfPackets);
packetToOutBuffer(packet.getWholeData(), packet.getFullSize());
}
void PlocSupervisorHandler::prepareWatchdogsEnableCmd(const uint8_t * commandData) { void PlocSupervisorHandler::prepareWatchdogsEnableCmd(const uint8_t * commandData) {
uint8_t offset = 0; uint8_t offset = 0;
uint8_t watchdogPs = *(commandData + offset); uint8_t watchdogPs = *(commandData + offset);
@ -1315,7 +1318,7 @@ ReturnValue_t PlocSupervisorHandler::parseMramPackets(const uint8_t *packet, siz
bufferTop += 1; bufferTop += 1;
*foundLen += 1; *foundLen += 1;
if (bufferTop >= PLOC_SPV::SPACE_PACKET_HEADER_LENGTH) { if (bufferTop >= PLOC_SPV::SPACE_PACKET_HEADER_LENGTH) {
packetLen = spacePacketBuffer[4] << 8 | spacePacketBuffer[5]; packetLen = readSpacePacketLength(spacePacketBuffer);
} }
if (bufferTop == PLOC_SPV::SPACE_PACKET_HEADER_LENGTH + packetLen + 1) { if (bufferTop == PLOC_SPV::SPACE_PACKET_HEADER_LENGTH + packetLen + 1) {
@ -1341,15 +1344,17 @@ ReturnValue_t PlocSupervisorHandler::handleMramDumpPacket() {
// Prepare packet for downlink // Prepare packet for downlink
if (packetInBuffer) { if (packetInBuffer) {
uint16_t packetLen = spacePacketBuffer[4] << 8 | spacePacketBuffer[5]; uint16_t packetLen = readSpacePacketLength(spacePacketBuffer);
result = verifyPacket(spacePacketBuffer, PLOC_SPV::SPACE_PACKET_HEADER_LENGTH + packetLen + 1); result = verifyPacket(spacePacketBuffer, PLOC_SPV::SPACE_PACKET_HEADER_LENGTH + packetLen + 1);
if (result != RETURN_OK) { if (result != RETURN_OK) {
sif::warning << "PlocSupervisorHandler::handleMramDumpPacket: CRC failure" << std::endl; sif::warning << "PlocSupervisorHandler::handleMramDumpPacket: CRC failure" << std::endl;
return result; return result;
} }
//TODO: Write MRAM dump to SD card handler handleMramDumpFile();
if (downlinkMramDump == true) {
handleDeviceTM(spacePacketBuffer + PLOC_SPV::SPACE_PACKET_HEADER_LENGTH, packetLen - 1, handleDeviceTM(spacePacketBuffer + PLOC_SPV::SPACE_PACKET_HEADER_LENGTH, packetLen - 1,
PLOC_SPV::DUMP_MRAM); PLOC_SPV::DUMP_MRAM);
}
packetInBuffer = false; packetInBuffer = false;
receivedMramDumpPackets++; receivedMramDumpPackets++;
if (expectedMramDumpPackets == receivedMramDumpPackets) { if (expectedMramDumpPackets == receivedMramDumpPackets) {
@ -1416,3 +1421,73 @@ ReturnValue_t PlocSupervisorHandler::checkMramPacketApid() {
} }
return APERIODIC_REPLY; return APERIODIC_REPLY;
} }
ReturnValue_t PlocSupervisorHandler::handleMramDumpFile() {
ReturnValue_t result = RETURN_OK;
uint16_t packetLen = readSpacePacketLength(spacePacketBuffer);
uint8_t sequenceFlags = readSequenceFlags(spacePacketBuffer);
if (sequenceFlags == static_cast<uint8_t>(PLOC_SPV::SequenceFlags::FIRST_PKT)) {
result = createMramDumpFile();
if (result != RETURN_OK) {
return result;
}
}
if (not std::filesystem::exists(activeMramFile)) {
sif::warning << "PlocSupervisorHandler::handleMramDumpFile: MRAM file does not exist"
<< std::endl;
return MRAM_FILE_NOT_EXISTS;
}
std::ofstream file(activeMramFile, std::ios_base::app | std::ios_base::out);
file.write(
reinterpret_cast<const char*>(spacePacketBuffer + PLOC_SPV::SPACE_PACKET_HEADER_LENGTH),
packetLen - 1);
file.close();
return RETURN_OK;
}
uint16_t PlocSupervisorHandler::readSpacePacketLength(uint8_t* spacePacket) {
return spacePacket[4] << 8 | spacePacket[5];
}
uint8_t PlocSupervisorHandler::readSequenceFlags(uint8_t* spacePacket) {
return spacePacketBuffer[2] >> 6;
}
ReturnValue_t PlocSupervisorHandler::createMramDumpFile() {
ReturnValue_t result = RETURN_OK;
std::string timeStamp;
result = getTimeStampString(timeStamp);
if (result != RETURN_OK) {
return result;
}
std::string filename = "mram-dump--" + timeStamp + ".bin";
std::string currentMountPrefix = sdcMan->getCurrentMountPrefix();
// Check if path to PLOC directory exists
if (not std::filesystem::exists(std::string(currentMountPrefix + "/" + plocFilePath))) {
sif::warning << "PlocSupervisorHandler::createMramDumpFile: Ploc path does not exist"
<< std::endl;
return PATH_DOES_NOT_EXIST;
}
activeMramFile = currentMountPrefix + "/" + plocFilePath + "/" + filename;
// Create new file
std::ofstream file(activeMramFile, std::ios_base::out);
file.close();
return RETURN_OK;
}
ReturnValue_t PlocSupervisorHandler::getTimeStampString(std::string& timeStamp) {
Clock::TimeOfDay_t time;
ReturnValue_t result = Clock::getDateAndTime(&time);
if (result != RETURN_OK) {
sif::warning << "PlocSupervisorHandler::createMramDumpFile: Failed to get current time"
<< std::endl;
return GET_TIME_FAILURE;
}
timeStamp = std::to_string(time.year) + "-" + std::to_string(time.month) + "-"
+ std::to_string(time.day) + "--" + std::to_string(time.hour) + "-"
+ std::to_string(time.minute) + "-" + std::to_string(time.second);
return RETURN_OK;
}

View File

@ -3,8 +3,8 @@
#include <fsfw/devicehandlers/DeviceHandlerBase.h> #include <fsfw/devicehandlers/DeviceHandlerBase.h>
#include <mission/devices/devicedefinitions/PlocSupervisorDefinitions.h> #include <mission/devices/devicedefinitions/PlocSupervisorDefinitions.h>
#include <cstring>
#include <fsfw_hal/linux/uart/UartComIF.h> #include <fsfw_hal/linux/uart/UartComIF.h>
#include <bsp_q7s/memory/SdCardManager.h>
/** /**
* @brief This is the device handler for the supervisor of the PLOC which is programmed by * @brief This is the device handler for the supervisor of the PLOC which is programmed by
@ -79,10 +79,14 @@ private:
static const ReturnValue_t INVALID_MRAM_ADDRESSES = MAKE_RETURN_CODE(0xAC); static const ReturnValue_t INVALID_MRAM_ADDRESSES = MAKE_RETURN_CODE(0xAC);
//! [EXPORT] : [COMMENT] Expect reception of an MRAM dump packet but received space packet with other apid. //! [EXPORT] : [COMMENT] Expect reception of an MRAM dump packet but received space packet with other apid.
static const ReturnValue_t NO_MRAM_PACKET = MAKE_RETURN_CODE(0xAD); static const ReturnValue_t NO_MRAM_PACKET = MAKE_RETURN_CODE(0xAD);
//! [EXPORT] : [COMMENT] Path to PLOC directory on SD card does not exist
static const ReturnValue_t PATH_DOES_NOT_EXIST = MAKE_RETURN_CODE(0xAE);
//! [EXPORT] : [COMMENT] MRAM dump file does not exists. The file should actually already have been created with the reception of the first dump packet.
static const ReturnValue_t MRAM_FILE_NOT_EXISTS = MAKE_RETURN_CODE(0xAF);
static const uint8_t SUBSYSTEM_ID = SUBSYSTEM_ID::PLOC_SUPERVISOR_HANDLER; static const uint8_t SUBSYSTEM_ID = SUBSYSTEM_ID::PLOC_SUPERVISOR_HANDLER;
//! [EXPORT] : [COMMENT] PLOC supervrisor crc failure in telemetry packet //! [EXPORT] : [COMMENT] PLOC supervisor crc failure in telemetry packet
static const Event SUPV_MEMORY_READ_RPT_CRC_FAILURE = MAKE_EVENT(1, severity::LOW); static const Event SUPV_MEMORY_READ_RPT_CRC_FAILURE = MAKE_EVENT(1, severity::LOW);
//! [EXPORT] : [COMMENT] PLOC supervisor received acknowledgment failure report //! [EXPORT] : [COMMENT] PLOC supervisor received acknowledgment failure report
static const Event SUPV_ACK_FAILURE = MAKE_EVENT(2, severity::LOW); static const Event SUPV_ACK_FAILURE = MAKE_EVENT(2, severity::LOW);
@ -120,6 +124,15 @@ private:
/** This buffer is used to concatenate space packets received in two different read steps */ /** This buffer is used to concatenate space packets received in two different read steps */
uint8_t spacePacketBuffer[PLOC_SPV::MAX_PACKET_SIZE]; uint8_t spacePacketBuffer[PLOC_SPV::MAX_PACKET_SIZE];
SdCardManager* sdcMan = nullptr;
/** Path to PLOC specific files on SD card */
std::string plocFilePath = "ploc";
std::string activeMramFile;
/** Setting this variable to true will enable direct downlink of MRAM packets */
bool downlinkMramDump = false;
/** /**
* @brief This function checks the crc of the received PLOC reply. * @brief This function checks the crc of the received PLOC reply.
* *
@ -211,12 +224,6 @@ private:
void prepareRestartTriesCmd(const uint8_t * commandData); void prepareRestartTriesCmd(const uint8_t * commandData);
/**
* @brief This function fills the command buffer with the packet to notify the supervisor
* about the availability of an update for the MPSoC
*/
void prepareUpdateAvailableCmd(const uint8_t * commandData);
/** /**
* @brief This function fills the command buffer with the packet to enable or disable the * @brief This function fills the command buffer with the packet to enable or disable the
* watchdogs on the PLOC. * watchdogs on the PLOC.
@ -299,6 +306,34 @@ private:
* MRAM dump packet. * MRAM dump packet.
*/ */
ReturnValue_t checkMramPacketApid(); ReturnValue_t checkMramPacketApid();
/**
* @brief Writes the data of the MRAM dump to a file. The file will be created when receiving
* the first packet.
*/
ReturnValue_t handleMramDumpFile();
/**
* @brief Extracts the length field of a spacePacket referenced by the spacePacket pointer.
*
* @param spacePacket Pointer to the buffer holding the space packet.
*
* @return The value stored in the length field of the data field.
*/
uint16_t readSpacePacketLength(uint8_t* spacePacket);
/**
* @brief Extracts the sequence flags from a space packet referenced by the spacePacket
* pointer.
*
* @param spacePacket Pointer to the buffer holding the space packet.
*
* @return uint8_t where the two least significant bits hold the sequence flags.
*/
uint8_t readSequenceFlags(uint8_t* spacePacket);
ReturnValue_t createMramDumpFile();
ReturnValue_t getTimeStampString(std::string& timeStamp);
}; };
#endif /* MISSION_DEVICES_PLOCSUPERVISORHANDLER_H_ */ #endif /* MISSION_DEVICES_PLOCSUPERVISORHANDLER_H_ */

View File

@ -0,0 +1,396 @@
#include "fsfw/ipc/QueueFactory.h"
#include <mission/devices/PlocUpdater.h>
#include <fstream>
#include <filesystem>
#include <string>
PlocUpdater::PlocUpdater(object_id_t objectId) :
SystemObject(objectId), commandActionHelper(this), actionHelper(this, nullptr) {
commandQueue = QueueFactory::instance()->createMessageQueue(QUEUE_SIZE);
}
PlocUpdater::~PlocUpdater() {
}
ReturnValue_t PlocUpdater::initialize() {
sdcMan = SdCardManager::instance();
ReturnValue_t result = SystemObject::initialize();
if (result != HasReturnvaluesIF::RETURN_OK) {
return result;
}
result = commandActionHelper.initialize();
if (result != HasReturnvaluesIF::RETURN_OK) {
return result;
}
result = actionHelper.initialize(commandQueue);
if (result != HasReturnvaluesIF::RETURN_OK) {
return result;
}
return HasReturnvaluesIF::RETURN_OK;
}
ReturnValue_t PlocUpdater::performOperation(uint8_t operationCode) {
readCommandQueue();
doStateMachine();
return HasReturnvaluesIF::RETURN_OK;
}
ReturnValue_t PlocUpdater::executeAction(ActionId_t actionId,
MessageQueueId_t commandedBy, const uint8_t* data, size_t size) {
ReturnValue_t result = RETURN_FAILED;
if (state != State::IDLE) {
return IS_BUSY;
}
if (size > MAX_PLOC_UPDATE_PATH) {
return NAME_TOO_LONG;
}
switch (actionId) {
case UPDATE_NVM0_A:
updatePartition = Partition::A;
updateMemory = Memory::NVM0;
break;
case UPDATE_NVM0_B:
updatePartition = Partition::B;
updateMemory = Memory::NVM0;
break;
case UPDATE_NVM1_A:
updatePartition = Partition::A;
updateMemory = Memory::NVM1;
break;
case UPDATE_NVM1_B:
updatePartition = Partition::B;
updateMemory = Memory::NVM1;
break;
default:
return INVALID_ACTION_ID;
}
result = getImageLocation(data, size);
if (result != RETURN_OK) {
return result;
}
state = State::UPDATE_AVAILABLE;
return EXECUTION_FINISHED;
}
MessageQueueId_t PlocUpdater::getCommandQueue() const {
return commandQueue->getId();
}
MessageQueueIF* PlocUpdater::getCommandQueuePtr() {
return commandQueue;
}
void PlocUpdater::readCommandQueue() {
CommandMessage message;
ReturnValue_t result;
for (result = commandQueue->receiveMessage(&message); result == HasReturnvaluesIF::RETURN_OK;
result = commandQueue->receiveMessage(&message)) {
if (result != RETURN_OK) {
continue;
}
result = actionHelper.handleActionMessage(&message);
if (result == HasReturnvaluesIF::RETURN_OK) {
continue;
}
result = commandActionHelper.handleReply(&message);
if (result == HasReturnvaluesIF::RETURN_OK) {
continue;
}
sif::debug << "PlocUpdater::readCommandQueue: Received message with invalid format"
<< std::endl;
}
}
void PlocUpdater::doStateMachine() {
switch (state) {
case State::IDLE:
break;
case State::UPDATE_AVAILABLE:
commandUpdateAvailable();
break;
case State::UPDATE_TRANSFER:
commandUpdatePacket();
break;
case State::UPDATE_VERIFY:
commandUpdateVerify();
break;
case State::COMMAND_EXECUTING:
break;
default:
sif::debug << "PlocUpdater::doStateMachine: Invalid state" << std::endl;
break;
}
}
ReturnValue_t PlocUpdater::checkNameLength(size_t size) {
if (size > MAX_PLOC_UPDATE_PATH) {
return NAME_TOO_LONG;
}
return RETURN_OK;
}
ReturnValue_t PlocUpdater::getImageLocation(const uint8_t* data, size_t size) {
ReturnValue_t result = checkNameLength(size);
if (result != RETURN_OK) {
return result;
}
// Check if file is stored on SD card and if associated SD card is mounted
if (std::string(reinterpret_cast<const char*>(data), SD_PREFIX_LENGTH) == std::string(SdCardManager::SD_0_MOUNT_POINT)) {
if (!isSdCardMounted(sd::SLOT_0)) {
sif::warning << "PlocUpdater::prepareNvm0AUpdate: SD card 0 not mounted" << std::endl;
return SD_NOT_MOUNTED;
}
}
else if (std::string(reinterpret_cast<const char*>(data), SD_PREFIX_LENGTH) == std::string(SdCardManager::SD_1_MOUNT_POINT)) {
if (!isSdCardMounted(sd::SLOT_0)) {
sif::warning << "PlocUpdater::prepareNvm0AUpdate: SD card 1 not mounted" << std::endl;
return SD_NOT_MOUNTED;
}
}
else {
//update image not stored on SD card
}
updateFile = std::string(reinterpret_cast<const char*>(data), size);
// Check if file exists
if(not std::filesystem::exists(updateFile)) {
return FILE_NOT_EXISTS;
}
return RETURN_OK;
}
bool PlocUpdater::isSdCardMounted(sd::SdCard sdCard) {
SdCardManager::SdStatePair active;
ReturnValue_t result = sdcMan->getSdCardActiveStatus(active);
if (result != RETURN_OK) {
sif::debug << "PlocUpdater::isSdCardMounted: Failed to get SD card active state";
return false;
}
if (sdCard == sd::SLOT_0) {
if (active.first == sd::MOUNTED) {
return true;
}
else {
return false;
}
}
else if (sdCard == sd::SLOT_1) {
if (active.second == sd::MOUNTED) {
return true;
}
else {
return false;
}
}
else {
sif::debug << "PlocUpdater::isSdCardMounted: Unknown SD card specified" << std::endl;
}
return false;
}
void PlocUpdater::stepSuccessfulReceived(ActionId_t actionId,
uint8_t step) {
}
void PlocUpdater::stepFailedReceived(ActionId_t actionId, uint8_t step,
ReturnValue_t returnCode) {
}
void PlocUpdater::dataReceived(ActionId_t actionId, const uint8_t* data, uint32_t size) {
}
void PlocUpdater::completionSuccessfulReceived(ActionId_t actionId) {
switch (pendingCommand) {
case (PLOC_SPV::UPDATE_AVAILABLE):
state = State::UPDATE_TRANSFER;
break;
case (PLOC_SPV::UPDATE_IMAGE_DATA):
if (remainingPackets == 0) {
packetsSent = 0; // Reset packets sent variable for next update sequence
state = State::UPDATE_VERIFY;
}
else {
state = State::UPDATE_TRANSFER;
}
break;
case (PLOC_SPV::UPDATE_VERIFY):
triggerEvent(UPDATE_FINISHED);
state = State::IDLE;
pendingCommand = PLOC_SPV::NONE;
break;
default:
sif::debug << "PlocUpdater::completionSuccessfulReceived: Invalid pending command"
<< std::endl;
state = State::IDLE;
break;
}
}
void PlocUpdater::completionFailedReceived(ActionId_t actionId,
ReturnValue_t returnCode) {
switch(pendingCommand) {
case(PLOC_SPV::UPDATE_AVAILABLE): {
triggerEvent(UPDATE_AVAILABLE_FAILED);
break;
}
case(PLOC_SPV::UPDATE_IMAGE_DATA): {
triggerEvent(UPDATE_TRANSFER_FAILED, packetsSent);
break;
}
case(PLOC_SPV::UPDATE_VERIFY): {
triggerEvent(UPDATE_VERIFY_FAILED);
break;
}
default:
sif::debug << "PlocUpdater::completionFailedReceived: Invalid pending command "
<< std::endl;
break;
}
state = State::IDLE;
}
void PlocUpdater::commandUpdateAvailable() {
ReturnValue_t result = RETURN_OK;
if (not std::filesystem::exists(updateFile)) {
triggerEvent(UPDATE_FILE_NOT_EXISTS, static_cast<uint8_t>(state));
state = State::IDLE;
return;
}
std::ifstream file(updateFile, std::ifstream::binary);
file.seekg(0, file.end);
imageSize = static_cast<size_t>(file.tellg());
file.close();
numOfUpdatePackets = imageSize / MAX_SP_DATA ;
if (imageSize % MAX_SP_DATA) {
numOfUpdatePackets++;
}
remainingPackets = numOfUpdatePackets;
packetsSent = 0;
uint32_t imageCrc = makeCrc();
PLOC_SPV::UpdateInfo packet(PLOC_SPV::APID_UPDATE_AVAILABLE, static_cast<uint8_t>(updateMemory),
static_cast<uint8_t>(updatePartition), imageSize, imageCrc, numOfUpdatePackets);
result = commandActionHelper.commandAction(objects::PLOC_SUPERVISOR_HANDLER,
PLOC_SPV::UPDATE_AVAILABLE, packet.getWholeData(), packet.getFullSize());
if (result != RETURN_OK) {
sif::warning << "PlocUpdater::commandUpdateAvailable: Failed to send update available"
<< " packet to supervisor handler" << std::endl;
triggerEvent(ACTION_COMMANDING_FAILED, result, PLOC_SPV::UPDATE_AVAILABLE);
state = State::IDLE;
pendingCommand = PLOC_SPV::NONE;
return;
}
pendingCommand = PLOC_SPV::UPDATE_AVAILABLE;
state = State::COMMAND_EXECUTING;
return;
}
void PlocUpdater::commandUpdatePacket() {
ReturnValue_t result = RETURN_OK;
uint16_t payloadLength = 0;
if (not std::filesystem::exists(updateFile)) {
triggerEvent(UPDATE_FILE_NOT_EXISTS, static_cast<uint8_t>(state), packetsSent);
state = State::IDLE;
return;
}
std::ifstream file(updateFile, std::ifstream::binary);
file.seekg(packetsSent * MAX_SP_DATA, file.beg);
if (remainingPackets == 1) {
payloadLength = imageSize - static_cast<uint16_t>(file.tellg());
}
else {
payloadLength = MAX_SP_DATA;
}
PLOC_SPV::UpdatePacket packet(payloadLength);
file.read(reinterpret_cast<char*>(packet.getDataFieldPointer()), payloadLength);
file.close();
// sequence count of first packet is 1
packet.setPacketSequenceCount((packetsSent + 1) & PLOC_SPV::SEQUENCE_COUNT_MASK);
if (numOfUpdatePackets > 0) {
adjustSequenceFlags(packet);
}
packet.makeCrc();
result = commandActionHelper.commandAction(objects::PLOC_SUPERVISOR_HANDLER,
PLOC_SPV::UPDATE_IMAGE_DATA, packet.getWholeData(), packet.getFullSize());
if (result != RETURN_OK) {
sif::warning << "PlocUpdater::commandUpdateAvailable: Failed to send update"
<< " packet to supervisor handler" << std::endl;
triggerEvent(ACTION_COMMANDING_FAILED, result, PLOC_SPV::UPDATE_IMAGE_DATA);
state = State::IDLE;
pendingCommand = PLOC_SPV::NONE;
return;
}
remainingPackets--;
packetsSent++;
pendingCommand = PLOC_SPV::UPDATE_IMAGE_DATA;
state = State::COMMAND_EXECUTING;
}
void PlocUpdater::commandUpdateVerify() {
ReturnValue_t result = RETURN_OK;
PLOC_SPV::UpdateInfo packet(PLOC_SPV::APID_UPDATE_VERIFY, static_cast<uint8_t>(updateMemory),
static_cast<uint8_t>(updatePartition), imageSize, imageCrc, numOfUpdatePackets);
result = commandActionHelper.commandAction(objects::PLOC_SUPERVISOR_HANDLER,
PLOC_SPV::UPDATE_VERIFY, packet.getWholeData(), packet.getFullSize());
if (result != RETURN_OK) {
sif::warning << "PlocUpdater::commandUpdateAvailable: Failed to send update available"
<< " packet to supervisor handler" << std::endl;
triggerEvent(ACTION_COMMANDING_FAILED, result, PLOC_SPV::UPDATE_VERIFY);
state = State::IDLE;
pendingCommand = PLOC_SPV::NONE;
return;
}
state = State::COMMAND_EXECUTING;
pendingCommand = PLOC_SPV::UPDATE_VERIFY;
return;
}
ReturnValue_t PlocUpdater::makeCrc() {
//TODO: Waiting on input from TAS about the CRC to use
return 0;
}
void PlocUpdater::adjustSequenceFlags(PLOC_SPV::UpdatePacket& packet) {
if (packetsSent == 0) {
packet.setSequenceFlags(static_cast<uint8_t>(PLOC_SPV::SequenceFlags::FIRST_PKT));
}
else if (remainingPackets == 1) {
packet.setSequenceFlags(static_cast<uint8_t>(PLOC_SPV::SequenceFlags::LAST_PKT));
}
else {
packet.setSequenceFlags(static_cast<uint8_t>(PLOC_SPV::SequenceFlags::CONTINUED_PKT));
}
}

View File

@ -0,0 +1,171 @@
#ifndef MISSION_DEVICES_PLOCUPDATER_H_
#define MISSION_DEVICES_PLOCUPDATER_H_
#include "fsfw/action/CommandActionHelper.h"
#include "fsfw/action/ActionHelper.h"
#include "fsfw/action/HasActionsIF.h"
#include "fsfw/action/CommandsActionsIF.h"
#include "fsfw/returnvalues/HasReturnvaluesIF.h"
#include "fsfw/tasks/ExecutableObjectIF.h"
#include "fsfw/objectmanager/SystemObject.h"
#include "bsp_q7s/memory/SdCardManager.h"
#include "linux/fsfwconfig/objects/systemObjectList.h"
#include "fsfw/tmtcpacket/SpacePacket.h"
#include "OBSWConfig.h"
#include <mission/devices/devicedefinitions/PlocSupervisorDefinitions.h>
/**
* @brief An object of this class can be used to perform the software updates of the PLOC. The
* software update will be read from one of the SD cards, split into multiple space
* packets and sent to the PlocSupervisorHandler.
*
* @details The MPSoC has two boot memories (NVM0 and NVM1) where each stores two images (Partition A
* and Partition B)
*
* @author J. Meier
*/
class PlocUpdater : public SystemObject,
public HasActionsIF,
public ExecutableObjectIF,
public HasReturnvaluesIF,
public CommandsActionsIF {
public:
static const ActionId_t UPDATE_NVM0_A = 0;
static const ActionId_t UPDATE_NVM0_B = 1;
static const ActionId_t UPDATE_NVM1_A = 2;
static const ActionId_t UPDATE_NVM1_B = 3;
PlocUpdater(object_id_t objectId);
virtual ~PlocUpdater();
ReturnValue_t performOperation(uint8_t operationCode = 0) override;
ReturnValue_t executeAction(ActionId_t actionId, MessageQueueId_t commandedBy,
const uint8_t* data, size_t size);
MessageQueueId_t getCommandQueue() const;
ReturnValue_t initialize() override;
MessageQueueIF* getCommandQueuePtr() override;
void stepSuccessfulReceived(ActionId_t actionId, uint8_t step) override;
void stepFailedReceived(ActionId_t actionId, uint8_t step, ReturnValue_t returnCode) override;
void dataReceived(ActionId_t actionId, const uint8_t* data, uint32_t size) override;
void completionSuccessfulReceived(ActionId_t actionId) override;
void completionFailedReceived(ActionId_t actionId, ReturnValue_t returnCode) override;
private:
static const uint8_t INTERFACE_ID = CLASS_ID::PLOC_UPDATER;
//! [EXPORT] : [COMMENT] Updater is already performing an update
static const ReturnValue_t UPDATER_BUSY = MAKE_RETURN_CODE(0xA0);
//! [EXPORT] : [COMMENT] Received update command with invalid path string (too long).
static const ReturnValue_t NAME_TOO_LONG = MAKE_RETURN_CODE(0xA1);
//! [EXPORT] : [COMMENT] Received command to initiate update but SD card with update image not mounted.
static const ReturnValue_t SD_NOT_MOUNTED = MAKE_RETURN_CODE(0xA2);
//! [EXPORT] : [COMMENT] Update file received with update command does not exist.
static const ReturnValue_t FILE_NOT_EXISTS = MAKE_RETURN_CODE(0xA3);
static const uint8_t SUBSYSTEM_ID = SUBSYSTEM_ID::PLOC_UPDATER;
//! [EXPORT] : [COMMENT] Try to read update file but the file does not exist.
//! P1: Indicates in which state the file read fails
//! P2: During the update transfer the second parameter gives information about the number of already sent packets
static const Event UPDATE_FILE_NOT_EXISTS = MAKE_EVENT(0, severity::LOW);
//! [EXPORT] : [COMMENT] Failed to send command to supervisor handler
//! P1: Return value of CommandActionHelper::commandAction
//! P2: Action ID of command to send
static const Event ACTION_COMMANDING_FAILED = MAKE_EVENT(1, severity::LOW);
//! [EXPORT] : [COMMENT] Supervisor handler replied action message indicating a command execution failure of the update available command
static const Event UPDATE_AVAILABLE_FAILED = MAKE_EVENT(2, severity::LOW);
//! [EXPORT] : [COMMENT] Supervisor handler failed to transfer an update space packet.
//! P1: Parameter holds the number of update packets already sent (inclusive the failed packet)
static const Event UPDATE_TRANSFER_FAILED = MAKE_EVENT(3, severity::LOW);
//! [EXPORT] : [COMMENT] Supervisor failed to execute the update verify command.
static const Event UPDATE_VERIFY_FAILED = MAKE_EVENT(4, severity::LOW);
//! [EXPORT] : [COMMENT] MPSoC update successful completed
static const Event UPDATE_FINISHED = MAKE_EVENT(5, severity::INFO);
static const uint32_t QUEUE_SIZE = config::PLOC_UPDATER_QUEUE_SIZE;
static const size_t MAX_PLOC_UPDATE_PATH = 50;
static const size_t SD_PREFIX_LENGTH = 8;
// Maximum size of update payload data per space packet (max size of space packet is 1024 bytes)
static const size_t MAX_SP_DATA = 1016;
MessageQueueIF* commandQueue = nullptr;
SdCardManager* sdcMan = nullptr;
CommandActionHelper commandActionHelper;
ActionHelper actionHelper;
enum class State: uint8_t {
IDLE,
UPDATE_AVAILABLE,
UPDATE_TRANSFER,
UPDATE_VERIFY,
COMMAND_EXECUTING
};
State state = State::IDLE;
ActionId_t pendingCommand = PLOC_SPV::NONE;
enum class Memory: uint8_t {
NVM0,
NVM1
};
Memory updateMemory = Memory::NVM0;
enum class Partition: uint8_t {
A,
B
};
Partition updatePartition = Partition::A;
uint32_t packetsSent = 0;
uint32_t remainingPackets = 0;
// Number of packets required to transfer the update image
uint32_t numOfUpdatePackets = 0;
std::string updateFile;
uint32_t imageSize = 0;
uint32_t imageCrc = 0;
void readCommandQueue();
void doStateMachine();
/**
* @brief Extracts the path and name of the update image from the service 8 command data.
*/
ReturnValue_t getImageLocation(const uint8_t* data, size_t size);
ReturnValue_t checkNameLength(size_t size);
/**
* @brief Prepares and sends update available command to PLOC supervisor handler.
*/
void commandUpdateAvailable();
/**
* @brief Prepares and sends and update packet to the PLOC supervisor handler.
*/
void commandUpdatePacket();
/**
* @brief Prepares and sends the update verification packet to the PLOC supervisor handler.
*/
void commandUpdateVerify();
/**
* @brief Checks whether the SD card to read from is mounted or not.
*/
bool isSdCardMounted(sd::SdCard sdCard);
ReturnValue_t makeCrc();
void adjustSequenceFlags(PLOC_SPV::UpdatePacket& packet);
};
#endif /* MISSION_DEVICES_PLOCUPDATER_H_ */

View File

@ -5,6 +5,8 @@
#include <fsfw/globalfunctions/CRC.h> #include <fsfw/globalfunctions/CRC.h>
#include <fsfw/serialize/SerializeAdapter.h> #include <fsfw/serialize/SerializeAdapter.h>
#include <fsfw/timemanager/Clock.h> #include <fsfw/timemanager/Clock.h>
#include <fsfw/devicehandlers/DeviceHandlerIF.h>
#include <fsfw/datapoollocal/StaticLocalDataSet.h>
namespace PLOC_SPV { namespace PLOC_SPV {
@ -52,6 +54,7 @@ static const DeviceCommandId_t REQUEST_LOGGING_DATA = 38;
static const DeviceCommandId_t UPDATE_IMAGE_DATA = 39; static const DeviceCommandId_t UPDATE_IMAGE_DATA = 39;
static const DeviceCommandId_t FACTORY_RESET_CLEAR_MIRROR = 40; static const DeviceCommandId_t FACTORY_RESET_CLEAR_MIRROR = 40;
static const DeviceCommandId_t FACTORY_RESET_CLEAR_CIRCULAR = 41; static const DeviceCommandId_t FACTORY_RESET_CLEAR_CIRCULAR = 41;
static const DeviceCommandId_t UPDATE_VERIFY = 42;
/** Reply IDs */ /** Reply IDs */
static const DeviceCommandId_t ACK_REPORT = 50; static const DeviceCommandId_t ACK_REPORT = 50;
@ -130,6 +133,7 @@ static const uint16_t APID_REQUEST_LOGGING_DATA = 0xFD;
static const uint16_t APID_GET_HK_REPORT = 0xC6; static const uint16_t APID_GET_HK_REPORT = 0xC6;
static const uint16_t APID_MASK = 0x3FF; static const uint16_t APID_MASK = 0x3FF;
static const uint16_t SEQUENCE_COUNT_MASK = 0xFFF;
/** Offset from first byte in Space packet to first byte of data field */ /** Offset from first byte in Space packet to first byte of data field */
static const uint8_t DATA_FIELD_OFFSET = 6; static const uint8_t DATA_FIELD_OFFSET = 6;
@ -1406,6 +1410,107 @@ private:
} }
}; };
class SupvTcSpacePacket : public SpacePacket {
public:
SupvTcSpacePacket(size_t payloadDataLen, uint16_t apid) :
SpacePacket(payloadDataLen + 1, true, apid,
DEFAULT_SEQUENCE_COUNT), payloadDataLen(payloadDataLen) {
}
void makeCrc() {
size_t serializedSize = 0;
uint16_t crc = CRC::crc16ccitt(this->localData.byteStream,
sizeof(CCSDSPrimaryHeader) + payloadDataLen);
uint8_t* crcPos = this->localData.fields.buffer + payloadDataLen;
SerializeAdapter::serialize<uint16_t>(&crc, &crcPos, &serializedSize, sizeof(crc),
SerializeIF::Endianness::BIG);
}
private:
// The sequence count of most of the TC packets for the supervisor is 1.
static const uint16_t DEFAULT_SEQUENCE_COUNT = 1;
// The size of the payload data (data field without crc size)
size_t payloadDataLen = 0;
};
/**
* @brief This class can be used to package the update available or update verify command.
*/
class UpdateInfo: public SupvTcSpacePacket {
public:
/**
* @brief Constructor
*
* @param apid Packet can be used to generate the update available and the update verify
* packet. Thus the APID must be specified here.
* @param memory The memory to apply the update (NVM0 - 0, NVM1 - 1)
* @param partition The partition to update (A - 0, B - 1)
* @param imageSize The size of the update image
* param numPackets The number of space packets required to transfer all data.
*/
UpdateInfo(uint16_t apid, uint8_t memory, uint8_t partition, uint32_t imageSize,
uint32_t imageCrc, uint32_t numPackets) :
SupvTcSpacePacket(PAYLOAD_LENGTH, apid), memory(memory), partition(partition), imageSize(
imageSize), numPackets(numPackets) {
initPacket();
makeCrc();
}
private:
static const uint16_t PAYLOAD_LENGTH = 14; // length without CRC field
uint8_t memory = 0;
uint8_t partition = 0;
uint32_t imageSize = 0;
uint32_t imageCrc = 0;
uint32_t numPackets = 0;
void initPacket() {
size_t serializedSize = 0;
uint8_t* data_field_ptr = this->localData.fields.buffer;
SerializeAdapter::serialize<uint8_t>(&memory, &data_field_ptr, &serializedSize,
sizeof(memory), SerializeIF::Endianness::BIG);
serializedSize = 0;
SerializeAdapter::serialize<uint8_t>(&partition, &data_field_ptr, &serializedSize,
sizeof(partition), SerializeIF::Endianness::BIG);
serializedSize = 0;
SerializeAdapter::serialize<uint32_t>(&imageSize, &data_field_ptr, &serializedSize,
sizeof(imageSize), SerializeIF::Endianness::BIG);
serializedSize = 0;
SerializeAdapter::serialize<uint32_t>(&imageCrc, &data_field_ptr, &serializedSize,
sizeof(imageCrc), SerializeIF::Endianness::BIG);
serializedSize = 0;
SerializeAdapter::serialize<uint32_t>(&numPackets, &data_field_ptr, &serializedSize,
sizeof(numPackets), SerializeIF::Endianness::BIG);
}
};
/**
* @brief This class packages the space packet transporting a part of an MPSoC update.
*/
class UpdatePacket: public SupvTcSpacePacket {
public:
/**
* @brief Constructor
*
* @param payloadLength Update data length (data field length without CRC)
*/
UpdatePacket(uint16_t payloadLength) :
SupvTcSpacePacket(payloadLength, APID_UPDATE_IMAGE_DATA) {
}
/**
* @brief Returns the pointer to the beginning of the data field.
*/
uint8_t* getDataFieldPointer() {
return this->localData.fields.buffer;
}
};
/** /**
* @brief This dataset stores the boot status report of the supervisor. * @brief This dataset stores the boot status report of the supervisor.
*/ */