Compare commits

..

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

103 changed files with 1923 additions and 3073 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,17 +52,8 @@ 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
If you need to set up these prerequisites, you can find some more information in the dedicated
[chapter](#prereqsetup).
1. Makefile build: make installed (bundled with MSYS2 on Windows or via [xPacks Windows Build Tools](https://xpack.github.io/windows-build-tools/install/)). Natively installed on Linux.
2. Recommended for application code development: [Eclipse for C/C++](https://www.eclipse.org/downloads/packages/) .
Project files and launch configuration are provided for Eclipse to ease development.
@ -71,28 +62,6 @@ If you need to set up these prerequisites, you can find some more information in
4. Recommended: Python 3 and [just](https://github.com/casey/just) installed for easy build
generation
## Commanding the Software
When the software is running, it opens a TCP oder UDP server, depending on the configuration,
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
```sh
cd tmtc
python3 -m venv venv
cd deps/tmtccmd
pip install .[gui]
```
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.
## <a id="prereqsetup"></a> Setting up Prerequisites
### Windows - MinGW64 build
1. [MSYS2 and MinGW64](https://www.msys2.org/) installed
@ -174,8 +143,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 +175,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` .
@ -231,15 +200,11 @@ as well to have a convenient way to configure the CMake build.
## Setting up Eclipse for CMake projects
The separate [Eclipse README](https://egit.irs.uni-stuttgart.de/fsfw/fsfw-example-common/src/branch/master/doc/README-eclipse.md)
specifies how to set up Eclipse to build CMake
The separate [Eclipse README](https://egit.irs.uni-stuttgart.de/fsfw/fsfw-example-common/src/branch/master/doc/README-eclipse.md) specifies how to set up Eclipse to build CMake
projects. Separate project files and launch configurations for the MinGW build were provided.
The debug output is colored by default. It is recommended to install the
`ANSI Escape in Console` plugin in Eclipse so the coloring works in the Eclipse console.
**Windows**
On Windows, it is recommended to run the applicaton with the Windows command line for the printout
to work
`ANSI Escape in Console` plugin in Eclipse so the coloring works in the Eclipse console. On Windows,
it is recommended to run the applicaton with the Windows command line for the printout to work
properly. You can do this by simply double-clicking the binary or using `start <Exe>` in the
Windows command line

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,311 @@
#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
TaskFactory::delayTask(5000);
CommandMessage modeMessage;
ModeMessage::setModeMessage(&modeMessage, ModeMessage::CMD_MODE_COMMAND,
DeviceHandlerIF::MODE_NORMAL, TestAssembly::submodes::DUAL);
#if FSFW_CPP_OSTREAM_ENABLED == 1
sif::info << "Commanding Test Assembly to Normal, Dual" << std::endl;
#else
sif::printInfo("Commanding Test Assembly to Normal, Dual \n");
#endif
MessageQueueSenderIF::sendMessage(assembly->getCommandQueue(), &modeMessage,
MessageQueueIF::NO_QUEUE);
#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 f193608c3882d82f91af67747f34b96d6de938c7

2
fsfw

@ -1 +1 @@
Subproject commit bf311757a2fefd66955c9450a4377934b57be411
Subproject commit ab7117d81eacdb2f1a62c9436b756b010756978b

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

@ -1,24 +0,0 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="CMD Assemly to Normal" type="PythonConfigurationType" factoryName="Python" folderName="FSFW">
<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 200 -o asm_to_normal -t 6 -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

@ -1,5 +1,5 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="PUS Srv3 One HK" type="PythonConfigurationType" factoryName="Python" folderName="PUS">
<configuration default="false" name="PUS 3 One HK" type="PythonConfigurationType" factoryName="Python" folderName="PUS">
<module name="tmtc" />
<option name="INTERPRETER_OPTIONS" value="" />
<option name="PARENT_ENVS" value="true" />
@ -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$/tmtc_client_cli.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

@ -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,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$/tmtc_client_cli.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

@ -1,24 +0,0 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="TMTC GUI" 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="-g" />
<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,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$/tmtc_client_cli.py" />
<option name="PARAMETERS" value="-h" />
<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

@ -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,5 +1,5 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="PUS Ping" type="PythonConfigurationType" factoryName="Python" folderName="PUS">
<configuration default="false" name="TMTC PUS 17 Generic" type="PythonConfigurationType" factoryName="Python" folderName="PUS">
<module name="tmtc" />
<option name="INTERPRETER_OPTIONS" value="" />
<option name="PARENT_ENVS" value="true" />
@ -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$/tmtc_client_cli.py" />
<option name="PARAMETERS" value="-s 17 -o 1 -l" />
<option name="SHOW_COMMAND_LINE" value="false" />
<option name="EMULATE_TERMINAL" value="false" />
<option name="MODULE_MODE" value="false" />

View File

@ -1,5 +1,5 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="PUS Mode Test" type="PythonConfigurationType" factoryName="Python" folderName="PUS">
<configuration default="false" name="TMTC PUS 17 Ping" type="PythonConfigurationType" factoryName="Python" folderName="PUS">
<module name="tmtc" />
<option name="INTERPRETER_OPTIONS" value="" />
<option name="PARENT_ENVS" value="true" />
@ -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 200 -o test -l" />
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/tmtc_client_cli.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,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 99ca187b50ad9cd6ee1ba4bcbf9db981bed653ae

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 +0,0 @@
tmtccmd == 4.0.0a1

1
tmtc/spacepackets Submodule

@ -0,0 +1 @@
Subproject commit 38d74744a759a0a89d5edf5155b95728ca96b3d2

59
tmtc/tmtc_client_cli.py Executable file
View File

@ -0,0 +1,59 @@
#!/usr/bin/env python3
"""
@brief TMTC Commander entry point for command line mode.
@details
This client was developed by KSat for the SOURCE project to test the on-board software but
has evolved into a more generic tool for satellite developers to perform TMTC (Telemetry and Telecommand)
handling and testing via different communication interfaces. Currently, only the PUS standard is
implemented as a packet standard.
Run this file with the -h flag to display options.
@license
Copyright 2020 KSat e.V. Stuttgart
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
https://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
@author R. Mueller
"""
import sys
from spacepackets.log import set_custom_console_logger_name
from common_tmtc.config.hook_implementation import FsfwHookBase
from common_tmtc.config.definitions import PUS_APID
from common_tmtc.pus_tm.factory_hook import ccsds_tm_handler
try:
from tmtccmd.runner import run_tmtc_commander, initialize_tmtc_commander, add_ccsds_handler
from tmtccmd.ccsds.handler import CcsdsTmHandler
from tmtccmd.utility.logger import TMTC_LOGGER_NAME
except ImportError as error:
run_tmtc_commander = None
initialize_tmtc_commander = None
print(error)
print("Python tmtccmd submodule could not be imported")
print("Install with \"cd tmtccmd && python3 -m pip install -e .\" for interactive installation")
sys.exit(0)
def main():
hook_obj = FsfwHookBase()
initialize_tmtc_commander(hook_object=hook_obj)
ccsds_handler = CcsdsTmHandler()
ccsds_handler.add_tm_handler(apid=PUS_APID, pus_tm_handler=ccsds_tm_handler, max_queue_len=50)
add_ccsds_handler(ccsds_handler)
set_custom_console_logger_name(TMTC_LOGGER_NAME)
run_tmtc_commander(use_gui=False, app_name="TMTC Commander FSFW")
if __name__ == "__main__":
main()

56
tmtc/tmtc_client_gui.py Normal file
View File

@ -0,0 +1,56 @@
#!/usr/bin/env python3
"""
@brief TMTC Commander entry point for command line mode.
@details
This client was developed by KSat for the SOURCE project to test the on-board software but
has evolved into a more generic tool for satellite developers to perform TMTC (Telemetry and Telecommand)
handling and testing via different communication interfaces. Currently, only the PUS standard is
implemented as a packet standard.
Run this file with the -h flag to display options.
@license
Copyright 2020 KSat e.V. Stuttgart
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
https://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
@author R. Mueller
"""
import sys
from common_tmtc.config.hook_implementation import FsfwHookBase
from common_tmtc.config.definitions import PUS_APID
from common_tmtc.pus_tm.factory_hook import ccsds_tm_handler
try:
from tmtccmd.runner import run_tmtc_commander, initialize_tmtc_commander, add_ccsds_handler
from tmtccmd.ccsds.handler import CcsdsTmHandler
except ImportError as error:
run_tmtc_commander = None
initialize_tmtc_commander = None
print(error)
print("Python tmtccmd submodule could not be imported")
print("Install with \"cd tmtccmd && python3 -m pip install -e .\" for interactive installation")
sys.exit(0)
def main():
hook_obj = FsfwHookBase()
initialize_tmtc_commander(hook_object=hook_obj)
ccsds_handler = CcsdsTmHandler()
ccsds_handler.add_tm_handler(apid=PUS_APID, pus_tm_handler=ccsds_tm_handler, max_queue_len=50)
add_ccsds_handler(ccsds_handler)
run_tmtc_commander(use_gui=True, app_name="TMTC Commander FSFW")
if __name__ == "__main__":
main()

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