Commit Graph
100 Commits
Author SHA1 Message Date
muellerr e0c50477cb it actually was an uninitialized array 2022-02-02 10:00:57 +01:00
muellerr 30687f84c8 Merge branch 'mueller/cmd-executor' of https://egit.irs.uni-stuttgart.de/eive/fsfw into mueller/cmd-executor 2022-02-02 09:56:41 +01:00
muellerr fed39defd3 update helper script 2022-02-02 09:56:12 +01:00
muellerr fe95c3337a changed builddir name in Jenkinsfile 2022-01-26 12:28:30 +01:00
muellerr bc5a6b4a51 bump catch2 version to v3.0.0-preview4 2022-01-26 12:23:12 +01:00
muellerr 371ff931bf Linux CommandExecutor
The CommandExecutor helper class can execute shell commands in blocking and non-blocking mode
This class is able to execute processes by using the Linux popen call. It also has the capability of writing
the read output of a process into a provided ring buffer.

The executor works by first loading the command which should be executed and specifying whether
it should be executed blocking or non-blocking. After that, execution can be started with the execute call.

Using non-blocking mode allows to execute commands which might take a longer time in the background,
and allowing the user thread to check completion status with the check function

Moved to HAL like requested in code review and unit tested with failing commands as well.
Also, Linux HAL components are compiled by default now unless explicitely disabled.
2022-01-26 12:11:52 +01:00
muellerr d0c7878da4 simplified test controller and added docs gitignore 2021-12-14 17:50:23 +01:00
muellerr d39e0c8bb6 renamed test folder 2021-12-07 14:08:26 +01:00
muellerr e952a82b65 small tweaks and fixes 2021-12-07 13:14:57 +01:00
muellerr 7a84dff7d6 maybe this fixes the build error? 2021-12-06 16:23:09 +01:00
muellerr 6a6f6011ba Merge branch 'mueller/cfdp-pdus' of https://egit.irs.uni-stuttgart.de/KSat/fsfw into mueller/cfdp-pdus 2021-12-06 16:12:32 +01:00
muellerr 602fa3a956 Merge remote-tracking branch 'upstream/development' into mueller/cfdp-pdus 2021-12-06 16:12:06 +01:00
muellerr cbcfa8fe56 Merge remote-tracking branch 'upstream/development' into mueller/clang-shell-script 2021-12-06 15:06:05 +01:00
muellerr 4a5204d6f6 small fix for helper script 2021-12-06 14:46:31 +01:00
muellerr 5907f8ee9d Added CFDP packet stack
This PR adds the packet stack for the CCSDS File Delivery Protocol.
It also refactors the existing TMTC infastructure to allow sending
of CFDP packets to the CCSDS handlers.

This includes the whole PDU (Protocol Data Unit) stack:

- File Data PDUs

and all file directive PDUs

- ACK PDU
- NAK PDU
- Metadata PDU
- Finished PDU
- Prompt PDU
- Keep Alive PDU
- EOF PDU

The PR includes a full set of unittests for the packet stack
with a coverage of 90+ %.

The refactoring of the existing TMTC infastructure includes non-ideal
solutions like diamond inheritance.
Avoiding this solution would require refactoring the packet stack.
This would be a good idea anyway because the existing stack is tightly
coupled to the FSFW, making reuse more difficult if only the stack is
planned to be used without the store functionalities etc.

The PDU implementation provided here is only weakly coupled to the FSFW,
only using components like returnvalues or the Serialization modules.
There are dedicated serializers and deserializers, which also helps in
creating small focused modules which are easy to test.

Some of the modules here were provied by Matthias Tompert.
2021-12-03 15:37:49 +01:00
muellerr df45f02c39 script fixes, odd behaviour 2021-12-03 14:55:00 +01:00
muellerr 15dddd7fc4 small README section for formatting 2021-12-01 16:17:27 +01:00
muellerr fd7581f8ba Added formatting scripts
1. Added .clang-format file which contains information for the
   clang-format tool on how to format source files
2. Added shell helper script to apply all changes on HAL soures,
   test sources and primary sources

