Compare commits

..

No commits in common. "main" and "v0.3.0" have entirely different histories.
main ... v0.3.0

103 changed files with 1930 additions and 3021 deletions

View File

@ -1,7 +0,0 @@
---
BasedOnStyle: Google
IndentWidth: 2
---
Language: Cpp
ColumnLimit: 100
---

11
.gitignore vendored
View File

@ -1,12 +1,8 @@
# PyCharm
/.idea/*
!/.idea/runConfigurations
!/.idea/cmake.xml
!/.idea/codeStyles
# Python
**/.idea/*
!**/.idea/runConfigurations
__pycache__
/venv
venv
# Eclipse
@ -21,7 +17,6 @@ __pycache__
# Build folders
/build*
/cmake-build*
_dep
_obj

6
.gitmodules vendored
View File

@ -7,6 +7,12 @@
[submodule "fsfw"]
path = fsfw
url = https://egit.irs.uni-stuttgart.de/fsfw/fsfw.git
[submodule "tmtc/tmtccmd"]
path = tmtc/tmtccmd
url = https://github.com/robamu-org/tmtccmd.git
[submodule "tmtc/common_tmtc"]
path = tmtc/common_tmtc
url = https://egit.irs.uni-stuttgart.de/fsfw/fsfw-example-tmtc-common.git
[submodule "tmtc/spacepackets"]
path = tmtc/spacepackets
url = https://github.com/robamu-org/py-spacepackets.git

View File

@ -1,11 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CMakeSharedSettings">
<configurations>
<configuration PROFILE_NAME="Debug" ENABLED="true" CONFIG_NAME="Debug" NO_GENERATOR="true" />
<configuration PROFILE_NAME="Debug Linux" ENABLED="true" GENERATION_DIR="cmake-build-debug-linux" CONFIG_NAME="Debug" GENERATION_OPTIONS="-DFSFW_OSAL=linux" NO_GENERATOR="true" />
<configuration PROFILE_NAME="Release" ENABLED="true" CONFIG_NAME="Release" NO_GENERATOR="true" />
<configuration PROFILE_NAME="Debug Clang" ENABLED="false" CONFIG_NAME="Debug" GENERATION_OPTIONS="-DCMAKE_TOOLCHAIN_FILE=cmake/ClangToolchain.cmake" />
</configurations>
</component>
</project>

View File

@ -1,14 +0,0 @@
<component name="ProjectCodeStyleConfiguration">
<code_scheme name="Project" version="173">
<clangFormatSettings>
<option name="ENABLED" value="true" />
</clangFormatSettings>
<codeStyleSettings language="CMake">
<indentOptions>
<option name="INDENT_SIZE" value="2" />
<option name="CONTINUATION_INDENT_SIZE" value="2" />
<option name="TAB_SIZE" value="2" />
</indentOptions>
</codeStyleSettings>
</code_scheme>
</component>

View File

@ -1,5 +0,0 @@
<component name="ProjectCodeStyleConfiguration">
<state>
<option name="USE_PER_PROJECT_SETTINGS" value="true" />
</state>
</component>

View File

@ -1,7 +0,0 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="example" type="CMakeRunConfiguration" factoryName="Application" REDIRECT_INPUT="false" ELEVATE="false" USE_EXTERNAL_CONSOLE="false" PASS_PARENT_ENVS_2="true" PROJECT_NAME="fsfw-example-hosted" TARGET_NAME="fsfw-example-hosted" CONFIG_NAME="Debug" RUN_TARGET_PROJECT_NAME="fsfw-example-hosted" RUN_TARGET_NAME="fsfw-example-hosted">
<method v="2">
<option name="com.jetbrains.cidr.execution.CidrBuildBeforeRunTaskProvider$BuildBeforeRunTask" enabled="true" />
</method>
</configuration>
</component>

View File

@ -1,47 +1,37 @@
# ##############################################################################
################################################################################
# CMake support for the Flight Software Framework
#
#
# Developed in an effort to replace Make with a modern build system.
#
#
# Author: R. Mueller
# ##############################################################################
################################################################################
# ##############################################################################
################################################################################
# Pre-Project preparation
# ##############################################################################
################################################################################
cmake_minimum_required(VERSION 3.13)
# set(CMAKE_VERBOSE TRUE)
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
set(OBSW_MAX_SCHEDULED_TCS 200)
set(CMAKE_SCRIPT_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
if(NOT FSFW_OSAL)
set(FSFW_OSAL
host
CACHE STRING "OS for the FSFW.")
set(FSFW_OSAL host CACHE STRING "OS for the FSFW.")
endif()
# Project Name
project(fsfw-example-hosted C CXX)
option(OBSW_ENABLE_IPO "Enable IPO/LTO optimization" ON)
if(OBSW_ENABLE_IPO)
set(CMAKE_INTERPROCEDURAL_OPTIMIZATION TRUE)
endif()
# ##############################################################################
################################################################################
# Pre-Sources preparation
# ##############################################################################
################################################################################
# Specify the C++ standard
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED True)
# Set names and variables
set(TARGET_NAME ${CMAKE_PROJECT_NAME})
set(TARGET_NAME ${CMAKE_PROJECT_NAME})
set(LIB_FSFW_NAME fsfw)
set(LIB_FSFW_HAL_NAME fsfw_hal)
@ -53,9 +43,12 @@ set(LIB_FSFW_HAL_PATH fsfw_hal)
set(BSP_PATH "bsp_hosted")
set(COMMON_CONFIG_PATH "${COMMON_PATH}/config")
set(FSFW_CONFIG_PATH "${BSP_PATH}/fsfwconfig")
set(FSFW_ADDITIONAL_INC_PATHS
"${COMMON_CONFIG_PATH}" "${CMAKE_CURRENT_BINARY_DIR}"
CACHE STRING "FSFW configuration paths")
set(FSFW_ADDITIONAL_INC_PATHS
"${COMMON_CONFIG_PATH}"
"${CMAKE_CURRENT_BINARY_DIR}"
CACHE STRING
"FSFW configuration paths"
)
configure_file(${COMMON_CONFIG_PATH}/commonConfig.h.in commonConfig.h)
configure_file(${FSFW_CONFIG_PATH}/FSFWConfig.h.in FSFWConfig.h)
@ -64,97 +57,121 @@ configure_file(${FSFW_CONFIG_PATH}/OBSWConfig.h.in OBSWConfig.h)
set(FSFW_ADD_MONITORING ON)
if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
set(WARNING_FLAGS -Wall -Wextra -Wimplicit-fallthrough=1
-Wno-unused-parameter -Wno-psabi)
set(WARNING_FLAGS
-Wall
-Wextra
-Wimplicit-fallthrough=1
-Wno-unused-parameter
-Wno-psabi
)
set(FSFW_WARNING_FLAGS ${WARNING_FLAGS})
set(FSFW_WARNING_FLAGS ${WARNING_FLAGS})
elseif(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
add_compile_options(/permissive- /d2SSAOptimizer-)
# To avoid nameclashes with min and max macro
add_compile_definitions(NOMINMAX)
add_compile_options(/permissive- /d2SSAOptimizer-)
# To avoid nameclashes with min and max macro
add_compile_definitions(NOMINMAX)
endif()
if(FSFW_OSAL MATCHES linux)
find_package(Threads REQUIRED)
# Hosted
find_package(Threads REQUIRED)
# Hosted
else()
if(WIN32)
elseif(UNIX)
find_package(Threads REQUIRED)
endif()
if(WIN32)
elseif(UNIX)
find_package(Threads REQUIRED)
endif()
endif()
# ##############################################################################
################################################################################
# Executable and Sources
# ##############################################################################
################################################################################
# Add executable
add_executable(${TARGET_NAME} example_common/config/common/definitions.h)
add_executable(${TARGET_NAME})
# Add subdirectories
if(LIB_OS_NAME)
add_subdirectory(${LIB_OS_NAME})
add_subdirectory(${LIB_OS_NAME})
endif()
add_subdirectory(${BSP_PATH})
add_subdirectory(${FSFW_PATH})
add_subdirectory(${COMMON_PATH})
# ##############################################################################
################################################################################
# Post-Sources preparation
# ##############################################################################
################################################################################
# Add libraries for all sources.
target_link_libraries(${TARGET_NAME} PRIVATE ${LIB_FSFW_NAME} ${LIB_OS_NAME})
target_link_libraries(${TARGET_NAME} PRIVATE
${LIB_FSFW_NAME}
${LIB_OS_NAME}
# ${LIB_FSFW_HAL_NAME}
)
# Add include paths for all sources.
target_include_directories(
${TARGET_NAME} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_CURRENT_BINARY_DIR} ${FSFW_CONFIG_PATH})
target_include_directories(${TARGET_NAME} PRIVATE
${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_CURRENT_BINARY_DIR}
${FSFW_CONFIG_PATH}
)
if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
target_link_options(${TARGET_NAME} PRIVATE "-Wl,-Map=${TARGET_NAME}.map")
target_link_options(${TARGET_NAME} PRIVATE
"-Wl,-Map=${TARGET_NAME}.map"
)
# Remove unused sections.
target_compile_options(${TARGET_NAME} PRIVATE "-ffunction-sections"
"-fdata-sections")
# Remove unused sections.
target_compile_options(${TARGET_NAME} PRIVATE
"-ffunction-sections"
"-fdata-sections"
)
# Removed unused sections.
target_link_options(${TARGET_NAME} PRIVATE "-Wl,--gc-sections")
# Removed unused sections.
target_link_options(${TARGET_NAME} PRIVATE
"-Wl,--gc-sections"
)
elseif(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
endif()
if(CMAKE_VERBOSE)
message(STATUS "Warning flags: ${WARNING_FLAGS}")
message(STATUS "Warning flags: ${WARNING_FLAGS}")
endif()
# Compile options for all sources.
target_compile_options(${TARGET_NAME} PRIVATE ${WARNING_FLAGS})
target_compile_options(${TARGET_NAME} PRIVATE
${WARNING_FLAGS}
)
if(NOT CMAKE_SIZE)
set(CMAKE_SIZE size)
if(WIN32)
set(FILE_SUFFIX ".exe")
endif()
set(CMAKE_SIZE size)
if(WIN32)
set(FILE_SUFFIX ".exe")
endif()
endif()
if(TGT_BSP)
set(TARGET_STRING "Target BSP: ${TGT_BSP}")
set(TARGET_STRING "Target BSP: ${TGT_BSP}")
else()
set(TARGET_STRING "Target BSP: Hosted")
set(TARGET_STRING "Target BSP: Hosted")
endif()
string(CONCAT POST_BUILD_COMMENT "Build directory: ${CMAKE_BINARY_DIR}\n"
"Target OSAL: ${FSFW_OSAL}\n"
"Target Build Type: ${CMAKE_BUILD_TYPE}\n" "${TARGET_STRING}")
string(CONCAT POST_BUILD_COMMENT
"Build directory: ${CMAKE_BINARY_DIR}\n"
"Target OSAL: ${FSFW_OSAL}\n"
"Target Build Type: ${CMAKE_BUILD_TYPE}\n"
"${TARGET_STRING}"
)
add_custom_command(
TARGET ${TARGET_NAME}
POST_BUILD
COMMAND ${CMAKE_SIZE} ${TARGET_NAME}${FILE_SUFFIX}
COMMENT ${POST_BUILD_COMMENT})
TARGET ${TARGET_NAME}
POST_BUILD
COMMAND ${CMAKE_SIZE} ${TARGET_NAME}${FILE_SUFFIX}
COMMENT ${POST_BUILD_COMMENT}
)
include(BuildType)
include (${CMAKE_SCRIPT_PATH}/BuildType.cmake)
set_build_type()

View File

@ -1,4 +1,4 @@
<img align="center" src="https://egit.irs.uni-stuttgart.de/fsfw/fsfw/raw/branch/master/misc/logo/FSFW_Logo_V3_bw.png" width="50%">
<img align="center" src="https://egit.irs.uni-stuttgart.de/fsfw/fsfw-example-common/raw/branch/master/doc/images/FSFW_Logo_V3_bw.png" width="50%">
# <a id="top"></a> <a name="linux"></a> FSFW Example Application
@ -52,11 +52,6 @@ the host abstraction layer of the FSFW.
This demo provides the opportunity to to test functionality of the
FSFW on a host computer without the need of setting up external embedded hardware.
After cloning, make sure to clone and initialize the submodules
```sh
git submodule update --init
```
## Prerequisites
@ -77,19 +72,16 @@ When the software is running, it opens a TCP oder UDP server, depending on the c
on port 7301. You can send PUS telecommands to that port to interactively command the
software.
The following steps set up a virtual environment, install all the dependencies, and then use
the `tmtcc.py` utility to send a ping telecommand to the running OBSW
For a quick test, install the `tmtccmd` Python package first and use `py` instead
of `python3` on Windows:
```sh
cd tmtc
python3 -m venv venv
cd deps/tmtccmd
pip install .[gui]
cd tmtccmd
python3 -m pip install -r requirements.txt
```
Now you can command the software using the `tmtcc.py` command for the CLI mode and `tmtcc.py -g`
for the GUI mode inside the virtual environment. For example, you can use `tmtcc.py -s 17 -o 0`
to send a ping command.
Now you can command the software using the `tmtccli.py` and `tmtcgui.py` command.
For example, you can use `tmtccli.py -s 17 -o 0` to send a ping command.
## <a id="prereqsetup"></a> Setting up Prerequisites
@ -174,8 +166,8 @@ generation as a cross-platform solution.
1. Create a new folder for the executable.
```sh
mkdir cmake-build-debug
cd cmake-build-debug
mkdir build-Debug
cd build-Debug
```
2. Configure the build system
@ -206,8 +198,8 @@ as well to have a convenient way to configure the CMake build.
1. Open the MinGW64 terminal and navigate to the `fsfw_example` folder
2. Create a new folder for the executable.
```sh
mkdir cmake-build-debug
cd cmake-build-debug
mkdir build-Debug
cd build-Debug
```
The build options can be displayed with `cmake -L` .

View File

@ -1,17 +1,28 @@
pipeline {
agent any
environment {
BUILDDIR = 'cmake-build-debug'
}
agent {
docker { image 'fsfw-ci:d3'}
BUILDDIR = 'build-Debug'
}
stages {
stage('Clean') {
stage('Create Docker') {
agent {
dockerfile {
dir 'automation'
additionalBuildArgs '--no-cache'
reuseNode true
}
}
steps {
sh 'rm -rf $BUILDDIR'
}
}
stage('Configure') {
agent {
dockerfile {
dir 'automation'
reuseNode true
}
}
steps {
dir(BUILDDIR) {
sh 'cmake -DFSFW_OSAL=host ..'
@ -19,9 +30,15 @@ pipeline {
}
}
stage('Build') {
agent {
dockerfile {
dir 'automation'
reuseNode true
}
}
steps {
dir(BUILDDIR) {
sh 'cmake --build . -j4'
sh 'cmake --build . -j'
}
}
}

View File

@ -1,7 +1,13 @@
target_sources(${TARGET_NAME} PRIVATE main.cpp)
target_sources(${TARGET_NAME}
PRIVATE
main.cpp
)
add_subdirectory(core)
add_subdirectory(fsfwconfig)
add_subdirectory(utility)
target_include_directories(${TARGET_NAME} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR})
target_include_directories(${TARGET_NAME}
PRIVATE
${CMAKE_CURRENT_SOURCE_DIR}
)

View File

@ -1 +1,5 @@
target_sources(${TARGET_NAME} PRIVATE InitMission.cpp ObjectFactory.cpp)
target_sources(${TARGET_NAME}
PRIVATE
InitMission.cpp
ObjectFactory.cpp
)

View File

@ -1,305 +1,300 @@
#include <OBSWConfig.h>
#include <bsp_hosted/core/InitMission.h>
#include <bsp_hosted/fsfwconfig/objects/systemObjectList.h>
#include <bsp_hosted/fsfwconfig/pollingsequence/pollingSequenceFactory.h>
#include "example/utility/TaskCreation.h"
#include "fsfw_tests/integration/assemblies/TestAssembly.h"
#include <fsfw/modes/HasModesIF.h>
#include <fsfw/retval.h>
#include <fsfw/returnvalues/HasReturnvaluesIF.h>
#include <fsfw/serviceinterface/ServiceInterface.h>
#include <fsfw/tasks/FixedTimeslotTaskIF.h>
#include <fsfw/tasks/PeriodicTaskIF.h>
#include <fsfw/tasks/TaskFactory.h>
#include "example/utility/TaskCreation.h"
#include "fsfw_tests/integration/assemblies/TestAssembly.h"
#ifdef _WIN32
#include <fsfw/osal/windows/winTaskHelpers.h>
#endif
void InitMission::createTasks() {
TaskFactory* taskFactory = TaskFactory::instance();
if (taskFactory == nullptr) {
return;
}
TaskPriority currPrio;
void InitMission::createTasks() {
TaskFactory* taskFactory = TaskFactory::instance();
if(taskFactory == nullptr) {
return;
}
TaskPriority currPrio;
#ifdef _WIN32
currPrio = tasks::makeWinPriority();
currPrio = tasks::makeWinPriority();
#endif
TaskDeadlineMissedFunction deadlineMissedFunc = nullptr;
TaskDeadlineMissedFunction deadlineMissedFunc = nullptr;
#if OBSW_PRINT_MISSED_DEADLINES == 1
deadlineMissedFunc = TaskFactory::printMissedDeadline;
deadlineMissedFunc = TaskFactory::printMissedDeadline;
#endif
#if OBSW_ADD_CORE_COMPONENTS == 1
#ifdef __unix__
currPrio = 40;
#endif
/* TMTC Distribution */
PeriodicTaskIF* distributerTask = taskFactory->createPeriodicTask(
"DIST", currPrio, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.1, deadlineMissedFunc);
ReturnValue_t result = distributerTask->addComponent(objects::CCSDS_DISTRIBUTOR);
if (result != returnvalue::OK) {
task::printInitError("CCSDS distributor", objects::CCSDS_DISTRIBUTOR);
}
result = distributerTask->addComponent(objects::PUS_DISTRIBUTOR);
if (result != returnvalue::OK) {
task::printInitError("PUS distributor", objects::PUS_DISTRIBUTOR);
}
result = distributerTask->addComponent(objects::CFDP_DISTRIBUTOR);
if (result != returnvalue::OK) {
task::printInitError("CFDP distributor", objects::CFDP_DISTRIBUTOR);
}
result = distributerTask->addComponent(objects::TM_FUNNEL);
if (result != returnvalue::OK) {
task::printInitError("TM funnel", objects::TM_FUNNEL);
}
#if OBSW_ADD_CFDP_COMPONENTS == 1
#ifdef __unix__
currPrio = 50;
#endif
PeriodicTaskIF* cfdpTask = taskFactory->createPeriodicTask(
"CFDP Handler", currPrio, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.4, deadlineMissedFunc);
result = cfdpTask->addComponent(objects::CFDP_HANDLER);
if (result != returnvalue::OK) {
task::printInitError("CFDP Handler", objects::CFDP_HANDLER);
}
currPrio = 40;
#endif
/* TMTC Distribution */
PeriodicTaskIF* distributerTask = taskFactory->createPeriodicTask(
"DIST", currPrio, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.1, deadlineMissedFunc);
ReturnValue_t result = distributerTask->addComponent(
objects::CCSDS_DISTRIBUTOR);
if (result != HasReturnvaluesIF::RETURN_OK) {
task::printInitError("CCSDS distributor", objects::CCSDS_DISTRIBUTOR);
}
result = distributerTask->addComponent(objects::PUS_DISTRIBUTOR);
if (result!=HasReturnvaluesIF::RETURN_OK) {
task::printInitError("PUS distributor", objects::PUS_DISTRIBUTOR);
}
result = distributerTask->addComponent(objects::TM_FUNNEL);
if (result != HasReturnvaluesIF::RETURN_OK) {
task::printInitError("TM funnel", objects::TM_FUNNEL);
}
#ifdef __unix__
currPrio = 50;
currPrio = 50;
#endif
/* UDP bridge */
PeriodicTaskIF* udpBridgeTask = taskFactory->createPeriodicTask(
"TCPIP_TMTC_BRIDGE", currPrio, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.2, deadlineMissedFunc);
result = udpBridgeTask->addComponent(objects::TCPIP_TMTC_BRIDGE);
if (result != returnvalue::OK) {
task::printInitError("TMTC bridge", objects::TCPIP_TMTC_BRIDGE);
}
/* UDP bridge */
PeriodicTaskIF* udpBridgeTask = taskFactory->createPeriodicTask(
"TCPIP_TMTC_BRIDGE", currPrio, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.2,
deadlineMissedFunc
);
result = udpBridgeTask->addComponent(objects::TCPIP_TMTC_BRIDGE);
if(result != HasReturnvaluesIF::RETURN_OK) {
task::printInitError("TMTC bridge", objects::TCPIP_TMTC_BRIDGE);
}
#ifdef __unix__
currPrio = 80;
currPrio = 80;
#endif
PeriodicTaskIF* udpPollingTask = taskFactory->createPeriodicTask(
"TMTC_POLLING", currPrio, PeriodicTaskIF::MINIMUM_STACK_SIZE, 2.0, deadlineMissedFunc);
result = udpPollingTask->addComponent(objects::TCPIP_TMTC_POLLING_TASK);
if (result != returnvalue::OK) {
task::printInitError("TMTC polling", objects::TCPIP_TMTC_POLLING_TASK);
}
PeriodicTaskIF* udpPollingTask = taskFactory->createPeriodicTask(
"TMTC_POLLING", currPrio, PeriodicTaskIF::MINIMUM_STACK_SIZE, 2.0, deadlineMissedFunc
);
result = udpPollingTask->addComponent(objects::TCPIP_TMTC_POLLING_TASK);
if(result != HasReturnvaluesIF::RETURN_OK) {
task::printInitError("TMTC polling", objects::TCPIP_TMTC_POLLING_TASK);
}
#ifdef __unix__
currPrio = 20;
currPrio = 20;
#endif
PeriodicTaskIF* eventTask = taskFactory->createPeriodicTask(
"EVENT", currPrio, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.100, deadlineMissedFunc);
result = eventTask->addComponent(objects::EVENT_MANAGER);
if (result != returnvalue::OK) {
task::printInitError("Event Manager", objects::EVENT_MANAGER);
}
PeriodicTaskIF* eventTask = taskFactory->createPeriodicTask(
"EVENT", currPrio, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.100, deadlineMissedFunc
);
result = eventTask->addComponent(objects::EVENT_MANAGER);
if(result != HasReturnvaluesIF::RETURN_OK) {
task::printInitError("Event Manager", objects::EVENT_MANAGER);
}
#endif /* OBSW_ADD_CORE_COMPONENTS == 1 */
#if OBSW_ADD_TASK_EXAMPLE == 1
#ifdef __unix__
currPrio = 50;
currPrio = 50;
#endif
FixedTimeslotTaskIF* timeslotDemoTask = taskFactory->createFixedTimeslotTask(
"PST_TASK", currPrio, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.5, deadlineMissedFunc);
result = pst::pollingSequenceExamples(timeslotDemoTask);
if (result != returnvalue::OK) {
FixedTimeslotTaskIF* timeslotDemoTask = taskFactory->createFixedTimeslotTask(
"PST_TASK", currPrio, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.5, deadlineMissedFunc);
result = pst::pollingSequenceExamples(timeslotDemoTask);
if(result != HasReturnvaluesIF::RETURN_OK) {
#if FSFW_CPP_OSTREAM_ENABLED == 1
sif::error << "InitMission::createTasks: Timeslot demo task initialization failed!"
<< std::endl;
sif::error << "InitMission::createTasks: Timeslot demo task initialization failed!" <<
std::endl;
#else
sif::printError("InitMission::createTasks: Timeslot demo task initialization failed!\n");
sif::printError("InitMission::createTasks: Timeslot demo task initialization failed!\n");
#endif
}
}
#ifdef __unix__
currPrio = 40;
currPrio = 40;
#endif
PeriodicTaskIF* readerTask = taskFactory->createPeriodicTask(
"READER_TASK", currPrio, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.0, deadlineMissedFunc);
result = readerTask->addComponent(objects::TEST_DUMMY_4);
if (result != returnvalue::OK) {
task::printInitError("Dummy 4", objects::TEST_DUMMY_4);
}
PeriodicTaskIF* readerTask = taskFactory->createPeriodicTask(
"READER_TASK", currPrio, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.0, deadlineMissedFunc);
result = readerTask->addComponent(objects::TEST_DUMMY_4);
if(result != HasReturnvaluesIF::RETURN_OK) {
task::printInitError("Dummy 4", objects::TEST_DUMMY_4);
}
#endif /* OBSW_ADD_TASK_EXAMPLE == 1 */
#if OBSW_ADD_PUS_STACK == 1
/* PUS Services */
/* PUS Services */
#ifdef __unix__
currPrio = 45;
currPrio = 45;
#endif
PeriodicTaskIF* pusVerification = taskFactory->createPeriodicTask(
"PUS_VERIF_1", currPrio, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.200, deadlineMissedFunc);
result = pusVerification->addComponent(objects::PUS_SERVICE_1_VERIFICATION);
if (result != returnvalue::OK) {
task::printInitError("PUS 1", objects::PUS_SERVICE_1_VERIFICATION);
}
PeriodicTaskIF* pusVerification = taskFactory->createPeriodicTask(
"PUS_VERIF_1", currPrio, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.200, deadlineMissedFunc);
result = pusVerification->addComponent(objects::PUS_SERVICE_1_VERIFICATION);
if(result != HasReturnvaluesIF::RETURN_OK) {
task::printInitError("PUS 1", objects::PUS_SERVICE_1_VERIFICATION);
}
#ifdef __unix__
currPrio = 50;
currPrio = 50;
#endif
PeriodicTaskIF* pusHighPrio = taskFactory->createPeriodicTask(
"PUS_HIGH_PRIO", currPrio, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.2, deadlineMissedFunc);
result = pusHighPrio->addComponent(objects::PUS_SERVICE_2_DEVICE_ACCESS);
if (result != returnvalue::OK) {
task::printInitError("PUS 2", objects::PUS_SERVICE_2_DEVICE_ACCESS);
}
result = pusHighPrio->addComponent(objects::PUS_SERVICE_5_EVENT_REPORTING);
if (result != returnvalue::OK) {
task::printInitError("PUS 5", objects::PUS_SERVICE_5_EVENT_REPORTING);
}
result = pusHighPrio->addComponent(objects::PUS_SERVICE_9_TIME_MGMT);
if (result != returnvalue::OK) {
task::printInitError("PUS 9", objects::PUS_SERVICE_9_TIME_MGMT);
}
PeriodicTaskIF* pusHighPrio = taskFactory->createPeriodicTask(
"PUS_HIGH_PRIO", currPrio, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.2, deadlineMissedFunc);
result = pusHighPrio->addComponent(objects::PUS_SERVICE_2_DEVICE_ACCESS);
if (result != HasReturnvaluesIF::RETURN_OK) {
task::printInitError("PUS 2", objects::PUS_SERVICE_2_DEVICE_ACCESS);
}
result = pusHighPrio->addComponent(objects::PUS_SERVICE_5_EVENT_REPORTING);
if(result != HasReturnvaluesIF::RETURN_OK){
task::printInitError("PUS 5",objects::PUS_SERVICE_5_EVENT_REPORTING);
}
result = pusHighPrio->addComponent(objects::PUS_SERVICE_9_TIME_MGMT);
if (result != HasReturnvaluesIF::RETURN_OK) {
task::printInitError("PUS 9", objects::PUS_SERVICE_9_TIME_MGMT);
}
#ifdef __unix__
currPrio = 40;
currPrio = 40;
#endif
PeriodicTaskIF* pusMedPrio = taskFactory->createPeriodicTask(
"PUS_MED_PRIO", currPrio, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.6, deadlineMissedFunc);
result = pusMedPrio->addComponent(objects::PUS_SERVICE_3_HOUSEKEEPING);
if (result != returnvalue::OK) {
task::printInitError("PUS 3", objects::PUS_SERVICE_3_HOUSEKEEPING);
}
result = pusMedPrio->addComponent(objects::PUS_SERVICE_8_FUNCTION_MGMT);
if (result != returnvalue::OK) {
task::printInitError("PUS 8", objects::PUS_SERVICE_8_FUNCTION_MGMT);
}
result = pusMedPrio->addComponent(objects::PUS_SERVICE_20_PARAMETERS);
if (result != returnvalue::OK) {
task::printInitError("PUS 20", objects::PUS_SERVICE_20_PARAMETERS);
}
result = pusMedPrio->addComponent(objects::PUS_SERVICE_200_MODE_MGMT);
if (result != returnvalue::OK) {
task::printInitError("PUS 200", objects::PUS_SERVICE_200_MODE_MGMT);
}
result = pusMedPrio->addComponent(objects::PUS_SERVICE_11_TC_SCHEDULER);
if (result != returnvalue::OK) {
task::printInitError("PUS 11", objects::PUS_SERVICE_11_TC_SCHEDULER);
}
PeriodicTaskIF* pusMedPrio = taskFactory->createPeriodicTask(
"PUS_MED_PRIO", currPrio, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.6, deadlineMissedFunc);
result = pusMedPrio->addComponent(objects::PUS_SERVICE_3_HOUSEKEEPING);
if (result != HasReturnvaluesIF::RETURN_OK) {
task::printInitError("PUS 3", objects::PUS_SERVICE_3_HOUSEKEEPING);
}
result = pusMedPrio->addComponent(objects::PUS_SERVICE_8_FUNCTION_MGMT);
if (result != HasReturnvaluesIF::RETURN_OK) {
task::printInitError("PUS 8", objects::PUS_SERVICE_8_FUNCTION_MGMT);
}
result = pusMedPrio->addComponent(objects::PUS_SERVICE_20_PARAMETERS);
if (result != HasReturnvaluesIF::RETURN_OK) {
task::printInitError("PUS 20", objects::PUS_SERVICE_20_PARAMETERS);
}
result = pusMedPrio->addComponent(objects::PUS_SERVICE_200_MODE_MGMT);
if (result != HasReturnvaluesIF::RETURN_OK) {
task::printInitError("PUS 200", objects::PUS_SERVICE_200_MODE_MGMT);
}
#ifdef __unix__
currPrio = 30;
currPrio = 30;
#endif
PeriodicTaskIF* pusLowPrio = taskFactory->createPeriodicTask(
"PUS_LOW_PRIO", currPrio, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.2, deadlineMissedFunc);
result = pusLowPrio->addComponent(objects::PUS_SERVICE_17_TEST);
if (result != returnvalue::OK) {
task::printInitError("PUS 17", objects::PUS_SERVICE_17_TEST);
}
PeriodicTaskIF* pusLowPrio = taskFactory->createPeriodicTask(
"PUS_LOW_PRIO", currPrio, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.2, deadlineMissedFunc);
result = pusLowPrio->addComponent(objects::PUS_SERVICE_17_TEST);
if(result!=HasReturnvaluesIF::RETURN_OK) {
task::printInitError("PUS 17", objects::PUS_SERVICE_17_TEST);
}
#endif /* OBSW_ADD_PUS_STACK == 1 */
#if OBSW_ADD_DEVICE_HANDLER_DEMO == 1
#ifdef __unix__
currPrio = 60;
currPrio = 60;
#elif _WIN32
currPrio =
tasks::makeWinPriority(tasks::PriorityClass::CLASS_HIGH, tasks::PriorityNumber::HIGHEST);
currPrio = tasks::makeWinPriority(tasks::PriorityClass::CLASS_HIGH,
tasks::PriorityNumber::HIGHEST);
#endif
FixedTimeslotTaskIF* testDevicesTimeslotTask = taskFactory->createFixedTimeslotTask(
"PST_TEST_TASK", currPrio, PeriodicTaskIF::MINIMUM_STACK_SIZE, 2.0, deadlineMissedFunc);
result = pst::pollingSequenceDevices(testDevicesTimeslotTask);
if (result != returnvalue::OK) {
FixedTimeslotTaskIF* testDevicesTimeslotTask = taskFactory->createFixedTimeslotTask(
"PST_TEST_TASK", currPrio, PeriodicTaskIF::MINIMUM_STACK_SIZE, 2.0, deadlineMissedFunc);
result = pst::pollingSequenceDevices(testDevicesTimeslotTask);
if(result != HasReturnvaluesIF::RETURN_OK) {
#if FSFW_CPP_OSTREAM_ENABLED == 1
sif::error << "InitMission::createTasks: Test PST initialization failed!" << std::endl;
sif::error << "InitMission::createTasks: Test PST initialization failed!" << std::endl;
#else
sif::printError("InitMission::createTasks: Test PST initialization failed!\n");
sif::printError("InitMission::createTasks: Test PST initialization failed!\n");
#endif
}
}
#if _WIN32
currPrio = tasks::makeWinPriority();
currPrio = tasks::makeWinPriority();
#endif
PeriodicTaskIF* assemblyTask = taskFactory->createPeriodicTask(
"ASS_TASK", currPrio, PeriodicTaskIF::MINIMUM_STACK_SIZE, 2.0, nullptr);
if (assemblyTask == nullptr) {
task::printInitError("ASS_TASK", objects::TEST_ASSEMBLY);
}
result = assemblyTask->addComponent(objects::TEST_ASSEMBLY);
if (result != returnvalue::OK) {
task::printInitError("ASS_TASK", objects::TEST_ASSEMBLY);
}
PeriodicTaskIF* assemblyTask = taskFactory->createPeriodicTask("ASS_TASK", currPrio,
PeriodicTaskIF::MINIMUM_STACK_SIZE, 2.0, nullptr);
if(assemblyTask == nullptr){
task::printInitError("ASS_TASK", objects::TEST_ASSEMBLY);
}
result = assemblyTask->addComponent(objects::TEST_ASSEMBLY);
if(result != HasReturnvaluesIF::RETURN_OK) {
task::printInitError("ASS_TASK", objects::TEST_ASSEMBLY);
}
#endif /* OBSW_ADD_DEVICE_HANDLER_DEMO == 1 */
#if OBSW_ADD_CONTROLLER_DEMO == 1
#ifdef __unix__
currPrio = 45;
currPrio = 45;
#endif
PeriodicTaskIF* controllerTask = taskFactory->createPeriodicTask(
"TEST_CTRL", currPrio, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.8, deadlineMissedFunc);
result = controllerTask->addComponent(objects::TEST_CONTROLLER);
if (result != returnvalue::OK) {
task::printInitError("Controller Task", objects::TEST_CONTROLLER);
}
PeriodicTaskIF* controllerTask = taskFactory->createPeriodicTask(
"TEST_CTRL", currPrio, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.8, deadlineMissedFunc);
result = controllerTask->addComponent(objects::TEST_CONTROLLER);
if(result != HasReturnvaluesIF::RETURN_OK) {
task::printInitError("Controller Task", objects::TEST_CONTROLLER);
}
#endif /* OBSW_ADD_CONTROLLER_DEMO == 1 */
#ifdef __unix__
currPrio = 15;
currPrio = 15;
#endif
PeriodicTaskIF* testTask = TaskFactory::instance()->createPeriodicTask(
"TEST_TASK", currPrio, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.0, deadlineMissedFunc);
result = testTask->addComponent(objects::TEST_TASK);
if (result != returnvalue::OK) {
task::printInitError("Test Task", objects::TEST_TASK);
}
PeriodicTaskIF* testTask = TaskFactory::instance()->createPeriodicTask(
"TEST_TASK", currPrio, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.0, deadlineMissedFunc);
result = testTask->addComponent(objects::TEST_TASK);
if(result != HasReturnvaluesIF::RETURN_OK) {
task::printInitError("Test Task", objects::TEST_TASK);
}
#if FSFW_CPP_OSTREAM_ENABLED == 1
sif::info << "Starting tasks.." << std::endl;
sif::info << "Starting tasks.." << std::endl;
#else
sif::printInfo("Starting tasks..\n");
sif::printInfo("Starting tasks..\n");
#endif
#if OBSW_ADD_CORE_COMPONENTS == 1
distributerTask->startTask();
udpBridgeTask->startTask();
udpPollingTask->startTask();
eventTask->startTask();
distributerTask->startTask();
udpBridgeTask->startTask();
udpPollingTask->startTask();
eventTask->startTask();
#endif /* OBSW_ADD_CORE_COMPONENTS == 1 */
#if OBSW_ADD_CFDP_COMPONENTS == 1
cfdpTask->startTask();
#endif
#if OBSW_ADD_PUS_STACK == 1
pusVerification->startTask();
pusHighPrio->startTask();
pusMedPrio->startTask();
pusLowPrio->startTask();
pusVerification->startTask();
pusHighPrio->startTask();
pusMedPrio->startTask();
pusLowPrio->startTask();
#endif /* OBSW_ADD_PUS_STACK == 1 */
#if OBSW_ADD_TASK_EXAMPLE == 1
timeslotDemoTask->startTask();
readerTask->startTask();
timeslotDemoTask->startTask();
readerTask->startTask();
#endif /* OBSW_ADD_TASK_EXAMPLE == 1 */
#if OBSW_ADD_DEVICE_HANDLER_DEMO == 1
testDevicesTimeslotTask->startTask();
assemblyTask->startTask();
testDevicesTimeslotTask->startTask();
assemblyTask->startTask();
#endif /* OBSW_ADD_DEVICE_HANDLER_DEMO == 1 */
#if OBSW_ADD_CONTROLLER_DEMO == 1
controllerTask->startTask();
controllerTask->startTask();
#endif /* OBSW_ADD_CONTROLLER_DEMO == 1 */
testTask->startTask();
testTask->startTask();
#if FSFW_CPP_OSTREAM_ENABLED == 1
sif::info << "Tasks started.." << std::endl;
sif::info << "Tasks started.." << std::endl;
#else
sif::printInfo("Tasks started..\n");
sif::printInfo("Tasks started..\n");
#endif
#if OBSW_ADD_DEVICE_HANDLER_DEMO
auto* assembly = ObjectManager::instance()->get<HasModesIF>(objects::TEST_ASSEMBLY);
if (assembly == nullptr) {
return;
}
HasModesIF* assembly = ObjectManager::instance()->get<HasModesIF>(objects::TEST_ASSEMBLY);
if (assembly == nullptr){
return;
}
#if FSFW_CPP_OSTREAM_ENABLED == 1
sif::info << "Waiting 5 Seconds and then command Test Assembly to Normal, Dual" << std::endl;
#else
sif::printInfo("Waiting 5 Seconds and then command Test Assembly to Normal, Dual \n");
#endif
#endif /* OBSW_ADD_DEVICE_HANDLER_DEMO */
}

View File

@ -1,79 +1,73 @@
#include "ObjectFactory.h"
#include "OBSWConfig.h"
#include "bsp_hosted/fsfwconfig/objects/systemObjectList.h"
#include "commonConfig.h"
#include "example/core/GenericFactory.h"
#include <bsp_hosted/fsfwconfig/objects/systemObjectList.h>
#include <bsp_hosted/fsfwconfig/tmtc/apid.h>
#include <bsp_hosted/fsfwconfig/tmtc/pusIds.h>
#include "example/test/FsfwTestTask.h"
#include "example/utility/TmFunnel.h"
#include "fsfw/storagemanager/PoolManager.h"
#include "fsfw/tcdistribution/CcsdsDistributor.h"
#include "fsfw/tmtcservices/CommandingServiceBase.h"
#include "fsfw_hal/host/HostFilesystem.h"
#include "example/core/GenericFactory.h"
#if OBSW_USE_TCP_SERVER == 0
#include <fsfw/monitoring/MonitoringMessageContent.h>
#include <fsfw/storagemanager/PoolManager.h>
#include <fsfw/datapoollocal/LocalDataPoolManager.h>
#include <fsfw/tmtcpacket/pus/tm.h>
#include <fsfw/tmtcservices/CommandingServiceBase.h>
#include <fsfw/tmtcservices/PusServiceBase.h>
#if OBSW_USE_TCP_SERVER == 0
#include <fsfw/osal/common/UdpTcPollingTask.h>
#include <fsfw/osal/common/UdpTmTcBridge.h>
#else
#include "fsfw/osal/common/TcpTmTcBridge.h"
#include "fsfw/osal/common/TcpTmTcServer.h"
#endif
#if OBSW_ADD_CFDP_COMPONENTS == 1
// These CFDP containers are user supplied because their size might differ depending on
// which system the example is run on
namespace cfdp {
PacketInfoList<128> PACKET_INFO;
PacketInfoListBase* PACKET_LIST_PTR = &PACKET_INFO;
LostSegmentsList<128> LOST_SEGMENTS;
LostSegmentsListBase* LOST_SEGMENTS_PTR = &LOST_SEGMENTS;
} // namespace cfdp
#include "fsfw/osal/common/TcpTmTcBridge.h"
#endif
void ObjectFactory::produce(void* args) {
Factory::setStaticFrameworkObjectIds();
StorageManagerIF* tcStore;
StorageManagerIF* tmStore;
Factory::setStaticFrameworkObjectIds();
#if OBSW_ADD_CORE_COMPONENTS == 1
{
LocalPool::LocalPoolConfig poolCfg = {{100, 16}, {50, 32}, {40, 64},
{30, 128}, {20, 1024}, {10, 2048}};
tcStore = new PoolManager(objects::TC_STORE, poolCfg);
}
{
LocalPool::LocalPoolConfig poolCfg = {
{16, 100}, {32, 50}, {64, 25}, {128,15}, {1024, 5}
};
new PoolManager(objects::TC_STORE, poolCfg);
}
{
LocalPool::LocalPoolConfig poolCfg = {{100, 16}, {50, 32}, {40, 64},
{30, 128}, {20, 1024}, {10, 2048}};
tmStore = new PoolManager(objects::TM_STORE, poolCfg);
}
{
LocalPool::LocalPoolConfig poolCfg = {
{16, 100}, {32, 50}, {64, 25}, {128,15}, {1024, 5}
};
new PoolManager(objects::TM_STORE, poolCfg);
}
{
LocalPool::LocalPoolConfig poolCfg = {{100, 16}, {50, 32}, {40, 64},
{30, 128}, {20, 1024}, {10, 2048}};
new PoolManager(objects::IPC_STORE, poolCfg);
}
PusTmFunnel* funnel;
CcsdsDistributor* ccsdsDistrib;
// TMTC Reception via TCP/IP socket
#if OBSW_USE_TCP_SERVER == 0
auto tmtcBridge = new UdpTmTcBridge(objects::TCPIP_TMTC_BRIDGE, objects::CCSDS_DISTRIBUTOR);
tmtcBridge->setMaxNumberOfPacketsStored(50);
sif::info << "Opening UDP TMTC server on port " << tmtcBridge->getUdpPort() << std::endl;
new UdpTcPollingTask(objects::TCPIP_TMTC_POLLING_TASK, objects::TCPIP_TMTC_BRIDGE);
{
LocalPool::LocalPoolConfig poolCfg = {
{16, 100}, {32, 50}, {64, 25}, {128,15}, {1024, 5}
};
new PoolManager(objects::IPC_STORE, poolCfg);
}
// TMTC Reception via TCP/IP socket
#if OBSW_USE_TCP_SERVER == 0
auto tmtcBridge = new UdpTmTcBridge(objects::TCPIP_TMTC_BRIDGE, objects::CCSDS_DISTRIBUTOR);
tmtcBridge->setMaxNumberOfPacketsStored(50);
sif::info << "Opening UDP TMTC server on port " << tmtcBridge->getUdpPort() << std::endl;
new UdpTcPollingTask(objects::TCPIP_TMTC_POLLING_TASK, objects::TCPIP_TMTC_BRIDGE);
#else
auto tmtcBridge = new TcpTmTcBridge(objects::TCPIP_TMTC_BRIDGE, objects::CCSDS_DISTRIBUTOR);
tmtcBridge->setMaxNumberOfPacketsStored(50);
auto tmtcServer = new TcpTmTcServer(objects::TCPIP_TMTC_POLLING_TASK, objects::TCPIP_TMTC_BRIDGE);
sif::info << "Opening TCP TMTC server on port " << tmtcServer->getTcpPort() << std::endl;
// TODO: Set the set of valid space packet IDs. Otherwise, parsing might fail
auto tmtcBridge = new TcpTmTcBridge(objects::TCPIP_TMTC_BRIDGE, objects::CCSDS_DISTRIBUTOR);
tmtcBridge->setMaxNumberOfPacketsStored(50);
auto tmtcServer = new TcpTmTcServer(objects::TCPIP_TMTC_POLLING_TASK, objects::TCPIP_TMTC_BRIDGE);
sif::info << "Opening TCP TMTC server on port " << tmtcServer->getTcpPort() << std::endl;
#endif
ObjectFactory::produceGenericObjects(&funnel, *tmtcBridge, &ccsdsDistrib, *tcStore, *tmStore);
#endif /* OBSW_ADD_CORE_COMPONENTS == 1 */
bool periodicEvent = false;
bool periodicEvent = false;
#if OBSW_TASK_PERIODIC_EVENT == 1
periodicEvent = true;
periodicEvent = true;
#endif
new FsfwTestTask(objects::TEST_TASK, periodicEvent);
new FsfwTestTask(objects::TEST_TASK, periodicEvent);
ObjectFactory::produceGenericObjects();
}

View File

@ -6,6 +6,7 @@ namespace ObjectFactory {
void setStatics();
void produce(void* args);
}; // namespace ObjectFactory
};
#endif /* MISSION_CORE_OBJECTFACTORY_H_ */

View File

@ -1,16 +1,25 @@
target_sources(
${TARGET_NAME} PRIVATE ipc/missionMessageTypes.cpp
pollingsequence/pollingSequenceFactory.cpp)
target_sources(${TARGET_NAME}
PRIVATE
ipc/missionMessageTypes.cpp
pollingsequence/pollingSequenceFactory.cpp
)
# Add include paths for the executable
target_include_directories(${TARGET_NAME} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
target_include_directories(${TARGET_NAME}
PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}
)
# If a special translation file for object IDs exists, compile it.
if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/objects/translateObjects.cpp")
target_sources(${TARGET_NAME} PRIVATE objects/translateObjects.cpp)
target_sources(${TARGET_NAME} PRIVATE
objects/translateObjects.cpp
)
endif()
# If a special translation file for events exists, compile it.
if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/objects/translateObjects.cpp")
target_sources(${TARGET_NAME} PRIVATE events/translateEvents.cpp)
target_sources(${TARGET_NAME} PRIVATE
events/translateEvents.cpp
)
endif()

View File

@ -1,10 +0,0 @@
#ifndef FSFW_EXAMPLE_HOSTED_DEFINITIONS_H
#define FSFW_EXAMPLE_HOSTED_DEFINITIONS_H
#include <cstdint>
namespace cfg {
static constexpr uint32_t OBSW_MAX_SCHEDULED_TCS = 200;
}
#endif // FSFW_EXAMPLE_HOSTED_DEFINITIONS_H

View File

@ -4,7 +4,8 @@
#include "commonSubsystemIds.h"
namespace SUBSYSTEM_ID {
enum subsystemId : uint8_t {};
enum subsystemId: uint8_t {
};
}
#endif /* FSFWCONFIG_TMTC_SUBSYSTEMIDRANGES_H_ */

View File

@ -1,7 +1,7 @@
/**
* @brief Auto-generated event translation file. Contains 79 translations.
* @brief Auto-generated event translation file. Contains 78 translations.
* @details
* Generated on: 2022-07-27 19:41:37
* Generated on: 2021-06-21 16:09:15
*/
#include "translateEvents.h"
@ -59,6 +59,7 @@ const char *MONITOR_CHANGED_STATE_STRING = "MONITOR_CHANGED_STATE";
const char *VALUE_BELOW_LOW_LIMIT_STRING = "VALUE_BELOW_LOW_LIMIT";
const char *VALUE_ABOVE_HIGH_LIMIT_STRING = "VALUE_ABOVE_HIGH_LIMIT";
const char *VALUE_OUT_OF_RANGE_STRING = "VALUE_OUT_OF_RANGE";
const char *SWITCHING_TM_FAILED_STRING = "SWITCHING_TM_FAILED";
const char *CHANGING_MODE_STRING = "CHANGING_MODE";
const char *MODE_INFO_STRING = "MODE_INFO";
const char *FALLBACK_FAILED_STRING = "FALLBACK_FAILED";
@ -81,172 +82,168 @@ const char *BIT_LOCK_LOST_STRING = "BIT_LOCK_LOST";
const char *FRAME_PROCESSING_FAILED_STRING = "FRAME_PROCESSING_FAILED";
const char *CLOCK_SET_STRING = "CLOCK_SET";
const char *CLOCK_SET_FAILURE_STRING = "CLOCK_SET_FAILURE";
const char *TC_DELETION_FAILED_STRING = "TC_DELETION_FAILED";
const char *TEST_STRING = "TEST";
const char *CHANGE_OF_SETUP_PARAMETER_STRING = "CHANGE_OF_SETUP_PARAMETER";
const char *translateEvents(Event event) {
switch ((event & 0xFFFF)) {
case (2200):
return STORE_SEND_WRITE_FAILED_STRING;
case (2201):
return STORE_WRITE_FAILED_STRING;
case (2202):
return STORE_SEND_READ_FAILED_STRING;
case (2203):
return STORE_READ_FAILED_STRING;
case (2204):
return UNEXPECTED_MSG_STRING;
case (2205):
return STORING_FAILED_STRING;
case (2206):
return TM_DUMP_FAILED_STRING;
case (2207):
return STORE_INIT_FAILED_STRING;
case (2208):
return STORE_INIT_EMPTY_STRING;
case (2209):
return STORE_CONTENT_CORRUPTED_STRING;
case (2210):
return STORE_INITIALIZE_STRING;
case (2211):
return INIT_DONE_STRING;
case (2212):
return DUMP_FINISHED_STRING;
case (2213):
return DELETION_FINISHED_STRING;
case (2214):
return DELETION_FAILED_STRING;
case (2215):
return AUTO_CATALOGS_SENDING_FAILED_STRING;
case (2600):
return GET_DATA_FAILED_STRING;
case (2601):
return STORE_DATA_FAILED_STRING;
case (2800):
return DEVICE_BUILDING_COMMAND_FAILED_STRING;
case (2801):
return DEVICE_SENDING_COMMAND_FAILED_STRING;
case (2802):
return DEVICE_REQUESTING_REPLY_FAILED_STRING;
case (2803):
return DEVICE_READING_REPLY_FAILED_STRING;
case (2804):
return DEVICE_INTERPRETING_REPLY_FAILED_STRING;
case (2805):
return DEVICE_MISSED_REPLY_STRING;
case (2806):
return DEVICE_UNKNOWN_REPLY_STRING;
case (2807):
return DEVICE_UNREQUESTED_REPLY_STRING;
case (2808):
return INVALID_DEVICE_COMMAND_STRING;
case (2809):
return MONITORING_LIMIT_EXCEEDED_STRING;
case (2810):
return MONITORING_AMBIGUOUS_STRING;
case (4201):
return FUSE_CURRENT_HIGH_STRING;
case (4202):
return FUSE_WENT_OFF_STRING;
case (4204):
return POWER_ABOVE_HIGH_LIMIT_STRING;
case (4205):
return POWER_BELOW_LOW_LIMIT_STRING;
case (4300):
return SWITCH_WENT_OFF_STRING;
case (5000):
return HEATER_ON_STRING;
case (5001):
return HEATER_OFF_STRING;
case (5002):
return HEATER_TIMEOUT_STRING;
case (5003):
return HEATER_STAYED_ON_STRING;
case (5004):
return HEATER_STAYED_OFF_STRING;
case (5200):
return TEMP_SENSOR_HIGH_STRING;
case (5201):
return TEMP_SENSOR_LOW_STRING;
case (5202):
return TEMP_SENSOR_GRADIENT_STRING;
case (5901):
return COMPONENT_TEMP_LOW_STRING;
case (5902):
return COMPONENT_TEMP_HIGH_STRING;
case (5903):
return COMPONENT_TEMP_OOL_LOW_STRING;
case (5904):
return COMPONENT_TEMP_OOL_HIGH_STRING;
case (5905):
return TEMP_NOT_IN_OP_RANGE_STRING;
case (7101):
return FDIR_CHANGED_STATE_STRING;
case (7102):
return FDIR_STARTS_RECOVERY_STRING;
case (7103):
return FDIR_TURNS_OFF_DEVICE_STRING;
case (7201):
return MONITOR_CHANGED_STATE_STRING;
case (7202):
return VALUE_BELOW_LOW_LIMIT_STRING;
case (7203):
return VALUE_ABOVE_HIGH_LIMIT_STRING;
case (7204):
return VALUE_OUT_OF_RANGE_STRING;
case (7400):
return CHANGING_MODE_STRING;
case (7401):
return MODE_INFO_STRING;
case (7402):
return FALLBACK_FAILED_STRING;
case (7403):
return MODE_TRANSITION_FAILED_STRING;
case (7404):
return CANT_KEEP_MODE_STRING;
case (7405):
return OBJECT_IN_INVALID_MODE_STRING;
case (7406):
return FORCING_MODE_STRING;
case (7407):
return MODE_CMD_REJECTED_STRING;
case (7506):
return HEALTH_INFO_STRING;
case (7507):
return CHILD_CHANGED_HEALTH_STRING;
case (7508):
return CHILD_PROBLEMS_STRING;
case (7509):
return OVERWRITING_HEALTH_STRING;
case (7510):
return TRYING_RECOVERY_STRING;
case (7511):
return RECOVERY_STEP_STRING;
case (7512):
return RECOVERY_DONE_STRING;
case (7900):
return RF_AVAILABLE_STRING;
case (7901):
return RF_LOST_STRING;
case (7902):
return BIT_LOCK_STRING;
case (7903):
return BIT_LOCK_LOST_STRING;
case (7905):
return FRAME_PROCESSING_FAILED_STRING;
case (8900):
return CLOCK_SET_STRING;
case (8901):
return CLOCK_SET_FAILURE_STRING;
case (9100):
return TC_DELETION_FAILED_STRING;
case (9700):
return TEST_STRING;
case (10600):
return CHANGE_OF_SETUP_PARAMETER_STRING;
default:
return "UNKNOWN_EVENT";
}
return 0;
const char * translateEvents(Event event) {
switch( (event & 0xffff) ) {
case(2200):
return STORE_SEND_WRITE_FAILED_STRING;
case(2201):
return STORE_WRITE_FAILED_STRING;
case(2202):
return STORE_SEND_READ_FAILED_STRING;
case(2203):
return STORE_READ_FAILED_STRING;
case(2204):
return UNEXPECTED_MSG_STRING;
case(2205):
return STORING_FAILED_STRING;
case(2206):
return TM_DUMP_FAILED_STRING;
case(2207):
return STORE_INIT_FAILED_STRING;
case(2208):
return STORE_INIT_EMPTY_STRING;
case(2209):
return STORE_CONTENT_CORRUPTED_STRING;
case(2210):
return STORE_INITIALIZE_STRING;
case(2211):
return INIT_DONE_STRING;
case(2212):
return DUMP_FINISHED_STRING;
case(2213):
return DELETION_FINISHED_STRING;
case(2214):
return DELETION_FAILED_STRING;
case(2215):
return AUTO_CATALOGS_SENDING_FAILED_STRING;
case(2600):
return GET_DATA_FAILED_STRING;
case(2601):
return STORE_DATA_FAILED_STRING;
case(2800):
return DEVICE_BUILDING_COMMAND_FAILED_STRING;
case(2801):
return DEVICE_SENDING_COMMAND_FAILED_STRING;
case(2802):
return DEVICE_REQUESTING_REPLY_FAILED_STRING;
case(2803):
return DEVICE_READING_REPLY_FAILED_STRING;
case(2804):
return DEVICE_INTERPRETING_REPLY_FAILED_STRING;
case(2805):
return DEVICE_MISSED_REPLY_STRING;
case(2806):
return DEVICE_UNKNOWN_REPLY_STRING;
case(2807):
return DEVICE_UNREQUESTED_REPLY_STRING;
case(2808):
return INVALID_DEVICE_COMMAND_STRING;
case(2809):
return MONITORING_LIMIT_EXCEEDED_STRING;
case(2810):
return MONITORING_AMBIGUOUS_STRING;
case(4201):
return FUSE_CURRENT_HIGH_STRING;
case(4202):
return FUSE_WENT_OFF_STRING;
case(4204):
return POWER_ABOVE_HIGH_LIMIT_STRING;
case(4205):
return POWER_BELOW_LOW_LIMIT_STRING;
case(4300):
return SWITCH_WENT_OFF_STRING;
case(5000):
return HEATER_ON_STRING;
case(5001):
return HEATER_OFF_STRING;
case(5002):
return HEATER_TIMEOUT_STRING;
case(5003):
return HEATER_STAYED_ON_STRING;
case(5004):
return HEATER_STAYED_OFF_STRING;
case(5200):
return TEMP_SENSOR_HIGH_STRING;
case(5201):
return TEMP_SENSOR_LOW_STRING;
case(5202):
return TEMP_SENSOR_GRADIENT_STRING;
case(5901):
return COMPONENT_TEMP_LOW_STRING;
case(5902):
return COMPONENT_TEMP_HIGH_STRING;
case(5903):
return COMPONENT_TEMP_OOL_LOW_STRING;
case(5904):
return COMPONENT_TEMP_OOL_HIGH_STRING;
case(5905):
return TEMP_NOT_IN_OP_RANGE_STRING;
case(7101):
return FDIR_CHANGED_STATE_STRING;
case(7102):
return FDIR_STARTS_RECOVERY_STRING;
case(7103):
return FDIR_TURNS_OFF_DEVICE_STRING;
case(7201):
return MONITOR_CHANGED_STATE_STRING;
case(7202):
return VALUE_BELOW_LOW_LIMIT_STRING;
case(7203):
return VALUE_ABOVE_HIGH_LIMIT_STRING;
case(7204):
return VALUE_OUT_OF_RANGE_STRING;
case(7301):
return SWITCHING_TM_FAILED_STRING;
case(7400):
return CHANGING_MODE_STRING;
case(7401):
return MODE_INFO_STRING;
case(7402):
return FALLBACK_FAILED_STRING;
case(7403):
return MODE_TRANSITION_FAILED_STRING;
case(7404):
return CANT_KEEP_MODE_STRING;
case(7405):
return OBJECT_IN_INVALID_MODE_STRING;
case(7406):
return FORCING_MODE_STRING;
case(7407):
return MODE_CMD_REJECTED_STRING;
case(7506):
return HEALTH_INFO_STRING;
case(7507):
return CHILD_CHANGED_HEALTH_STRING;
case(7508):
return CHILD_PROBLEMS_STRING;
case(7509):
return OVERWRITING_HEALTH_STRING;
case(7510):
return TRYING_RECOVERY_STRING;
case(7511):
return RECOVERY_STEP_STRING;
case(7512):
return RECOVERY_DONE_STRING;
case(7900):
return RF_AVAILABLE_STRING;
case(7901):
return RF_LOST_STRING;
case(7902):
return BIT_LOCK_STRING;
case(7903):
return BIT_LOCK_LOST_STRING;
case(7905):
return FRAME_PROCESSING_FAILED_STRING;
case(8900):
return CLOCK_SET_STRING;
case(8901):
return CLOCK_SET_FAILURE_STRING;
case(9700):
return TEST_STRING;
default:
return "UNKNOWN_EVENT";
}
return 0;
}

View File

@ -1,8 +1,8 @@
#ifndef FSFWCONFIG_EVENTS_TRANSLATEEVENTS_H_
#define FSFWCONFIG_EVENTS_TRANSLATEEVENTS_H_
#include "fsfw/events/Event.h"
#include <fsfw/events/Event.h>
const char *translateEvents(Event event);
const char * translateEvents(Event event);
#endif /* FSFWCONFIG_EVENTS_TRANSLATEEVENTS_H_ */

View File

@ -1,12 +1,11 @@
#include "missionMessageTypes.h"
#include <fsfw/ipc/CommandMessage.h>
#include <fsfw/ipc/CommandMessageCleaner.h>
void messagetypes::clearMissionMessage(CommandMessage* message) {
switch ((message->getMessageType())) {
default:
message->setCommand(CommandMessage::CMD_NONE);
break;
}
switch((message->getMessageType())) {
default:
message->setCommand(CommandMessage::CMD_NONE);
break;
}
}

View File

@ -9,11 +9,11 @@ namespace messagetypes {
/* First type must have number MESSAGE_TYPE::FW_MESSAGES_COUNT! */
/* Remember to add new message types to the clearMissionMessage function below! */
enum MISSION_MESSAGE_TYPE {
COSTUM_MESSAGE = FW_MESSAGES_COUNT,
COSTUM_MESSAGE = FW_MESSAGES_COUNT,
};
void clearMissionMessage(CommandMessage* message);
} // namespace messagetypes
}
#endif /* FSFWCONFIG_IPC_MISSIONMESSAGETYPES_H_ */

View File

@ -1,15 +1,15 @@
#ifndef FSFWCONFIG_OBJECTS_SYSTEMOBJECTLIST_H_
#define FSFWCONFIG_OBJECTS_SYSTEMOBJECTLIST_H_
#include <commonObjects.h>
#include <commonSystemObjects.h>
namespace objects {
enum mission_objects {
/* 0x62 ('b') Board and mission specific objects */
TCPIP_TMTC_BRIDGE = 0x62000300,
TCPIP_TMTC_POLLING_TASK = 0x62000400,
/* Generic name for FSFW static ID setter */
DOWNLINK_DESTINATION = TCPIP_TMTC_BRIDGE
/* 0x62 ('b') Board and mission specific objects */
TCPIP_TMTC_BRIDGE = 0x62000300,
TCPIP_TMTC_POLLING_TASK = 0x62000400,
/* Generic name for FSFW static ID setter */
DOWNLINK_DESTINATION = TCPIP_TMTC_BRIDGE
};
}

View File

@ -1,8 +1,8 @@
/**
* @brief Auto-generated object translation file.
* @brief Auto-generated object translation file.
* @details
* Contains 40 translations.
* Generated on: 2022-07-27 19:41:37
* Contains 37 translations.
* Generated on: 2021-05-28 18:12:56
*/
#include "translateObjects.h"
@ -18,12 +18,10 @@ const char *PUS_SERVICE_3_HOUSEKEEPING_STRING = "PUS_SERVICE_3_HOUSEKEEPING";
const char *PUS_SERVICE_5_EVENT_REPORTING_STRING = "PUS_SERVICE_5_EVENT_REPORTING";
const char *PUS_SERVICE_8_FUNCTION_MGMT_STRING = "PUS_SERVICE_8_FUNCTION_MGMT";
const char *PUS_SERVICE_9_TIME_MGMT_STRING = "PUS_SERVICE_9_TIME_MGMT";
const char *PUS_SERVICE_11_TC_SCHEDULER_STRING = "PUS_SERVICE_11_TC_SCHEDULER";
const char *PUS_SERVICE_17_TEST_STRING = "PUS_SERVICE_17_TEST";
const char *PUS_SERVICE_20_PARAMETERS_STRING = "PUS_SERVICE_20_PARAMETERS";
const char *PUS_SERVICE_200_MODE_MGMT_STRING = "PUS_SERVICE_200_MODE_MGMT";
const char *PUS_SERVICE_201_HEALTH_STRING = "PUS_SERVICE_201_HEALTH";
const char *CFDP_PACKET_DISTRIBUTOR_STRING = "CFDP_PACKET_DISTRIBUTOR";
const char *HEALTH_TABLE_STRING = "HEALTH_TABLE";
const char *MODE_STORE_STRING = "MODE_STORE";
const char *EVENT_MANAGER_STRING = "EVENT_MANAGER";
@ -32,10 +30,9 @@ const char *TC_STORE_STRING = "TC_STORE";
const char *TM_STORE_STRING = "TM_STORE";
const char *IPC_STORE_STRING = "IPC_STORE";
const char *TIME_STAMPER_STRING = "TIME_STAMPER";
const char *TC_VERIFICATOR_STRING = "TC_VERIFICATOR";
const char *FSFW_OBJECTS_END_STRING = "FSFW_OBJECTS_END";
const char *TCPIP_TMTC_BRIDGE_STRING = "TCPIP_TMTC_BRIDGE";
const char *TCPIP_TMTC_POLLING_TASK_STRING = "TCPIP_TMTC_POLLING_TASK";
const char *UDP_BRIDGE_STRING = "UDP_BRIDGE";
const char *UDP_POLLING_TASK_STRING = "UDP_POLLING_TASK";
const char *CCSDS_DISTRIBUTOR_STRING = "CCSDS_DISTRIBUTOR";
const char *PUS_DISTRIBUTOR_STRING = "PUS_DISTRIBUTOR";
const char *TM_FUNNEL_STRING = "TM_FUNNEL";
@ -47,90 +44,84 @@ const char *TEST_DUMMY_5_STRING = "TEST_DUMMY_5";
const char *TEST_TASK_STRING = "TEST_TASK";
const char *NO_OBJECT_STRING = "NO_OBJECT";
const char *translateObject(object_id_t object) {
switch ((object & 0xFFFFFFFF)) {
case 0x4100CAFE:
return TEST_ASSEMBLY_STRING;
case 0x4301CAFE:
return TEST_CONTROLLER_STRING;
case 0x4401AFFE:
return TEST_DEVICE_HANDLER_0_STRING;
case 0x4402AFFE:
return TEST_DEVICE_HANDLER_1_STRING;
case 0x4900AFFE:
return TEST_ECHO_COM_IF_STRING;
case 0x53000000:
return FSFW_OBJECTS_START_STRING;
case 0x53000001:
return PUS_SERVICE_1_VERIFICATION_STRING;
case 0x53000002:
return PUS_SERVICE_2_DEVICE_ACCESS_STRING;
case 0x53000003:
return PUS_SERVICE_3_HOUSEKEEPING_STRING;
case 0x53000005:
return PUS_SERVICE_5_EVENT_REPORTING_STRING;
case 0x53000008:
return PUS_SERVICE_8_FUNCTION_MGMT_STRING;
case 0x53000009:
return PUS_SERVICE_9_TIME_MGMT_STRING;
case 0x53000011:
return PUS_SERVICE_11_TC_SCHEDULER_STRING;
case 0x53000017:
return PUS_SERVICE_17_TEST_STRING;
case 0x53000020:
return PUS_SERVICE_20_PARAMETERS_STRING;
case 0x53000200:
return PUS_SERVICE_200_MODE_MGMT_STRING;
case 0x53000201:
return PUS_SERVICE_201_HEALTH_STRING;
case 0x53001000:
return CFDP_PACKET_DISTRIBUTOR_STRING;
case 0x53010000:
return HEALTH_TABLE_STRING;
case 0x53010100:
return MODE_STORE_STRING;
case 0x53030000:
return EVENT_MANAGER_STRING;
case 0x53040000:
return INTERNAL_ERROR_REPORTER_STRING;
case 0x534f0100:
return TC_STORE_STRING;
case 0x534f0200:
return TM_STORE_STRING;
case 0x534f0300:
return IPC_STORE_STRING;
case 0x53500010:
return TIME_STAMPER_STRING;
case 0x53500020:
return TC_VERIFICATOR_STRING;
case 0x53ffffff:
return FSFW_OBJECTS_END_STRING;
case 0x62000300:
return TCPIP_TMTC_BRIDGE_STRING;
case 0x62000400:
return TCPIP_TMTC_POLLING_TASK_STRING;
case 0x63000000:
return CCSDS_DISTRIBUTOR_STRING;
case 0x63000001:
return PUS_DISTRIBUTOR_STRING;
case 0x63000002:
return TM_FUNNEL_STRING;
case 0x74000001:
return TEST_DUMMY_1_STRING;
case 0x74000002:
return TEST_DUMMY_2_STRING;
case 0x74000003:
return TEST_DUMMY_3_STRING;
case 0x74000004:
return TEST_DUMMY_4_STRING;
case 0x74000005:
return TEST_DUMMY_5_STRING;
case 0x7400CAFE:
return TEST_TASK_STRING;
case 0xFFFFFFFF:
return NO_OBJECT_STRING;
default:
return "UNKNOWN_OBJECT";
}
return 0;
const char* translateObject(object_id_t object) {
switch( (object & 0xFFFFFFFF) ) {
case 0x4100CAFE:
return TEST_ASSEMBLY_STRING;
case 0x4301CAFE:
return TEST_CONTROLLER_STRING;
case 0x4401AFFE:
return TEST_DEVICE_HANDLER_0_STRING;
case 0x4402AFFE:
return TEST_DEVICE_HANDLER_1_STRING;
case 0x4900AFFE:
return TEST_ECHO_COM_IF_STRING;
case 0x53000000:
return FSFW_OBJECTS_START_STRING;
case 0x53000001:
return PUS_SERVICE_1_VERIFICATION_STRING;
case 0x53000002:
return PUS_SERVICE_2_DEVICE_ACCESS_STRING;
case 0x53000003:
return PUS_SERVICE_3_HOUSEKEEPING_STRING;
case 0x53000005:
return PUS_SERVICE_5_EVENT_REPORTING_STRING;
case 0x53000008:
return PUS_SERVICE_8_FUNCTION_MGMT_STRING;
case 0x53000009:
return PUS_SERVICE_9_TIME_MGMT_STRING;
case 0x53000017:
return PUS_SERVICE_17_TEST_STRING;
case 0x53000020:
return PUS_SERVICE_20_PARAMETERS_STRING;
case 0x53000200:
return PUS_SERVICE_200_MODE_MGMT_STRING;
case 0x53000201:
return PUS_SERVICE_201_HEALTH_STRING;
case 0x53010000:
return HEALTH_TABLE_STRING;
case 0x53010100:
return MODE_STORE_STRING;
case 0x53030000:
return EVENT_MANAGER_STRING;
case 0x53040000:
return INTERNAL_ERROR_REPORTER_STRING;
case 0x534f0100:
return TC_STORE_STRING;
case 0x534f0200:
return TM_STORE_STRING;
case 0x534f0300:
return IPC_STORE_STRING;
case 0x53500010:
return TIME_STAMPER_STRING;
case 0x53ffffff:
return FSFW_OBJECTS_END_STRING;
case 0x62000300:
return UDP_BRIDGE_STRING;
case 0x62000400:
return UDP_POLLING_TASK_STRING;
case 0x63000000:
return CCSDS_DISTRIBUTOR_STRING;
case 0x63000001:
return PUS_DISTRIBUTOR_STRING;
case 0x63000002:
return TM_FUNNEL_STRING;
case 0x74000001:
return TEST_DUMMY_1_STRING;
case 0x74000002:
return TEST_DUMMY_2_STRING;
case 0x74000003:
return TEST_DUMMY_3_STRING;
case 0x74000004:
return TEST_DUMMY_4_STRING;
case 0x74000005:
return TEST_DUMMY_5_STRING;
case 0x7400CAFE:
return TEST_TASK_STRING;
case 0xFFFFFFFF:
return NO_OBJECT_STRING;
default:
return "UNKNOWN_OBJECT";
}
return 0;
}

View File

@ -3,6 +3,6 @@
#include <fsfw/objectmanager/SystemObjectIF.h>
const char *translateObject(object_id_t object);
const char* translateObject(object_id_t object);
#endif /* FSFWCONFIG_OBJECTS_TRANSLATEOBJECTS_H_ */

View File

@ -2,3 +2,4 @@
* Add polling sequence initialization which are not common to every BSP here.
*/
#include "pollingSequenceFactory.h"

View File

@ -1,15 +1,14 @@
#ifndef POLLINGSEQUENCE_POLLINGSEQUENCFACTORY_H_
#define POLLINGSEQUENCE_POLLINGSEQUENCFACTORY_H_
#include <fsfw/retval.h>
#include "OBSWConfig.h"
#include <fsfw/returnvalues/HasReturnvaluesIF.h>
class FixedTimeslotTaskIF;
namespace pst {
ReturnValue_t pollingSequenceExamples(FixedTimeslotTaskIF* thisSequence);
ReturnValue_t pollingSequenceExamples(FixedTimeslotTaskIF *thisSequence);
ReturnValue_t pollingSequenceDevices(FixedTimeslotTaskIF* thisSequence);
} // namespace pst
}
#endif /* POLLINGSEQUENCE_POLLINGSEQUENCFACTORY_H_ */

View File

@ -4,10 +4,11 @@
#include "commonClassIds.h"
namespace CLASS_ID {
enum classIds : uint8_t {
CLASS_ID_START = COMMON_CLASS_ID_END,
CLASS_ID_END // [EXPORT] : [END]
enum classIds: uint8_t {
CLASS_ID_START = COMMON_CLASS_ID_END,
CLASS_ID_END // [EXPORT] : [END]
};
}
#endif /* FSFWCONFIG_RETURNVALUES_CLASSIDS_H_ */

View File

@ -0,0 +1,11 @@
#ifndef FSFWCONFIG_TMTC_APID_H_
#define FSFWCONFIG_TMTC_APID_H_
#include <cstdint>
#include <commonConfig.h>
namespace apid {
static const uint16_t APID = COMMON_APID;
};
#endif /* FSFWCONFIG_TMTC_APID_H_ */

View File

@ -0,0 +1,7 @@
#ifndef FSFWCONFIG_TMTC_PUSIDS_H_
#define FSFWCONFIG_TMTC_PUSIDS_H_
#include <commonConfig.h>
#endif /* FSFWCONFIG_TMTC_PUSIDS_H_ */

View File

@ -1,15 +1,16 @@
#include <bsp_hosted/core/InitMission.h>
#include <bsp_hosted/core/ObjectFactory.h>
#include <fsfw/objectmanager/ObjectManager.h>
#include "example/test/MutexExample.h"
#include "example/utility/utility.h"
#include <fsfw/platform.h>
#include <fsfw/objectmanager/ObjectManager.h>
#include <fsfw/serviceinterface/ServiceInterface.h>
#include <fsfw/tasks/TaskFactory.h>
#include <chrono>
#include "example/test/MutexExample.h"
#include "example/utility/utility.h"
#ifdef PLATFORM_WIN
static const char* COMPILE_PRINTOUT = "Windows";
#elif defined(PLATFORM_UNIX)
@ -26,41 +27,42 @@ ServiceInterfaceStream sif::error("ERROR", false, true, true);
#endif
int main() {
utility::commonInitPrint("Hosted", COMPILE_PRINTOUT);
utility::commonInitPrint("Hosted", COMPILE_PRINTOUT);
#if FSFW_CPP_OSTREAM_ENABLED == 1
sif::info << "Producing system objects.." << std::endl;
sif::info << "Producing system objects.." << std::endl;
#else
sif::printInfo("Producing system objects..\n");
sif::printInfo("Producing system objects..\n");
#endif /* FSFW_CPP_OSTREAM_ENABLED == 1 */
ObjectManager* objManager = ObjectManager::instance();
objManager->setObjectFactoryFunction(ObjectFactory::produce, nullptr);
ObjectManager* objManager = ObjectManager::instance();
objManager->setObjectFactoryFunction(ObjectFactory::produce, nullptr);
#if FSFW_CPP_OSTREAM_ENABLED == 1
sif::info << "Objects created successfully.." << std::endl;
sif::info << "Initializing objects.." << std::endl;
sif::info << "Objects created successfully.." << std::endl;
sif::info << "Initializing objects.." << std::endl;
#else
sif::printInfo("Objects created successfully..\n");
sif::printInfo("Objects created successfully..\n");
#endif /* FSFW_CPP_OSTREAM_ENABLED == 1 */
objManager->initialize();
objManager->initialize();
#if FSFW_CPP_OSTREAM_ENABLED == 1
sif::info << "Creating tasks.." << std::endl;
sif::info << "Creating tasks.." << std::endl;
#else
sif::printInfo("Creating tasks..\n");
sif::printInfo("Creating tasks..\n");
#endif /* FSFW_CPP_OSTREAM_ENABLED == 1 */
InitMission::createTasks();
InitMission::createTasks();
MutexExample::example();
// PusPacketCreator::createPusPacketAndPrint();
MutexExample::example();
//PusPacketCreator::createPusPacketAndPrint();
/* Permanent loop. */
for (;;) {
/* Sleep main thread, not needed anymore. */
TaskFactory::delayTask(5000);
}
return 0;
/* Permanent loop. */
for(;;) {
/* Sleep main thread, not needed anymore. */
TaskFactory::delayTask(5000);
}
return 0;
}

View File

@ -1 +1,7 @@
target_sources(${TARGET_NAME} PUBLIC printChar.c)
target_sources(${TARGET_NAME}
PUBLIC
printChar.c
)

View File

@ -1,10 +1,13 @@
#include <stdbool.h>
#include <stdio.h>
#include <stdbool.h>
void printChar(const char* character, bool errStream) {
if (errStream) {
fprintf(stderr, "%c", *character);
} else {
printf("%c", *character);
}
if(errStream) {
fprintf(stderr, "%c", *character);
}
else {
printf("%c", *character);
}
}

View File

@ -1,14 +0,0 @@
set(CMAKE_C_COMPILER "/usr/bin/clang")
set(CMAKE_CXX_COMPILER "/usr/bin/clang++")
set(CMAKE_C_FLAGS_INIT "-Wall -std=c99")
set(CMAKE_C_FLAGS_DEBUG_INIT "-g")
set(CMAKE_C_FLAGS_MINSIZEREL_INIT "-Os -DNDEBUG")
set(CMAKE_C_FLAGS_RELEASE_INIT "-O3 -DNDEBUG")
set(CMAKE_C_FLAGS_RELWITHDEBINFO_INIT "-O2 -g")
set(CMAKE_CXX_FLAGS_INIT "-Wall")
set(CMAKE_CXX_FLAGS_DEBUG_INIT "-g")
set(CMAKE_CXX_FLAGS_MINSIZEREL_INIT "-Os -DNDEBUG")
set(CMAKE_CXX_FLAGS_RELEASE_INIT "-O3 -DNDEBUG")
set(CMAKE_CXX_FLAGS_RELWITHDEBINFO_INIT "-O2 -g")

View File

@ -17,7 +17,7 @@ fi
build_generator=""
os_fsfw="host"
builddir="cmake-build-debug"
builddir="build-Debug"
build_generator="make"
if [ "${OS}" = "Windows_NT" ]; then
python="py"

View File

@ -17,7 +17,7 @@ fi
build_generator=""
os_fsfw="host"
builddir="cmake-build-release"
builddir="build-Release"
build_generator="make"
if [ "${OS}" = "Windows_NT" ]; then
python="py"

View File

@ -17,7 +17,7 @@ fi
build_generator=""
os_fsfw="host"
builddir="cmake-build-debug"
builddir="build-Debug"
build_generator="ninja"
if [ "${OS}" = "Windows_NT" ]; then
python="py"

View File

@ -17,7 +17,7 @@ fi
build_generator=""
os_fsfw="host"
builddir="cmake-build-release"
builddir="build-Release"
build_generator="Ninja"
if [ "${OS}" = "Windows_NT" ]; then
python="py"

View File

@ -17,7 +17,7 @@ fi
build_generator="make"
os_fsfw="linux"
builddir="cmake-build-debug"
builddir="build-Debug"
if [ "${OS}" = "Windows_NT" ]; then
python="py"
# Could be other OS but this works for now.

View File

@ -17,7 +17,7 @@ fi
build_generator="make"
os_fsfw="linux"
builddir="cmake-build-release"
builddir="build-Release"
if [ "${OS}" = "Windows_NT" ]; then
python="py"
# Could be other OS but this works for now.

View File

@ -17,7 +17,7 @@ fi
build_generator="ninja"
os_fsfw="linux"
builddir="cmake-build-debug"
builddir="build-Debug"
if [ "${OS}" = "Windows_NT" ]; then
python="py"
# Could be other OS but this works for now.

View File

@ -20,40 +20,27 @@ def main():
print("-- Python CMake build configurator utility --")
print("Parsing command line arguments..")
parser = argparse.ArgumentParser(
description="Processing arguments for CMake build configuration."
parser = argparse.ArgumentParser(description="Processing arguments for CMake build configuration.")
parser.add_argument(
"-o", "--osal", type=str, choices=["freertos", "linux", "rtems", "host"],
help="FSFW OSAL. Valid arguments: host, linux, rtems, freertos"
)
parser.add_argument(
"-o",
"--osal",
type=str,
choices=["freertos", "linux", "rtems", "host"],
help="FSFW OSAL. Valid arguments: host, linux, rtems, freertos",
)
parser.add_argument(
"-b",
"--buildtype",
type=str,
choices=["debug", "release", "size", "reldeb"],
help="CMake build type. Valid arguments: debug, release, size, reldeb (Release with Debug Information)",
default="debug",
"-b", "--buildtype", type=str, choices=["debug", "release", "size", "reldeb"],
help="CMake build type. Valid arguments: debug, release, size, reldeb (Release with Debug Information)",
default="debug"
)
parser.add_argument("-l", "--builddir", type=str, help="Specify build directory.")
parser.add_argument(
"-g", "--generator", type=str, help="CMake Generator", choices=["make", "ninja"]
)
parser.add_argument(
"-t",
"--target-bsp",
type=str,
help="Target BSP, combination of architecture and machine",
"-t", "--target-bsp", type=str, help="Target BSP, combination of architecture and machine"
)
parser.add_argument(
"-d",
"--defines",
"-d", "--defines",
help="Additional custom defines passed to CMake (supply without -D prefix!)",
nargs="*",
type=str,
nargs="*", type=str
)
args = parser.parse_args()
@ -66,15 +53,15 @@ def main():
if args.generator is None:
generator = determine_build_generator()
generator_cmake_arg = f'-G "{generator}"'
generator_cmake_arg = f"-G \"{generator}\""
else:
if args.generator == "make":
if os.name == "nt":
if os.name == 'nt':
generator_cmake_arg = '-G "MinGW Makefiles"'
else:
generator_cmake_arg = '-G "Unix Makefiles"'
elif args.generator == "ninja":
generator_cmake_arg = "-G Ninja"
elif args.generator == 'ninja':
generator_cmake_arg = '-G Ninja'
else:
generator_cmake_arg = args.generator
@ -86,14 +73,14 @@ def main():
cmake_build_type = determine_build_type(args.buildtype)
cmake_target_cfg_cmd = ""
cmake_target_cfg_cmd = ''
define_string = ""
if args.defines is not None:
define_list = args.defines[0].split()
for define in define_list:
define_string += f"-D{define} "
if args.builddir is None:
cmake_build_folder = determine_build_folder(cmake_build_type)
else:
@ -101,10 +88,8 @@ def main():
build_path = source_location + os.path.sep + cmake_build_folder
if os.path.isdir(build_path):
remove_old_dir = input(
f"{cmake_build_folder} folder already exists. "
f"Remove old directory? [y/n]: "
)
remove_old_dir = input(f"{cmake_build_folder} folder already exists. "
f"Remove old directory? [y/n]: ")
if str(remove_old_dir).lower() in ["yes", "y", 1]:
remove_old_dir = True
else:
@ -123,13 +108,11 @@ def main():
print(f"Navigating into build directory: {build_path}")
os.chdir(cmake_build_folder)
cmake_command = (
f'cmake {generator_cmake_arg} -DFSFW_OSAL="{cmake_fsfw_osal}" '
f'-DCMAKE_BUILD_TYPE="{cmake_build_type}" {cmake_target_cfg_cmd} '
f"{define_string} {source_location}"
)
cmake_command = f"cmake {generator_cmake_arg} -DFSFW_OSAL=\"{cmake_fsfw_osal}\" " \
f"-DCMAKE_BUILD_TYPE=\"{cmake_build_type}\" {cmake_target_cfg_cmd} " \
f"{define_string} {source_location}"
# Remove redundant spaces
cmake_command = " ".join(cmake_command.split())
cmake_command = ' '.join(cmake_command.split())
print("Running CMake command (without +): ")
print(f"+ {cmake_command}")
os.system(cmake_command)
@ -138,10 +121,8 @@ def main():
def determine_build_generator() -> str:
print("No generator specified. ")
print(
"Please select from the following list of build types or type "
"in desired system directly [h for help]: "
)
print("Please select from the following list of build types or type "
"in desired system directly [h for help]: ")
while True:
user_input = input("Enter your selection: ")
if user_input == "h":
@ -155,15 +136,11 @@ def determine_build_generator() -> str:
def determine_build_folder(cmake_build_type: str) -> str:
confirm = input(
f"No build folder specified. Set to build type name {cmake_build_type}? [y/n]: "
)
confirm = input(f"No build folder specified. Set to build type name {cmake_build_type}? [y/n]: ")
if confirm in ["yes", "y", 1]:
return cmake_build_type
else:
new_folder_name = input(
"Please enter folder name, will be created in source folder: "
)
new_folder_name = input("Please enter folder name, will be created in source folder: ")
return new_folder_name
@ -173,18 +150,19 @@ def determine_source_location() -> str:
index += 1
os.chdir("..")
if index >= 5:
print(
"Error: Could not find source directory (determined by looking for fsfw folder!)"
)
print("Error: Could not find source directory (determined by looking for fsfw folder!)")
sys.exit(1)
return os.getcwd()
def determine_fsfw_osal() -> str:
select_dict = dict({1: "host", 2: "linux", 3: "freertos", 4: "rtems"})
print(
"No build type specified. Please select from the following list of build types: "
)
select_dict = dict({
1: "host",
2: "linux",
3: "freertos",
4: "rtems"
})
print("No build type specified. Please select from the following list of build types: ")
for key, item in select_dict.items():
print(f"{key}: {item}")
select = input("Enter your selection: ")
@ -201,12 +179,13 @@ def determine_fsfw_osal() -> str:
def determine_build_type(build_type_arg) -> str:
if build_type_arg is None:
select_dict = dict(
{1: "Debug", 2: "Release", 3: "Release with Debug Information", 4: "Size"}
)
print(
"No build type specified. Please select from the following list of build types"
)
select_dict = dict({
1: "Debug",
2: "Release",
3: "Release with Debug Information",
4: "Size"
})
print("No build type specified. Please select from the following list of build types")
for key, item in select_dict.items():
print(f"{key}: {item}")
select = input("Enter your selection: ")
@ -250,10 +229,11 @@ def determine_tgt_bsp(osal: str) -> str:
print("Target BSP set to arm/stm32h743zi-nucleo")
osal = "arm/stm32h743zi-nucleo"
elif osal == "linux":
print(
"No target BSP specified. Please select from the following list of build types."
)
select_dict = dict({1: "arm/raspberrypi", 2: "none/hosted"})
print("No target BSP specified. Please select from the following list of build types.")
select_dict = dict({
1: "arm/raspberrypi",
2: "none/hosted"
})
for key, item in select_dict.items():
print(f"{key}: {item}")
select = input("Enter your selection: ")

@ -1 +1 @@
Subproject commit 5b2af728fdabdd8be6b802e022806f03f3d2a959
Subproject commit 0720dc512167caadf238f08866112060766e4132

2
fsfw

@ -1 +1 @@
Subproject commit bf311757a2fefd66955c9450a4377934b57be411
Subproject commit d0c7878da4c7591f199d6bda2fac221005b6a74d

View File

@ -1,2 +0,0 @@
/.idea/*
!/.idea/runConfigurations

View File

@ -1,24 +0,0 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="events" type="PythonConfigurationType" factoryName="Python">
<module name="generators" />
<option name="INTERPRETER_OPTIONS" value="" />
<option name="PARENT_ENVS" value="true" />
<envs>
<env name="PYTHONUNBUFFERED" value="1" />
</envs>
<option name="SDK_HOME" value="" />
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
<option name="IS_MODULE_SDK" value="true" />
<option name="ADD_CONTENT_ROOTS" value="true" />
<option name="ADD_SOURCE_ROOTS" value="true" />
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/gen.py" />
<option name="PARAMETERS" value="events" />
<option name="SHOW_COMMAND_LINE" value="false" />
<option name="EMULATE_TERMINAL" value="false" />
<option name="MODULE_MODE" value="false" />
<option name="REDIRECT_INPUT" value="false" />
<option name="INPUT_FILE" value="" />
<method v="2" />
</configuration>
</component>

View File

@ -1,24 +0,0 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="objects" type="PythonConfigurationType" factoryName="Python">
<module name="generators" />
<option name="INTERPRETER_OPTIONS" value="" />
<option name="PARENT_ENVS" value="true" />
<envs>
<env name="PYTHONUNBUFFERED" value="1" />
</envs>
<option name="SDK_HOME" value="" />
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
<option name="IS_MODULE_SDK" value="true" />
<option name="ADD_CONTENT_ROOTS" value="true" />
<option name="ADD_SOURCE_ROOTS" value="true" />
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/gen.py" />
<option name="PARAMETERS" value="objects" />
<option name="SHOW_COMMAND_LINE" value="false" />
<option name="EMULATE_TERMINAL" value="false" />
<option name="MODULE_MODE" value="false" />
<option name="REDIRECT_INPUT" value="false" />
<option name="INPUT_FILE" value="" />
<method v="2" />
</configuration>
</component>

View File

@ -1,24 +0,0 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="retvals" type="PythonConfigurationType" factoryName="Python">
<module name="generators" />
<option name="INTERPRETER_OPTIONS" value="" />
<option name="PARENT_ENVS" value="true" />
<envs>
<env name="PYTHONUNBUFFERED" value="1" />
</envs>
<option name="SDK_HOME" value="" />
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
<option name="IS_MODULE_SDK" value="true" />
<option name="ADD_CONTENT_ROOTS" value="true" />
<option name="ADD_SOURCE_ROOTS" value="true" />
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/gen.py" />
<option name="PARAMETERS" value="retvals" />
<option name="SHOW_COMMAND_LINE" value="false" />
<option name="EMULATE_TERMINAL" value="false" />
<option name="MODULE_MODE" value="false" />
<option name="REDIRECT_INPUT" value="false" />
<option name="INPUT_FILE" value="" />
<method v="2" />
</configuration>
</component>

View File

@ -1,79 +1,78 @@
2200;0x0898;STORE_SEND_WRITE_FAILED;LOW;;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2201;0x0899;STORE_WRITE_FAILED;LOW;;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2202;0x089a;STORE_SEND_READ_FAILED;LOW;;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2203;0x089b;STORE_READ_FAILED;LOW;;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2204;0x089c;UNEXPECTED_MSG;LOW;;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2205;0x089d;STORING_FAILED;LOW;;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2206;0x089e;TM_DUMP_FAILED;LOW;;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2207;0x089f;STORE_INIT_FAILED;LOW;;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2208;0x08a0;STORE_INIT_EMPTY;INFO;;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2209;0x08a1;STORE_CONTENT_CORRUPTED;LOW;;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2210;0x08a2;STORE_INITIALIZE;INFO;;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2211;0x08a3;INIT_DONE;INFO;;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2212;0x08a4;DUMP_FINISHED;INFO;;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2213;0x08a5;DELETION_FINISHED;INFO;;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2214;0x08a6;DELETION_FAILED;LOW;;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2215;0x08a7;AUTO_CATALOGS_SENDING_FAILED;INFO;;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2600;0x0a28;GET_DATA_FAILED;LOW;;fsfw/src/fsfw/storagemanager/StorageManagerIF.h
2601;0x0a29;STORE_DATA_FAILED;LOW;;fsfw/src/fsfw/storagemanager/StorageManagerIF.h
2800;0x0af0;DEVICE_BUILDING_COMMAND_FAILED;LOW;;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
2801;0x0af1;DEVICE_SENDING_COMMAND_FAILED;LOW;;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
2802;0x0af2;DEVICE_REQUESTING_REPLY_FAILED;LOW;;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
2803;0x0af3;DEVICE_READING_REPLY_FAILED;LOW;;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
2804;0x0af4;DEVICE_INTERPRETING_REPLY_FAILED;LOW;;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
2805;0x0af5;DEVICE_MISSED_REPLY;LOW;;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
2806;0x0af6;DEVICE_UNKNOWN_REPLY;LOW;;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
2807;0x0af7;DEVICE_UNREQUESTED_REPLY;LOW;;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
2808;0x0af8;INVALID_DEVICE_COMMAND;LOW;Indicates a SW bug in child class.;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
2809;0x0af9;MONITORING_LIMIT_EXCEEDED;LOW;;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
2810;0x0afa;MONITORING_AMBIGUOUS;HIGH;;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
4201;0x1069;FUSE_CURRENT_HIGH;LOW;;fsfw/src/fsfw/power/Fuse.h
4202;0x106a;FUSE_WENT_OFF;LOW;;fsfw/src/fsfw/power/Fuse.h
4204;0x106c;POWER_ABOVE_HIGH_LIMIT;LOW;;fsfw/src/fsfw/power/Fuse.h
4205;0x106d;POWER_BELOW_LOW_LIMIT;LOW;;fsfw/src/fsfw/power/Fuse.h
4300;0x10cc;SWITCH_WENT_OFF;LOW;;fsfw/src/fsfw/power/PowerSwitchIF.h
5000;0x1388;HEATER_ON;INFO;;fsfw/src/fsfw/thermal/Heater.h
5001;0x1389;HEATER_OFF;INFO;;fsfw/src/fsfw/thermal/Heater.h
5002;0x138a;HEATER_TIMEOUT;LOW;;fsfw/src/fsfw/thermal/Heater.h
5003;0x138b;HEATER_STAYED_ON;LOW;;fsfw/src/fsfw/thermal/Heater.h
5004;0x138c;HEATER_STAYED_OFF;LOW;;fsfw/src/fsfw/thermal/Heater.h
5200;0x1450;TEMP_SENSOR_HIGH;LOW;;fsfw/src/fsfw/thermal/AbstractTemperatureSensor.h
5201;0x1451;TEMP_SENSOR_LOW;LOW;;fsfw/src/fsfw/thermal/AbstractTemperatureSensor.h
5202;0x1452;TEMP_SENSOR_GRADIENT;LOW;;fsfw/src/fsfw/thermal/AbstractTemperatureSensor.h
5901;0x170d;COMPONENT_TEMP_LOW;LOW;;fsfw/src/fsfw/thermal/ThermalComponentIF.h
5902;0x170e;COMPONENT_TEMP_HIGH;LOW;;fsfw/src/fsfw/thermal/ThermalComponentIF.h
5903;0x170f;COMPONENT_TEMP_OOL_LOW;LOW;;fsfw/src/fsfw/thermal/ThermalComponentIF.h
5904;0x1710;COMPONENT_TEMP_OOL_HIGH;LOW;;fsfw/src/fsfw/thermal/ThermalComponentIF.h
5905;0x1711;TEMP_NOT_IN_OP_RANGE;LOW;;fsfw/src/fsfw/thermal/ThermalComponentIF.h
7101;0x1bbd;FDIR_CHANGED_STATE;INFO;;fsfw/src/fsfw/fdir/FailureIsolationBase.h
7102;0x1bbe;FDIR_STARTS_RECOVERY;MEDIUM;;fsfw/src/fsfw/fdir/FailureIsolationBase.h
7103;0x1bbf;FDIR_TURNS_OFF_DEVICE;MEDIUM;;fsfw/src/fsfw/fdir/FailureIsolationBase.h
7201;0x1c21;MONITOR_CHANGED_STATE;LOW;;fsfw/src/fsfw/monitoring/MonitoringIF.h
7202;0x1c22;VALUE_BELOW_LOW_LIMIT;LOW;;fsfw/src/fsfw/monitoring/MonitoringIF.h
7203;0x1c23;VALUE_ABOVE_HIGH_LIMIT;LOW;;fsfw/src/fsfw/monitoring/MonitoringIF.h
7204;0x1c24;VALUE_OUT_OF_RANGE;LOW;;fsfw/src/fsfw/monitoring/MonitoringIF.h
7400;0x1ce8;CHANGING_MODE;INFO;;fsfw/src/fsfw/modes/HasModesIF.h
7401;0x1ce9;MODE_INFO;INFO;;fsfw/src/fsfw/modes/HasModesIF.h
7402;0x1cea;FALLBACK_FAILED;HIGH;;fsfw/src/fsfw/modes/HasModesIF.h
7403;0x1ceb;MODE_TRANSITION_FAILED;LOW;;fsfw/src/fsfw/modes/HasModesIF.h
7404;0x1cec;CANT_KEEP_MODE;HIGH;;fsfw/src/fsfw/modes/HasModesIF.h
7405;0x1ced;OBJECT_IN_INVALID_MODE;LOW;;fsfw/src/fsfw/modes/HasModesIF.h
7406;0x1cee;FORCING_MODE;MEDIUM;;fsfw/src/fsfw/modes/HasModesIF.h
7407;0x1cef;MODE_CMD_REJECTED;LOW;;fsfw/src/fsfw/modes/HasModesIF.h
7506;0x1d52;HEALTH_INFO;INFO;;fsfw/src/fsfw/health/HasHealthIF.h
7507;0x1d53;CHILD_CHANGED_HEALTH;INFO;;fsfw/src/fsfw/health/HasHealthIF.h
7508;0x1d54;CHILD_PROBLEMS;LOW;;fsfw/src/fsfw/health/HasHealthIF.h
7509;0x1d55;OVERWRITING_HEALTH;LOW;;fsfw/src/fsfw/health/HasHealthIF.h
7510;0x1d56;TRYING_RECOVERY;MEDIUM;;fsfw/src/fsfw/health/HasHealthIF.h
7511;0x1d57;RECOVERY_STEP;MEDIUM;;fsfw/src/fsfw/health/HasHealthIF.h
7512;0x1d58;RECOVERY_DONE;MEDIUM;;fsfw/src/fsfw/health/HasHealthIF.h
7900;0x1edc;RF_AVAILABLE;INFO;A RF available signal was detected. P1: raw RFA state, P2: 0;fsfw/src/fsfw/datalinklayer/DataLinkLayer.h
7901;0x1edd;RF_LOST;INFO;A previously found RF available signal was lost. P1: raw RFA state, P2: 0;fsfw/src/fsfw/datalinklayer/DataLinkLayer.h
7902;0x1ede;BIT_LOCK;INFO;A Bit Lock signal. Was detected. P1: raw BLO state, P2: 0;fsfw/src/fsfw/datalinklayer/DataLinkLayer.h
7903;0x1edf;BIT_LOCK_LOST;INFO;A previously found Bit Lock signal was lost. P1: raw BLO state, P2: 0;fsfw/src/fsfw/datalinklayer/DataLinkLayer.h
7905;0x1ee1;FRAME_PROCESSING_FAILED;LOW;The CCSDS Board could not interpret a TC;fsfw/src/fsfw/datalinklayer/DataLinkLayer.h
8900;0x22c4;CLOCK_SET;INFO;;fsfw/src/fsfw/pus/Service9TimeManagement.h
8901;0x22c5;CLOCK_SET_FAILURE;LOW;;fsfw/src/fsfw/pus/Service9TimeManagement.h
9100;0x238c;TC_DELETION_FAILED;MEDIUM;Deletion of a TC from the map failed. P1: First 32 bit of request ID, P2. Last 32 bit of Request ID;fsfw/src/fsfw/pus/Service11TelecommandScheduling.h
9700;0x25e4;TEST;INFO;;fsfw/src/fsfw/pus/Service17Test.h
10600;0x2968;CHANGE_OF_SETUP_PARAMETER;LOW;;fsfw/src/fsfw_hal/devicehandlers/MgmLIS3MDLHandler.h
2200;STORE_SEND_WRITE_FAILED;LOW;;../../fsfw/tmstorage/TmStoreBackendIF.h
2201;STORE_WRITE_FAILED;LOW;;../../fsfw/tmstorage/TmStoreBackendIF.h
2202;STORE_SEND_READ_FAILED;LOW;;../../fsfw/tmstorage/TmStoreBackendIF.h
2203;STORE_READ_FAILED;LOW;;../../fsfw/tmstorage/TmStoreBackendIF.h
2204;UNEXPECTED_MSG;LOW;;../../fsfw/tmstorage/TmStoreBackendIF.h
2205;STORING_FAILED;LOW;;../../fsfw/tmstorage/TmStoreBackendIF.h
2206;TM_DUMP_FAILED;LOW;;../../fsfw/tmstorage/TmStoreBackendIF.h
2207;STORE_INIT_FAILED;LOW;;../../fsfw/tmstorage/TmStoreBackendIF.h
2208;STORE_INIT_EMPTY;INFO;;../../fsfw/tmstorage/TmStoreBackendIF.h
2209;STORE_CONTENT_CORRUPTED;LOW;;../../fsfw/tmstorage/TmStoreBackendIF.h
2210;STORE_INITIALIZE;INFO;;../../fsfw/tmstorage/TmStoreBackendIF.h
2211;INIT_DONE;INFO;;../../fsfw/tmstorage/TmStoreBackendIF.h
2212;DUMP_FINISHED;INFO;;../../fsfw/tmstorage/TmStoreBackendIF.h
2213;DELETION_FINISHED;INFO;;../../fsfw/tmstorage/TmStoreBackendIF.h
2214;DELETION_FAILED;LOW;;../../fsfw/tmstorage/TmStoreBackendIF.h
2215;AUTO_CATALOGS_SENDING_FAILED;INFO;;../../fsfw/tmstorage/TmStoreBackendIF.h
2600;GET_DATA_FAILED;LOW;;../../fsfw/storagemanager/StorageManagerIF.h
2601;STORE_DATA_FAILED;LOW;;../../fsfw/storagemanager/StorageManagerIF.h
2800;DEVICE_BUILDING_COMMAND_FAILED;LOW;;../../fsfw/devicehandlers/DeviceHandlerIF.h
2801;DEVICE_SENDING_COMMAND_FAILED;LOW;;../../fsfw/devicehandlers/DeviceHandlerIF.h
2802;DEVICE_REQUESTING_REPLY_FAILED;LOW;;../../fsfw/devicehandlers/DeviceHandlerIF.h
2803;DEVICE_READING_REPLY_FAILED;LOW;;../../fsfw/devicehandlers/DeviceHandlerIF.h
2804;DEVICE_INTERPRETING_REPLY_FAILED;LOW;;../../fsfw/devicehandlers/DeviceHandlerIF.h
2805;DEVICE_MISSED_REPLY;LOW;;../../fsfw/devicehandlers/DeviceHandlerIF.h
2806;DEVICE_UNKNOWN_REPLY;LOW;;../../fsfw/devicehandlers/DeviceHandlerIF.h
2807;DEVICE_UNREQUESTED_REPLY;LOW;;../../fsfw/devicehandlers/DeviceHandlerIF.h
2808;INVALID_DEVICE_COMMAND;LOW;Indicates a SW bug in child class.;../../fsfw/devicehandlers/DeviceHandlerIF.h
2809;MONITORING_LIMIT_EXCEEDED;LOW;;../../fsfw/devicehandlers/DeviceHandlerIF.h
2810;MONITORING_AMBIGUOUS;HIGH;;../../fsfw/devicehandlers/DeviceHandlerIF.h
4201;FUSE_CURRENT_HIGH;LOW;;../../fsfw/power/Fuse.h
4202;FUSE_WENT_OFF;LOW;;../../fsfw/power/Fuse.h
4204;POWER_ABOVE_HIGH_LIMIT;LOW;;../../fsfw/power/Fuse.h
4205;POWER_BELOW_LOW_LIMIT;LOW;;../../fsfw/power/Fuse.h
4300;SWITCH_WENT_OFF;LOW;;../../fsfw/power/PowerSwitchIF.h
5000;HEATER_ON;INFO;;../../fsfw/thermal/Heater.h
5001;HEATER_OFF;INFO;;../../fsfw/thermal/Heater.h
5002;HEATER_TIMEOUT;LOW;;../../fsfw/thermal/Heater.h
5003;HEATER_STAYED_ON;LOW;;../../fsfw/thermal/Heater.h
5004;HEATER_STAYED_OFF;LOW;;../../fsfw/thermal/Heater.h
5200;TEMP_SENSOR_HIGH;LOW;;../../fsfw/thermal/AbstractTemperatureSensor.h
5201;TEMP_SENSOR_LOW;LOW;;../../fsfw/thermal/AbstractTemperatureSensor.h
5202;TEMP_SENSOR_GRADIENT;LOW;;../../fsfw/thermal/AbstractTemperatureSensor.h
5901;COMPONENT_TEMP_LOW;LOW;;../../fsfw/thermal/ThermalComponentIF.h
5902;COMPONENT_TEMP_HIGH;LOW;;../../fsfw/thermal/ThermalComponentIF.h
5903;COMPONENT_TEMP_OOL_LOW;LOW;;../../fsfw/thermal/ThermalComponentIF.h
5904;COMPONENT_TEMP_OOL_HIGH;LOW;;../../fsfw/thermal/ThermalComponentIF.h
5905;TEMP_NOT_IN_OP_RANGE;LOW;;../../fsfw/thermal/ThermalComponentIF.h
7101;FDIR_CHANGED_STATE;INFO;;../../fsfw/fdir/FailureIsolationBase.h
7102;FDIR_STARTS_RECOVERY;MEDIUM;;../../fsfw/fdir/FailureIsolationBase.h
7103;FDIR_TURNS_OFF_DEVICE;MEDIUM;;../../fsfw/fdir/FailureIsolationBase.h
7201;MONITOR_CHANGED_STATE;LOW;;../../fsfw/monitoring/MonitoringIF.h
7202;VALUE_BELOW_LOW_LIMIT;LOW;;../../fsfw/monitoring/MonitoringIF.h
7203;VALUE_ABOVE_HIGH_LIMIT;LOW;;../../fsfw/monitoring/MonitoringIF.h
7204;VALUE_OUT_OF_RANGE;LOW;;../../fsfw/monitoring/MonitoringIF.h
7301;SWITCHING_TM_FAILED;LOW;;../../fsfw/datapool/HkSwitchHelper.h
7400;CHANGING_MODE;INFO;;../../fsfw/modes/HasModesIF.h
7401;MODE_INFO;INFO;;../../fsfw/modes/HasModesIF.h
7402;FALLBACK_FAILED;HIGH;;../../fsfw/modes/HasModesIF.h
7403;MODE_TRANSITION_FAILED;LOW;;../../fsfw/modes/HasModesIF.h
7404;CANT_KEEP_MODE;HIGH;;../../fsfw/modes/HasModesIF.h
7405;OBJECT_IN_INVALID_MODE;LOW;;../../fsfw/modes/HasModesIF.h
7406;FORCING_MODE;MEDIUM;;../../fsfw/modes/HasModesIF.h
7407;MODE_CMD_REJECTED;LOW;;../../fsfw/modes/HasModesIF.h
7506;HEALTH_INFO;INFO;;../../fsfw/health/HasHealthIF.h
7507;CHILD_CHANGED_HEALTH;INFO;;../../fsfw/health/HasHealthIF.h
7508;CHILD_PROBLEMS;LOW;;../../fsfw/health/HasHealthIF.h
7509;OVERWRITING_HEALTH;LOW;;../../fsfw/health/HasHealthIF.h
7510;TRYING_RECOVERY;MEDIUM;;../../fsfw/health/HasHealthIF.h
7511;RECOVERY_STEP;MEDIUM;;../../fsfw/health/HasHealthIF.h
7512;RECOVERY_DONE;MEDIUM;;../../fsfw/health/HasHealthIF.h
7900;RF_AVAILABLE;INFO;A RF available signal was detected. P1: raw RFA state, P2: 0;../../fsfw/datalinklayer/DataLinkLayer.h
7901;RF_LOST;INFO;A previously found RF available signal was lost. P1: raw RFA state, P2: 0;../../fsfw/datalinklayer/DataLinkLayer.h
7902;BIT_LOCK;INFO;A Bit Lock signal. Was detected. P1: raw BLO state, P2: 0;../../fsfw/datalinklayer/DataLinkLayer.h
7903;BIT_LOCK_LOST;INFO;A previously found Bit Lock signal was lost. P1: raw BLO state, P2: 0;../../fsfw/datalinklayer/DataLinkLayer.h
7905;FRAME_PROCESSING_FAILED;LOW;The CCSDS Board could not interpret a TC;../../fsfw/datalinklayer/DataLinkLayer.h
8900;CLOCK_SET;INFO;;../../fsfw/pus/Service9TimeManagement.h
8901;CLOCK_SET_FAILURE;LOW;;../../fsfw/pus/Service9TimeManagement.h
9700;TEST;INFO;;../../fsfw/pus/Service17Test.h

1 2200 0x0898 STORE_SEND_WRITE_FAILED LOW ../../fsfw/tmstorage/TmStoreBackendIF.h fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2 2201 0x0899 STORE_WRITE_FAILED LOW ../../fsfw/tmstorage/TmStoreBackendIF.h fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
3 2202 0x089a STORE_SEND_READ_FAILED LOW ../../fsfw/tmstorage/TmStoreBackendIF.h fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
4 2203 0x089b STORE_READ_FAILED LOW ../../fsfw/tmstorage/TmStoreBackendIF.h fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
5 2204 0x089c UNEXPECTED_MSG LOW ../../fsfw/tmstorage/TmStoreBackendIF.h fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
6 2205 0x089d STORING_FAILED LOW ../../fsfw/tmstorage/TmStoreBackendIF.h fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
7 2206 0x089e TM_DUMP_FAILED LOW ../../fsfw/tmstorage/TmStoreBackendIF.h fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
8 2207 0x089f STORE_INIT_FAILED LOW ../../fsfw/tmstorage/TmStoreBackendIF.h fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
9 2208 0x08a0 STORE_INIT_EMPTY INFO ../../fsfw/tmstorage/TmStoreBackendIF.h fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
10 2209 0x08a1 STORE_CONTENT_CORRUPTED LOW ../../fsfw/tmstorage/TmStoreBackendIF.h fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
11 2210 0x08a2 STORE_INITIALIZE INFO ../../fsfw/tmstorage/TmStoreBackendIF.h fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
12 2211 0x08a3 INIT_DONE INFO ../../fsfw/tmstorage/TmStoreBackendIF.h fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
13 2212 0x08a4 DUMP_FINISHED INFO ../../fsfw/tmstorage/TmStoreBackendIF.h fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
14 2213 0x08a5 DELETION_FINISHED INFO ../../fsfw/tmstorage/TmStoreBackendIF.h fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
15 2214 0x08a6 DELETION_FAILED LOW ../../fsfw/tmstorage/TmStoreBackendIF.h fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
16 2215 0x08a7 AUTO_CATALOGS_SENDING_FAILED INFO ../../fsfw/tmstorage/TmStoreBackendIF.h fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
17 2600 0x0a28 GET_DATA_FAILED LOW ../../fsfw/storagemanager/StorageManagerIF.h fsfw/src/fsfw/storagemanager/StorageManagerIF.h
18 2601 0x0a29 STORE_DATA_FAILED LOW ../../fsfw/storagemanager/StorageManagerIF.h fsfw/src/fsfw/storagemanager/StorageManagerIF.h
19 2800 0x0af0 DEVICE_BUILDING_COMMAND_FAILED LOW ../../fsfw/devicehandlers/DeviceHandlerIF.h fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
20 2801 0x0af1 DEVICE_SENDING_COMMAND_FAILED LOW ../../fsfw/devicehandlers/DeviceHandlerIF.h fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
21 2802 0x0af2 DEVICE_REQUESTING_REPLY_FAILED LOW ../../fsfw/devicehandlers/DeviceHandlerIF.h fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
22 2803 0x0af3 DEVICE_READING_REPLY_FAILED LOW ../../fsfw/devicehandlers/DeviceHandlerIF.h fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
23 2804 0x0af4 DEVICE_INTERPRETING_REPLY_FAILED LOW ../../fsfw/devicehandlers/DeviceHandlerIF.h fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
24 2805 0x0af5 DEVICE_MISSED_REPLY LOW ../../fsfw/devicehandlers/DeviceHandlerIF.h fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
25 2806 0x0af6 DEVICE_UNKNOWN_REPLY LOW ../../fsfw/devicehandlers/DeviceHandlerIF.h fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
26 2807 0x0af7 DEVICE_UNREQUESTED_REPLY LOW ../../fsfw/devicehandlers/DeviceHandlerIF.h fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
27 2808 0x0af8 INVALID_DEVICE_COMMAND LOW Indicates a SW bug in child class. ../../fsfw/devicehandlers/DeviceHandlerIF.h fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
28 2809 0x0af9 MONITORING_LIMIT_EXCEEDED LOW ../../fsfw/devicehandlers/DeviceHandlerIF.h fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
29 2810 0x0afa MONITORING_AMBIGUOUS HIGH ../../fsfw/devicehandlers/DeviceHandlerIF.h fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
30 4201 0x1069 FUSE_CURRENT_HIGH LOW ../../fsfw/power/Fuse.h fsfw/src/fsfw/power/Fuse.h
31 4202 0x106a FUSE_WENT_OFF LOW ../../fsfw/power/Fuse.h fsfw/src/fsfw/power/Fuse.h
32 4204 0x106c POWER_ABOVE_HIGH_LIMIT LOW ../../fsfw/power/Fuse.h fsfw/src/fsfw/power/Fuse.h
33 4205 0x106d POWER_BELOW_LOW_LIMIT LOW ../../fsfw/power/Fuse.h fsfw/src/fsfw/power/Fuse.h
34 4300 0x10cc SWITCH_WENT_OFF LOW ../../fsfw/power/PowerSwitchIF.h fsfw/src/fsfw/power/PowerSwitchIF.h
35 5000 0x1388 HEATER_ON INFO ../../fsfw/thermal/Heater.h fsfw/src/fsfw/thermal/Heater.h
36 5001 0x1389 HEATER_OFF INFO ../../fsfw/thermal/Heater.h fsfw/src/fsfw/thermal/Heater.h
37 5002 0x138a HEATER_TIMEOUT LOW ../../fsfw/thermal/Heater.h fsfw/src/fsfw/thermal/Heater.h
38 5003 0x138b HEATER_STAYED_ON LOW ../../fsfw/thermal/Heater.h fsfw/src/fsfw/thermal/Heater.h
39 5004 0x138c HEATER_STAYED_OFF LOW ../../fsfw/thermal/Heater.h fsfw/src/fsfw/thermal/Heater.h
40 5200 0x1450 TEMP_SENSOR_HIGH LOW ../../fsfw/thermal/AbstractTemperatureSensor.h fsfw/src/fsfw/thermal/AbstractTemperatureSensor.h
41 5201 0x1451 TEMP_SENSOR_LOW LOW ../../fsfw/thermal/AbstractTemperatureSensor.h fsfw/src/fsfw/thermal/AbstractTemperatureSensor.h
42 5202 0x1452 TEMP_SENSOR_GRADIENT LOW ../../fsfw/thermal/AbstractTemperatureSensor.h fsfw/src/fsfw/thermal/AbstractTemperatureSensor.h
43 5901 0x170d COMPONENT_TEMP_LOW LOW ../../fsfw/thermal/ThermalComponentIF.h fsfw/src/fsfw/thermal/ThermalComponentIF.h
44 5902 0x170e COMPONENT_TEMP_HIGH LOW ../../fsfw/thermal/ThermalComponentIF.h fsfw/src/fsfw/thermal/ThermalComponentIF.h
45 5903 0x170f COMPONENT_TEMP_OOL_LOW LOW ../../fsfw/thermal/ThermalComponentIF.h fsfw/src/fsfw/thermal/ThermalComponentIF.h
46 5904 0x1710 COMPONENT_TEMP_OOL_HIGH LOW ../../fsfw/thermal/ThermalComponentIF.h fsfw/src/fsfw/thermal/ThermalComponentIF.h
47 5905 0x1711 TEMP_NOT_IN_OP_RANGE LOW ../../fsfw/thermal/ThermalComponentIF.h fsfw/src/fsfw/thermal/ThermalComponentIF.h
48 7101 0x1bbd FDIR_CHANGED_STATE INFO ../../fsfw/fdir/FailureIsolationBase.h fsfw/src/fsfw/fdir/FailureIsolationBase.h
49 7102 0x1bbe FDIR_STARTS_RECOVERY MEDIUM ../../fsfw/fdir/FailureIsolationBase.h fsfw/src/fsfw/fdir/FailureIsolationBase.h
50 7103 0x1bbf FDIR_TURNS_OFF_DEVICE MEDIUM ../../fsfw/fdir/FailureIsolationBase.h fsfw/src/fsfw/fdir/FailureIsolationBase.h
51 7201 0x1c21 MONITOR_CHANGED_STATE LOW ../../fsfw/monitoring/MonitoringIF.h fsfw/src/fsfw/monitoring/MonitoringIF.h
52 7202 0x1c22 VALUE_BELOW_LOW_LIMIT LOW ../../fsfw/monitoring/MonitoringIF.h fsfw/src/fsfw/monitoring/MonitoringIF.h
53 7203 0x1c23 VALUE_ABOVE_HIGH_LIMIT LOW ../../fsfw/monitoring/MonitoringIF.h fsfw/src/fsfw/monitoring/MonitoringIF.h
54 7204 0x1c24 VALUE_OUT_OF_RANGE LOW ../../fsfw/monitoring/MonitoringIF.h fsfw/src/fsfw/monitoring/MonitoringIF.h
55 7400 7301 0x1ce8 CHANGING_MODE SWITCHING_TM_FAILED INFO LOW ../../fsfw/datapool/HkSwitchHelper.h fsfw/src/fsfw/modes/HasModesIF.h
56 7401 7400 0x1ce9 MODE_INFO CHANGING_MODE INFO ../../fsfw/modes/HasModesIF.h fsfw/src/fsfw/modes/HasModesIF.h
57 7402 7401 0x1cea FALLBACK_FAILED MODE_INFO HIGH INFO ../../fsfw/modes/HasModesIF.h fsfw/src/fsfw/modes/HasModesIF.h
58 7403 7402 0x1ceb MODE_TRANSITION_FAILED FALLBACK_FAILED LOW HIGH ../../fsfw/modes/HasModesIF.h fsfw/src/fsfw/modes/HasModesIF.h
59 7404 7403 0x1cec CANT_KEEP_MODE MODE_TRANSITION_FAILED HIGH LOW ../../fsfw/modes/HasModesIF.h fsfw/src/fsfw/modes/HasModesIF.h
60 7405 7404 0x1ced OBJECT_IN_INVALID_MODE CANT_KEEP_MODE LOW HIGH ../../fsfw/modes/HasModesIF.h fsfw/src/fsfw/modes/HasModesIF.h
61 7406 7405 0x1cee FORCING_MODE OBJECT_IN_INVALID_MODE MEDIUM LOW ../../fsfw/modes/HasModesIF.h fsfw/src/fsfw/modes/HasModesIF.h
62 7407 7406 0x1cef MODE_CMD_REJECTED FORCING_MODE LOW MEDIUM ../../fsfw/modes/HasModesIF.h fsfw/src/fsfw/modes/HasModesIF.h
63 7506 7407 0x1d52 HEALTH_INFO MODE_CMD_REJECTED INFO LOW ../../fsfw/modes/HasModesIF.h fsfw/src/fsfw/health/HasHealthIF.h
64 7507 7506 0x1d53 CHILD_CHANGED_HEALTH HEALTH_INFO INFO ../../fsfw/health/HasHealthIF.h fsfw/src/fsfw/health/HasHealthIF.h
65 7508 7507 0x1d54 CHILD_PROBLEMS CHILD_CHANGED_HEALTH LOW INFO ../../fsfw/health/HasHealthIF.h fsfw/src/fsfw/health/HasHealthIF.h
66 7509 7508 0x1d55 OVERWRITING_HEALTH CHILD_PROBLEMS LOW ../../fsfw/health/HasHealthIF.h fsfw/src/fsfw/health/HasHealthIF.h
67 7510 7509 0x1d56 TRYING_RECOVERY OVERWRITING_HEALTH MEDIUM LOW ../../fsfw/health/HasHealthIF.h fsfw/src/fsfw/health/HasHealthIF.h
68 7511 7510 0x1d57 RECOVERY_STEP TRYING_RECOVERY MEDIUM ../../fsfw/health/HasHealthIF.h fsfw/src/fsfw/health/HasHealthIF.h
69 7512 7511 0x1d58 RECOVERY_DONE RECOVERY_STEP MEDIUM ../../fsfw/health/HasHealthIF.h fsfw/src/fsfw/health/HasHealthIF.h
70 7900 7512 0x1edc RF_AVAILABLE RECOVERY_DONE INFO MEDIUM A RF available signal was detected. P1: raw RFA state, P2: 0 ../../fsfw/health/HasHealthIF.h fsfw/src/fsfw/datalinklayer/DataLinkLayer.h
71 7901 7900 0x1edd RF_LOST RF_AVAILABLE INFO A previously found RF available signal was lost. P1: raw RFA state, P2: 0 A RF available signal was detected. P1: raw RFA state, P2: 0 ../../fsfw/datalinklayer/DataLinkLayer.h fsfw/src/fsfw/datalinklayer/DataLinkLayer.h
72 7902 7901 0x1ede BIT_LOCK RF_LOST INFO A Bit Lock signal. Was detected. P1: raw BLO state, P2: 0 A previously found RF available signal was lost. P1: raw RFA state, P2: 0 ../../fsfw/datalinklayer/DataLinkLayer.h fsfw/src/fsfw/datalinklayer/DataLinkLayer.h
73 7903 7902 0x1edf BIT_LOCK_LOST BIT_LOCK INFO A previously found Bit Lock signal was lost. P1: raw BLO state, P2: 0 A Bit Lock signal. Was detected. P1: raw BLO state, P2: 0 ../../fsfw/datalinklayer/DataLinkLayer.h fsfw/src/fsfw/datalinklayer/DataLinkLayer.h
74 7905 7903 0x1ee1 FRAME_PROCESSING_FAILED BIT_LOCK_LOST LOW INFO The CCSDS Board could not interpret a TC A previously found Bit Lock signal was lost. P1: raw BLO state, P2: 0 ../../fsfw/datalinklayer/DataLinkLayer.h fsfw/src/fsfw/datalinklayer/DataLinkLayer.h
75 8900 7905 0x22c4 CLOCK_SET FRAME_PROCESSING_FAILED INFO LOW The CCSDS Board could not interpret a TC ../../fsfw/datalinklayer/DataLinkLayer.h fsfw/src/fsfw/pus/Service9TimeManagement.h
76 8901 8900 0x22c5 CLOCK_SET_FAILURE CLOCK_SET LOW INFO ../../fsfw/pus/Service9TimeManagement.h fsfw/src/fsfw/pus/Service9TimeManagement.h
77 9100 8901 0x238c TC_DELETION_FAILED CLOCK_SET_FAILURE MEDIUM LOW Deletion of a TC from the map failed. P1: First 32 bit of request ID, P2. Last 32 bit of Request ID ../../fsfw/pus/Service9TimeManagement.h fsfw/src/fsfw/pus/Service11TelecommandScheduling.h
78 9700 0x25e4 TEST INFO ../../fsfw/pus/Service17Test.h fsfw/src/fsfw/pus/Service17Test.h
10600 0x2968 CHANGE_OF_SETUP_PARAMETER LOW fsfw/src/fsfw_hal/devicehandlers/MgmLIS3MDLHandler.h

View File

@ -1,40 +0,0 @@
0x4100CAFE;TEST_ASSEMBLY
0x4301CAFE;TEST_CONTROLLER
0x4401AFFE;TEST_DEVICE_HANDLER_0
0x4402AFFE;TEST_DEVICE_HANDLER_1
0x4900AFFE;TEST_ECHO_COM_IF
0x53000000;FSFW_OBJECTS_START
0x53000001;PUS_SERVICE_1_VERIFICATION
0x53000002;PUS_SERVICE_2_DEVICE_ACCESS
0x53000003;PUS_SERVICE_3_HOUSEKEEPING
0x53000005;PUS_SERVICE_5_EVENT_REPORTING
0x53000008;PUS_SERVICE_8_FUNCTION_MGMT
0x53000009;PUS_SERVICE_9_TIME_MGMT
0x53000011;PUS_SERVICE_11_TC_SCHEDULER
0x53000017;PUS_SERVICE_17_TEST
0x53000020;PUS_SERVICE_20_PARAMETERS
0x53000200;PUS_SERVICE_200_MODE_MGMT
0x53000201;PUS_SERVICE_201_HEALTH
0x53001000;CFDP_PACKET_DISTRIBUTOR
0x53010000;HEALTH_TABLE
0x53010100;MODE_STORE
0x53030000;EVENT_MANAGER
0x53040000;INTERNAL_ERROR_REPORTER
0x534f0100;TC_STORE
0x534f0200;TM_STORE
0x534f0300;IPC_STORE
0x53500010;TIME_STAMPER
0x53500020;TC_VERIFICATOR
0x53ffffff;FSFW_OBJECTS_END
0x62000300;TCPIP_TMTC_BRIDGE
0x62000400;TCPIP_TMTC_POLLING_TASK
0x63000000;CCSDS_DISTRIBUTOR
0x63000001;PUS_DISTRIBUTOR
0x63000002;TM_FUNNEL
0x74000001;TEST_DUMMY_1
0x74000002;TEST_DUMMY_2
0x74000003;TEST_DUMMY_3
0x74000004;TEST_DUMMY_4
0x74000005;TEST_DUMMY_5
0x7400CAFE;TEST_TASK
0xFFFFFFFF;NO_OBJECT
1 0x4100CAFE TEST_ASSEMBLY
2 0x4301CAFE TEST_CONTROLLER
3 0x4401AFFE TEST_DEVICE_HANDLER_0
4 0x4402AFFE TEST_DEVICE_HANDLER_1
5 0x4900AFFE TEST_ECHO_COM_IF
6 0x53000000 FSFW_OBJECTS_START
7 0x53000001 PUS_SERVICE_1_VERIFICATION
8 0x53000002 PUS_SERVICE_2_DEVICE_ACCESS
9 0x53000003 PUS_SERVICE_3_HOUSEKEEPING
10 0x53000005 PUS_SERVICE_5_EVENT_REPORTING
11 0x53000008 PUS_SERVICE_8_FUNCTION_MGMT
12 0x53000009 PUS_SERVICE_9_TIME_MGMT
13 0x53000011 PUS_SERVICE_11_TC_SCHEDULER
14 0x53000017 PUS_SERVICE_17_TEST
15 0x53000020 PUS_SERVICE_20_PARAMETERS
16 0x53000200 PUS_SERVICE_200_MODE_MGMT
17 0x53000201 PUS_SERVICE_201_HEALTH
18 0x53001000 CFDP_PACKET_DISTRIBUTOR
19 0x53010000 HEALTH_TABLE
20 0x53010100 MODE_STORE
21 0x53030000 EVENT_MANAGER
22 0x53040000 INTERNAL_ERROR_REPORTER
23 0x534f0100 TC_STORE
24 0x534f0200 TM_STORE
25 0x534f0300 IPC_STORE
26 0x53500010 TIME_STAMPER
27 0x53500020 TC_VERIFICATOR
28 0x53ffffff FSFW_OBJECTS_END
29 0x62000300 TCPIP_TMTC_BRIDGE
30 0x62000400 TCPIP_TMTC_POLLING_TASK
31 0x63000000 CCSDS_DISTRIBUTOR
32 0x63000001 PUS_DISTRIBUTOR
33 0x63000002 TM_FUNNEL
34 0x74000001 TEST_DUMMY_1
35 0x74000002 TEST_DUMMY_2
36 0x74000003 TEST_DUMMY_3
37 0x74000004 TEST_DUMMY_4
38 0x74000005 TEST_DUMMY_5
39 0x7400CAFE TEST_TASK
40 0xFFFFFFFF NO_OBJECT

View File

@ -1,401 +1,369 @@
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
0x4400; HSPI_HalTimeoutRetval;;0;fsfw/hal/src/fsfw_hal/stm32h7/spi/spiDefinitions.h;HAL_SPI
0x4401; HSPI_HalBusyRetval;;1;fsfw/hal/src/fsfw_hal/stm32h7/spi/spiDefinitions.h;HAL_SPI
0x4402; HSPI_HalErrorRetval;;2;fsfw/hal/src/fsfw_hal/stm32h7/spi/spiDefinitions.h;HAL_SPI
0x4501; HURT_UartReadFailure;;1;fsfw/hal/src/fsfw_hal/linux/uart/UartComIF.h;HAL_UART
0x4502; HURT_UartReadSizeMissmatch;;2;fsfw/hal/src/fsfw_hal/linux/uart/UartComIF.h;HAL_UART
0x4503; HURT_UartRxBufferTooSmall;;3;fsfw/hal/src/fsfw_hal/linux/uart/UartComIF.h;HAL_UART
0x4701; HGIO_UnknownGpioId;;1;fsfw/hal/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h;HAL_GPIO
0x4702; HGIO_DriveGpioFailure;;2;fsfw/hal/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h;HAL_GPIO
0x4703; HGIO_GpioTypeFailure;;3;fsfw/hal/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h;HAL_GPIO
0x4704; HGIO_GpioInvalidInstance;;4;fsfw/hal/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h;HAL_GPIO
0x4705; HGIO_GpioDuplicateDetected;;5;fsfw/hal/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h;HAL_GPIO
0x4706; HGIO_GpioInitFailed;;6;fsfw/hal/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h;HAL_GPIO
0x4300; UXOS_ExecutionFinished;Execution of the current command has finished;0;fsfw/hal/src/fsfw_hal/linux/CommandExecutor.h;LINUX_OSAL
0x4301; UXOS_CommandPending;Command is pending. This will also be returned if the user tries to load another command but a command is still pending;1;fsfw/hal/src/fsfw_hal/linux/CommandExecutor.h;LINUX_OSAL
0x4302; UXOS_BytesRead;Some bytes have been read from the executing process;2;fsfw/hal/src/fsfw_hal/linux/CommandExecutor.h;LINUX_OSAL
0x4303; UXOS_CommandError;Command execution failed;3;fsfw/hal/src/fsfw_hal/linux/CommandExecutor.h;LINUX_OSAL
0x4304; UXOS_NoCommandLoadedOrPending;;4;fsfw/hal/src/fsfw_hal/linux/CommandExecutor.h;LINUX_OSAL
0x4306; UXOS_PcloseCallError;;6;fsfw/hal/src/fsfw_hal/linux/CommandExecutor.h;LINUX_OSAL
0x2b01; CCS_BcIsSetVrCommand;;0x01;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2b02; CCS_BcIsUnlockCommand;;0x02;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bb0; CCS_BcIllegalCommand;;0xB0;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bb1; CCS_BoardReadingNotFinished;;0xB1;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bf0; CCS_NsPositiveW;;0xF0;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bf1; CCS_NsNegativeW;;0xF1;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bf2; CCS_NsLockout;;0xF2;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bf3; CCS_FarmInLockout;;0xF3;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bf4; CCS_FarmInWait;;0xF4;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2be0; CCS_WrongSymbol;;0xE0;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2be1; CCS_DoubleStart;;0xE1;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2be2; CCS_StartSymbolMissed;;0xE2;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2be3; CCS_EndWithoutStart;;0xE3;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2be4; CCS_TooLarge;;0xE4;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2be5; CCS_TooShort;;0xE5;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2be6; CCS_WrongTfVersion;;0xE6;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2be7; CCS_WrongSpacecraftId;;0xE7;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2be8; CCS_NoValidFrameType;;0xE8;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2be9; CCS_CrcFailed;;0xE9;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bea; CCS_VcNotFound;;0xEA;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2beb; CCS_ForwardingFailed;;0xEB;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bec; CCS_ContentTooLarge;;0xEC;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bed; CCS_ResidualData;;0xED;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bee; CCS_DataCorrupted;;0xEE;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bef; CCS_IllegalSegmentationFlag;;0xEF;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bd0; CCS_IllegalFlagCombination;;0xD0;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bd1; CCS_ShorterThanHeader;;0xD1;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bd2; CCS_TooShortBlockedPacket;;0xD2;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bd3; CCS_TooShortMapExtraction;;0xD3;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x3a00; SPH_ConnBroken;;0;fsfw/src/fsfw/osal/common/TcpTmTcServer.h;SEMAPHORE_IF
0x2901; IEC_NoConfigurationTable;;0x01;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2902; IEC_NoCpuTable;;0x02;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2903; IEC_InvalidWorkspaceAddress;;0x03;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2904; IEC_TooLittleWorkspace;;0x04;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2905; IEC_WorkspaceAllocation;;0x05;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2906; IEC_InterruptStackTooSmall;;0x06;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2907; IEC_ThreadExitted;;0x07;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2908; IEC_InconsistentMpInformation;;0x08;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2909; IEC_InvalidNode;;0x09;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x290a; IEC_NoMpci;;0x0a;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x290b; IEC_BadPacket;;0x0b;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x290c; IEC_OutOfPackets;;0x0c;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x290d; IEC_OutOfGlobalObjects;;0x0d;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x290e; IEC_OutOfProxies;;0x0e;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x290f; IEC_InvalidGlobalId;;0x0f;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2910; IEC_BadStackHook;;0x10;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2911; IEC_BadAttributes;;0x11;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2912; IEC_ImplementationKeyCreateInconsistency;;0x12;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2913; IEC_ImplementationBlockingOperationCancel;;0x13;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2914; IEC_MutexObtainFromBadState;;0x14;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2915; IEC_UnlimitedAndMaximumIs0;;0x15;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0xe01; HM_InvalidMode;;0x01;fsfw/src/fsfw/modes/HasModesIF.h;HAS_MODES_IF
0xe02; HM_TransNotAllowed;;0x02;fsfw/src/fsfw/modes/HasModesIF.h;HAS_MODES_IF
0xe03; HM_InTransition;;0x03;fsfw/src/fsfw/modes/HasModesIF.h;HAS_MODES_IF
0xe04; HM_InvalidSubmode;;0x04;fsfw/src/fsfw/modes/HasModesIF.h;HAS_MODES_IF
0x2d01; HPA_InvalidIdentifierId;;0x01;fsfw/src/fsfw/parameters/HasParametersIF.h;HAS_PARAMETERS_IF
0x2d02; HPA_InvalidDomainId;;0x02;fsfw/src/fsfw/parameters/HasParametersIF.h;HAS_PARAMETERS_IF
0x2d03; HPA_InvalidValue;;0x03;fsfw/src/fsfw/parameters/HasParametersIF.h;HAS_PARAMETERS_IF
0x2d05; HPA_ReadOnly;;0x05;fsfw/src/fsfw/parameters/HasParametersIF.h;HAS_PARAMETERS_IF
0x2c01; PAW_UnknownDatatype;;0x01;fsfw/src/fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER
0x2c02; PAW_DatatypeMissmatch;;0x02;fsfw/src/fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER
0x2c03; PAW_Readonly;;0x03;fsfw/src/fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER
0x2c04; PAW_TooBig;;0x04;fsfw/src/fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER
0x2c05; PAW_SourceNotSet;;0x05;fsfw/src/fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER
0x2c06; PAW_OutOfBounds;;0x06;fsfw/src/fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER
0x2c07; PAW_NotSet;;0x07;fsfw/src/fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER
0x2c08; PAW_ColumnOrRowsZero;;0x08;fsfw/src/fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER
0x3101; CF_ObjectHasNoFunctions;;1;fsfw/src/fsfw/action/CommandsActionsIF.h;COMMANDS_ACTIONS_IF
0x3102; CF_AlreadyCommanding;;2;fsfw/src/fsfw/action/CommandsActionsIF.h;COMMANDS_ACTIONS_IF
0x3201; HF_IsBusy;;1;fsfw/src/fsfw/action/HasActionsIF.h;HAS_ACTIONS_IF
0x3202; HF_InvalidParameters;;2;fsfw/src/fsfw/action/HasActionsIF.h;HAS_ACTIONS_IF
0x3203; HF_ExecutionFinished;;3;fsfw/src/fsfw/action/HasActionsIF.h;HAS_ACTIONS_IF
0x3204; HF_InvalidActionId;;4;fsfw/src/fsfw/action/HasActionsIF.h;HAS_ACTIONS_IF
0x201; OM_InsertionFailed;;1;fsfw/src/fsfw/objectmanager/ObjectManagerIF.h;OBJECT_MANAGER_IF
0x202; OM_NotFound;;2;fsfw/src/fsfw/objectmanager/ObjectManagerIF.h;OBJECT_MANAGER_IF
0x203; OM_ChildInitFailed;;3;fsfw/src/fsfw/objectmanager/ObjectManagerIF.h;OBJECT_MANAGER_IF
0x204; OM_InternalErrReporterUninit;;4;fsfw/src/fsfw/objectmanager/ObjectManagerIF.h;OBJECT_MANAGER_IF
0x2500; FDI_YourFault;;0;fsfw/src/fsfw/fdir/ConfirmsFailuresIF.h;HANDLES_FAILURES_IF
0x2501; FDI_MyFault;;1;fsfw/src/fsfw/fdir/ConfirmsFailuresIF.h;HANDLES_FAILURES_IF
0x2502; FDI_ConfirmLater;;2;fsfw/src/fsfw/fdir/ConfirmsFailuresIF.h;HANDLES_FAILURES_IF
0x2101; TMF_Busy;;1;fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x2102; TMF_LastPacketFound;;2;fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x2103; TMF_StopFetch;;3;fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x2104; TMF_Timeout;;4;fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x2105; TMF_TmChannelFull;;5;fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x2106; TMF_NotStored;;6;fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x2107; TMF_AllDeleted;;7;fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x2108; TMF_InvalidData;;8;fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x2109; TMF_NotReady;;9;fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x2001; TMB_Busy;;1;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x2002; TMB_Full;;2;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x2003; TMB_Empty;;3;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x2004; TMB_NullRequested;;4;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x2005; TMB_TooLarge;;5;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x2006; TMB_NotReady;;6;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x2007; TMB_DumpError;;7;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x2008; TMB_CrcError;;8;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x2009; TMB_Timeout;;9;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x200a; TMB_IdlePacketFound;;10;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x200b; TMB_TelecommandFound;;11;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x200c; TMB_NoPusATm;;12;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x200d; TMB_TooSmall;;13;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x200e; TMB_BlockNotFound;;14;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x200f; TMB_InvalidRequest;;15;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x1c01; TCD_PacketLost;;1;fsfw/src/fsfw/tcdistribution/TcDistributor.h;PACKET_DISTRIBUTION
0x1c02; TCD_DestinationNotFound;;2;fsfw/src/fsfw/tcdistribution/TcDistributor.h;PACKET_DISTRIBUTION
0x1c03; TCD_ServiceIdAlreadyExists;;3;fsfw/src/fsfw/tcdistribution/TcDistributor.h;PACKET_DISTRIBUTION
0x1b00; TCC_IllegalApid;;0;fsfw/src/fsfw/tcdistribution/TcPacketCheckPUS.h;TC_PACKET_CHECK
0x1b01; TCC_IncompletePacket;;1;fsfw/src/fsfw/tcdistribution/TcPacketCheckPUS.h;TC_PACKET_CHECK
0x1b02; TCC_IncorrectChecksum;;2;fsfw/src/fsfw/tcdistribution/TcPacketCheckPUS.h;TC_PACKET_CHECK
0x1b03; TCC_IllegalPacketType;;3;fsfw/src/fsfw/tcdistribution/TcPacketCheckPUS.h;TC_PACKET_CHECK
0x1b04; TCC_IllegalPacketSubtype;;4;fsfw/src/fsfw/tcdistribution/TcPacketCheckPUS.h;TC_PACKET_CHECK
0x1b05; TCC_IncorrectPrimaryHeader;;5;fsfw/src/fsfw/tcdistribution/TcPacketCheckPUS.h;TC_PACKET_CHECK
0x1b06; TCC_IncorrectSecondaryHeader;;6;fsfw/src/fsfw/tcdistribution/TcPacketCheckPUS.h;TC_PACKET_CHECK
0x4e1; RMP_CommandNoDescriptorsAvailable;;0xE1;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4e2; RMP_CommandBufferFull;;0xE2;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4e3; RMP_CommandChannelOutOfRange;;0xE3;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4e6; RMP_CommandChannelDeactivated;;0xE6;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4e7; RMP_CommandPortOutOfRange;;0xE7;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4e8; RMP_CommandPortInUse;;0xE8;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4e9; RMP_CommandNoChannel;;0xE9;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4ea; RMP_NoHwCrc;;0xEA;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4d0; RMP_ReplyNoReply;;0xD0;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4d1; RMP_ReplyNotSent;;0xD1;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4d2; RMP_ReplyNotYetSent;;0xD2;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4d3; RMP_ReplyMissmatch;;0xD3;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4d4; RMP_ReplyTimeout;;0xD4;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4c0; RMP_ReplyInterfaceBusy;;0xC0;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4c1; RMP_ReplyTransmissionError;;0xC1;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4c2; RMP_ReplyInvalidData;;0xC2;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4c3; RMP_ReplyNotSupported;;0xC3;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4f0; RMP_LinkDown;;0xF0;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4f1; RMP_SpwCredit;;0xF1;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4f2; RMP_SpwEscape;;0xF2;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4f3; RMP_SpwDisconnect;;0xF3;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4f4; RMP_SpwParity;;0xF4;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4f5; RMP_SpwWriteSync;;0xF5;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4f6; RMP_SpwInvalidAddress;;0xF6;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4f7; RMP_SpwEarlyEop;;0xF7;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4f8; RMP_SpwDma;;0xF8;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4f9; RMP_SpwLinkError;;0xF9;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x400; RMP_ReplyOk;;0;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x401; RMP_ReplyGeneralErrorCode;;1;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x402; RMP_ReplyUnusedPacketTypeOrCommandCode;;2;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x403; RMP_ReplyInvalidKey;;3;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x404; RMP_ReplyInvalidDataCrc;;4;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x405; RMP_ReplyEarlyEop;;5;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x406; RMP_ReplyTooMuchData;;6;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x407; RMP_ReplyEep;;7;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x408; RMP_ReplyReserved;;8;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x409; RMP_ReplyVerifyBufferOverrun;;9;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x40a; RMP_ReplyCommandNotImplementedOrNotAuthorised;;10;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x40b; RMP_ReplyRmwDataLengthError;;11;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x40c; RMP_ReplyInvalidTargetLogicalAddress;;12;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x2701; SM_DataTooLarge;;1;fsfw/src/fsfw/storagemanager/StorageManagerIF.h;STORAGE_MANAGER_IF
0x2702; SM_DataStorageFull;;2;fsfw/src/fsfw/storagemanager/StorageManagerIF.h;STORAGE_MANAGER_IF
0x2703; SM_IllegalStorageId;;3;fsfw/src/fsfw/storagemanager/StorageManagerIF.h;STORAGE_MANAGER_IF
0x2704; SM_DataDoesNotExist;;4;fsfw/src/fsfw/storagemanager/StorageManagerIF.h;STORAGE_MANAGER_IF
0x2705; SM_IllegalAddress;;5;fsfw/src/fsfw/storagemanager/StorageManagerIF.h;STORAGE_MANAGER_IF
0x2706; SM_PoolTooLarge;;6;fsfw/src/fsfw/storagemanager/StorageManagerIF.h;STORAGE_MANAGER_IF
0x37a1; SGP4_InvalidEccentricity;;0xA1;fsfw/src/fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS
0x37a2; SGP4_InvalidMeanMotion;;0xA2;fsfw/src/fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS
0x37a3; SGP4_InvalidPerturbationElements;;0xA3;fsfw/src/fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS
0x37a4; SGP4_InvalidSemiLatusRectum;;0xA4;fsfw/src/fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS
0x37a5; SGP4_InvalidEpochElements;;0xA5;fsfw/src/fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS
0x37a6; SGP4_SatelliteHasDecayed;;0xA6;fsfw/src/fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS
0x37b1; SGP4_TleTooOld;;0xB1;fsfw/src/fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS
0x37b2; SGP4_TleNotInitialized;;0xB2;fsfw/src/fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS
0x2301; MT_TooDetailedRequest;;1;fsfw/src/fsfw/globalfunctions/matching/MatchTree.h;MATCH_TREE_CLASS
0x2302; MT_TooGeneralRequest;;2;fsfw/src/fsfw/globalfunctions/matching/MatchTree.h;MATCH_TREE_CLASS
0x2303; MT_NoMatch;;3;fsfw/src/fsfw/globalfunctions/matching/MatchTree.h;MATCH_TREE_CLASS
0x2304; MT_Full;;4;fsfw/src/fsfw/globalfunctions/matching/MatchTree.h;MATCH_TREE_CLASS
0x2305; MT_NewNodeCreated;;5;fsfw/src/fsfw/globalfunctions/matching/MatchTree.h;MATCH_TREE_CLASS
0x3e01; DLEE_StreamTooShort;;0x01;fsfw/src/fsfw/globalfunctions/DleEncoder.h;DLE_ENCODER
0x3e02; DLEE_DecodingError;;0x02;fsfw/src/fsfw/globalfunctions/DleEncoder.h;DLE_ENCODER
0x2e01; ASC_TooLongForTargetType;;1;fsfw/src/fsfw/globalfunctions/AsciiConverter.h;ASCII_CONVERTER
0x2e02; ASC_InvalidCharacters;;2;fsfw/src/fsfw/globalfunctions/AsciiConverter.h;ASCII_CONVERTER
0x2e03; ASC_BufferTooSmall;;0x3;fsfw/src/fsfw/globalfunctions/AsciiConverter.h;ASCII_CONVERTER
0xf01; CM_UnknownCommand;;1;fsfw/src/fsfw/ipc/CommandMessageIF.h;COMMAND_MESSAGE
0x3901; MQI_Empty;;1;fsfw/src/fsfw/ipc/MessageQueueIF.h;MESSAGE_QUEUE_IF
0x3902; MQI_Full;No space left for more messages;2;fsfw/src/fsfw/ipc/MessageQueueIF.h;MESSAGE_QUEUE_IF
0x3903; MQI_NoReplyPartner;Returned if a reply method was called without partner;3;fsfw/src/fsfw/ipc/MessageQueueIF.h;MESSAGE_QUEUE_IF
0x3904; MQI_DestinationInvalid;Returned if the target destination is invalid.;4;fsfw/src/fsfw/ipc/MessageQueueIF.h;MESSAGE_QUEUE_IF
0x3801; MUX_NotEnoughResources;;1;fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x3802; MUX_InsufficientMemory;;2;fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x3803; MUX_NoPrivilege;;3;fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x3804; MUX_WrongAttributeSetting;;4;fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x3805; MUX_MutexAlreadyLocked;;5;fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x3806; MUX_MutexNotFound;;6;fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x3807; MUX_MutexMaxLocks;;7;fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x3808; MUX_CurrThreadAlreadyOwnsMutex;;8;fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x3809; MUX_CurrThreadDoesNotOwnMutex;;9;fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x380a; MUX_MutexTimeout;;10;fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x380b; MUX_MutexInvalidId;;11;fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x380c; MUX_MutexDestroyedWhileWaiting;;12;fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x3a01; SPH_SemaphoreTimeout;;1;fsfw/src/fsfw/tasks/SemaphoreIF.h;SEMAPHORE_IF
0x3a02; SPH_SemaphoreNotOwned;;2;fsfw/src/fsfw/tasks/SemaphoreIF.h;SEMAPHORE_IF
0x3a03; SPH_SemaphoreInvalid;;3;fsfw/src/fsfw/tasks/SemaphoreIF.h;SEMAPHORE_IF
0x3501; CFDP_InvalidTlvType;;1;fsfw/src/fsfw/cfdp/definitions.h;CFDP
0x3502; CFDP_InvalidDirectiveFields;;2;fsfw/src/fsfw/cfdp/definitions.h;CFDP
0x3503; CFDP_InvalidPduDatafieldLen;;3;fsfw/src/fsfw/cfdp/definitions.h;CFDP
0x3504; CFDP_InvalidAckDirectiveFields;;4;fsfw/src/fsfw/cfdp/definitions.h;CFDP
0x3505; CFDP_MetadataCantParseOptions;;5;fsfw/src/fsfw/cfdp/definitions.h;CFDP
0x3506; CFDP_FinishedCantParseFsResponses;;6;fsfw/src/fsfw/cfdp/definitions.h;CFDP
0x3508; CFDP_FilestoreRequiresSecondFile;;8;fsfw/src/fsfw/cfdp/definitions.h;CFDP
0x3509; CFDP_FilestoreResponseCantParseFsMessage;;9;fsfw/src/fsfw/cfdp/definitions.h;CFDP
0x2801; TC_InvalidTargetState;;1;fsfw/src/fsfw/thermal/ThermalComponentIF.h;THERMAL_COMPONENT_IF
0x28f1; TC_AboveOperationalLimit;;0xF1;fsfw/src/fsfw/thermal/ThermalComponentIF.h;THERMAL_COMPONENT_IF
0x28f2; TC_BelowOperationalLimit;;0xF2;fsfw/src/fsfw/thermal/ThermalComponentIF.h;THERMAL_COMPONENT_IF
0xc02; MS_InvalidEntry;;0x02;fsfw/src/fsfw/subsystem/modes/ModeStoreIF.h;MODE_STORE_IF
0xc03; MS_TooManyElements;;0x03;fsfw/src/fsfw/subsystem/modes/ModeStoreIF.h;MODE_STORE_IF
0xc04; MS_CantStoreEmpty;;0x04;fsfw/src/fsfw/subsystem/modes/ModeStoreIF.h;MODE_STORE_IF
0xd01; SS_SequenceAlreadyExists;;0x01;fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xd02; SS_TableAlreadyExists;;0x02;fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xd03; SS_TableDoesNotExist;;0x03;fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xd04; SS_TableOrSequenceLengthInvalid;;0x04;fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xd05; SS_SequenceDoesNotExist;;0x05;fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xd06; SS_TableContainsInvalidObjectId;;0x06;fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xd07; SS_FallbackSequenceDoesNotExist;;0x07;fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xd08; SS_NoTargetTable;;0x08;fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xd09; SS_SequenceOrTableTooLong;;0x09;fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xd0b; SS_IsFallbackSequence;;0x0B;fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xd0c; SS_AccessDenied;;0x0C;fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xd0e; SS_TableInUse;;0x0E;fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xda1; SS_TargetTableNotReached;;0xA1;fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xda2; SS_TableCheckFailed;;0xA2;fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xb01; SB_ChildNotFound;;0x01;fsfw/src/fsfw/subsystem/SubsystemBase.h;SUBSYSTEM_BASE
0xb02; SB_ChildInfoUpdated;;0x02;fsfw/src/fsfw/subsystem/SubsystemBase.h;SUBSYSTEM_BASE
0xb03; SB_ChildDoesntHaveModes;;0x03;fsfw/src/fsfw/subsystem/SubsystemBase.h;SUBSYSTEM_BASE
0xb04; SB_CouldNotInsertChild;;0x04;fsfw/src/fsfw/subsystem/SubsystemBase.h;SUBSYSTEM_BASE
0xb05; SB_TableContainsInvalidObjectId;;0x05;fsfw/src/fsfw/subsystem/SubsystemBase.h;SUBSYSTEM_BASE
0x3d00; HKM_QueueOrDestinationInvalid;;0;fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h;HOUSEKEEPING_MANAGER
0x3d01; HKM_WrongHkPacketType;;1;fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h;HOUSEKEEPING_MANAGER
0x3d02; HKM_ReportingStatusUnchanged;;2;fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h;HOUSEKEEPING_MANAGER
0x3d03; HKM_PeriodicHelperInvalid;;3;fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h;HOUSEKEEPING_MANAGER
0x3d04; HKM_PoolobjectNotFound;;4;fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h;HOUSEKEEPING_MANAGER
0x3d05; HKM_DatasetNotFound;;5;fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h;HOUSEKEEPING_MANAGER
0x3b00; LPIF_PoolEntryNotFound;;0x00;fsfw/src/fsfw/datapoollocal/localPoolDefinitions.h;LOCAL_POOL_OWNER_IF
0x3b01; LPIF_PoolEntryTypeConflict;;0x01;fsfw/src/fsfw/datapoollocal/localPoolDefinitions.h;LOCAL_POOL_OWNER_IF
0x3ca0; PVA_InvalidReadWriteMode;;0xA0;fsfw/src/fsfw/datapool/PoolVariableIF.h;POOL_VARIABLE_IF
0x3ca1; PVA_InvalidPoolEntry;;0xA1;fsfw/src/fsfw/datapool/PoolVariableIF.h;POOL_VARIABLE_IF
0x801; DPS_InvalidParameterDefinition;;1;fsfw/src/fsfw/datapool/DataSetIF.h;DATA_SET_CLASS
0x802; DPS_SetWasAlreadyRead;;2;fsfw/src/fsfw/datapool/DataSetIF.h;DATA_SET_CLASS
0x803; DPS_CommitingWithoutReading;;3;fsfw/src/fsfw/datapool/DataSetIF.h;DATA_SET_CLASS
0x804; DPS_DataSetUninitialised;;4;fsfw/src/fsfw/datapool/DataSetIF.h;DATA_SET_CLASS
0x805; DPS_DataSetFull;;5;fsfw/src/fsfw/datapool/DataSetIF.h;DATA_SET_CLASS
0x806; DPS_PoolVarNull;;6;fsfw/src/fsfw/datapool/DataSetIF.h;DATA_SET_CLASS
0x1000; TIM_UnsupportedTimeFormat;;0;fsfw/src/fsfw/timemanager/CCSDSTime.h;CCSDS_TIME_HELPER_CLASS
0x1001; TIM_NotEnoughInformationForTargetFormat;;1;fsfw/src/fsfw/timemanager/CCSDSTime.h;CCSDS_TIME_HELPER_CLASS
0x1002; TIM_LengthMismatch;;2;fsfw/src/fsfw/timemanager/CCSDSTime.h;CCSDS_TIME_HELPER_CLASS
0x1003; TIM_InvalidTimeFormat;;3;fsfw/src/fsfw/timemanager/CCSDSTime.h;CCSDS_TIME_HELPER_CLASS
0x1004; TIM_InvalidDayOfYear;;4;fsfw/src/fsfw/timemanager/CCSDSTime.h;CCSDS_TIME_HELPER_CLASS
0x1005; TIM_TimeDoesNotFitFormat;;5;fsfw/src/fsfw/timemanager/CCSDSTime.h;CCSDS_TIME_HELPER_CLASS
0x3601; TSI_BadTimestamp;;1;fsfw/src/fsfw/timemanager/TimeStamperIF.h;TIME_STAMPER_IF
0x1d01; PUS_ActivityStarted;;1;fsfw/src/fsfw/tmtcservices/AcceptsTelecommandsIF.h;ACCEPTS_TELECOMMANDS_IF
0x1d02; PUS_InvalidSubservice;;2;fsfw/src/fsfw/tmtcservices/AcceptsTelecommandsIF.h;ACCEPTS_TELECOMMANDS_IF
0x1d03; PUS_IllegalApplicationData;;3;fsfw/src/fsfw/tmtcservices/AcceptsTelecommandsIF.h;ACCEPTS_TELECOMMANDS_IF
0x1d04; PUS_SendTmFailed;;4;fsfw/src/fsfw/tmtcservices/AcceptsTelecommandsIF.h;ACCEPTS_TELECOMMANDS_IF
0x1d05; PUS_Timeout;;5;fsfw/src/fsfw/tmtcservices/AcceptsTelecommandsIF.h;ACCEPTS_TELECOMMANDS_IF
0x4b00; SPPA_NoPacketFound;;0x00;fsfw/src/fsfw/tmtcservices/SpacePacketParser.h;SPACE_PACKET_PARSER
0x4b01; SPPA_SplitPacket;;0x01;fsfw/src/fsfw/tmtcservices/SpacePacketParser.h;SPACE_PACKET_PARSER
0x1f01; CSB_ExecutionComplete;;1;fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE
0x1f02; CSB_NoStepMessage;;2;fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE
0x1f03; CSB_ObjectBusy;;3;fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE
0x1f04; CSB_Busy;;4;fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE
0x1f05; CSB_InvalidTc;;5;fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE
0x1f06; CSB_InvalidObject;;6;fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE
0x1f07; CSB_InvalidReply;;7;fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE
0x1101; AL_Full;;0x01;fsfw/src/fsfw/container/ArrayList.h;ARRAY_LIST
0x1801; FF_Full;;1;fsfw/src/fsfw/container/FIFOBase.h;FIFO_CLASS
0x1802; FF_Empty;;2;fsfw/src/fsfw/container/FIFOBase.h;FIFO_CLASS
0x1601; FMM_MapFull;;0x01;fsfw/src/fsfw/container/FixedOrderedMultimap.h;FIXED_MULTIMAP
0x1602; FMM_KeyDoesNotExist;;0x02;fsfw/src/fsfw/container/FixedOrderedMultimap.h;FIXED_MULTIMAP
0x1501; FM_KeyAlreadyExists;;0x01;fsfw/src/fsfw/container/FixedMap.h;FIXED_MAP
0x1502; FM_MapFull;;0x02;fsfw/src/fsfw/container/FixedMap.h;FIXED_MAP
0x1503; FM_KeyDoesNotExist;;0x03;fsfw/src/fsfw/container/FixedMap.h;FIXED_MAP
0x2401; EV_ListenerNotFound;;1;fsfw/src/fsfw/events/EventManagerIF.h;EVENT_MANAGER_IF
0x1701; HHI_ObjectNotHealthy;;1;fsfw/src/fsfw/health/HasHealthIF.h;HAS_HEALTH_IF
0x1702; HHI_InvalidHealthState;;2;fsfw/src/fsfw/health/HasHealthIF.h;HAS_HEALTH_IF
0x2f01; POS_InPowerTransition;;1;fsfw/src/fsfw/power/PowerSwitcher.h;POWER_SWITCHER
0x2f02; POS_SwitchStateMismatch;;2;fsfw/src/fsfw/power/PowerSwitcher.h;POWER_SWITCHER
0x501; PS_SwitchOn;;1;fsfw/src/fsfw/power/PowerSwitchIF.h;POWER_SWITCH_IF
0x500; PS_SwitchOff;;0;fsfw/src/fsfw/power/PowerSwitchIF.h;POWER_SWITCH_IF
0x502; PS_SwitchTimeout;;2;fsfw/src/fsfw/power/PowerSwitchIF.h;POWER_SWITCH_IF
0x503; PS_FuseOn;;3;fsfw/src/fsfw/power/PowerSwitchIF.h;POWER_SWITCH_IF
0x504; PS_FuseOff;;4;fsfw/src/fsfw/power/PowerSwitchIF.h;POWER_SWITCH_IF
0x1a01; TRC_NotEnoughSensors;;1;fsfw/src/fsfw/monitoring/TriplexMonitor.h;TRIPLE_REDUNDACY_CHECK
0x1a02; TRC_LowestValueOol;;2;fsfw/src/fsfw/monitoring/TriplexMonitor.h;TRIPLE_REDUNDACY_CHECK
0x1a03; TRC_HighestValueOol;;3;fsfw/src/fsfw/monitoring/TriplexMonitor.h;TRIPLE_REDUNDACY_CHECK
0x1a04; TRC_BothValuesOol;;4;fsfw/src/fsfw/monitoring/TriplexMonitor.h;TRIPLE_REDUNDACY_CHECK
0x1a05; TRC_DuplexOol;;5;fsfw/src/fsfw/monitoring/TriplexMonitor.h;TRIPLE_REDUNDACY_CHECK
0x3001; LIM_Unchecked;;1;fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x3002; LIM_Invalid;;2;fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x3003; LIM_Unselected;;3;fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x3004; LIM_BelowLowLimit;;4;fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x3005; LIM_AboveHighLimit;;5;fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x3006; LIM_UnexpectedValue;;6;fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x3007; LIM_OutOfRange;;7;fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x30a0; LIM_FirstSample;;0xA0;fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x30e0; LIM_InvalidSize;;0xE0;fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x30e1; LIM_WrongType;;0xE1;fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x30e2; LIM_WrongPid;;0xE2;fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x30e3; LIM_WrongLimitId;;0xE3;fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x30ee; LIM_MonitorNotFound;;0xEE;fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x4101; PUS11_InvalidTypeTimeWindow;;1;fsfw/src/fsfw/pus/Service11TelecommandScheduling.h;PUS_SERVICE_11
0x4102; PUS11_TimeshiftingNotPossible;;2;fsfw/src/fsfw/pus/Service11TelecommandScheduling.h;PUS_SERVICE_11
0x4103; PUS11_InvalidRelativeTime;;3;fsfw/src/fsfw/pus/Service11TelecommandScheduling.h;PUS_SERVICE_11
0x4200; FILS_GenericFileError;;0;fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x4201; FILS_IsBusy;;1;fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x4202; FILS_InvalidParameters;;2;fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x4205; FILS_FileDoesNotExist;;5;fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x4206; FILS_FileAlreadyExists;;6;fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x4207; FILS_FileLocked;;7;fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x420a; FILS_DirectoryDoesNotExist;;10;fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x420b; FILS_DirectoryAlreadyExists;;11;fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x420c; FILS_DirectoryNotEmpty;;12;fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x420f; FILS_SequencePacketMissingWrite;;15;fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x4210; FILS_SequencePacketMissingRead;;16;fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x601; PP_DoItMyself;;1;fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x602; PP_PointsToVariable;;2;fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x603; PP_PointsToMemory;;3;fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x604; PP_ActivityCompleted;;4;fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x605; PP_PointsToVectorUint8;;5;fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x606; PP_PointsToVectorUint16;;6;fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x607; PP_PointsToVectorUint32;;7;fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x608; PP_PointsToVectorFloat;;8;fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x6a0; PP_DumpNotSupported;;0xA0;fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x6e0; PP_InvalidSize;;0xE0;fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x6e1; PP_InvalidAddress;;0xE1;fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x6e2; PP_InvalidContent;;0xE2;fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x6e3; PP_UnalignedAccess;;0xE3;fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x6e4; PP_WriteProtected;;0xE4;fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x13e0; MH_UnknownCmd;;0xE0;fsfw/src/fsfw/memory/MemoryHelper.h;MEMORY_HELPER
0x13e1; MH_InvalidAddress;;0xE1;fsfw/src/fsfw/memory/MemoryHelper.h;MEMORY_HELPER
0x13e2; MH_InvalidSize;;0xE2;fsfw/src/fsfw/memory/MemoryHelper.h;MEMORY_HELPER
0x13e3; MH_StateMismatch;;0xE3;fsfw/src/fsfw/memory/MemoryHelper.h;MEMORY_HELPER
0x1201; AB_NeedSecondStep;;0x01;fsfw/src/fsfw/devicehandlers/AssemblyBase.h;ASSEMBLY_BASE
0x1202; AB_NeedToReconfigure;;0x02;fsfw/src/fsfw/devicehandlers/AssemblyBase.h;ASSEMBLY_BASE
0x1203; AB_ModeFallback;;0x03;fsfw/src/fsfw/devicehandlers/AssemblyBase.h;ASSEMBLY_BASE
0x1204; AB_ChildNotCommandable;;0x04;fsfw/src/fsfw/devicehandlers/AssemblyBase.h;ASSEMBLY_BASE
0x1205; AB_NeedToChangeHealth;;0x05;fsfw/src/fsfw/devicehandlers/AssemblyBase.h;ASSEMBLY_BASE
0x12a1; AB_NotEnoughChildrenInCorrectState;;0xa1;fsfw/src/fsfw/devicehandlers/AssemblyBase.h;ASSEMBLY_BASE
0x3a0; DHB_InvalidChannel;;0xA0;fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x3b0; DHB_AperiodicReply;;0xB0;fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x3b1; DHB_IgnoreReplyData;;0xB1;fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x3b2; DHB_IgnoreFullPacket;;0xB2;fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x3c0; DHB_NothingToSend;;0xC0;fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x3c2; DHB_CommandMapError;;0xC2;fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x3d0; DHB_NoSwitch;;0xD0;fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x3e0; DHB_ChildTimeout;;0xE0;fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x3e1; DHB_SwitchFailed;;0xE1;fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x3301; DC_NoReplyReceived;;0x01;fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h;DEVICE_COMMUNICATION_IF
0x3302; DC_ProtocolError;;0x02;fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h;DEVICE_COMMUNICATION_IF
0x3303; DC_Nullpointer;;0x03;fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h;DEVICE_COMMUNICATION_IF
0x3304; DC_InvalidCookieType;;0x04;fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h;DEVICE_COMMUNICATION_IF
0x3305; DC_NotActive;;0x05;fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h;DEVICE_COMMUNICATION_IF
0x3306; DC_TooMuchData;;0x06;fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h;DEVICE_COMMUNICATION_IF
0x26a0; DHI_NoCommandData;;0xA0;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26a1; DHI_CommandNotSupported;;0xA1;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26a2; DHI_CommandAlreadySent;;0xA2;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26a3; DHI_CommandWasNotSent;;0xA3;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26a4; DHI_CantSwitchAddress;;0xA4;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26a5; DHI_WrongModeForCommand;;0xA5;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26a6; DHI_Timeout;;0xA6;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26a7; DHI_Busy;;0xA7;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26a8; DHI_NoReplyExpected;;0xA8;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26a9; DHI_NonOpTemperature;;0xA9;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26aa; DHI_CommandNotImplemented;;0xAA;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26b0; DHI_ChecksumError;;0xB0;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26b1; DHI_LengthMissmatch;;0xB1;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26b2; DHI_InvalidData;;0xB2;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26b3; DHI_ProtocolError;;0xB3;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26c0; DHI_DeviceDidNotExecute;;0xC0;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26c1; DHI_DeviceReportedError;;0xC1;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26c2; DHI_UnknownDeviceReply;;0xC2;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26c3; DHI_DeviceReplyInvalid;;0xC3;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26d0; DHI_InvalidCommandParameter;;0xD0;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26d1; DHI_InvalidNumberOrLengthOfParameters;;0xD1;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x1401; SE_BufferTooShort;;1;fsfw/src/fsfw/serialize/SerializeIF.h;SERIALIZE_IF
0x1402; SE_StreamTooShort;;2;fsfw/src/fsfw/serialize/SerializeIF.h;SERIALIZE_IF
0x1403; SE_TooManyElements;;3;fsfw/src/fsfw/serialize/SerializeIF.h;SERIALIZE_IF
0x2301;MT_TooDetailedRequest;;1;../../fsfw/globalfunctions/matching/MatchTree.h;MATCH_TREE_CLASS
0x2302;MT_TooGeneralRequest;;2;../../fsfw/globalfunctions/matching/MatchTree.h;MATCH_TREE_CLASS
0x2303;MT_NoMatch;;3;../../fsfw/globalfunctions/matching/MatchTree.h;MATCH_TREE_CLASS
0x2304;MT_Full;;4;../../fsfw/globalfunctions/matching/MatchTree.h;MATCH_TREE_CLASS
0x2305;MT_NewNodeCreated;;5;../../fsfw/globalfunctions/matching/MatchTree.h;MATCH_TREE_CLASS
0x2e01;ASC_TooLongForTargetType;;1;../../fsfw/globalfunctions/AsciiConverter.h;ASCII_CONVERTER
0x2e02;ASC_InvalidCharacters;;2;../../fsfw/globalfunctions/AsciiConverter.h;ASCII_CONVERTER
0x2e03;ASC_BufferTooSmall;;0x3;../../fsfw/globalfunctions/AsciiConverter.h;ASCII_CONVERTER
0x3d01;DLEE_StreamTooShort;;0x01;../../fsfw/globalfunctions/DleEncoder.h;DLE_ENCODER
0x3d02;DLEE_DecodingError;;0x02;../../fsfw/globalfunctions/DleEncoder.h;DLE_ENCODER
0x2101;TMF_Busy;;1;../../fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x2102;TMF_LastPacketFound;;2;../../fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x2103;TMF_StopFetch;;3;../../fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x2104;TMF_Timeout;;4;../../fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x2105;TMF_TmChannelFull;;5;../../fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x2106;TMF_NotStored;;6;../../fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x2107;TMF_AllDeleted;;7;../../fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x2108;TMF_InvalidData;;8;../../fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x2109;TMF_NotReady;;9;../../fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x2001;TMB_Busy;;1;../../fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x2002;TMB_Full;;2;../../fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x2003;TMB_Empty;;3;../../fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x2004;TMB_NullRequested;;4;../../fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x2005;TMB_TooLarge;;5;../../fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x2006;TMB_NotReady;;6;../../fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x2007;TMB_DumpError;;7;../../fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x2008;TMB_CrcError;;8;../../fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x2009;TMB_Timeout;;9;../../fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x200a;TMB_IdlePacketFound;;10;../../fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x200b;TMB_TelecommandFound;;11;../../fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x200c;TMB_NoPusATm;;12;../../fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x200d;TMB_TooSmall;;13;../../fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x200e;TMB_BlockNotFound;;14;../../fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x200f;TMB_InvalidRequest;;15;../../fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x3a0;DHB_InvalidChannel;;0xA0;../../fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x3b0;DHB_AperiodicReply;;0xB0;../../fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x3b1;DHB_IgnoreReplyData;;0xB1;../../fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x3b2;DHB_IgnoreFullPacket;;0xB2;../../fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x3c0;DHB_NothingToSend;;0xC0;../../fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x3c2;DHB_CommandMapError;;0xC2;../../fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x3d0;DHB_NoSwitch;;0xD0;../../fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x3e0;DHB_ChildTimeout;;0xE0;../../fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x3e1;DHB_SwitchFailed;;0xE1;../../fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x1201;AB_NeedSecondStep;;0x01;../../fsfw/devicehandlers/AssemblyBase.h;ASSEMBLY_BASE
0x1202;AB_NeedToReconfigure;;0x02;../../fsfw/devicehandlers/AssemblyBase.h;ASSEMBLY_BASE
0x1203;AB_ModeFallback;;0x03;../../fsfw/devicehandlers/AssemblyBase.h;ASSEMBLY_BASE
0x1204;AB_ChildNotCommandable;;0x04;../../fsfw/devicehandlers/AssemblyBase.h;ASSEMBLY_BASE
0x1205;AB_NeedToChangeHealth;;0x05;../../fsfw/devicehandlers/AssemblyBase.h;ASSEMBLY_BASE
0x12a1;AB_NotEnoughChildrenInCorrectState;;0xa1;../../fsfw/devicehandlers/AssemblyBase.h;ASSEMBLY_BASE
0x3301;DC_NoReplyReceived;;0x01;../../fsfw/devicehandlers/DeviceCommunicationIF.h;DEVICE_COMMUNICATION_IF
0x3302;DC_ProtocolError;;0x02;../../fsfw/devicehandlers/DeviceCommunicationIF.h;DEVICE_COMMUNICATION_IF
0x3303;DC_Nullpointer;;0x03;../../fsfw/devicehandlers/DeviceCommunicationIF.h;DEVICE_COMMUNICATION_IF
0x3304;DC_InvalidCookieType;;0x04;../../fsfw/devicehandlers/DeviceCommunicationIF.h;DEVICE_COMMUNICATION_IF
0x3305;DC_NotActive;;0x05;../../fsfw/devicehandlers/DeviceCommunicationIF.h;DEVICE_COMMUNICATION_IF
0x3306;DC_TooMuchData;;0x06;../../fsfw/devicehandlers/DeviceCommunicationIF.h;DEVICE_COMMUNICATION_IF
0x26a0;DHI_NoCommandData;;0xA0;../../fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26a1;DHI_CommandNotSupported;;0xA1;../../fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26a2;DHI_CommandAlreadySent;;0xA2;../../fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26a3;DHI_CommandWasNotSent;;0xA3;../../fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26a4;DHI_CantSwitchAddress;;0xA4;../../fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26a5;DHI_WrongModeForCommand;;0xA5;../../fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26a6;DHI_Timeout;;0xA6;../../fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26a7;DHI_Busy;;0xA7;../../fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26a8;DHI_NoReplyExpected;;0xA8;../../fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26a9;DHI_NonOpTemperature;;0xA9;../../fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26aa;DHI_CommandNotImplemented;;0xAA;../../fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26b0;DHI_ChecksumError;;0xB0;../../fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26b1;DHI_LengthMissmatch;;0xB1;../../fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26b2;DHI_InvalidData;;0xB2;../../fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26b3;DHI_ProtocolError;;0xB3;../../fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26c0;DHI_DeviceDidNotExecute;;0xC0;../../fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26c1;DHI_DeviceReportedError;;0xC1;../../fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26c2;DHI_UnknownDeviceReply;;0xC2;../../fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26c3;DHI_DeviceReplyInvalid;;0xC3;../../fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26d0;DHI_InvalidCommandParameter;;0xD0;../../fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26d1;DHI_InvalidNumberOrLengthOfParameters;;0xD1;../../fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x1401;SE_BufferTooShort;;1;../../fsfw/serialize/SerializeIF.h;SERIALIZE_IF
0x1402;SE_StreamTooShort;;2;../../fsfw/serialize/SerializeIF.h;SERIALIZE_IF
0x1403;SE_TooManyElements;;3;../../fsfw/serialize/SerializeIF.h;SERIALIZE_IF
0x3801;MQI_Empty;;1;../../fsfw/ipc/MessageQueueIF.h;MESSAGE_QUEUE_IF
0x3802;MQI_Full; No space left for more messages;2;../../fsfw/ipc/MessageQueueIF.h;MESSAGE_QUEUE_IF
0x3803;MQI_NoReplyPartner; Returned if a reply method was called without partner;3;../../fsfw/ipc/MessageQueueIF.h;MESSAGE_QUEUE_IF
0x3804;MQI_DestinationInvalid; Returned if the target destination is invalid.;4;../../fsfw/ipc/MessageQueueIF.h;MESSAGE_QUEUE_IF
0xf01;CM_UnknownCommand;;1;../../fsfw/ipc/CommandMessageIF.h;COMMAND_MESSAGE
0x3701;MUX_NotEnoughResources;;1;../../fsfw/ipc/MutexIF.h;MUTEX_IF
0x3702;MUX_InsufficientMemory;;2;../../fsfw/ipc/MutexIF.h;MUTEX_IF
0x3703;MUX_NoPrivilege;;3;../../fsfw/ipc/MutexIF.h;MUTEX_IF
0x3704;MUX_WrongAttributeSetting;;4;../../fsfw/ipc/MutexIF.h;MUTEX_IF
0x3705;MUX_MutexAlreadyLocked;;5;../../fsfw/ipc/MutexIF.h;MUTEX_IF
0x3706;MUX_MutexNotFound;;6;../../fsfw/ipc/MutexIF.h;MUTEX_IF
0x3707;MUX_MutexMaxLocks;;7;../../fsfw/ipc/MutexIF.h;MUTEX_IF
0x3708;MUX_CurrThreadAlreadyOwnsMutex;;8;../../fsfw/ipc/MutexIF.h;MUTEX_IF
0x3709;MUX_CurrThreadDoesNotOwnMutex;;9;../../fsfw/ipc/MutexIF.h;MUTEX_IF
0x370a;MUX_MutexTimeout;;10;../../fsfw/ipc/MutexIF.h;MUTEX_IF
0x370b;MUX_MutexInvalidId;;11;../../fsfw/ipc/MutexIF.h;MUTEX_IF
0x370c;MUX_MutexDestroyedWhileWaiting;;12;../../fsfw/ipc/MutexIF.h;MUTEX_IF
0x4e1;RMP_CommandNoDescriptorsAvailable;;0xE1;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4e2;RMP_CommandBufferFull;;0xE2;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4e3;RMP_CommandChannelOutOfRange;;0xE3;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4e6;RMP_CommandChannelDeactivated;;0xE6;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4e7;RMP_CommandPortOutOfRange;;0xE7;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4e8;RMP_CommandPortInUse;;0xE8;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4e9;RMP_CommandNoChannel;;0xE9;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4ea;RMP_NoHwCrc;;0xEA;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4d0;RMP_ReplyNoReply;;0xD0;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4d1;RMP_ReplyNotSent;;0xD1;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4d2;RMP_ReplyNotYetSent;;0xD2;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4d3;RMP_ReplyMissmatch;;0xD3;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4d4;RMP_ReplyTimeout;;0xD4;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4c0;RMP_ReplyInterfaceBusy;;0xC0;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4c1;RMP_ReplyTransmissionError;;0xC1;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4c2;RMP_ReplyInvalidData;;0xC2;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4c3;RMP_ReplyNotSupported;;0xC3;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4f0;RMP_LinkDown;;0xF0;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4f1;RMP_SpwCredit;;0xF1;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4f2;RMP_SpwEscape;;0xF2;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4f3;RMP_SpwDisconnect;;0xF3;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4f4;RMP_SpwParity;;0xF4;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4f5;RMP_SpwWriteSync;;0xF5;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4f6;RMP_SpwInvalidAddress;;0xF6;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4f7;RMP_SpwEarlyEop;;0xF7;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4f8;RMP_SpwDma;;0xF8;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4f9;RMP_SpwLinkError;;0xF9;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x400;RMP_ReplyOk;;0;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x401;RMP_ReplyGeneralErrorCode;;1;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x402;RMP_ReplyUnusedPacketTypeOrCommandCode;;2;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x403;RMP_ReplyInvalidKey;;3;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x404;RMP_ReplyInvalidDataCrc;;4;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x405;RMP_ReplyEarlyEop;;5;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x406;RMP_ReplyTooMuchData;;6;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x407;RMP_ReplyEep;;7;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x408;RMP_ReplyReserved;;8;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x409;RMP_ReplyVerifyBufferOverrun;;9;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x40a;RMP_ReplyCommandNotImplementedOrNotAuthorised;;10;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x40b;RMP_ReplyRmwDataLengthError;;11;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x40c;RMP_ReplyInvalidTargetLogicalAddress;;12;../../fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x1c01;TCD_PacketLost;;1;../../fsfw/tcdistribution/TcDistributor.h;PACKET_DISTRIBUTION
0x1c02;TCD_DestinationNotFound;;2;../../fsfw/tcdistribution/TcDistributor.h;PACKET_DISTRIBUTION
0x1c03;TCD_ServiceIdAlreadyExists;;3;../../fsfw/tcdistribution/TcDistributor.h;PACKET_DISTRIBUTION
0x1b00;TCC_IllegalApid;;0;../../fsfw/tcdistribution/TcPacketCheck.h;TC_PACKET_CHECK
0x1b01;TCC_IncompletePacket;;1;../../fsfw/tcdistribution/TcPacketCheck.h;TC_PACKET_CHECK
0x1b02;TCC_IncorrectChecksum;;2;../../fsfw/tcdistribution/TcPacketCheck.h;TC_PACKET_CHECK
0x1b03;TCC_IllegalPacketType;;3;../../fsfw/tcdistribution/TcPacketCheck.h;TC_PACKET_CHECK
0x1b04;TCC_IllegalPacketSubtype;;4;../../fsfw/tcdistribution/TcPacketCheck.h;TC_PACKET_CHECK
0x1b05;TCC_IncorrectPrimaryHeader;;5;../../fsfw/tcdistribution/TcPacketCheck.h;TC_PACKET_CHECK
0x1b06;TCC_IncorrectSecondaryHeader;;6;../../fsfw/tcdistribution/TcPacketCheck.h;TC_PACKET_CHECK
0x3101;CF_ObjectHasNoFunctions;;1;../../fsfw/action/CommandsActionsIF.h;COMMANDS_ACTIONS_IF
0x3102;CF_AlreadyCommanding;;2;../../fsfw/action/CommandsActionsIF.h;COMMANDS_ACTIONS_IF
0x3201;HF_IsBusy;;1;../../fsfw/action/HasActionsIF.h;HAS_ACTIONS_IF
0x3202;HF_InvalidParameters;;2;../../fsfw/action/HasActionsIF.h;HAS_ACTIONS_IF
0x3203;HF_ExecutionFinished;;3;../../fsfw/action/HasActionsIF.h;HAS_ACTIONS_IF
0x3204;HF_InvalidActionId;;4;../../fsfw/action/HasActionsIF.h;HAS_ACTIONS_IF
0x601;PP_DoItMyself;;1;../../fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x602;PP_PointsToVariable;;2;../../fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x603;PP_PointsToMemory;;3;../../fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x604;PP_ActivityCompleted;;4;../../fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x605;PP_PointsToVectorUint8;;5;../../fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x606;PP_PointsToVectorUint16;;6;../../fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x607;PP_PointsToVectorUint32;;7;../../fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x608;PP_PointsToVectorFloat;;8;../../fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x6a0;PP_DumpNotSupported;;0xA0;../../fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x6e0;PP_InvalidSize;;0xE0;../../fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x6e1;PP_InvalidAddress;;0xE1;../../fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x6e2;PP_InvalidContent;;0xE2;../../fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x6e3;PP_UnalignedAccess;;0xE3;../../fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x6e4;PP_WriteProtected;;0xE4;../../fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x13e0;MH_UnknownCmd;;0xE0;../../fsfw/memory/MemoryHelper.h;MEMORY_HELPER
0x13e1;MH_InvalidAddress;;0xE1;../../fsfw/memory/MemoryHelper.h;MEMORY_HELPER
0x13e2;MH_InvalidSize;;0xE2;../../fsfw/memory/MemoryHelper.h;MEMORY_HELPER
0x13e3;MH_StateMismatch;;0xE3;../../fsfw/memory/MemoryHelper.h;MEMORY_HELPER
0x4000;FILS_GenericFileError;;0;../../fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x4001;FILS_IsBusy;;1;../../fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x4002;FILS_InvalidParameters;;2;../../fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x4005;FILS_FileDoesNotExist;;5;../../fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x4006;FILS_FileAlreadyExists;;6;../../fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x4007;FILS_FileLocked;;7;../../fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x400a;FILS_DirectoryDoesNotExist;;10;../../fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x400b;FILS_DirectoryAlreadyExists;;11;../../fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x400c;FILS_DirectoryNotEmpty;;12;../../fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x400f;FILS_SequencePacketMissingWrite;;15;../../fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x4010;FILS_SequencePacketMissingRead;;16;../../fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x2901;IEC_NoConfigurationTable;;0x01;../../fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2902;IEC_NoCpuTable;;0x02;../../fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2903;IEC_InvalidWorkspaceAddress;;0x03;../../fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2904;IEC_TooLittleWorkspace;;0x04;../../fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2905;IEC_WorkspaceAllocation;;0x05;../../fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2906;IEC_InterruptStackTooSmall;;0x06;../../fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2907;IEC_ThreadExitted;;0x07;../../fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2908;IEC_InconsistentMpInformation;;0x08;../../fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2909;IEC_InvalidNode;;0x09;../../fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x290a;IEC_NoMpci;;0x0a;../../fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x290b;IEC_BadPacket;;0x0b;../../fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x290c;IEC_OutOfPackets;;0x0c;../../fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x290d;IEC_OutOfGlobalObjects;;0x0d;../../fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x290e;IEC_OutOfProxies;;0x0e;../../fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x290f;IEC_InvalidGlobalId;;0x0f;../../fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2910;IEC_BadStackHook;;0x10;../../fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2911;IEC_BadAttributes;;0x11;../../fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2912;IEC_ImplementationKeyCreateInconsistency;;0x12;../../fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2913;IEC_ImplementationBlockingOperationCancel;;0x13;../../fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2914;IEC_MutexObtainFromBadState;;0x14;../../fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2915;IEC_UnlimitedAndMaximumIs0;;0x15;../../fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x1d01;PUS_ActivityStarted;;1;../../fsfw/tmtcservices/AcceptsTelecommandsIF.h;ACCEPTS_TELECOMMANDS_IF
0x1d02;PUS_InvalidSubservice;;2;../../fsfw/tmtcservices/AcceptsTelecommandsIF.h;ACCEPTS_TELECOMMANDS_IF
0x1d03;PUS_IllegalApplicationData;;3;../../fsfw/tmtcservices/AcceptsTelecommandsIF.h;ACCEPTS_TELECOMMANDS_IF
0x1d04;PUS_SendTmFailed;;4;../../fsfw/tmtcservices/AcceptsTelecommandsIF.h;ACCEPTS_TELECOMMANDS_IF
0x1d05;PUS_Timeout;;5;../../fsfw/tmtcservices/AcceptsTelecommandsIF.h;ACCEPTS_TELECOMMANDS_IF
0x1f01;CSB_ExecutionComplete;;1;../../fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE
0x1f02;CSB_NoStepMessage;;2;../../fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE
0x1f03;CSB_ObjectBusy;;3;../../fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE
0x1f04;CSB_Busy;;4;../../fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE
0x1f05;CSB_InvalidTc;;5;../../fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE
0x1f06;CSB_InvalidObject;;6;../../fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE
0x1f07;CSB_InvalidReply;;7;../../fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE
0x801;DPS_InvalidParameterDefinition;;1;../../fsfw/datapool/DataSetIF.h;DATA_SET_CLASS
0x802;DPS_SetWasAlreadyRead;;2;../../fsfw/datapool/DataSetIF.h;DATA_SET_CLASS
0x803;DPS_CommitingWithoutReading;;3;../../fsfw/datapool/DataSetIF.h;DATA_SET_CLASS
0x804;DPS_DataSetUninitialised;;4;../../fsfw/datapool/DataSetIF.h;DATA_SET_CLASS
0x805;DPS_DataSetFull;;5;../../fsfw/datapool/DataSetIF.h;DATA_SET_CLASS
0x806;DPS_PoolVarNull;;6;../../fsfw/datapool/DataSetIF.h;DATA_SET_CLASS
0x3ba0;PVA_InvalidReadWriteMode;;0xA0;../../fsfw/datapool/PoolVariableIF.h;POOL_VARIABLE_IF
0x3ba1;PVA_InvalidPoolEntry;;0xA1;../../fsfw/datapool/PoolVariableIF.h;POOL_VARIABLE_IF
0x2500;FDI_YourFault;;0;../../fsfw/fdir/ConfirmsFailuresIF.h;HANDLES_FAILURES_IF
0x2501;FDI_MyFault;;1;../../fsfw/fdir/ConfirmsFailuresIF.h;HANDLES_FAILURES_IF
0x2502;FDI_ConfirmLater;;2;../../fsfw/fdir/ConfirmsFailuresIF.h;HANDLES_FAILURES_IF
0x36a1;SGP4_InvalidEccentricity;;0xA1;../../fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS
0x36a2;SGP4_InvalidMeanMotion;;0xA2;../../fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS
0x36a3;SGP4_InvalidPerturbationElements;;0xA3;../../fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS
0x36a4;SGP4_InvalidSemiLatusRectum;;0xA4;../../fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS
0x36a5;SGP4_InvalidEpochElements;;0xA5;../../fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS
0x36a6;SGP4_SatelliteHasDecayed;;0xA6;../../fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS
0x36b1;SGP4_TleTooOld;;0xB1;../../fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS
0x36b2;SGP4_TleNotInitialized;;0xB2;../../fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS
0x2401;EV_ListenerNotFound;;1;../../fsfw/events/EventManagerIF.h;EVENT_MANAGER_IF
0x1101;AL_Full;;0x01;../../fsfw/container/ArrayList.h;ARRAY_LIST
0x1601;FMM_MapFull;;0x01;../../fsfw/container/FixedOrderedMultimap.h;FIXED_MULTIMAP
0x1602;FMM_KeyDoesNotExist;;0x02;../../fsfw/container/FixedOrderedMultimap.h;FIXED_MULTIMAP
0x1801;FF_Full;;1;../../fsfw/container/FIFOBase.h;FIFO_CLASS
0x1802;FF_Empty;;2;../../fsfw/container/FIFOBase.h;FIFO_CLASS
0x1501;FM_KeyAlreadyExists;;0x01;../../fsfw/container/FixedMap.h;FIXED_MAP
0x1502;FM_MapFull;;0x02;../../fsfw/container/FixedMap.h;FIXED_MAP
0x1503;FM_KeyDoesNotExist;;0x03;../../fsfw/container/FixedMap.h;FIXED_MAP
0xe01;HM_InvalidMode;;0x01;../../fsfw/modes/HasModesIF.h;HAS_MODES_IF
0xe02;HM_TransNotAllowed;;0x02;../../fsfw/modes/HasModesIF.h;HAS_MODES_IF
0xe03;HM_InTransition;;0x03;../../fsfw/modes/HasModesIF.h;HAS_MODES_IF
0xe04;HM_InvalidSubmode;;0x04;../../fsfw/modes/HasModesIF.h;HAS_MODES_IF
0x201;OM_InsertionFailed;;1;../../fsfw/objectmanager/ObjectManagerIF.h;OBJECT_MANAGER_IF
0x202;OM_NotFound;;2;../../fsfw/objectmanager/ObjectManagerIF.h;OBJECT_MANAGER_IF
0x203;OM_ChildInitFailed;;3;../../fsfw/objectmanager/ObjectManagerIF.h;OBJECT_MANAGER_IF
0x204;OM_InternalErrReporterUninit;;4;../../fsfw/objectmanager/ObjectManagerIF.h;OBJECT_MANAGER_IF
0x1000;TIM_UnsupportedTimeFormat;;0;../../fsfw/timemanager/CCSDSTime.h;CCSDS_TIME_HELPER_CLASS
0x1001;TIM_NotEnoughInformationForTargetFormat;;1;../../fsfw/timemanager/CCSDSTime.h;CCSDS_TIME_HELPER_CLASS
0x1002;TIM_LengthMismatch;;2;../../fsfw/timemanager/CCSDSTime.h;CCSDS_TIME_HELPER_CLASS
0x1003;TIM_InvalidTimeFormat;;3;../../fsfw/timemanager/CCSDSTime.h;CCSDS_TIME_HELPER_CLASS
0x1004;TIM_InvalidDayOfYear;;4;../../fsfw/timemanager/CCSDSTime.h;CCSDS_TIME_HELPER_CLASS
0x1005;TIM_TimeDoesNotFitFormat;;5;../../fsfw/timemanager/CCSDSTime.h;CCSDS_TIME_HELPER_CLASS
0x3501;TSI_BadTimestamp;;1;../../fsfw/timemanager/TimeStamperIF.h;TIME_STAMPER_IF
0x1a01;TRC_NotEnoughSensors;;1;../../fsfw/monitoring/TriplexMonitor.h;TRIPLE_REDUNDACY_CHECK
0x1a02;TRC_LowestValueOol;;2;../../fsfw/monitoring/TriplexMonitor.h;TRIPLE_REDUNDACY_CHECK
0x1a03;TRC_HighestValueOol;;3;../../fsfw/monitoring/TriplexMonitor.h;TRIPLE_REDUNDACY_CHECK
0x1a04;TRC_BothValuesOol;;4;../../fsfw/monitoring/TriplexMonitor.h;TRIPLE_REDUNDACY_CHECK
0x1a05;TRC_DuplexOol;;5;../../fsfw/monitoring/TriplexMonitor.h;TRIPLE_REDUNDACY_CHECK
0x3001;LIM_Unchecked;;1;../../fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x3002;LIM_Invalid;;2;../../fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x3003;LIM_Unselected;;3;../../fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x3004;LIM_BelowLowLimit;;4;../../fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x3005;LIM_AboveHighLimit;;5;../../fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x3006;LIM_UnexpectedValue;;6;../../fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x3007;LIM_OutOfRange;;7;../../fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x30a0;LIM_FirstSample;;0xA0;../../fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x30e0;LIM_InvalidSize;;0xE0;../../fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x30e1;LIM_WrongType;;0xE1;../../fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x30e2;LIM_WrongPid;;0xE2;../../fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x30e3;LIM_WrongLimitId;;0xE3;../../fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x30ee;LIM_MonitorNotFound;;0xEE;../../fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x3a00;LPIF_PoolEntryNotFound;;0x00;../../fsfw/datapoollocal/localPoolDefinitions.h;LOCAL_POOL_OWNER_IF
0x3a01;LPIF_PoolEntryTypeConflict;;0x01;../../fsfw/datapoollocal/localPoolDefinitions.h;LOCAL_POOL_OWNER_IF
0x3c00;HKM_QueueOrDestinationInvalid;;0;../../fsfw/datapoollocal/LocalDataPoolManager.h;HOUSEKEEPING_MANAGER
0x3c01;HKM_WrongHkPacketType;;1;../../fsfw/datapoollocal/LocalDataPoolManager.h;HOUSEKEEPING_MANAGER
0x3c02;HKM_ReportingStatusUnchanged;;2;../../fsfw/datapoollocal/LocalDataPoolManager.h;HOUSEKEEPING_MANAGER
0x3c03;HKM_PeriodicHelperInvalid;;3;../../fsfw/datapoollocal/LocalDataPoolManager.h;HOUSEKEEPING_MANAGER
0x3c04;HKM_PoolobjectNotFound;;4;../../fsfw/datapoollocal/LocalDataPoolManager.h;HOUSEKEEPING_MANAGER
0x3c05;HKM_DatasetNotFound;;5;../../fsfw/datapoollocal/LocalDataPoolManager.h;HOUSEKEEPING_MANAGER
0xc02;MS_InvalidEntry;;0x02;../../fsfw/subsystem/modes/ModeStoreIF.h;MODE_STORE_IF
0xc03;MS_TooManyElements;;0x03;../../fsfw/subsystem/modes/ModeStoreIF.h;MODE_STORE_IF
0xc04;MS_CantStoreEmpty;;0x04;../../fsfw/subsystem/modes/ModeStoreIF.h;MODE_STORE_IF
0xb01;SB_ChildNotFound;;0x01;../../fsfw/subsystem/SubsystemBase.h;SUBSYSTEM_BASE
0xb02;SB_ChildInfoUpdated;;0x02;../../fsfw/subsystem/SubsystemBase.h;SUBSYSTEM_BASE
0xb03;SB_ChildDoesntHaveModes;;0x03;../../fsfw/subsystem/SubsystemBase.h;SUBSYSTEM_BASE
0xb04;SB_CouldNotInsertChild;;0x04;../../fsfw/subsystem/SubsystemBase.h;SUBSYSTEM_BASE
0xb05;SB_TableContainsInvalidObjectId;;0x05;../../fsfw/subsystem/SubsystemBase.h;SUBSYSTEM_BASE
0xd01;SS_SequenceAlreadyExists;;0x01;../../fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xd02;SS_TableAlreadyExists;;0x02;../../fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xd03;SS_TableDoesNotExist;;0x03;../../fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xd04;SS_TableOrSequenceLengthInvalid;;0x04;../../fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xd05;SS_SequenceDoesNotExist;;0x05;../../fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xd06;SS_TableContainsInvalidObjectId;;0x06;../../fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xd07;SS_FallbackSequenceDoesNotExist;;0x07;../../fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xd08;SS_NoTargetTable;;0x08;../../fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xd09;SS_SequenceOrTableTooLong;;0x09;../../fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xd0b;SS_IsFallbackSequence;;0x0B;../../fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xd0c;SS_AccessDenied;;0x0C;../../fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xd0e;SS_TableInUse;;0x0E;../../fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xda1;SS_TargetTableNotReached;;0xA1;../../fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xda2;SS_TableCheckFailed;;0xA2;../../fsfw/subsystem/Subsystem.h;SUBSYSTEM
0x501;PS_SwitchOn;;1;../../fsfw/power/PowerSwitchIF.h;POWER_SWITCH_IF
0x500;PS_SwitchOff;;0;../../fsfw/power/PowerSwitchIF.h;POWER_SWITCH_IF
0x502;PS_SwitchTimeout;;2;../../fsfw/power/PowerSwitchIF.h;POWER_SWITCH_IF
0x503;PS_FuseOn;;3;../../fsfw/power/PowerSwitchIF.h;POWER_SWITCH_IF
0x504;PS_FuseOff;;4;../../fsfw/power/PowerSwitchIF.h;POWER_SWITCH_IF
0x2f01;POS_InPowerTransition;;1;../../fsfw/power/PowerSwitcher.h;POWER_SWITCHER
0x2f02;POS_SwitchStateMismatch;;2;../../fsfw/power/PowerSwitcher.h;POWER_SWITCHER
0x2701;SM_DataTooLarge;;1;../../fsfw/storagemanager/StorageManagerIF.h;STORAGE_MANAGER_IF
0x2702;SM_DataStorageFull;;2;../../fsfw/storagemanager/StorageManagerIF.h;STORAGE_MANAGER_IF
0x2703;SM_IllegalStorageId;;3;../../fsfw/storagemanager/StorageManagerIF.h;STORAGE_MANAGER_IF
0x2704;SM_DataDoesNotExist;;4;../../fsfw/storagemanager/StorageManagerIF.h;STORAGE_MANAGER_IF
0x2705;SM_IllegalAddress;;5;../../fsfw/storagemanager/StorageManagerIF.h;STORAGE_MANAGER_IF
0x2706;SM_PoolTooLarge;;6;../../fsfw/storagemanager/StorageManagerIF.h;STORAGE_MANAGER_IF
0x2801;TC_InvalidTargetState;;1;../../fsfw/thermal/ThermalComponentIF.h;THERMAL_COMPONENT_IF
0x28f1;TC_AboveOperationalLimit;;0xF1;../../fsfw/thermal/ThermalComponentIF.h;THERMAL_COMPONENT_IF
0x28f2;TC_BelowOperationalLimit;;0xF2;../../fsfw/thermal/ThermalComponentIF.h;THERMAL_COMPONENT_IF
0x1701;HHI_ObjectNotHealthy;;1;../../fsfw/health/HasHealthIF.h;HAS_HEALTH_IF
0x1702;HHI_InvalidHealthState;;2;../../fsfw/health/HasHealthIF.h;HAS_HEALTH_IF
0x2b01;CCS_BcIsSetVrCommand;;0x01;../../fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2b02;CCS_BcIsUnlockCommand;;0x02;../../fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bb0;CCS_BcIllegalCommand;;0xB0;../../fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bb1;CCS_BoardReadingNotFinished;;0xB1;../../fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bf0;CCS_NsPositiveW;;0xF0;../../fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bf1;CCS_NsNegativeW;;0xF1;../../fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bf2;CCS_NsLockout;;0xF2;../../fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bf3;CCS_FarmInLockout;;0xF3;../../fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bf4;CCS_FarmInWait;;0xF4;../../fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2be0;CCS_WrongSymbol;;0xE0;../../fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2be1;CCS_DoubleStart;;0xE1;../../fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2be2;CCS_StartSymbolMissed;;0xE2;../../fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2be3;CCS_EndWithoutStart;;0xE3;../../fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2be4;CCS_TooLarge;;0xE4;../../fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2be5;CCS_TooShort;;0xE5;../../fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2be6;CCS_WrongTfVersion;;0xE6;../../fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2be7;CCS_WrongSpacecraftId;;0xE7;../../fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2be8;CCS_NoValidFrameType;;0xE8;../../fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2be9;CCS_CrcFailed;;0xE9;../../fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bea;CCS_VcNotFound;;0xEA;../../fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2beb;CCS_ForwardingFailed;;0xEB;../../fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bec;CCS_ContentTooLarge;;0xEC;../../fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bed;CCS_ResidualData;;0xED;../../fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bee;CCS_DataCorrupted;;0xEE;../../fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bef;CCS_IllegalSegmentationFlag;;0xEF;../../fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bd0;CCS_IllegalFlagCombination;;0xD0;../../fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bd1;CCS_ShorterThanHeader;;0xD1;../../fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bd2;CCS_TooShortBlockedPacket;;0xD2;../../fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bd3;CCS_TooShortMapExtraction;;0xD3;../../fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x3901;SPH_SemaphoreTimeout;;1;../../fsfw/tasks/SemaphoreIF.h;SEMAPHORE_IF
0x3902;SPH_SemaphoreNotOwned;;2;../../fsfw/tasks/SemaphoreIF.h;SEMAPHORE_IF
0x3903;SPH_SemaphoreInvalid;;3;../../fsfw/tasks/SemaphoreIF.h;SEMAPHORE_IF
0x2d01;HPA_InvalidIdentifierId;;0x01;../../fsfw/parameters/HasParametersIF.h;HAS_PARAMETERS_IF
0x2d02;HPA_InvalidDomainId;;0x02;../../fsfw/parameters/HasParametersIF.h;HAS_PARAMETERS_IF
0x2d03;HPA_InvalidValue;;0x03;../../fsfw/parameters/HasParametersIF.h;HAS_PARAMETERS_IF
0x2d05;HPA_ReadOnly;;0x05;../../fsfw/parameters/HasParametersIF.h;HAS_PARAMETERS_IF
0x2c01;PAW_UnknownDatatype;;0x01;../../fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER
0x2c02;PAW_DatatypeMissmatch;;0x02;../../fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER
0x2c03;PAW_Readonly;;0x03;../../fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER
0x2c04;PAW_TooBig;;0x04;../../fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER
0x2c05;PAW_SourceNotSet;;0x05;../../fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER
0x2c06;PAW_OutOfBounds;;0x06;../../fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER
0x2c07;PAW_NotSet;;0x07;../../fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER
0x2c08;PAW_ColumnOrRowsZero;;0x08;../../fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER

1 0x0 OK System-wide code for ok. RETURN_OK HasReturnvaluesIF.h HasReturnvaluesIF
2 0x1 Failed Unspecified system-wide code for failed. RETURN_FAILED HasReturnvaluesIF.h HasReturnvaluesIF
3 0x4400 0x2301 HSPI_HalTimeoutRetval MT_TooDetailedRequest 0 1 fsfw/hal/src/fsfw_hal/stm32h7/spi/spiDefinitions.h ../../fsfw/globalfunctions/matching/MatchTree.h HAL_SPI MATCH_TREE_CLASS
4 0x4401 0x2302 HSPI_HalBusyRetval MT_TooGeneralRequest 1 2 fsfw/hal/src/fsfw_hal/stm32h7/spi/spiDefinitions.h ../../fsfw/globalfunctions/matching/MatchTree.h HAL_SPI MATCH_TREE_CLASS
5 0x4402 0x2303 HSPI_HalErrorRetval MT_NoMatch 2 3 fsfw/hal/src/fsfw_hal/stm32h7/spi/spiDefinitions.h ../../fsfw/globalfunctions/matching/MatchTree.h HAL_SPI MATCH_TREE_CLASS
6 0x4501 0x2304 HURT_UartReadFailure MT_Full 1 4 fsfw/hal/src/fsfw_hal/linux/uart/UartComIF.h ../../fsfw/globalfunctions/matching/MatchTree.h HAL_UART MATCH_TREE_CLASS
7 0x4502 0x2305 HURT_UartReadSizeMissmatch MT_NewNodeCreated 2 5 fsfw/hal/src/fsfw_hal/linux/uart/UartComIF.h ../../fsfw/globalfunctions/matching/MatchTree.h HAL_UART MATCH_TREE_CLASS
8 0x4503 0x2e01 HURT_UartRxBufferTooSmall ASC_TooLongForTargetType 3 1 fsfw/hal/src/fsfw_hal/linux/uart/UartComIF.h ../../fsfw/globalfunctions/AsciiConverter.h HAL_UART ASCII_CONVERTER
9 0x4701 0x2e02 HGIO_UnknownGpioId ASC_InvalidCharacters 1 2 fsfw/hal/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h ../../fsfw/globalfunctions/AsciiConverter.h HAL_GPIO ASCII_CONVERTER
10 0x4702 0x2e03 HGIO_DriveGpioFailure ASC_BufferTooSmall 2 0x3 fsfw/hal/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h ../../fsfw/globalfunctions/AsciiConverter.h HAL_GPIO ASCII_CONVERTER
11 0x4703 0x3d01 HGIO_GpioTypeFailure DLEE_StreamTooShort 3 0x01 fsfw/hal/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h ../../fsfw/globalfunctions/DleEncoder.h HAL_GPIO DLE_ENCODER
12 0x4704 0x3d02 HGIO_GpioInvalidInstance DLEE_DecodingError 4 0x02 fsfw/hal/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h ../../fsfw/globalfunctions/DleEncoder.h HAL_GPIO DLE_ENCODER
13 0x4705 0x2101 HGIO_GpioDuplicateDetected TMF_Busy 5 1 fsfw/hal/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h ../../fsfw/tmstorage/TmStoreFrontendIF.h HAL_GPIO TM_STORE_FRONTEND_IF
14 0x4706 0x2102 HGIO_GpioInitFailed TMF_LastPacketFound 6 2 fsfw/hal/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h ../../fsfw/tmstorage/TmStoreFrontendIF.h HAL_GPIO TM_STORE_FRONTEND_IF
15 0x4300 0x2103 UXOS_ExecutionFinished TMF_StopFetch Execution of the current command has finished 0 3 fsfw/hal/src/fsfw_hal/linux/CommandExecutor.h ../../fsfw/tmstorage/TmStoreFrontendIF.h LINUX_OSAL TM_STORE_FRONTEND_IF
16 0x4301 0x2104 UXOS_CommandPending TMF_Timeout Command is pending. This will also be returned if the user tries to load another command but a command is still pending 1 4 fsfw/hal/src/fsfw_hal/linux/CommandExecutor.h ../../fsfw/tmstorage/TmStoreFrontendIF.h LINUX_OSAL TM_STORE_FRONTEND_IF
17 0x4302 0x2105 UXOS_BytesRead TMF_TmChannelFull Some bytes have been read from the executing process 2 5 fsfw/hal/src/fsfw_hal/linux/CommandExecutor.h ../../fsfw/tmstorage/TmStoreFrontendIF.h LINUX_OSAL TM_STORE_FRONTEND_IF
18 0x4303 0x2106 UXOS_CommandError TMF_NotStored Command execution failed 3 6 fsfw/hal/src/fsfw_hal/linux/CommandExecutor.h ../../fsfw/tmstorage/TmStoreFrontendIF.h LINUX_OSAL TM_STORE_FRONTEND_IF
19 0x4304 0x2107 UXOS_NoCommandLoadedOrPending TMF_AllDeleted 4 7 fsfw/hal/src/fsfw_hal/linux/CommandExecutor.h ../../fsfw/tmstorage/TmStoreFrontendIF.h LINUX_OSAL TM_STORE_FRONTEND_IF
20 0x4306 0x2108 UXOS_PcloseCallError TMF_InvalidData 6 8 fsfw/hal/src/fsfw_hal/linux/CommandExecutor.h ../../fsfw/tmstorage/TmStoreFrontendIF.h LINUX_OSAL TM_STORE_FRONTEND_IF
21 0x2b01 0x2109 CCS_BcIsSetVrCommand TMF_NotReady 0x01 9 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h ../../fsfw/tmstorage/TmStoreFrontendIF.h CCSDS_HANDLER_IF TM_STORE_FRONTEND_IF
22 0x2b02 0x2001 CCS_BcIsUnlockCommand TMB_Busy 0x02 1 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h ../../fsfw/tmstorage/TmStoreBackendIF.h CCSDS_HANDLER_IF TM_STORE_BACKEND_IF
23 0x2bb0 0x2002 CCS_BcIllegalCommand TMB_Full 0xB0 2 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h ../../fsfw/tmstorage/TmStoreBackendIF.h CCSDS_HANDLER_IF TM_STORE_BACKEND_IF
24 0x2bb1 0x2003 CCS_BoardReadingNotFinished TMB_Empty 0xB1 3 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h ../../fsfw/tmstorage/TmStoreBackendIF.h CCSDS_HANDLER_IF TM_STORE_BACKEND_IF
25 0x2bf0 0x2004 CCS_NsPositiveW TMB_NullRequested 0xF0 4 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h ../../fsfw/tmstorage/TmStoreBackendIF.h CCSDS_HANDLER_IF TM_STORE_BACKEND_IF
26 0x2bf1 0x2005 CCS_NsNegativeW TMB_TooLarge 0xF1 5 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h ../../fsfw/tmstorage/TmStoreBackendIF.h CCSDS_HANDLER_IF TM_STORE_BACKEND_IF
27 0x2bf2 0x2006 CCS_NsLockout TMB_NotReady 0xF2 6 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h ../../fsfw/tmstorage/TmStoreBackendIF.h CCSDS_HANDLER_IF TM_STORE_BACKEND_IF
28 0x2bf3 0x2007 CCS_FarmInLockout TMB_DumpError 0xF3 7 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h ../../fsfw/tmstorage/TmStoreBackendIF.h CCSDS_HANDLER_IF TM_STORE_BACKEND_IF
29 0x2bf4 0x2008 CCS_FarmInWait TMB_CrcError 0xF4 8 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h ../../fsfw/tmstorage/TmStoreBackendIF.h CCSDS_HANDLER_IF TM_STORE_BACKEND_IF
30 0x2be0 0x2009 CCS_WrongSymbol TMB_Timeout 0xE0 9 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h ../../fsfw/tmstorage/TmStoreBackendIF.h CCSDS_HANDLER_IF TM_STORE_BACKEND_IF
31 0x2be1 0x200a CCS_DoubleStart TMB_IdlePacketFound 0xE1 10 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h ../../fsfw/tmstorage/TmStoreBackendIF.h CCSDS_HANDLER_IF TM_STORE_BACKEND_IF
32 0x2be2 0x200b CCS_StartSymbolMissed TMB_TelecommandFound 0xE2 11 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h ../../fsfw/tmstorage/TmStoreBackendIF.h CCSDS_HANDLER_IF TM_STORE_BACKEND_IF
33 0x2be3 0x200c CCS_EndWithoutStart TMB_NoPusATm 0xE3 12 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h ../../fsfw/tmstorage/TmStoreBackendIF.h CCSDS_HANDLER_IF TM_STORE_BACKEND_IF
34 0x2be4 0x200d CCS_TooLarge TMB_TooSmall 0xE4 13 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h ../../fsfw/tmstorage/TmStoreBackendIF.h CCSDS_HANDLER_IF TM_STORE_BACKEND_IF
35 0x2be5 0x200e CCS_TooShort TMB_BlockNotFound 0xE5 14 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h ../../fsfw/tmstorage/TmStoreBackendIF.h CCSDS_HANDLER_IF TM_STORE_BACKEND_IF
36 0x2be6 0x200f CCS_WrongTfVersion TMB_InvalidRequest 0xE6 15 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h ../../fsfw/tmstorage/TmStoreBackendIF.h CCSDS_HANDLER_IF TM_STORE_BACKEND_IF
37 0x2be7 0x3a0 CCS_WrongSpacecraftId DHB_InvalidChannel 0xE7 0xA0 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h ../../fsfw/devicehandlers/DeviceHandlerBase.h CCSDS_HANDLER_IF DEVICE_HANDLER_BASE
38 0x2be8 0x3b0 CCS_NoValidFrameType DHB_AperiodicReply 0xE8 0xB0 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h ../../fsfw/devicehandlers/DeviceHandlerBase.h CCSDS_HANDLER_IF DEVICE_HANDLER_BASE
39 0x2be9 0x3b1 CCS_CrcFailed DHB_IgnoreReplyData 0xE9 0xB1 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h ../../fsfw/devicehandlers/DeviceHandlerBase.h CCSDS_HANDLER_IF DEVICE_HANDLER_BASE
40 0x2bea 0x3b2 CCS_VcNotFound DHB_IgnoreFullPacket 0xEA 0xB2 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h ../../fsfw/devicehandlers/DeviceHandlerBase.h CCSDS_HANDLER_IF DEVICE_HANDLER_BASE
41 0x2beb 0x3c0 CCS_ForwardingFailed DHB_NothingToSend 0xEB 0xC0 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h ../../fsfw/devicehandlers/DeviceHandlerBase.h CCSDS_HANDLER_IF DEVICE_HANDLER_BASE
42 0x2bec 0x3c2 CCS_ContentTooLarge DHB_CommandMapError 0xEC 0xC2 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h ../../fsfw/devicehandlers/DeviceHandlerBase.h CCSDS_HANDLER_IF DEVICE_HANDLER_BASE
43 0x2bed 0x3d0 CCS_ResidualData DHB_NoSwitch 0xED 0xD0 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h ../../fsfw/devicehandlers/DeviceHandlerBase.h CCSDS_HANDLER_IF DEVICE_HANDLER_BASE
44 0x2bee 0x3e0 CCS_DataCorrupted DHB_ChildTimeout 0xEE 0xE0 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h ../../fsfw/devicehandlers/DeviceHandlerBase.h CCSDS_HANDLER_IF DEVICE_HANDLER_BASE
45 0x2bef 0x3e1 CCS_IllegalSegmentationFlag DHB_SwitchFailed 0xEF 0xE1 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h ../../fsfw/devicehandlers/DeviceHandlerBase.h CCSDS_HANDLER_IF DEVICE_HANDLER_BASE
46 0x2bd0 0x1201 CCS_IllegalFlagCombination AB_NeedSecondStep 0xD0 0x01 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h ../../fsfw/devicehandlers/AssemblyBase.h CCSDS_HANDLER_IF ASSEMBLY_BASE
47 0x2bd1 0x1202 CCS_ShorterThanHeader AB_NeedToReconfigure 0xD1 0x02 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h ../../fsfw/devicehandlers/AssemblyBase.h CCSDS_HANDLER_IF ASSEMBLY_BASE
48 0x2bd2 0x1203 CCS_TooShortBlockedPacket AB_ModeFallback 0xD2 0x03 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h ../../fsfw/devicehandlers/AssemblyBase.h CCSDS_HANDLER_IF ASSEMBLY_BASE
49 0x2bd3 0x1204 CCS_TooShortMapExtraction AB_ChildNotCommandable 0xD3 0x04 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h ../../fsfw/devicehandlers/AssemblyBase.h CCSDS_HANDLER_IF ASSEMBLY_BASE
50 0x3a00 0x1205 SPH_ConnBroken AB_NeedToChangeHealth 0 0x05 fsfw/src/fsfw/osal/common/TcpTmTcServer.h ../../fsfw/devicehandlers/AssemblyBase.h SEMAPHORE_IF ASSEMBLY_BASE
51 0x2901 0x12a1 IEC_NoConfigurationTable AB_NotEnoughChildrenInCorrectState 0x01 0xa1 fsfw/src/fsfw/osal/InternalErrorCodes.h ../../fsfw/devicehandlers/AssemblyBase.h INTERNAL_ERROR_CODES ASSEMBLY_BASE
52 0x2902 0x3301 IEC_NoCpuTable DC_NoReplyReceived 0x02 0x01 fsfw/src/fsfw/osal/InternalErrorCodes.h ../../fsfw/devicehandlers/DeviceCommunicationIF.h INTERNAL_ERROR_CODES DEVICE_COMMUNICATION_IF
53 0x2903 0x3302 IEC_InvalidWorkspaceAddress DC_ProtocolError 0x03 0x02 fsfw/src/fsfw/osal/InternalErrorCodes.h ../../fsfw/devicehandlers/DeviceCommunicationIF.h INTERNAL_ERROR_CODES DEVICE_COMMUNICATION_IF
54 0x2904 0x3303 IEC_TooLittleWorkspace DC_Nullpointer 0x04 0x03 fsfw/src/fsfw/osal/InternalErrorCodes.h ../../fsfw/devicehandlers/DeviceCommunicationIF.h INTERNAL_ERROR_CODES DEVICE_COMMUNICATION_IF
55 0x2905 0x3304 IEC_WorkspaceAllocation DC_InvalidCookieType 0x05 0x04 fsfw/src/fsfw/osal/InternalErrorCodes.h ../../fsfw/devicehandlers/DeviceCommunicationIF.h INTERNAL_ERROR_CODES DEVICE_COMMUNICATION_IF
56 0x2906 0x3305 IEC_InterruptStackTooSmall DC_NotActive 0x06 0x05 fsfw/src/fsfw/osal/InternalErrorCodes.h ../../fsfw/devicehandlers/DeviceCommunicationIF.h INTERNAL_ERROR_CODES DEVICE_COMMUNICATION_IF
57 0x2907 0x3306 IEC_ThreadExitted DC_TooMuchData 0x07 0x06 fsfw/src/fsfw/osal/InternalErrorCodes.h ../../fsfw/devicehandlers/DeviceCommunicationIF.h INTERNAL_ERROR_CODES DEVICE_COMMUNICATION_IF
58 0x2908 0x26a0 IEC_InconsistentMpInformation DHI_NoCommandData 0x08 0xA0 fsfw/src/fsfw/osal/InternalErrorCodes.h ../../fsfw/devicehandlers/DeviceHandlerIF.h INTERNAL_ERROR_CODES DEVICE_HANDLER_IF
59 0x2909 0x26a1 IEC_InvalidNode DHI_CommandNotSupported 0x09 0xA1 fsfw/src/fsfw/osal/InternalErrorCodes.h ../../fsfw/devicehandlers/DeviceHandlerIF.h INTERNAL_ERROR_CODES DEVICE_HANDLER_IF
60 0x290a 0x26a2 IEC_NoMpci DHI_CommandAlreadySent 0x0a 0xA2 fsfw/src/fsfw/osal/InternalErrorCodes.h ../../fsfw/devicehandlers/DeviceHandlerIF.h INTERNAL_ERROR_CODES DEVICE_HANDLER_IF
61 0x290b 0x26a3 IEC_BadPacket DHI_CommandWasNotSent 0x0b 0xA3 fsfw/src/fsfw/osal/InternalErrorCodes.h ../../fsfw/devicehandlers/DeviceHandlerIF.h INTERNAL_ERROR_CODES DEVICE_HANDLER_IF
62 0x290c 0x26a4 IEC_OutOfPackets DHI_CantSwitchAddress 0x0c 0xA4 fsfw/src/fsfw/osal/InternalErrorCodes.h ../../fsfw/devicehandlers/DeviceHandlerIF.h INTERNAL_ERROR_CODES DEVICE_HANDLER_IF
63 0x290d 0x26a5 IEC_OutOfGlobalObjects DHI_WrongModeForCommand 0x0d 0xA5 fsfw/src/fsfw/osal/InternalErrorCodes.h ../../fsfw/devicehandlers/DeviceHandlerIF.h INTERNAL_ERROR_CODES DEVICE_HANDLER_IF
64 0x290e 0x26a6 IEC_OutOfProxies DHI_Timeout 0x0e 0xA6 fsfw/src/fsfw/osal/InternalErrorCodes.h ../../fsfw/devicehandlers/DeviceHandlerIF.h INTERNAL_ERROR_CODES DEVICE_HANDLER_IF
65 0x290f 0x26a7 IEC_InvalidGlobalId DHI_Busy 0x0f 0xA7 fsfw/src/fsfw/osal/InternalErrorCodes.h ../../fsfw/devicehandlers/DeviceHandlerIF.h INTERNAL_ERROR_CODES DEVICE_HANDLER_IF
66 0x2910 0x26a8 IEC_BadStackHook DHI_NoReplyExpected 0x10 0xA8 fsfw/src/fsfw/osal/InternalErrorCodes.h ../../fsfw/devicehandlers/DeviceHandlerIF.h INTERNAL_ERROR_CODES DEVICE_HANDLER_IF
67 0x2911 0x26a9 IEC_BadAttributes DHI_NonOpTemperature 0x11 0xA9 fsfw/src/fsfw/osal/InternalErrorCodes.h ../../fsfw/devicehandlers/DeviceHandlerIF.h INTERNAL_ERROR_CODES DEVICE_HANDLER_IF
68 0x2912 0x26aa IEC_ImplementationKeyCreateInconsistency DHI_CommandNotImplemented 0x12 0xAA fsfw/src/fsfw/osal/InternalErrorCodes.h ../../fsfw/devicehandlers/DeviceHandlerIF.h INTERNAL_ERROR_CODES DEVICE_HANDLER_IF
69 0x2913 0x26b0 IEC_ImplementationBlockingOperationCancel DHI_ChecksumError 0x13 0xB0 fsfw/src/fsfw/osal/InternalErrorCodes.h ../../fsfw/devicehandlers/DeviceHandlerIF.h INTERNAL_ERROR_CODES DEVICE_HANDLER_IF
70 0x2914 0x26b1 IEC_MutexObtainFromBadState DHI_LengthMissmatch 0x14 0xB1 fsfw/src/fsfw/osal/InternalErrorCodes.h ../../fsfw/devicehandlers/DeviceHandlerIF.h INTERNAL_ERROR_CODES DEVICE_HANDLER_IF
71 0x2915 0x26b2 IEC_UnlimitedAndMaximumIs0 DHI_InvalidData 0x15 0xB2 fsfw/src/fsfw/osal/InternalErrorCodes.h ../../fsfw/devicehandlers/DeviceHandlerIF.h INTERNAL_ERROR_CODES DEVICE_HANDLER_IF
72 0xe01 0x26b3 HM_InvalidMode DHI_ProtocolError 0x01 0xB3 fsfw/src/fsfw/modes/HasModesIF.h ../../fsfw/devicehandlers/DeviceHandlerIF.h HAS_MODES_IF DEVICE_HANDLER_IF
73 0xe02 0x26c0 HM_TransNotAllowed DHI_DeviceDidNotExecute 0x02 0xC0 fsfw/src/fsfw/modes/HasModesIF.h ../../fsfw/devicehandlers/DeviceHandlerIF.h HAS_MODES_IF DEVICE_HANDLER_IF
74 0xe03 0x26c1 HM_InTransition DHI_DeviceReportedError 0x03 0xC1 fsfw/src/fsfw/modes/HasModesIF.h ../../fsfw/devicehandlers/DeviceHandlerIF.h HAS_MODES_IF DEVICE_HANDLER_IF
75 0xe04 0x26c2 HM_InvalidSubmode DHI_UnknownDeviceReply 0x04 0xC2 fsfw/src/fsfw/modes/HasModesIF.h ../../fsfw/devicehandlers/DeviceHandlerIF.h HAS_MODES_IF DEVICE_HANDLER_IF
76 0x2d01 0x26c3 HPA_InvalidIdentifierId DHI_DeviceReplyInvalid 0x01 0xC3 fsfw/src/fsfw/parameters/HasParametersIF.h ../../fsfw/devicehandlers/DeviceHandlerIF.h HAS_PARAMETERS_IF DEVICE_HANDLER_IF
77 0x2d02 0x26d0 HPA_InvalidDomainId DHI_InvalidCommandParameter 0x02 0xD0 fsfw/src/fsfw/parameters/HasParametersIF.h ../../fsfw/devicehandlers/DeviceHandlerIF.h HAS_PARAMETERS_IF DEVICE_HANDLER_IF
78 0x2d03 0x26d1 HPA_InvalidValue DHI_InvalidNumberOrLengthOfParameters 0x03 0xD1 fsfw/src/fsfw/parameters/HasParametersIF.h ../../fsfw/devicehandlers/DeviceHandlerIF.h HAS_PARAMETERS_IF DEVICE_HANDLER_IF
79 0x2d05 0x1401 HPA_ReadOnly SE_BufferTooShort 0x05 1 fsfw/src/fsfw/parameters/HasParametersIF.h ../../fsfw/serialize/SerializeIF.h HAS_PARAMETERS_IF SERIALIZE_IF
80 0x2c01 0x1402 PAW_UnknownDatatype SE_StreamTooShort 0x01 2 fsfw/src/fsfw/parameters/ParameterWrapper.h ../../fsfw/serialize/SerializeIF.h PARAMETER_WRAPPER SERIALIZE_IF
81 0x2c02 0x1403 PAW_DatatypeMissmatch SE_TooManyElements 0x02 3 fsfw/src/fsfw/parameters/ParameterWrapper.h ../../fsfw/serialize/SerializeIF.h PARAMETER_WRAPPER SERIALIZE_IF
82 0x2c03 0x3801 PAW_Readonly MQI_Empty 0x03 1 fsfw/src/fsfw/parameters/ParameterWrapper.h ../../fsfw/ipc/MessageQueueIF.h PARAMETER_WRAPPER MESSAGE_QUEUE_IF
83 0x2c04 0x3802 PAW_TooBig MQI_Full No space left for more messages 0x04 2 fsfw/src/fsfw/parameters/ParameterWrapper.h ../../fsfw/ipc/MessageQueueIF.h PARAMETER_WRAPPER MESSAGE_QUEUE_IF
84 0x2c05 0x3803 PAW_SourceNotSet MQI_NoReplyPartner Returned if a reply method was called without partner 0x05 3 fsfw/src/fsfw/parameters/ParameterWrapper.h ../../fsfw/ipc/MessageQueueIF.h PARAMETER_WRAPPER MESSAGE_QUEUE_IF
85 0x2c06 0x3804 PAW_OutOfBounds MQI_DestinationInvalid Returned if the target destination is invalid. 0x06 4 fsfw/src/fsfw/parameters/ParameterWrapper.h ../../fsfw/ipc/MessageQueueIF.h PARAMETER_WRAPPER MESSAGE_QUEUE_IF
86 0x2c07 0xf01 PAW_NotSet CM_UnknownCommand 0x07 1 fsfw/src/fsfw/parameters/ParameterWrapper.h ../../fsfw/ipc/CommandMessageIF.h PARAMETER_WRAPPER COMMAND_MESSAGE
87 0x2c08 0x3701 PAW_ColumnOrRowsZero MUX_NotEnoughResources 0x08 1 fsfw/src/fsfw/parameters/ParameterWrapper.h ../../fsfw/ipc/MutexIF.h PARAMETER_WRAPPER MUTEX_IF
88 0x3101 0x3702 CF_ObjectHasNoFunctions MUX_InsufficientMemory 1 2 fsfw/src/fsfw/action/CommandsActionsIF.h ../../fsfw/ipc/MutexIF.h COMMANDS_ACTIONS_IF MUTEX_IF
89 0x3102 0x3703 CF_AlreadyCommanding MUX_NoPrivilege 2 3 fsfw/src/fsfw/action/CommandsActionsIF.h ../../fsfw/ipc/MutexIF.h COMMANDS_ACTIONS_IF MUTEX_IF
90 0x3201 0x3704 HF_IsBusy MUX_WrongAttributeSetting 1 4 fsfw/src/fsfw/action/HasActionsIF.h ../../fsfw/ipc/MutexIF.h HAS_ACTIONS_IF MUTEX_IF
91 0x3202 0x3705 HF_InvalidParameters MUX_MutexAlreadyLocked 2 5 fsfw/src/fsfw/action/HasActionsIF.h ../../fsfw/ipc/MutexIF.h HAS_ACTIONS_IF MUTEX_IF
92 0x3203 0x3706 HF_ExecutionFinished MUX_MutexNotFound 3 6 fsfw/src/fsfw/action/HasActionsIF.h ../../fsfw/ipc/MutexIF.h HAS_ACTIONS_IF MUTEX_IF
93 0x3204 0x3707 HF_InvalidActionId MUX_MutexMaxLocks 4 7 fsfw/src/fsfw/action/HasActionsIF.h ../../fsfw/ipc/MutexIF.h HAS_ACTIONS_IF MUTEX_IF
94 0x201 0x3708 OM_InsertionFailed MUX_CurrThreadAlreadyOwnsMutex 1 8 fsfw/src/fsfw/objectmanager/ObjectManagerIF.h ../../fsfw/ipc/MutexIF.h OBJECT_MANAGER_IF MUTEX_IF
95 0x202 0x3709 OM_NotFound MUX_CurrThreadDoesNotOwnMutex 2 9 fsfw/src/fsfw/objectmanager/ObjectManagerIF.h ../../fsfw/ipc/MutexIF.h OBJECT_MANAGER_IF MUTEX_IF
96 0x203 0x370a OM_ChildInitFailed MUX_MutexTimeout 3 10 fsfw/src/fsfw/objectmanager/ObjectManagerIF.h ../../fsfw/ipc/MutexIF.h OBJECT_MANAGER_IF MUTEX_IF
97 0x204 0x370b OM_InternalErrReporterUninit MUX_MutexInvalidId 4 11 fsfw/src/fsfw/objectmanager/ObjectManagerIF.h ../../fsfw/ipc/MutexIF.h OBJECT_MANAGER_IF MUTEX_IF
98 0x2500 0x370c FDI_YourFault MUX_MutexDestroyedWhileWaiting 0 12 fsfw/src/fsfw/fdir/ConfirmsFailuresIF.h ../../fsfw/ipc/MutexIF.h HANDLES_FAILURES_IF MUTEX_IF
99 0x2501 0x4e1 FDI_MyFault RMP_CommandNoDescriptorsAvailable 1 0xE1 fsfw/src/fsfw/fdir/ConfirmsFailuresIF.h ../../fsfw/rmap/RMAP.h HANDLES_FAILURES_IF RMAP_CHANNEL
100 0x2502 0x4e2 FDI_ConfirmLater RMP_CommandBufferFull 2 0xE2 fsfw/src/fsfw/fdir/ConfirmsFailuresIF.h ../../fsfw/rmap/RMAP.h HANDLES_FAILURES_IF RMAP_CHANNEL
101 0x2101 0x4e3 TMF_Busy RMP_CommandChannelOutOfRange 1 0xE3 fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h ../../fsfw/rmap/RMAP.h TM_STORE_FRONTEND_IF RMAP_CHANNEL
102 0x2102 0x4e6 TMF_LastPacketFound RMP_CommandChannelDeactivated 2 0xE6 fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h ../../fsfw/rmap/RMAP.h TM_STORE_FRONTEND_IF RMAP_CHANNEL
103 0x2103 0x4e7 TMF_StopFetch RMP_CommandPortOutOfRange 3 0xE7 fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h ../../fsfw/rmap/RMAP.h TM_STORE_FRONTEND_IF RMAP_CHANNEL
104 0x2104 0x4e8 TMF_Timeout RMP_CommandPortInUse 4 0xE8 fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h ../../fsfw/rmap/RMAP.h TM_STORE_FRONTEND_IF RMAP_CHANNEL
105 0x2105 0x4e9 TMF_TmChannelFull RMP_CommandNoChannel 5 0xE9 fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h ../../fsfw/rmap/RMAP.h TM_STORE_FRONTEND_IF RMAP_CHANNEL
106 0x2106 0x4ea TMF_NotStored RMP_NoHwCrc 6 0xEA fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h ../../fsfw/rmap/RMAP.h TM_STORE_FRONTEND_IF RMAP_CHANNEL
107 0x2107 0x4d0 TMF_AllDeleted RMP_ReplyNoReply 7 0xD0 fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h ../../fsfw/rmap/RMAP.h TM_STORE_FRONTEND_IF RMAP_CHANNEL
108 0x2108 0x4d1 TMF_InvalidData RMP_ReplyNotSent 8 0xD1 fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h ../../fsfw/rmap/RMAP.h TM_STORE_FRONTEND_IF RMAP_CHANNEL
109 0x2109 0x4d2 TMF_NotReady RMP_ReplyNotYetSent 9 0xD2 fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h ../../fsfw/rmap/RMAP.h TM_STORE_FRONTEND_IF RMAP_CHANNEL
110 0x2001 0x4d3 TMB_Busy RMP_ReplyMissmatch 1 0xD3 fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h ../../fsfw/rmap/RMAP.h TM_STORE_BACKEND_IF RMAP_CHANNEL
111 0x2002 0x4d4 TMB_Full RMP_ReplyTimeout 2 0xD4 fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h ../../fsfw/rmap/RMAP.h TM_STORE_BACKEND_IF RMAP_CHANNEL
112 0x2003 0x4c0 TMB_Empty RMP_ReplyInterfaceBusy 3 0xC0 fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h ../../fsfw/rmap/RMAP.h TM_STORE_BACKEND_IF RMAP_CHANNEL
113 0x2004 0x4c1 TMB_NullRequested RMP_ReplyTransmissionError 4 0xC1 fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h ../../fsfw/rmap/RMAP.h TM_STORE_BACKEND_IF RMAP_CHANNEL
114 0x2005 0x4c2 TMB_TooLarge RMP_ReplyInvalidData 5 0xC2 fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h ../../fsfw/rmap/RMAP.h TM_STORE_BACKEND_IF RMAP_CHANNEL
115 0x2006 0x4c3 TMB_NotReady RMP_ReplyNotSupported 6 0xC3 fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h ../../fsfw/rmap/RMAP.h TM_STORE_BACKEND_IF RMAP_CHANNEL
116 0x2007 0x4f0 TMB_DumpError RMP_LinkDown 7 0xF0 fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h ../../fsfw/rmap/RMAP.h TM_STORE_BACKEND_IF RMAP_CHANNEL
117 0x2008 0x4f1 TMB_CrcError RMP_SpwCredit 8 0xF1 fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h ../../fsfw/rmap/RMAP.h TM_STORE_BACKEND_IF RMAP_CHANNEL
118 0x2009 0x4f2 TMB_Timeout RMP_SpwEscape 9 0xF2 fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h ../../fsfw/rmap/RMAP.h TM_STORE_BACKEND_IF RMAP_CHANNEL
119 0x200a 0x4f3 TMB_IdlePacketFound RMP_SpwDisconnect 10 0xF3 fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h ../../fsfw/rmap/RMAP.h TM_STORE_BACKEND_IF RMAP_CHANNEL
120 0x200b 0x4f4 TMB_TelecommandFound RMP_SpwParity 11 0xF4 fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h ../../fsfw/rmap/RMAP.h TM_STORE_BACKEND_IF RMAP_CHANNEL
121 0x200c 0x4f5 TMB_NoPusATm RMP_SpwWriteSync 12 0xF5 fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h ../../fsfw/rmap/RMAP.h TM_STORE_BACKEND_IF RMAP_CHANNEL
122 0x200d 0x4f6 TMB_TooSmall RMP_SpwInvalidAddress 13 0xF6 fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h ../../fsfw/rmap/RMAP.h TM_STORE_BACKEND_IF RMAP_CHANNEL
123 0x200e 0x4f7 TMB_BlockNotFound RMP_SpwEarlyEop 14 0xF7 fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h ../../fsfw/rmap/RMAP.h TM_STORE_BACKEND_IF RMAP_CHANNEL
124 0x200f 0x4f8 TMB_InvalidRequest RMP_SpwDma 15 0xF8 fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h ../../fsfw/rmap/RMAP.h TM_STORE_BACKEND_IF RMAP_CHANNEL
125 0x1c01 0x4f9 TCD_PacketLost RMP_SpwLinkError 1 0xF9 fsfw/src/fsfw/tcdistribution/TcDistributor.h ../../fsfw/rmap/RMAP.h PACKET_DISTRIBUTION RMAP_CHANNEL
126 0x1c02 0x400 TCD_DestinationNotFound RMP_ReplyOk 2 0 fsfw/src/fsfw/tcdistribution/TcDistributor.h ../../fsfw/rmap/RMAP.h PACKET_DISTRIBUTION RMAP_CHANNEL
127 0x1c03 0x401 TCD_ServiceIdAlreadyExists RMP_ReplyGeneralErrorCode 3 1 fsfw/src/fsfw/tcdistribution/TcDistributor.h ../../fsfw/rmap/RMAP.h PACKET_DISTRIBUTION RMAP_CHANNEL
128 0x1b00 0x402 TCC_IllegalApid RMP_ReplyUnusedPacketTypeOrCommandCode 0 2 fsfw/src/fsfw/tcdistribution/TcPacketCheckPUS.h ../../fsfw/rmap/RMAP.h TC_PACKET_CHECK RMAP_CHANNEL
129 0x1b01 0x403 TCC_IncompletePacket RMP_ReplyInvalidKey 1 3 fsfw/src/fsfw/tcdistribution/TcPacketCheckPUS.h ../../fsfw/rmap/RMAP.h TC_PACKET_CHECK RMAP_CHANNEL
130 0x1b02 0x404 TCC_IncorrectChecksum RMP_ReplyInvalidDataCrc 2 4 fsfw/src/fsfw/tcdistribution/TcPacketCheckPUS.h ../../fsfw/rmap/RMAP.h TC_PACKET_CHECK RMAP_CHANNEL
131 0x1b03 0x405 TCC_IllegalPacketType RMP_ReplyEarlyEop 3 5 fsfw/src/fsfw/tcdistribution/TcPacketCheckPUS.h ../../fsfw/rmap/RMAP.h TC_PACKET_CHECK RMAP_CHANNEL
132 0x1b04 0x406 TCC_IllegalPacketSubtype RMP_ReplyTooMuchData 4 6 fsfw/src/fsfw/tcdistribution/TcPacketCheckPUS.h ../../fsfw/rmap/RMAP.h TC_PACKET_CHECK RMAP_CHANNEL
133 0x1b05 0x407 TCC_IncorrectPrimaryHeader RMP_ReplyEep 5 7 fsfw/src/fsfw/tcdistribution/TcPacketCheckPUS.h ../../fsfw/rmap/RMAP.h TC_PACKET_CHECK RMAP_CHANNEL
134 0x1b06 0x408 TCC_IncorrectSecondaryHeader RMP_ReplyReserved 6 8 fsfw/src/fsfw/tcdistribution/TcPacketCheckPUS.h ../../fsfw/rmap/RMAP.h TC_PACKET_CHECK RMAP_CHANNEL
135 0x4e1 0x409 RMP_CommandNoDescriptorsAvailable RMP_ReplyVerifyBufferOverrun 0xE1 9 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/rmap/RMAP.h RMAP_CHANNEL
136 0x4e2 0x40a RMP_CommandBufferFull RMP_ReplyCommandNotImplementedOrNotAuthorised 0xE2 10 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/rmap/RMAP.h RMAP_CHANNEL
137 0x4e3 0x40b RMP_CommandChannelOutOfRange RMP_ReplyRmwDataLengthError 0xE3 11 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/rmap/RMAP.h RMAP_CHANNEL
138 0x4e6 0x40c RMP_CommandChannelDeactivated RMP_ReplyInvalidTargetLogicalAddress 0xE6 12 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/rmap/RMAP.h RMAP_CHANNEL
139 0x4e7 0x1c01 RMP_CommandPortOutOfRange TCD_PacketLost 0xE7 1 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/tcdistribution/TcDistributor.h RMAP_CHANNEL PACKET_DISTRIBUTION
140 0x4e8 0x1c02 RMP_CommandPortInUse TCD_DestinationNotFound 0xE8 2 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/tcdistribution/TcDistributor.h RMAP_CHANNEL PACKET_DISTRIBUTION
141 0x4e9 0x1c03 RMP_CommandNoChannel TCD_ServiceIdAlreadyExists 0xE9 3 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/tcdistribution/TcDistributor.h RMAP_CHANNEL PACKET_DISTRIBUTION
142 0x4ea 0x1b00 RMP_NoHwCrc TCC_IllegalApid 0xEA 0 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/tcdistribution/TcPacketCheck.h RMAP_CHANNEL TC_PACKET_CHECK
143 0x4d0 0x1b01 RMP_ReplyNoReply TCC_IncompletePacket 0xD0 1 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/tcdistribution/TcPacketCheck.h RMAP_CHANNEL TC_PACKET_CHECK
144 0x4d1 0x1b02 RMP_ReplyNotSent TCC_IncorrectChecksum 0xD1 2 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/tcdistribution/TcPacketCheck.h RMAP_CHANNEL TC_PACKET_CHECK
145 0x4d2 0x1b03 RMP_ReplyNotYetSent TCC_IllegalPacketType 0xD2 3 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/tcdistribution/TcPacketCheck.h RMAP_CHANNEL TC_PACKET_CHECK
146 0x4d3 0x1b04 RMP_ReplyMissmatch TCC_IllegalPacketSubtype 0xD3 4 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/tcdistribution/TcPacketCheck.h RMAP_CHANNEL TC_PACKET_CHECK
147 0x4d4 0x1b05 RMP_ReplyTimeout TCC_IncorrectPrimaryHeader 0xD4 5 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/tcdistribution/TcPacketCheck.h RMAP_CHANNEL TC_PACKET_CHECK
148 0x4c0 0x1b06 RMP_ReplyInterfaceBusy TCC_IncorrectSecondaryHeader 0xC0 6 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/tcdistribution/TcPacketCheck.h RMAP_CHANNEL TC_PACKET_CHECK
149 0x4c1 0x3101 RMP_ReplyTransmissionError CF_ObjectHasNoFunctions 0xC1 1 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/action/CommandsActionsIF.h RMAP_CHANNEL COMMANDS_ACTIONS_IF
150 0x4c2 0x3102 RMP_ReplyInvalidData CF_AlreadyCommanding 0xC2 2 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/action/CommandsActionsIF.h RMAP_CHANNEL COMMANDS_ACTIONS_IF
151 0x4c3 0x3201 RMP_ReplyNotSupported HF_IsBusy 0xC3 1 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/action/HasActionsIF.h RMAP_CHANNEL HAS_ACTIONS_IF
152 0x4f0 0x3202 RMP_LinkDown HF_InvalidParameters 0xF0 2 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/action/HasActionsIF.h RMAP_CHANNEL HAS_ACTIONS_IF
153 0x4f1 0x3203 RMP_SpwCredit HF_ExecutionFinished 0xF1 3 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/action/HasActionsIF.h RMAP_CHANNEL HAS_ACTIONS_IF
154 0x4f2 0x3204 RMP_SpwEscape HF_InvalidActionId 0xF2 4 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/action/HasActionsIF.h RMAP_CHANNEL HAS_ACTIONS_IF
155 0x4f3 0x601 RMP_SpwDisconnect PP_DoItMyself 0xF3 1 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/memory/HasMemoryIF.h RMAP_CHANNEL HAS_MEMORY_IF
156 0x4f4 0x602 RMP_SpwParity PP_PointsToVariable 0xF4 2 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/memory/HasMemoryIF.h RMAP_CHANNEL HAS_MEMORY_IF
157 0x4f5 0x603 RMP_SpwWriteSync PP_PointsToMemory 0xF5 3 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/memory/HasMemoryIF.h RMAP_CHANNEL HAS_MEMORY_IF
158 0x4f6 0x604 RMP_SpwInvalidAddress PP_ActivityCompleted 0xF6 4 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/memory/HasMemoryIF.h RMAP_CHANNEL HAS_MEMORY_IF
159 0x4f7 0x605 RMP_SpwEarlyEop PP_PointsToVectorUint8 0xF7 5 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/memory/HasMemoryIF.h RMAP_CHANNEL HAS_MEMORY_IF
160 0x4f8 0x606 RMP_SpwDma PP_PointsToVectorUint16 0xF8 6 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/memory/HasMemoryIF.h RMAP_CHANNEL HAS_MEMORY_IF
161 0x4f9 0x607 RMP_SpwLinkError PP_PointsToVectorUint32 0xF9 7 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/memory/HasMemoryIF.h RMAP_CHANNEL HAS_MEMORY_IF
162 0x400 0x608 RMP_ReplyOk PP_PointsToVectorFloat 0 8 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/memory/HasMemoryIF.h RMAP_CHANNEL HAS_MEMORY_IF
163 0x401 0x6a0 RMP_ReplyGeneralErrorCode PP_DumpNotSupported 1 0xA0 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/memory/HasMemoryIF.h RMAP_CHANNEL HAS_MEMORY_IF
164 0x402 0x6e0 RMP_ReplyUnusedPacketTypeOrCommandCode PP_InvalidSize 2 0xE0 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/memory/HasMemoryIF.h RMAP_CHANNEL HAS_MEMORY_IF
165 0x403 0x6e1 RMP_ReplyInvalidKey PP_InvalidAddress 3 0xE1 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/memory/HasMemoryIF.h RMAP_CHANNEL HAS_MEMORY_IF
166 0x404 0x6e2 RMP_ReplyInvalidDataCrc PP_InvalidContent 4 0xE2 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/memory/HasMemoryIF.h RMAP_CHANNEL HAS_MEMORY_IF
167 0x405 0x6e3 RMP_ReplyEarlyEop PP_UnalignedAccess 5 0xE3 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/memory/HasMemoryIF.h RMAP_CHANNEL HAS_MEMORY_IF
168 0x406 0x6e4 RMP_ReplyTooMuchData PP_WriteProtected 6 0xE4 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/memory/HasMemoryIF.h RMAP_CHANNEL HAS_MEMORY_IF
169 0x407 0x13e0 RMP_ReplyEep MH_UnknownCmd 7 0xE0 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/memory/MemoryHelper.h RMAP_CHANNEL MEMORY_HELPER
170 0x408 0x13e1 RMP_ReplyReserved MH_InvalidAddress 8 0xE1 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/memory/MemoryHelper.h RMAP_CHANNEL MEMORY_HELPER
171 0x409 0x13e2 RMP_ReplyVerifyBufferOverrun MH_InvalidSize 9 0xE2 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/memory/MemoryHelper.h RMAP_CHANNEL MEMORY_HELPER
172 0x40a 0x13e3 RMP_ReplyCommandNotImplementedOrNotAuthorised MH_StateMismatch 10 0xE3 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/memory/MemoryHelper.h RMAP_CHANNEL MEMORY_HELPER
173 0x40b 0x4000 RMP_ReplyRmwDataLengthError FILS_GenericFileError 11 0 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/memory/HasFileSystemIF.h RMAP_CHANNEL FILE_SYSTEM
174 0x40c 0x4001 RMP_ReplyInvalidTargetLogicalAddress FILS_IsBusy 12 1 fsfw/src/fsfw/rmap/RMAP.h ../../fsfw/memory/HasFileSystemIF.h RMAP_CHANNEL FILE_SYSTEM
175 0x2701 0x4002 SM_DataTooLarge FILS_InvalidParameters 1 2 fsfw/src/fsfw/storagemanager/StorageManagerIF.h ../../fsfw/memory/HasFileSystemIF.h STORAGE_MANAGER_IF FILE_SYSTEM
176 0x2702 0x4005 SM_DataStorageFull FILS_FileDoesNotExist 2 5 fsfw/src/fsfw/storagemanager/StorageManagerIF.h ../../fsfw/memory/HasFileSystemIF.h STORAGE_MANAGER_IF FILE_SYSTEM
177 0x2703 0x4006 SM_IllegalStorageId FILS_FileAlreadyExists 3 6 fsfw/src/fsfw/storagemanager/StorageManagerIF.h ../../fsfw/memory/HasFileSystemIF.h STORAGE_MANAGER_IF FILE_SYSTEM
178 0x2704 0x4007 SM_DataDoesNotExist FILS_FileLocked 4 7 fsfw/src/fsfw/storagemanager/StorageManagerIF.h ../../fsfw/memory/HasFileSystemIF.h STORAGE_MANAGER_IF FILE_SYSTEM
179 0x2705 0x400a SM_IllegalAddress FILS_DirectoryDoesNotExist 5 10 fsfw/src/fsfw/storagemanager/StorageManagerIF.h ../../fsfw/memory/HasFileSystemIF.h STORAGE_MANAGER_IF FILE_SYSTEM
180 0x2706 0x400b SM_PoolTooLarge FILS_DirectoryAlreadyExists 6 11 fsfw/src/fsfw/storagemanager/StorageManagerIF.h ../../fsfw/memory/HasFileSystemIF.h STORAGE_MANAGER_IF FILE_SYSTEM
181 0x37a1 0x400c SGP4_InvalidEccentricity FILS_DirectoryNotEmpty 0xA1 12 fsfw/src/fsfw/coordinates/Sgp4Propagator.h ../../fsfw/memory/HasFileSystemIF.h SGP4PROPAGATOR_CLASS FILE_SYSTEM
182 0x37a2 0x400f SGP4_InvalidMeanMotion FILS_SequencePacketMissingWrite 0xA2 15 fsfw/src/fsfw/coordinates/Sgp4Propagator.h ../../fsfw/memory/HasFileSystemIF.h SGP4PROPAGATOR_CLASS FILE_SYSTEM
183 0x37a3 0x4010 SGP4_InvalidPerturbationElements FILS_SequencePacketMissingRead 0xA3 16 fsfw/src/fsfw/coordinates/Sgp4Propagator.h ../../fsfw/memory/HasFileSystemIF.h SGP4PROPAGATOR_CLASS FILE_SYSTEM
184 0x37a4 0x2901 SGP4_InvalidSemiLatusRectum IEC_NoConfigurationTable 0xA4 0x01 fsfw/src/fsfw/coordinates/Sgp4Propagator.h ../../fsfw/osal/InternalErrorCodes.h SGP4PROPAGATOR_CLASS INTERNAL_ERROR_CODES
185 0x37a5 0x2902 SGP4_InvalidEpochElements IEC_NoCpuTable 0xA5 0x02 fsfw/src/fsfw/coordinates/Sgp4Propagator.h ../../fsfw/osal/InternalErrorCodes.h SGP4PROPAGATOR_CLASS INTERNAL_ERROR_CODES
186 0x37a6 0x2903 SGP4_SatelliteHasDecayed IEC_InvalidWorkspaceAddress 0xA6 0x03 fsfw/src/fsfw/coordinates/Sgp4Propagator.h ../../fsfw/osal/InternalErrorCodes.h SGP4PROPAGATOR_CLASS INTERNAL_ERROR_CODES
187 0x37b1 0x2904 SGP4_TleTooOld IEC_TooLittleWorkspace 0xB1 0x04 fsfw/src/fsfw/coordinates/Sgp4Propagator.h ../../fsfw/osal/InternalErrorCodes.h SGP4PROPAGATOR_CLASS INTERNAL_ERROR_CODES
188 0x37b2 0x2905 SGP4_TleNotInitialized IEC_WorkspaceAllocation 0xB2 0x05 fsfw/src/fsfw/coordinates/Sgp4Propagator.h ../../fsfw/osal/InternalErrorCodes.h SGP4PROPAGATOR_CLASS INTERNAL_ERROR_CODES
189 0x2301 0x2906 MT_TooDetailedRequest IEC_InterruptStackTooSmall 1 0x06 fsfw/src/fsfw/globalfunctions/matching/MatchTree.h ../../fsfw/osal/InternalErrorCodes.h MATCH_TREE_CLASS INTERNAL_ERROR_CODES
190 0x2302 0x2907 MT_TooGeneralRequest IEC_ThreadExitted 2 0x07 fsfw/src/fsfw/globalfunctions/matching/MatchTree.h ../../fsfw/osal/InternalErrorCodes.h MATCH_TREE_CLASS INTERNAL_ERROR_CODES
191 0x2303 0x2908 MT_NoMatch IEC_InconsistentMpInformation 3 0x08 fsfw/src/fsfw/globalfunctions/matching/MatchTree.h ../../fsfw/osal/InternalErrorCodes.h MATCH_TREE_CLASS INTERNAL_ERROR_CODES
192 0x2304 0x2909 MT_Full IEC_InvalidNode 4 0x09 fsfw/src/fsfw/globalfunctions/matching/MatchTree.h ../../fsfw/osal/InternalErrorCodes.h MATCH_TREE_CLASS INTERNAL_ERROR_CODES
193 0x2305 0x290a MT_NewNodeCreated IEC_NoMpci 5 0x0a fsfw/src/fsfw/globalfunctions/matching/MatchTree.h ../../fsfw/osal/InternalErrorCodes.h MATCH_TREE_CLASS INTERNAL_ERROR_CODES
194 0x3e01 0x290b DLEE_StreamTooShort IEC_BadPacket 0x01 0x0b fsfw/src/fsfw/globalfunctions/DleEncoder.h ../../fsfw/osal/InternalErrorCodes.h DLE_ENCODER INTERNAL_ERROR_CODES
195 0x3e02 0x290c DLEE_DecodingError IEC_OutOfPackets 0x02 0x0c fsfw/src/fsfw/globalfunctions/DleEncoder.h ../../fsfw/osal/InternalErrorCodes.h DLE_ENCODER INTERNAL_ERROR_CODES
196 0x2e01 0x290d ASC_TooLongForTargetType IEC_OutOfGlobalObjects 1 0x0d fsfw/src/fsfw/globalfunctions/AsciiConverter.h ../../fsfw/osal/InternalErrorCodes.h ASCII_CONVERTER INTERNAL_ERROR_CODES
197 0x2e02 0x290e ASC_InvalidCharacters IEC_OutOfProxies 2 0x0e fsfw/src/fsfw/globalfunctions/AsciiConverter.h ../../fsfw/osal/InternalErrorCodes.h ASCII_CONVERTER INTERNAL_ERROR_CODES
198 0x2e03 0x290f ASC_BufferTooSmall IEC_InvalidGlobalId 0x3 0x0f fsfw/src/fsfw/globalfunctions/AsciiConverter.h ../../fsfw/osal/InternalErrorCodes.h ASCII_CONVERTER INTERNAL_ERROR_CODES
199 0xf01 0x2910 CM_UnknownCommand IEC_BadStackHook 1 0x10 fsfw/src/fsfw/ipc/CommandMessageIF.h ../../fsfw/osal/InternalErrorCodes.h COMMAND_MESSAGE INTERNAL_ERROR_CODES
200 0x3901 0x2911 MQI_Empty IEC_BadAttributes 1 0x11 fsfw/src/fsfw/ipc/MessageQueueIF.h ../../fsfw/osal/InternalErrorCodes.h MESSAGE_QUEUE_IF INTERNAL_ERROR_CODES
201 0x3902 0x2912 MQI_Full IEC_ImplementationKeyCreateInconsistency No space left for more messages 2 0x12 fsfw/src/fsfw/ipc/MessageQueueIF.h ../../fsfw/osal/InternalErrorCodes.h MESSAGE_QUEUE_IF INTERNAL_ERROR_CODES
202 0x3903 0x2913 MQI_NoReplyPartner IEC_ImplementationBlockingOperationCancel Returned if a reply method was called without partner 3 0x13 fsfw/src/fsfw/ipc/MessageQueueIF.h ../../fsfw/osal/InternalErrorCodes.h MESSAGE_QUEUE_IF INTERNAL_ERROR_CODES
203 0x3904 0x2914 MQI_DestinationInvalid IEC_MutexObtainFromBadState Returned if the target destination is invalid. 4 0x14 fsfw/src/fsfw/ipc/MessageQueueIF.h ../../fsfw/osal/InternalErrorCodes.h MESSAGE_QUEUE_IF INTERNAL_ERROR_CODES
204 0x3801 0x2915 MUX_NotEnoughResources IEC_UnlimitedAndMaximumIs0 1 0x15 fsfw/src/fsfw/ipc/MutexIF.h ../../fsfw/osal/InternalErrorCodes.h MUTEX_IF INTERNAL_ERROR_CODES
205 0x3802 0x1d01 MUX_InsufficientMemory PUS_ActivityStarted 2 1 fsfw/src/fsfw/ipc/MutexIF.h ../../fsfw/tmtcservices/AcceptsTelecommandsIF.h MUTEX_IF ACCEPTS_TELECOMMANDS_IF
206 0x3803 0x1d02 MUX_NoPrivilege PUS_InvalidSubservice 3 2 fsfw/src/fsfw/ipc/MutexIF.h ../../fsfw/tmtcservices/AcceptsTelecommandsIF.h MUTEX_IF ACCEPTS_TELECOMMANDS_IF
207 0x3804 0x1d03 MUX_WrongAttributeSetting PUS_IllegalApplicationData 4 3 fsfw/src/fsfw/ipc/MutexIF.h ../../fsfw/tmtcservices/AcceptsTelecommandsIF.h MUTEX_IF ACCEPTS_TELECOMMANDS_IF
208 0x3805 0x1d04 MUX_MutexAlreadyLocked PUS_SendTmFailed 5 4 fsfw/src/fsfw/ipc/MutexIF.h ../../fsfw/tmtcservices/AcceptsTelecommandsIF.h MUTEX_IF ACCEPTS_TELECOMMANDS_IF
209 0x3806 0x1d05 MUX_MutexNotFound PUS_Timeout 6 5 fsfw/src/fsfw/ipc/MutexIF.h ../../fsfw/tmtcservices/AcceptsTelecommandsIF.h MUTEX_IF ACCEPTS_TELECOMMANDS_IF
210 0x3807 0x1f01 MUX_MutexMaxLocks CSB_ExecutionComplete 7 1 fsfw/src/fsfw/ipc/MutexIF.h ../../fsfw/tmtcservices/CommandingServiceBase.h MUTEX_IF COMMAND_SERVICE_BASE
211 0x3808 0x1f02 MUX_CurrThreadAlreadyOwnsMutex CSB_NoStepMessage 8 2 fsfw/src/fsfw/ipc/MutexIF.h ../../fsfw/tmtcservices/CommandingServiceBase.h MUTEX_IF COMMAND_SERVICE_BASE
212 0x3809 0x1f03 MUX_CurrThreadDoesNotOwnMutex CSB_ObjectBusy 9 3 fsfw/src/fsfw/ipc/MutexIF.h ../../fsfw/tmtcservices/CommandingServiceBase.h MUTEX_IF COMMAND_SERVICE_BASE
213 0x380a 0x1f04 MUX_MutexTimeout CSB_Busy 10 4 fsfw/src/fsfw/ipc/MutexIF.h ../../fsfw/tmtcservices/CommandingServiceBase.h MUTEX_IF COMMAND_SERVICE_BASE
214 0x380b 0x1f05 MUX_MutexInvalidId CSB_InvalidTc 11 5 fsfw/src/fsfw/ipc/MutexIF.h ../../fsfw/tmtcservices/CommandingServiceBase.h MUTEX_IF COMMAND_SERVICE_BASE
215 0x380c 0x1f06 MUX_MutexDestroyedWhileWaiting CSB_InvalidObject 12 6 fsfw/src/fsfw/ipc/MutexIF.h ../../fsfw/tmtcservices/CommandingServiceBase.h MUTEX_IF COMMAND_SERVICE_BASE
216 0x3a01 0x1f07 SPH_SemaphoreTimeout CSB_InvalidReply 1 7 fsfw/src/fsfw/tasks/SemaphoreIF.h ../../fsfw/tmtcservices/CommandingServiceBase.h SEMAPHORE_IF COMMAND_SERVICE_BASE
217 0x3a02 0x801 SPH_SemaphoreNotOwned DPS_InvalidParameterDefinition 2 1 fsfw/src/fsfw/tasks/SemaphoreIF.h ../../fsfw/datapool/DataSetIF.h SEMAPHORE_IF DATA_SET_CLASS
218 0x3a03 0x802 SPH_SemaphoreInvalid DPS_SetWasAlreadyRead 3 2 fsfw/src/fsfw/tasks/SemaphoreIF.h ../../fsfw/datapool/DataSetIF.h SEMAPHORE_IF DATA_SET_CLASS
219 0x3501 0x803 CFDP_InvalidTlvType DPS_CommitingWithoutReading 1 3 fsfw/src/fsfw/cfdp/definitions.h ../../fsfw/datapool/DataSetIF.h CFDP DATA_SET_CLASS
220 0x3502 0x804 CFDP_InvalidDirectiveFields DPS_DataSetUninitialised 2 4 fsfw/src/fsfw/cfdp/definitions.h ../../fsfw/datapool/DataSetIF.h CFDP DATA_SET_CLASS
221 0x3503 0x805 CFDP_InvalidPduDatafieldLen DPS_DataSetFull 3 5 fsfw/src/fsfw/cfdp/definitions.h ../../fsfw/datapool/DataSetIF.h CFDP DATA_SET_CLASS
222 0x3504 0x806 CFDP_InvalidAckDirectiveFields DPS_PoolVarNull 4 6 fsfw/src/fsfw/cfdp/definitions.h ../../fsfw/datapool/DataSetIF.h CFDP DATA_SET_CLASS
223 0x3505 0x3ba0 CFDP_MetadataCantParseOptions PVA_InvalidReadWriteMode 5 0xA0 fsfw/src/fsfw/cfdp/definitions.h ../../fsfw/datapool/PoolVariableIF.h CFDP POOL_VARIABLE_IF
224 0x3506 0x3ba1 CFDP_FinishedCantParseFsResponses PVA_InvalidPoolEntry 6 0xA1 fsfw/src/fsfw/cfdp/definitions.h ../../fsfw/datapool/PoolVariableIF.h CFDP POOL_VARIABLE_IF
225 0x3508 0x2500 CFDP_FilestoreRequiresSecondFile FDI_YourFault 8 0 fsfw/src/fsfw/cfdp/definitions.h ../../fsfw/fdir/ConfirmsFailuresIF.h CFDP HANDLES_FAILURES_IF
226 0x3509 0x2501 CFDP_FilestoreResponseCantParseFsMessage FDI_MyFault 9 1 fsfw/src/fsfw/cfdp/definitions.h ../../fsfw/fdir/ConfirmsFailuresIF.h CFDP HANDLES_FAILURES_IF
227 0x2801 0x2502 TC_InvalidTargetState FDI_ConfirmLater 1 2 fsfw/src/fsfw/thermal/ThermalComponentIF.h ../../fsfw/fdir/ConfirmsFailuresIF.h THERMAL_COMPONENT_IF HANDLES_FAILURES_IF
228 0x28f1 0x36a1 TC_AboveOperationalLimit SGP4_InvalidEccentricity 0xF1 0xA1 fsfw/src/fsfw/thermal/ThermalComponentIF.h ../../fsfw/coordinates/Sgp4Propagator.h THERMAL_COMPONENT_IF SGP4PROPAGATOR_CLASS
229 0x28f2 0x36a2 TC_BelowOperationalLimit SGP4_InvalidMeanMotion 0xF2 0xA2 fsfw/src/fsfw/thermal/ThermalComponentIF.h ../../fsfw/coordinates/Sgp4Propagator.h THERMAL_COMPONENT_IF SGP4PROPAGATOR_CLASS
230 0xc02 0x36a3 MS_InvalidEntry SGP4_InvalidPerturbationElements 0x02 0xA3 fsfw/src/fsfw/subsystem/modes/ModeStoreIF.h ../../fsfw/coordinates/Sgp4Propagator.h MODE_STORE_IF SGP4PROPAGATOR_CLASS
231 0xc03 0x36a4 MS_TooManyElements SGP4_InvalidSemiLatusRectum 0x03 0xA4 fsfw/src/fsfw/subsystem/modes/ModeStoreIF.h ../../fsfw/coordinates/Sgp4Propagator.h MODE_STORE_IF SGP4PROPAGATOR_CLASS
232 0xc04 0x36a5 MS_CantStoreEmpty SGP4_InvalidEpochElements 0x04 0xA5 fsfw/src/fsfw/subsystem/modes/ModeStoreIF.h ../../fsfw/coordinates/Sgp4Propagator.h MODE_STORE_IF SGP4PROPAGATOR_CLASS
233 0xd01 0x36a6 SS_SequenceAlreadyExists SGP4_SatelliteHasDecayed 0x01 0xA6 fsfw/src/fsfw/subsystem/Subsystem.h ../../fsfw/coordinates/Sgp4Propagator.h SUBSYSTEM SGP4PROPAGATOR_CLASS
234 0xd02 0x36b1 SS_TableAlreadyExists SGP4_TleTooOld 0x02 0xB1 fsfw/src/fsfw/subsystem/Subsystem.h ../../fsfw/coordinates/Sgp4Propagator.h SUBSYSTEM SGP4PROPAGATOR_CLASS
235 0xd03 0x36b2 SS_TableDoesNotExist SGP4_TleNotInitialized 0x03 0xB2 fsfw/src/fsfw/subsystem/Subsystem.h ../../fsfw/coordinates/Sgp4Propagator.h SUBSYSTEM SGP4PROPAGATOR_CLASS
236 0xd04 0x2401 SS_TableOrSequenceLengthInvalid EV_ListenerNotFound 0x04 1 fsfw/src/fsfw/subsystem/Subsystem.h ../../fsfw/events/EventManagerIF.h SUBSYSTEM EVENT_MANAGER_IF
237 0xd05 0x1101 SS_SequenceDoesNotExist AL_Full 0x05 0x01 fsfw/src/fsfw/subsystem/Subsystem.h ../../fsfw/container/ArrayList.h SUBSYSTEM ARRAY_LIST
238 0xd06 0x1601 SS_TableContainsInvalidObjectId FMM_MapFull 0x06 0x01 fsfw/src/fsfw/subsystem/Subsystem.h ../../fsfw/container/FixedOrderedMultimap.h SUBSYSTEM FIXED_MULTIMAP
239 0xd07 0x1602 SS_FallbackSequenceDoesNotExist FMM_KeyDoesNotExist 0x07 0x02 fsfw/src/fsfw/subsystem/Subsystem.h ../../fsfw/container/FixedOrderedMultimap.h SUBSYSTEM FIXED_MULTIMAP
240 0xd08 0x1801 SS_NoTargetTable FF_Full 0x08 1 fsfw/src/fsfw/subsystem/Subsystem.h ../../fsfw/container/FIFOBase.h SUBSYSTEM FIFO_CLASS
241 0xd09 0x1802 SS_SequenceOrTableTooLong FF_Empty 0x09 2 fsfw/src/fsfw/subsystem/Subsystem.h ../../fsfw/container/FIFOBase.h SUBSYSTEM FIFO_CLASS
242 0xd0b 0x1501 SS_IsFallbackSequence FM_KeyAlreadyExists 0x0B 0x01 fsfw/src/fsfw/subsystem/Subsystem.h ../../fsfw/container/FixedMap.h SUBSYSTEM FIXED_MAP
243 0xd0c 0x1502 SS_AccessDenied FM_MapFull 0x0C 0x02 fsfw/src/fsfw/subsystem/Subsystem.h ../../fsfw/container/FixedMap.h SUBSYSTEM FIXED_MAP
244 0xd0e 0x1503 SS_TableInUse FM_KeyDoesNotExist 0x0E 0x03 fsfw/src/fsfw/subsystem/Subsystem.h ../../fsfw/container/FixedMap.h SUBSYSTEM FIXED_MAP
245 0xda1 0xe01 SS_TargetTableNotReached HM_InvalidMode 0xA1 0x01 fsfw/src/fsfw/subsystem/Subsystem.h ../../fsfw/modes/HasModesIF.h SUBSYSTEM HAS_MODES_IF
246 0xda2 0xe02 SS_TableCheckFailed HM_TransNotAllowed 0xA2 0x02 fsfw/src/fsfw/subsystem/Subsystem.h ../../fsfw/modes/HasModesIF.h SUBSYSTEM HAS_MODES_IF
247 0xb01 0xe03 SB_ChildNotFound HM_InTransition 0x01 0x03 fsfw/src/fsfw/subsystem/SubsystemBase.h ../../fsfw/modes/HasModesIF.h SUBSYSTEM_BASE HAS_MODES_IF
248 0xb02 0xe04 SB_ChildInfoUpdated HM_InvalidSubmode 0x02 0x04 fsfw/src/fsfw/subsystem/SubsystemBase.h ../../fsfw/modes/HasModesIF.h SUBSYSTEM_BASE HAS_MODES_IF
249 0xb03 0x201 SB_ChildDoesntHaveModes OM_InsertionFailed 0x03 1 fsfw/src/fsfw/subsystem/SubsystemBase.h ../../fsfw/objectmanager/ObjectManagerIF.h SUBSYSTEM_BASE OBJECT_MANAGER_IF
250 0xb04 0x202 SB_CouldNotInsertChild OM_NotFound 0x04 2 fsfw/src/fsfw/subsystem/SubsystemBase.h ../../fsfw/objectmanager/ObjectManagerIF.h SUBSYSTEM_BASE OBJECT_MANAGER_IF
251 0xb05 0x203 SB_TableContainsInvalidObjectId OM_ChildInitFailed 0x05 3 fsfw/src/fsfw/subsystem/SubsystemBase.h ../../fsfw/objectmanager/ObjectManagerIF.h SUBSYSTEM_BASE OBJECT_MANAGER_IF
252 0x3d00 0x204 HKM_QueueOrDestinationInvalid OM_InternalErrReporterUninit 0 4 fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h ../../fsfw/objectmanager/ObjectManagerIF.h HOUSEKEEPING_MANAGER OBJECT_MANAGER_IF
253 0x3d01 0x1000 HKM_WrongHkPacketType TIM_UnsupportedTimeFormat 1 0 fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h ../../fsfw/timemanager/CCSDSTime.h HOUSEKEEPING_MANAGER CCSDS_TIME_HELPER_CLASS
254 0x3d02 0x1001 HKM_ReportingStatusUnchanged TIM_NotEnoughInformationForTargetFormat 2 1 fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h ../../fsfw/timemanager/CCSDSTime.h HOUSEKEEPING_MANAGER CCSDS_TIME_HELPER_CLASS
255 0x3d03 0x1002 HKM_PeriodicHelperInvalid TIM_LengthMismatch 3 2 fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h ../../fsfw/timemanager/CCSDSTime.h HOUSEKEEPING_MANAGER CCSDS_TIME_HELPER_CLASS
256 0x3d04 0x1003 HKM_PoolobjectNotFound TIM_InvalidTimeFormat 4 3 fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h ../../fsfw/timemanager/CCSDSTime.h HOUSEKEEPING_MANAGER CCSDS_TIME_HELPER_CLASS
257 0x3d05 0x1004 HKM_DatasetNotFound TIM_InvalidDayOfYear 5 4 fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h ../../fsfw/timemanager/CCSDSTime.h HOUSEKEEPING_MANAGER CCSDS_TIME_HELPER_CLASS
258 0x3b00 0x1005 LPIF_PoolEntryNotFound TIM_TimeDoesNotFitFormat 0x00 5 fsfw/src/fsfw/datapoollocal/localPoolDefinitions.h ../../fsfw/timemanager/CCSDSTime.h LOCAL_POOL_OWNER_IF CCSDS_TIME_HELPER_CLASS
259 0x3b01 0x3501 LPIF_PoolEntryTypeConflict TSI_BadTimestamp 0x01 1 fsfw/src/fsfw/datapoollocal/localPoolDefinitions.h ../../fsfw/timemanager/TimeStamperIF.h LOCAL_POOL_OWNER_IF TIME_STAMPER_IF
260 0x3ca0 0x1a01 PVA_InvalidReadWriteMode TRC_NotEnoughSensors 0xA0 1 fsfw/src/fsfw/datapool/PoolVariableIF.h ../../fsfw/monitoring/TriplexMonitor.h POOL_VARIABLE_IF TRIPLE_REDUNDACY_CHECK
261 0x3ca1 0x1a02 PVA_InvalidPoolEntry TRC_LowestValueOol 0xA1 2 fsfw/src/fsfw/datapool/PoolVariableIF.h ../../fsfw/monitoring/TriplexMonitor.h POOL_VARIABLE_IF TRIPLE_REDUNDACY_CHECK
262 0x801 0x1a03 DPS_InvalidParameterDefinition TRC_HighestValueOol 1 3 fsfw/src/fsfw/datapool/DataSetIF.h ../../fsfw/monitoring/TriplexMonitor.h DATA_SET_CLASS TRIPLE_REDUNDACY_CHECK
263 0x802 0x1a04 DPS_SetWasAlreadyRead TRC_BothValuesOol 2 4 fsfw/src/fsfw/datapool/DataSetIF.h ../../fsfw/monitoring/TriplexMonitor.h DATA_SET_CLASS TRIPLE_REDUNDACY_CHECK
264 0x803 0x1a05 DPS_CommitingWithoutReading TRC_DuplexOol 3 5 fsfw/src/fsfw/datapool/DataSetIF.h ../../fsfw/monitoring/TriplexMonitor.h DATA_SET_CLASS TRIPLE_REDUNDACY_CHECK
265 0x804 0x3001 DPS_DataSetUninitialised LIM_Unchecked 4 1 fsfw/src/fsfw/datapool/DataSetIF.h ../../fsfw/monitoring/MonitoringIF.h DATA_SET_CLASS LIMITS_IF
266 0x805 0x3002 DPS_DataSetFull LIM_Invalid 5 2 fsfw/src/fsfw/datapool/DataSetIF.h ../../fsfw/monitoring/MonitoringIF.h DATA_SET_CLASS LIMITS_IF
267 0x806 0x3003 DPS_PoolVarNull LIM_Unselected 6 3 fsfw/src/fsfw/datapool/DataSetIF.h ../../fsfw/monitoring/MonitoringIF.h DATA_SET_CLASS LIMITS_IF
268 0x1000 0x3004 TIM_UnsupportedTimeFormat LIM_BelowLowLimit 0 4 fsfw/src/fsfw/timemanager/CCSDSTime.h ../../fsfw/monitoring/MonitoringIF.h CCSDS_TIME_HELPER_CLASS LIMITS_IF
269 0x1001 0x3005 TIM_NotEnoughInformationForTargetFormat LIM_AboveHighLimit 1 5 fsfw/src/fsfw/timemanager/CCSDSTime.h ../../fsfw/monitoring/MonitoringIF.h CCSDS_TIME_HELPER_CLASS LIMITS_IF
270 0x1002 0x3006 TIM_LengthMismatch LIM_UnexpectedValue 2 6 fsfw/src/fsfw/timemanager/CCSDSTime.h ../../fsfw/monitoring/MonitoringIF.h CCSDS_TIME_HELPER_CLASS LIMITS_IF
271 0x1003 0x3007 TIM_InvalidTimeFormat LIM_OutOfRange 3 7 fsfw/src/fsfw/timemanager/CCSDSTime.h ../../fsfw/monitoring/MonitoringIF.h CCSDS_TIME_HELPER_CLASS LIMITS_IF
272 0x1004 0x30a0 TIM_InvalidDayOfYear LIM_FirstSample 4 0xA0 fsfw/src/fsfw/timemanager/CCSDSTime.h ../../fsfw/monitoring/MonitoringIF.h CCSDS_TIME_HELPER_CLASS LIMITS_IF
273 0x1005 0x30e0 TIM_TimeDoesNotFitFormat LIM_InvalidSize 5 0xE0 fsfw/src/fsfw/timemanager/CCSDSTime.h ../../fsfw/monitoring/MonitoringIF.h CCSDS_TIME_HELPER_CLASS LIMITS_IF
274 0x3601 0x30e1 TSI_BadTimestamp LIM_WrongType 1 0xE1 fsfw/src/fsfw/timemanager/TimeStamperIF.h ../../fsfw/monitoring/MonitoringIF.h TIME_STAMPER_IF LIMITS_IF
275 0x1d01 0x30e2 PUS_ActivityStarted LIM_WrongPid 1 0xE2 fsfw/src/fsfw/tmtcservices/AcceptsTelecommandsIF.h ../../fsfw/monitoring/MonitoringIF.h ACCEPTS_TELECOMMANDS_IF LIMITS_IF
276 0x1d02 0x30e3 PUS_InvalidSubservice LIM_WrongLimitId 2 0xE3 fsfw/src/fsfw/tmtcservices/AcceptsTelecommandsIF.h ../../fsfw/monitoring/MonitoringIF.h ACCEPTS_TELECOMMANDS_IF LIMITS_IF
277 0x1d03 0x30ee PUS_IllegalApplicationData LIM_MonitorNotFound 3 0xEE fsfw/src/fsfw/tmtcservices/AcceptsTelecommandsIF.h ../../fsfw/monitoring/MonitoringIF.h ACCEPTS_TELECOMMANDS_IF LIMITS_IF
278 0x1d04 0x3a00 PUS_SendTmFailed LPIF_PoolEntryNotFound 4 0x00 fsfw/src/fsfw/tmtcservices/AcceptsTelecommandsIF.h ../../fsfw/datapoollocal/localPoolDefinitions.h ACCEPTS_TELECOMMANDS_IF LOCAL_POOL_OWNER_IF
279 0x1d05 0x3a01 PUS_Timeout LPIF_PoolEntryTypeConflict 5 0x01 fsfw/src/fsfw/tmtcservices/AcceptsTelecommandsIF.h ../../fsfw/datapoollocal/localPoolDefinitions.h ACCEPTS_TELECOMMANDS_IF LOCAL_POOL_OWNER_IF
280 0x4b00 0x3c00 SPPA_NoPacketFound HKM_QueueOrDestinationInvalid 0x00 0 fsfw/src/fsfw/tmtcservices/SpacePacketParser.h ../../fsfw/datapoollocal/LocalDataPoolManager.h SPACE_PACKET_PARSER HOUSEKEEPING_MANAGER
281 0x4b01 0x3c01 SPPA_SplitPacket HKM_WrongHkPacketType 0x01 1 fsfw/src/fsfw/tmtcservices/SpacePacketParser.h ../../fsfw/datapoollocal/LocalDataPoolManager.h SPACE_PACKET_PARSER HOUSEKEEPING_MANAGER
282 0x1f01 0x3c02 CSB_ExecutionComplete HKM_ReportingStatusUnchanged 1 2 fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h ../../fsfw/datapoollocal/LocalDataPoolManager.h COMMAND_SERVICE_BASE HOUSEKEEPING_MANAGER
283 0x1f02 0x3c03 CSB_NoStepMessage HKM_PeriodicHelperInvalid 2 3 fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h ../../fsfw/datapoollocal/LocalDataPoolManager.h COMMAND_SERVICE_BASE HOUSEKEEPING_MANAGER
284 0x1f03 0x3c04 CSB_ObjectBusy HKM_PoolobjectNotFound 3 4 fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h ../../fsfw/datapoollocal/LocalDataPoolManager.h COMMAND_SERVICE_BASE HOUSEKEEPING_MANAGER
285 0x1f04 0x3c05 CSB_Busy HKM_DatasetNotFound 4 5 fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h ../../fsfw/datapoollocal/LocalDataPoolManager.h COMMAND_SERVICE_BASE HOUSEKEEPING_MANAGER
286 0x1f05 0xc02 CSB_InvalidTc MS_InvalidEntry 5 0x02 fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h ../../fsfw/subsystem/modes/ModeStoreIF.h COMMAND_SERVICE_BASE MODE_STORE_IF
287 0x1f06 0xc03 CSB_InvalidObject MS_TooManyElements 6 0x03 fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h ../../fsfw/subsystem/modes/ModeStoreIF.h COMMAND_SERVICE_BASE MODE_STORE_IF
288 0x1f07 0xc04 CSB_InvalidReply MS_CantStoreEmpty 7 0x04 fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h ../../fsfw/subsystem/modes/ModeStoreIF.h COMMAND_SERVICE_BASE MODE_STORE_IF
289 0x1101 0xb01 AL_Full SB_ChildNotFound 0x01 fsfw/src/fsfw/container/ArrayList.h ../../fsfw/subsystem/SubsystemBase.h ARRAY_LIST SUBSYSTEM_BASE
290 0x1801 0xb02 FF_Full SB_ChildInfoUpdated 1 0x02 fsfw/src/fsfw/container/FIFOBase.h ../../fsfw/subsystem/SubsystemBase.h FIFO_CLASS SUBSYSTEM_BASE
291 0x1802 0xb03 FF_Empty SB_ChildDoesntHaveModes 2 0x03 fsfw/src/fsfw/container/FIFOBase.h ../../fsfw/subsystem/SubsystemBase.h FIFO_CLASS SUBSYSTEM_BASE
292 0x1601 0xb04 FMM_MapFull SB_CouldNotInsertChild 0x01 0x04 fsfw/src/fsfw/container/FixedOrderedMultimap.h ../../fsfw/subsystem/SubsystemBase.h FIXED_MULTIMAP SUBSYSTEM_BASE
293 0x1602 0xb05 FMM_KeyDoesNotExist SB_TableContainsInvalidObjectId 0x02 0x05 fsfw/src/fsfw/container/FixedOrderedMultimap.h ../../fsfw/subsystem/SubsystemBase.h FIXED_MULTIMAP SUBSYSTEM_BASE
294 0x1501 0xd01 FM_KeyAlreadyExists SS_SequenceAlreadyExists 0x01 fsfw/src/fsfw/container/FixedMap.h ../../fsfw/subsystem/Subsystem.h FIXED_MAP SUBSYSTEM
295 0x1502 0xd02 FM_MapFull SS_TableAlreadyExists 0x02 fsfw/src/fsfw/container/FixedMap.h ../../fsfw/subsystem/Subsystem.h FIXED_MAP SUBSYSTEM
296 0x1503 0xd03 FM_KeyDoesNotExist SS_TableDoesNotExist 0x03 fsfw/src/fsfw/container/FixedMap.h ../../fsfw/subsystem/Subsystem.h FIXED_MAP SUBSYSTEM
297 0x2401 0xd04 EV_ListenerNotFound SS_TableOrSequenceLengthInvalid 1 0x04 fsfw/src/fsfw/events/EventManagerIF.h ../../fsfw/subsystem/Subsystem.h EVENT_MANAGER_IF SUBSYSTEM
298 0x1701 0xd05 HHI_ObjectNotHealthy SS_SequenceDoesNotExist 1 0x05 fsfw/src/fsfw/health/HasHealthIF.h ../../fsfw/subsystem/Subsystem.h HAS_HEALTH_IF SUBSYSTEM
299 0x1702 0xd06 HHI_InvalidHealthState SS_TableContainsInvalidObjectId 2 0x06 fsfw/src/fsfw/health/HasHealthIF.h ../../fsfw/subsystem/Subsystem.h HAS_HEALTH_IF SUBSYSTEM
300 0x2f01 0xd07 POS_InPowerTransition SS_FallbackSequenceDoesNotExist 1 0x07 fsfw/src/fsfw/power/PowerSwitcher.h ../../fsfw/subsystem/Subsystem.h POWER_SWITCHER SUBSYSTEM
301 0x2f02 0xd08 POS_SwitchStateMismatch SS_NoTargetTable 2 0x08 fsfw/src/fsfw/power/PowerSwitcher.h ../../fsfw/subsystem/Subsystem.h POWER_SWITCHER SUBSYSTEM
302 0x501 0xd09 PS_SwitchOn SS_SequenceOrTableTooLong 1 0x09 fsfw/src/fsfw/power/PowerSwitchIF.h ../../fsfw/subsystem/Subsystem.h POWER_SWITCH_IF SUBSYSTEM
303 0x500 0xd0b PS_SwitchOff SS_IsFallbackSequence 0 0x0B fsfw/src/fsfw/power/PowerSwitchIF.h ../../fsfw/subsystem/Subsystem.h POWER_SWITCH_IF SUBSYSTEM
304 0x502 0xd0c PS_SwitchTimeout SS_AccessDenied 2 0x0C fsfw/src/fsfw/power/PowerSwitchIF.h ../../fsfw/subsystem/Subsystem.h POWER_SWITCH_IF SUBSYSTEM
305 0x503 0xd0e PS_FuseOn SS_TableInUse 3 0x0E fsfw/src/fsfw/power/PowerSwitchIF.h ../../fsfw/subsystem/Subsystem.h POWER_SWITCH_IF SUBSYSTEM
306 0x504 0xda1 PS_FuseOff SS_TargetTableNotReached 4 0xA1 fsfw/src/fsfw/power/PowerSwitchIF.h ../../fsfw/subsystem/Subsystem.h POWER_SWITCH_IF SUBSYSTEM
307 0x1a01 0xda2 TRC_NotEnoughSensors SS_TableCheckFailed 1 0xA2 fsfw/src/fsfw/monitoring/TriplexMonitor.h ../../fsfw/subsystem/Subsystem.h TRIPLE_REDUNDACY_CHECK SUBSYSTEM
308 0x1a02 0x501 TRC_LowestValueOol PS_SwitchOn 2 1 fsfw/src/fsfw/monitoring/TriplexMonitor.h ../../fsfw/power/PowerSwitchIF.h TRIPLE_REDUNDACY_CHECK POWER_SWITCH_IF
309 0x1a03 0x500 TRC_HighestValueOol PS_SwitchOff 3 0 fsfw/src/fsfw/monitoring/TriplexMonitor.h ../../fsfw/power/PowerSwitchIF.h TRIPLE_REDUNDACY_CHECK POWER_SWITCH_IF
310 0x1a04 0x502 TRC_BothValuesOol PS_SwitchTimeout 4 2 fsfw/src/fsfw/monitoring/TriplexMonitor.h ../../fsfw/power/PowerSwitchIF.h TRIPLE_REDUNDACY_CHECK POWER_SWITCH_IF
311 0x1a05 0x503 TRC_DuplexOol PS_FuseOn 5 3 fsfw/src/fsfw/monitoring/TriplexMonitor.h ../../fsfw/power/PowerSwitchIF.h TRIPLE_REDUNDACY_CHECK POWER_SWITCH_IF
312 0x3001 0x504 LIM_Unchecked PS_FuseOff 1 4 fsfw/src/fsfw/monitoring/MonitoringIF.h ../../fsfw/power/PowerSwitchIF.h LIMITS_IF POWER_SWITCH_IF
313 0x3002 0x2f01 LIM_Invalid POS_InPowerTransition 2 1 fsfw/src/fsfw/monitoring/MonitoringIF.h ../../fsfw/power/PowerSwitcher.h LIMITS_IF POWER_SWITCHER
314 0x3003 0x2f02 LIM_Unselected POS_SwitchStateMismatch 3 2 fsfw/src/fsfw/monitoring/MonitoringIF.h ../../fsfw/power/PowerSwitcher.h LIMITS_IF POWER_SWITCHER
315 0x3004 0x2701 LIM_BelowLowLimit SM_DataTooLarge 4 1 fsfw/src/fsfw/monitoring/MonitoringIF.h ../../fsfw/storagemanager/StorageManagerIF.h LIMITS_IF STORAGE_MANAGER_IF
316 0x3005 0x2702 LIM_AboveHighLimit SM_DataStorageFull 5 2 fsfw/src/fsfw/monitoring/MonitoringIF.h ../../fsfw/storagemanager/StorageManagerIF.h LIMITS_IF STORAGE_MANAGER_IF
317 0x3006 0x2703 LIM_UnexpectedValue SM_IllegalStorageId 6 3 fsfw/src/fsfw/monitoring/MonitoringIF.h ../../fsfw/storagemanager/StorageManagerIF.h LIMITS_IF STORAGE_MANAGER_IF
318 0x3007 0x2704 LIM_OutOfRange SM_DataDoesNotExist 7 4 fsfw/src/fsfw/monitoring/MonitoringIF.h ../../fsfw/storagemanager/StorageManagerIF.h LIMITS_IF STORAGE_MANAGER_IF
319 0x30a0 0x2705 LIM_FirstSample SM_IllegalAddress 0xA0 5 fsfw/src/fsfw/monitoring/MonitoringIF.h ../../fsfw/storagemanager/StorageManagerIF.h LIMITS_IF STORAGE_MANAGER_IF
320 0x30e0 0x2706 LIM_InvalidSize SM_PoolTooLarge 0xE0 6 fsfw/src/fsfw/monitoring/MonitoringIF.h ../../fsfw/storagemanager/StorageManagerIF.h LIMITS_IF STORAGE_MANAGER_IF
321 0x30e1 0x2801 LIM_WrongType TC_InvalidTargetState 0xE1 1 fsfw/src/fsfw/monitoring/MonitoringIF.h ../../fsfw/thermal/ThermalComponentIF.h LIMITS_IF THERMAL_COMPONENT_IF
322 0x30e2 0x28f1 LIM_WrongPid TC_AboveOperationalLimit 0xE2 0xF1 fsfw/src/fsfw/monitoring/MonitoringIF.h ../../fsfw/thermal/ThermalComponentIF.h LIMITS_IF THERMAL_COMPONENT_IF
323 0x30e3 0x28f2 LIM_WrongLimitId TC_BelowOperationalLimit 0xE3 0xF2 fsfw/src/fsfw/monitoring/MonitoringIF.h ../../fsfw/thermal/ThermalComponentIF.h LIMITS_IF THERMAL_COMPONENT_IF
324 0x30ee 0x1701 LIM_MonitorNotFound HHI_ObjectNotHealthy 0xEE 1 fsfw/src/fsfw/monitoring/MonitoringIF.h ../../fsfw/health/HasHealthIF.h LIMITS_IF HAS_HEALTH_IF
325 0x4101 0x1702 PUS11_InvalidTypeTimeWindow HHI_InvalidHealthState 1 2 fsfw/src/fsfw/pus/Service11TelecommandScheduling.h ../../fsfw/health/HasHealthIF.h PUS_SERVICE_11 HAS_HEALTH_IF
326 0x4102 0x2b01 PUS11_TimeshiftingNotPossible CCS_BcIsSetVrCommand 2 0x01 fsfw/src/fsfw/pus/Service11TelecommandScheduling.h ../../fsfw/datalinklayer/CCSDSReturnValuesIF.h PUS_SERVICE_11 CCSDS_HANDLER_IF
327 0x4103 0x2b02 PUS11_InvalidRelativeTime CCS_BcIsUnlockCommand 3 0x02 fsfw/src/fsfw/pus/Service11TelecommandScheduling.h ../../fsfw/datalinklayer/CCSDSReturnValuesIF.h PUS_SERVICE_11 CCSDS_HANDLER_IF
328 0x4200 0x2bb0 FILS_GenericFileError CCS_BcIllegalCommand 0 0xB0 fsfw/src/fsfw/memory/HasFileSystemIF.h ../../fsfw/datalinklayer/CCSDSReturnValuesIF.h FILE_SYSTEM CCSDS_HANDLER_IF
329 0x4201 0x2bb1 FILS_IsBusy CCS_BoardReadingNotFinished 1 0xB1 fsfw/src/fsfw/memory/HasFileSystemIF.h ../../fsfw/datalinklayer/CCSDSReturnValuesIF.h FILE_SYSTEM CCSDS_HANDLER_IF
330 0x4202 0x2bf0 FILS_InvalidParameters CCS_NsPositiveW 2 0xF0 fsfw/src/fsfw/memory/HasFileSystemIF.h ../../fsfw/datalinklayer/CCSDSReturnValuesIF.h FILE_SYSTEM CCSDS_HANDLER_IF
331 0x4205 0x2bf1 FILS_FileDoesNotExist CCS_NsNegativeW 5 0xF1 fsfw/src/fsfw/memory/HasFileSystemIF.h ../../fsfw/datalinklayer/CCSDSReturnValuesIF.h FILE_SYSTEM CCSDS_HANDLER_IF
332 0x4206 0x2bf2 FILS_FileAlreadyExists CCS_NsLockout 6 0xF2 fsfw/src/fsfw/memory/HasFileSystemIF.h ../../fsfw/datalinklayer/CCSDSReturnValuesIF.h FILE_SYSTEM CCSDS_HANDLER_IF
333 0x4207 0x2bf3 FILS_FileLocked CCS_FarmInLockout 7 0xF3 fsfw/src/fsfw/memory/HasFileSystemIF.h ../../fsfw/datalinklayer/CCSDSReturnValuesIF.h FILE_SYSTEM CCSDS_HANDLER_IF
334 0x420a 0x2bf4 FILS_DirectoryDoesNotExist CCS_FarmInWait 10 0xF4 fsfw/src/fsfw/memory/HasFileSystemIF.h ../../fsfw/datalinklayer/CCSDSReturnValuesIF.h FILE_SYSTEM CCSDS_HANDLER_IF
335 0x420b 0x2be0 FILS_DirectoryAlreadyExists CCS_WrongSymbol 11 0xE0 fsfw/src/fsfw/memory/HasFileSystemIF.h ../../fsfw/datalinklayer/CCSDSReturnValuesIF.h FILE_SYSTEM CCSDS_HANDLER_IF
336 0x420c 0x2be1 FILS_DirectoryNotEmpty CCS_DoubleStart 12 0xE1 fsfw/src/fsfw/memory/HasFileSystemIF.h ../../fsfw/datalinklayer/CCSDSReturnValuesIF.h FILE_SYSTEM CCSDS_HANDLER_IF
337 0x420f 0x2be2 FILS_SequencePacketMissingWrite CCS_StartSymbolMissed 15 0xE2 fsfw/src/fsfw/memory/HasFileSystemIF.h ../../fsfw/datalinklayer/CCSDSReturnValuesIF.h FILE_SYSTEM CCSDS_HANDLER_IF
338 0x4210 0x2be3 FILS_SequencePacketMissingRead CCS_EndWithoutStart 16 0xE3 fsfw/src/fsfw/memory/HasFileSystemIF.h ../../fsfw/datalinklayer/CCSDSReturnValuesIF.h FILE_SYSTEM CCSDS_HANDLER_IF
339 0x601 0x2be4 PP_DoItMyself CCS_TooLarge 1 0xE4 fsfw/src/fsfw/memory/HasMemoryIF.h ../../fsfw/datalinklayer/CCSDSReturnValuesIF.h HAS_MEMORY_IF CCSDS_HANDLER_IF
340 0x602 0x2be5 PP_PointsToVariable CCS_TooShort 2 0xE5 fsfw/src/fsfw/memory/HasMemoryIF.h ../../fsfw/datalinklayer/CCSDSReturnValuesIF.h HAS_MEMORY_IF CCSDS_HANDLER_IF
341 0x603 0x2be6 PP_PointsToMemory CCS_WrongTfVersion 3 0xE6 fsfw/src/fsfw/memory/HasMemoryIF.h ../../fsfw/datalinklayer/CCSDSReturnValuesIF.h HAS_MEMORY_IF CCSDS_HANDLER_IF
342 0x604 0x2be7 PP_ActivityCompleted CCS_WrongSpacecraftId 4 0xE7 fsfw/src/fsfw/memory/HasMemoryIF.h ../../fsfw/datalinklayer/CCSDSReturnValuesIF.h HAS_MEMORY_IF CCSDS_HANDLER_IF
343 0x605 0x2be8 PP_PointsToVectorUint8 CCS_NoValidFrameType 5 0xE8 fsfw/src/fsfw/memory/HasMemoryIF.h ../../fsfw/datalinklayer/CCSDSReturnValuesIF.h HAS_MEMORY_IF CCSDS_HANDLER_IF
344 0x606 0x2be9 PP_PointsToVectorUint16 CCS_CrcFailed 6 0xE9 fsfw/src/fsfw/memory/HasMemoryIF.h ../../fsfw/datalinklayer/CCSDSReturnValuesIF.h HAS_MEMORY_IF CCSDS_HANDLER_IF
345 0x607 0x2bea PP_PointsToVectorUint32 CCS_VcNotFound 7 0xEA fsfw/src/fsfw/memory/HasMemoryIF.h ../../fsfw/datalinklayer/CCSDSReturnValuesIF.h HAS_MEMORY_IF CCSDS_HANDLER_IF
346 0x608 0x2beb PP_PointsToVectorFloat CCS_ForwardingFailed 8 0xEB fsfw/src/fsfw/memory/HasMemoryIF.h ../../fsfw/datalinklayer/CCSDSReturnValuesIF.h HAS_MEMORY_IF CCSDS_HANDLER_IF
347 0x6a0 0x2bec PP_DumpNotSupported CCS_ContentTooLarge 0xA0 0xEC fsfw/src/fsfw/memory/HasMemoryIF.h ../../fsfw/datalinklayer/CCSDSReturnValuesIF.h HAS_MEMORY_IF CCSDS_HANDLER_IF
348 0x6e0 0x2bed PP_InvalidSize CCS_ResidualData 0xE0 0xED fsfw/src/fsfw/memory/HasMemoryIF.h ../../fsfw/datalinklayer/CCSDSReturnValuesIF.h HAS_MEMORY_IF CCSDS_HANDLER_IF
349 0x6e1 0x2bee PP_InvalidAddress CCS_DataCorrupted 0xE1 0xEE fsfw/src/fsfw/memory/HasMemoryIF.h ../../fsfw/datalinklayer/CCSDSReturnValuesIF.h HAS_MEMORY_IF CCSDS_HANDLER_IF
350 0x6e2 0x2bef PP_InvalidContent CCS_IllegalSegmentationFlag 0xE2 0xEF fsfw/src/fsfw/memory/HasMemoryIF.h ../../fsfw/datalinklayer/CCSDSReturnValuesIF.h HAS_MEMORY_IF CCSDS_HANDLER_IF
351 0x6e3 0x2bd0 PP_UnalignedAccess CCS_IllegalFlagCombination 0xE3 0xD0 fsfw/src/fsfw/memory/HasMemoryIF.h ../../fsfw/datalinklayer/CCSDSReturnValuesIF.h HAS_MEMORY_IF CCSDS_HANDLER_IF
352 0x6e4 0x2bd1 PP_WriteProtected CCS_ShorterThanHeader 0xE4 0xD1 fsfw/src/fsfw/memory/HasMemoryIF.h ../../fsfw/datalinklayer/CCSDSReturnValuesIF.h HAS_MEMORY_IF CCSDS_HANDLER_IF
353 0x13e0 0x2bd2 MH_UnknownCmd CCS_TooShortBlockedPacket 0xE0 0xD2 fsfw/src/fsfw/memory/MemoryHelper.h ../../fsfw/datalinklayer/CCSDSReturnValuesIF.h MEMORY_HELPER CCSDS_HANDLER_IF
354 0x13e1 0x2bd3 MH_InvalidAddress CCS_TooShortMapExtraction 0xE1 0xD3 fsfw/src/fsfw/memory/MemoryHelper.h ../../fsfw/datalinklayer/CCSDSReturnValuesIF.h MEMORY_HELPER CCSDS_HANDLER_IF
355 0x13e2 0x3901 MH_InvalidSize SPH_SemaphoreTimeout 0xE2 1 fsfw/src/fsfw/memory/MemoryHelper.h ../../fsfw/tasks/SemaphoreIF.h MEMORY_HELPER SEMAPHORE_IF
356 0x13e3 0x3902 MH_StateMismatch SPH_SemaphoreNotOwned 0xE3 2 fsfw/src/fsfw/memory/MemoryHelper.h ../../fsfw/tasks/SemaphoreIF.h MEMORY_HELPER SEMAPHORE_IF
357 0x1201 0x3903 AB_NeedSecondStep SPH_SemaphoreInvalid 0x01 3 fsfw/src/fsfw/devicehandlers/AssemblyBase.h ../../fsfw/tasks/SemaphoreIF.h ASSEMBLY_BASE SEMAPHORE_IF
358 0x1202 0x2d01 AB_NeedToReconfigure HPA_InvalidIdentifierId 0x02 0x01 fsfw/src/fsfw/devicehandlers/AssemblyBase.h ../../fsfw/parameters/HasParametersIF.h ASSEMBLY_BASE HAS_PARAMETERS_IF
359 0x1203 0x2d02 AB_ModeFallback HPA_InvalidDomainId 0x03 0x02 fsfw/src/fsfw/devicehandlers/AssemblyBase.h ../../fsfw/parameters/HasParametersIF.h ASSEMBLY_BASE HAS_PARAMETERS_IF
360 0x1204 0x2d03 AB_ChildNotCommandable HPA_InvalidValue 0x04 0x03 fsfw/src/fsfw/devicehandlers/AssemblyBase.h ../../fsfw/parameters/HasParametersIF.h ASSEMBLY_BASE HAS_PARAMETERS_IF
361 0x1205 0x2d05 AB_NeedToChangeHealth HPA_ReadOnly 0x05 fsfw/src/fsfw/devicehandlers/AssemblyBase.h ../../fsfw/parameters/HasParametersIF.h ASSEMBLY_BASE HAS_PARAMETERS_IF
362 0x12a1 0x2c01 AB_NotEnoughChildrenInCorrectState PAW_UnknownDatatype 0xa1 0x01 fsfw/src/fsfw/devicehandlers/AssemblyBase.h ../../fsfw/parameters/ParameterWrapper.h ASSEMBLY_BASE PARAMETER_WRAPPER
363 0x3a0 0x2c02 DHB_InvalidChannel PAW_DatatypeMissmatch 0xA0 0x02 fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h ../../fsfw/parameters/ParameterWrapper.h DEVICE_HANDLER_BASE PARAMETER_WRAPPER
364 0x3b0 0x2c03 DHB_AperiodicReply PAW_Readonly 0xB0 0x03 fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h ../../fsfw/parameters/ParameterWrapper.h DEVICE_HANDLER_BASE PARAMETER_WRAPPER
365 0x3b1 0x2c04 DHB_IgnoreReplyData PAW_TooBig 0xB1 0x04 fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h ../../fsfw/parameters/ParameterWrapper.h DEVICE_HANDLER_BASE PARAMETER_WRAPPER
366 0x3b2 0x2c05 DHB_IgnoreFullPacket PAW_SourceNotSet 0xB2 0x05 fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h ../../fsfw/parameters/ParameterWrapper.h DEVICE_HANDLER_BASE PARAMETER_WRAPPER
367 0x3c0 0x2c06 DHB_NothingToSend PAW_OutOfBounds 0xC0 0x06 fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h ../../fsfw/parameters/ParameterWrapper.h DEVICE_HANDLER_BASE PARAMETER_WRAPPER
368 0x3c2 0x2c07 DHB_CommandMapError PAW_NotSet 0xC2 0x07 fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h ../../fsfw/parameters/ParameterWrapper.h DEVICE_HANDLER_BASE PARAMETER_WRAPPER
369 0x3d0 0x2c08 DHB_NoSwitch PAW_ColumnOrRowsZero 0xD0 0x08 fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h ../../fsfw/parameters/ParameterWrapper.h DEVICE_HANDLER_BASE PARAMETER_WRAPPER
0x3e0 DHB_ChildTimeout 0xE0 fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h DEVICE_HANDLER_BASE
0x3e1 DHB_SwitchFailed 0xE1 fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h DEVICE_HANDLER_BASE
0x3301 DC_NoReplyReceived 0x01 fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h DEVICE_COMMUNICATION_IF
0x3302 DC_ProtocolError 0x02 fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h DEVICE_COMMUNICATION_IF
0x3303 DC_Nullpointer 0x03 fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h DEVICE_COMMUNICATION_IF
0x3304 DC_InvalidCookieType 0x04 fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h DEVICE_COMMUNICATION_IF
0x3305 DC_NotActive 0x05 fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h DEVICE_COMMUNICATION_IF
0x3306 DC_TooMuchData 0x06 fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h DEVICE_COMMUNICATION_IF
0x26a0 DHI_NoCommandData 0xA0 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
0x26a1 DHI_CommandNotSupported 0xA1 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
0x26a2 DHI_CommandAlreadySent 0xA2 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
0x26a3 DHI_CommandWasNotSent 0xA3 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
0x26a4 DHI_CantSwitchAddress 0xA4 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
0x26a5 DHI_WrongModeForCommand 0xA5 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
0x26a6 DHI_Timeout 0xA6 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
0x26a7 DHI_Busy 0xA7 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
0x26a8 DHI_NoReplyExpected 0xA8 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
0x26a9 DHI_NonOpTemperature 0xA9 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
0x26aa DHI_CommandNotImplemented 0xAA fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
0x26b0 DHI_ChecksumError 0xB0 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
0x26b1 DHI_LengthMissmatch 0xB1 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
0x26b2 DHI_InvalidData 0xB2 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
0x26b3 DHI_ProtocolError 0xB3 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
0x26c0 DHI_DeviceDidNotExecute 0xC0 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
0x26c1 DHI_DeviceReportedError 0xC1 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
0x26c2 DHI_UnknownDeviceReply 0xC2 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
0x26c3 DHI_DeviceReplyInvalid 0xC3 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
0x26d0 DHI_InvalidCommandParameter 0xD0 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
0x26d1 DHI_InvalidNumberOrLengthOfParameters 0xD1 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
0x1401 SE_BufferTooShort 1 fsfw/src/fsfw/serialize/SerializeIF.h SERIALIZE_IF
0x1402 SE_StreamTooShort 2 fsfw/src/fsfw/serialize/SerializeIF.h SERIALIZE_IF
0x1403 SE_TooManyElements 3 fsfw/src/fsfw/serialize/SerializeIF.h SERIALIZE_IF

View File

@ -1,20 +1,18 @@
import os
import enum
from pathlib import Path
DATABASE_NAME = "fsfw_mod.db"
def determine_obsw_root_path() -> str:
for _ in range(5):
if os.path.exists("CMakeLists.txt"):
return os.path.abspath(os.curdir)
else:
os.chdir("..")
class BspSelect(enum.Enum):
BSP_HOSTED = enum.auto()
BSP_LINUX = enum.auto()
BSP_STM32_FREERTOS = enum.auto()
BSP_STM32_RTEMS = enum.auto()
PATH_VAR_ROOT = os.path.dirname(os.path.realpath(__file__))
ROOT_DIR = PATH_VAR_ROOT
OBSW_ROOT_DIR = Path(determine_obsw_root_path())
COMMON_SUBMODULE_NAME = "example_common"
EXAMPLE_COMMON_DIR = f"{OBSW_ROOT_DIR}/{COMMON_SUBMODULE_NAME}"
DATABASE_NAME = "eive_mod.db"
BSP_HOSTED = "bsp_hosted"
BspFolderDict = {
BspSelect.BSP_HOSTED.value: "bsp_hosted",
BspSelect.BSP_LINUX.value: "bsp_linux",
BspSelect.BSP_STM32_FREERTOS.value: "bsp_stm32_freertos",
BspSelect.BSP_STM32_RTEMS.value: "bsp_stm32_rtems",
}

View File

@ -21,16 +21,8 @@ DH_COMMAND_PACKET_DEFINITION_DESTINATION = "../../mission/devices/devicepackets/
DH_DEFINITION_DESTINATION = "../../mission/devices/"
DH_COMMANDS_CSV_NAME = "mib_device_commands.csv"
DH_COMMAND_HEADER_COLUMNS = [
"Device Handler",
"Command Name",
"Action ID",
"Command Field Name",
"Command Field Position",
"Command Field Type",
"Command Field Option Name",
"Command Field Option Value",
"Comment",
]
"Device Handler", "Command Name", "Action ID", "Command Field Name", "Command Field Position",
"Command Field Type", "Command Field Option Name", "Command Field Option Value", "Comment"]
SQL_DELETE_CMDTABLE_CMD = """
DROP TABLE IF EXISTS DeviceHandlerCommand;
@ -63,7 +55,6 @@ class DeviceCommandColumns(Enum):
"""
Specifies order of MIB columns
"""
DH_NAME = 0
NAME = 1
ACTION_ID = 2
@ -84,27 +75,19 @@ def main():
:return:
"""
info_header_file_parser = FileListParser(DH_DEFINITION_DESTINATION)
info_header_file_list = info_header_file_parser.parse_header_files(
False, "Parsing device handler informations:"
)
info_header_file_list = info_header_file_parser.\
parse_header_files(False, "Parsing device handler informations:")
dh_information_parser = DeviceHandlerInformationParser(info_header_file_list)
dh_information_table = dh_information_parser.parse_files()
Printer.print_content(
dh_information_table, "Priting device handler command information table: "
)
Printer.print_content(dh_information_table, "Priting device handler command information table: ")
header_file_parser = FileListParser(DH_COMMAND_PACKET_DEFINITION_DESTINATION)
header_file_list = header_file_parser.parse_header_files(
False, "Parsing device handler command files:"
)
packet_subservice_parser = DeviceHandlerCommandParser(
header_file_list, dh_information_table
)
header_file_list = \
header_file_parser.parse_header_files(False, "Parsing device handler command files:")
packet_subservice_parser = DeviceHandlerCommandParser(header_file_list, dh_information_table)
dh_command_table = packet_subservice_parser.parse_files()
Printer.print_content(dh_command_table, "Printing device handler command table:")
dh_command_writer = CsvWriter(
DH_COMMANDS_CSV_NAME, dh_command_table, DH_COMMAND_HEADER_COLUMNS
)
dh_command_writer = CsvWriter(DH_COMMANDS_CSV_NAME, dh_command_table, DH_COMMAND_HEADER_COLUMNS)
dh_command_writer.write_to_csv()
dh_command_writer.copy_csv()
dh_command_writer.move_csv("..")
@ -137,7 +120,7 @@ class DeviceHandlerInformationParser(FileParser):
self_print_parsing_info = args[0]
# Read device name from file name
handler_match = re.search(r"([\w]*).h", file_name)
handler_match = re.search(r'([\w]*).h', file_name)
if not handler_match:
print("Device Command Parser: Configuration error, no handler name match !")
handler_name = handler_match.group(1)
@ -162,12 +145,8 @@ class DeviceHandlerInformationParser(FileParser):
:return:
"""
# Case insensitive matching of device command enums
enum_match = re.search(
r"[\s]*enum[\s]*([\w]*)[\s]*{[\s][/!<>]*[\s]*"
r"\[EXPORT[\w]*\][\s]*:[\s]*\[ENUM\]([^\n]*)",
line,
re.IGNORECASE,
)
enum_match = re.search(r'[\s]*enum[\s]*([\w]*)[\s]*{[\s][/!<>]*[\s]*'
r'\[EXPORT[\w]*\][\s]*:[\s]*\[ENUM\]([^\n]*)', line, re.IGNORECASE)
if enum_match:
self.command_enum_name = enum_match.group(1)
self.command_scanning_pending = True
@ -179,11 +158,9 @@ class DeviceHandlerInformationParser(FileParser):
self.__handle_command_enum_scanning(line)
def __handle_command_definition_scanning(self, line):
command_match = re.search(
r"[\s]*static[\s]*const[\s]*DeviceCommandId_t[\s]*([\w]*)[\s]*=[\s]*"
r"([\w]*)[\s]*;[\s]*[/!<>]*[\s]*\[EXPORT\][\s]*:[\s]*\[COMMAND\]",
line,
)
command_match = \
re.search(r'[\s]*static[\s]*const[\s]*DeviceCommandId_t[\s]*([\w]*)[\s]*=[\s]*'
r'([\w]*)[\s]*;[\s]*[/!<>]*[\s]*\[EXPORT\][\s]*:[\s]*\[COMMAND\]', line)
if command_match:
command_name = command_match.group(1)
command_id = command_match.group(2)
@ -194,11 +171,8 @@ class DeviceHandlerInformationParser(FileParser):
if not self.command_scanning_pending:
# scanning enum finished
# stores current command into command dictionary with command name as unique key
command_tuple = (
self.command_value_name_list,
self.command_value_list,
self.command_comment_list,
)
command_tuple = self.command_value_name_list, self.command_value_list, \
self.command_comment_list
self.command_enum_dict.update({self.command_enum_name: command_tuple})
self.command_enum_name = ""
self.command_value_name_list = []
@ -206,14 +180,13 @@ class DeviceHandlerInformationParser(FileParser):
self.command_comment_list = []
def __scan_command_entries(self, line):
command_match = re.search(
r"[\s]*([\w]*)[\s]*=[\s]*([0-9]{1,3})[^/][\s]*[/!<>]*[\s]*([^\n]*)", line
)
command_match = \
re.search(r'[\s]*([\w]*)[\s]*=[\s]*([0-9]{1,3})[^/][\s]*[/!<>]*[\s]*([^\n]*)', line)
if command_match:
self.command_value_name_list.append(command_match.group(1))
self.command_value_list.append(command_match.group(2))
self.command_comment_list.append(command_match.group(3))
elif re.search(r"}[\s]*;", line):
elif re.search(r'}[\s]*;', line):
self.command_scanning_pending = False
def _post_parsing_operation(self):
@ -224,7 +197,6 @@ class PendingScanType(Enum):
"""
Specifies which scan type is performed in the device command parser.
"""
NO_SCANNING = 0
STRUCT_SCAN = 1
CLASS_SCAN = 2
@ -237,7 +209,6 @@ class DeviceHandlerCommandParser(FileParser):
packet definitions. A device handler info table must be passed which can be acquired
by running the DH information parser.
"""
def __init__(self, file_list, dh_information_table):
super().__init__(file_list)
# this table includes the current new table entry,
@ -287,12 +258,9 @@ class DeviceHandlerCommandParser(FileParser):
self.__scan_command(line)
def __scan_for_structs(self, line):
struct_match = re.search(
r"[\s]*struct[\s]*([\w]*)[\s]*{[\s]*[/!<>]*[\s]*"
r"\[EXPORT\][ :]*\[COMMAND\]"
r"[\s]*([\w]*)[ :]*([\w]*)",
line,
)
struct_match = re.search(r'[\s]*struct[\s]*([\w]*)[\s]*{[\s]*[/!<>]*[\s]*'
r'\[EXPORT\][ :]*\[COMMAND\]'
r'[\s]*([\w]*)[ :]*([\w]*)', line)
if struct_match:
# Scan a found command struct
self.__start_class_or_struct_scanning(struct_match)
@ -301,11 +269,8 @@ class DeviceHandlerCommandParser(FileParser):
def __scan_for_class(self, line):
# search for class command definition
class_match = re.search(
r"[\s]*class[\s]*([\w]*)[\s]*[^{]*{[ /!<>]*\[EXPORT\][ :]*"
r"\[COMMAND\][\s]*([\w]*)[ :]*([\w]*)",
line,
)
class_match = re.search(r'[\s]*class[\s]*([\w]*)[\s]*[^{]*{[ /!<>]*\[EXPORT\][ :]*'
r'\[COMMAND\][\s]*([\w]*)[ :]*([\w]*)', line)
if class_match:
self.__start_class_or_struct_scanning(class_match)
self.scanning_pending = PendingScanType.CLASS_SCAN.value
@ -323,27 +288,21 @@ class DeviceHandlerCommandParser(FileParser):
if handler_name in self.dh_information_table:
(command_id_dict, self.enum_dict) = self.dh_information_table[handler_name]
if command_name in command_id_dict:
self.dict_entry_list[Clmns.ACTION_ID.value] = command_id_dict[
command_name
]
self.dict_entry_list[Clmns.ACTION_ID.value] = command_id_dict[command_name]
def __scan_command(self, line):
datatype_match = False
if self.scanning_pending is PendingScanType.STRUCT_SCAN.value:
datatype_match = re.search(
r"[\s]*(uint[0-9]{1,2}_t|float|double|bool|int|char)[\s]*([\w]*);"
r"(?:[\s]*[/!<>]*[\s]*\[EXPORT\][: ]*(.*))?",
line,
)
datatype_match = \
re.search(r'[\s]*(uint[0-9]{1,2}_t|float|double|bool|int|char)[\s]*([\w]*);'
r'(?:[\s]*[/!<>]*[\s]*\[EXPORT\][: ]*(.*))?', line)
elif self.scanning_pending is PendingScanType.CLASS_SCAN.value:
datatype_match = re.search(
r"[\s]*SerializeElement[\s]*<(uint[0-9]{1,2}_t|float|double|bool|int|char)[ >]*"
r"([\w]*);(?:[ /!<>]*\[EXPORT\][: ]*(.*))?",
line,
)
r'[\s]*SerializeElement[\s]*<(uint[0-9]{1,2}_t|float|double|bool|int|char)[ >]*'
r'([\w]*);(?:[ /!<>]*\[EXPORT\][: ]*(.*))?', line)
if datatype_match:
self.__handle_datatype_match(datatype_match)
elif re.search(r"}[\s]*;", line):
elif re.search(r'}[\s]*;', line):
self.scanning_pending = PendingScanType.NO_SCANNING.value
self.command_index = 0
@ -359,15 +318,11 @@ class DeviceHandlerCommandParser(FileParser):
def __analyse_exporter_sequence(self, exporter_sequence):
# This matches the exporter sequence pairs e.g. [ENUM] BLA [COMMENT] BLABLA [...] ...
export_string_matches = re.search(
r"(?:\[([\w]*)\][\s]*([^\[]*))?", exporter_sequence
)
export_string_matches = re.search(r'(?:\[([\w]*)\][\s]*([^\[]*))?', exporter_sequence)
if export_string_matches:
if len(export_string_matches.groups()) % 2 != 0:
print(
"Device Command Parser: Error when analysing exporter sequence,"
" check exporter string format"
)
print("Device Command Parser: Error when analysing exporter sequence,"
" check exporter string format")
else:
count = 0
while count < len(export_string_matches.groups()):
@ -393,7 +348,8 @@ class DeviceHandlerCommandParser(FileParser):
enum_tuple = self.enum_dict[self.current_enum_name]
for count in range(0, size_of_enum):
self.__update_table_with_command_options(count, enum_tuple)
self.command_index = self.command_index + 1
self.command_index = \
self.command_index + 1
else:
self.__update_table_with_no_command_options()
self.index = self.index + 1
@ -401,16 +357,12 @@ class DeviceHandlerCommandParser(FileParser):
def __update_table_with_command_options(self, count, enum_tuple):
enum_value_name_list, enum_value_list, enum_comment_list = enum_tuple
self.dict_entry_list[
Clmns.COMMAND_FIELD_OPTION_NAME.value
] = enum_value_name_list[count]
self.dict_entry_list[Clmns.COMMAND_FIELD_OPTION_VALUE.value] = enum_value_list[
count
]
self.dict_entry_list[Clmns.COMMAND_FIELD_COMMENT.value] = enum_comment_list[
count
]
self.dict_entry_list[Clmns.COMMAND_INDEX.value] = self.command_index
self.dict_entry_list[Clmns.COMMAND_FIELD_OPTION_NAME.value] = \
enum_value_name_list[count]
self.dict_entry_list[Clmns.COMMAND_FIELD_OPTION_VALUE.value] = enum_value_list[count]
self.dict_entry_list[Clmns.COMMAND_FIELD_COMMENT.value] = enum_comment_list[count]
self.dict_entry_list[Clmns.COMMAND_INDEX.value] = \
self.command_index
dh_command_tuple = tuple(self.dict_entry_list)
self.index += 1
self.mib_table.update({self.index: dh_command_tuple})
@ -419,7 +371,8 @@ class DeviceHandlerCommandParser(FileParser):
self.dict_entry_list[Clmns.COMMAND_FIELD_OPTION_NAME.value] = ""
self.dict_entry_list[Clmns.COMMAND_FIELD_OPTION_VALUE.value] = ""
self.dict_entry_list[Clmns.COMMAND_FIELD_COMMENT.value] = self.command_comment
self.dict_entry_list[Clmns.COMMAND_INDEX.value] = self.command_index
self.dict_entry_list[Clmns.COMMAND_INDEX.value] = \
self.command_index
dh_command_tuple = tuple(self.dict_entry_list)
self.mib_table.update({self.index: dh_command_tuple})
self.command_index += 1

Binary file not shown.

View File

@ -1,23 +1,26 @@
"""Part of the Mission Operation Database Exporter for the FSFW project.
#! /usr/bin/python3
"""
@file event_parser.py
@brief Part of the Mission Information Base Exporter for the SOURCE project by KSat.
@details
Event exporter.
To use MySQLdb, run pip install mysqlclient or install in IDE.
On Windows, Build Tools installation might be necessary
@data 21.11.2019
"""
import datetime
import time
import os
from fsfwgen.events.event_parser import (
handle_csv_export,
handle_cpp_export,
SubsystemDefinitionParser,
EventParser,
)
from fsfwgen.events.event_parser import handle_csv_export, handle_cpp_export, SubsystemDefinitionParser, EventParser
from fsfwgen.parserbase.file_list_parser import FileListParser
from fsfwgen.utility.printer import PrettyPrinter
from fsfwgen.utility.file_management import copy_file
from fsfwgen.core import get_console_logger
from definitions import BSP_HOSTED, ROOT_DIR, OBSW_ROOT_DIR, EXAMPLE_COMMON_DIR
from fsfwgen.utility.file_management import copy_file, move_file
LOGGER = get_console_logger()
from definitions import BspSelect, BspFolderDict
# TODO: Ask from user or store in json file?
BSP_SELECT = BspSelect.BSP_HOSTED.value
BSP_FOLDER = BspFolderDict[BSP_SELECT]
DATE_TODAY = datetime.datetime.now()
DATE_STRING_FULL = DATE_TODAY.strftime("%Y-%m-%d %H:%M:%S")
@ -30,70 +33,49 @@ MOVE_CSV_FILE = True
PARSE_HOST_BSP = True
# Store these files relative to the events folder
CPP_FILENAME = f"{os.path.dirname(os.path.realpath(__file__))}/translateEvents.cpp"
CPP_H_FILENAME = f"{os.path.dirname(os.path.realpath(__file__))}/translateEvents.h"
CSV_FILENAME = f"{BSP_FOLDER}_events.csv"
CSV_MOVE_DESTINATION = "../"
# Store this file in the root of the generators folder
CSV_FILENAME = f"{ROOT_DIR}/{BSP_HOSTED}_events.csv"
CSV_COPY_DEST = f"{OBSW_ROOT_DIR}/tmtc/config/events.csv"
FSFW_CONFIG_ROOT = f"{OBSW_ROOT_DIR}/bsp_hosted/fsfwconfig"
CPP_COPY_DESTINATION = f"{FSFW_CONFIG_ROOT}/events/"
CPP_FILENAME = "translateEvents.cpp"
CPP_H_FILENAME = "translateEvents.h"
CPP_COPY_DESTINATION = f"../../{BSP_FOLDER}/fsfwconfig/events/"
FILE_SEPARATOR = ";"
SUBSYSTEM_DEFINITION_DESTINATIONS = [
f"{FSFW_CONFIG_ROOT}/events/subsystemIdRanges.h",
f"{OBSW_ROOT_DIR}/fsfw/src/fsfw/events/fwSubsystemIdRanges.h",
f"{EXAMPLE_COMMON_DIR}/config/commonSubsystemIds.h",
]
HEADER_DEFINITION_DESTINATIONS = [
f"{OBSW_ROOT_DIR}/bsp_hosted",
f"{OBSW_ROOT_DIR}/fsfw/",
f"{FSFW_CONFIG_ROOT}",
f"../../{BSP_FOLDER}/fsfwconfig/events/subsystemIdRanges.h",
"../../fsfw/events/fwSubsystemIdRanges.h",
"../../example_common/config/commonSubsystemIds.h"
]
HEADER_DEFINITION_DESTINATIONS = ["../../example_common/", "../../fsfw/", f"../../{BSP_FOLDER}"]
def parse_events(
generate_csv: bool = True, generate_cpp: bool = True, print_events: bool = True
):
LOGGER.info("EventParser: Parsing events: ")
# Small delay for clean printout
time.sleep(0.01)
event_list = generate_event_list()
if print_events:
PrettyPrinter.pprint(event_list)
# Delay for clean printout
time.sleep(0.1)
# xml_test()
if generate_csv:
def main():
print("EventParser: Parsing events: ")
event_list = parse_events()
if GENERATE_CSV:
handle_csv_export(
file_name=CSV_FILENAME, event_list=event_list, file_separator=FILE_SEPARATOR
)
LOGGER.info(f"Copying CSV file to {CSV_COPY_DEST}")
copy_file(
filename=CSV_FILENAME, destination=CSV_COPY_DEST, delete_existing_file=True
)
if generate_cpp:
if MOVE_CSV_FILE:
move_file(file_name=CSV_FILENAME, destination=CSV_MOVE_DESTINATION)
if GENERATE_CPP:
handle_cpp_export(
event_list=event_list,
date_string=DATE_STRING_FULL,
file_name=CPP_FILENAME,
generate_header=GENERATE_CPP_H,
header_file_name=CPP_H_FILENAME,
event_list=event_list, date_string=DATE_STRING_FULL, file_name=CPP_FILENAME,
generate_header=GENERATE_CPP_H, header_file_name=CPP_H_FILENAME
)
if COPY_CPP_FILE:
LOGGER.info(
f"EventParser: Copying CPP translation file to {CPP_COPY_DESTINATION}"
)
print(f"EventParser: Copying file to {CPP_COPY_DESTINATION}")
copy_file(CPP_FILENAME, CPP_COPY_DESTINATION)
copy_file(CPP_H_FILENAME, CPP_COPY_DESTINATION)
print("")
def generate_event_list() -> list:
def parse_events():
subsystem_parser = SubsystemDefinitionParser(SUBSYSTEM_DEFINITION_DESTINATIONS)
subsystem_table = subsystem_parser.parse_files()
LOGGER.info(f"Found {len(subsystem_table)} subsystem definitions.")
print(f"Found {len(subsystem_table)} subsystem definitions.")
PrettyPrinter.pprint(subsystem_table)
event_header_parser = FileListParser(HEADER_DEFINITION_DESTINATIONS)
event_headers = event_header_parser.parse_header_files(
@ -102,9 +84,13 @@ def generate_event_list() -> list:
# PrettyPrinter.pprint(event_headers)
# myEventList = parseHeaderFiles(subsystem_table, event_headers)
event_parser = EventParser(event_headers, subsystem_table)
event_parser.obsw_root_path = OBSW_ROOT_DIR
event_parser.set_moving_window_mode(moving_window_size=7)
event_table = event_parser.parse_files()
event_list = sorted(event_table.items())
LOGGER.info(f"Found {len(event_list)} entries")
return event_list
list_items = sorted(event_table.items())
print(f"Found {len(list_items)} entries:")
PrettyPrinter.pprint(list_items)
return list_items
if __name__ == "__main__":
main()

View File

@ -1,7 +1,7 @@
/**
* @brief Auto-generated event translation file. Contains 79 translations.
* @brief Auto-generated event translation file. Contains 78 translations.
* @details
* Generated on: 2022-07-27 19:41:37
* Generated on: 2021-06-21 16:09:15
*/
#include "translateEvents.h"
@ -59,6 +59,7 @@ const char *MONITOR_CHANGED_STATE_STRING = "MONITOR_CHANGED_STATE";
const char *VALUE_BELOW_LOW_LIMIT_STRING = "VALUE_BELOW_LOW_LIMIT";
const char *VALUE_ABOVE_HIGH_LIMIT_STRING = "VALUE_ABOVE_HIGH_LIMIT";
const char *VALUE_OUT_OF_RANGE_STRING = "VALUE_OUT_OF_RANGE";
const char *SWITCHING_TM_FAILED_STRING = "SWITCHING_TM_FAILED";
const char *CHANGING_MODE_STRING = "CHANGING_MODE";
const char *MODE_INFO_STRING = "MODE_INFO";
const char *FALLBACK_FAILED_STRING = "FALLBACK_FAILED";
@ -81,172 +82,168 @@ const char *BIT_LOCK_LOST_STRING = "BIT_LOCK_LOST";
const char *FRAME_PROCESSING_FAILED_STRING = "FRAME_PROCESSING_FAILED";
const char *CLOCK_SET_STRING = "CLOCK_SET";
const char *CLOCK_SET_FAILURE_STRING = "CLOCK_SET_FAILURE";
const char *TC_DELETION_FAILED_STRING = "TC_DELETION_FAILED";
const char *TEST_STRING = "TEST";
const char *CHANGE_OF_SETUP_PARAMETER_STRING = "CHANGE_OF_SETUP_PARAMETER";
const char *translateEvents(Event event) {
switch ((event & 0xFFFF)) {
case (2200):
return STORE_SEND_WRITE_FAILED_STRING;
case (2201):
return STORE_WRITE_FAILED_STRING;
case (2202):
return STORE_SEND_READ_FAILED_STRING;
case (2203):
return STORE_READ_FAILED_STRING;
case (2204):
return UNEXPECTED_MSG_STRING;
case (2205):
return STORING_FAILED_STRING;
case (2206):
return TM_DUMP_FAILED_STRING;
case (2207):
return STORE_INIT_FAILED_STRING;
case (2208):
return STORE_INIT_EMPTY_STRING;
case (2209):
return STORE_CONTENT_CORRUPTED_STRING;
case (2210):
return STORE_INITIALIZE_STRING;
case (2211):
return INIT_DONE_STRING;
case (2212):
return DUMP_FINISHED_STRING;
case (2213):
return DELETION_FINISHED_STRING;
case (2214):
return DELETION_FAILED_STRING;
case (2215):
return AUTO_CATALOGS_SENDING_FAILED_STRING;
case (2600):
return GET_DATA_FAILED_STRING;
case (2601):
return STORE_DATA_FAILED_STRING;
case (2800):
return DEVICE_BUILDING_COMMAND_FAILED_STRING;
case (2801):
return DEVICE_SENDING_COMMAND_FAILED_STRING;
case (2802):
return DEVICE_REQUESTING_REPLY_FAILED_STRING;
case (2803):
return DEVICE_READING_REPLY_FAILED_STRING;
case (2804):
return DEVICE_INTERPRETING_REPLY_FAILED_STRING;
case (2805):
return DEVICE_MISSED_REPLY_STRING;
case (2806):
return DEVICE_UNKNOWN_REPLY_STRING;
case (2807):
return DEVICE_UNREQUESTED_REPLY_STRING;
case (2808):
return INVALID_DEVICE_COMMAND_STRING;
case (2809):
return MONITORING_LIMIT_EXCEEDED_STRING;
case (2810):
return MONITORING_AMBIGUOUS_STRING;
case (4201):
return FUSE_CURRENT_HIGH_STRING;
case (4202):
return FUSE_WENT_OFF_STRING;
case (4204):
return POWER_ABOVE_HIGH_LIMIT_STRING;
case (4205):
return POWER_BELOW_LOW_LIMIT_STRING;
case (4300):
return SWITCH_WENT_OFF_STRING;
case (5000):
return HEATER_ON_STRING;
case (5001):
return HEATER_OFF_STRING;
case (5002):
return HEATER_TIMEOUT_STRING;
case (5003):
return HEATER_STAYED_ON_STRING;
case (5004):
return HEATER_STAYED_OFF_STRING;
case (5200):
return TEMP_SENSOR_HIGH_STRING;
case (5201):
return TEMP_SENSOR_LOW_STRING;
case (5202):
return TEMP_SENSOR_GRADIENT_STRING;
case (5901):
return COMPONENT_TEMP_LOW_STRING;
case (5902):
return COMPONENT_TEMP_HIGH_STRING;
case (5903):
return COMPONENT_TEMP_OOL_LOW_STRING;
case (5904):
return COMPONENT_TEMP_OOL_HIGH_STRING;
case (5905):
return TEMP_NOT_IN_OP_RANGE_STRING;
case (7101):
return FDIR_CHANGED_STATE_STRING;
case (7102):
return FDIR_STARTS_RECOVERY_STRING;
case (7103):
return FDIR_TURNS_OFF_DEVICE_STRING;
case (7201):
return MONITOR_CHANGED_STATE_STRING;
case (7202):
return VALUE_BELOW_LOW_LIMIT_STRING;
case (7203):
return VALUE_ABOVE_HIGH_LIMIT_STRING;
case (7204):
return VALUE_OUT_OF_RANGE_STRING;
case (7400):
return CHANGING_MODE_STRING;
case (7401):
return MODE_INFO_STRING;
case (7402):
return FALLBACK_FAILED_STRING;
case (7403):
return MODE_TRANSITION_FAILED_STRING;
case (7404):
return CANT_KEEP_MODE_STRING;
case (7405):
return OBJECT_IN_INVALID_MODE_STRING;
case (7406):
return FORCING_MODE_STRING;
case (7407):
return MODE_CMD_REJECTED_STRING;
case (7506):
return HEALTH_INFO_STRING;
case (7507):
return CHILD_CHANGED_HEALTH_STRING;
case (7508):
return CHILD_PROBLEMS_STRING;
case (7509):
return OVERWRITING_HEALTH_STRING;
case (7510):
return TRYING_RECOVERY_STRING;
case (7511):
return RECOVERY_STEP_STRING;
case (7512):
return RECOVERY_DONE_STRING;
case (7900):
return RF_AVAILABLE_STRING;
case (7901):
return RF_LOST_STRING;
case (7902):
return BIT_LOCK_STRING;
case (7903):
return BIT_LOCK_LOST_STRING;
case (7905):
return FRAME_PROCESSING_FAILED_STRING;
case (8900):
return CLOCK_SET_STRING;
case (8901):
return CLOCK_SET_FAILURE_STRING;
case (9100):
return TC_DELETION_FAILED_STRING;
case (9700):
return TEST_STRING;
case (10600):
return CHANGE_OF_SETUP_PARAMETER_STRING;
default:
return "UNKNOWN_EVENT";
}
return 0;
const char * translateEvents(Event event) {
switch( (event & 0xffff) ) {
case(2200):
return STORE_SEND_WRITE_FAILED_STRING;
case(2201):
return STORE_WRITE_FAILED_STRING;
case(2202):
return STORE_SEND_READ_FAILED_STRING;
case(2203):
return STORE_READ_FAILED_STRING;
case(2204):
return UNEXPECTED_MSG_STRING;
case(2205):
return STORING_FAILED_STRING;
case(2206):
return TM_DUMP_FAILED_STRING;
case(2207):
return STORE_INIT_FAILED_STRING;
case(2208):
return STORE_INIT_EMPTY_STRING;
case(2209):
return STORE_CONTENT_CORRUPTED_STRING;
case(2210):
return STORE_INITIALIZE_STRING;
case(2211):
return INIT_DONE_STRING;
case(2212):
return DUMP_FINISHED_STRING;
case(2213):
return DELETION_FINISHED_STRING;
case(2214):
return DELETION_FAILED_STRING;
case(2215):
return AUTO_CATALOGS_SENDING_FAILED_STRING;
case(2600):
return GET_DATA_FAILED_STRING;
case(2601):
return STORE_DATA_FAILED_STRING;
case(2800):
return DEVICE_BUILDING_COMMAND_FAILED_STRING;
case(2801):
return DEVICE_SENDING_COMMAND_FAILED_STRING;
case(2802):
return DEVICE_REQUESTING_REPLY_FAILED_STRING;
case(2803):
return DEVICE_READING_REPLY_FAILED_STRING;
case(2804):
return DEVICE_INTERPRETING_REPLY_FAILED_STRING;
case(2805):
return DEVICE_MISSED_REPLY_STRING;
case(2806):
return DEVICE_UNKNOWN_REPLY_STRING;
case(2807):
return DEVICE_UNREQUESTED_REPLY_STRING;
case(2808):
return INVALID_DEVICE_COMMAND_STRING;
case(2809):
return MONITORING_LIMIT_EXCEEDED_STRING;
case(2810):
return MONITORING_AMBIGUOUS_STRING;
case(4201):
return FUSE_CURRENT_HIGH_STRING;
case(4202):
return FUSE_WENT_OFF_STRING;
case(4204):
return POWER_ABOVE_HIGH_LIMIT_STRING;
case(4205):
return POWER_BELOW_LOW_LIMIT_STRING;
case(4300):
return SWITCH_WENT_OFF_STRING;
case(5000):
return HEATER_ON_STRING;
case(5001):
return HEATER_OFF_STRING;
case(5002):
return HEATER_TIMEOUT_STRING;
case(5003):
return HEATER_STAYED_ON_STRING;
case(5004):
return HEATER_STAYED_OFF_STRING;
case(5200):
return TEMP_SENSOR_HIGH_STRING;
case(5201):
return TEMP_SENSOR_LOW_STRING;
case(5202):
return TEMP_SENSOR_GRADIENT_STRING;
case(5901):
return COMPONENT_TEMP_LOW_STRING;
case(5902):
return COMPONENT_TEMP_HIGH_STRING;
case(5903):
return COMPONENT_TEMP_OOL_LOW_STRING;
case(5904):
return COMPONENT_TEMP_OOL_HIGH_STRING;
case(5905):
return TEMP_NOT_IN_OP_RANGE_STRING;
case(7101):
return FDIR_CHANGED_STATE_STRING;
case(7102):
return FDIR_STARTS_RECOVERY_STRING;
case(7103):
return FDIR_TURNS_OFF_DEVICE_STRING;
case(7201):
return MONITOR_CHANGED_STATE_STRING;
case(7202):
return VALUE_BELOW_LOW_LIMIT_STRING;
case(7203):
return VALUE_ABOVE_HIGH_LIMIT_STRING;
case(7204):
return VALUE_OUT_OF_RANGE_STRING;
case(7301):
return SWITCHING_TM_FAILED_STRING;
case(7400):
return CHANGING_MODE_STRING;
case(7401):
return MODE_INFO_STRING;
case(7402):
return FALLBACK_FAILED_STRING;
case(7403):
return MODE_TRANSITION_FAILED_STRING;
case(7404):
return CANT_KEEP_MODE_STRING;
case(7405):
return OBJECT_IN_INVALID_MODE_STRING;
case(7406):
return FORCING_MODE_STRING;
case(7407):
return MODE_CMD_REJECTED_STRING;
case(7506):
return HEALTH_INFO_STRING;
case(7507):
return CHILD_CHANGED_HEALTH_STRING;
case(7508):
return CHILD_PROBLEMS_STRING;
case(7509):
return OVERWRITING_HEALTH_STRING;
case(7510):
return TRYING_RECOVERY_STRING;
case(7511):
return RECOVERY_STEP_STRING;
case(7512):
return RECOVERY_DONE_STRING;
case(7900):
return RF_AVAILABLE_STRING;
case(7901):
return RF_LOST_STRING;
case(7902):
return BIT_LOCK_STRING;
case(7903):
return BIT_LOCK_LOST_STRING;
case(7905):
return FRAME_PROCESSING_FAILED_STRING;
case(8900):
return CLOCK_SET_STRING;
case(8901):
return CLOCK_SET_FAILURE_STRING;
case(9700):
return TEST_STRING;
default:
return "UNKNOWN_EVENT";
}
return 0;
}

View File

@ -1,8 +1,8 @@
#ifndef FSFWCONFIG_EVENTS_TRANSLATEEVENTS_H_
#define FSFWCONFIG_EVENTS_TRANSLATEEVENTS_H_
#include "fsfw/events/Event.h"
#include <fsfw/events/Event.h>
const char *translateEvents(Event event);
const char * translateEvents(Event event);
#endif /* FSFWCONFIG_EVENTS_TRANSLATEEVENTS_H_ */

@ -1 +1 @@
Subproject commit b1e5a2d40a5f41b9020f2beb0b976035f91c6343
Subproject commit e6f5ff18129984b591a6a286968b1ace42c278b2

View File

@ -1,42 +0,0 @@
#!/usr/bin/env python3
import time
from objects.objects import parse_objects
from events.event_parser import parse_events
from returnvalues.returnvalues_parser import parse_returnvalues
from fsfwgen.core import (
return_generic_args_parser,
init_printout,
get_console_logger,
ParserTypes,
)
LOGGER = get_console_logger()
def main():
init_printout(project_string="FSFW")
parser = return_generic_args_parser()
args = parser.parse_args()
if args.type == "objects":
LOGGER.info(f"Generating objects data..")
time.sleep(0.05)
parse_objects()
elif args.type == "events":
LOGGER.info(f"Generating event data")
time.sleep(0.05)
parse_events()
elif args.type == "returnvalues" or args.type == "retvals":
LOGGER.info("Generating returnvalue data")
time.sleep(0.05)
parse_returnvalues()
elif args.type == "all":
LOGGER.info("Generating all data")
parse_objects()
parse_events()
# parse_returnvalues()
if __name__ == "__main__":
main()

View File

@ -47,7 +47,7 @@ from packetcontent.packet_content_parser import (
PACKET_CONTENT_HEADER_COLUMN,
SQL_CREATE_PACKET_DATA_CONTENT_CMD,
SQL_INSERT_PACKET_DATA_CMD,
SQL_DELETE_PACKET_DATA_CONTENT_CMD,
SQL_DELETE_PACKET_DATA_CONTENT_CMD
)
from subservice.subservice_parser import (
SubserviceParser,
@ -67,7 +67,7 @@ from devicecommands.device_command_parser import (
DH_COMMAND_HEADER_COLUMNS,
SQL_CREATE_CMDTABLE_CMD,
SQL_INSERT_INTO_CMDTABLE_CMD,
SQL_DELETE_CMDTABLE_CMD,
SQL_DELETE_CMDTABLE_CMD
)
from returnvalues.returnvalues_parser import (
InterfaceParser,
@ -75,16 +75,15 @@ from returnvalues.returnvalues_parser import (
INTERFACE_DEFINITION_FILES,
RETURNVALUE_DESTINATIONS,
sql_retval_exporter,
CSV_RETVAL_FILENAME,
CSV_RETVAL_FILENAME
)
from objects.objects import (
ObjectDefinitionParser,
OBJECTS_DEFINITIONS,
export_object_file,
CSV_OBJECT_FILENAME,
sql_object_exporter,
sql_object_exporter
)
DO_EXPORT_MIB = True
PRINT_TABLES_TO_CONSOLE = False
EXPORT_TO_CSV = True
@ -147,7 +146,7 @@ def handle_subservices_generation():
def generate_subservice_table():
"""Generate the subservice table."""
""" Generate the subservice table. """
subservice_header_parser = FileListParser(
destination_corrected(SUBSERVICE_DEFINITION_DESTINATION)
)
@ -162,11 +161,7 @@ def generate_subservice_table():
def handle_packet_content_generation():
print("MIB Exporter: Parsing packing content")
packet_content_table = generate_packet_content_table()
print(
"MIB Exporter: Found "
+ str(len(packet_content_table))
+ " packet content entries."
)
print("MIB Exporter: Found " + str(len(packet_content_table)) + " packet content entries.")
if PRINT_TABLES_TO_CONSOLE:
print("MIB Exporter: Print packet content table: ")
Printer.print_content(packet_content_table)
@ -184,12 +179,12 @@ def handle_packet_content_generation():
SQL_CREATE_PACKET_DATA_CONTENT_CMD,
SQL_INSERT_PACKET_DATA_CMD,
packet_content_table,
SQL_DELETE_PACKET_DATA_CONTENT_CMD,
SQL_DELETE_PACKET_DATA_CONTENT_CMD
)
def generate_packet_content_table():
"""Generate packet content table"""
""" Generate packet content table """
packet_data_header_parser = FileListParser(
destination_corrected(PACKET_CONTENT_DEFINITION_DESTINATION)
)
@ -204,11 +199,7 @@ def generate_packet_content_table():
def handle_device_handler_command_generation():
print("MIB Exporter: Parsing device handler commands.")
dh_command_table = generate_device_command_table()
print(
"MIB Exporter: Found "
+ str(len(dh_command_table))
+ " device handler command entries"
)
print("MIB Exporter: Found " + str(len(dh_command_table)) + " device handler command entries")
if PRINT_TABLES_TO_CONSOLE:
print("MIB Exporter: Printing device handler command table: ")
Printer.print_content(dh_command_table)
@ -216,23 +207,19 @@ def handle_device_handler_command_generation():
device_command_writer = CsvWriter(
DH_COMMANDS_CSV_NAME, dh_command_table, DH_COMMAND_HEADER_COLUMNS
)
print(
"MIB Exporter: Exporting device handler commands to " + DH_COMMANDS_CSV_NAME
)
print("MIB Exporter: Exporting device handler commands to " + DH_COMMANDS_CSV_NAME)
device_command_writer.write_to_csv()
if EXPORT_TO_SQL:
print("MIB Exporter: Exporting device handler commands to SQL")
sql_writer = SqlWriter()
sql_writer.sql_writing_helper(
SQL_CREATE_CMDTABLE_CMD,
SQL_INSERT_INTO_CMDTABLE_CMD,
dh_command_table,
SQL_DELETE_CMDTABLE_CMD,
SQL_CREATE_CMDTABLE_CMD, SQL_INSERT_INTO_CMDTABLE_CMD, dh_command_table,
SQL_DELETE_CMDTABLE_CMD
)
def generate_device_command_table(print_info_table: bool = False):
"""Generate device command table"""
""" Generate device command table """
info_header_file_parser = FileListParser(
destination_corrected(DH_DEFINITION_DESTINATION)
)
@ -241,15 +228,11 @@ def generate_device_command_table(print_info_table: bool = False):
)
dh_information_parser = DeviceHandlerInformationParser(info_header_file_list)
dh_information_table = dh_information_parser.parse_files()
print(
"MIB Exporter: Found "
+ str(len(dh_information_table))
+ " device handler information entries."
)
print("MIB Exporter: Found " + str(len(dh_information_table)) +
" device handler information entries.")
if print_info_table:
Printer.print_content(
dh_information_table,
"MIB Exporter: Priting device handler command information table: ",
dh_information_table, "MIB Exporter: Priting device handler command information table: "
)
header_file_parser = FileListParser(
@ -287,9 +270,7 @@ def generate_returnvalue_table():
interfaces = interface_parser.parse_files()
print("MIB Exporter: Found interfaces : " + str(len(interfaces)))
header_parser = FileListParser(destination_corrected(RETURNVALUE_DESTINATIONS))
header_list = header_parser.parse_header_files(
True, "MIB Exporter: Parsing header file list: "
)
header_list = header_parser.parse_header_files(True, "MIB Exporter: Parsing header file list: ")
returnvalue_parser = ReturnValueParser(interfaces, header_list, False)
returnvalue_table = returnvalue_parser.parse_files(False)
if PRINT_TABLES_TO_CONSOLE:
@ -342,7 +323,7 @@ def handle_external_file_running():
def update_globals():
"""Updates the global variables"""
""" Updates the global variables """
g.PP = pprint.PrettyPrinter(indent=0, width=250)
g.doExportMIB = DO_EXPORT_MIB
g.executeSQLcommands = False

View File

@ -1,29 +1,21 @@
"""Part of the Mission Information Base Exporter for the SOURCE project by KSat.
#! /usr/bin/env python3
"""
@file objects.py
@brief Part of the Mission Information Base Exporter for the SOURCE project by KSat.
@details
Object exporter.
To use MySQLdb, run pip install mysqlclient or install in IDE.
On Windows, Build Tools installation might be necessary
@data 21.11.2019
"""
import datetime
import os
from fsfwgen.core import get_console_logger
from fsfwgen.objects.objects import (
sql_object_exporter,
ObjectDefinitionParser,
write_translation_file,
export_object_file,
write_translation_header_file,
)
from fsfwgen.objects.objects import ObjectDefinitionParser, sql_object_exporter, write_translation_file, \
export_object_file, write_translation_header_file
from fsfwgen.utility.printer import PrettyPrinter
from fsfwgen.utility.file_management import copy_file
from fsfwgen.utility.file_management import copy_file, move_file
from definitions import DATABASE_NAME, BspSelect, BspFolderDict
from definitions import (
BSP_HOSTED,
DATABASE_NAME,
OBSW_ROOT_DIR,
ROOT_DIR,
EXAMPLE_COMMON_DIR,
)
LOGGER = get_console_logger()
DATE_TODAY = datetime.datetime.now()
DATE_STRING_FULL = DATE_TODAY.strftime("%Y-%m-%d %H:%M:%S")
@ -35,24 +27,25 @@ COPY_CPP = True
GENERATE_HEADER = True
FSFW_CONFIG_ROOT = f"{BSP_HOSTED}/fsfwconfig"
PARSE_HOST_BSP = False
EXPORT_TO_SQL = True
CPP_COPY_DESTINATION = f"{FSFW_CONFIG_ROOT}/objects/"
CPP_FILENAME = f"{os.path.dirname(os.path.realpath(__file__))}//translateObjects.cpp"
CPP_H_FILENAME = f"{os.path.dirname(os.path.realpath(__file__))}//translateObjects.h"
CSV_OBJECT_FILENAME = f"{ROOT_DIR}/{BSP_HOSTED}_objects.csv"
CSV_COPY_DEST = f"{OBSW_ROOT_DIR}/tmtc/config/objects.csv"
BSP_SELECT = BspSelect.BSP_HOSTED.value
BSP_FOLDER = BspFolderDict[BSP_SELECT]
CPP_COPY_DESTINATION = f"../../{BSP_FOLDER}/fsfwconfig/objects/"
CSV_MOVE_DESTINATION = "../"
CPP_FILENAME = "translateObjects.cpp"
CPP_H_FILENAME = "translateObjects.h"
CSV_OBJECT_FILENAME = f"{BSP_FOLDER}_objects.csv"
FILE_SEPARATOR = ";"
OBJECTS_PATH = f"{FSFW_CONFIG_ROOT}/objects/systemObjectList.h"
FRAMEWORK_OBJECT_PATH = (
f"{OBSW_ROOT_DIR}/fsfw/src/fsfw/objectmanager/frameworkObjects.h"
)
COMMON_OBJECTS_PATH = f"{EXAMPLE_COMMON_DIR}/config/commonObjects.h"
OBJECTS_DEFINITIONS = [OBJECTS_PATH, FRAMEWORK_OBJECT_PATH, COMMON_OBJECTS_PATH]
OBJECTS_PATH = f"../../{BSP_FOLDER}/fsfwconfig/objects/systemObjectList.h"
FRAMEWORK_OBJECTS_PATH = "../../fsfw/objectmanager/frameworkObjects.h"
COMMON_OBJECTS_PATH = "../../common/config/commonSystemObjects.h"
OBJECTS_DEFINITIONS = [OBJECTS_PATH, FRAMEWORK_OBJECTS_PATH, COMMON_OBJECTS_PATH]
SQL_DELETE_OBJECTS_CMD = """
DROP TABLE IF EXISTS Objects
@ -72,52 +65,45 @@ VALUES(?,?)
"""
def parse_objects(print_object_list: bool = True):
def main():
print("Parsing objects: ")
list_items = parse_objects()
handle_file_export(list_items)
if EXPORT_TO_SQL:
print("ObjectParser: Exporting to SQL")
sql_object_exporter(
object_table=list_items, delete_cmd=SQL_DELETE_OBJECTS_CMD, insert_cmd=SQL_INSERT_INTO_OBJECTS_CMD,
create_cmd=SQL_CREATE_OBJECTS_CMD, db_filename=f"../{DATABASE_NAME}"
)
def parse_objects():
# fetch objects
object_parser = ObjectDefinitionParser(OBJECTS_DEFINITIONS)
subsystem_definitions = object_parser.parse_files()
# id_subsystem_definitions.update(framework_subsystem_definitions)
list_items = sorted(subsystem_definitions.items())
LOGGER.info(f"ObjectParser: Number of objects: {len(list_items)}")
if print_object_list:
PrettyPrinter.pprint(list_items)
handle_file_export(list_items)
if EXPORT_TO_SQL:
LOGGER.info("ObjectParser: Exporting to SQL")
sql_object_exporter(
object_table=list_items,
delete_cmd=SQL_DELETE_OBJECTS_CMD,
insert_cmd=SQL_INSERT_INTO_OBJECTS_CMD,
create_cmd=SQL_CREATE_OBJECTS_CMD,
db_filename=f"{ROOT_DIR}/{DATABASE_NAME}",
)
PrettyPrinter.pprint(list_items)
print("ObjectParser: Number of objects: ", len(list_items))
return list_items
def handle_file_export(list_items):
if GENERATE_CPP:
LOGGER.info("ObjectParser: Generating C++ translation file")
write_translation_file(
filename=CPP_FILENAME,
list_of_entries=list_items,
date_string_full=DATE_STRING_FULL,
)
print("ObjectParser: Generating translation C++ file.")
write_translation_file(filename=CPP_FILENAME, list_of_entries=list_items, date_string_full=DATE_STRING_FULL)
if COPY_CPP:
LOGGER.info("ObjectParser: Copying object file to " + CPP_COPY_DESTINATION)
print("ObjectParser: Copying object file to " + CPP_COPY_DESTINATION)
copy_file(CPP_FILENAME, CPP_COPY_DESTINATION)
if GENERATE_HEADER:
write_translation_header_file(filename=CPP_H_FILENAME)
copy_file(filename=CPP_H_FILENAME, destination=CPP_COPY_DESTINATION)
if GENERATE_CSV:
LOGGER.info("ObjectParser: Generating text export")
export_object_file(
filename=CSV_OBJECT_FILENAME,
object_list=list_items,
file_separator=FILE_SEPARATOR,
)
copy_file(
filename=CSV_OBJECT_FILENAME,
destination=CSV_COPY_DEST,
delete_existing_file=True,
)
print("ObjectParser: Generating text export.")
export_object_file(filename=CSV_OBJECT_FILENAME, object_list=list_items, file_separator=FILE_SEPARATOR)
if MOVE_CSV:
move_file(file_name=CSV_OBJECT_FILENAME, destination=CSV_MOVE_DESTINATION)
if __name__ == "__main__":
main()

View File

@ -1,8 +1,8 @@
/**
* @brief Auto-generated object translation file.
* @brief Auto-generated object translation file.
* @details
* Contains 40 translations.
* Generated on: 2022-07-27 19:41:37
* Contains 37 translations.
* Generated on: 2021-05-28 18:12:56
*/
#include "translateObjects.h"
@ -18,12 +18,10 @@ const char *PUS_SERVICE_3_HOUSEKEEPING_STRING = "PUS_SERVICE_3_HOUSEKEEPING";
const char *PUS_SERVICE_5_EVENT_REPORTING_STRING = "PUS_SERVICE_5_EVENT_REPORTING";
const char *PUS_SERVICE_8_FUNCTION_MGMT_STRING = "PUS_SERVICE_8_FUNCTION_MGMT";
const char *PUS_SERVICE_9_TIME_MGMT_STRING = "PUS_SERVICE_9_TIME_MGMT";
const char *PUS_SERVICE_11_TC_SCHEDULER_STRING = "PUS_SERVICE_11_TC_SCHEDULER";
const char *PUS_SERVICE_17_TEST_STRING = "PUS_SERVICE_17_TEST";
const char *PUS_SERVICE_20_PARAMETERS_STRING = "PUS_SERVICE_20_PARAMETERS";
const char *PUS_SERVICE_200_MODE_MGMT_STRING = "PUS_SERVICE_200_MODE_MGMT";
const char *PUS_SERVICE_201_HEALTH_STRING = "PUS_SERVICE_201_HEALTH";
const char *CFDP_PACKET_DISTRIBUTOR_STRING = "CFDP_PACKET_DISTRIBUTOR";
const char *HEALTH_TABLE_STRING = "HEALTH_TABLE";
const char *MODE_STORE_STRING = "MODE_STORE";
const char *EVENT_MANAGER_STRING = "EVENT_MANAGER";
@ -32,10 +30,9 @@ const char *TC_STORE_STRING = "TC_STORE";
const char *TM_STORE_STRING = "TM_STORE";
const char *IPC_STORE_STRING = "IPC_STORE";
const char *TIME_STAMPER_STRING = "TIME_STAMPER";
const char *TC_VERIFICATOR_STRING = "TC_VERIFICATOR";
const char *FSFW_OBJECTS_END_STRING = "FSFW_OBJECTS_END";
const char *TCPIP_TMTC_BRIDGE_STRING = "TCPIP_TMTC_BRIDGE";
const char *TCPIP_TMTC_POLLING_TASK_STRING = "TCPIP_TMTC_POLLING_TASK";
const char *UDP_BRIDGE_STRING = "UDP_BRIDGE";
const char *UDP_POLLING_TASK_STRING = "UDP_POLLING_TASK";
const char *CCSDS_DISTRIBUTOR_STRING = "CCSDS_DISTRIBUTOR";
const char *PUS_DISTRIBUTOR_STRING = "PUS_DISTRIBUTOR";
const char *TM_FUNNEL_STRING = "TM_FUNNEL";
@ -47,90 +44,84 @@ const char *TEST_DUMMY_5_STRING = "TEST_DUMMY_5";
const char *TEST_TASK_STRING = "TEST_TASK";
const char *NO_OBJECT_STRING = "NO_OBJECT";
const char *translateObject(object_id_t object) {
switch ((object & 0xFFFFFFFF)) {
case 0x4100CAFE:
return TEST_ASSEMBLY_STRING;
case 0x4301CAFE:
return TEST_CONTROLLER_STRING;
case 0x4401AFFE:
return TEST_DEVICE_HANDLER_0_STRING;
case 0x4402AFFE:
return TEST_DEVICE_HANDLER_1_STRING;
case 0x4900AFFE:
return TEST_ECHO_COM_IF_STRING;
case 0x53000000:
return FSFW_OBJECTS_START_STRING;
case 0x53000001:
return PUS_SERVICE_1_VERIFICATION_STRING;
case 0x53000002:
return PUS_SERVICE_2_DEVICE_ACCESS_STRING;
case 0x53000003:
return PUS_SERVICE_3_HOUSEKEEPING_STRING;
case 0x53000005:
return PUS_SERVICE_5_EVENT_REPORTING_STRING;
case 0x53000008:
return PUS_SERVICE_8_FUNCTION_MGMT_STRING;
case 0x53000009:
return PUS_SERVICE_9_TIME_MGMT_STRING;
case 0x53000011:
return PUS_SERVICE_11_TC_SCHEDULER_STRING;
case 0x53000017:
return PUS_SERVICE_17_TEST_STRING;
case 0x53000020:
return PUS_SERVICE_20_PARAMETERS_STRING;
case 0x53000200:
return PUS_SERVICE_200_MODE_MGMT_STRING;
case 0x53000201:
return PUS_SERVICE_201_HEALTH_STRING;
case 0x53001000:
return CFDP_PACKET_DISTRIBUTOR_STRING;
case 0x53010000:
return HEALTH_TABLE_STRING;
case 0x53010100:
return MODE_STORE_STRING;
case 0x53030000:
return EVENT_MANAGER_STRING;
case 0x53040000:
return INTERNAL_ERROR_REPORTER_STRING;
case 0x534f0100:
return TC_STORE_STRING;
case 0x534f0200:
return TM_STORE_STRING;
case 0x534f0300:
return IPC_STORE_STRING;
case 0x53500010:
return TIME_STAMPER_STRING;
case 0x53500020:
return TC_VERIFICATOR_STRING;
case 0x53ffffff:
return FSFW_OBJECTS_END_STRING;
case 0x62000300:
return TCPIP_TMTC_BRIDGE_STRING;
case 0x62000400:
return TCPIP_TMTC_POLLING_TASK_STRING;
case 0x63000000:
return CCSDS_DISTRIBUTOR_STRING;
case 0x63000001:
return PUS_DISTRIBUTOR_STRING;
case 0x63000002:
return TM_FUNNEL_STRING;
case 0x74000001:
return TEST_DUMMY_1_STRING;
case 0x74000002:
return TEST_DUMMY_2_STRING;
case 0x74000003:
return TEST_DUMMY_3_STRING;
case 0x74000004:
return TEST_DUMMY_4_STRING;
case 0x74000005:
return TEST_DUMMY_5_STRING;
case 0x7400CAFE:
return TEST_TASK_STRING;
case 0xFFFFFFFF:
return NO_OBJECT_STRING;
default:
return "UNKNOWN_OBJECT";
}
return 0;
const char* translateObject(object_id_t object) {
switch( (object & 0xFFFFFFFF) ) {
case 0x4100CAFE:
return TEST_ASSEMBLY_STRING;
case 0x4301CAFE:
return TEST_CONTROLLER_STRING;
case 0x4401AFFE:
return TEST_DEVICE_HANDLER_0_STRING;
case 0x4402AFFE:
return TEST_DEVICE_HANDLER_1_STRING;
case 0x4900AFFE:
return TEST_ECHO_COM_IF_STRING;
case 0x53000000:
return FSFW_OBJECTS_START_STRING;
case 0x53000001:
return PUS_SERVICE_1_VERIFICATION_STRING;
case 0x53000002:
return PUS_SERVICE_2_DEVICE_ACCESS_STRING;
case 0x53000003:
return PUS_SERVICE_3_HOUSEKEEPING_STRING;
case 0x53000005:
return PUS_SERVICE_5_EVENT_REPORTING_STRING;
case 0x53000008:
return PUS_SERVICE_8_FUNCTION_MGMT_STRING;
case 0x53000009:
return PUS_SERVICE_9_TIME_MGMT_STRING;
case 0x53000017:
return PUS_SERVICE_17_TEST_STRING;
case 0x53000020:
return PUS_SERVICE_20_PARAMETERS_STRING;
case 0x53000200:
return PUS_SERVICE_200_MODE_MGMT_STRING;
case 0x53000201:
return PUS_SERVICE_201_HEALTH_STRING;
case 0x53010000:
return HEALTH_TABLE_STRING;
case 0x53010100:
return MODE_STORE_STRING;
case 0x53030000:
return EVENT_MANAGER_STRING;
case 0x53040000:
return INTERNAL_ERROR_REPORTER_STRING;
case 0x534f0100:
return TC_STORE_STRING;
case 0x534f0200:
return TM_STORE_STRING;
case 0x534f0300:
return IPC_STORE_STRING;
case 0x53500010:
return TIME_STAMPER_STRING;
case 0x53ffffff:
return FSFW_OBJECTS_END_STRING;
case 0x62000300:
return UDP_BRIDGE_STRING;
case 0x62000400:
return UDP_POLLING_TASK_STRING;
case 0x63000000:
return CCSDS_DISTRIBUTOR_STRING;
case 0x63000001:
return PUS_DISTRIBUTOR_STRING;
case 0x63000002:
return TM_FUNNEL_STRING;
case 0x74000001:
return TEST_DUMMY_1_STRING;
case 0x74000002:
return TEST_DUMMY_2_STRING;
case 0x74000003:
return TEST_DUMMY_3_STRING;
case 0x74000004:
return TEST_DUMMY_4_STRING;
case 0x74000005:
return TEST_DUMMY_5_STRING;
case 0x7400CAFE:
return TEST_TASK_STRING;
case 0xFFFFFFFF:
return NO_OBJECT_STRING;
default:
return "UNKNOWN_OBJECT";
}
return 0;
}

View File

@ -3,6 +3,6 @@
#include <fsfw/objectmanager/SystemObjectIF.h>
const char *translateObject(object_id_t object);
const char* translateObject(object_id_t object);
#endif /* FSFWCONFIG_OBJECTS_TRANSLATEOBJECTS_H_ */

View File

@ -11,20 +11,11 @@ from fsfwgen.parserbase.parser import FileParser
from fsfwgen.utility.csv_writer import CsvWriter
from fsfwgen.utility.printer import Printer
PACKET_CONTENT_DEFINITION_DESTINATION = [
"../../mission/pus/servicepackets/",
"../../fsfw/pus/servicepackets/",
]
PACKET_CONTENT_DEFINITION_DESTINATION = ["../../mission/pus/servicepackets/",
"../../fsfw/pus/servicepackets/"]
PACKET_CONTENT_CSV_NAME = "mib_packet_data_content.csv"
PACKET_CONTENT_HEADER_COLUMN = [
"Service",
"Subservice",
"Packet Name",
"Datatype",
"Name",
"Size [Bytes]",
"Comment",
]
PACKET_CONTENT_HEADER_COLUMN = ["Service", "Subservice", "Packet Name", "Datatype", "Name",
"Size [Bytes]", "Comment"]
SQL_DELETE_PACKET_DATA_CONTENT_CMD = """
DROP TABLE IF EXISTS PacketContent;
@ -52,17 +43,12 @@ VALUES(?,?,?,?,?,?,?)
def main():
print("PacketContentParser: Parsing for header files.")
header_file_parser = FileListParser(PACKET_CONTENT_DEFINITION_DESTINATION)
header_file_list = header_file_parser.parse_header_files(
False, "Parsing packet data files: "
)
header_file_list = header_file_parser.parse_header_files(False, "Parsing packet data files: ")
packet_content_parser = PacketContentParser(header_file_list)
subservice_table = packet_content_parser.parse_files(True)
Printer.print_content(
subservice_table, "PacketContentParser: Printing packet data table:"
)
subservice_writer = CsvWriter(
PACKET_CONTENT_CSV_NAME, subservice_table, PACKET_CONTENT_HEADER_COLUMN
)
Printer.print_content(subservice_table, "PacketContentParser: Printing packet data table:")
subservice_writer = CsvWriter(PACKET_CONTENT_CSV_NAME,
subservice_table, PACKET_CONTENT_HEADER_COLUMN)
subservice_writer.write_to_csv()
subservice_writer.move_csv("..")
@ -81,7 +67,7 @@ class PacketContentParser(FileParser):
self.commentColumn = 6
self.lastEntryColumn = 7
self.columnListLength = 8
self.dictEntryList = list(range(self.columnListLength - 1))
self.dictEntryList = list(range(self.columnListLength-1))
self.datatypeMatch = False
self.ignoreFlag = False
@ -92,9 +78,7 @@ class PacketContentParser(FileParser):
self_print_parsing_info = args[0]
# Read service from file name
self.dictEntryList[self.serviceColumn] = re.search(
"[0-9]{1,3}", file_name
).group(0)
self.dictEntryList[self.serviceColumn] = re.search('[0-9]{1,3}', file_name).group(0)
self.dictEntryList[self.subserviceColumn] = " "
file = open(file_name, "r")
if self_print_parsing_info:
@ -112,19 +96,15 @@ class PacketContentParser(FileParser):
self.update_packet_content_sizes()
def scan_for_class_and_struct_match_and_handle_it(self, line):
class_or_struct_match = re.search(
"[\s]*class[\s]*([\w]*)[\s]*.*[\s]*{[\s]*([^\n]*)", line
)
class_or_struct_match = re.search('[\s]*class[\s]*([\w]*)[\s]*.*[\s]*{[\s]*([^\n]*)', line)
if not class_or_struct_match:
class_or_struct_match = re.search(
"[\s]*struct[\s]*([\w]*)[\s]*.*[\s]*{[\s]*([^\n]*)", line
)
'[\s]*struct[\s]*([\w]*)[\s]*.*[\s]*{[\s]*([^\n]*)', line)
if class_or_struct_match:
self.dictEntryList[self.classNameColumn] = class_or_struct_match.group(1)
if class_or_struct_match.group(2):
self.dictEntryList[
self.subserviceColumn
] = self.check_for_subservice_string(class_or_struct_match.group(2))
self.dictEntryList[self.subserviceColumn] = \
self.check_for_subservice_string(class_or_struct_match.group(2))
def scan_for_variable_match_and_handle_it(self, line):
# Look for datatype definitions
@ -137,37 +117,26 @@ class PacketContentParser(FileParser):
# First step: Search for possible parameter definitions
# Generic serialize element or datatypes
var_match = re.search(
r"[\w]*(?:<)?[\s]*(uint32_t|uint8_t|uint16_t|ReturnValue_t|Mode_t|Submode_t|"
r"object_id_t|float|double|bool|ActionId_t|EventId_t|sid_t|ParameterId_t)"
r"(?:>)?[\s]*([\w]*)[\s]*(?:[= 0-9]*)?[;](?:[\/!< ]*([^\n]*))?",
line,
)
r'[\w]*(?:<)?[\s]*(uint32_t|uint8_t|uint16_t|ReturnValue_t|Mode_t|Submode_t|'
r'object_id_t|float|double|bool|ActionId_t|EventId_t|sid_t|ParameterId_t)'
r'(?:>)?[\s]*([\w]*)[\s]*(?:[= 0-9]*)?[;](?:[\/!< ]*([^\n]*))?', line)
if var_match:
# Debug printout
# print(var_match.group(0))
self.handle_generic_variable_match(var_match)
# Serial Fixed Array List with Size Header
else:
var_match = re.search(
r"[ \w]*<SerialFixedArrayListAdapter<([\w_, ()]*)>>"
r"[\s]*([\w]*)[\s]*[;](?:[/!< ]*([^\n]*))?",
line,
)
var_match = re.search(r'[ \w]*<SerialFixedArrayListAdapter<([\w_, ()]*)>>'
r'[\s]*([\w]*)[\s]*[;](?:[/!< ]*([^\n]*))?', line)
if var_match:
self.handle_serial_fixed_array_match(var_match)
# Serial Buffer, No length field
if not var_match:
var_match = re.search(
r"[ \w]*<SerialBufferAdapter<([\w_,]*)>>"
r"[\s]*([\w]*)[\s]*[;](?:[/!< ]*([^\n]*))?",
line,
)
var_match = re.search(r'[ \w]*<SerialBufferAdapter<([\w_,]*)>>'
r'[\s]*([\w]*)[\s]*[;](?:[/!< ]*([^\n]*))?', line)
if not var_match:
var_match = re.search(
r"[\w ]*(?:<)?(uint32_t|uint8_t|uint16_t)[\s]*\*"
r"(?:>)?[\s]*([\w]*)[\s]*[;](?:[/!< ]*([^\n]*))?",
line,
)
var_match = re.search(r'[\w ]*(?:<)?(uint32_t|uint8_t|uint16_t)[\s]*\*'
r'(?:>)?[\s]*([\w]*)[\s]*[;](?:[/!< ]*([^\n]*))?', line)
if var_match:
self.handle_serial_buffer_match(var_match)
# exclude size definition in serialize adapter or any definitions which are not parameter initializations
@ -178,7 +147,7 @@ class PacketContentParser(FileParser):
def update_packet_content_table(self):
self.index = self.index + 1
dict_entry_tuple = tuple(self.dictEntryList[: self.columnListLength])
dict_entry_tuple = tuple(self.dictEntryList[:self.columnListLength])
if not self.ignoreFlag:
self.mib_table.update({self.index: dict_entry_tuple})
else:
@ -193,20 +162,16 @@ class PacketContentParser(FileParser):
pass
else:
fixed_array_properties = re.search(
"([\w_]*)[\s]*,[\s]*([\w_()]*)[\s]*,[\s]*([\w_()]*)[\s]*",
var_match.group(1),
)
'([\w_]*)[\s]*,[\s]*([\w_()]*)[\s]*,[\s]*([\w_()]*)[\s]*', var_match.group(1))
if fixed_array_properties:
type_of_next_buffer_size = fixed_array_properties.group(3)
self.index = self.index + 1
self.dictEntryList[self.datatypeColumn] = type_of_next_buffer_size
self.dictEntryList[self.nameColumn] = "Size of following buffer"
dict_entry_tuple = tuple(self.dictEntryList[: self.columnListLength])
dict_entry_tuple = tuple(self.dictEntryList[:self.columnListLength])
self.mib_table.update({self.index: dict_entry_tuple})
self.handle_var_match(var_match)
self.dictEntryList[self.datatypeColumn] = (
fixed_array_properties.group(1) + " *"
)
self.dictEntryList[self.datatypeColumn] = fixed_array_properties.group(1) + " *"
self.handle_exporter_string(var_match.group(3))
def handle_serial_buffer_match(self, var_match):
@ -237,9 +202,7 @@ class PacketContentParser(FileParser):
self.mib_table.update({key: content})
def attempt_uint_match(self, content):
self.datatypeMatch = re.search(
"uint([\d]{1,2})_t", content[self.datatypeColumn]
)
self.datatypeMatch = re.search('uint([\d]{1,2})_t', content[self.datatypeColumn])
if self.datatypeMatch:
content = list(content)
content[self.sizeColumn] = round(int(self.datatypeMatch.group(1)) / 8)
@ -248,9 +211,8 @@ class PacketContentParser(FileParser):
def attempt_four_byte_match(self, content):
self.datatypeMatch = re.search(
r"object_id_t|ActionId_t|Mode_t|float|sid_t|ParameterId_t",
content[self.datatypeColumn],
)
r'object_id_t|ActionId_t|Mode_t|float|sid_t|ParameterId_t',
content[self.datatypeColumn])
if self.datatypeMatch:
content = list(content)
content[self.sizeColumn] = 4
@ -258,7 +220,7 @@ class PacketContentParser(FileParser):
return content
def attempt_eight_byte_match(self, content):
self.datatypeMatch = re.search("double", content[self.datatypeColumn])
self.datatypeMatch = re.search('double', content[self.datatypeColumn])
if self.datatypeMatch:
content = list(content)
content[self.sizeColumn] = 8
@ -266,9 +228,7 @@ class PacketContentParser(FileParser):
return content
def attempt_two_byte_match(self, content):
self.datatypeMatch = re.search(
"ReturnValue_t|EventId_t", content[self.datatypeColumn]
)
self.datatypeMatch = re.search('ReturnValue_t|EventId_t', content[self.datatypeColumn])
if self.datatypeMatch:
content = list(content)
content[self.sizeColumn] = 2
@ -276,7 +236,7 @@ class PacketContentParser(FileParser):
return content
def attempt_one_byte_match(self, content):
self.datatypeMatch = re.search("Submode_t|bool", content[self.datatypeColumn])
self.datatypeMatch = re.search('Submode_t|bool', content[self.datatypeColumn])
if self.datatypeMatch:
content = list(content)
content[self.sizeColumn] = 1
@ -284,7 +244,7 @@ class PacketContentParser(FileParser):
return content
def handle_uint_buffer_type(self, content):
if re.search("\*", content[self.datatypeColumn]):
if re.search('\*', content[self.datatypeColumn]):
content = list(content)
content[self.sizeColumn] = "deduced"
content = tuple(content)
@ -292,22 +252,14 @@ class PacketContentParser(FileParser):
# Used to scan exporter string for ignore flag or store any comments
def handle_exporter_string(self, match):
exporter_string = re.search("[ /!<]*\[EXPORT[\w]*\][\s]*:[\s]*([^\n]*)", match)
exporter_string = re.search('[ /!<]*\[EXPORT[\w]*\][\s]*:[\s]*([^\n]*)', match)
if exporter_string:
type_string = re.search(
"\[TYPE|BUFFERTYPE\][\s]*([\w]*)[^\n|\[]*",
exporter_string.group(0),
re.IGNORECASE,
)
type_string = re.search("\[TYPE|BUFFERTYPE\][\s]*([\w]*)[^\n|\[]*", exporter_string.group(0),
re.IGNORECASE)
if type_string:
self.dictEntryList[self.datatypeColumn] = (
str(type_string.group(1)) + " *"
)
comment_string = re.search(
"\[COMMENT\][\s]*([\w]*)[^\n|\[]*",
exporter_string.group(0),
re.IGNORECASE,
)
self.dictEntryList[self.datatypeColumn] = str(type_string.group(1)) + " *"
comment_string = re.search("\[COMMENT\][\s]*([\w]*)[^\n|\[]*", exporter_string.group(0),
re.IGNORECASE)
if comment_string:
self.dictEntryList[self.commentColumn] = comment_string.group(1)
self.check_for_ignore_string(exporter_string.group(0))
@ -317,15 +269,13 @@ class PacketContentParser(FileParser):
# Used to transform comma separated subservice numbers into specific subservice numbers
def check_for_subservice_string(self, full_description):
subservice_info = re.search(
r"^.*//[\s]*[!<]*[\s]*\[EXPORT[\w]*\][\s]*:[\s]*\[SUBSERVICE\][\s]*([^\n]*)",
full_description,
re.IGNORECASE,
)
description = " "
r'^.*//[\s]*[!<]*[\s]*\[EXPORT[\w]*\][\s]*:[\s]*\[SUBSERVICE\][\s]*([^\n]*)',
full_description, re.IGNORECASE)
description = ' '
if subservice_info:
description = self.handle_subservice_string(subservice_info)
if full_description == "":
description = " "
if full_description == '':
description = ' '
return description
def check_for_ignore_string(self, string):
@ -336,8 +286,8 @@ class PacketContentParser(FileParser):
@staticmethod
def handle_subservice_string(subservice_info):
description = " "
subservice_list = [int(x) for x in subservice_info.group(1).split(",")]
description = ' '
subservice_list = [int(x) for x in subservice_info.group(1).split(',')]
subservice_number = len(subservice_list)
for i in range(subservice_number):
description = description + str(subservice_list[i])
@ -350,3 +300,6 @@ class PacketContentParser(FileParser):
if __name__ == "__main__":
main()

View File

@ -1,46 +1,40 @@
#! /usr/bin/env python3
#! /usr/bin/python3
# -*- coding: utf-8 -*-
"""Part of the MIB export tools for the FSFW project by
"""
from fsfwgen.core import get_console_logger
from fsfwgen.utility.file_management import copy_file
:file: returnvalues_parser.py
:brief: Part of the MOD export tools for the SOURCE project by KSat.
TODO: Integrate into Parser Structure instead of calling this file (no cpp file generated yet)
:details:
Returnvalue exporter.
To use MySQLdb, run pip install mysqlclient or install in IDE. On Windows, Build Tools installation might be necessary.
:data: 21.11.2019
"""
from fsfwgen.parserbase.file_list_parser import FileListParser
from fsfwgen.returnvalues.returnvalues_parser import InterfaceParser, ReturnValueParser
from fsfwgen.utility.sql_writer import SqlWriter
from fsfwgen.utility.printer import PrettyPrinter
from fsfwgen.utility.file_management import move_file
from definitions import (
BSP_HOSTED,
DATABASE_NAME,
ROOT_DIR,
OBSW_ROOT_DIR,
EXAMPLE_COMMON_DIR,
)
from definitions import DATABASE_NAME, BspSelect, BspFolderDict
LOGGER = get_console_logger()
EXPORT_TO_FILE = True
COPY_CSV_FILE = True
MOVE_CSV_FILE = True
EXPORT_TO_SQL = True
PRINT_TABLES = True
BSP_SELECT = BspSelect.BSP_HOSTED.value
BSP_FOLDER = BspFolderDict[BSP_SELECT]
FILE_SEPARATOR = ";"
CSV_RETVAL_FILENAME = f"{BSP_FOLDER}_returnvalues.csv"
CSV_MOVE_DESTINATION = "../"
FILE_SEPARATOR = ';'
MAX_STRING_LENGTH = 32
CSV_RETVAL_FILENAME = f"{ROOT_DIR}/{BSP_HOSTED}_returnvalues.csv"
CSV_COPY_DEST = f"{OBSW_ROOT_DIR}/tmtc/config/returnvalues.csv"
ADD_LINUX_FOLDER = False
FSFW_CONFIG_ROOT = f"{BSP_HOSTED}/fsfwconfig"
INTERFACE_DEFINITION_FILES = [
f"{OBSW_ROOT_DIR}/fsfw/src/fsfw/returnvalues/FwClassIds.h",
f"{EXAMPLE_COMMON_DIR}/config/commonClassIds.h",
f"{FSFW_CONFIG_ROOT}/returnvalues/classIds.h",
"../../fsfw/returnvalues/FwClassIds.h",
"../../example_common/config/commonClassIds.h",
f"../../{BSP_FOLDER}/fsfwconfig/returnvalues/classIds.h"
]
RETURNVALUE_SOURCES = [
f"{BSP_HOSTED}/",
f"{OBSW_ROOT_DIR}/fsfw/",
f"{EXAMPLE_COMMON_DIR}/",
RETURNVALUE_DESTINATIONS = [
"../../example_common/", "../../fsfw/", f"../../{BSP_FOLDER}"
]
SQL_DELETE_RETURNVALUES_CMD = """
@ -64,38 +58,29 @@ VALUES(?,?,?,?,?)
"""
def parse_returnvalues():
returnvalue_table = generate_returnvalue_table()
def main():
returnvalue_table = parse_returnvalues()
print("")
if EXPORT_TO_FILE:
ReturnValueParser.export_to_file(
CSV_RETVAL_FILENAME, returnvalue_table, FILE_SEPARATOR
)
if COPY_CSV_FILE:
copy_file(
filename=CSV_RETVAL_FILENAME,
destination=CSV_COPY_DEST,
delete_existing_file=True,
)
ReturnValueParser.export_to_file(CSV_RETVAL_FILENAME, returnvalue_table, FILE_SEPARATOR)
if MOVE_CSV_FILE:
move_file(file_name=CSV_RETVAL_FILENAME, destination=CSV_MOVE_DESTINATION)
if EXPORT_TO_SQL:
LOGGER.info("ReturnvalueParser: Exporting to SQL")
sql_retval_exporter(
returnvalue_table, db_filename=f"{ROOT_DIR}/{DATABASE_NAME}"
)
print("ReturnvalueParser: Exporting to SQL")
sql_retval_exporter(returnvalue_table, db_filename=f"../{DATABASE_NAME}")
def generate_returnvalue_table():
"""Core function to parse for the return values"""
interface_parser = InterfaceParser(
file_list=INTERFACE_DEFINITION_FILES, print_table=PRINT_TABLES
)
def parse_returnvalues():
""" Core function to parse for the return values """
interface_parser = InterfaceParser(file_list=INTERFACE_DEFINITION_FILES, print_table=PRINT_TABLES)
interfaces = interface_parser.parse_files()
header_parser = FileListParser(RETURNVALUE_SOURCES)
header_parser = FileListParser(RETURNVALUE_DESTINATIONS)
header_list = header_parser.parse_header_files(True, "Parsing header file list: ")
print("")
returnvalue_parser = ReturnValueParser(interfaces, header_list, PRINT_TABLES)
returnvalue_parser.obsw_root_path = OBSW_ROOT_DIR
returnvalue_parser.set_moving_window_mode(moving_window_size=7)
returnvalue_table = returnvalue_parser.parse_files(True)
LOGGER.info(f"ReturnvalueParser: Found {len(returnvalue_table)} returnvalues")
print(f"ReturnvalueParser: Found {len(returnvalue_table)} returnvalues.")
return returnvalue_table
@ -104,8 +89,14 @@ def sql_retval_exporter(returnvalue_table, db_filename: str):
sql_writer.open(SQL_CREATE_RETURNVALUES_CMD)
for entry in returnvalue_table.items():
sql_writer.write_entries(
SQL_INSERT_RETURNVALUES_CMD,
(entry[0], entry[1][2], entry[1][4], entry[1][3], entry[1][1]),
)
SQL_INSERT_RETURNVALUES_CMD, (entry[0],
entry[1][2],
entry[1][4],
entry[1][3],
entry[1][1]))
sql_writer.commit()
sql_writer.close()
if __name__ == "__main__":
main()

View File

@ -28,13 +28,7 @@ from fsfwgen.utility.printer import Printer
SUBSERVICE_DEFINITION_DESTINATION = ["../../mission/", "../../fsfw/pus/"]
SUBSERVICE_CSV_NAME = "mib_subservices.csv"
SUBSERVICE_COLUMN_HEADER = [
"Service",
"Subservice Name",
"Subservice Number",
"Type",
"Comment",
]
SUBSERVICE_COLUMN_HEADER = ["Service", "Subservice Name", "Subservice Number", "Type", "Comment"]
SQL_DELETE_SUBSVC_CMD = """
DROP TABLE IF EXISTS Subservice;
@ -61,7 +55,6 @@ class SubserviceColumns(Enum):
"""
Specifies order of MIB columns
"""
SERVICE = 0
NAME = 1
NUMBER = 2
@ -78,16 +71,12 @@ def main():
:return:
"""
header_parser = FileListParser(SUBSERVICE_DEFINITION_DESTINATION)
header_file_list = header_parser.parse_header_files(
False, "Parsing subservice header files: "
)
header_file_list = header_parser.parse_header_files(False, "Parsing subservice header files: ")
packet_subservice_parser = SubserviceParser(header_file_list)
subservice_table = packet_subservice_parser.parse_files()
Printer.print_content(subservice_table, "Printing subservice table:")
print("Found " + str(len(subservice_table)) + " subservice entries.")
subservice_writer = CsvWriter(
SUBSERVICE_CSV_NAME, subservice_table, SUBSERVICE_COLUMN_HEADER
)
subservice_writer = CsvWriter(SUBSERVICE_CSV_NAME, subservice_table, SUBSERVICE_COLUMN_HEADER)
subservice_writer.write_to_csv()
subservice_writer.move_csv("..")
@ -101,7 +90,6 @@ class SubserviceParser(FileParser):
"""
This parser class can parse the subservice definitions.
"""
def __init__(self, file_list: list):
super().__init__(file_list)
# Column System allows reshuffling of table columns in constructor
@ -123,7 +111,7 @@ class SubserviceParser(FileParser):
self_print_parsing_info = args[0]
# Read service from file name
service_match = re.search("Service[^0-9]*([0-9]{1,3})", file_name)
service_match = re.search('Service[^0-9]*([0-9]{1,3})', file_name)
if service_match:
self.dict_entry_list[Clmns.SERVICE.value] = service_match.group(1)
self.dict_entry_list[Clmns.NAME.value] = " "
@ -141,7 +129,7 @@ class SubserviceParser(FileParser):
:return:
"""
# Case insensitive matching
enum_match = re.search(r"[\s]*enum[\s]*Subservice([^\n]*)", line, re.IGNORECASE)
enum_match = re.search(r'[\s]*enum[\s]*Subservice([^\n]*)', line, re.IGNORECASE)
if enum_match:
self.subservice_enum_found = True
if self.subservice_enum_found:
@ -158,7 +146,7 @@ class SubserviceParser(FileParser):
subservice_match = self.__scan_subservices(line)
if subservice_match:
self.index = self.index + 1
dict_entry_tuple = tuple(self.dict_entry_list[: self.clmns_len])
dict_entry_tuple = tuple(self.dict_entry_list[:self.clmns_len])
self.mib_table.update({self.index: dict_entry_tuple})
self.__clear_tuple()
@ -170,9 +158,8 @@ class SubserviceParser(FileParser):
self.possible_match_on_next_lines = False
def __scan_for_export_command(self, line: str) -> bool:
command_string = re.search(
r"([^\[]*)\[export\][: ]*\[([\w]*)\][\s]*([^\n]*)", line, re.IGNORECASE
)
command_string = re.search(r"([^\[]*)\[export\][: ]*\[([\w]*)\][\s]*([^\n]*)",
line, re.IGNORECASE)
if command_string:
# Check whether there is a separated export command
# (export command is not on same line as subservice definition)
@ -192,9 +179,9 @@ class SubserviceParser(FileParser):
Strip whitespaces and comment symbols and add to comment buffer.
"""
possible_multiline_comment = line.lstrip()
possible_multiline_comment = possible_multiline_comment.lstrip("/")
possible_multiline_comment = possible_multiline_comment.lstrip("<")
possible_multiline_comment = possible_multiline_comment.lstrip("!")
possible_multiline_comment = possible_multiline_comment.lstrip('/')
possible_multiline_comment = possible_multiline_comment.lstrip('<')
possible_multiline_comment = possible_multiline_comment.lstrip('!')
possible_multiline_comment = possible_multiline_comment.rstrip()
if len(possible_multiline_comment) > 0:
self.dict_entry_list[Clmns.COMMENT.value] += possible_multiline_comment
@ -205,9 +192,8 @@ class SubserviceParser(FileParser):
:param line:
:return:
"""
subservice_match = re.search(
r"[\s]*([\w]*)[\s]*=[\s]*([0-9]{1,3})(?:,)?(?:[ /!<>]*([^\n]*))?", line
)
subservice_match = \
re.search(r"[\s]*([\w]*)[\s]*=[\s]*([0-9]{1,3})(?:,)?(?:[ /!<>]*([^\n]*))?", line)
if subservice_match:
self.dict_entry_list[Clmns.NAME.value] = subservice_match.group(1)
self.dict_entry_list[Clmns.NUMBER.value] = subservice_match.group(2)
@ -218,7 +204,7 @@ class SubserviceParser(FileParser):
return True
# Check whether exporting was commanded on last lines
return bool(self.possible_match_on_next_lines)
if re.search(r"}[\s]*;", line):
if re.search(r'}[\s]*;', line):
self.subservice_enum_found = False
return subservice_match
@ -231,19 +217,19 @@ class SubserviceParser(FileParser):
return export_command_found
def __scan_for_type(self, string) -> bool:
type_match = re.search(r"\[reply\]|\[tm\]", string, re.IGNORECASE)
type_match = re.search(r'\[reply\]|\[tm\]', string, re.IGNORECASE)
if type_match:
self.dict_entry_list[Clmns.TYPE.value] = "TM"
self.dict_entry_list[Clmns.TYPE.value] = 'TM'
return True
type_match = re.search(r"\[command\]|\[tc\]", string, re.IGNORECASE)
type_match = re.search(r'\[command\]|\[tc\]', string, re.IGNORECASE)
if type_match:
self.dict_entry_list[Clmns.TYPE.value] = "TC"
self.dict_entry_list[Clmns.TYPE.value] = 'TC'
return True
self.dict_entry_list[Clmns.TYPE.value] = "Unspecified"
self.dict_entry_list[Clmns.TYPE.value] = 'Unspecified'
return False
def __scan_for_comment(self, comment_string):
comment_match = re.search(r":[\s]*\[[\w]*\][\s]*([^\n]*)", comment_string)
comment_match = re.search(r':[\s]*\[[\w]*\][\s]*([^\n]*)', comment_string)
if comment_match:
self.dict_entry_list[Clmns.COMMENT.value] = comment_match.group(1)

View File

@ -15,4 +15,4 @@ printToConsole = True
exportToCSV = True
doCopyFile = False
copyDestination = "."
fileSeparator = ";"
fileSeparator = ';'

View File

@ -1,32 +0,0 @@
#!/bin/bash
if [[ ! -f README.md ]]; then
cd ..
fi
folder_list=(
"./bsp_hosted"
"./example_common"
)
cmake_fmt="cmake-format"
file_selectors="-iname CMakeLists.txt"
if command -v ${cmake_fmt} &> /dev/null; then
echo "Auto-formatting all CMakeLists.txt files"
${cmake_fmt} -i CMakeLists.txt
for dir in ${folder_list[@]}; do
find ${dir} ${file_selectors} | xargs ${cmake_fmt} -i
done
else
echo "No ${cmake_fmt} tool found, not formatting CMake files"
fi
cpp_format="clang-format"
file_selectors="-iname *.h -o -iname *.cpp -o -iname *.c -o -iname *.tpp"
if command -v ${cpp_format} &> /dev/null; then
for dir in ${folder_list[@]}; do
echo "Auto-formatting C/C++ files in ${dir} recursively"
find ${dir} ${file_selectors} | xargs ${cpp_format} --style=file -i
done
else
echo "No ${cpp_format} tool found, not formatting C++/C files"
fi

8
tmtc/.gitignore vendored
View File

@ -1,8 +1,2 @@
/.idea/*
!/.idea/runConfigurations
/venv
/config/tmtc_config.json
/seqcnt*.txt
/log
/log/*.log

View File

@ -1,24 +0,0 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="CFDP Test NAK No Closure" type="PythonConfigurationType" factoryName="Python" folderName="CFDP">
<module name="tmtc" />
<option name="INTERPRETER_OPTIONS" value="" />
<option name="PARENT_ENVS" value="true" />
<envs>
<env name="PYTHONUNBUFFERED" value="1" />
</envs>
<option name="SDK_HOME" value="" />
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
<option name="IS_MODULE_SDK" value="true" />
<option name="ADD_CONTENT_ROOTS" value="true" />
<option name="ADD_SOURCE_ROOTS" value="true" />
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/tmtcc.py" />
<option name="PARAMETERS" value="cfdp filetest/cfdp_test.txt /tmp/hello-cpy.txt --no-closure -d 0.2" />
<option name="SHOW_COMMAND_LINE" value="false" />
<option name="EMULATE_TERMINAL" value="false" />
<option name="MODULE_MODE" value="false" />
<option name="REDIRECT_INPUT" value="false" />
<option name="INPUT_FILE" value="" />
<method v="2" />
</configuration>
</component>

View File

@ -1,24 +0,0 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="CFDP Test NAK With Closure" type="PythonConfigurationType" factoryName="Python" folderName="CFDP">
<module name="tmtc" />
<option name="INTERPRETER_OPTIONS" value="" />
<option name="PARENT_ENVS" value="true" />
<envs>
<env name="PYTHONUNBUFFERED" value="1" />
</envs>
<option name="SDK_HOME" value="" />
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
<option name="IS_MODULE_SDK" value="true" />
<option name="ADD_CONTENT_ROOTS" value="true" />
<option name="ADD_SOURCE_ROOTS" value="true" />
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/tmtcc.py" />
<option name="PARAMETERS" value="cfdp filetest/cfdp_test.txt /tmp/hello-cpy.txt -d 0.2" />
<option name="SHOW_COMMAND_LINE" value="false" />
<option name="EMULATE_TERMINAL" value="false" />
<option name="MODULE_MODE" value="false" />
<option name="REDIRECT_INPUT" value="false" />
<option name="INPUT_FILE" value="" />
<method v="2" />
</configuration>
</component>

View File

@ -12,7 +12,7 @@
<option name="ADD_CONTENT_ROOTS" value="true" />
<option name="ADD_SOURCE_ROOTS" value="true" />
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/tmtcc.py" />
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/tmtccli.py" />
<option name="PARAMETERS" value="-s 200 -o asm_to_normal -t 6 -l" />
<option name="SHOW_COMMAND_LINE" value="false" />
<option name="EMULATE_TERMINAL" value="false" />

View File

@ -12,7 +12,7 @@
<option name="ADD_CONTENT_ROOTS" value="true" />
<option name="ADD_SOURCE_ROOTS" value="true" />
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/tmtcc.py" />
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/tmtccli.py" />
<option name="PARAMETERS" value="-s 200 -o test -l" />
<option name="SHOW_COMMAND_LINE" value="false" />
<option name="EMULATE_TERMINAL" value="false" />

View File

@ -12,8 +12,8 @@
<option name="ADD_CONTENT_ROOTS" value="true" />
<option name="ADD_SOURCE_ROOTS" value="true" />
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/tmtcc.py" />
<option name="PARAMETERS" value="-s 17 -o 0 -d 5" />
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/tmtccli.py" />
<option name="PARAMETERS" value="-s 17 -o 0 -l" />
<option name="SHOW_COMMAND_LINE" value="false" />
<option name="EMULATE_TERMINAL" value="false" />
<option name="MODULE_MODE" value="false" />

View File

@ -1,24 +0,0 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="PUS Scheduler Test" type="PythonConfigurationType" factoryName="Python" folderName="PUS">
<module name="tmtc" />
<option name="INTERPRETER_OPTIONS" value="" />
<option name="PARENT_ENVS" value="true" />
<envs>
<env name="PYTHONUNBUFFERED" value="1" />
</envs>
<option name="SDK_HOME" value="" />
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
<option name="IS_MODULE_SDK" value="true" />
<option name="ADD_CONTENT_ROOTS" value="true" />
<option name="ADD_SOURCE_ROOTS" value="true" />
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/tmtcc.py" />
<option name="PARAMETERS" value="-s 11 -o test-insert -l" />
<option name="SHOW_COMMAND_LINE" value="false" />
<option name="EMULATE_TERMINAL" value="false" />
<option name="MODULE_MODE" value="false" />
<option name="REDIRECT_INPUT" value="false" />
<option name="INPUT_FILE" value="" />
<method v="2" />
</configuration>
</component>

View File

@ -12,7 +12,7 @@
<option name="ADD_CONTENT_ROOTS" value="true" />
<option name="ADD_SOURCE_ROOTS" value="true" />
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/tmtcc.py" />
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/tmtccli.py" />
<option name="PARAMETERS" value="-s 3 -o 1 -l" />
<option name="SHOW_COMMAND_LINE" value="false" />
<option name="EMULATE_TERMINAL" value="false" />

View File

@ -12,10 +12,10 @@
<option name="ADD_CONTENT_ROOTS" value="true" />
<option name="ADD_SOURCE_ROOTS" value="true" />
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/tmtcc.py" />
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/tmtccli.py" />
<option name="PARAMETERS" value="" />
<option name="SHOW_COMMAND_LINE" value="false" />
<option name="EMULATE_TERMINAL" value="true" />
<option name="EMULATE_TERMINAL" value="false" />
<option name="MODULE_MODE" value="false" />
<option name="REDIRECT_INPUT" value="false" />
<option name="INPUT_FILE" value="" />

View File

@ -12,8 +12,8 @@
<option name="ADD_CONTENT_ROOTS" value="true" />
<option name="ADD_SOURCE_ROOTS" value="true" />
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/tmtcc.py" />
<option name="PARAMETERS" value="-g" />
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/tmtcgui.py" />
<option name="PARAMETERS" value="" />
<option name="SHOW_COMMAND_LINE" value="false" />
<option name="EMULATE_TERMINAL" value="false" />
<option name="MODULE_MODE" value="false" />

View File

@ -1,24 +0,0 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="TMTC Help" type="PythonConfigurationType" factoryName="Python">
<module name="tmtc" />
<option name="INTERPRETER_OPTIONS" value="" />
<option name="PARENT_ENVS" value="true" />
<envs>
<env name="PYTHONUNBUFFERED" value="1" />
</envs>
<option name="SDK_HOME" value="" />
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
<option name="IS_MODULE_SDK" value="true" />
<option name="ADD_CONTENT_ROOTS" value="true" />
<option name="ADD_SOURCE_ROOTS" value="true" />
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/tmtcc.py" />
<option name="PARAMETERS" value="-h" />
<option name="SHOW_COMMAND_LINE" value="false" />
<option name="EMULATE_TERMINAL" value="true" />
<option name="MODULE_MODE" value="false" />
<option name="REDIRECT_INPUT" value="false" />
<option name="INPUT_FILE" value="" />
<method v="2" />
</configuration>
</component>

View File

@ -1,24 +0,0 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="TMTC Listener" type="PythonConfigurationType" factoryName="Python">
<module name="tmtc" />
<option name="INTERPRETER_OPTIONS" value="" />
<option name="PARENT_ENVS" value="true" />
<envs>
<env name="PYTHONUNBUFFERED" value="1" />
</envs>
<option name="SDK_HOME" value="" />
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
<option name="IS_MODULE_SDK" value="true" />
<option name="ADD_CONTENT_ROOTS" value="true" />
<option name="ADD_SOURCE_ROOTS" value="true" />
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/tmtcc.py" />
<option name="PARAMETERS" value="-l" />
<option name="SHOW_COMMAND_LINE" value="false" />
<option name="EMULATE_TERMINAL" value="true" />
<option name="MODULE_MODE" value="false" />
<option name="REDIRECT_INPUT" value="false" />
<option name="INPUT_FILE" value="" />
<method v="2" />
</configuration>
</component>

View File

@ -1,17 +0,0 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="spacepackets unittests" type="tests" factoryName="Autodetect">
<module name="tmtc" />
<option name="INTERPRETER_OPTIONS" value="" />
<option name="PARENT_ENVS" value="true" />
<option name="SDK_HOME" value="" />
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$/deps/spacepackets/tests" />
<option name="IS_MODULE_SDK" value="true" />
<option name="ADD_CONTENT_ROOTS" value="true" />
<option name="ADD_SOURCE_ROOTS" value="true" />
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
<option name="_new_additionalArguments" value="&quot;&quot;" />
<option name="_new_target" value="&quot;$PROJECT_DIR$/deps/spacepackets/tests&quot;" />
<option name="_new_targetType" value="&quot;PATH&quot;" />
<method v="2" />
</configuration>
</component>

View File

@ -1,17 +0,0 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="tmtccmd unittest" type="tests" factoryName="Autodetect">
<module name="tmtc" />
<option name="INTERPRETER_OPTIONS" value="" />
<option name="PARENT_ENVS" value="true" />
<option name="SDK_HOME" value="" />
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$/deps/tmtccmd" />
<option name="IS_MODULE_SDK" value="true" />
<option name="ADD_CONTENT_ROOTS" value="true" />
<option name="ADD_SOURCE_ROOTS" value="true" />
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
<option name="_new_additionalArguments" value="&quot;&quot;" />
<option name="_new_target" value="&quot;$PROJECT_DIR$/deps/tmtccmd&quot;" />
<option name="_new_targetType" value="&quot;PATH&quot;" />
<method v="2" />
</configuration>
</component>

@ -1 +1 @@
Subproject commit c9ae13c16f09cc2fa410b7cf7ee683b0b77e6b7b
Subproject commit 59a80fed91f2ba9cc7918f7aa32f475f27b0738c

View File

@ -1,79 +0,0 @@
2200;0x0898;STORE_SEND_WRITE_FAILED;LOW;;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2201;0x0899;STORE_WRITE_FAILED;LOW;;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2202;0x089a;STORE_SEND_READ_FAILED;LOW;;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2203;0x089b;STORE_READ_FAILED;LOW;;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2204;0x089c;UNEXPECTED_MSG;LOW;;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2205;0x089d;STORING_FAILED;LOW;;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2206;0x089e;TM_DUMP_FAILED;LOW;;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2207;0x089f;STORE_INIT_FAILED;LOW;;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2208;0x08a0;STORE_INIT_EMPTY;INFO;;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2209;0x08a1;STORE_CONTENT_CORRUPTED;LOW;;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2210;0x08a2;STORE_INITIALIZE;INFO;;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2211;0x08a3;INIT_DONE;INFO;;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2212;0x08a4;DUMP_FINISHED;INFO;;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2213;0x08a5;DELETION_FINISHED;INFO;;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2214;0x08a6;DELETION_FAILED;LOW;;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2215;0x08a7;AUTO_CATALOGS_SENDING_FAILED;INFO;;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2600;0x0a28;GET_DATA_FAILED;LOW;;fsfw/src/fsfw/storagemanager/StorageManagerIF.h
2601;0x0a29;STORE_DATA_FAILED;LOW;;fsfw/src/fsfw/storagemanager/StorageManagerIF.h
2800;0x0af0;DEVICE_BUILDING_COMMAND_FAILED;LOW;;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
2801;0x0af1;DEVICE_SENDING_COMMAND_FAILED;LOW;;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
2802;0x0af2;DEVICE_REQUESTING_REPLY_FAILED;LOW;;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
2803;0x0af3;DEVICE_READING_REPLY_FAILED;LOW;;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
2804;0x0af4;DEVICE_INTERPRETING_REPLY_FAILED;LOW;;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
2805;0x0af5;DEVICE_MISSED_REPLY;LOW;;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
2806;0x0af6;DEVICE_UNKNOWN_REPLY;LOW;;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
2807;0x0af7;DEVICE_UNREQUESTED_REPLY;LOW;;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
2808;0x0af8;INVALID_DEVICE_COMMAND;LOW;Indicates a SW bug in child class.;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
2809;0x0af9;MONITORING_LIMIT_EXCEEDED;LOW;;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
2810;0x0afa;MONITORING_AMBIGUOUS;HIGH;;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
4201;0x1069;FUSE_CURRENT_HIGH;LOW;;fsfw/src/fsfw/power/Fuse.h
4202;0x106a;FUSE_WENT_OFF;LOW;;fsfw/src/fsfw/power/Fuse.h
4204;0x106c;POWER_ABOVE_HIGH_LIMIT;LOW;;fsfw/src/fsfw/power/Fuse.h
4205;0x106d;POWER_BELOW_LOW_LIMIT;LOW;;fsfw/src/fsfw/power/Fuse.h
4300;0x10cc;SWITCH_WENT_OFF;LOW;;fsfw/src/fsfw/power/PowerSwitchIF.h
5000;0x1388;HEATER_ON;INFO;;fsfw/src/fsfw/thermal/Heater.h
5001;0x1389;HEATER_OFF;INFO;;fsfw/src/fsfw/thermal/Heater.h
5002;0x138a;HEATER_TIMEOUT;LOW;;fsfw/src/fsfw/thermal/Heater.h
5003;0x138b;HEATER_STAYED_ON;LOW;;fsfw/src/fsfw/thermal/Heater.h
5004;0x138c;HEATER_STAYED_OFF;LOW;;fsfw/src/fsfw/thermal/Heater.h
5200;0x1450;TEMP_SENSOR_HIGH;LOW;;fsfw/src/fsfw/thermal/AbstractTemperatureSensor.h
5201;0x1451;TEMP_SENSOR_LOW;LOW;;fsfw/src/fsfw/thermal/AbstractTemperatureSensor.h
5202;0x1452;TEMP_SENSOR_GRADIENT;LOW;;fsfw/src/fsfw/thermal/AbstractTemperatureSensor.h
5901;0x170d;COMPONENT_TEMP_LOW;LOW;;fsfw/src/fsfw/thermal/ThermalComponentIF.h
5902;0x170e;COMPONENT_TEMP_HIGH;LOW;;fsfw/src/fsfw/thermal/ThermalComponentIF.h
5903;0x170f;COMPONENT_TEMP_OOL_LOW;LOW;;fsfw/src/fsfw/thermal/ThermalComponentIF.h
5904;0x1710;COMPONENT_TEMP_OOL_HIGH;LOW;;fsfw/src/fsfw/thermal/ThermalComponentIF.h
5905;0x1711;TEMP_NOT_IN_OP_RANGE;LOW;;fsfw/src/fsfw/thermal/ThermalComponentIF.h
7101;0x1bbd;FDIR_CHANGED_STATE;INFO;;fsfw/src/fsfw/fdir/FailureIsolationBase.h
7102;0x1bbe;FDIR_STARTS_RECOVERY;MEDIUM;;fsfw/src/fsfw/fdir/FailureIsolationBase.h
7103;0x1bbf;FDIR_TURNS_OFF_DEVICE;MEDIUM;;fsfw/src/fsfw/fdir/FailureIsolationBase.h
7201;0x1c21;MONITOR_CHANGED_STATE;LOW;;fsfw/src/fsfw/monitoring/MonitoringIF.h
7202;0x1c22;VALUE_BELOW_LOW_LIMIT;LOW;;fsfw/src/fsfw/monitoring/MonitoringIF.h
7203;0x1c23;VALUE_ABOVE_HIGH_LIMIT;LOW;;fsfw/src/fsfw/monitoring/MonitoringIF.h
7204;0x1c24;VALUE_OUT_OF_RANGE;LOW;;fsfw/src/fsfw/monitoring/MonitoringIF.h
7400;0x1ce8;CHANGING_MODE;INFO;;fsfw/src/fsfw/modes/HasModesIF.h
7401;0x1ce9;MODE_INFO;INFO;;fsfw/src/fsfw/modes/HasModesIF.h
7402;0x1cea;FALLBACK_FAILED;HIGH;;fsfw/src/fsfw/modes/HasModesIF.h
7403;0x1ceb;MODE_TRANSITION_FAILED;LOW;;fsfw/src/fsfw/modes/HasModesIF.h
7404;0x1cec;CANT_KEEP_MODE;HIGH;;fsfw/src/fsfw/modes/HasModesIF.h
7405;0x1ced;OBJECT_IN_INVALID_MODE;LOW;;fsfw/src/fsfw/modes/HasModesIF.h
7406;0x1cee;FORCING_MODE;MEDIUM;;fsfw/src/fsfw/modes/HasModesIF.h
7407;0x1cef;MODE_CMD_REJECTED;LOW;;fsfw/src/fsfw/modes/HasModesIF.h
7506;0x1d52;HEALTH_INFO;INFO;;fsfw/src/fsfw/health/HasHealthIF.h
7507;0x1d53;CHILD_CHANGED_HEALTH;INFO;;fsfw/src/fsfw/health/HasHealthIF.h
7508;0x1d54;CHILD_PROBLEMS;LOW;;fsfw/src/fsfw/health/HasHealthIF.h
7509;0x1d55;OVERWRITING_HEALTH;LOW;;fsfw/src/fsfw/health/HasHealthIF.h
7510;0x1d56;TRYING_RECOVERY;MEDIUM;;fsfw/src/fsfw/health/HasHealthIF.h
7511;0x1d57;RECOVERY_STEP;MEDIUM;;fsfw/src/fsfw/health/HasHealthIF.h
7512;0x1d58;RECOVERY_DONE;MEDIUM;;fsfw/src/fsfw/health/HasHealthIF.h
7900;0x1edc;RF_AVAILABLE;INFO;A RF available signal was detected. P1: raw RFA state, P2: 0;fsfw/src/fsfw/datalinklayer/DataLinkLayer.h
7901;0x1edd;RF_LOST;INFO;A previously found RF available signal was lost. P1: raw RFA state, P2: 0;fsfw/src/fsfw/datalinklayer/DataLinkLayer.h
7902;0x1ede;BIT_LOCK;INFO;A Bit Lock signal. Was detected. P1: raw BLO state, P2: 0;fsfw/src/fsfw/datalinklayer/DataLinkLayer.h
7903;0x1edf;BIT_LOCK_LOST;INFO;A previously found Bit Lock signal was lost. P1: raw BLO state, P2: 0;fsfw/src/fsfw/datalinklayer/DataLinkLayer.h
7905;0x1ee1;FRAME_PROCESSING_FAILED;LOW;The CCSDS Board could not interpret a TC;fsfw/src/fsfw/datalinklayer/DataLinkLayer.h
8900;0x22c4;CLOCK_SET;INFO;;fsfw/src/fsfw/pus/Service9TimeManagement.h
8901;0x22c5;CLOCK_SET_FAILURE;LOW;;fsfw/src/fsfw/pus/Service9TimeManagement.h
9100;0x238c;TC_DELETION_FAILED;MEDIUM;Deletion of a TC from the map failed. P1: First 32 bit of request ID, P2. Last 32 bit of Request ID;fsfw/src/fsfw/pus/Service11TelecommandScheduling.h
9700;0x25e4;TEST;INFO;;fsfw/src/fsfw/pus/Service17Test.h
10600;0x2968;CHANGE_OF_SETUP_PARAMETER;LOW;;fsfw/src/fsfw_hal/devicehandlers/MgmLIS3MDLHandler.h
1 2200 0x0898 STORE_SEND_WRITE_FAILED LOW fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
2 2201 0x0899 STORE_WRITE_FAILED LOW fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
3 2202 0x089a STORE_SEND_READ_FAILED LOW fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
4 2203 0x089b STORE_READ_FAILED LOW fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
5 2204 0x089c UNEXPECTED_MSG LOW fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
6 2205 0x089d STORING_FAILED LOW fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
7 2206 0x089e TM_DUMP_FAILED LOW fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
8 2207 0x089f STORE_INIT_FAILED LOW fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
9 2208 0x08a0 STORE_INIT_EMPTY INFO fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
10 2209 0x08a1 STORE_CONTENT_CORRUPTED LOW fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
11 2210 0x08a2 STORE_INITIALIZE INFO fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
12 2211 0x08a3 INIT_DONE INFO fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
13 2212 0x08a4 DUMP_FINISHED INFO fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
14 2213 0x08a5 DELETION_FINISHED INFO fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
15 2214 0x08a6 DELETION_FAILED LOW fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
16 2215 0x08a7 AUTO_CATALOGS_SENDING_FAILED INFO fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h
17 2600 0x0a28 GET_DATA_FAILED LOW fsfw/src/fsfw/storagemanager/StorageManagerIF.h
18 2601 0x0a29 STORE_DATA_FAILED LOW fsfw/src/fsfw/storagemanager/StorageManagerIF.h
19 2800 0x0af0 DEVICE_BUILDING_COMMAND_FAILED LOW fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
20 2801 0x0af1 DEVICE_SENDING_COMMAND_FAILED LOW fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
21 2802 0x0af2 DEVICE_REQUESTING_REPLY_FAILED LOW fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
22 2803 0x0af3 DEVICE_READING_REPLY_FAILED LOW fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
23 2804 0x0af4 DEVICE_INTERPRETING_REPLY_FAILED LOW fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
24 2805 0x0af5 DEVICE_MISSED_REPLY LOW fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
25 2806 0x0af6 DEVICE_UNKNOWN_REPLY LOW fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
26 2807 0x0af7 DEVICE_UNREQUESTED_REPLY LOW fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
27 2808 0x0af8 INVALID_DEVICE_COMMAND LOW Indicates a SW bug in child class. fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
28 2809 0x0af9 MONITORING_LIMIT_EXCEEDED LOW fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
29 2810 0x0afa MONITORING_AMBIGUOUS HIGH fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
30 4201 0x1069 FUSE_CURRENT_HIGH LOW fsfw/src/fsfw/power/Fuse.h
31 4202 0x106a FUSE_WENT_OFF LOW fsfw/src/fsfw/power/Fuse.h
32 4204 0x106c POWER_ABOVE_HIGH_LIMIT LOW fsfw/src/fsfw/power/Fuse.h
33 4205 0x106d POWER_BELOW_LOW_LIMIT LOW fsfw/src/fsfw/power/Fuse.h
34 4300 0x10cc SWITCH_WENT_OFF LOW fsfw/src/fsfw/power/PowerSwitchIF.h
35 5000 0x1388 HEATER_ON INFO fsfw/src/fsfw/thermal/Heater.h
36 5001 0x1389 HEATER_OFF INFO fsfw/src/fsfw/thermal/Heater.h
37 5002 0x138a HEATER_TIMEOUT LOW fsfw/src/fsfw/thermal/Heater.h
38 5003 0x138b HEATER_STAYED_ON LOW fsfw/src/fsfw/thermal/Heater.h
39 5004 0x138c HEATER_STAYED_OFF LOW fsfw/src/fsfw/thermal/Heater.h
40 5200 0x1450 TEMP_SENSOR_HIGH LOW fsfw/src/fsfw/thermal/AbstractTemperatureSensor.h
41 5201 0x1451 TEMP_SENSOR_LOW LOW fsfw/src/fsfw/thermal/AbstractTemperatureSensor.h
42 5202 0x1452 TEMP_SENSOR_GRADIENT LOW fsfw/src/fsfw/thermal/AbstractTemperatureSensor.h
43 5901 0x170d COMPONENT_TEMP_LOW LOW fsfw/src/fsfw/thermal/ThermalComponentIF.h
44 5902 0x170e COMPONENT_TEMP_HIGH LOW fsfw/src/fsfw/thermal/ThermalComponentIF.h
45 5903 0x170f COMPONENT_TEMP_OOL_LOW LOW fsfw/src/fsfw/thermal/ThermalComponentIF.h
46 5904 0x1710 COMPONENT_TEMP_OOL_HIGH LOW fsfw/src/fsfw/thermal/ThermalComponentIF.h
47 5905 0x1711 TEMP_NOT_IN_OP_RANGE LOW fsfw/src/fsfw/thermal/ThermalComponentIF.h
48 7101 0x1bbd FDIR_CHANGED_STATE INFO fsfw/src/fsfw/fdir/FailureIsolationBase.h
49 7102 0x1bbe FDIR_STARTS_RECOVERY MEDIUM fsfw/src/fsfw/fdir/FailureIsolationBase.h
50 7103 0x1bbf FDIR_TURNS_OFF_DEVICE MEDIUM fsfw/src/fsfw/fdir/FailureIsolationBase.h
51 7201 0x1c21 MONITOR_CHANGED_STATE LOW fsfw/src/fsfw/monitoring/MonitoringIF.h
52 7202 0x1c22 VALUE_BELOW_LOW_LIMIT LOW fsfw/src/fsfw/monitoring/MonitoringIF.h
53 7203 0x1c23 VALUE_ABOVE_HIGH_LIMIT LOW fsfw/src/fsfw/monitoring/MonitoringIF.h
54 7204 0x1c24 VALUE_OUT_OF_RANGE LOW fsfw/src/fsfw/monitoring/MonitoringIF.h
55 7400 0x1ce8 CHANGING_MODE INFO fsfw/src/fsfw/modes/HasModesIF.h
56 7401 0x1ce9 MODE_INFO INFO fsfw/src/fsfw/modes/HasModesIF.h
57 7402 0x1cea FALLBACK_FAILED HIGH fsfw/src/fsfw/modes/HasModesIF.h
58 7403 0x1ceb MODE_TRANSITION_FAILED LOW fsfw/src/fsfw/modes/HasModesIF.h
59 7404 0x1cec CANT_KEEP_MODE HIGH fsfw/src/fsfw/modes/HasModesIF.h
60 7405 0x1ced OBJECT_IN_INVALID_MODE LOW fsfw/src/fsfw/modes/HasModesIF.h
61 7406 0x1cee FORCING_MODE MEDIUM fsfw/src/fsfw/modes/HasModesIF.h
62 7407 0x1cef MODE_CMD_REJECTED LOW fsfw/src/fsfw/modes/HasModesIF.h
63 7506 0x1d52 HEALTH_INFO INFO fsfw/src/fsfw/health/HasHealthIF.h
64 7507 0x1d53 CHILD_CHANGED_HEALTH INFO fsfw/src/fsfw/health/HasHealthIF.h
65 7508 0x1d54 CHILD_PROBLEMS LOW fsfw/src/fsfw/health/HasHealthIF.h
66 7509 0x1d55 OVERWRITING_HEALTH LOW fsfw/src/fsfw/health/HasHealthIF.h
67 7510 0x1d56 TRYING_RECOVERY MEDIUM fsfw/src/fsfw/health/HasHealthIF.h
68 7511 0x1d57 RECOVERY_STEP MEDIUM fsfw/src/fsfw/health/HasHealthIF.h
69 7512 0x1d58 RECOVERY_DONE MEDIUM fsfw/src/fsfw/health/HasHealthIF.h
70 7900 0x1edc RF_AVAILABLE INFO A RF available signal was detected. P1: raw RFA state, P2: 0 fsfw/src/fsfw/datalinklayer/DataLinkLayer.h
71 7901 0x1edd RF_LOST INFO A previously found RF available signal was lost. P1: raw RFA state, P2: 0 fsfw/src/fsfw/datalinklayer/DataLinkLayer.h
72 7902 0x1ede BIT_LOCK INFO A Bit Lock signal. Was detected. P1: raw BLO state, P2: 0 fsfw/src/fsfw/datalinklayer/DataLinkLayer.h
73 7903 0x1edf BIT_LOCK_LOST INFO A previously found Bit Lock signal was lost. P1: raw BLO state, P2: 0 fsfw/src/fsfw/datalinklayer/DataLinkLayer.h
74 7905 0x1ee1 FRAME_PROCESSING_FAILED LOW The CCSDS Board could not interpret a TC fsfw/src/fsfw/datalinklayer/DataLinkLayer.h
75 8900 0x22c4 CLOCK_SET INFO fsfw/src/fsfw/pus/Service9TimeManagement.h
76 8901 0x22c5 CLOCK_SET_FAILURE LOW fsfw/src/fsfw/pus/Service9TimeManagement.h
77 9100 0x238c TC_DELETION_FAILED MEDIUM Deletion of a TC from the map failed. P1: First 32 bit of request ID, P2. Last 32 bit of Request ID fsfw/src/fsfw/pus/Service11TelecommandScheduling.h
78 9700 0x25e4 TEST INFO fsfw/src/fsfw/pus/Service17Test.h
79 10600 0x2968 CHANGE_OF_SETUP_PARAMETER LOW fsfw/src/fsfw_hal/devicehandlers/MgmLIS3MDLHandler.h

View File

@ -1,25 +0,0 @@
from typing import Optional
from common_tmtc.config.definitions import TM_SP_IDS
from common_tmtc.config.hook_implementation import CommonFsfwHookBase
from common_tmtc.pus_tc.cmd_definitions import common_fsfw_service_op_code_dict
from tmtccmd.com_if import ComInterface
from tmtccmd.config import TmtcDefinitionWrapper
class FsfwHookBase(CommonFsfwHookBase):
def get_tmtc_definitions(self) -> TmtcDefinitionWrapper:
return common_fsfw_service_op_code_dict()
def assign_communication_interface(self, com_if_key: str) -> Optional[ComInterface]:
from tmtccmd.config.com_if import (
create_com_interface_default,
create_com_interface_cfg_default,
)
cfg = create_com_interface_cfg_default(
com_if_key=com_if_key,
json_cfg_path=self.cfg_path,
space_packet_ids=TM_SP_IDS,
)
return create_com_interface_default(cfg)

View File

@ -1,40 +0,0 @@
0x4100CAFE;TEST_ASSEMBLY
0x4301CAFE;TEST_CONTROLLER
0x4401AFFE;TEST_DEVICE_HANDLER_0
0x4402AFFE;TEST_DEVICE_HANDLER_1
0x4900AFFE;TEST_ECHO_COM_IF
0x53000000;FSFW_OBJECTS_START
0x53000001;PUS_SERVICE_1_VERIFICATION
0x53000002;PUS_SERVICE_2_DEVICE_ACCESS
0x53000003;PUS_SERVICE_3_HOUSEKEEPING
0x53000005;PUS_SERVICE_5_EVENT_REPORTING
0x53000008;PUS_SERVICE_8_FUNCTION_MGMT
0x53000009;PUS_SERVICE_9_TIME_MGMT
0x53000011;PUS_SERVICE_11_TC_SCHEDULER
0x53000017;PUS_SERVICE_17_TEST
0x53000020;PUS_SERVICE_20_PARAMETERS
0x53000200;PUS_SERVICE_200_MODE_MGMT
0x53000201;PUS_SERVICE_201_HEALTH
0x53001000;CFDP_PACKET_DISTRIBUTOR
0x53010000;HEALTH_TABLE
0x53010100;MODE_STORE
0x53030000;EVENT_MANAGER
0x53040000;INTERNAL_ERROR_REPORTER
0x534f0100;TC_STORE
0x534f0200;TM_STORE
0x534f0300;IPC_STORE
0x53500010;TIME_STAMPER
0x53500020;TC_VERIFICATOR
0x53ffffff;FSFW_OBJECTS_END
0x62000300;TCPIP_TMTC_BRIDGE
0x62000400;TCPIP_TMTC_POLLING_TASK
0x63000000;CCSDS_DISTRIBUTOR
0x63000001;PUS_DISTRIBUTOR
0x63000002;TM_FUNNEL
0x74000001;TEST_DUMMY_1
0x74000002;TEST_DUMMY_2
0x74000003;TEST_DUMMY_3
0x74000004;TEST_DUMMY_4
0x74000005;TEST_DUMMY_5
0x7400CAFE;TEST_TASK
0xFFFFFFFF;NO_OBJECT
1 0x4100CAFE TEST_ASSEMBLY
2 0x4301CAFE TEST_CONTROLLER
3 0x4401AFFE TEST_DEVICE_HANDLER_0
4 0x4402AFFE TEST_DEVICE_HANDLER_1
5 0x4900AFFE TEST_ECHO_COM_IF
6 0x53000000 FSFW_OBJECTS_START
7 0x53000001 PUS_SERVICE_1_VERIFICATION
8 0x53000002 PUS_SERVICE_2_DEVICE_ACCESS
9 0x53000003 PUS_SERVICE_3_HOUSEKEEPING
10 0x53000005 PUS_SERVICE_5_EVENT_REPORTING
11 0x53000008 PUS_SERVICE_8_FUNCTION_MGMT
12 0x53000009 PUS_SERVICE_9_TIME_MGMT
13 0x53000011 PUS_SERVICE_11_TC_SCHEDULER
14 0x53000017 PUS_SERVICE_17_TEST
15 0x53000020 PUS_SERVICE_20_PARAMETERS
16 0x53000200 PUS_SERVICE_200_MODE_MGMT
17 0x53000201 PUS_SERVICE_201_HEALTH
18 0x53001000 CFDP_PACKET_DISTRIBUTOR
19 0x53010000 HEALTH_TABLE
20 0x53010100 MODE_STORE
21 0x53030000 EVENT_MANAGER
22 0x53040000 INTERNAL_ERROR_REPORTER
23 0x534f0100 TC_STORE
24 0x534f0200 TM_STORE
25 0x534f0300 IPC_STORE
26 0x53500010 TIME_STAMPER
27 0x53500020 TC_VERIFICATOR
28 0x53ffffff FSFW_OBJECTS_END
29 0x62000300 TCPIP_TMTC_BRIDGE
30 0x62000400 TCPIP_TMTC_POLLING_TASK
31 0x63000000 CCSDS_DISTRIBUTOR
32 0x63000001 PUS_DISTRIBUTOR
33 0x63000002 TM_FUNNEL
34 0x74000001 TEST_DUMMY_1
35 0x74000002 TEST_DUMMY_2
36 0x74000003 TEST_DUMMY_3
37 0x74000004 TEST_DUMMY_4
38 0x74000005 TEST_DUMMY_5
39 0x7400CAFE TEST_TASK
40 0xFFFFFFFF NO_OBJECT

View File

@ -1,401 +0,0 @@
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
0x4400; HSPI_HalTimeoutRetval;;0;fsfw/hal/src/fsfw_hal/stm32h7/spi/spiDefinitions.h;HAL_SPI
0x4401; HSPI_HalBusyRetval;;1;fsfw/hal/src/fsfw_hal/stm32h7/spi/spiDefinitions.h;HAL_SPI
0x4402; HSPI_HalErrorRetval;;2;fsfw/hal/src/fsfw_hal/stm32h7/spi/spiDefinitions.h;HAL_SPI
0x4501; HURT_UartReadFailure;;1;fsfw/hal/src/fsfw_hal/linux/uart/UartComIF.h;HAL_UART
0x4502; HURT_UartReadSizeMissmatch;;2;fsfw/hal/src/fsfw_hal/linux/uart/UartComIF.h;HAL_UART
0x4503; HURT_UartRxBufferTooSmall;;3;fsfw/hal/src/fsfw_hal/linux/uart/UartComIF.h;HAL_UART
0x4701; HGIO_UnknownGpioId;;1;fsfw/hal/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h;HAL_GPIO
0x4702; HGIO_DriveGpioFailure;;2;fsfw/hal/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h;HAL_GPIO
0x4703; HGIO_GpioTypeFailure;;3;fsfw/hal/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h;HAL_GPIO
0x4704; HGIO_GpioInvalidInstance;;4;fsfw/hal/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h;HAL_GPIO
0x4705; HGIO_GpioDuplicateDetected;;5;fsfw/hal/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h;HAL_GPIO
0x4706; HGIO_GpioInitFailed;;6;fsfw/hal/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h;HAL_GPIO
0x4300; UXOS_ExecutionFinished;Execution of the current command has finished;0;fsfw/hal/src/fsfw_hal/linux/CommandExecutor.h;LINUX_OSAL
0x4301; UXOS_CommandPending;Command is pending. This will also be returned if the user tries to load another command but a command is still pending;1;fsfw/hal/src/fsfw_hal/linux/CommandExecutor.h;LINUX_OSAL
0x4302; UXOS_BytesRead;Some bytes have been read from the executing process;2;fsfw/hal/src/fsfw_hal/linux/CommandExecutor.h;LINUX_OSAL
0x4303; UXOS_CommandError;Command execution failed;3;fsfw/hal/src/fsfw_hal/linux/CommandExecutor.h;LINUX_OSAL
0x4304; UXOS_NoCommandLoadedOrPending;;4;fsfw/hal/src/fsfw_hal/linux/CommandExecutor.h;LINUX_OSAL
0x4306; UXOS_PcloseCallError;;6;fsfw/hal/src/fsfw_hal/linux/CommandExecutor.h;LINUX_OSAL
0x2b01; CCS_BcIsSetVrCommand;;0x01;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2b02; CCS_BcIsUnlockCommand;;0x02;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bb0; CCS_BcIllegalCommand;;0xB0;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bb1; CCS_BoardReadingNotFinished;;0xB1;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bf0; CCS_NsPositiveW;;0xF0;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bf1; CCS_NsNegativeW;;0xF1;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bf2; CCS_NsLockout;;0xF2;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bf3; CCS_FarmInLockout;;0xF3;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bf4; CCS_FarmInWait;;0xF4;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2be0; CCS_WrongSymbol;;0xE0;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2be1; CCS_DoubleStart;;0xE1;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2be2; CCS_StartSymbolMissed;;0xE2;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2be3; CCS_EndWithoutStart;;0xE3;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2be4; CCS_TooLarge;;0xE4;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2be5; CCS_TooShort;;0xE5;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2be6; CCS_WrongTfVersion;;0xE6;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2be7; CCS_WrongSpacecraftId;;0xE7;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2be8; CCS_NoValidFrameType;;0xE8;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2be9; CCS_CrcFailed;;0xE9;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bea; CCS_VcNotFound;;0xEA;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2beb; CCS_ForwardingFailed;;0xEB;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bec; CCS_ContentTooLarge;;0xEC;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bed; CCS_ResidualData;;0xED;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bee; CCS_DataCorrupted;;0xEE;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bef; CCS_IllegalSegmentationFlag;;0xEF;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bd0; CCS_IllegalFlagCombination;;0xD0;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bd1; CCS_ShorterThanHeader;;0xD1;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bd2; CCS_TooShortBlockedPacket;;0xD2;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x2bd3; CCS_TooShortMapExtraction;;0xD3;fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h;CCSDS_HANDLER_IF
0x3a00; SPH_ConnBroken;;0;fsfw/src/fsfw/osal/common/TcpTmTcServer.h;SEMAPHORE_IF
0x2901; IEC_NoConfigurationTable;;0x01;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2902; IEC_NoCpuTable;;0x02;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2903; IEC_InvalidWorkspaceAddress;;0x03;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2904; IEC_TooLittleWorkspace;;0x04;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2905; IEC_WorkspaceAllocation;;0x05;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2906; IEC_InterruptStackTooSmall;;0x06;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2907; IEC_ThreadExitted;;0x07;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2908; IEC_InconsistentMpInformation;;0x08;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2909; IEC_InvalidNode;;0x09;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x290a; IEC_NoMpci;;0x0a;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x290b; IEC_BadPacket;;0x0b;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x290c; IEC_OutOfPackets;;0x0c;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x290d; IEC_OutOfGlobalObjects;;0x0d;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x290e; IEC_OutOfProxies;;0x0e;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x290f; IEC_InvalidGlobalId;;0x0f;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2910; IEC_BadStackHook;;0x10;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2911; IEC_BadAttributes;;0x11;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2912; IEC_ImplementationKeyCreateInconsistency;;0x12;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2913; IEC_ImplementationBlockingOperationCancel;;0x13;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2914; IEC_MutexObtainFromBadState;;0x14;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0x2915; IEC_UnlimitedAndMaximumIs0;;0x15;fsfw/src/fsfw/osal/InternalErrorCodes.h;INTERNAL_ERROR_CODES
0xe01; HM_InvalidMode;;0x01;fsfw/src/fsfw/modes/HasModesIF.h;HAS_MODES_IF
0xe02; HM_TransNotAllowed;;0x02;fsfw/src/fsfw/modes/HasModesIF.h;HAS_MODES_IF
0xe03; HM_InTransition;;0x03;fsfw/src/fsfw/modes/HasModesIF.h;HAS_MODES_IF
0xe04; HM_InvalidSubmode;;0x04;fsfw/src/fsfw/modes/HasModesIF.h;HAS_MODES_IF
0x2d01; HPA_InvalidIdentifierId;;0x01;fsfw/src/fsfw/parameters/HasParametersIF.h;HAS_PARAMETERS_IF
0x2d02; HPA_InvalidDomainId;;0x02;fsfw/src/fsfw/parameters/HasParametersIF.h;HAS_PARAMETERS_IF
0x2d03; HPA_InvalidValue;;0x03;fsfw/src/fsfw/parameters/HasParametersIF.h;HAS_PARAMETERS_IF
0x2d05; HPA_ReadOnly;;0x05;fsfw/src/fsfw/parameters/HasParametersIF.h;HAS_PARAMETERS_IF
0x2c01; PAW_UnknownDatatype;;0x01;fsfw/src/fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER
0x2c02; PAW_DatatypeMissmatch;;0x02;fsfw/src/fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER
0x2c03; PAW_Readonly;;0x03;fsfw/src/fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER
0x2c04; PAW_TooBig;;0x04;fsfw/src/fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER
0x2c05; PAW_SourceNotSet;;0x05;fsfw/src/fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER
0x2c06; PAW_OutOfBounds;;0x06;fsfw/src/fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER
0x2c07; PAW_NotSet;;0x07;fsfw/src/fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER
0x2c08; PAW_ColumnOrRowsZero;;0x08;fsfw/src/fsfw/parameters/ParameterWrapper.h;PARAMETER_WRAPPER
0x3101; CF_ObjectHasNoFunctions;;1;fsfw/src/fsfw/action/CommandsActionsIF.h;COMMANDS_ACTIONS_IF
0x3102; CF_AlreadyCommanding;;2;fsfw/src/fsfw/action/CommandsActionsIF.h;COMMANDS_ACTIONS_IF
0x3201; HF_IsBusy;;1;fsfw/src/fsfw/action/HasActionsIF.h;HAS_ACTIONS_IF
0x3202; HF_InvalidParameters;;2;fsfw/src/fsfw/action/HasActionsIF.h;HAS_ACTIONS_IF
0x3203; HF_ExecutionFinished;;3;fsfw/src/fsfw/action/HasActionsIF.h;HAS_ACTIONS_IF
0x3204; HF_InvalidActionId;;4;fsfw/src/fsfw/action/HasActionsIF.h;HAS_ACTIONS_IF
0x201; OM_InsertionFailed;;1;fsfw/src/fsfw/objectmanager/ObjectManagerIF.h;OBJECT_MANAGER_IF
0x202; OM_NotFound;;2;fsfw/src/fsfw/objectmanager/ObjectManagerIF.h;OBJECT_MANAGER_IF
0x203; OM_ChildInitFailed;;3;fsfw/src/fsfw/objectmanager/ObjectManagerIF.h;OBJECT_MANAGER_IF
0x204; OM_InternalErrReporterUninit;;4;fsfw/src/fsfw/objectmanager/ObjectManagerIF.h;OBJECT_MANAGER_IF
0x2500; FDI_YourFault;;0;fsfw/src/fsfw/fdir/ConfirmsFailuresIF.h;HANDLES_FAILURES_IF
0x2501; FDI_MyFault;;1;fsfw/src/fsfw/fdir/ConfirmsFailuresIF.h;HANDLES_FAILURES_IF
0x2502; FDI_ConfirmLater;;2;fsfw/src/fsfw/fdir/ConfirmsFailuresIF.h;HANDLES_FAILURES_IF
0x2101; TMF_Busy;;1;fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x2102; TMF_LastPacketFound;;2;fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x2103; TMF_StopFetch;;3;fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x2104; TMF_Timeout;;4;fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x2105; TMF_TmChannelFull;;5;fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x2106; TMF_NotStored;;6;fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x2107; TMF_AllDeleted;;7;fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x2108; TMF_InvalidData;;8;fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x2109; TMF_NotReady;;9;fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h;TM_STORE_FRONTEND_IF
0x2001; TMB_Busy;;1;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x2002; TMB_Full;;2;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x2003; TMB_Empty;;3;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x2004; TMB_NullRequested;;4;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x2005; TMB_TooLarge;;5;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x2006; TMB_NotReady;;6;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x2007; TMB_DumpError;;7;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x2008; TMB_CrcError;;8;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x2009; TMB_Timeout;;9;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x200a; TMB_IdlePacketFound;;10;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x200b; TMB_TelecommandFound;;11;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x200c; TMB_NoPusATm;;12;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x200d; TMB_TooSmall;;13;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x200e; TMB_BlockNotFound;;14;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x200f; TMB_InvalidRequest;;15;fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h;TM_STORE_BACKEND_IF
0x1c01; TCD_PacketLost;;1;fsfw/src/fsfw/tcdistribution/TcDistributor.h;PACKET_DISTRIBUTION
0x1c02; TCD_DestinationNotFound;;2;fsfw/src/fsfw/tcdistribution/TcDistributor.h;PACKET_DISTRIBUTION
0x1c03; TCD_ServiceIdAlreadyExists;;3;fsfw/src/fsfw/tcdistribution/TcDistributor.h;PACKET_DISTRIBUTION
0x1b00; TCC_IllegalApid;;0;fsfw/src/fsfw/tcdistribution/TcPacketCheckPUS.h;TC_PACKET_CHECK
0x1b01; TCC_IncompletePacket;;1;fsfw/src/fsfw/tcdistribution/TcPacketCheckPUS.h;TC_PACKET_CHECK
0x1b02; TCC_IncorrectChecksum;;2;fsfw/src/fsfw/tcdistribution/TcPacketCheckPUS.h;TC_PACKET_CHECK
0x1b03; TCC_IllegalPacketType;;3;fsfw/src/fsfw/tcdistribution/TcPacketCheckPUS.h;TC_PACKET_CHECK
0x1b04; TCC_IllegalPacketSubtype;;4;fsfw/src/fsfw/tcdistribution/TcPacketCheckPUS.h;TC_PACKET_CHECK
0x1b05; TCC_IncorrectPrimaryHeader;;5;fsfw/src/fsfw/tcdistribution/TcPacketCheckPUS.h;TC_PACKET_CHECK
0x1b06; TCC_IncorrectSecondaryHeader;;6;fsfw/src/fsfw/tcdistribution/TcPacketCheckPUS.h;TC_PACKET_CHECK
0x4e1; RMP_CommandNoDescriptorsAvailable;;0xE1;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4e2; RMP_CommandBufferFull;;0xE2;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4e3; RMP_CommandChannelOutOfRange;;0xE3;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4e6; RMP_CommandChannelDeactivated;;0xE6;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4e7; RMP_CommandPortOutOfRange;;0xE7;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4e8; RMP_CommandPortInUse;;0xE8;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4e9; RMP_CommandNoChannel;;0xE9;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4ea; RMP_NoHwCrc;;0xEA;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4d0; RMP_ReplyNoReply;;0xD0;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4d1; RMP_ReplyNotSent;;0xD1;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4d2; RMP_ReplyNotYetSent;;0xD2;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4d3; RMP_ReplyMissmatch;;0xD3;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4d4; RMP_ReplyTimeout;;0xD4;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4c0; RMP_ReplyInterfaceBusy;;0xC0;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4c1; RMP_ReplyTransmissionError;;0xC1;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4c2; RMP_ReplyInvalidData;;0xC2;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4c3; RMP_ReplyNotSupported;;0xC3;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4f0; RMP_LinkDown;;0xF0;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4f1; RMP_SpwCredit;;0xF1;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4f2; RMP_SpwEscape;;0xF2;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4f3; RMP_SpwDisconnect;;0xF3;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4f4; RMP_SpwParity;;0xF4;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4f5; RMP_SpwWriteSync;;0xF5;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4f6; RMP_SpwInvalidAddress;;0xF6;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4f7; RMP_SpwEarlyEop;;0xF7;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4f8; RMP_SpwDma;;0xF8;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x4f9; RMP_SpwLinkError;;0xF9;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x400; RMP_ReplyOk;;0;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x401; RMP_ReplyGeneralErrorCode;;1;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x402; RMP_ReplyUnusedPacketTypeOrCommandCode;;2;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x403; RMP_ReplyInvalidKey;;3;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x404; RMP_ReplyInvalidDataCrc;;4;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x405; RMP_ReplyEarlyEop;;5;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x406; RMP_ReplyTooMuchData;;6;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x407; RMP_ReplyEep;;7;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x408; RMP_ReplyReserved;;8;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x409; RMP_ReplyVerifyBufferOverrun;;9;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x40a; RMP_ReplyCommandNotImplementedOrNotAuthorised;;10;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x40b; RMP_ReplyRmwDataLengthError;;11;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x40c; RMP_ReplyInvalidTargetLogicalAddress;;12;fsfw/src/fsfw/rmap/RMAP.h;RMAP_CHANNEL
0x2701; SM_DataTooLarge;;1;fsfw/src/fsfw/storagemanager/StorageManagerIF.h;STORAGE_MANAGER_IF
0x2702; SM_DataStorageFull;;2;fsfw/src/fsfw/storagemanager/StorageManagerIF.h;STORAGE_MANAGER_IF
0x2703; SM_IllegalStorageId;;3;fsfw/src/fsfw/storagemanager/StorageManagerIF.h;STORAGE_MANAGER_IF
0x2704; SM_DataDoesNotExist;;4;fsfw/src/fsfw/storagemanager/StorageManagerIF.h;STORAGE_MANAGER_IF
0x2705; SM_IllegalAddress;;5;fsfw/src/fsfw/storagemanager/StorageManagerIF.h;STORAGE_MANAGER_IF
0x2706; SM_PoolTooLarge;;6;fsfw/src/fsfw/storagemanager/StorageManagerIF.h;STORAGE_MANAGER_IF
0x37a1; SGP4_InvalidEccentricity;;0xA1;fsfw/src/fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS
0x37a2; SGP4_InvalidMeanMotion;;0xA2;fsfw/src/fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS
0x37a3; SGP4_InvalidPerturbationElements;;0xA3;fsfw/src/fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS
0x37a4; SGP4_InvalidSemiLatusRectum;;0xA4;fsfw/src/fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS
0x37a5; SGP4_InvalidEpochElements;;0xA5;fsfw/src/fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS
0x37a6; SGP4_SatelliteHasDecayed;;0xA6;fsfw/src/fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS
0x37b1; SGP4_TleTooOld;;0xB1;fsfw/src/fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS
0x37b2; SGP4_TleNotInitialized;;0xB2;fsfw/src/fsfw/coordinates/Sgp4Propagator.h;SGP4PROPAGATOR_CLASS
0x2301; MT_TooDetailedRequest;;1;fsfw/src/fsfw/globalfunctions/matching/MatchTree.h;MATCH_TREE_CLASS
0x2302; MT_TooGeneralRequest;;2;fsfw/src/fsfw/globalfunctions/matching/MatchTree.h;MATCH_TREE_CLASS
0x2303; MT_NoMatch;;3;fsfw/src/fsfw/globalfunctions/matching/MatchTree.h;MATCH_TREE_CLASS
0x2304; MT_Full;;4;fsfw/src/fsfw/globalfunctions/matching/MatchTree.h;MATCH_TREE_CLASS
0x2305; MT_NewNodeCreated;;5;fsfw/src/fsfw/globalfunctions/matching/MatchTree.h;MATCH_TREE_CLASS
0x3e01; DLEE_StreamTooShort;;0x01;fsfw/src/fsfw/globalfunctions/DleEncoder.h;DLE_ENCODER
0x3e02; DLEE_DecodingError;;0x02;fsfw/src/fsfw/globalfunctions/DleEncoder.h;DLE_ENCODER
0x2e01; ASC_TooLongForTargetType;;1;fsfw/src/fsfw/globalfunctions/AsciiConverter.h;ASCII_CONVERTER
0x2e02; ASC_InvalidCharacters;;2;fsfw/src/fsfw/globalfunctions/AsciiConverter.h;ASCII_CONVERTER
0x2e03; ASC_BufferTooSmall;;0x3;fsfw/src/fsfw/globalfunctions/AsciiConverter.h;ASCII_CONVERTER
0xf01; CM_UnknownCommand;;1;fsfw/src/fsfw/ipc/CommandMessageIF.h;COMMAND_MESSAGE
0x3901; MQI_Empty;;1;fsfw/src/fsfw/ipc/MessageQueueIF.h;MESSAGE_QUEUE_IF
0x3902; MQI_Full;No space left for more messages;2;fsfw/src/fsfw/ipc/MessageQueueIF.h;MESSAGE_QUEUE_IF
0x3903; MQI_NoReplyPartner;Returned if a reply method was called without partner;3;fsfw/src/fsfw/ipc/MessageQueueIF.h;MESSAGE_QUEUE_IF
0x3904; MQI_DestinationInvalid;Returned if the target destination is invalid.;4;fsfw/src/fsfw/ipc/MessageQueueIF.h;MESSAGE_QUEUE_IF
0x3801; MUX_NotEnoughResources;;1;fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x3802; MUX_InsufficientMemory;;2;fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x3803; MUX_NoPrivilege;;3;fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x3804; MUX_WrongAttributeSetting;;4;fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x3805; MUX_MutexAlreadyLocked;;5;fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x3806; MUX_MutexNotFound;;6;fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x3807; MUX_MutexMaxLocks;;7;fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x3808; MUX_CurrThreadAlreadyOwnsMutex;;8;fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x3809; MUX_CurrThreadDoesNotOwnMutex;;9;fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x380a; MUX_MutexTimeout;;10;fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x380b; MUX_MutexInvalidId;;11;fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x380c; MUX_MutexDestroyedWhileWaiting;;12;fsfw/src/fsfw/ipc/MutexIF.h;MUTEX_IF
0x3a01; SPH_SemaphoreTimeout;;1;fsfw/src/fsfw/tasks/SemaphoreIF.h;SEMAPHORE_IF
0x3a02; SPH_SemaphoreNotOwned;;2;fsfw/src/fsfw/tasks/SemaphoreIF.h;SEMAPHORE_IF
0x3a03; SPH_SemaphoreInvalid;;3;fsfw/src/fsfw/tasks/SemaphoreIF.h;SEMAPHORE_IF
0x3501; CFDP_InvalidTlvType;;1;fsfw/src/fsfw/cfdp/definitions.h;CFDP
0x3502; CFDP_InvalidDirectiveFields;;2;fsfw/src/fsfw/cfdp/definitions.h;CFDP
0x3503; CFDP_InvalidPduDatafieldLen;;3;fsfw/src/fsfw/cfdp/definitions.h;CFDP
0x3504; CFDP_InvalidAckDirectiveFields;;4;fsfw/src/fsfw/cfdp/definitions.h;CFDP
0x3505; CFDP_MetadataCantParseOptions;;5;fsfw/src/fsfw/cfdp/definitions.h;CFDP
0x3506; CFDP_FinishedCantParseFsResponses;;6;fsfw/src/fsfw/cfdp/definitions.h;CFDP
0x3508; CFDP_FilestoreRequiresSecondFile;;8;fsfw/src/fsfw/cfdp/definitions.h;CFDP
0x3509; CFDP_FilestoreResponseCantParseFsMessage;;9;fsfw/src/fsfw/cfdp/definitions.h;CFDP
0x2801; TC_InvalidTargetState;;1;fsfw/src/fsfw/thermal/ThermalComponentIF.h;THERMAL_COMPONENT_IF
0x28f1; TC_AboveOperationalLimit;;0xF1;fsfw/src/fsfw/thermal/ThermalComponentIF.h;THERMAL_COMPONENT_IF
0x28f2; TC_BelowOperationalLimit;;0xF2;fsfw/src/fsfw/thermal/ThermalComponentIF.h;THERMAL_COMPONENT_IF
0xc02; MS_InvalidEntry;;0x02;fsfw/src/fsfw/subsystem/modes/ModeStoreIF.h;MODE_STORE_IF
0xc03; MS_TooManyElements;;0x03;fsfw/src/fsfw/subsystem/modes/ModeStoreIF.h;MODE_STORE_IF
0xc04; MS_CantStoreEmpty;;0x04;fsfw/src/fsfw/subsystem/modes/ModeStoreIF.h;MODE_STORE_IF
0xd01; SS_SequenceAlreadyExists;;0x01;fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xd02; SS_TableAlreadyExists;;0x02;fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xd03; SS_TableDoesNotExist;;0x03;fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xd04; SS_TableOrSequenceLengthInvalid;;0x04;fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xd05; SS_SequenceDoesNotExist;;0x05;fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xd06; SS_TableContainsInvalidObjectId;;0x06;fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xd07; SS_FallbackSequenceDoesNotExist;;0x07;fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xd08; SS_NoTargetTable;;0x08;fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xd09; SS_SequenceOrTableTooLong;;0x09;fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xd0b; SS_IsFallbackSequence;;0x0B;fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xd0c; SS_AccessDenied;;0x0C;fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xd0e; SS_TableInUse;;0x0E;fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xda1; SS_TargetTableNotReached;;0xA1;fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xda2; SS_TableCheckFailed;;0xA2;fsfw/src/fsfw/subsystem/Subsystem.h;SUBSYSTEM
0xb01; SB_ChildNotFound;;0x01;fsfw/src/fsfw/subsystem/SubsystemBase.h;SUBSYSTEM_BASE
0xb02; SB_ChildInfoUpdated;;0x02;fsfw/src/fsfw/subsystem/SubsystemBase.h;SUBSYSTEM_BASE
0xb03; SB_ChildDoesntHaveModes;;0x03;fsfw/src/fsfw/subsystem/SubsystemBase.h;SUBSYSTEM_BASE
0xb04; SB_CouldNotInsertChild;;0x04;fsfw/src/fsfw/subsystem/SubsystemBase.h;SUBSYSTEM_BASE
0xb05; SB_TableContainsInvalidObjectId;;0x05;fsfw/src/fsfw/subsystem/SubsystemBase.h;SUBSYSTEM_BASE
0x3d00; HKM_QueueOrDestinationInvalid;;0;fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h;HOUSEKEEPING_MANAGER
0x3d01; HKM_WrongHkPacketType;;1;fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h;HOUSEKEEPING_MANAGER
0x3d02; HKM_ReportingStatusUnchanged;;2;fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h;HOUSEKEEPING_MANAGER
0x3d03; HKM_PeriodicHelperInvalid;;3;fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h;HOUSEKEEPING_MANAGER
0x3d04; HKM_PoolobjectNotFound;;4;fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h;HOUSEKEEPING_MANAGER
0x3d05; HKM_DatasetNotFound;;5;fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h;HOUSEKEEPING_MANAGER
0x3b00; LPIF_PoolEntryNotFound;;0x00;fsfw/src/fsfw/datapoollocal/localPoolDefinitions.h;LOCAL_POOL_OWNER_IF
0x3b01; LPIF_PoolEntryTypeConflict;;0x01;fsfw/src/fsfw/datapoollocal/localPoolDefinitions.h;LOCAL_POOL_OWNER_IF
0x3ca0; PVA_InvalidReadWriteMode;;0xA0;fsfw/src/fsfw/datapool/PoolVariableIF.h;POOL_VARIABLE_IF
0x3ca1; PVA_InvalidPoolEntry;;0xA1;fsfw/src/fsfw/datapool/PoolVariableIF.h;POOL_VARIABLE_IF
0x801; DPS_InvalidParameterDefinition;;1;fsfw/src/fsfw/datapool/DataSetIF.h;DATA_SET_CLASS
0x802; DPS_SetWasAlreadyRead;;2;fsfw/src/fsfw/datapool/DataSetIF.h;DATA_SET_CLASS
0x803; DPS_CommitingWithoutReading;;3;fsfw/src/fsfw/datapool/DataSetIF.h;DATA_SET_CLASS
0x804; DPS_DataSetUninitialised;;4;fsfw/src/fsfw/datapool/DataSetIF.h;DATA_SET_CLASS
0x805; DPS_DataSetFull;;5;fsfw/src/fsfw/datapool/DataSetIF.h;DATA_SET_CLASS
0x806; DPS_PoolVarNull;;6;fsfw/src/fsfw/datapool/DataSetIF.h;DATA_SET_CLASS
0x1000; TIM_UnsupportedTimeFormat;;0;fsfw/src/fsfw/timemanager/CCSDSTime.h;CCSDS_TIME_HELPER_CLASS
0x1001; TIM_NotEnoughInformationForTargetFormat;;1;fsfw/src/fsfw/timemanager/CCSDSTime.h;CCSDS_TIME_HELPER_CLASS
0x1002; TIM_LengthMismatch;;2;fsfw/src/fsfw/timemanager/CCSDSTime.h;CCSDS_TIME_HELPER_CLASS
0x1003; TIM_InvalidTimeFormat;;3;fsfw/src/fsfw/timemanager/CCSDSTime.h;CCSDS_TIME_HELPER_CLASS
0x1004; TIM_InvalidDayOfYear;;4;fsfw/src/fsfw/timemanager/CCSDSTime.h;CCSDS_TIME_HELPER_CLASS
0x1005; TIM_TimeDoesNotFitFormat;;5;fsfw/src/fsfw/timemanager/CCSDSTime.h;CCSDS_TIME_HELPER_CLASS
0x3601; TSI_BadTimestamp;;1;fsfw/src/fsfw/timemanager/TimeStamperIF.h;TIME_STAMPER_IF
0x1d01; PUS_ActivityStarted;;1;fsfw/src/fsfw/tmtcservices/AcceptsTelecommandsIF.h;ACCEPTS_TELECOMMANDS_IF
0x1d02; PUS_InvalidSubservice;;2;fsfw/src/fsfw/tmtcservices/AcceptsTelecommandsIF.h;ACCEPTS_TELECOMMANDS_IF
0x1d03; PUS_IllegalApplicationData;;3;fsfw/src/fsfw/tmtcservices/AcceptsTelecommandsIF.h;ACCEPTS_TELECOMMANDS_IF
0x1d04; PUS_SendTmFailed;;4;fsfw/src/fsfw/tmtcservices/AcceptsTelecommandsIF.h;ACCEPTS_TELECOMMANDS_IF
0x1d05; PUS_Timeout;;5;fsfw/src/fsfw/tmtcservices/AcceptsTelecommandsIF.h;ACCEPTS_TELECOMMANDS_IF
0x4b00; SPPA_NoPacketFound;;0x00;fsfw/src/fsfw/tmtcservices/SpacePacketParser.h;SPACE_PACKET_PARSER
0x4b01; SPPA_SplitPacket;;0x01;fsfw/src/fsfw/tmtcservices/SpacePacketParser.h;SPACE_PACKET_PARSER
0x1f01; CSB_ExecutionComplete;;1;fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE
0x1f02; CSB_NoStepMessage;;2;fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE
0x1f03; CSB_ObjectBusy;;3;fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE
0x1f04; CSB_Busy;;4;fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE
0x1f05; CSB_InvalidTc;;5;fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE
0x1f06; CSB_InvalidObject;;6;fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE
0x1f07; CSB_InvalidReply;;7;fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h;COMMAND_SERVICE_BASE
0x1101; AL_Full;;0x01;fsfw/src/fsfw/container/ArrayList.h;ARRAY_LIST
0x1801; FF_Full;;1;fsfw/src/fsfw/container/FIFOBase.h;FIFO_CLASS
0x1802; FF_Empty;;2;fsfw/src/fsfw/container/FIFOBase.h;FIFO_CLASS
0x1601; FMM_MapFull;;0x01;fsfw/src/fsfw/container/FixedOrderedMultimap.h;FIXED_MULTIMAP
0x1602; FMM_KeyDoesNotExist;;0x02;fsfw/src/fsfw/container/FixedOrderedMultimap.h;FIXED_MULTIMAP
0x1501; FM_KeyAlreadyExists;;0x01;fsfw/src/fsfw/container/FixedMap.h;FIXED_MAP
0x1502; FM_MapFull;;0x02;fsfw/src/fsfw/container/FixedMap.h;FIXED_MAP
0x1503; FM_KeyDoesNotExist;;0x03;fsfw/src/fsfw/container/FixedMap.h;FIXED_MAP
0x2401; EV_ListenerNotFound;;1;fsfw/src/fsfw/events/EventManagerIF.h;EVENT_MANAGER_IF
0x1701; HHI_ObjectNotHealthy;;1;fsfw/src/fsfw/health/HasHealthIF.h;HAS_HEALTH_IF
0x1702; HHI_InvalidHealthState;;2;fsfw/src/fsfw/health/HasHealthIF.h;HAS_HEALTH_IF
0x2f01; POS_InPowerTransition;;1;fsfw/src/fsfw/power/PowerSwitcher.h;POWER_SWITCHER
0x2f02; POS_SwitchStateMismatch;;2;fsfw/src/fsfw/power/PowerSwitcher.h;POWER_SWITCHER
0x501; PS_SwitchOn;;1;fsfw/src/fsfw/power/PowerSwitchIF.h;POWER_SWITCH_IF
0x500; PS_SwitchOff;;0;fsfw/src/fsfw/power/PowerSwitchIF.h;POWER_SWITCH_IF
0x502; PS_SwitchTimeout;;2;fsfw/src/fsfw/power/PowerSwitchIF.h;POWER_SWITCH_IF
0x503; PS_FuseOn;;3;fsfw/src/fsfw/power/PowerSwitchIF.h;POWER_SWITCH_IF
0x504; PS_FuseOff;;4;fsfw/src/fsfw/power/PowerSwitchIF.h;POWER_SWITCH_IF
0x1a01; TRC_NotEnoughSensors;;1;fsfw/src/fsfw/monitoring/TriplexMonitor.h;TRIPLE_REDUNDACY_CHECK
0x1a02; TRC_LowestValueOol;;2;fsfw/src/fsfw/monitoring/TriplexMonitor.h;TRIPLE_REDUNDACY_CHECK
0x1a03; TRC_HighestValueOol;;3;fsfw/src/fsfw/monitoring/TriplexMonitor.h;TRIPLE_REDUNDACY_CHECK
0x1a04; TRC_BothValuesOol;;4;fsfw/src/fsfw/monitoring/TriplexMonitor.h;TRIPLE_REDUNDACY_CHECK
0x1a05; TRC_DuplexOol;;5;fsfw/src/fsfw/monitoring/TriplexMonitor.h;TRIPLE_REDUNDACY_CHECK
0x3001; LIM_Unchecked;;1;fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x3002; LIM_Invalid;;2;fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x3003; LIM_Unselected;;3;fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x3004; LIM_BelowLowLimit;;4;fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x3005; LIM_AboveHighLimit;;5;fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x3006; LIM_UnexpectedValue;;6;fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x3007; LIM_OutOfRange;;7;fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x30a0; LIM_FirstSample;;0xA0;fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x30e0; LIM_InvalidSize;;0xE0;fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x30e1; LIM_WrongType;;0xE1;fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x30e2; LIM_WrongPid;;0xE2;fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x30e3; LIM_WrongLimitId;;0xE3;fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x30ee; LIM_MonitorNotFound;;0xEE;fsfw/src/fsfw/monitoring/MonitoringIF.h;LIMITS_IF
0x4101; PUS11_InvalidTypeTimeWindow;;1;fsfw/src/fsfw/pus/Service11TelecommandScheduling.h;PUS_SERVICE_11
0x4102; PUS11_TimeshiftingNotPossible;;2;fsfw/src/fsfw/pus/Service11TelecommandScheduling.h;PUS_SERVICE_11
0x4103; PUS11_InvalidRelativeTime;;3;fsfw/src/fsfw/pus/Service11TelecommandScheduling.h;PUS_SERVICE_11
0x4200; FILS_GenericFileError;;0;fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x4201; FILS_IsBusy;;1;fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x4202; FILS_InvalidParameters;;2;fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x4205; FILS_FileDoesNotExist;;5;fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x4206; FILS_FileAlreadyExists;;6;fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x4207; FILS_FileLocked;;7;fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x420a; FILS_DirectoryDoesNotExist;;10;fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x420b; FILS_DirectoryAlreadyExists;;11;fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x420c; FILS_DirectoryNotEmpty;;12;fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x420f; FILS_SequencePacketMissingWrite;;15;fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x4210; FILS_SequencePacketMissingRead;;16;fsfw/src/fsfw/memory/HasFileSystemIF.h;FILE_SYSTEM
0x601; PP_DoItMyself;;1;fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x602; PP_PointsToVariable;;2;fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x603; PP_PointsToMemory;;3;fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x604; PP_ActivityCompleted;;4;fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x605; PP_PointsToVectorUint8;;5;fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x606; PP_PointsToVectorUint16;;6;fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x607; PP_PointsToVectorUint32;;7;fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x608; PP_PointsToVectorFloat;;8;fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x6a0; PP_DumpNotSupported;;0xA0;fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x6e0; PP_InvalidSize;;0xE0;fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x6e1; PP_InvalidAddress;;0xE1;fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x6e2; PP_InvalidContent;;0xE2;fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x6e3; PP_UnalignedAccess;;0xE3;fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x6e4; PP_WriteProtected;;0xE4;fsfw/src/fsfw/memory/HasMemoryIF.h;HAS_MEMORY_IF
0x13e0; MH_UnknownCmd;;0xE0;fsfw/src/fsfw/memory/MemoryHelper.h;MEMORY_HELPER
0x13e1; MH_InvalidAddress;;0xE1;fsfw/src/fsfw/memory/MemoryHelper.h;MEMORY_HELPER
0x13e2; MH_InvalidSize;;0xE2;fsfw/src/fsfw/memory/MemoryHelper.h;MEMORY_HELPER
0x13e3; MH_StateMismatch;;0xE3;fsfw/src/fsfw/memory/MemoryHelper.h;MEMORY_HELPER
0x1201; AB_NeedSecondStep;;0x01;fsfw/src/fsfw/devicehandlers/AssemblyBase.h;ASSEMBLY_BASE
0x1202; AB_NeedToReconfigure;;0x02;fsfw/src/fsfw/devicehandlers/AssemblyBase.h;ASSEMBLY_BASE
0x1203; AB_ModeFallback;;0x03;fsfw/src/fsfw/devicehandlers/AssemblyBase.h;ASSEMBLY_BASE
0x1204; AB_ChildNotCommandable;;0x04;fsfw/src/fsfw/devicehandlers/AssemblyBase.h;ASSEMBLY_BASE
0x1205; AB_NeedToChangeHealth;;0x05;fsfw/src/fsfw/devicehandlers/AssemblyBase.h;ASSEMBLY_BASE
0x12a1; AB_NotEnoughChildrenInCorrectState;;0xa1;fsfw/src/fsfw/devicehandlers/AssemblyBase.h;ASSEMBLY_BASE
0x3a0; DHB_InvalidChannel;;0xA0;fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x3b0; DHB_AperiodicReply;;0xB0;fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x3b1; DHB_IgnoreReplyData;;0xB1;fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x3b2; DHB_IgnoreFullPacket;;0xB2;fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x3c0; DHB_NothingToSend;;0xC0;fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x3c2; DHB_CommandMapError;;0xC2;fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x3d0; DHB_NoSwitch;;0xD0;fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x3e0; DHB_ChildTimeout;;0xE0;fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x3e1; DHB_SwitchFailed;;0xE1;fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h;DEVICE_HANDLER_BASE
0x3301; DC_NoReplyReceived;;0x01;fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h;DEVICE_COMMUNICATION_IF
0x3302; DC_ProtocolError;;0x02;fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h;DEVICE_COMMUNICATION_IF
0x3303; DC_Nullpointer;;0x03;fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h;DEVICE_COMMUNICATION_IF
0x3304; DC_InvalidCookieType;;0x04;fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h;DEVICE_COMMUNICATION_IF
0x3305; DC_NotActive;;0x05;fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h;DEVICE_COMMUNICATION_IF
0x3306; DC_TooMuchData;;0x06;fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h;DEVICE_COMMUNICATION_IF
0x26a0; DHI_NoCommandData;;0xA0;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26a1; DHI_CommandNotSupported;;0xA1;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26a2; DHI_CommandAlreadySent;;0xA2;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26a3; DHI_CommandWasNotSent;;0xA3;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26a4; DHI_CantSwitchAddress;;0xA4;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26a5; DHI_WrongModeForCommand;;0xA5;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26a6; DHI_Timeout;;0xA6;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26a7; DHI_Busy;;0xA7;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26a8; DHI_NoReplyExpected;;0xA8;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26a9; DHI_NonOpTemperature;;0xA9;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26aa; DHI_CommandNotImplemented;;0xAA;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26b0; DHI_ChecksumError;;0xB0;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26b1; DHI_LengthMissmatch;;0xB1;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26b2; DHI_InvalidData;;0xB2;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26b3; DHI_ProtocolError;;0xB3;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26c0; DHI_DeviceDidNotExecute;;0xC0;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26c1; DHI_DeviceReportedError;;0xC1;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26c2; DHI_UnknownDeviceReply;;0xC2;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26c3; DHI_DeviceReplyInvalid;;0xC3;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26d0; DHI_InvalidCommandParameter;;0xD0;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x26d1; DHI_InvalidNumberOrLengthOfParameters;;0xD1;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h;DEVICE_HANDLER_IF
0x1401; SE_BufferTooShort;;1;fsfw/src/fsfw/serialize/SerializeIF.h;SERIALIZE_IF
0x1402; SE_StreamTooShort;;2;fsfw/src/fsfw/serialize/SerializeIF.h;SERIALIZE_IF
0x1403; SE_TooManyElements;;3;fsfw/src/fsfw/serialize/SerializeIF.h;SERIALIZE_IF
1 0x0 OK System-wide code for ok. RETURN_OK HasReturnvaluesIF.h HasReturnvaluesIF
2 0x1 Failed Unspecified system-wide code for failed. RETURN_FAILED HasReturnvaluesIF.h HasReturnvaluesIF
3 0x4400 HSPI_HalTimeoutRetval 0 fsfw/hal/src/fsfw_hal/stm32h7/spi/spiDefinitions.h HAL_SPI
4 0x4401 HSPI_HalBusyRetval 1 fsfw/hal/src/fsfw_hal/stm32h7/spi/spiDefinitions.h HAL_SPI
5 0x4402 HSPI_HalErrorRetval 2 fsfw/hal/src/fsfw_hal/stm32h7/spi/spiDefinitions.h HAL_SPI
6 0x4501 HURT_UartReadFailure 1 fsfw/hal/src/fsfw_hal/linux/uart/UartComIF.h HAL_UART
7 0x4502 HURT_UartReadSizeMissmatch 2 fsfw/hal/src/fsfw_hal/linux/uart/UartComIF.h HAL_UART
8 0x4503 HURT_UartRxBufferTooSmall 3 fsfw/hal/src/fsfw_hal/linux/uart/UartComIF.h HAL_UART
9 0x4701 HGIO_UnknownGpioId 1 fsfw/hal/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h HAL_GPIO
10 0x4702 HGIO_DriveGpioFailure 2 fsfw/hal/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h HAL_GPIO
11 0x4703 HGIO_GpioTypeFailure 3 fsfw/hal/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h HAL_GPIO
12 0x4704 HGIO_GpioInvalidInstance 4 fsfw/hal/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h HAL_GPIO
13 0x4705 HGIO_GpioDuplicateDetected 5 fsfw/hal/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h HAL_GPIO
14 0x4706 HGIO_GpioInitFailed 6 fsfw/hal/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h HAL_GPIO
15 0x4300 UXOS_ExecutionFinished Execution of the current command has finished 0 fsfw/hal/src/fsfw_hal/linux/CommandExecutor.h LINUX_OSAL
16 0x4301 UXOS_CommandPending Command is pending. This will also be returned if the user tries to load another command but a command is still pending 1 fsfw/hal/src/fsfw_hal/linux/CommandExecutor.h LINUX_OSAL
17 0x4302 UXOS_BytesRead Some bytes have been read from the executing process 2 fsfw/hal/src/fsfw_hal/linux/CommandExecutor.h LINUX_OSAL
18 0x4303 UXOS_CommandError Command execution failed 3 fsfw/hal/src/fsfw_hal/linux/CommandExecutor.h LINUX_OSAL
19 0x4304 UXOS_NoCommandLoadedOrPending 4 fsfw/hal/src/fsfw_hal/linux/CommandExecutor.h LINUX_OSAL
20 0x4306 UXOS_PcloseCallError 6 fsfw/hal/src/fsfw_hal/linux/CommandExecutor.h LINUX_OSAL
21 0x2b01 CCS_BcIsSetVrCommand 0x01 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h CCSDS_HANDLER_IF
22 0x2b02 CCS_BcIsUnlockCommand 0x02 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h CCSDS_HANDLER_IF
23 0x2bb0 CCS_BcIllegalCommand 0xB0 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h CCSDS_HANDLER_IF
24 0x2bb1 CCS_BoardReadingNotFinished 0xB1 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h CCSDS_HANDLER_IF
25 0x2bf0 CCS_NsPositiveW 0xF0 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h CCSDS_HANDLER_IF
26 0x2bf1 CCS_NsNegativeW 0xF1 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h CCSDS_HANDLER_IF
27 0x2bf2 CCS_NsLockout 0xF2 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h CCSDS_HANDLER_IF
28 0x2bf3 CCS_FarmInLockout 0xF3 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h CCSDS_HANDLER_IF
29 0x2bf4 CCS_FarmInWait 0xF4 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h CCSDS_HANDLER_IF
30 0x2be0 CCS_WrongSymbol 0xE0 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h CCSDS_HANDLER_IF
31 0x2be1 CCS_DoubleStart 0xE1 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h CCSDS_HANDLER_IF
32 0x2be2 CCS_StartSymbolMissed 0xE2 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h CCSDS_HANDLER_IF
33 0x2be3 CCS_EndWithoutStart 0xE3 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h CCSDS_HANDLER_IF
34 0x2be4 CCS_TooLarge 0xE4 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h CCSDS_HANDLER_IF
35 0x2be5 CCS_TooShort 0xE5 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h CCSDS_HANDLER_IF
36 0x2be6 CCS_WrongTfVersion 0xE6 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h CCSDS_HANDLER_IF
37 0x2be7 CCS_WrongSpacecraftId 0xE7 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h CCSDS_HANDLER_IF
38 0x2be8 CCS_NoValidFrameType 0xE8 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h CCSDS_HANDLER_IF
39 0x2be9 CCS_CrcFailed 0xE9 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h CCSDS_HANDLER_IF
40 0x2bea CCS_VcNotFound 0xEA fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h CCSDS_HANDLER_IF
41 0x2beb CCS_ForwardingFailed 0xEB fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h CCSDS_HANDLER_IF
42 0x2bec CCS_ContentTooLarge 0xEC fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h CCSDS_HANDLER_IF
43 0x2bed CCS_ResidualData 0xED fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h CCSDS_HANDLER_IF
44 0x2bee CCS_DataCorrupted 0xEE fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h CCSDS_HANDLER_IF
45 0x2bef CCS_IllegalSegmentationFlag 0xEF fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h CCSDS_HANDLER_IF
46 0x2bd0 CCS_IllegalFlagCombination 0xD0 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h CCSDS_HANDLER_IF
47 0x2bd1 CCS_ShorterThanHeader 0xD1 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h CCSDS_HANDLER_IF
48 0x2bd2 CCS_TooShortBlockedPacket 0xD2 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h CCSDS_HANDLER_IF
49 0x2bd3 CCS_TooShortMapExtraction 0xD3 fsfw/src/fsfw/datalinklayer/CCSDSReturnValuesIF.h CCSDS_HANDLER_IF
50 0x3a00 SPH_ConnBroken 0 fsfw/src/fsfw/osal/common/TcpTmTcServer.h SEMAPHORE_IF
51 0x2901 IEC_NoConfigurationTable 0x01 fsfw/src/fsfw/osal/InternalErrorCodes.h INTERNAL_ERROR_CODES
52 0x2902 IEC_NoCpuTable 0x02 fsfw/src/fsfw/osal/InternalErrorCodes.h INTERNAL_ERROR_CODES
53 0x2903 IEC_InvalidWorkspaceAddress 0x03 fsfw/src/fsfw/osal/InternalErrorCodes.h INTERNAL_ERROR_CODES
54 0x2904 IEC_TooLittleWorkspace 0x04 fsfw/src/fsfw/osal/InternalErrorCodes.h INTERNAL_ERROR_CODES
55 0x2905 IEC_WorkspaceAllocation 0x05 fsfw/src/fsfw/osal/InternalErrorCodes.h INTERNAL_ERROR_CODES
56 0x2906 IEC_InterruptStackTooSmall 0x06 fsfw/src/fsfw/osal/InternalErrorCodes.h INTERNAL_ERROR_CODES
57 0x2907 IEC_ThreadExitted 0x07 fsfw/src/fsfw/osal/InternalErrorCodes.h INTERNAL_ERROR_CODES
58 0x2908 IEC_InconsistentMpInformation 0x08 fsfw/src/fsfw/osal/InternalErrorCodes.h INTERNAL_ERROR_CODES
59 0x2909 IEC_InvalidNode 0x09 fsfw/src/fsfw/osal/InternalErrorCodes.h INTERNAL_ERROR_CODES
60 0x290a IEC_NoMpci 0x0a fsfw/src/fsfw/osal/InternalErrorCodes.h INTERNAL_ERROR_CODES
61 0x290b IEC_BadPacket 0x0b fsfw/src/fsfw/osal/InternalErrorCodes.h INTERNAL_ERROR_CODES
62 0x290c IEC_OutOfPackets 0x0c fsfw/src/fsfw/osal/InternalErrorCodes.h INTERNAL_ERROR_CODES
63 0x290d IEC_OutOfGlobalObjects 0x0d fsfw/src/fsfw/osal/InternalErrorCodes.h INTERNAL_ERROR_CODES
64 0x290e IEC_OutOfProxies 0x0e fsfw/src/fsfw/osal/InternalErrorCodes.h INTERNAL_ERROR_CODES
65 0x290f IEC_InvalidGlobalId 0x0f fsfw/src/fsfw/osal/InternalErrorCodes.h INTERNAL_ERROR_CODES
66 0x2910 IEC_BadStackHook 0x10 fsfw/src/fsfw/osal/InternalErrorCodes.h INTERNAL_ERROR_CODES
67 0x2911 IEC_BadAttributes 0x11 fsfw/src/fsfw/osal/InternalErrorCodes.h INTERNAL_ERROR_CODES
68 0x2912 IEC_ImplementationKeyCreateInconsistency 0x12 fsfw/src/fsfw/osal/InternalErrorCodes.h INTERNAL_ERROR_CODES
69 0x2913 IEC_ImplementationBlockingOperationCancel 0x13 fsfw/src/fsfw/osal/InternalErrorCodes.h INTERNAL_ERROR_CODES
70 0x2914 IEC_MutexObtainFromBadState 0x14 fsfw/src/fsfw/osal/InternalErrorCodes.h INTERNAL_ERROR_CODES
71 0x2915 IEC_UnlimitedAndMaximumIs0 0x15 fsfw/src/fsfw/osal/InternalErrorCodes.h INTERNAL_ERROR_CODES
72 0xe01 HM_InvalidMode 0x01 fsfw/src/fsfw/modes/HasModesIF.h HAS_MODES_IF
73 0xe02 HM_TransNotAllowed 0x02 fsfw/src/fsfw/modes/HasModesIF.h HAS_MODES_IF
74 0xe03 HM_InTransition 0x03 fsfw/src/fsfw/modes/HasModesIF.h HAS_MODES_IF
75 0xe04 HM_InvalidSubmode 0x04 fsfw/src/fsfw/modes/HasModesIF.h HAS_MODES_IF
76 0x2d01 HPA_InvalidIdentifierId 0x01 fsfw/src/fsfw/parameters/HasParametersIF.h HAS_PARAMETERS_IF
77 0x2d02 HPA_InvalidDomainId 0x02 fsfw/src/fsfw/parameters/HasParametersIF.h HAS_PARAMETERS_IF
78 0x2d03 HPA_InvalidValue 0x03 fsfw/src/fsfw/parameters/HasParametersIF.h HAS_PARAMETERS_IF
79 0x2d05 HPA_ReadOnly 0x05 fsfw/src/fsfw/parameters/HasParametersIF.h HAS_PARAMETERS_IF
80 0x2c01 PAW_UnknownDatatype 0x01 fsfw/src/fsfw/parameters/ParameterWrapper.h PARAMETER_WRAPPER
81 0x2c02 PAW_DatatypeMissmatch 0x02 fsfw/src/fsfw/parameters/ParameterWrapper.h PARAMETER_WRAPPER
82 0x2c03 PAW_Readonly 0x03 fsfw/src/fsfw/parameters/ParameterWrapper.h PARAMETER_WRAPPER
83 0x2c04 PAW_TooBig 0x04 fsfw/src/fsfw/parameters/ParameterWrapper.h PARAMETER_WRAPPER
84 0x2c05 PAW_SourceNotSet 0x05 fsfw/src/fsfw/parameters/ParameterWrapper.h PARAMETER_WRAPPER
85 0x2c06 PAW_OutOfBounds 0x06 fsfw/src/fsfw/parameters/ParameterWrapper.h PARAMETER_WRAPPER
86 0x2c07 PAW_NotSet 0x07 fsfw/src/fsfw/parameters/ParameterWrapper.h PARAMETER_WRAPPER
87 0x2c08 PAW_ColumnOrRowsZero 0x08 fsfw/src/fsfw/parameters/ParameterWrapper.h PARAMETER_WRAPPER
88 0x3101 CF_ObjectHasNoFunctions 1 fsfw/src/fsfw/action/CommandsActionsIF.h COMMANDS_ACTIONS_IF
89 0x3102 CF_AlreadyCommanding 2 fsfw/src/fsfw/action/CommandsActionsIF.h COMMANDS_ACTIONS_IF
90 0x3201 HF_IsBusy 1 fsfw/src/fsfw/action/HasActionsIF.h HAS_ACTIONS_IF
91 0x3202 HF_InvalidParameters 2 fsfw/src/fsfw/action/HasActionsIF.h HAS_ACTIONS_IF
92 0x3203 HF_ExecutionFinished 3 fsfw/src/fsfw/action/HasActionsIF.h HAS_ACTIONS_IF
93 0x3204 HF_InvalidActionId 4 fsfw/src/fsfw/action/HasActionsIF.h HAS_ACTIONS_IF
94 0x201 OM_InsertionFailed 1 fsfw/src/fsfw/objectmanager/ObjectManagerIF.h OBJECT_MANAGER_IF
95 0x202 OM_NotFound 2 fsfw/src/fsfw/objectmanager/ObjectManagerIF.h OBJECT_MANAGER_IF
96 0x203 OM_ChildInitFailed 3 fsfw/src/fsfw/objectmanager/ObjectManagerIF.h OBJECT_MANAGER_IF
97 0x204 OM_InternalErrReporterUninit 4 fsfw/src/fsfw/objectmanager/ObjectManagerIF.h OBJECT_MANAGER_IF
98 0x2500 FDI_YourFault 0 fsfw/src/fsfw/fdir/ConfirmsFailuresIF.h HANDLES_FAILURES_IF
99 0x2501 FDI_MyFault 1 fsfw/src/fsfw/fdir/ConfirmsFailuresIF.h HANDLES_FAILURES_IF
100 0x2502 FDI_ConfirmLater 2 fsfw/src/fsfw/fdir/ConfirmsFailuresIF.h HANDLES_FAILURES_IF
101 0x2101 TMF_Busy 1 fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h TM_STORE_FRONTEND_IF
102 0x2102 TMF_LastPacketFound 2 fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h TM_STORE_FRONTEND_IF
103 0x2103 TMF_StopFetch 3 fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h TM_STORE_FRONTEND_IF
104 0x2104 TMF_Timeout 4 fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h TM_STORE_FRONTEND_IF
105 0x2105 TMF_TmChannelFull 5 fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h TM_STORE_FRONTEND_IF
106 0x2106 TMF_NotStored 6 fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h TM_STORE_FRONTEND_IF
107 0x2107 TMF_AllDeleted 7 fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h TM_STORE_FRONTEND_IF
108 0x2108 TMF_InvalidData 8 fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h TM_STORE_FRONTEND_IF
109 0x2109 TMF_NotReady 9 fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h TM_STORE_FRONTEND_IF
110 0x2001 TMB_Busy 1 fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h TM_STORE_BACKEND_IF
111 0x2002 TMB_Full 2 fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h TM_STORE_BACKEND_IF
112 0x2003 TMB_Empty 3 fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h TM_STORE_BACKEND_IF
113 0x2004 TMB_NullRequested 4 fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h TM_STORE_BACKEND_IF
114 0x2005 TMB_TooLarge 5 fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h TM_STORE_BACKEND_IF
115 0x2006 TMB_NotReady 6 fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h TM_STORE_BACKEND_IF
116 0x2007 TMB_DumpError 7 fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h TM_STORE_BACKEND_IF
117 0x2008 TMB_CrcError 8 fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h TM_STORE_BACKEND_IF
118 0x2009 TMB_Timeout 9 fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h TM_STORE_BACKEND_IF
119 0x200a TMB_IdlePacketFound 10 fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h TM_STORE_BACKEND_IF
120 0x200b TMB_TelecommandFound 11 fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h TM_STORE_BACKEND_IF
121 0x200c TMB_NoPusATm 12 fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h TM_STORE_BACKEND_IF
122 0x200d TMB_TooSmall 13 fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h TM_STORE_BACKEND_IF
123 0x200e TMB_BlockNotFound 14 fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h TM_STORE_BACKEND_IF
124 0x200f TMB_InvalidRequest 15 fsfw/src/fsfw/tmstorage/TmStoreBackendIF.h TM_STORE_BACKEND_IF
125 0x1c01 TCD_PacketLost 1 fsfw/src/fsfw/tcdistribution/TcDistributor.h PACKET_DISTRIBUTION
126 0x1c02 TCD_DestinationNotFound 2 fsfw/src/fsfw/tcdistribution/TcDistributor.h PACKET_DISTRIBUTION
127 0x1c03 TCD_ServiceIdAlreadyExists 3 fsfw/src/fsfw/tcdistribution/TcDistributor.h PACKET_DISTRIBUTION
128 0x1b00 TCC_IllegalApid 0 fsfw/src/fsfw/tcdistribution/TcPacketCheckPUS.h TC_PACKET_CHECK
129 0x1b01 TCC_IncompletePacket 1 fsfw/src/fsfw/tcdistribution/TcPacketCheckPUS.h TC_PACKET_CHECK
130 0x1b02 TCC_IncorrectChecksum 2 fsfw/src/fsfw/tcdistribution/TcPacketCheckPUS.h TC_PACKET_CHECK
131 0x1b03 TCC_IllegalPacketType 3 fsfw/src/fsfw/tcdistribution/TcPacketCheckPUS.h TC_PACKET_CHECK
132 0x1b04 TCC_IllegalPacketSubtype 4 fsfw/src/fsfw/tcdistribution/TcPacketCheckPUS.h TC_PACKET_CHECK
133 0x1b05 TCC_IncorrectPrimaryHeader 5 fsfw/src/fsfw/tcdistribution/TcPacketCheckPUS.h TC_PACKET_CHECK
134 0x1b06 TCC_IncorrectSecondaryHeader 6 fsfw/src/fsfw/tcdistribution/TcPacketCheckPUS.h TC_PACKET_CHECK
135 0x4e1 RMP_CommandNoDescriptorsAvailable 0xE1 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
136 0x4e2 RMP_CommandBufferFull 0xE2 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
137 0x4e3 RMP_CommandChannelOutOfRange 0xE3 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
138 0x4e6 RMP_CommandChannelDeactivated 0xE6 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
139 0x4e7 RMP_CommandPortOutOfRange 0xE7 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
140 0x4e8 RMP_CommandPortInUse 0xE8 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
141 0x4e9 RMP_CommandNoChannel 0xE9 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
142 0x4ea RMP_NoHwCrc 0xEA fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
143 0x4d0 RMP_ReplyNoReply 0xD0 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
144 0x4d1 RMP_ReplyNotSent 0xD1 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
145 0x4d2 RMP_ReplyNotYetSent 0xD2 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
146 0x4d3 RMP_ReplyMissmatch 0xD3 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
147 0x4d4 RMP_ReplyTimeout 0xD4 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
148 0x4c0 RMP_ReplyInterfaceBusy 0xC0 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
149 0x4c1 RMP_ReplyTransmissionError 0xC1 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
150 0x4c2 RMP_ReplyInvalidData 0xC2 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
151 0x4c3 RMP_ReplyNotSupported 0xC3 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
152 0x4f0 RMP_LinkDown 0xF0 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
153 0x4f1 RMP_SpwCredit 0xF1 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
154 0x4f2 RMP_SpwEscape 0xF2 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
155 0x4f3 RMP_SpwDisconnect 0xF3 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
156 0x4f4 RMP_SpwParity 0xF4 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
157 0x4f5 RMP_SpwWriteSync 0xF5 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
158 0x4f6 RMP_SpwInvalidAddress 0xF6 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
159 0x4f7 RMP_SpwEarlyEop 0xF7 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
160 0x4f8 RMP_SpwDma 0xF8 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
161 0x4f9 RMP_SpwLinkError 0xF9 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
162 0x400 RMP_ReplyOk 0 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
163 0x401 RMP_ReplyGeneralErrorCode 1 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
164 0x402 RMP_ReplyUnusedPacketTypeOrCommandCode 2 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
165 0x403 RMP_ReplyInvalidKey 3 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
166 0x404 RMP_ReplyInvalidDataCrc 4 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
167 0x405 RMP_ReplyEarlyEop 5 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
168 0x406 RMP_ReplyTooMuchData 6 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
169 0x407 RMP_ReplyEep 7 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
170 0x408 RMP_ReplyReserved 8 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
171 0x409 RMP_ReplyVerifyBufferOverrun 9 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
172 0x40a RMP_ReplyCommandNotImplementedOrNotAuthorised 10 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
173 0x40b RMP_ReplyRmwDataLengthError 11 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
174 0x40c RMP_ReplyInvalidTargetLogicalAddress 12 fsfw/src/fsfw/rmap/RMAP.h RMAP_CHANNEL
175 0x2701 SM_DataTooLarge 1 fsfw/src/fsfw/storagemanager/StorageManagerIF.h STORAGE_MANAGER_IF
176 0x2702 SM_DataStorageFull 2 fsfw/src/fsfw/storagemanager/StorageManagerIF.h STORAGE_MANAGER_IF
177 0x2703 SM_IllegalStorageId 3 fsfw/src/fsfw/storagemanager/StorageManagerIF.h STORAGE_MANAGER_IF
178 0x2704 SM_DataDoesNotExist 4 fsfw/src/fsfw/storagemanager/StorageManagerIF.h STORAGE_MANAGER_IF
179 0x2705 SM_IllegalAddress 5 fsfw/src/fsfw/storagemanager/StorageManagerIF.h STORAGE_MANAGER_IF
180 0x2706 SM_PoolTooLarge 6 fsfw/src/fsfw/storagemanager/StorageManagerIF.h STORAGE_MANAGER_IF
181 0x37a1 SGP4_InvalidEccentricity 0xA1 fsfw/src/fsfw/coordinates/Sgp4Propagator.h SGP4PROPAGATOR_CLASS
182 0x37a2 SGP4_InvalidMeanMotion 0xA2 fsfw/src/fsfw/coordinates/Sgp4Propagator.h SGP4PROPAGATOR_CLASS
183 0x37a3 SGP4_InvalidPerturbationElements 0xA3 fsfw/src/fsfw/coordinates/Sgp4Propagator.h SGP4PROPAGATOR_CLASS
184 0x37a4 SGP4_InvalidSemiLatusRectum 0xA4 fsfw/src/fsfw/coordinates/Sgp4Propagator.h SGP4PROPAGATOR_CLASS
185 0x37a5 SGP4_InvalidEpochElements 0xA5 fsfw/src/fsfw/coordinates/Sgp4Propagator.h SGP4PROPAGATOR_CLASS
186 0x37a6 SGP4_SatelliteHasDecayed 0xA6 fsfw/src/fsfw/coordinates/Sgp4Propagator.h SGP4PROPAGATOR_CLASS
187 0x37b1 SGP4_TleTooOld 0xB1 fsfw/src/fsfw/coordinates/Sgp4Propagator.h SGP4PROPAGATOR_CLASS
188 0x37b2 SGP4_TleNotInitialized 0xB2 fsfw/src/fsfw/coordinates/Sgp4Propagator.h SGP4PROPAGATOR_CLASS
189 0x2301 MT_TooDetailedRequest 1 fsfw/src/fsfw/globalfunctions/matching/MatchTree.h MATCH_TREE_CLASS
190 0x2302 MT_TooGeneralRequest 2 fsfw/src/fsfw/globalfunctions/matching/MatchTree.h MATCH_TREE_CLASS
191 0x2303 MT_NoMatch 3 fsfw/src/fsfw/globalfunctions/matching/MatchTree.h MATCH_TREE_CLASS
192 0x2304 MT_Full 4 fsfw/src/fsfw/globalfunctions/matching/MatchTree.h MATCH_TREE_CLASS
193 0x2305 MT_NewNodeCreated 5 fsfw/src/fsfw/globalfunctions/matching/MatchTree.h MATCH_TREE_CLASS
194 0x3e01 DLEE_StreamTooShort 0x01 fsfw/src/fsfw/globalfunctions/DleEncoder.h DLE_ENCODER
195 0x3e02 DLEE_DecodingError 0x02 fsfw/src/fsfw/globalfunctions/DleEncoder.h DLE_ENCODER
196 0x2e01 ASC_TooLongForTargetType 1 fsfw/src/fsfw/globalfunctions/AsciiConverter.h ASCII_CONVERTER
197 0x2e02 ASC_InvalidCharacters 2 fsfw/src/fsfw/globalfunctions/AsciiConverter.h ASCII_CONVERTER
198 0x2e03 ASC_BufferTooSmall 0x3 fsfw/src/fsfw/globalfunctions/AsciiConverter.h ASCII_CONVERTER
199 0xf01 CM_UnknownCommand 1 fsfw/src/fsfw/ipc/CommandMessageIF.h COMMAND_MESSAGE
200 0x3901 MQI_Empty 1 fsfw/src/fsfw/ipc/MessageQueueIF.h MESSAGE_QUEUE_IF
201 0x3902 MQI_Full No space left for more messages 2 fsfw/src/fsfw/ipc/MessageQueueIF.h MESSAGE_QUEUE_IF
202 0x3903 MQI_NoReplyPartner Returned if a reply method was called without partner 3 fsfw/src/fsfw/ipc/MessageQueueIF.h MESSAGE_QUEUE_IF
203 0x3904 MQI_DestinationInvalid Returned if the target destination is invalid. 4 fsfw/src/fsfw/ipc/MessageQueueIF.h MESSAGE_QUEUE_IF
204 0x3801 MUX_NotEnoughResources 1 fsfw/src/fsfw/ipc/MutexIF.h MUTEX_IF
205 0x3802 MUX_InsufficientMemory 2 fsfw/src/fsfw/ipc/MutexIF.h MUTEX_IF
206 0x3803 MUX_NoPrivilege 3 fsfw/src/fsfw/ipc/MutexIF.h MUTEX_IF
207 0x3804 MUX_WrongAttributeSetting 4 fsfw/src/fsfw/ipc/MutexIF.h MUTEX_IF
208 0x3805 MUX_MutexAlreadyLocked 5 fsfw/src/fsfw/ipc/MutexIF.h MUTEX_IF
209 0x3806 MUX_MutexNotFound 6 fsfw/src/fsfw/ipc/MutexIF.h MUTEX_IF
210 0x3807 MUX_MutexMaxLocks 7 fsfw/src/fsfw/ipc/MutexIF.h MUTEX_IF
211 0x3808 MUX_CurrThreadAlreadyOwnsMutex 8 fsfw/src/fsfw/ipc/MutexIF.h MUTEX_IF
212 0x3809 MUX_CurrThreadDoesNotOwnMutex 9 fsfw/src/fsfw/ipc/MutexIF.h MUTEX_IF
213 0x380a MUX_MutexTimeout 10 fsfw/src/fsfw/ipc/MutexIF.h MUTEX_IF
214 0x380b MUX_MutexInvalidId 11 fsfw/src/fsfw/ipc/MutexIF.h MUTEX_IF
215 0x380c MUX_MutexDestroyedWhileWaiting 12 fsfw/src/fsfw/ipc/MutexIF.h MUTEX_IF
216 0x3a01 SPH_SemaphoreTimeout 1 fsfw/src/fsfw/tasks/SemaphoreIF.h SEMAPHORE_IF
217 0x3a02 SPH_SemaphoreNotOwned 2 fsfw/src/fsfw/tasks/SemaphoreIF.h SEMAPHORE_IF
218 0x3a03 SPH_SemaphoreInvalid 3 fsfw/src/fsfw/tasks/SemaphoreIF.h SEMAPHORE_IF
219 0x3501 CFDP_InvalidTlvType 1 fsfw/src/fsfw/cfdp/definitions.h CFDP
220 0x3502 CFDP_InvalidDirectiveFields 2 fsfw/src/fsfw/cfdp/definitions.h CFDP
221 0x3503 CFDP_InvalidPduDatafieldLen 3 fsfw/src/fsfw/cfdp/definitions.h CFDP
222 0x3504 CFDP_InvalidAckDirectiveFields 4 fsfw/src/fsfw/cfdp/definitions.h CFDP
223 0x3505 CFDP_MetadataCantParseOptions 5 fsfw/src/fsfw/cfdp/definitions.h CFDP
224 0x3506 CFDP_FinishedCantParseFsResponses 6 fsfw/src/fsfw/cfdp/definitions.h CFDP
225 0x3508 CFDP_FilestoreRequiresSecondFile 8 fsfw/src/fsfw/cfdp/definitions.h CFDP
226 0x3509 CFDP_FilestoreResponseCantParseFsMessage 9 fsfw/src/fsfw/cfdp/definitions.h CFDP
227 0x2801 TC_InvalidTargetState 1 fsfw/src/fsfw/thermal/ThermalComponentIF.h THERMAL_COMPONENT_IF
228 0x28f1 TC_AboveOperationalLimit 0xF1 fsfw/src/fsfw/thermal/ThermalComponentIF.h THERMAL_COMPONENT_IF
229 0x28f2 TC_BelowOperationalLimit 0xF2 fsfw/src/fsfw/thermal/ThermalComponentIF.h THERMAL_COMPONENT_IF
230 0xc02 MS_InvalidEntry 0x02 fsfw/src/fsfw/subsystem/modes/ModeStoreIF.h MODE_STORE_IF
231 0xc03 MS_TooManyElements 0x03 fsfw/src/fsfw/subsystem/modes/ModeStoreIF.h MODE_STORE_IF
232 0xc04 MS_CantStoreEmpty 0x04 fsfw/src/fsfw/subsystem/modes/ModeStoreIF.h MODE_STORE_IF
233 0xd01 SS_SequenceAlreadyExists 0x01 fsfw/src/fsfw/subsystem/Subsystem.h SUBSYSTEM
234 0xd02 SS_TableAlreadyExists 0x02 fsfw/src/fsfw/subsystem/Subsystem.h SUBSYSTEM
235 0xd03 SS_TableDoesNotExist 0x03 fsfw/src/fsfw/subsystem/Subsystem.h SUBSYSTEM
236 0xd04 SS_TableOrSequenceLengthInvalid 0x04 fsfw/src/fsfw/subsystem/Subsystem.h SUBSYSTEM
237 0xd05 SS_SequenceDoesNotExist 0x05 fsfw/src/fsfw/subsystem/Subsystem.h SUBSYSTEM
238 0xd06 SS_TableContainsInvalidObjectId 0x06 fsfw/src/fsfw/subsystem/Subsystem.h SUBSYSTEM
239 0xd07 SS_FallbackSequenceDoesNotExist 0x07 fsfw/src/fsfw/subsystem/Subsystem.h SUBSYSTEM
240 0xd08 SS_NoTargetTable 0x08 fsfw/src/fsfw/subsystem/Subsystem.h SUBSYSTEM
241 0xd09 SS_SequenceOrTableTooLong 0x09 fsfw/src/fsfw/subsystem/Subsystem.h SUBSYSTEM
242 0xd0b SS_IsFallbackSequence 0x0B fsfw/src/fsfw/subsystem/Subsystem.h SUBSYSTEM
243 0xd0c SS_AccessDenied 0x0C fsfw/src/fsfw/subsystem/Subsystem.h SUBSYSTEM
244 0xd0e SS_TableInUse 0x0E fsfw/src/fsfw/subsystem/Subsystem.h SUBSYSTEM
245 0xda1 SS_TargetTableNotReached 0xA1 fsfw/src/fsfw/subsystem/Subsystem.h SUBSYSTEM
246 0xda2 SS_TableCheckFailed 0xA2 fsfw/src/fsfw/subsystem/Subsystem.h SUBSYSTEM
247 0xb01 SB_ChildNotFound 0x01 fsfw/src/fsfw/subsystem/SubsystemBase.h SUBSYSTEM_BASE
248 0xb02 SB_ChildInfoUpdated 0x02 fsfw/src/fsfw/subsystem/SubsystemBase.h SUBSYSTEM_BASE
249 0xb03 SB_ChildDoesntHaveModes 0x03 fsfw/src/fsfw/subsystem/SubsystemBase.h SUBSYSTEM_BASE
250 0xb04 SB_CouldNotInsertChild 0x04 fsfw/src/fsfw/subsystem/SubsystemBase.h SUBSYSTEM_BASE
251 0xb05 SB_TableContainsInvalidObjectId 0x05 fsfw/src/fsfw/subsystem/SubsystemBase.h SUBSYSTEM_BASE
252 0x3d00 HKM_QueueOrDestinationInvalid 0 fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h HOUSEKEEPING_MANAGER
253 0x3d01 HKM_WrongHkPacketType 1 fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h HOUSEKEEPING_MANAGER
254 0x3d02 HKM_ReportingStatusUnchanged 2 fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h HOUSEKEEPING_MANAGER
255 0x3d03 HKM_PeriodicHelperInvalid 3 fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h HOUSEKEEPING_MANAGER
256 0x3d04 HKM_PoolobjectNotFound 4 fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h HOUSEKEEPING_MANAGER
257 0x3d05 HKM_DatasetNotFound 5 fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h HOUSEKEEPING_MANAGER
258 0x3b00 LPIF_PoolEntryNotFound 0x00 fsfw/src/fsfw/datapoollocal/localPoolDefinitions.h LOCAL_POOL_OWNER_IF
259 0x3b01 LPIF_PoolEntryTypeConflict 0x01 fsfw/src/fsfw/datapoollocal/localPoolDefinitions.h LOCAL_POOL_OWNER_IF
260 0x3ca0 PVA_InvalidReadWriteMode 0xA0 fsfw/src/fsfw/datapool/PoolVariableIF.h POOL_VARIABLE_IF
261 0x3ca1 PVA_InvalidPoolEntry 0xA1 fsfw/src/fsfw/datapool/PoolVariableIF.h POOL_VARIABLE_IF
262 0x801 DPS_InvalidParameterDefinition 1 fsfw/src/fsfw/datapool/DataSetIF.h DATA_SET_CLASS
263 0x802 DPS_SetWasAlreadyRead 2 fsfw/src/fsfw/datapool/DataSetIF.h DATA_SET_CLASS
264 0x803 DPS_CommitingWithoutReading 3 fsfw/src/fsfw/datapool/DataSetIF.h DATA_SET_CLASS
265 0x804 DPS_DataSetUninitialised 4 fsfw/src/fsfw/datapool/DataSetIF.h DATA_SET_CLASS
266 0x805 DPS_DataSetFull 5 fsfw/src/fsfw/datapool/DataSetIF.h DATA_SET_CLASS
267 0x806 DPS_PoolVarNull 6 fsfw/src/fsfw/datapool/DataSetIF.h DATA_SET_CLASS
268 0x1000 TIM_UnsupportedTimeFormat 0 fsfw/src/fsfw/timemanager/CCSDSTime.h CCSDS_TIME_HELPER_CLASS
269 0x1001 TIM_NotEnoughInformationForTargetFormat 1 fsfw/src/fsfw/timemanager/CCSDSTime.h CCSDS_TIME_HELPER_CLASS
270 0x1002 TIM_LengthMismatch 2 fsfw/src/fsfw/timemanager/CCSDSTime.h CCSDS_TIME_HELPER_CLASS
271 0x1003 TIM_InvalidTimeFormat 3 fsfw/src/fsfw/timemanager/CCSDSTime.h CCSDS_TIME_HELPER_CLASS
272 0x1004 TIM_InvalidDayOfYear 4 fsfw/src/fsfw/timemanager/CCSDSTime.h CCSDS_TIME_HELPER_CLASS
273 0x1005 TIM_TimeDoesNotFitFormat 5 fsfw/src/fsfw/timemanager/CCSDSTime.h CCSDS_TIME_HELPER_CLASS
274 0x3601 TSI_BadTimestamp 1 fsfw/src/fsfw/timemanager/TimeStamperIF.h TIME_STAMPER_IF
275 0x1d01 PUS_ActivityStarted 1 fsfw/src/fsfw/tmtcservices/AcceptsTelecommandsIF.h ACCEPTS_TELECOMMANDS_IF
276 0x1d02 PUS_InvalidSubservice 2 fsfw/src/fsfw/tmtcservices/AcceptsTelecommandsIF.h ACCEPTS_TELECOMMANDS_IF
277 0x1d03 PUS_IllegalApplicationData 3 fsfw/src/fsfw/tmtcservices/AcceptsTelecommandsIF.h ACCEPTS_TELECOMMANDS_IF
278 0x1d04 PUS_SendTmFailed 4 fsfw/src/fsfw/tmtcservices/AcceptsTelecommandsIF.h ACCEPTS_TELECOMMANDS_IF
279 0x1d05 PUS_Timeout 5 fsfw/src/fsfw/tmtcservices/AcceptsTelecommandsIF.h ACCEPTS_TELECOMMANDS_IF
280 0x4b00 SPPA_NoPacketFound 0x00 fsfw/src/fsfw/tmtcservices/SpacePacketParser.h SPACE_PACKET_PARSER
281 0x4b01 SPPA_SplitPacket 0x01 fsfw/src/fsfw/tmtcservices/SpacePacketParser.h SPACE_PACKET_PARSER
282 0x1f01 CSB_ExecutionComplete 1 fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h COMMAND_SERVICE_BASE
283 0x1f02 CSB_NoStepMessage 2 fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h COMMAND_SERVICE_BASE
284 0x1f03 CSB_ObjectBusy 3 fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h COMMAND_SERVICE_BASE
285 0x1f04 CSB_Busy 4 fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h COMMAND_SERVICE_BASE
286 0x1f05 CSB_InvalidTc 5 fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h COMMAND_SERVICE_BASE
287 0x1f06 CSB_InvalidObject 6 fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h COMMAND_SERVICE_BASE
288 0x1f07 CSB_InvalidReply 7 fsfw/src/fsfw/tmtcservices/CommandingServiceBase.h COMMAND_SERVICE_BASE
289 0x1101 AL_Full 0x01 fsfw/src/fsfw/container/ArrayList.h ARRAY_LIST
290 0x1801 FF_Full 1 fsfw/src/fsfw/container/FIFOBase.h FIFO_CLASS
291 0x1802 FF_Empty 2 fsfw/src/fsfw/container/FIFOBase.h FIFO_CLASS
292 0x1601 FMM_MapFull 0x01 fsfw/src/fsfw/container/FixedOrderedMultimap.h FIXED_MULTIMAP
293 0x1602 FMM_KeyDoesNotExist 0x02 fsfw/src/fsfw/container/FixedOrderedMultimap.h FIXED_MULTIMAP
294 0x1501 FM_KeyAlreadyExists 0x01 fsfw/src/fsfw/container/FixedMap.h FIXED_MAP
295 0x1502 FM_MapFull 0x02 fsfw/src/fsfw/container/FixedMap.h FIXED_MAP
296 0x1503 FM_KeyDoesNotExist 0x03 fsfw/src/fsfw/container/FixedMap.h FIXED_MAP
297 0x2401 EV_ListenerNotFound 1 fsfw/src/fsfw/events/EventManagerIF.h EVENT_MANAGER_IF
298 0x1701 HHI_ObjectNotHealthy 1 fsfw/src/fsfw/health/HasHealthIF.h HAS_HEALTH_IF
299 0x1702 HHI_InvalidHealthState 2 fsfw/src/fsfw/health/HasHealthIF.h HAS_HEALTH_IF
300 0x2f01 POS_InPowerTransition 1 fsfw/src/fsfw/power/PowerSwitcher.h POWER_SWITCHER
301 0x2f02 POS_SwitchStateMismatch 2 fsfw/src/fsfw/power/PowerSwitcher.h POWER_SWITCHER
302 0x501 PS_SwitchOn 1 fsfw/src/fsfw/power/PowerSwitchIF.h POWER_SWITCH_IF
303 0x500 PS_SwitchOff 0 fsfw/src/fsfw/power/PowerSwitchIF.h POWER_SWITCH_IF
304 0x502 PS_SwitchTimeout 2 fsfw/src/fsfw/power/PowerSwitchIF.h POWER_SWITCH_IF
305 0x503 PS_FuseOn 3 fsfw/src/fsfw/power/PowerSwitchIF.h POWER_SWITCH_IF
306 0x504 PS_FuseOff 4 fsfw/src/fsfw/power/PowerSwitchIF.h POWER_SWITCH_IF
307 0x1a01 TRC_NotEnoughSensors 1 fsfw/src/fsfw/monitoring/TriplexMonitor.h TRIPLE_REDUNDACY_CHECK
308 0x1a02 TRC_LowestValueOol 2 fsfw/src/fsfw/monitoring/TriplexMonitor.h TRIPLE_REDUNDACY_CHECK
309 0x1a03 TRC_HighestValueOol 3 fsfw/src/fsfw/monitoring/TriplexMonitor.h TRIPLE_REDUNDACY_CHECK
310 0x1a04 TRC_BothValuesOol 4 fsfw/src/fsfw/monitoring/TriplexMonitor.h TRIPLE_REDUNDACY_CHECK
311 0x1a05 TRC_DuplexOol 5 fsfw/src/fsfw/monitoring/TriplexMonitor.h TRIPLE_REDUNDACY_CHECK
312 0x3001 LIM_Unchecked 1 fsfw/src/fsfw/monitoring/MonitoringIF.h LIMITS_IF
313 0x3002 LIM_Invalid 2 fsfw/src/fsfw/monitoring/MonitoringIF.h LIMITS_IF
314 0x3003 LIM_Unselected 3 fsfw/src/fsfw/monitoring/MonitoringIF.h LIMITS_IF
315 0x3004 LIM_BelowLowLimit 4 fsfw/src/fsfw/monitoring/MonitoringIF.h LIMITS_IF
316 0x3005 LIM_AboveHighLimit 5 fsfw/src/fsfw/monitoring/MonitoringIF.h LIMITS_IF
317 0x3006 LIM_UnexpectedValue 6 fsfw/src/fsfw/monitoring/MonitoringIF.h LIMITS_IF
318 0x3007 LIM_OutOfRange 7 fsfw/src/fsfw/monitoring/MonitoringIF.h LIMITS_IF
319 0x30a0 LIM_FirstSample 0xA0 fsfw/src/fsfw/monitoring/MonitoringIF.h LIMITS_IF
320 0x30e0 LIM_InvalidSize 0xE0 fsfw/src/fsfw/monitoring/MonitoringIF.h LIMITS_IF
321 0x30e1 LIM_WrongType 0xE1 fsfw/src/fsfw/monitoring/MonitoringIF.h LIMITS_IF
322 0x30e2 LIM_WrongPid 0xE2 fsfw/src/fsfw/monitoring/MonitoringIF.h LIMITS_IF
323 0x30e3 LIM_WrongLimitId 0xE3 fsfw/src/fsfw/monitoring/MonitoringIF.h LIMITS_IF
324 0x30ee LIM_MonitorNotFound 0xEE fsfw/src/fsfw/monitoring/MonitoringIF.h LIMITS_IF
325 0x4101 PUS11_InvalidTypeTimeWindow 1 fsfw/src/fsfw/pus/Service11TelecommandScheduling.h PUS_SERVICE_11
326 0x4102 PUS11_TimeshiftingNotPossible 2 fsfw/src/fsfw/pus/Service11TelecommandScheduling.h PUS_SERVICE_11
327 0x4103 PUS11_InvalidRelativeTime 3 fsfw/src/fsfw/pus/Service11TelecommandScheduling.h PUS_SERVICE_11
328 0x4200 FILS_GenericFileError 0 fsfw/src/fsfw/memory/HasFileSystemIF.h FILE_SYSTEM
329 0x4201 FILS_IsBusy 1 fsfw/src/fsfw/memory/HasFileSystemIF.h FILE_SYSTEM
330 0x4202 FILS_InvalidParameters 2 fsfw/src/fsfw/memory/HasFileSystemIF.h FILE_SYSTEM
331 0x4205 FILS_FileDoesNotExist 5 fsfw/src/fsfw/memory/HasFileSystemIF.h FILE_SYSTEM
332 0x4206 FILS_FileAlreadyExists 6 fsfw/src/fsfw/memory/HasFileSystemIF.h FILE_SYSTEM
333 0x4207 FILS_FileLocked 7 fsfw/src/fsfw/memory/HasFileSystemIF.h FILE_SYSTEM
334 0x420a FILS_DirectoryDoesNotExist 10 fsfw/src/fsfw/memory/HasFileSystemIF.h FILE_SYSTEM
335 0x420b FILS_DirectoryAlreadyExists 11 fsfw/src/fsfw/memory/HasFileSystemIF.h FILE_SYSTEM
336 0x420c FILS_DirectoryNotEmpty 12 fsfw/src/fsfw/memory/HasFileSystemIF.h FILE_SYSTEM
337 0x420f FILS_SequencePacketMissingWrite 15 fsfw/src/fsfw/memory/HasFileSystemIF.h FILE_SYSTEM
338 0x4210 FILS_SequencePacketMissingRead 16 fsfw/src/fsfw/memory/HasFileSystemIF.h FILE_SYSTEM
339 0x601 PP_DoItMyself 1 fsfw/src/fsfw/memory/HasMemoryIF.h HAS_MEMORY_IF
340 0x602 PP_PointsToVariable 2 fsfw/src/fsfw/memory/HasMemoryIF.h HAS_MEMORY_IF
341 0x603 PP_PointsToMemory 3 fsfw/src/fsfw/memory/HasMemoryIF.h HAS_MEMORY_IF
342 0x604 PP_ActivityCompleted 4 fsfw/src/fsfw/memory/HasMemoryIF.h HAS_MEMORY_IF
343 0x605 PP_PointsToVectorUint8 5 fsfw/src/fsfw/memory/HasMemoryIF.h HAS_MEMORY_IF
344 0x606 PP_PointsToVectorUint16 6 fsfw/src/fsfw/memory/HasMemoryIF.h HAS_MEMORY_IF
345 0x607 PP_PointsToVectorUint32 7 fsfw/src/fsfw/memory/HasMemoryIF.h HAS_MEMORY_IF
346 0x608 PP_PointsToVectorFloat 8 fsfw/src/fsfw/memory/HasMemoryIF.h HAS_MEMORY_IF
347 0x6a0 PP_DumpNotSupported 0xA0 fsfw/src/fsfw/memory/HasMemoryIF.h HAS_MEMORY_IF
348 0x6e0 PP_InvalidSize 0xE0 fsfw/src/fsfw/memory/HasMemoryIF.h HAS_MEMORY_IF
349 0x6e1 PP_InvalidAddress 0xE1 fsfw/src/fsfw/memory/HasMemoryIF.h HAS_MEMORY_IF
350 0x6e2 PP_InvalidContent 0xE2 fsfw/src/fsfw/memory/HasMemoryIF.h HAS_MEMORY_IF
351 0x6e3 PP_UnalignedAccess 0xE3 fsfw/src/fsfw/memory/HasMemoryIF.h HAS_MEMORY_IF
352 0x6e4 PP_WriteProtected 0xE4 fsfw/src/fsfw/memory/HasMemoryIF.h HAS_MEMORY_IF
353 0x13e0 MH_UnknownCmd 0xE0 fsfw/src/fsfw/memory/MemoryHelper.h MEMORY_HELPER
354 0x13e1 MH_InvalidAddress 0xE1 fsfw/src/fsfw/memory/MemoryHelper.h MEMORY_HELPER
355 0x13e2 MH_InvalidSize 0xE2 fsfw/src/fsfw/memory/MemoryHelper.h MEMORY_HELPER
356 0x13e3 MH_StateMismatch 0xE3 fsfw/src/fsfw/memory/MemoryHelper.h MEMORY_HELPER
357 0x1201 AB_NeedSecondStep 0x01 fsfw/src/fsfw/devicehandlers/AssemblyBase.h ASSEMBLY_BASE
358 0x1202 AB_NeedToReconfigure 0x02 fsfw/src/fsfw/devicehandlers/AssemblyBase.h ASSEMBLY_BASE
359 0x1203 AB_ModeFallback 0x03 fsfw/src/fsfw/devicehandlers/AssemblyBase.h ASSEMBLY_BASE
360 0x1204 AB_ChildNotCommandable 0x04 fsfw/src/fsfw/devicehandlers/AssemblyBase.h ASSEMBLY_BASE
361 0x1205 AB_NeedToChangeHealth 0x05 fsfw/src/fsfw/devicehandlers/AssemblyBase.h ASSEMBLY_BASE
362 0x12a1 AB_NotEnoughChildrenInCorrectState 0xa1 fsfw/src/fsfw/devicehandlers/AssemblyBase.h ASSEMBLY_BASE
363 0x3a0 DHB_InvalidChannel 0xA0 fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h DEVICE_HANDLER_BASE
364 0x3b0 DHB_AperiodicReply 0xB0 fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h DEVICE_HANDLER_BASE
365 0x3b1 DHB_IgnoreReplyData 0xB1 fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h DEVICE_HANDLER_BASE
366 0x3b2 DHB_IgnoreFullPacket 0xB2 fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h DEVICE_HANDLER_BASE
367 0x3c0 DHB_NothingToSend 0xC0 fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h DEVICE_HANDLER_BASE
368 0x3c2 DHB_CommandMapError 0xC2 fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h DEVICE_HANDLER_BASE
369 0x3d0 DHB_NoSwitch 0xD0 fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h DEVICE_HANDLER_BASE
370 0x3e0 DHB_ChildTimeout 0xE0 fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h DEVICE_HANDLER_BASE
371 0x3e1 DHB_SwitchFailed 0xE1 fsfw/src/fsfw/devicehandlers/DeviceHandlerBase.h DEVICE_HANDLER_BASE
372 0x3301 DC_NoReplyReceived 0x01 fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h DEVICE_COMMUNICATION_IF
373 0x3302 DC_ProtocolError 0x02 fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h DEVICE_COMMUNICATION_IF
374 0x3303 DC_Nullpointer 0x03 fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h DEVICE_COMMUNICATION_IF
375 0x3304 DC_InvalidCookieType 0x04 fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h DEVICE_COMMUNICATION_IF
376 0x3305 DC_NotActive 0x05 fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h DEVICE_COMMUNICATION_IF
377 0x3306 DC_TooMuchData 0x06 fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h DEVICE_COMMUNICATION_IF
378 0x26a0 DHI_NoCommandData 0xA0 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
379 0x26a1 DHI_CommandNotSupported 0xA1 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
380 0x26a2 DHI_CommandAlreadySent 0xA2 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
381 0x26a3 DHI_CommandWasNotSent 0xA3 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
382 0x26a4 DHI_CantSwitchAddress 0xA4 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
383 0x26a5 DHI_WrongModeForCommand 0xA5 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
384 0x26a6 DHI_Timeout 0xA6 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
385 0x26a7 DHI_Busy 0xA7 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
386 0x26a8 DHI_NoReplyExpected 0xA8 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
387 0x26a9 DHI_NonOpTemperature 0xA9 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
388 0x26aa DHI_CommandNotImplemented 0xAA fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
389 0x26b0 DHI_ChecksumError 0xB0 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
390 0x26b1 DHI_LengthMissmatch 0xB1 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
391 0x26b2 DHI_InvalidData 0xB2 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
392 0x26b3 DHI_ProtocolError 0xB3 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
393 0x26c0 DHI_DeviceDidNotExecute 0xC0 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
394 0x26c1 DHI_DeviceReportedError 0xC1 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
395 0x26c2 DHI_UnknownDeviceReply 0xC2 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
396 0x26c3 DHI_DeviceReplyInvalid 0xC3 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
397 0x26d0 DHI_InvalidCommandParameter 0xD0 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
398 0x26d1 DHI_InvalidNumberOrLengthOfParameters 0xD1 fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h DEVICE_HANDLER_IF
399 0x1401 SE_BufferTooShort 1 fsfw/src/fsfw/serialize/SerializeIF.h SERIALIZE_IF
400 0x1402 SE_StreamTooShort 2 fsfw/src/fsfw/serialize/SerializeIF.h SERIALIZE_IF
401 0x1403 SE_TooManyElements 3 fsfw/src/fsfw/serialize/SerializeIF.h SERIALIZE_IF

View File

@ -1,4 +0,0 @@
/*
!/*.sh
!/.gitignore

View File

@ -1,3 +0,0 @@
#!/bin/bash
git clone https://github.com/us-irs/spacepackets-py.git

View File

@ -1,3 +0,0 @@
#!/bin/bash
git clone https://github.com/robamu-org/tmtccmd.git

View File

@ -1 +0,0 @@
hello world

Binary file not shown.

View File

@ -1 +1 @@
tmtccmd == 4.0.0a1
tmtccmd == 1.10.1

1
tmtc/spacepackets Submodule

@ -0,0 +1 @@
Subproject commit 464274a91ce31a28e3493a05089fcdbe0bdf285b

View File

@ -1,9 +0,0 @@
{
"com_if": "udp",
"tcpip_tcp_ip_addr": "127.0.0.1",
"tcpip_tcp_port": 7301,
"tcpip_tcp_recv_max_size": 1500,
"tcpip_udp_ip_addr": "127.0.0.1",
"tcpip_udp_port": 7301,
"tcpip_udp_recv_max_size": 1500
}

View File

@ -1,68 +0,0 @@
#!/usr/bin/env python3
"""TMTC commander for FSFW Example"""
import sys
import time
from spacepackets.ecss import PusVerificator
import tmtccmd
from common_tmtc.common import setup_params, setup_tmtc_handlers, setup_backend
from config.hook import FsfwHookBase
from tmtccmd import get_console_logger
from tmtccmd.core import BackendRequest
from tmtccmd.logging.pus import (
RegularTmtcLogWrapper,
RawTmtcTimedLogWrapper,
TimedLogWhen,
)
from tmtccmd.pus import VerificationWrapper
from tmtccmd.util.tmtc_printer import FsfwTmTcPrinter
LOGGER = get_console_logger()
def main():
setup_wrapper = setup_params(FsfwHookBase())
tmtc_logger = RegularTmtcLogWrapper()
printer = FsfwTmTcPrinter(tmtc_logger.logger)
raw_logger = RawTmtcTimedLogWrapper(when=TimedLogWhen.PER_HOUR, interval=2)
pus_verificator = PusVerificator()
verif_wrapper = VerificationWrapper(
console_logger=get_console_logger(),
file_logger=printer.file_logger,
pus_verificator=pus_verificator,
)
ccsds_handler, tc_handler = setup_tmtc_handlers(
verif_wrapper=verif_wrapper, raw_logger=raw_logger, printer=printer
)
tmtccmd.setup(setup_wrapper)
backend = setup_backend(
setup_wrapper=setup_wrapper, ccsds_handler=ccsds_handler, tc_handler=tc_handler
)
try:
while True:
state = backend.periodic_op(None)
tc_handler.cfdp_in_ccsds_wrapper.handler.fsm()
if state.request == BackendRequest.TERMINATION_NO_ERROR:
sys.exit(0)
elif state.request == BackendRequest.DELAY_IDLE:
LOGGER.info("TMTC Client in IDLE mode")
time.sleep(3.0)
elif state.request == BackendRequest.DELAY_LISTENER:
if tc_handler.cfdp_done():
LOGGER.info("CFDP transaction done, closing client")
sys.exit(0)
time.sleep(0.8)
elif state.request == BackendRequest.DELAY_CUSTOM:
if state.next_delay.total_seconds() < 0.5:
time.sleep(state.next_delay.total_seconds())
else:
time.sleep(0.5)
elif state.request == BackendRequest.CALL_NEXT:
pass
except KeyboardInterrupt:
sys.exit(0)
if __name__ == "__main__":
main()

Some files were not shown because too many files have changed in this diff Show More