The shell script was not applied yet. This should be done shortly
before introducing the release. Also, it might be good idea to provide
instructions on how to set up the formatter for Eclipse
2021-12-01 16:11:57 +01:00
muellerr 30217aa42b updated SerializeAdapter.h
- Updates `SerializerAdapter` to also take simple pointer and simply assign the serialized and deSerialized size
- Added related unittests
2021-11-10 18:51:56 +01:00
muellerr 0176c07886 use IF instead of void pointer 2021-11-10 18:49:29 +01:00
muellerr 6d5eb5b387 Op Divider and bitutility updates
- Added unittests for `PeriodicOperationDivider` and the `bitutil` helpers
- Some API changes: Removed redundant bit part, because these functions are already in a namespace
- Some bugfixes for `PeriodicOperationDivider`
2021-11-10 18:48:02 +01:00
muellerr 7c855592d0 more cleaning up 2021-10-27 18:12:56 +02:00
muellerr cb7399b999 msp init improvements 2021-10-27 18:12:46 +02:00
muellerr d675621b73 grouping CS gpio definition 2021-10-27 17:32:21 +02:00
muellerr 3448a8c01b SPI ComIF updates
1. Make setting a chip select pin optional
2. Make ComIF member functions public
2021-10-27 17:32:13 +02:00
muellerr 42458725e8 more important fix 2021-10-27 17:10:37 +02:00
muellerr cc7250fcf5 second cmake fix 2021-10-27 17:08:59 +02:00
muellerr 2126e6e375 simplified test task 2021-10-26 17:24:47 +02:00
muellerr 5f8adc63b7 some more fixes for integration tests 2021-10-26 17:16:21 +02:00
muellerr 81bae85825 hotfix for unittests 2021-10-26 17:10:54 +02:00
muellerr 07a0dd5331 this is the correct file 2021-10-22 11:32:28 +02:00
muellerr dc6ed40bfb arrayprinter format improvements 2021-10-22 11:30:00 +02:00
muellerr a5a306ff66 arrayprinter format improvements 2021-10-21 22:36:54 +02:00
muellerr 7694decaaa Merge branch 'mueller/packet-check-printout' of https://egit.irs.uni-stuttgart.de/eive/fsfw into mueller/packet-check-printout 2021-10-17 22:56:28 +02:00
muellerr 113c992f99 use char* instead 2021-10-17 22:56:00 +02:00
muellerr 060b3a3b2c added missing leading * 2021-10-11 17:51:13 +02:00
muellerr 348975ba5f additional coverage excludes 2021-10-11 17:31:04 +02:00
muellerr e8927d6aa8 moved testtemplate and removed user folder 2021-10-11 17:22:54 +02:00
muellerr b2b648c4aa removed obsolete comment 2021-10-11 17:14:30 +02:00
muellerr fc9101cd8f deleted unrequired files, common include deleted 2021-10-11 17:12:42 +02:00
muellerrandmuellerr d2371b3e71 removed unneeded static constexpr 2021-10-11 16:47:57 +02:00
muellerrandmuellerr ffa38a81b7 using pus version enum now 2021-10-11 16:47:37 +02:00
muellerrandmuellerr ae689408f3 using correct version number now 2021-10-11 16:47:28 +02:00
muellerrandmuellerr 155432663b moved store failure to separate function 2021-10-11 16:37:14 +02:00
muellerrandmuellerr ecdbf98ca4 added printouts for PUS A 2021-10-11 16:37:04 +02:00
muellerrandmuellerr 54a6c1b0aa bugfix for PUS A 2021-10-11 16:36:49 +02:00
muellerrandmuellerr 9efe9e78d8 Increased TM stack robustness
1. More nullptr check
2. returnvalue for inititalize function which can fail
2021-10-11 16:36:28 +02:00
muellerr d4bb9397ee better handling for configure files 2021-10-11 16:32:19 +02:00
muellerr bf5590ce26 configure file correction 2021-10-11 16:25:01 +02:00
muellerr 460941c225 tiny tweak 2021-10-11 16:16:49 +02:00
muellerr 3d6f28c48d printouts disable by default 2021-10-11 16:14:30 +02:00
muellerr bb9ae86159 indentation fixes 2021-10-11 16:12:32 +02:00
muellerr 306a4b647f more review corrections 2021-10-11 16:06:12 +02:00
muellerr 19061c3d50 removed obsolete files 2021-10-11 16:04:43 +02:00
muellerr 22dbabba38 removed copy and paste error 2021-10-11 16:01:58 +02:00
muellerr ac8df112b1 small correction 2021-10-11 16:01:14 +02:00
muellerr ad744fb593 README improvement 2021-10-11 15:56:04 +02:00
muellerr 6c75b56054 README update 2021-10-11 15:51:27 +02:00
muellerr fb67df6d7f using testsconfig.h now 2021-10-11 15:45:37 +02:00
muellerr 1b6fa9822b this should work 2021-10-11 15:40:29 +02:00
muellerr 5798aa1e3a create project to suppress warning 2021-10-11 15:09:19 +02:00
muellerr b00f61445d works 2021-10-11 15:07:52 +02:00
muellerr ad117e07e0 FSFW_CONFIG_PATH update 2021-10-11 15:03:03 +02:00
muellerr c26c2a5a96 hardcoding config path 2021-10-11 14:56:42 +02:00
muellerr e02ac05097 fixed a bug for default cfg path 2021-10-11 13:57:00 +02:00
muellerr a827ec6a92 removed another include 2021-10-11 13:51:08 +02:00
muellerr 12321a5d49 Merge branch 'mueller/integrated-unittests' of https://egit.irs.uni-stuttgart.de/KSat/fsfw into mueller/integrated-unittests 2021-10-11 13:48:28 +02:00
muellerr ad3238aa19 removed problematic includes 2021-10-11 13:48:17 +02:00
muellerr dd1631a456 updated CMakeLists.txt
- More information about FSFW build
2021-10-07 14:20:34 +02:00
muellerr cd6d616806 using .h.in version fle now 2021-10-07 13:26:31 +02:00
muellerr ade15ad16d tests can now be built as part of FSFW
This PR refactores the tests so they are built as part of the FSFW.
This is done by adding Catch2 with the FetchContent directive.

A future implementation might also use a system installation of Catch2
by first checking whether Catch2 can already be found as a package

The custom configuration folder testcfg was moved from the user folder
to the actual unittest folder.

The tests can be built by setting the CMake FSFW_BUILD_UNITTESTS option
to TRUE/ON. They are built with the static library and dropped inside
the build folders fsfw directory.
2021-10-07 13:24:46 +02:00
muellerr 76416f523d better naming for parameter 2021-10-07 10:44:44 +02:00
muellerr 5749e159e4 minor updates for PUS services 2021-10-07 10:39:16 +02:00
muellerr f2d0a0d9ee Merge branch 'mueller/dle-possible-bugfix' of https://egit.irs.uni-stuttgart.de/fsfw/fsfw into mueller/dle-possible-bugfix 2021-10-04 14:38:51 +02:00
muellerr 2439613f21 preserve STX char 2021-10-04 14:38:46 +02:00
muellerr afb472996c refactoring, code more understandable 2021-09-30 16:51:07 +02:00
muellerr f76f462022 test added 2021-09-30 11:27:14 +02:00
muellerr 0f90d50065 Merge remote-tracking branch 'origin/development' into mueller/dle-possible-bugfix 2021-09-30 11:27:07 +02:00
muellerr b0cbd40e64 possible bugfix for DLE encoder 2021-09-30 11:25:42 +02:00
muellerr 65f4433fad Merge remote-tracking branch 'origin/development' into mueller/fsfw-default-value-pus-c-cfg 2021-09-29 12:07:06 +02:00
muellerr febe3cc4d4 define fix 2021-09-29 12:05:24 +02:00
muellerr f388878b99 added more defines 2021-09-29 12:05:15 +02:00
muellerr faa7e1e24f default values for PUS c config 2021-09-29 12:00:59 +02:00
muellerr 9002c12cf1 update FSFW.h.in 2021-09-29 11:55:20 +02:00
muellerr 42b5f8a79d small fix for DLE unittest 2021-09-29 11:49:45 +02:00
muellerr 0a6a32a130 printout separation 2021-09-29 11:45:20 +02:00
muellerr 32b5060c62 all windows fixes 2021-09-28 17:28:54 +02:00
muellerr 358ee0fbf2 removed C++14 featue 2021-09-28 15:47:12 +02:00
muellerr 4f08b2d342 removed include 2021-09-28 15:47:01 +02:00
muellerr 42df77ff32 check for empty PST
and return appropriate returnvalue
2021-09-27 11:16:27 +02:00
muellerr 85c04dee23 increase limit of packets stored 2021-09-27 11:12:38 +02:00
muellerr 0246dccbe9 Merge remote-tracking branch 'upstream/development' into mueller/spi-fix 2021-09-27 09:52:49 +02:00
muellerr dae27a8e10 indentation 2021-09-11 19:22:51 +02:00
muellerr d36d849e69 removed part which is now not necessary anymore 2021-09-11 19:21:21 +02:00
muellerr 7c7a8a5df7 added improvements from code review 2021-09-11 19:18:18 +02:00
muellerr 134deb3f43 renamed function 2021-09-11 17:43:58 +02:00
muellerr 11a3c8c21f added option to disable it as well 2021-09-11 17:42:29 +02:00
muellerr c9bfc8464a added function to enable periodic reply 2021-09-11 17:39:42 +02:00
muellerr ea573b0523 a few more tests with faulty source data 2021-09-09 11:12:42 +02:00
muellerr 3d336c08f2 tests almost complete 2021-09-09 10:47:54 +02:00