Compare commits

...

2214 Commits

Author SHA1 Message Date
fafec82908 auto-formatter
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-12-06 13:35:37 +01:00
2aca517f71 Merge pull request 'SCEX is back!' (#831) from scex-back-in-the-house into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #831
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-12-06 12:09:35 +01:00
0931d0ebac it works
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-12-06 11:54:28 +01:00
263ac1f663 wtf is this 2023-12-06 11:44:28 +01:00
7d54ecaee3 small CMake fix
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-12-06 11:36:35 +01:00
3294cc85fc bump patch version
Some checks failed
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-12-06 11:33:13 +01:00
ddeb9d37bd it's back! 2023-12-06 11:31:39 +01:00
fa727b1e44 bump tmtc to v5.11.0
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-11-30 15:47:12 +01:00
cdfdb9a053 Merge pull request 'prep v7.4.0' (#830) from prep_v7.4.0 into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #830
2023-11-30 15:45:28 +01:00
325a6ff70b prep v7.4.0
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-30 15:20:50 +01:00
bbcb10c2d9 Merge pull request 'run afmt, re-run generators' (#829) from afmt-generators into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-main This commit looks good
Reviewed-on: #829
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-11-29 15:49:46 +01:00
89b6a2de2d run afmt, re-run generators
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-29 15:15:29 +01:00
4d21d2761f Merge pull request 'Disable Order Check PL PCDU' (#825) from disable-order-check-plpcdu into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #825
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-11-29 15:13:57 +01:00
e1e8b525b3 Merge branch 'main' into disable-order-check-plpcdu
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build queued...
2023-11-29 15:13:37 +01:00
64cb3c6a6c Merge pull request 'revert some changes in com IF' (#826) from revert-str-com-if-changes into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #826
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-11-29 15:13:27 +01:00
faf213d3b8 Merge branch 'main' into revert-str-com-if-changes
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build queued...
2023-11-29 15:13:19 +01:00
a5bbc33e1c Merge pull request 'bugfix for virt channel: clear invalid state' (#827) from virt-channel-bugfix into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #827
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-11-29 15:13:07 +01:00
d553afcc5b Merge branch 'main' into revert-str-com-if-changes
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-29 14:57:05 +01:00
6b6793d93f Merge remote-tracking branch 'origin/main' into disable-order-check-plpcdu
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-29 14:56:44 +01:00
30964a9648 Merge remote-tracking branch 'origin/main' into virt-channel-bugfix
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-29 14:52:40 +01:00
66d4fa1806 Merge pull request 'PLOC SUPV extensions' (#821) from ploc-supv-extensions into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #821
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-11-29 14:52:08 +01:00
210ee7b6d9 Merge remote-tracking branch 'origin/main' into ploc-supv-extensions
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-29 14:24:01 +01:00
8c1e7ae418 bump fsfw and tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-29 14:23:29 +01:00
2fd30a2f38 Merge remote-tracking branch 'origin/main' into virt-channel-bugfix
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-29 14:21:40 +01:00
f23debceac Merge pull request 'Persistent TM store delete time range' (#823) from persistent-tm-store-delete-time-range into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #823
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-11-29 14:20:41 +01:00
e6278c7a23 Merge remote-tracking branch 'origin/main' into ploc-supv-extensions
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-29 14:18:12 +01:00
178da2fec1 changelog update
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-29 14:17:17 +01:00
5bad2a46a8 Merge remote-tracking branch 'origin/main' into persistent-tm-store-delete-time-range
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-29 14:11:19 +01:00
edf7b5325d Merge pull request 'Variable STR CFG path' (#824) from str-variable-cfg-path-q7s into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #824
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-11-29 14:09:08 +01:00
14e545618c typo
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-28 15:42:36 +01:00
f92642623e update changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-28 15:38:57 +01:00
5714abda10 remove duplicate constants 2023-11-28 15:37:25 +01:00
a765e67b53 remove some printouts
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-28 15:32:08 +01:00
112fa2b8ff important bugfix 2023-11-28 15:31:37 +01:00
b987566947 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-27 15:41:58 +01:00
f321d7f0b6 bump tmtc again
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-27 12:20:14 +01:00
aef8db62b1 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-27 12:19:00 +01:00
b0f81d1cce this should fix the param setting
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-27 12:04:55 +01:00
c0b4761ba0 smaller bugfixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-27 11:22:23 +01:00
9e31c06563 changelog update
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-23 17:47:44 +01:00
ef948af5f3 small possible fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-23 17:22:36 +01:00
352043cb51 printout improvements 2023-11-23 17:20:55 +01:00
314df7a021 bugfix for virt channel: clear invalid state
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-23 16:48:40 +01:00
b7ff78712c revert some changes in com IF
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-23 13:18:05 +01:00
fa21790003 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-21 17:49:08 +01:00
66619909a6 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-21 17:44:51 +01:00
3a76e24fc2 dsable debug flag
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-21 17:43:17 +01:00
8b5ca26cf1 bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-21 17:40:25 +01:00
73ed59928e check TM before normal periodic OP
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-11-21 17:37:26 +01:00
1176c4397d more bugfixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-21 17:20:41 +01:00
b1ddf1d4fd clear active action cmds on OFF mode
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-21 16:49:37 +01:00
19594bc173 update generated files
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-21 16:45:35 +01:00
a07018bdd4 clear debug flag
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-21 16:36:36 +01:00
92bae9049f decline commands in wrong mode
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-21 16:35:34 +01:00
1aef8b6973 bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-21 15:26:21 +01:00
518b265b4a remove the printouts, done
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-21 15:22:24 +01:00
cdad099f32 PLEASE WORK 2023-11-21 14:54:21 +01:00
f9d2d35f86 this is stupid
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-21 14:34:15 +01:00
a648b4be37 better thread and startup handling 2023-11-21 14:17:19 +01:00
8c51f53a26 bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-21 12:55:05 +01:00
bd383cfe04 bugfix
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-21 12:54:36 +01:00
949401e247 less trashy mode checker
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-21 12:51:39 +01:00
ed8f2c75bf this should do the job
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-21 11:28:08 +01:00
5348188f6b changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-16 17:11:19 +01:00
9010d1d202 add new command to reload the JSON file
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-16 17:07:47 +01:00
3be9cae8a5 variable cfg path
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-16 16:57:36 +01:00
699cbb98cc add additional allowed subservice
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-16 11:01:56 +01:00
05d6025dcc bsp hosted fixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-15 15:41:51 +01:00
457acc3bdb improve structure
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-15 15:27:12 +01:00
f0536a9d77 this should do the job
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-15 15:21:00 +01:00
cae76e17f5 more improvements and bugfixes
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-11-15 14:38:09 +01:00
0e6d2dc79b this should work better
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-11-15 14:17:43 +01:00
03a6a06e48 some more improvements
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-11-15 11:46:08 +01:00
14813441dc bump fsfw
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-11-15 11:39:16 +01:00
e8bb8fd8f0 cleaning up
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-11-15 11:33:53 +01:00
bd74b95ffd on and normal mode finally work
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-11-15 11:31:57 +01:00
193c45ee33 another small fix 2023-11-15 08:48:31 +01:00
4f6a594707 OOPS
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-11-14 18:37:09 +01:00
3898e2d66f almost there.. I think
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-11-14 18:20:52 +01:00
2563432171 somethings wrong
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-11-14 15:28:27 +01:00
bb20def961 Added new payload PST
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-11-14 13:25:53 +01:00
bd4449d7dd Fresh Supv handler
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-11-14 11:49:13 +01:00
e41e2e62e0 rewrite almost done
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-11-13 16:32:40 +01:00
8714948788 this is what device handler writing should have been
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-11-13 15:43:32 +01:00
134073fd84 continue PLOC SUPV
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-11-13 15:33:11 +01:00
94f654de53 Merge branch 'ploc-supv-extensions' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into ploc-supv-extensions
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-13 11:40:18 +01:00
53a743f19f continue ploc supv 2023-11-13 11:39:13 +01:00
876bde16e2 looking good
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-09 17:19:28 +01:00
42cc9c0fa8 add required fields
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-09 11:57:49 +01:00
bdf6baa9fc start adding data pool stuff
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-11-09 11:44:00 +01:00
92071b8e0e first structure
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-09 11:35:28 +01:00
2d686b3a26 come on indexer, do sth
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-09 11:11:47 +01:00
5be3af3515 robustness changes
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-08 18:49:57 +01:00
6ae9e12cf9 what is going on with that thing?
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-08 18:43:11 +01:00
d8e0f9ffce stupid
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-08 18:19:24 +01:00
b623f01bea PLOC SUPV extensions
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-08 10:46:59 +01:00
49a87224e7 changelog update
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-07 09:13:21 +01:00
5862c1bb40 auto-formatter 2023-11-07 09:12:44 +01:00
6380a1def3 Merge pull request 'v7.3.0' (#820) from prep_v7.3.0 into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #820
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-11-07 09:11:46 +01:00
3fe2c44955 Merge branch 'main' into prep_v7.3.0
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-06 15:36:04 +01:00
366a447b22 Merge pull request 'always add PLOC code' (#819) from always-add-ploc-code into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #819
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-11-06 15:34:57 +01:00
93c5e542bd bump release date
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-06 14:44:01 +01:00
4986955a0f bump changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-11-06 14:43:31 +01:00
b081766829 always add PLOC code
Some checks failed
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-11-06 14:37:13 +01:00
3158f2341c update version number
Some checks failed
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-10-30 16:11:51 +01:00
c11867323c changelog 2023-10-30 16:11:36 +01:00
43af25891c Merge pull request 'Change PDEC addresses' (#813) from pdec-changed-addrs into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #813
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-10-30 15:54:37 +01:00
15f3a2ce42 Merge branch 'main' into pdec-changed-addrs
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-30 15:02:34 +01:00
872215ce61 Merge pull request 'PLOC SUPV debug mode' (#815) from ploc-supv-debug-mode into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #815
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-10-30 14:57:33 +01:00
e45f9899ff changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-30 14:46:46 +01:00
b2791bb7db Merge remote-tracking branch 'origin/main' into pdec-changed-addrs
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-30 14:44:01 +01:00
2b1ed2be53 Merge remote-tracking branch 'origin/main' into ploc-supv-debug-mode
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-30 14:43:44 +01:00
3e5b9d6650 Merge pull request 'Prep v7.2.0' (#816) from prep_v7.2.0 into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #816
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-10-30 13:13:31 +01:00
37853f8fe2 Merge branch 'main' into prep_v7.2.0
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-30 10:32:12 +01:00
bd60246f9a Merge pull request 'Update Internal Resistance' (#817) from update-internal-resistance into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #817
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2023-10-30 10:32:04 +01:00
a2090448ff changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-30 08:52:18 +01:00
ad6fa66daf update internal resistance
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-27 15:37:45 +02:00
647a394150 eive-tmtc version
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-27 15:04:11 +02:00
dca6cade11 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-27 15:03:02 +02:00
43e981dfed prep v7.2.0
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-27 14:24:59 +02:00
49b2bef8f4 Merge pull request 'PL PCDU JSON update' (#812) from plpcdu-json-file-update into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #812
2023-10-27 14:17:06 +02:00
0c778b66f9 Merge pull request 'Reduce SUS FDIR Events' (#806) from sus-fdir-reduce-events into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #806
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2023-10-27 14:16:46 +02:00
68763e327b Merge remote-tracking branch 'origin/main' into plpcdu-json-file-update
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-27 14:05:45 +02:00
3c55a07404 Merge branch 'main' into sus-fdir-reduce-events
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-27 14:05:05 +02:00
2e7a1c1cb5 Merge pull request 'Swap RTD9 and RTD11 chip selects' (#814) from swap-rtd-9-and-11 into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #814
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-10-27 14:00:14 +02:00
febb36f0eb Merge branch 'main' into swap-rtd-9-and-11
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-27 13:50:28 +02:00
1ba1946728 Merge pull request 'STR extensions' (#798) from str-extensions into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #798
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-10-27 13:50:12 +02:00
d2b5384f05 make marius happy
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-27 12:54:32 +02:00
5a67ce56aa changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-27 12:43:32 +02:00
65bb860fb2 Merge branch 'main' into sus-fdir-reduce-events
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-27 12:39:39 +02:00
6459a945ea Merge remote-tracking branch 'origin/main' into plpcdu-json-file-update
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-27 12:35:55 +02:00
b30c85866f Merge remote-tracking branch 'origin/main' into swap-rtd-9-and-11
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-27 12:34:52 +02:00
a877edf40b bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-27 12:34:33 +02:00
656c69f858 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-27 12:32:59 +02:00
db582febb7 Merge remote-tracking branch 'origin/main' into str-extensions 2023-10-27 12:32:49 +02:00
c48f0678f1 Merge pull request 'Added CFDP fault handler events' (#809) from cfdp-fault-handler-event into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #809
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-10-27 12:32:17 +02:00
dcdceba07e wrapping up
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-27 12:17:54 +02:00
f8eb4fdd6f add contrast set
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-27 11:24:51 +02:00
964d47b909 bugfix for reset function
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-27 09:59:15 +02:00
35e7fba576 smoll fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-27 09:50:40 +02:00
44d9541e52 Merge branch 'main' into sus-fdir-reduce-events 2023-10-27 09:41:50 +02:00
0beac793a1 some more important bugfixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-26 20:45:36 +02:00
1c7545bffa fix 2023-10-26 19:59:16 +02:00
599ff256ff Merge remote-tracking branch 'origin/main' into str-extensions 2023-10-26 19:18:28 +02:00
be9d00be04 Merge remote-tracking branch 'origin/main' into cfdp-fault-handler-event
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-26 13:46:11 +02:00
c06cd710cf Merge remote-tracking branch 'origin/main' into swap-rtd-9-and-11
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-26 13:45:10 +02:00
02fcd0c423 disable printout mode
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-26 13:42:27 +02:00
27d6760322 add optional printout mode for PLOC SUPV 2023-10-26 13:41:52 +02:00
534ddde9e8 ploc supv debug mode
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-10-26 11:19:21 +02:00
54c2fc9646 validity handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-26 09:52:25 +02:00
1e284463ac Merge pull request 'State of Charge FDIR improvements' (#810) from eive-system-fdir into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #810
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-10-26 09:36:47 +02:00
7c765d037b compile fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-25 18:17:51 +02:00
ef2e62e418 changelog clarification
Some checks failed
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-10-25 17:51:41 +02:00
b7e33ebcb6 changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-10-25 17:49:31 +02:00
93e3f3578d swap RTDs 2023-10-25 17:48:28 +02:00
f8d4eb04a5 slight improvement
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-25 17:47:51 +02:00
c784d1251b remove old code
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-25 09:54:29 +02:00
d5ca0f9f5e should not delete that
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-25 09:45:16 +02:00
94f3d89f7b smaller tweak
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-25 09:11:45 +02:00
817182b45f finished addr change
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-25 09:10:04 +02:00
f55b475f7e add new addrs
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-10-25 08:23:36 +02:00
ec903abd49 pdec handler start addr change
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-10-24 15:00:10 +02:00
70747e1864 bump PL PCDU handler
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-23 17:28:20 +02:00
c67a9fa2c2 this might be a bugfix
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-10-23 17:10:37 +02:00
3e5fae4458 Merge remote-tracking branch 'origin/main' into str-extensions
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-23 13:53:01 +02:00
feb6459878 might wanna push this
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-19 14:54:12 +02:00
1f203e9f76 improvements for SoC FDIR
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-19 14:20:40 +02:00
f4abb3fed6 instructions unclear, wrote a whole state machine
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-19 13:42:54 +02:00
3d04fb05ee updated obj ID
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-19 11:29:52 +02:00
7906274204 obj ID fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-19 11:29:23 +02:00
0854ec878b added CFDP fault handler events
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-19 11:27:21 +02:00
4ee84c0a78 Merge pull request 'CFDP source handler' (#776) from cfdp-source-handler into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #776
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-10-19 11:11:29 +02:00
fc626a2ad6 bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-19 11:05:07 +02:00
4295b6b987 Merge branch 'main' into str-extensions
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-19 09:37:26 +02:00
440375e64b add cmd 2023-10-19 09:37:01 +02:00
58d9678613 woops 2023-10-19 09:32:21 +02:00
12909cb3b9 now for the fun part
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-10-19 09:26:28 +02:00
b3f9a82064 changelog update
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-18 18:16:32 +02:00
09aa5b9e1b Merge pull request 'CFDP Source Handler Tweaks' (#808) from cfdp-source-handler-testing into cfdp-source-handler
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
Reviewed-on: #808
2023-10-18 18:14:57 +02:00
ca33e2987f disable debugging
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-cfdp-source-handler Build queued...
2023-10-18 18:14:02 +02:00
aa47881cec this is sufficient to sustain even the high rate
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-10-18 18:11:56 +02:00
6e3a60f9c5 fine tweaking
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-10-18 17:24:44 +02:00
e911d8b13e i guess we do this
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-18 16:15:33 +02:00
0f4fd6b452 auto blob
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-18 16:09:36 +02:00
d1ee938ade store still not large enough? 2023-10-18 16:07:00 +02:00
07ddaa2692 Merge pull request 'more testing' (#807) from cfdp-source-handler-testing into cfdp-source-handler
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
Reviewed-on: #807
2023-10-18 15:38:46 +02:00
8b6fa63c60 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-18 14:29:33 +02:00
696d8e4e4c threw out other debug output
All checks were successful
EIVE/eive-obsw/pipeline/pr-cfdp-source-handler This commit looks good
2023-10-18 14:12:16 +02:00
978dd4a1de larger size
All checks were successful
EIVE/eive-obsw/pipeline/pr-cfdp-source-handler This commit looks good
2023-10-18 14:10:57 +02:00
be6d52ff4a throw out stuff
All checks were successful
EIVE/eive-obsw/pipeline/pr-cfdp-source-handler This commit looks good
2023-10-18 14:07:33 +02:00
665b7d95f7 actually lets keep this
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-18 13:35:18 +02:00
c139457661 reduce sus fdir events
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-18 13:32:09 +02:00
ace75919ca more testing
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-cfdp-source-handler This commit looks good
2023-10-18 12:24:22 +02:00
e194071936 Merge remote-tracking branch 'origin/main' into cfdp-source-handler
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-17 10:47:53 +02:00
0f6d33e9f8 Merge pull request 'MPSoC robustness tweaks and debug mode' (#805) from mpsoc-debug-mode into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #805
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-10-17 09:48:51 +02:00
043d259fe4 Merge branch 'main' into mpsoc-debug-mode
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-17 09:05:10 +02:00
b0f047d76e Merge pull request 'Small bugfix for Power CTRL set handling' (#804) from power-ctrl-custom-tranisition into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #804
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-10-16 16:38:58 +02:00
a66004044a Merge remote-tracking branch 'origin/main' into str-extensions
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-16 15:45:57 +02:00
c268977b3d changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-16 15:30:17 +02:00
718277da28 remove dcommented code
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-16 15:18:32 +02:00
31bf896a6c disable debug mode
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-16 15:06:02 +02:00
d1f7b92eaa Merge branch 'power-ctrl-custom-tranisition' into mpsoc-debug-mode
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-16 14:47:01 +02:00
aaf99b52b4 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-16 14:46:45 +02:00
0ada956285 some more debugging
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-10-16 14:46:02 +02:00
f4c82d4a1b Merge branch 'power-ctrl-custom-tranisition' into mpsoc-debug-mode 2023-10-16 14:45:44 +02:00
b8e7363744 mpsoc debug opt
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-10-16 14:36:30 +02:00
f0cafedda7 this is better
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-16 14:10:51 +02:00
04c081f4aa transition
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-10-16 13:52:56 +02:00
ffba0b371c added another fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-13 17:28:31 +02:00
0f5f147b8d changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-13 17:12:35 +02:00
471d2c5b85 Merge pull request 'CFDP Source Handler Testing' (#803) from cfdp-source-handler-testing into cfdp-source-handler
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
Reviewed-on: #803
2023-10-13 17:10:43 +02:00
c5c9692ded lets leave it like this.
Some checks are pending
EIVE/eive-obsw/pipeline/pr-cfdp-source-handler Build started...
2023-10-13 17:09:50 +02:00
f14d792658 this should work as well now
All checks were successful
EIVE/eive-obsw/pipeline/pr-cfdp-source-handler This commit looks good
2023-10-13 16:56:10 +02:00
d486c04634 better docs
All checks were successful
EIVE/eive-obsw/pipeline/pr-cfdp-source-handler This commit looks good
2023-10-13 16:55:19 +02:00
ce60a639ce small tweak
All checks were successful
EIVE/eive-obsw/pipeline/pr-cfdp-source-handler This commit looks good
2023-10-13 16:48:43 +02:00
6c4149571d debug flags
All checks were successful
EIVE/eive-obsw/pipeline/pr-cfdp-source-handler This commit looks good
2023-10-13 16:47:16 +02:00
e7709b7091 this is even better
All checks were successful
EIVE/eive-obsw/pipeline/pr-cfdp-source-handler This commit looks good
2023-10-13 16:42:13 +02:00
a47ad98d90 delete some old code
All checks were successful
EIVE/eive-obsw/pipeline/pr-cfdp-source-handler This commit looks good
2023-10-13 16:29:02 +02:00
2f25ac8e7d remove old printouts
All checks were successful
EIVE/eive-obsw/pipeline/pr-cfdp-source-handler This commit looks good
2023-10-13 16:25:40 +02:00
b8beddc11b gens
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-cfdp-source-handler This commit looks good
2023-10-13 15:24:06 +02:00
4431883b4d okay, PAPB IF caches packet now 2023-10-13 15:10:52 +02:00
2279eab5e7 maybe this works better?
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-10-13 14:20:50 +02:00
be1fb22e39 somethings wrong, i can feel it 2023-10-13 14:00:44 +02:00
c95964ce0f lets see if this works better
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-10-13 13:21:28 +02:00
5bcd171108 lot of debugging and trying out
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2023-10-13 11:42:13 +02:00
9f600a24ff refactored throttle handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-13 10:57:58 +02:00
031be000d4 printout correction
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-13 10:04:03 +02:00
5bc468f13f Merge branch 'refactor-fix-ptme' into cfdp-source-handler
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-10-13 09:45:21 +02:00
8dbc5cad48 more bugfixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2023-10-13 09:39:50 +02:00
7c42e05c23 wait duration fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-13 09:29:57 +02:00
99192606a2 bugfixes for PAPB IF
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-13 09:27:24 +02:00
ffe1281eb9 fix PTME
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-10-13 09:20:51 +02:00
8f4c9b272c important bugfix for SSC field
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-12 18:26:55 +02:00
433373e6b7 Merge pull request 'Xiphos WDT' (#797) from add-xiphos-wdt-handling into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #797
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-10-11 19:49:59 +02:00
ebe67a38a9 bump minor version
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build started...
2023-10-11 19:49:24 +02:00
bb4e495199 changelog correcion
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-11 19:40:16 +02:00
c35fe58b15 Merge remote-tracking branch 'origin/main' into add-xiphos-wdt-handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-11 19:38:09 +02:00
62305ec39b bump tmtc 2023-10-11 19:38:03 +02:00
867d43b508 Merge pull request 'prep next release' (#801) from prep_v7.0.0 into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #801
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-10-11 18:20:16 +02:00
a381efc5d9 prep next release
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main Build started...
2023-10-11 18:16:36 +02:00
9265f27af9 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-11 15:02:59 +02:00
4e3229f018 cache wdt state
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-11 15:00:15 +02:00
eb1b9c837f comment
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-11 14:53:10 +02:00
8cb4661006 higher timeout (max value) 2023-10-11 14:51:55 +02:00
78e70dafc3 Merge remote-tracking branch 'origin/main' into str-extensions
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-11 14:48:06 +02:00
e12ce62f5c Merge remote-tracking branch 'origin/main' into add-xiphos-wdt-handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-11 14:28:32 +02:00
fd0c186669 Merge pull request 'SCEX bugfix' (#799) from scex-bugfix into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #799
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-10-11 14:16:25 +02:00
5283607441 changelog update
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-11 13:59:11 +02:00
3cd9f2bfc7 Merge remote-tracking branch 'origin/main' into str-extensions
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-11 13:57:45 +02:00
fddae1bfc6 compile fixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-11 13:56:05 +02:00
d84528e643 CFDP file segment len is configurable via definitions.h now
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-11 13:47:38 +02:00
7b6d1c99ff Merge remote-tracking branch 'origin/main' into cfdp-source-handler
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-11 12:59:27 +02:00
ee6cdaf619 bump submodules 2023-10-11 12:57:42 +02:00
c3cdcaf9f4 bump tmtc and gens
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-10-11 10:58:25 +02:00
b5cd64ea00 Merge remote-tracking branch 'origin/main' into add-xiphos-wdt-handling 2023-10-11 10:54:16 +02:00
0ee708f496 Merge remote-tracking branch 'origin/main' into scex-bugfix
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-11 10:51:59 +02:00
42d5d74e6a Merge pull request 'SoC Calculator' (#754) from soc-calculator into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #754
2023-10-11 10:50:46 +02:00
6cada9bfc0 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-11 09:31:32 +02:00
ac784b5899 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-11 09:27:11 +02:00
4d98b2f5d3 Merge branch 'soc-calculator' of egit.irs.uni-stuttgart.de:eive/eive-obsw into soc-calculator
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-11 09:25:25 +02:00
eb24749abe emObjectFactory fix 2023-10-11 09:25:12 +02:00
a0c246b1da rw dummy fix 2023-10-11 09:24:48 +02:00
b9f05a14f7 removed debug stuff 2023-10-11 09:24:36 +02:00
9a283b0f98 add action cmds
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-10-10 19:15:52 +02:00
d1e0d74072 robustness fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-10 18:44:13 +02:00
7f82dd91e2 changelog
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-10 16:20:51 +02:00
a29805cb68 SCEX bugfix 2023-10-10 16:18:35 +02:00
9a80af9b95 update tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-10 13:51:41 +02:00
0da1fecf39 updatr submodules
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-10 13:50:15 +02:00
4b4c78c3fa lets go back to 60 seconds
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-10 12:19:42 +02:00
2c30efa821 aaand we revert
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-10-10 11:54:32 +02:00
98a1ce5380 this should work 2023-10-10 11:53:54 +02:00
8fc560f9de what is this? 2023-10-10 11:34:18 +02:00
b635e02f2d gens
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-10-10 10:07:01 +02:00
000077f327 corrected logic 2023-10-10 10:06:32 +02:00
33d3e7686c right we need dummies ... 2023-10-10 10:06:10 +02:00
93939f9541 that should do the job
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-09 15:56:48 +02:00
5f9247ee1e this does not work
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-10-09 15:36:49 +02:00
e65352818f added logic for secondary TM handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-09 15:29:04 +02:00
9421b22098 remove from target table
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-10-09 15:21:53 +02:00
25a5e187f6 object factory changes 2023-10-09 15:21:38 +02:00
8fe4a85998 missing API calls
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-09 15:18:40 +02:00
cc1be69764 finished STR extensions TMTC
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-09 15:16:48 +02:00
706c5be7f7 stop the spam
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-10-09 14:03:57 +02:00
47b15bec93 not needed as all PL components are set to faulty anyways
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-10-09 14:03:13 +02:00
bd8cb7c26f what is dis
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-10-09 11:42:42 +02:00
e9ad8d956a i need a vacation ...
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-10-09 09:33:37 +02:00
e9e8a93cf4 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-06 11:41:03 +02:00
f2ee6995f9 compile fixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-06 11:35:57 +02:00
d64372833c added blob tm
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-10-06 11:23:31 +02:00
a46f712538 STR handler
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-04 10:44:03 +02:00
5e7f0e729b merge main
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-04 09:53:04 +02:00
6a6789ae99 STR extensions
Some checks failed
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-10-02 16:11:17 +02:00
34100e6c95 small robustness tweak
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-02 14:49:29 +02:00
404a1009ed that should get the job done
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-02 14:47:41 +02:00
9c1eee075c well that was fast
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-10-02 14:15:50 +02:00
0e48721655 spam protection
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-29 15:56:07 +02:00
59bc783045 ploc supervisor mode change soc check
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-29 15:37:47 +02:00
cbfcee0b1c ploc mpsoc mode change soc check
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-29 15:33:09 +02:00
2966ee5005 boop 2023-09-29 15:32:38 +02:00
2a66f335f2 bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-29 15:27:03 +02:00
8847ed611d cam switcher mode change soc check 2023-09-29 15:26:21 +02:00
b66b202373 bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-29 14:31:14 +02:00
fda76e24ae pl pcdu mode change soc check 2023-09-29 14:30:57 +02:00
509243a47f eive system event handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-29 14:18:42 +02:00
9472faf899 set plFlag to invalid if PWR ctrl is in on
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-29 10:30:26 +02:00
9f8e7b6673 enable dataset to be called by non-owner 2023-09-29 10:29:52 +02:00
69f5529ade added dataset for flag for pl usage
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-29 10:16:23 +02:00
1abc503614 bump tmtc 2023-09-29 10:15:34 +02:00
758add2928 improved events, allowed all modes, removed debug output 2023-09-29 09:50:48 +02:00
49102463f5 ran generators 2023-09-29 09:49:52 +02:00
61ebe5ed99 scheduled EPS subsystem 2023-09-29 09:49:21 +02:00
eb84b5bb87 schedule pwr ctrl with bpx again
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-28 13:09:53 +02:00
a3ed2791b7 remove comments for mode handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-28 12:00:48 +02:00
173ee62d39 connect pwr ctrl to eps
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-28 12:00:04 +02:00
6a77635bfb soc calculation fixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-27 16:36:09 +02:00
c486bb2cf3 pwr ctrl fdir
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-27 14:46:45 +02:00
1973bd2c5b fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-27 13:07:18 +02:00
063a7efc6b fixed include
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-09-27 13:00:29 +02:00
b7ccb8b41d cmake 2023-09-27 13:00:18 +02:00
23b15cf302 add EPS to transitions
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-09-27 11:55:33 +02:00
8275c10b69 Merge branch 'main' into soc-calculator
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-09-27 11:35:13 +02:00
7d1d913220 Merge pull request 'Tweaks for MPSoC startup and shutdown code' (#796) from mpsoc-tweaks into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #796
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-09-27 11:32:30 +02:00
209e0c68fb fixes
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-09-26 11:56:04 +02:00
4ba3e394f9 increase boot time slightly
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-25 18:07:54 +02:00
50809e35a9 some nullptr checks
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-25 18:07:28 +02:00
eb538a789a changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-25 17:53:25 +02:00
b3233abde9 update tmtc and gen files
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-25 17:50:13 +02:00
08dbab9daa another missing small tweak
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-25 17:48:30 +02:00
624d454464 delete wait cycles member
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-25 17:43:54 +02:00
244d59e6c0 bump tmtc
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-09-25 17:42:26 +02:00
ff7e475391 this appears to be the boot time
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-09-25 17:21:28 +02:00
75f08175f6 more debugging necessary here
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-09-25 17:10:13 +02:00
a2246f9d3d this is odd
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-09-25 16:44:10 +02:00
0d0a98220a improve MPSoC boot and shutdown process
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-09-25 16:36:35 +02:00
35fd2c72d8 slightly better printout
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-09-25 15:17:09 +02:00
0ad3f508a9 further fixes
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-09-22 16:07:26 +02:00
6b9e191988 fixed voltage bugs
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-09-22 10:08:04 +02:00
654d9b1536 Merge branch 'main' into soc-calculator
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-09-20 09:19:53 +02:00
5036836b44 use bpx voltage instead
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-09-20 09:19:09 +02:00
f2e15bb134 fixed wrong type 2023-09-20 09:18:52 +02:00
78a7b29f8b Merge pull request 'prep v6.6.0' (#795) from prep_v6.6.0 into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #795
2023-09-19 11:09:38 +02:00
d4a87ee789 prep v6.6.0
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-18 16:32:22 +02:00
34a82b6e6c Merge pull request 'PDEC DTB update' (#794) from pdec-dtb-update into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #794
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-09-18 16:24:57 +02:00
09951edbba removed deprecated input
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-09-15 10:05:04 +02:00
592561b287 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-14 12:29:11 +02:00
fa7443d4a9 bump tmtc, small tweaks 2023-09-14 12:28:40 +02:00
8071a5713f these queue sizes are sufficient
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-14 10:38:43 +02:00
9243f917cc STOOOPID bug
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-14 10:23:00 +02:00
ca4e90ad97 important fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-13 18:13:16 +02:00
a1a1c3aef9 biggest changes possible
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-09-13 16:29:54 +02:00
634f6c6001 introduction of eps subsystem object
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-09-13 14:34:10 +02:00
6fa2cbbbb1 large regular live channel queue size
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-13 13:38:40 +02:00
e415c35987 Merge branch 'cfdp-source-handler' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into cfdp-source-handler
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-13 13:09:35 +02:00
98e1beafdf implemented missing queue handling 2023-09-13 13:09:07 +02:00
2195beb045 Merge branch 'main' into soc-calculator
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-13 13:07:43 +02:00
8871146e88 remove commented code
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-12 14:35:10 +02:00
51dafa56be remove obsolete TODOs
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-12 14:32:11 +02:00
b6f28eb239 wrong API call
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-12 14:29:42 +02:00
24de951038 reduce duplicate code
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-09-12 14:27:14 +02:00
0a455183f4 fix FM build
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-12 14:22:18 +02:00
b753d32b2b Merge remote-tracking branch 'origin/main' into cfdp-source-handler
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-09-12 14:19:25 +02:00
695f5fa5bc changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-12 13:31:03 +02:00
a697368297 remove diagnostic printouts
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-12 13:18:49 +02:00
d0effc50b1 Merge remote-tracking branch 'origin/main' into pdec-dtb-update 2023-09-12 13:18:33 +02:00
c226d971c2 Merge pull request 'prep next patch' (#793) from bump-tmtc into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #793
2023-09-12 13:15:50 +02:00
1bda30773f prep next patch
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main Build started...
2023-09-12 13:08:16 +02:00
cdf63f0d42 PDEC DTB update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-09-12 12:54:24 +02:00
fdd635e43f bump tmtc
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-09-12 10:52:47 +02:00
ba158e3826 Merge remote-tracking branch 'origin/main' into cfdp-source-handler
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-09-12 10:52:25 +02:00
db74d0490b Merge pull request 'prep v6.5.0' (#792) from prep_v6.5.0 into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #792
2023-09-12 10:49:06 +02:00
c209c71d5f prep v6.5.0
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-12 10:17:29 +02:00
2e83627139 Merge pull request 'Relax SUS FDIR' (#677) from relax-sus-fdir into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #677
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-09-12 10:16:06 +02:00
3cb9cd124d bump tmtc
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build started...
2023-09-12 10:08:28 +02:00
fc23438e5d update gen files
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-12 10:07:00 +02:00
52ae402594 missing include
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-09-11 20:21:14 +02:00
6771d656bb beautiful
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-09-11 20:16:54 +02:00
5d8b81e131 miight be able to work with this
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-09-11 19:27:39 +02:00
6fe4c71cee this is useable 2023-09-11 19:23:48 +02:00
33d503aef9 bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-11 16:23:52 +02:00
aa4bf5f293 Merge branch 'main' into relax-sus-fdir
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-11 16:11:01 +02:00
7c6cd12f14 Merge pull request 'this might fix the device' (#791) from mgm3100-cfg-adaptions into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #791
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-09-11 15:48:49 +02:00
e26338e4cb adapt event severities
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-11 15:39:21 +02:00
55dcb3595b this might fix the device
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-07 16:28:55 +02:00
101cf54745 fix Q7S builds
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-07 16:20:31 +02:00
2b841d2f37 some tweaks for error handling code
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-09-07 16:19:01 +02:00
4af406b294 changelog
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-09-07 16:14:20 +02:00
35f287ff23 Merge remote-tracking branch 'origin/main' into cfdp-source-handler
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-09-07 16:13:46 +02:00
0337104173 another small bugfix
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-07 16:09:43 +02:00
5a1b2470f0 some structure clean up
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-07 16:07:59 +02:00
c51fbb9074 add recovery handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-07 16:05:51 +02:00
58961efb3f that should get the job done
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-07 16:03:36 +02:00
f9f6ac27e8 Merge remote-tracking branch 'origin/main' into relax-sus-fdir
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-07 15:41:59 +02:00
1b295139a0 Merge pull request 'Features for v6.5.0' (#790) from features-v6.5.0 into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #790
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2023-09-07 15:12:14 +02:00
0fb837323d works properly now
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-09-06 21:03:08 +02:00
48f3ff05dc bump fsfw
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-09-06 20:54:45 +02:00
cfbd6d3b1e changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-06 14:38:19 +02:00
63b6db258c params for new safe mode 2023-09-06 14:37:04 +02:00
c709bd0881 changelog 2023-09-06 14:35:40 +02:00
a81eae7726 exchange nominal and 1st redundancy sensor for ploc mission board 2023-09-06 14:34:15 +02:00
c64f1f8693 a lot of good stuff
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-09-06 13:40:38 +02:00
a7ac383423 stooopid stuff
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-06 10:11:33 +02:00
9c36898dcd increase TM store size a bit
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-05 16:05:28 +02:00
b7558e9542 update retvals
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-04 11:20:21 +02:00
c7b27c0092 source transactions now working
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-09-04 11:03:32 +02:00
7e9648eabf CFDP handler
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-31 15:20:19 +02:00
6f2eaee50a trigger a useful event
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-31 15:10:43 +02:00
ea2a137aec add error message
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-30 13:10:51 +02:00
fa43c5480b that should cause a transaction start
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-30 11:58:21 +02:00
b6b342bf99 introduce queue for put requests
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-30 11:47:39 +02:00
2f6565621b bump tmtc for bugfix
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-30 11:38:01 +02:00
0c1eae3382 auto-formatting
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-30 11:35:06 +02:00
2acb6d8132 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-30 10:56:32 +02:00
a39da169d8 Merge pull request 'Bump Submodules' (#788) from bump-submodules into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #788
2023-08-21 18:53:54 +02:00
4f335ea270 bump tmtc
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main Build started...
2023-08-21 18:49:49 +02:00
90b4a4d8c0 bump fsfw 2023-08-21 18:36:01 +02:00
3acdb54fab Merge pull request 'Prep v6.4.1' (#787) from prep-v6.4.1 into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #787
2023-08-21 18:23:12 +02:00
6048ffe656 prep
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-21 16:01:56 +02:00
5060de1f6d Merge pull request 'Fix for MAG Field Vector calculation' (#786) from mgm4-disabled-fix into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #786
2023-08-21 14:51:29 +02:00
26bf178b2a changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-21 14:41:16 +02:00
b9167c7e22 valid check now includes allowed use of mgm4
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-21 14:33:55 +02:00
b97afc9f1c Merge pull request 'PDEC Corrupted Config Event Parameters' (#785) from meier/pdec-event-params into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #785
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-08-21 09:20:30 +02:00
a1d360502f changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-21 09:14:16 +02:00
ddbf4a5ff0 run auto formatter
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-19 06:37:39 +02:00
6febf6242a pdec config corrupted event, readback config used as parameters
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-08-19 06:33:31 +02:00
033babf50a bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-17 16:45:29 +02:00
da71aea101 Merge pull request 'event fix for file corruption' (#784) from persistent-tm-store-event-fix into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #784
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-08-17 16:45:12 +02:00
df397f6dee changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-17 10:28:55 +02:00
e148e95471 event fix for file corruption
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-17 10:27:33 +02:00
b11461c2f7 Merge pull request 'missing changelog entry' (#783) from ploc-supv-changelog into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #783
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-08-16 13:58:04 +02:00
2b5dcf99dc changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-16 13:36:34 +02:00
d6fd28e124 fix hosted build
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-16 13:35:09 +02:00
8186a3ef4f proxy request should now arrive at the handler
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-16 13:22:05 +02:00
f62a4ee2b4 this should make proxy op forwarding work
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-16 13:16:14 +02:00
c47995a0eb Merge remote-tracking branch 'origin/main' into cfdp-source-handler
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-16 11:38:16 +02:00
952e1c16e5 improve structure of CFPD mission code 2023-08-16 11:38:00 +02:00
1748d18852 missing changelog entry
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-16 10:57:02 +02:00
8a1e6bc5d2 Merge pull request 'date correction' (#782) from prep_v6.4.0 into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #782
2023-08-16 10:54:50 +02:00
72fc99dc49 date correction
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
2023-08-16 10:54:02 +02:00
3652b6cfad Merge pull request 'PLOC SUPV periodic HK' (#781) from ploc-supv-periodic-hk into main
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build queued...
EIVE/eive-obsw/pipeline/head Build started...
Reviewed-on: #781
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-08-15 18:56:11 +02:00
d1a446d445 hopefully dont need this const
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-15 14:43:23 +02:00
e64e9daed1 bump eive-tmtc
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-08-15 14:42:12 +02:00
963ca0c939 PLOC SUPV
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-08-15 14:34:10 +02:00
2d18ce4ff1 adapt changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-15 13:59:59 +02:00
0b35585449 Merge branch 'prep_v6.4.0' into ploc-supv-periodic-hk 2023-08-15 13:59:47 +02:00
af5f51928b PLOC SUPV periodic HK
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-15 13:49:06 +02:00
6919ab9455 Merge pull request 'new event, bump tmtc' (#779) from new-event into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #779
2023-08-15 13:32:44 +02:00
e4545d0515 new event, bump tmtc
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main Build queued...
2023-08-15 13:29:46 +02:00
fb2995575b prep next version
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-15 13:26:45 +02:00
77e3b8c359 Merge pull request 'PDEC corrupted Config Event' (#773) from meier/pdec-config-readback into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #773
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-08-15 13:24:02 +02:00
63b483b71a Merge remote-tracking branch 'origin/main' into meier/pdec-config-readback
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build queued...
2023-08-15 13:22:42 +02:00
e24212207f Merge remote-tracking branch 'origin/main' into meier/pdec-config-readback
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build queued...
2023-08-15 13:21:53 +02:00
2ed010327f Merge pull request 'Improve Safe Strat State Machine' (#777) from safe-strat-improvement into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #777
2023-08-15 13:19:14 +02:00
181d355741 bump tmtc
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build started...
2023-08-15 13:17:08 +02:00
0fb57064d3 Merge remote-tracking branch 'origin/main' into safe-strat-improvement 2023-08-15 13:16:58 +02:00
2526873be2 Merge pull request 'Rework PDEC FDIR' (#772) from rework-pdec-fdir into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #772
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-08-15 11:23:54 +02:00
bda57d9bd1 Merge remote-tracking branch 'origin/main' into meier/pdec-config-readback
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-15 10:50:02 +02:00
6fc50f164e Merge remote-tracking branch 'origin/main' into rework-pdec-fdir
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-15 10:49:17 +02:00
41ff0cc9ac Merge remote-tracking branch 'origin/main' into safe-strat-improvement
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-15 10:48:49 +02:00
cc4795c657 Merge pull request 'Flag for MGM4 Usage' (#778) from delete-mgm4-from-existance into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #778
2023-08-15 10:31:13 +02:00
196781ed4a changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-15 09:39:59 +02:00
7ab8fb8cb9 added parameter to disable usage of mgm4 2023-08-15 09:37:54 +02:00
0a42093de3 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-15 09:20:00 +02:00
d82a6ece5a use safeCtrl even if SUS and MGM vectors are too close
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-15 09:11:57 +02:00
c09c0ee947 clean up handler a bit
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-14 21:22:01 +02:00
d2ae8e9362 better naming
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-14 21:06:49 +02:00
360911e5eb continue source handler integration
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-14 20:48:37 +02:00
ede0805ee8 instantiated source handler
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-14 16:29:51 +02:00
693c183dcc bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-14 16:07:16 +02:00
fe0d2bf832 Merge remote-tracking branch 'origin/main' into meier/pdec-config-readback 2023-08-14 16:06:59 +02:00
37b6c32d15 Merge remote-tracking branch 'origin/main' into rework-pdec-fdir
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-14 16:06:27 +02:00
288b09766d Merge remote-tracking branch 'origin/main' into cfdp-source-handler
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-14 15:59:20 +02:00
a7c1b19db4 Merge remote-tracking branch 'origin/main' into cfdp-source-handler
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-14 15:58:33 +02:00
88286eaca0 this compiles
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-14 15:58:12 +02:00
8447b3c41e Merge pull request 'Use SGP4 Propagator for GPS' (#770) from use-sgp4-propagator into main
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
Reviewed-on: #770
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2023-08-14 15:47:32 +02:00
93896557aa fuck math.h
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-14 15:36:20 +02:00
36b38dd5bf Merge branch 'main' into use-sgp4-propagator
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-08-14 15:34:20 +02:00
639fddcdef Merge pull request 'Cleaner Calculation of MGM and SUS Rate' (#775) from mgm-sus-rate-calc into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #775
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2023-08-14 15:28:33 +02:00
6f8484be2a Merge branch 'main' into mgm-sus-rate-calc
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build queued...
2023-08-14 15:28:22 +02:00
424f3c5247 changelog and re-run generators
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-14 15:09:45 +02:00
e2b54ddb8e Merge remote-tracking branch 'origin/main' into meier/pdec-config-readback
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-14 15:06:58 +02:00
567d68107d auto-formatting
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-14 15:06:22 +02:00
dd5b858666 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-14 14:59:56 +02:00
c63093d6cf bump fsfw
Some checks failed
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-08-14 14:57:18 +02:00
acc140412d Merge branch 'use-sgp4-propagator' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into use-sgp4-propagator
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-14 12:48:47 +02:00
15421240f1 naming 2023-08-14 12:48:22 +02:00
84f7642411 Merge remote-tracking branch 'origin/main' into use-sgp4-propagator
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-14 12:21:53 +02:00
4851c6fdb0 Merge pull request 'Add debug GPS dataset including more data' (#771) from more-gps-tm into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #771
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2023-08-14 12:20:40 +02:00
d65c63b58f Merge branch 'main' into use-sgp4-propagator
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-14 10:50:04 +02:00
819f5c299d Merge branch 'main' into mgm-sus-rate-calc
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-14 10:40:29 +02:00
2af1b6b698 Merge branch 'main' into more-gps-tm
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-14 10:40:07 +02:00
35fe0c909a Merge pull request 'ENOUGH IS ENOUGH' (#774) from ENOUGH-IS-ENOUGH into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #774
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2023-08-14 10:39:49 +02:00
da25d650d9 bugfix
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-14 10:34:06 +02:00
73e9bc9598 Merge remote-tracking branch 'origin/main' into rework-pdec-fdir
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-14 10:32:55 +02:00
0095397b4f that should do the job
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-14 10:30:46 +02:00
9ba8c02e91 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-14 10:20:28 +02:00
a99895a2b6 cleanup
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-14 10:15:33 +02:00
110c822f41 cleaner calculation of sus rate
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-14 10:08:51 +02:00
5a7f0d08a4 cleaner calculation of mgm rate
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-14 09:53:33 +02:00
d28ec2c31a config word functions pass value now by reference and return returnvalue
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main This commit looks good
EIVE/eive-obsw/pipeline/head Build started...
2023-08-11 16:15:56 +02:00
9201095644 typos
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-09 13:44:10 +02:00
653d13960f ability to disable usage of sgp4 2023-08-09 13:42:54 +02:00
b4c3553965 changelog 2023-08-09 13:41:41 +02:00
e2cce1cb51 added event for TLE being too old 2023-08-09 13:41:25 +02:00
d9879013e6 fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-09 11:44:17 +02:00
a467dd790f CHANGELOG
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-09 11:32:05 +02:00
185d86245b HOW CAN ANYONE WORK WITH THIS SHITTY SPAM
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-09 11:29:52 +02:00
f3e18f1313 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-09 11:04:59 +02:00
a9fe166b32 do not use raw gps data anywhere
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-09 10:46:43 +02:00
1069572392 removed debug output 2023-08-09 10:46:24 +02:00
38a8327be0 i hate it here
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-09 10:13:19 +02:00
8a707a2664 Merge branch 'main' into use-sgp4-propagator
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-08-09 09:17:20 +02:00
8e2c6a95e0 debug galore
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-08-08 15:06:35 +02:00
8da08bd328 fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-08 14:24:26 +02:00
11578b9d9a i hate myself
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-08 13:47:44 +02:00
04dde604db Merge branch 'main' into more-gps-tm
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-08 09:32:55 +02:00
78f4bbc3a7 Merge pull request 'GPS Changes' (#767) from gps-changes into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #767
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-08-08 09:10:11 +02:00
c3bca9bb54 added event which is triggered when config of pdec is corrupted
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-07 17:08:33 +02:00
8f8c3fd4a2 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-07 17:00:19 +02:00
99dbab9311 Merge branch 'main' into gps-changes
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-07 16:58:46 +02:00
fa3d5cbc3e handling of which GPS result to use
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-07 16:44:03 +02:00
dfa20545e4 yes ofc i know what every one of these equations does 2023-08-07 16:43:31 +02:00
947eef7170 just in case we ever do this
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-07 13:45:06 +02:00
04c9013c64 feedback of spg4 usage to dataset
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-07 13:37:05 +02:00
e631ab55e6 enum for gps source 2023-08-07 13:36:40 +02:00
a81d911f8e init source pool var 2023-08-07 13:36:12 +02:00
2b03c41305 i guess i had to edit it here, thanks mr cmake god
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-07 13:35:32 +02:00
e261d3609b use spg4 2023-08-07 11:36:30 +02:00
2a0b139f70 spg4 into navigation
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-08-07 11:23:10 +02:00
f9befaebd0 action command to update TLE
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-08-07 10:43:00 +02:00
4b90d26445 add source flag for GPS data
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-07 10:39:20 +02:00
ad6e0e9946 add source flag
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-08-07 10:31:26 +02:00
ef8409d4a8 apparently FLP is part of the cool kids who store their paramenters as datasets
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-07 09:38:35 +02:00
1e9d772d37 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-04 16:28:06 +02:00
27cf93e6ab lets actually downlink both datasets
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-04 15:54:03 +02:00
9f176e1959 doc correction
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-04 14:28:58 +02:00
e4632b2538 changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-04 14:26:13 +02:00
669c3630a9 reworked PDEC FDIR 2023-08-04 14:23:10 +02:00
d91a71fb51 remove debug output
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-04 12:22:47 +02:00
2952f1feb1 fix 2023-08-04 12:22:31 +02:00
0c25b37c7b gps satellites signals to dataset
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-04 10:50:19 +02:00
348b720885 well this was easy
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-03 20:56:46 +02:00
080b729f11 wow so much progress
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-03 14:41:35 +02:00
05fbff2e6d Merge remote-tracking branch 'origin/main' into relax-sus-fdir
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-03 13:37:36 +02:00
b2d9582a46 Merge pull request 'prep v6.3.0' (#769) from prep_v6.3.0 into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #769
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-08-03 13:17:53 +02:00
155bf9eed0 prep v6.3.0
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main Build queued...
2023-08-03 13:15:57 +02:00
15618a4c18 Merge pull request 'Fix Calculation of Fused Rotation Rate during Eclipse' (#768) from fused-rot-rate-fix into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #768
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2023-08-03 13:11:04 +02:00
d07568bbe1 Merge branch 'main' into fused-rot-rate-fix
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build queued...
2023-08-03 13:10:15 +02:00
1267097368 Merge pull request 'PL PCDU tweaks' (#766) from pl-pcdu-tweaks into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #766
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-08-03 13:07:10 +02:00
e746c151d3 tweaks
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build started...
2023-08-03 13:03:10 +02:00
5958560d00 cleanup
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-03 11:34:29 +02:00
e258193713 changelog 2023-08-03 11:32:16 +02:00
8f0b0f47c9 not sure if we need it here but doesnot matter 2023-08-03 11:32:08 +02:00
97f40232d7 changelog typo
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-03 10:16:51 +02:00
7c3329abb2 this is more correct
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-03 10:16:11 +02:00
acc50ca7aa fused rotation rate calculation during eclipse can be disabled
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-03 10:09:43 +02:00
6f8ad08e9b changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-03 10:06:10 +02:00
1f02c0ef57 set set to 0 for OFF cmd
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-03 10:05:10 +02:00
093f7f3a31 re-introduce proper bounds checking
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-03 09:59:08 +02:00
a0e4f0a438 Merge branch 'main' into pl-pcdu-tweaks
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-03 09:23:54 +02:00
81311770e8 this might be the fix
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-02 16:26:57 +02:00
8441c49fe6 big gps victory
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-02 16:00:27 +02:00
ff6cb2a2e3 Merge remote-tracking branch 'origin/main' into gps-changes
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-08-02 15:32:01 +02:00
2132f6bb1f Merge pull request 'SCEX filesystem usage fixes' (#765) from scex-fs-usage-improvements into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #765
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-08-02 15:31:48 +02:00
d2c0c1709e that should do the job
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-02 15:29:13 +02:00
b23ae2e152 logiically it works..
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-02 14:17:32 +02:00
eae63a8dc9 add PL PCDU for EM
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-02 14:08:10 +02:00
388dc0a813 gps event spam fix?
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-08-02 13:40:51 +02:00
a88725070b more robust code
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-08-02 13:40:37 +02:00
39c299e55d Merge remote-tracking branch 'origin/main' into scex-fs-usage-improvements
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-02 13:13:55 +02:00
0bbcfb34e8 tweaks for pin handling
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-08-02 11:14:35 +02:00
7f3c71f4dc Merge pull request 'Bugfixes for Detumble Mode' (#764) from acs-detumble-bugfixes into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #764
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2023-08-02 10:43:59 +02:00
03e0cb4ca4 Merge branch 'main' into acs-detumble-bugfixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-02 10:28:58 +02:00
5f82b05d3e how many changelog commits will it be
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-02 10:27:14 +02:00
004c60030b changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-02 10:24:24 +02:00
c08024bd0b changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-02 10:23:02 +02:00
6bdafe62ad thank god we never needed this before 2023-08-02 10:22:15 +02:00
7fe676fed9 add event function CALL
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-02 09:44:22 +02:00
2fda3e127e changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-02 09:42:24 +02:00
beb79d2fb4 that should do the job
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-02 09:41:54 +02:00
f0bbc1d090 added filesystem down event
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-02 09:39:42 +02:00
c120ce8617 remove newline 2023-08-02 09:29:55 +02:00
58c19e90eb changelog fix 2023-08-02 09:29:28 +02:00
833166cc78 Merge remote-tracking branch 'origin/main' into scex-fs-usage-improvements 2023-08-02 09:29:04 +02:00
0ea0322e45 Merge pull request 'EIVE system changes for reboot handling' (#763) from pdec-reboot-target-self-image into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #763
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-08-02 09:27:26 +02:00
949ac8942d small corrections
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build queued...
2023-08-02 09:25:01 +02:00
6d18e21edf removed stray return
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build queued...
2023-08-02 09:23:00 +02:00
d9a010f6bd changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-08-02 09:21:53 +02:00
971fd5b4a3 improve SCEX FS usage code 2023-08-02 09:20:36 +02:00
4b4dd35b55 this is the cleanest solution
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build started...
2023-08-02 09:19:43 +02:00
988da377b1 pause the tasks waiting for a reboot
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-02 09:00:45 +02:00
77ffc62236 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-01 16:41:37 +02:00
bea918e861 added fused rotation calculation to detumble and write detumble strat to dataset
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-01 16:37:42 +02:00
8105e5f689 more robust code
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-01 09:36:08 +02:00
b27694321f update changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-08-01 09:29:34 +02:00
a884176773 improvements for reboot FDIR
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-08-01 09:26:06 +02:00
1f61f7d2e8 Merge pull request 'Small SCEX fix' (#761) from small-scex-fix into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #761
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-08-01 09:08:25 +02:00
f1cb2caa3a cool
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-31 13:32:40 +02:00
2eba5d52da don't need those anymore
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-07-31 13:28:54 +02:00
f8a7179de6 this is overengineered af
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-07-31 13:27:14 +02:00
40ee5ddade what if everyone was a returnvalue
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-31 13:14:04 +02:00
bc9bb06f2d further improvements
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-31 11:51:03 +02:00
0bfd31bc7e missed that one
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-28 11:38:35 +02:00
2caf81640c Merge branch 'main' into soc-calculator
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-07-28 11:37:14 +02:00
a0025030f1 first bits of cleanup
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-07-28 11:36:20 +02:00
85dc977796 changelog
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-27 10:12:06 +02:00
5615f51ae7 Merge remote-tracking branch 'origin/main' into small-scex-fix
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-07-27 10:11:12 +02:00
9219d2bc8c small fix 2023-07-27 10:10:54 +02:00
88a8969142 basics
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-07-26 17:01:48 +02:00
85a12f071f Merge pull request 'CHANGELOG: HK generation is countdown based' (#760) from fsfw-changelog into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #760
2023-07-26 15:00:58 +02:00
1ae2f692ba HK generation is countdown based
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-26 14:32:13 +02:00
3f73ad86eb Merge pull request 'bump minor version' (#759) from prep-v6.2.0 into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #759
2023-07-26 14:04:48 +02:00
a0735b4fff bump minor version
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-26 13:37:21 +02:00
a71f773f63 Merge pull request 'ACS downwards compatibility' (#758) from acs-downwards-compat into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #758
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-07-26 13:27:42 +02:00
f7dccdc4c6 bump tmtc again
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build started...
2023-07-26 13:20:32 +02:00
3ebb83b4c0 changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main Build started...
2023-07-26 13:18:36 +02:00
ee43c0fbd7 Merge remote-tracking branch 'origin/main' into acs-downwards-compat
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-07-26 13:18:13 +02:00
91208c2808 bump tmtc, small tweak for definitions 2023-07-26 13:17:54 +02:00
1dc545c5f0 Merge pull request 'Bump events and tmtc' (#757) from bump-events-and-tmtc into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #757
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-07-26 13:17:29 +02:00
55c5df0519 ensure downwards compatibilitiy for enum
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-07-26 13:07:14 +02:00
e74ae18763 Merge branch 'main' into bump-events-and-tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-26 12:58:51 +02:00
e5b19a4463 Merge pull request 'cmake.xml' (#756) from cmake-update into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #756
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-07-26 12:58:21 +02:00
1f658ceee3 changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-07-26 12:58:12 +02:00
6ef05767c5 events and tmtc 2023-07-26 12:57:39 +02:00
9726c283ef Merge branch 'main' into cmake-update
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-26 12:48:09 +02:00
2110c54d96 Merge pull request 'Simplify image protection code' (#755) from simplify-image-prot-code into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #755
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-07-26 11:54:03 +02:00
7c0ee9114b changelog
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build started...
2023-07-26 11:26:21 +02:00
e52195e195 bugfix in test
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-26 11:25:28 +02:00
8c97ad0213 Merge branch 'main' into soc-calculator
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-26 11:19:37 +02:00
5a69b52b20 datasets
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-26 11:18:15 +02:00
4d195a1b8e bugfix
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-26 11:17:26 +02:00
8c54802e7a Merge remote-tracking branch 'origin/main' into simplify-image-prot-code
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-26 11:12:46 +02:00
8cd959f55a Merge pull request 'SD shutdown handling non-blocking' (#753) from sd-shutdown-non-blocking into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #753
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-07-26 11:09:47 +02:00
001630cece Merge remote-tracking branch 'origin/main' into sd-shutdown-non-blocking
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build queued...
2023-07-26 11:09:24 +02:00
dbb3434cd9 Merge pull request 'New Safe Mode Controller' (#748) from acs-safe-flp-v2 into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #748
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2023-07-26 11:08:11 +02:00
61e73a4be9 docs
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-26 11:07:04 +02:00
81bb47a6d8 this is a lot better
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-07-26 11:05:36 +02:00
2480229dcb objectFactory and scheduling
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-26 10:37:41 +02:00
72ca1be6e2 I was told this was not nice
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-26 10:08:40 +02:00
56fb2c0e1e Merge branch 'main' into soc-calculator
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-26 09:57:13 +02:00
a5c799180e bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-26 09:51:56 +02:00
f5a9a4973c Merge remote-tracking branch 'origin/main' into acs-safe-flp-v2
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-26 09:51:24 +02:00
f60c754c61 changelog typo
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-26 00:33:49 +02:00
ff05181dd3 another evil bug found 2023-07-26 00:30:09 +02:00
7014ab517d some info output 2023-07-25 23:53:39 +02:00
d59ea6eb3d fixed some bugs 2023-07-25 23:48:22 +02:00
abbf170ce2 core controller doing weird things
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-25 16:54:40 +02:00
6767e9a543 cmake.xml
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-25 16:32:22 +02:00
bf730060b5 SD shutdown handling non-blocking
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-25 16:25:00 +02:00
011f4bf5d9 Merge branch 'main' into acs-safe-flp-v2
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-25 09:58:23 +02:00
942b459066 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-25 09:56:35 +02:00
10dfa07cd9 aluli 2023-07-25 09:55:34 +02:00
61b3ef790a lets pretend this makes it all better
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-24 10:14:38 +02:00
c6294cadbd improved readability?
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-24 10:10:26 +02:00
e2926e25f6 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-24 09:52:08 +02:00
7e1e02c2bc ????
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-21 14:24:52 +02:00
afc72c0d97 Merge pull request 'active SD Info event' (#752) from active-sd-info-event into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #752
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-07-21 13:56:13 +02:00
4539d25518 Merge branch 'main' into active-sd-info-event
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-21 11:52:32 +02:00
f989af51f2 Merge pull request 'RAD sensor delay after pulling pin high' (#751) from rad-sensor-delay-after-gpio into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #751
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-07-21 11:50:48 +02:00
566c1534ee bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-21 11:47:57 +02:00
5f75b22cec new event 2023-07-21 11:36:39 +02:00
7bedb1d307 even more useful events
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-21 11:15:35 +02:00
f736489430 bugfix
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-21 11:10:09 +02:00
7ac19c8ea8 Merge remote-tracking branch 'origin/main' into active-sd-info-event
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-21 10:27:27 +02:00
8251f28cda re-run generators 2023-07-21 10:26:57 +02:00
4e2989d2bd active SD Info event
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-21 10:23:35 +02:00
6efee8d4da whoops
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-21 09:51:14 +02:00
59e07d9b47 Merge branch 'main' into rad-sensor-delay-after-gpio
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-20 17:16:06 +02:00
880c09c510 changelog 2023-07-20 17:16:14 +02:00
7cc95be900 RAD sensor delay after pulling pin high
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-20 17:12:50 +02:00
5e9fd332d9 Merge pull request 'Reduced rad sensor polling' (#747) from rad-sensor-polling-update into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #747
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-07-20 16:26:53 +02:00
753b9f8a0e better detumble exit
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-20 14:43:43 +02:00
07e002ccd2 detumble from fusedRotRate
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-20 14:22:45 +02:00
53d2e7965a seems more logical 2023-07-20 14:22:24 +02:00
d618e913af old safe mode is default safe mode
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-20 13:53:19 +02:00
5f481fd4d0 keep going people, nothing to see here
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-20 13:09:49 +02:00
b26600ac64 no bugs to see here, please move on
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-20 11:36:44 +02:00
0d501e5064 extended state machine and corrected controller calls
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-07-20 11:32:36 +02:00
32e2d87143 Merge branch 'main' into acs-safe-flp-v2
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-07-20 11:10:46 +02:00
7b0a47b010 use calculation
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-07-20 11:09:46 +02:00
300a6c5ff2 use datasets 2023-07-20 11:09:34 +02:00
d90fd07ba3 a new dataset a day keeps the doctor away
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-20 09:32:48 +02:00
800e29bcb9 missing param
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-19 16:34:02 +02:00
beaacc251b new class YAY
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-07-19 16:25:03 +02:00
b80c96a02c Merge branch 'main' into rad-sensor-polling-update
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-19 16:14:03 +02:00
a52d116857 move CD reset
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-19 15:36:06 +02:00
1c8fea409a Merge pull request 'small fix for PL PCDU' (#749) from pl-pcdu-small-fix into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #749
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-07-19 15:34:36 +02:00
f61301db13 changelog
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build queued...
2023-07-19 15:34:16 +02:00
c48be8f37b stuff
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-19 15:30:54 +02:00
9dfc8a0e93 new params 2023-07-19 14:41:09 +02:00
8db131f4ab the good fix
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-07-19 14:38:45 +02:00
e50aa2b620 small fix for PL PCDU
Some checks are pending
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-main Build queued...
2023-07-19 14:01:08 +02:00
8451a2f8ef extended state machine
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-07-19 13:24:37 +02:00
ebedb59929 new safe params 2023-07-19 13:24:21 +02:00
0f532e8511 more strats 2023-07-19 13:23:55 +02:00
fbff57dd45 filter galore
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-19 11:47:23 +02:00
910addc27a reset the timer
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-18 18:26:57 +02:00
b2d2c38c58 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-18 18:24:36 +02:00
a4a5800cba that should do the job
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-18 11:01:53 +02:00
2c9df747e8 Merge pull request 'Add RAD sensor dummy' (#745) from add-rad-sensor-dummy into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #745
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-07-18 10:52:05 +02:00
4fe921b2cc Merge branch 'main' into add-rad-sensor-dummy
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-18 10:14:33 +02:00
e5f8b08e4b Merge pull request 'sus dummy bugfix' (#746) from small-sus-dummy-bugfix into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #746
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-07-18 10:10:01 +02:00
ba0fe5f7da bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-18 10:08:04 +02:00
c9a4cf53ca changelog
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build queued...
2023-07-18 10:06:35 +02:00
fa10b6fd95 sus dummy bugfix
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main Build queued...
2023-07-18 10:04:31 +02:00
5102bd4d69 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-18 10:03:15 +02:00
ba6f55b93b map rad sensor set
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-18 10:02:14 +02:00
2b8a44f390 always schedule rad sensor
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-07-18 09:57:24 +02:00
08c98bd354 add rad sensor dummy
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-07-18 09:52:26 +02:00
0587f40874 add rad sensor dummy
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-07-18 09:44:44 +02:00
320b460179 Merge pull request 'small FSFW bump' (#744) from small-fsfw-bump into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #744
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-07-17 13:11:31 +02:00
1510de19a6 small FSFW bump
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-17 10:43:48 +02:00
6ae72db32d Merge pull request 'Add SCEX handler for EM' (#743) from add-scex-for-em into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #743
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-07-14 15:16:12 +02:00
88d1f9940f changelog
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build queued...
2023-07-14 15:16:08 +02:00
8c4a35fc42 some adaptions for SCEX
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-14 14:31:02 +02:00
e7c8d15773 add SCEX for EM 2023-07-14 14:04:23 +02:00
19a86ac29e Merge pull request 'STR Auto Threshold Config' (#742) from str-auto-threshold-cfg into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #742
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-07-14 14:03:52 +02:00
1d4e2a70a2 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-14 12:49:24 +02:00
f1028eb1d9 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-14 12:47:35 +02:00
c028a696ce Merge branch 'main' into str-auto-threshold-cfg
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-14 12:44:08 +02:00
f832c4522e Merge pull request 'STR time' (#611) from str_set_time into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #611
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-07-14 12:43:19 +02:00
4e58614c56 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-13 21:21:42 +02:00
93ea8519b0 works
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-13 21:19:30 +02:00
16dbba6545 done
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-07-13 21:14:39 +02:00
9a451e3d5f COM error event 2023-07-13 21:09:27 +02:00
7870a2015e add auto threshold config
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-07-13 20:49:42 +02:00
80155285c8 remove an unnecessary tweak
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-13 17:37:13 +02:00
c61b0f55a4 some tweaks
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-13 17:35:12 +02:00
6d220692d5 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-13 17:33:04 +02:00
db61358639 Merge branch 'smaller-str-fix' into str_set_time
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-13 17:31:53 +02:00
fec85ffa6c correct fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2023-07-13 17:30:43 +02:00
462da5228a back to default FDIR
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-13 17:23:46 +02:00
e9d4104f88 some further investigation
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-13 17:03:56 +02:00
39022ce2f6 different max missed reply thresholds for STR FDIR
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-13 16:52:33 +02:00
0cefef8a35 rough but possible fix..
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-13 16:38:20 +02:00
d3f3a3efd0 Merge branch 'smaller-str-fix' into str_set_time
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-13 14:57:53 +02:00
6398532462 only enable STR set for normal mode
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-13 14:57:24 +02:00
16f26d7758 afmt
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-13 14:52:32 +02:00
0e3980dc37 this works
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-13 14:52:07 +02:00
cc7e39c484 Merge remote-tracking branch 'origin/main' into str_set_time
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-13 13:26:41 +02:00
448e24e69f Merge branch 'str_set_time' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into str_set_time 2023-07-13 13:21:56 +02:00
70c4f8f3fd Merge pull request 'v6.1.0' (#740) from prep_v6.1.0 into main
All checks were successful
EIVE/eive-obsw/pipeline/pr-v6.0.0-branch This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #740
2023-07-13 13:07:07 +02:00
1f44533b3e bump minor version
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-13 12:00:57 +02:00
863c0af2a1 what the hell is wrong with the thing?
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-13 10:53:58 +02:00
0fb85883a5 always add STR, rename set field
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-13 10:16:52 +02:00
965c8d21cc Merge branch 'main' into str_set_time
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-13 10:09:38 +02:00
546053f95a Merge pull request 'STR tests' (#739) from startracker-tests into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #739
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-07-13 09:33:03 +02:00
608eecb091 this is realy buggy somewhere.. 2023-07-12 18:33:02 +02:00
ff432a4194 what the hell is wrong here..
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-12 18:17:00 +02:00
e9d48687d7 i hate this stupid class
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-12 17:59:07 +02:00
735c60d4c2 Merge branch 'startracker-tests' into str_set_time
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-12 17:11:15 +02:00
770d9b7ad3 Merge remote-tracking branch 'origin/main' into str_set_time
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-12 17:06:18 +02:00
86f7d05526 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-12 17:03:17 +02:00
8cc5220dd0 remove printout
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-12 17:02:52 +02:00
a800ad6c9a Merge remote-tracking branch 'origin/main' into startracker-tests
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-12 16:58:49 +02:00
887bfc87c3 Merge pull request 'use correct clock API in TCS CTRL' (#738) from small-tcs-fix into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #738
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-07-12 10:29:47 +02:00
54309b512f use correct clock API
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-11 17:29:27 +02:00
74859dd5c6 Merge pull request 'TCS Observability' (#733) from tcs-observability into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #733
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-07-11 16:47:58 +02:00
13e965948c TCS observability
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-11 13:52:41 +02:00
46bb602c96 bump tmtc
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-07-11 11:01:32 +02:00
72dbc34936 Merge remote-tracking branch 'origin/main' into tcs-observability
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-07-11 11:00:03 +02:00
55affe5a42 Merge pull request 'TCS heater upper burn limit' (#732) from tcs-heater-upper-limit into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #732
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-07-11 10:56:42 +02:00
914a22f642 Merge branch 'main' into tcs-heater-upper-limit
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-11 10:46:02 +02:00
ed7d75a777 thermal controller
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-11 10:44:46 +02:00
9443d3844a Merge pull request 'fsfw bump and changelog' (#737) from bump-fsfw into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #737
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-07-11 10:38:59 +02:00
8800b20409 Merge remote-tracking branch 'origin/main' into tcs-heater-upper-limit
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-07-11 09:45:01 +02:00
690f8cb49a Merge remote-tracking branch 'origin/main' into bump-fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-11 09:41:44 +02:00
dbc3868f47 Merge pull request 'minor tweaks for XADC code' (#736) from minor-xadc-tweak into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #736
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-07-11 09:40:05 +02:00
852f1203c6 changelog
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build queued...
2023-07-11 09:39:21 +02:00
643f8c5b54 Merge branch 'main' into minor-xadc-tweak
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build queued...
2023-07-11 09:38:14 +02:00
3fb083fd87 Merge pull request 'TCS improvements' (#735) from tcs-tweaks into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #735
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-07-11 09:37:57 +02:00
fdf1c7a611 seems to work now
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-10 18:29:55 +02:00
cf582dd6a4 Merge branch 'bump-fsfw' into tcs-observability
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-10 17:52:56 +02:00
c7f716c433 fsfw bump and changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-10 17:51:37 +02:00
d2dfc22373 Merge branch 'tcs-heater-upper-limit' into tcs-observability
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-10 16:33:42 +02:00
53d53e8771 disable test case
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-10 16:33:29 +02:00
84e37d8b7b bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-10 16:30:18 +02:00
7c4f98ec22 add back with other name and comment
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-10 15:23:04 +02:00
a61d7901bf Merge branch 'tcs-heater-upper-limit' into tcs-observability
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-10 14:58:16 +02:00
7e01a9602e TCS improvements
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-10 14:46:35 +02:00
be1d1cf5bf minor tweaks for XADC code
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-10 14:15:56 +02:00
ce2755e161 that should be it
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-10 13:56:30 +02:00
33de08eafc this should be better
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-10 13:28:36 +02:00
106d73238b Merge remote-tracking branch 'origin/main' into tcs-heater-upper-limit 2023-07-10 13:07:26 +02:00
3f4a34d616 Merge pull request 'Make OBSW compatible to prospective FW v5.0.0' (#734) from tmp-devs-to-q7-i2c into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #734
2023-07-10 11:19:35 +02:00
268f10ced5 COMPILE
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-10 11:14:19 +02:00
647f3d00bb this should do the job
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-07-10 11:03:17 +02:00
2210ec3737 Merge branch 'tcs-heater-upper-limit' into tcs-observability
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-07 16:21:42 +02:00
df3755d6cc done
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-07 16:18:16 +02:00
a351dcf99e changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-07 15:59:15 +02:00
06fe113d7f that should be sufficient
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-07 15:33:48 +02:00
43d86c9aad resolve merge conflicts properly
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-07 12:24:48 +02:00
c0ae25a973 Merge branch 'tcs-heater-upper-limit' into tcs-observability 2023-07-07 12:23:00 +02:00
fa85cc4d78 pls compile
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-07 12:22:37 +02:00
f7c49adea5 Merge branch 'tcs-heater-upper-limit' into tcs-observability
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-07-07 12:06:51 +02:00
b662e220e1 bump tmtc
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-07-07 12:06:39 +02:00
7337595d47 add event
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-07-07 12:05:29 +02:00
f2f73b088d add event
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-07-07 12:03:34 +02:00
fce16cc695 Merge branch 'tcs-heater-upper-limit' into tcs-observability
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-07-07 11:58:24 +02:00
ff7d0b3989 compile fixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-07 11:57:00 +02:00
6bf9fd5969 changelog
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-07-07 11:51:11 +02:00
a7ab26d804 Merge branch 'tcs-heater-upper-limit' into tcs-observability
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-07-07 11:50:32 +02:00
977e9f366f Merge remote-tracking branch 'origin/main' into tcs-heater-upper-limit
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-07-07 11:47:58 +02:00
b3d2fdc277 Merge pull request 'Another TCS fix' (#731) from another-tcs-fix into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #731
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-07-07 11:47:27 +02:00
7388c4f661 Merge remote-tracking branch 'origin/main' into tcs-heater-upper-limit
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-07-07 11:47:05 +02:00
a6461fcaf8 Merge remote-tracking branch 'origin/main' into another-tcs-fix
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build queued...
2023-07-07 11:45:22 +02:00
6ae0fdf191 Merge pull request 'TCS CTRL bugfix' (#730) from tcs-ctrl-bugfix into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #730
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-07-07 11:44:38 +02:00
3087049726 Merge branch 'main' into tcs-ctrl-bugfix 2023-07-07 11:44:27 +02:00
8255869f2d Merge pull request 'Some TCS tweaks' (#729) from some-more-tcs-tweaks into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #729
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-07-07 11:44:08 +02:00
603ddcef9c Merge branch 'tcs-heater-upper-limit' into tcs-observability
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-07-07 11:14:42 +02:00
0b673fcdec Merge remote-tracking branch 'origin/main' into tcs-heater-upper-limit
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-07-07 11:07:35 +02:00
908cf8dcc3 Merge remote-tracking branch 'origin/main' into another-tcs-fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-07 11:03:20 +02:00
ec39dc05ae Merge remote-tracking branch 'origin/main' into tcs-ctrl-bugfix
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-07 11:02:43 +02:00
bd33a51bf1 Merge remote-tracking branch 'origin/main' into some-more-tcs-tweaks
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-07 11:00:45 +02:00
06a24da2b9 Merge pull request 'Add TCS CTRL heater events' (#728) from add-tcs-ctrl-heater-events into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #728
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-07-07 10:59:36 +02:00
2bad2a142b changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-07 10:58:42 +02:00
b0b43b3ecc Merge branch 'main' into some-more-tcs-tweaks
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-07 10:56:50 +02:00
c1a23e0d73 Merge remote-tracking branch 'origin/main' into add-tcs-ctrl-heater-events
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build queued...
2023-07-07 10:56:38 +02:00
377cc64d0f bump tmtc
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build queued...
2023-07-07 10:55:39 +02:00
351c33e504 changelog
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build queued...
2023-07-07 10:55:13 +02:00
a7a530cb59 Merge pull request 'More TMP1075 bugfixes' (#727) from more-tmp-bugfixes into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #727
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-07-07 10:53:07 +02:00
f1ca4b174f comment
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-06 23:07:54 +02:00
027955597f done 2023-07-06 23:06:50 +02:00
c558a117b0 some docs
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-06 22:21:00 +02:00
fc697732b4 Merge branch 'another-tcs-fix' into tcs-heater-upper-limit 2023-07-06 22:07:06 +02:00
ce19f30325 continue max heater duration 2023-07-06 22:06:54 +02:00
faffca0c2c compile fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-06 20:19:05 +02:00
7b611810df there are actually 8 heaters
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-06 20:13:33 +02:00
3e92d175d5 form fix
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-07-06 20:01:57 +02:00
64ca329d5a update changelog
Some checks failed
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-07-06 19:58:24 +02:00
12ff365433 TCS ctrl bugfix
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-07-06 19:57:23 +02:00
5ea3bfeb7b Merge branch 'main' into some-more-tcs-tweaks
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-06 19:12:01 +02:00
785c1c65a0 add new events
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-06 19:01:49 +02:00
3c9eec7b3f heater events for TCS ctrl
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-07-06 18:58:57 +02:00
5630ae4962 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-06 17:28:12 +02:00
61ea80f92c remove some cruft
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-06 17:26:09 +02:00
6182218813 this works but is kind of ugly
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-07-06 17:23:55 +02:00
b7e4953126 the TCS subsystem does not work on the EM..
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-07-06 16:00:39 +02:00
ee4285075a Merge pull request 'Swap PL and PS I2C' (#725) from swap-pl-ps-i2c into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #725
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-07-06 15:05:53 +02:00
bda2ba79bf Merge remote-tracking branch 'origin/main' into swap-pl-ps-i2c
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
make marius extremely happy
2023-07-06 14:34:12 +02:00
0c47513e98 Merge pull request 'set dataset invalid on OFF mode' (#726) from tmp-1075-set-sets-invalid into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #726
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-07-06 14:27:04 +02:00
f4f365b110 pool read guard
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-06 13:56:43 +02:00
1d4b815452 this is better to read..
Some checks are pending
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-main Build queued...
2023-07-06 12:04:36 +02:00
1e98fcbbd5 that really should not cause issues though..
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-07-06 12:01:48 +02:00
52eba5cae6 small fix/tweaks
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-05 17:20:42 +02:00
cd9cb48b04 set dataset invalid on OFF mode
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-05 16:31:41 +02:00
5c430212e7 that should fix the host build
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-03 17:32:35 +02:00
d8ab6abc49 FM should build again
Some checks failed
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-07-03 17:16:51 +02:00
d1b9608a14 that should do the job
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-07-03 17:13:11 +02:00
25c7058da5 changelog
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-07-03 16:56:36 +02:00
9ece676313 lets see if this works 2023-07-03 16:55:45 +02:00
697a3e8577 Merge remote-tracking branch 'origin/main' into swap-pl-ps-i2c
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-07-03 16:34:04 +02:00
dea3077f29 changelog, prep v6.0.0
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-07-02 14:44:15 +02:00
d687715bcb Merge pull request 'v6.0.0' (#724) from main-v6 into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #724
2023-07-02 14:43:24 +02:00
e2cd822e9c Merge branch 'main' into main-v6
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-02 14:30:50 +02:00
0e9035d6c1 changelog, prep v5.2.0
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-07-02 14:21:35 +02:00
c80eff4922 Merge pull request 'EM ACS board' (#723) from add-back-em-acs-brd into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #723
2023-07-02 14:19:54 +02:00
a5c9e1481b changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-02 14:04:29 +02:00
e19ddcfbd8 EM ACS board
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-07-02 14:02:37 +02:00
add079a7c6 Merge pull request 'Updates for new firmware' (#721) from complete-fw-tests into main-v6
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #721
2023-07-01 13:30:26 +02:00
9cdcd47b1a Merge remote-tracking branch 'origin/main-v6' into complete-fw-tests
All checks were successful
EIVE/eive-obsw/pipeline/pr-main-v6 This commit looks good
2023-06-30 10:45:16 +02:00
d14e256901 STR tests
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-29 16:40:21 +02:00
dd5270e974 Merge pull request 'Important bugfix for live channel' (#720) from live-channel-bugfix into main-v6
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #720
2023-06-29 16:39:09 +02:00
56ea9af615 add documentation of initial delay
All checks were successful
EIVE/eive-obsw/pipeline/pr-main-v6 This commit looks good
2023-06-29 15:06:25 +02:00
4fc999e102 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main-v6 This commit looks good
2023-06-29 15:03:45 +02:00
04d24e74b1 q7s-package version specification
All checks were successful
EIVE/eive-obsw/pipeline/pr-main-v6 This commit looks good
2023-06-29 15:01:54 +02:00
8137c9ea25 Merge remote-tracking branch 'origin/main-v6' into complete-fw-tests
All checks were successful
EIVE/eive-obsw/pipeline/pr-main-v6 This commit looks good
2023-06-29 15:00:49 +02:00
723b4bba3f Merge remote-tracking branch 'origin/main-v6' into live-channel-bugfix 2023-06-29 15:00:20 +02:00
8cff2fd6f7 Merge remote-tracking branch 'origin/main' into live-channel-bugfix 2023-06-29 15:00:11 +02:00
a1f7f77e01 Merge remote-tracking branch 'origin/main' into main-v6
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-29 14:59:18 +02:00
f3aab775f3 Merge pull request 'Core controller bugfix' (#719) from core-ctrl-init-bugfix into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #719
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-06-29 14:58:28 +02:00
59d542ab39 Merge remote-tracking branch 'origin/main' into core-ctrl-init-bugfix 2023-06-29 14:58:13 +02:00
7b0285c4ce Merge pull request 'Only reset PTME on rate change' (#716) from only-reset-ptme-on-rate-change into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #716
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-06-29 14:56:35 +02:00
0a77ee0508 Merge remote-tracking branch 'origin/main' into only-reset-ptme-on-rate-change
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build queued...
2023-06-29 14:51:15 +02:00
51cbe46cf5 why indeed
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build started...
2023-06-29 14:49:57 +02:00
26fc4b8add Merge pull request 'small fix for persistent TM store' (#722) from persistent-tm-stores-fixes into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #722
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-06-29 14:46:50 +02:00
825de04f3b changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-29 10:15:36 +02:00
33985937b7 typo
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-29 09:44:09 +02:00
ba36b5f091 Merge branch 'main-v6' into live-channel-bugfix
All checks were successful
EIVE/eive-obsw/pipeline/pr-main-v6 This commit looks good
2023-06-29 08:55:09 +02:00
4f5903227e changelog
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main-v6 Build queued...
2023-06-29 08:54:58 +02:00
2173d89047 changelog 2023-06-29 08:54:34 +02:00
0a12dbf2be changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-29 08:53:08 +02:00
ad3c0e2a0e small fix for persistent TM store
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-29 01:28:40 +02:00
03e772246f less cycles..
All checks were successful
EIVE/eive-obsw/pipeline/pr-main-v6 This commit looks good
2023-06-29 00:35:06 +02:00
25da131653 seems to work well
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main-v6 This commit looks good
2023-06-29 00:33:58 +02:00
4c6b098f42 Merge branch 'live-channel-bugfix' into only-reset-ptme-on-rate-change-v6
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-28 17:49:06 +02:00
b57283101b important bugfix for live channel
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-28 17:46:21 +02:00
9dfdf38822 important bugfix for live channel
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-28 17:20:10 +02:00
c6240285e2 Merge branch 'core-ctrl-init-bugfix' into only-reset-ptme-on-rate-change-v6
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-28 15:51:48 +02:00
87c05705ec core ctrl bugfix
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-28 15:43:44 +02:00
c881b36630 prevent warning
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-28 15:28:27 +02:00
a380ff5ac9 Merge branch 'main-v6' into only-reset-ptme-on-rate-change-v6
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-28 15:24:20 +02:00
4d17184fba Merge remote-tracking branch 'origin/main' into only-reset-ptme-on-rate-change
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-28 15:18:05 +02:00
d8efd05a88 Merge branch 'main' into main-v6
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-28 15:08:38 +02:00
109856eef8 Merge pull request 'prep v5.1.0' (#718) from prep_v5.1.0 into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #718
2023-06-28 13:57:04 +02:00
90bafa717b prep v5.1.0
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main Build started...
2023-06-28 13:41:51 +02:00
0cdb850f69 Merge pull request 'Seq Count Persistent + MSG type counter' (#711) from sequence-counter-persistent-msg-type-count-support into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #711
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-06-28 13:37:14 +02:00
4c63fed69d that is annoying
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-28 13:35:38 +02:00
eb27ab4bb0 fix and optimization
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-28 13:32:35 +02:00
b0a38136c1 Merge remote-tracking branch 'origin/main' into only-reset-ptme-on-rate-change 2023-06-28 13:28:00 +02:00
6c2548fb56 Merge branch 'main' into sequence-counter-persistent-msg-type-count-support
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build started...
2023-06-28 13:26:55 +02:00
7d3f9ada18 Merge pull request 'higher rx set rate during pass' (#715) from rx-dataset-higher-rate-during-pass into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #715
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-06-28 13:26:42 +02:00
b5cc430b5b Merge remote-tracking branch 'origin/main' into only-reset-ptme-on-rate-change
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-06-28 13:21:33 +02:00
52fedb94e8 bump fsfw and tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-28 13:20:50 +02:00
cdabf113ca Merge remote-tracking branch 'origin/main' into rx-dataset-higher-rate-during-pass
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build started...
2023-06-28 13:18:45 +02:00
c3e66f5320 changelogge
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-28 13:18:00 +02:00
2d2c1d8721 Merge branch 'main' into sequence-counter-persistent-msg-type-count-support
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-28 10:07:51 +02:00
9e8a417115 Merge pull request 'various improvements for heater handler' (#717) from only-one-heater-cmd-at-a-time into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #717
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-06-28 10:01:20 +02:00
fba87cc0e8 changelog typos
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-27 18:09:38 +02:00
50a8a6fffe more changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-27 18:02:49 +02:00
1e767afa11 only handle one message per cycle 2023-06-27 17:55:49 +02:00
15a67b81f9 various improvements
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-27 17:36:52 +02:00
bf25266055 Merge branch 'main' into rx-dataset-higher-rate-during-pass
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-27 11:05:56 +02:00
ef08f348dc Merge remote-tracking branch 'origin/main' into sequence-counter-persistent-msg-type-count-support
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-26 18:26:08 +02:00
47ff8a418e Merge pull request 'Internal Error Reporter Set' (#702) from internal-error-reporter-set into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #702
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-06-26 18:25:13 +02:00
f0fbed1593 Merge remote-tracking branch 'origin/main' into internal-error-reporter-set
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-26 18:13:44 +02:00
8b2bf21025 Merge remote-tracking branch 'origin/main' into sequence-counter-persistent-msg-type-count-support
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-06-26 18:12:45 +02:00
0764646d2b Merge pull request 'Ordered dumps' (#706) from ordered-dumps into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #706
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-06-26 18:11:07 +02:00
e752cdcc67 bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-26 18:10:41 +02:00
91c53df2c9 Merge remote-tracking branch 'origin/main' into internal-error-reporter-set
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-26 18:03:06 +02:00
c6231d2337 Merge remote-tracking branch 'origin/main' into sequence-counter-persistent-msg-type-count-support
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-26 17:59:26 +02:00
0dfe68eb8d Merge remote-tracking branch 'origin/main' into ordered-dumps
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-26 17:57:26 +02:00
b273729b10 Merge pull request 'create a v5.0.0 snapshot' (#714) from prep_v5.0.0-release into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #714
2023-06-26 17:55:28 +02:00
67024ec933 that was already pulled in
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-26 17:39:41 +02:00
3a20748ff6 create a v5.0.0 snapshot
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-26 17:36:47 +02:00
516898b7b2 Merge pull request 'prep v5.0.0' (#713) from v5.0.0-dev into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #713
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-06-26 17:34:45 +02:00
27f77799a6 bump major version
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-26 17:33:17 +02:00
9080e7cbe4 Merge branch 'v5.0.0-dev' into main-v6 2023-06-26 17:33:01 +02:00
bd4e05c944 bump version specifier
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build started...
2023-06-26 17:30:30 +02:00
72ffa365d4 version constraints for PL I2C reset pin
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build started...
2023-06-26 17:29:53 +02:00
52f5b088bf add version constraints for FW version read
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-26 17:21:57 +02:00
6c39e7dd0c and go back to newest version here
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-26 17:08:39 +02:00
73498ac9af prepare v5.0.0, revert firmware interfacing changes
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-26 16:53:54 +02:00
1f18904810 bump tmtc
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main-v3 This commit looks good
EIVE/eive-obsw/pipeline/head Build queued...
2023-06-26 15:38:37 +02:00
1703f7a714 Merge remote-tracking branch 'origin/main' into internal-error-reporter-set
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-26 15:36:23 +02:00
13bb572348 Merge remote-tracking branch 'origin/main' into sequence-counter-persistent-msg-type-count-support
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-26 15:35:22 +02:00
3e21f9c259 Merge remote-tracking branch 'origin/main' into ordered-dumps
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-26 15:34:58 +02:00
239410e2dc Merge pull request 'New total reboot counter handling' (#708) from total-boot-counter-file into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #708
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-06-26 15:33:21 +02:00
fca6834d17 higher rx set rate during pass
Some checks are pending
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-main Build queued...
2023-06-26 15:32:52 +02:00
1cc62238c2 only reset PTME on rate change init
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-06-26 14:39:03 +02:00
05a5c63765 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-26 11:20:33 +02:00
c806aa81f0 what does the new compiler want?
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-26 11:14:11 +02:00
93fb207032 C++ insanity..
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-06-25 13:12:39 +02:00
80160e8291 that was hopefully the last set of fixes
Some checks failed
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-06-25 13:07:31 +02:00
5a15d39a1d important order bugfix
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-06-25 12:49:51 +02:00
e036ed2bff now its complete
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-06-25 12:47:28 +02:00
0db7b5251c Merge branch 'total-boot-counter-file' into sequence-counter-persistent-msg-type-count-support
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-06-25 12:45:34 +02:00
873316d012 sequence counter isn ow persistent, msg type count support 2023-06-25 12:41:20 +02:00
0f818a5596 Merge remote-tracking branch 'origin/main' into internal-error-reporter-set
All checks were successful
EIVE/eive-obsw/pipeline/pr-v4.1.0-dev This commit looks good
2023-06-25 11:12:10 +02:00
dc89350ac7 Merge remote-tracking branch 'origin/main' into total-boot-counter-file
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-25 11:09:24 +02:00
8b13337845 Merge branch 'ordered-dumps' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into ordered-dumps
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-25 11:07:47 +02:00
76933671a6 changelog 2023-06-25 11:07:41 +02:00
491a341efe Merge branch 'main' into ordered-dumps
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-25 11:06:24 +02:00
5a642b7d2f update core ctrl
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-25 11:04:13 +02:00
6b9aa8eb7b Merge branch 'total-boot-counter-file' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into total-boot-counter-file
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-06-25 10:45:12 +02:00
3ee2e72652 better name for function 2023-06-25 10:45:04 +02:00
91106feb82 Merge pull request 'update .cproject file' (#710) from update-project-file into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #710
2023-06-25 10:41:15 +02:00
7a68188140 Merge branch 'main' into total-boot-counter-file
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-25 10:30:28 +02:00
d88ffb1734 small fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-25 10:24:27 +02:00
c2b415bdd6 update .cproject file
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main Build started...
2023-06-25 01:01:21 +02:00
b4778f3ce9 Merge remote-tracking branch 'origin/main' into ordered-dumps
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-24 21:01:35 +02:00
c50a74d117 delete ordering 2023-06-24 21:00:57 +02:00
25d10e3877 that was all the fixes (hopefully) 2023-06-24 20:57:54 +02:00
facfad3367 v3.1.1 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.3.0-dev This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-24 20:12:37 +02:00
d95ecc3678 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-24 19:57:16 +02:00
966faf51b5 last important bugfixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-24 19:55:56 +02:00
5c9d7a43ab that reboot was not graceful..
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-24 19:22:25 +02:00
4465170747 i hope that is the last bug..
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-24 19:00:09 +02:00
5420e322f7 this is annoying to test..
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-24 18:52:29 +02:00
6040cd2d1e some important tweaks
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-24 18:48:12 +02:00
4e7b774d32 some legacy/backword compatiblity additions
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-24 18:37:58 +02:00
7f36455857 fix project file, continue core ctrl 2023-06-24 18:06:58 +02:00
07df6eb95f continuing
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-24 17:29:23 +02:00
88e8268c26 start refactoring reboot wd handling 2023-06-24 17:14:56 +02:00
04f4eedb78 that should make it work
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-24 12:01:12 +02:00
53b48ad99b this is tricky
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-06-24 11:46:56 +02:00
a8ab40674f seems to work well
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-24 11:08:50 +02:00
18b67d18a7 seems to work now
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-24 02:07:11 +02:00
97d41a125b Merge remote-tracking branch 'origin/main' into ordered-dumps
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-24 01:24:24 +02:00
20bc31449a Merge pull request 'prep v4.0.1 patch' (#705) from prep_v4.0.1 into main
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.3.0-dev This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #705
2023-06-24 01:22:04 +02:00
2901ebc15c prep v4.0.1 patch
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
2023-06-24 01:21:46 +02:00
e992f933ec Merge pull request 'Bugfix for packet demultiplexing' (#704) from bugfix-packet-demux into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #704
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-06-23 20:21:01 +02:00
a95ab49690 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-23 17:56:54 +02:00
b261779ebf this iis less confusing
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-23 17:53:19 +02:00
db5e7a535e remove printouts
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-23 17:47:18 +02:00
4a8e111a18 bugfix packet demux
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-23 17:44:18 +02:00
2e041c3013 some more fixes
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-23 17:07:07 +02:00
9023405b96 some fxes
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-23 16:05:38 +02:00
1d047f3c92 implement ordered sets
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-23 14:55:51 +02:00
253af8193f fix unittest
All checks were successful
EIVE/eive-obsw/pipeline/pr-v4.1.0-dev This commit looks good
2023-06-22 18:43:04 +02:00
3d07814efb Merge remote-tracking branch 'origin/main' into internal-error-reporter-set
Some checks failed
EIVE/eive-obsw/pipeline/pr-v4.1.0-dev There was a failure building this commit
2023-06-22 18:39:34 +02:00
f79acca1d6 afmt
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-22 18:34:16 +02:00
4a9b6bc0c4 Merge pull request 'v4.0.0' (#699) from v4.0.0-dev into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #699
2023-06-22 17:43:30 +02:00
4dad1df13b Merge branch 'main' into v4.0.0-dev
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build started...
2023-06-22 17:36:19 +02:00
f67d72a8dd prep v4.0.0 final
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-22 17:34:56 +02:00
da79f24b33 Merge pull request 'reduce GNSS pin reset assertion time' (#703) from gnss-reset-adaptions into v4.0.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
Reviewed-on: #703
2023-06-22 17:31:12 +02:00
b2b7900720 reduce GNSS pin reset assertion time
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-v4.0.0-dev Build started...
2023-06-22 16:54:49 +02:00
de4562dd2f changelog tweak 2
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-22 16:53:24 +02:00
fb9303a8de changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-22 16:52:46 +02:00
9b2b087d08 remove stray newline
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-22 16:49:17 +02:00
1c27ba7261 bump tmtc and CHANGELOG
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-22 16:47:45 +02:00
3a59cd301b Merge pull request 'Add force flag for cp helper' (#667) from extend-cp-helper into v4.0.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
Reviewed-on: #667
2023-06-22 16:45:14 +02:00
4c66d8fb5f Merge branch 'v4.0.0-dev' into extend-cp-helper
Some checks are pending
EIVE/eive-obsw/pipeline/pr-v4.0.0-dev Build queued...
2023-06-22 16:44:39 +02:00
b634543c5a Merge pull request 'More Info on Reboot' (#701) from more-info-on-reboot into v4.0.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
Reviewed-on: #701
2023-06-22 16:44:22 +02:00
ced812052d Merge branch 'v4.0.0-dev' into extend-cp-helper
Some checks are pending
EIVE/eive-obsw/pipeline/pr-v4.0.0-dev Build queued...
2023-06-22 16:33:58 +02:00
32b074b86e that should fix the build
Some checks failed
EIVE/eive-obsw/pipeline/pr-v4.1.0-dev There was a failure building this commit
2023-06-22 16:29:52 +02:00
a0d559a5fd Merge branch 'v4.0.0-dev' into extend-cp-helper
Some checks failed
EIVE/eive-obsw/pipeline/pr-v4.0.0-dev There was a failure building this commit
2023-06-22 16:24:24 +02:00
c7e554aebc Merge branch 'more-info-on-reboot' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into more-info-on-reboot
All checks were successful
EIVE/eive-obsw/pipeline/pr-v4.0.0-dev This commit looks good
2023-06-22 16:19:45 +02:00
e8bd3f447d bump tmtc 2023-06-22 16:19:38 +02:00
d1086bc9aa Merge branch 'v4.0.0-dev' into more-info-on-reboot
All checks were successful
EIVE/eive-obsw/pipeline/pr-v4.0.0-dev This commit looks good
2023-06-22 16:17:17 +02:00
461782acdb Merge branch 'v4.0.0-dev' into internal-error-reporter-set
Some checks failed
EIVE/eive-obsw/pipeline/pr-v4.0.0-dev There was a failure building this commit
2023-06-22 16:11:33 +02:00
98a2338dcb Merge pull request 'Set temperatures to invalid value when applicable' (#700) from set-more-temps-to-invalid-value into v4.0.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
Reviewed-on: #700
2023-06-22 16:10:34 +02:00
74e945ddff changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-06-22 16:10:07 +02:00
a3b140b680 internal error reporter extension 2023-06-22 16:09:24 +02:00
880b8620ba bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-v4.0.0-dev This commit looks good
2023-06-22 14:52:38 +02:00
788fbb72f0 that should do the job
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-22 14:25:11 +02:00
afcc0cc21d changelog
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-06-22 14:07:37 +02:00
db3a4955c2 core ctrl provides more info on reboot 2023-06-22 14:06:34 +02:00
d0a9460676 Merge remote-tracking branch 'origin/v4.0.0-dev' into set-more-temps-to-invalid-value
All checks were successful
EIVE/eive-obsw/pipeline/pr-v4.0.0-dev This commit looks good
2023-06-22 11:36:49 +02:00
add083135e changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-v4.0.0-dev This commit looks good
2023-06-22 11:35:46 +02:00
3ae7dab8c7 those are the most important cases
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-v4.0.0-dev This commit looks good
2023-06-22 11:33:54 +02:00
0c394ad34d set temperature invalid properly
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-06-22 11:30:34 +02:00
4de1932c8a Merge pull request 'Increase FM and EM similarity' (#697) from increase-fm-em-similarity into main
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.0.5-branch This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #697
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-06-21 20:26:09 +02:00
1c74d39faf Merge pull request 'sus convert bugfix' (#698) from sus-converter-h-fix into v4.0.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #698
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-06-21 19:39:59 +02:00
f40348904c Merge branch 'v4.0.0-dev' into sus-converter-h-fix
Some checks are pending
EIVE/eive-obsw/pipeline/pr-v4.0.0-dev Build started...
2023-06-21 19:39:37 +02:00
2d4a3c0ee2 new FW info event
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-21 19:01:44 +02:00
295da50bc7 sus convert bugfix
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-21 17:46:59 +02:00
3f9bf8e173 make imtq dummy more similar
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-21 14:29:00 +02:00
4893af07ae extend RW dummy
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-21 13:59:15 +02:00
af8b4d5bc8 remove commented code
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-21 13:53:34 +02:00
2ae89769af Merge remote-tracking branch 'origin/main' into v4.0.0-dev
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-06-21 13:51:26 +02:00
4ed7689956 Merge pull request 'v3.3.0-dev for release' (#696) from v3.3.0-dev into main
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.0.5-branch This commit looks good
Reviewed-on: #696
2023-06-21 13:48:45 +02:00
7ceb81f68d Merge remote-tracking branch 'origin/main' into v3.3.0-dev
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build queued...
EIVE/eive-obsw/pipeline/pr-v3.1.1-branch This commit looks good
2023-06-21 13:47:46 +02:00
6fa53e1869 Merge pull request 'v3.2.0-dev for release' (#695) from v3.2.0-dev into main
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.0.5-branch This commit looks good
Reviewed-on: #695
2023-06-21 13:45:54 +02:00
54328ff357 date correction
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build started...
EIVE/eive-obsw/pipeline/pr-v3.1.1-branch This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-21 13:44:44 +02:00
c43d9a5a9a bump version 2023-06-21 13:44:04 +02:00
277a6ad33c Merge branch 'v3.2.0-dev' into v3.3.0-dev
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-v3.1.1-branch This commit looks good
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-20 20:59:12 +02:00
b655c03564 cmakelists
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.1.1-branch This commit looks good
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-20 20:58:31 +02:00
49e15de08a Merge branch 'v3.2.0-dev' into v3.3.0-dev
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
2023-06-20 20:56:37 +02:00
6ef8c62aca BPX batt handler
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-v3.1.1-branch This commit looks good
2023-06-20 20:53:49 +02:00
695a663a15 and put everything back
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-06-20 20:52:01 +02:00
94cf42fbeb changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-06-20 20:48:46 +02:00
fe1e236466 bump fsfw
Some checks are pending
EIVE/eive-obsw/pipeline/pr-v3.1.1-branch This commit looks good
EIVE/eive-obsw/pipeline/head Build queued...
2023-06-20 20:36:13 +02:00
861ad9e62d ithis is better
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.1.1-branch This commit looks good
2023-06-20 20:14:08 +02:00
5e4032032f that should do the job
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-v3.1.1-branch This commit looks good
2023-06-20 19:39:22 +02:00
3a137762f3 Merge pull request 'sus-vector-fix-new-v3.1.1' (#690) from sus-vector-fix-new-v3.1.1 into main
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.0.5-branch This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #690
2023-06-20 18:26:21 +02:00
92a0752e18 Merge branch 'main' into sus-vector-fix-new-v3.1.1
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build queued...
2023-06-20 18:24:54 +02:00
6ed2fcd904 small changelog tweak
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main Build queued...
2023-06-20 18:22:43 +02:00
2c17aff124 Merge pull request 're-assign active file on file corruption when necessary' (#688) from reassign-active-file-on-corruption into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #688
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-06-20 18:21:31 +02:00
3ee9a914cc Merge remote-tracking branch 'origin/main' into sus-vector-fix-new-v3.1.1
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-06-20 18:21:12 +02:00
7a119bab6e changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.1.1-reduced-to-bare-minimum This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-19 17:34:47 +02:00
147c39d539 small fix 2023-06-19 17:34:13 +02:00
dcf01d822b only check validity if sensor itself is valid
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.1.1-reduced-to-bare-minimum This commit looks good
2023-06-19 17:22:57 +02:00
a660d1d30a mini fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.1.1-reduced-to-bare-minimum This commit looks good
2023-06-19 17:08:05 +02:00
0732218249 bumped fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.1.1-reduced-to-bare-minimum This commit looks good
2023-06-19 17:05:23 +02:00
4b0062e3b2 fixed calculation of sun vector
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-v3.1.1-reduced-to-bare-minimum This commit looks good
2023-06-19 16:51:49 +02:00
b2a666d432 added parameter 2023-06-19 16:51:39 +02:00
7cc13d2024 little cleanup 2023-06-19 16:51:27 +02:00
0872fad7dc make host build compile as well
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.0.4-branch This commit looks good
2023-06-19 09:57:01 +02:00
df4e657ec3 create TCS CTRL TMP1075 PLCDU 1 se tdynamically
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-06-18 17:36:50 +02:00
8f7d3dd815 changelog
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-06-18 17:24:19 +02:00
97268af555 another tmp FDIR fix
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-06-18 17:11:38 +02:00
322151acf8 tmp fdir bugfix: use strange reply counter 2023-06-18 16:34:07 +02:00
ecb8de1550 need to verify some things here later.. 2023-06-18 16:23:08 +02:00
0cd5526de4 always add TMP devs now 2023-06-18 14:19:19 +02:00
a87a01d072 make it work for EM
Some checks failed
EIVE/eive-obsw/pipeline/pr-v2.0.4-branch There was a failure building this commit
2023-06-18 14:02:53 +02:00
07bb293816 tmp1075 workssssss
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-06-18 13:38:00 +02:00
73d7f0a1e5 Merge branch 'main' into reassign-active-file-on-corruption
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-18 12:51:24 +02:00
c3679f044c re-assign active file on file corruption when necessary
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-06-18 12:49:22 +02:00
68f84e71ff version remaings 2.0.5
Some checks failed
EIVE/eive-obsw/pipeline/pr-v2.0.4-branch There was a failure building this commit
2023-06-17 20:04:45 +02:00
f2f33f5049 Merge tag 'v2.0.5' into v3.1.1-reduced-to-bare-minimum
Some checks failed
EIVE/eive-obsw/pipeline/pr-v2.0.4-branch There was a failure building this commit
v2.0.5
2023-06-17 19:56:47 +02:00
3314d07942 correct patch version
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
EIVE/eive-obsw/pipeline/pr-v2.0.4-branch There was a failure building this commit
2023-06-17 19:21:28 +02:00
4155aa8776 v3.1.1 reduced to the bare minimum
Some checks failed
EIVE/eive-obsw/pipeline/pr-v2.0.4-branch There was a failure building this commit
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-06-17 19:17:50 +02:00
727050520b that should do the job
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-06-17 17:24:51 +02:00
269d5f6a0a stupid tmps 2023-06-17 17:01:01 +02:00
d6dd943ebf tmp is back in the house
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-06-17 15:28:05 +02:00
31fdbac8c0 Merge remote-tracking branch 'origin/main' into swap-pl-ps-i2c 2023-06-17 14:29:38 +02:00
9c0744ae02 minor improvements 2023-06-17 12:24:54 +02:00
86d22affe2 Merge pull request 'SUS Total Vector Eclipse Fix' (#684) from sus-tot-reset-fix into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #684
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2023-06-16 18:28:52 +02:00
3e9accfa7b Merge remote-tracking branch 'origin/v4.0.0-dev' into swap-pl-ps-i2c
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-16 16:52:05 +02:00
df4205c71e fixed sizeof for mgmVec stuff
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-16 14:21:37 +02:00
1b919ceaec swap i2cs
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-16 13:54:50 +02:00
e130d45f0b fixed type of doube zero vector
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-15 20:07:33 +02:00
9544516cc4 Merge pull request 'Add PL I2C reset GPIO' (#683) from add-pl-i2c-resetn into v4.0.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #683
2023-06-15 19:10:55 +02:00
3dbc01bd8a cleanup
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-15 18:16:24 +02:00
51a3a2f5cf changelog
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-15 17:58:35 +02:00
cada6e0440 fixed memcpy
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-15 17:56:45 +02:00
a53f1be710 guess i never pushed this
All checks were successful
EIVE/eive-obsw/pipeline/pr-v4.0.0-dev This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-15 17:51:32 +02:00
3dd7530c3d Merge branch 'v4.0.0-dev' into add-pl-i2c-resetn
All checks were successful
EIVE/eive-obsw/pipeline/pr-v4.0.0-dev This commit looks good
2023-06-15 10:08:06 +02:00
931bb5ee28 Merge pull request 'dock hk improvements' (#676) from p60dock-hk-improvements into v4.0.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #676
2023-06-15 10:04:15 +02:00
d85a5975c0 Merge branch 'v4.0.0-dev' into p60dock-hk-improvements
Some checks are pending
EIVE/eive-obsw/pipeline/pr-v4.0.0-dev Build started...
2023-06-15 10:03:35 +02:00
456ee156c3 finally have a firmware version
All checks were successful
EIVE/eive-obsw/pipeline/pr-v4.0.0-dev This commit looks good
2023-06-15 10:02:12 +02:00
40eae48a1a changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-v4.0.0-dev This commit looks good
2023-06-15 09:51:34 +02:00
8da5f4dd44 add PS I2C resetn
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-15 08:39:06 +02:00
4bd3cf4d52 Merge remote-tracking branch 'origin/main' into v4.0.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-15 05:09:52 +02:00
07ca95205d Merge pull request 'prep patch release' (#682) from prep_v3.1.1 into main
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.0.4-branch This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #682
2023-06-14 21:41:03 +02:00
b56f2b4b0e prep patch release
Some checks are pending
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-main Build queued...
2023-06-14 21:28:38 +02:00
05738d1e25 Merge pull request 'TMP1075 two's complement bugfix' (#681) from tmp-sign-bugfix into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #681
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-06-14 21:07:41 +02:00
12bc9268f7 perform proper sign extension
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-14 18:51:06 +02:00
a05a8ffb50 Merge remote-tracking branch 'origin/main' into tmp-sign-bugfix
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-14 18:11:25 +02:00
cf875f7883 bump minor version
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-14 06:20:04 +02:00
4bef1bd567 bump tmtc to v4.1.0
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-14 06:17:36 +02:00
885fddd45f bump changelgo
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-14 06:15:04 +02:00
fab4cdd0dc changelog 2023-06-14 06:09:18 +02:00
693e11bcb2 Merge pull request 'extend bpx handler' (#680) from extend-bpx-handler into main
Reviewed-on: #680
2023-06-14 06:08:02 +02:00
9196b8b0ed bump tmtc 2023-06-14 06:07:46 +02:00
65815e4646 extend bpx handler
Some checks are pending
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-main Build started...
2023-06-14 05:17:27 +02:00
a023fe2c7d Merge remote-tracking branch 'origin/main' into relax-sus-fdir
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-14 03:43:38 +02:00
57ecfadf43 Merge pull request 'Increase number of allowed parallel HK commands' (#678) from hk-service-increase-num-parallel-cmds into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #678
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-06-14 03:42:42 +02:00
2a4d86de54 Merge remote-tracking branch 'origin/main' into relax-sus-fdir
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-14 03:41:34 +02:00
71d417710e changelog
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build started...
2023-06-14 03:39:13 +02:00
a66b503e57 Merge branch 'main' into hk-service-increase-num-parallel-cmds
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build started...
2023-06-14 03:37:37 +02:00
88f3d92dd8 Merge pull request 'Heater: Correction for switch enumeration' (#679) from heater-ordering-enum-fixes into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #679
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-06-14 03:35:24 +02:00
26199e7317 changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-14 03:18:47 +02:00
620dc60342 heater ordering enum fixes
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-06-14 03:15:59 +02:00
38305e723f changelog
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-13 23:26:27 +02:00
cb879ea97f tmp sign bugfix 2023-06-13 23:25:44 +02:00
f58f4c302c bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-13 09:02:38 +02:00
fdf3657cf6 Merge remote-tracking branch 'origin/main' into hk-service-increase-num-parallel-cmds 2023-06-13 08:08:15 +02:00
8062c5edad removed old comment
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-13 07:58:40 +02:00
0788a3d551 changelog typo
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-13 07:57:28 +02:00
b2b6e2e797 comment
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-13 07:55:00 +02:00
5e79293d38 Merge remote-tracking branch 'origin/main' into relax-sus-fdir
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-13 07:49:28 +02:00
196823b2e0 relax sus fdir 2023-06-13 07:48:32 +02:00
c5b2b5c56c Merge remote-tracking branch 'origin/v4.0.0-dev' into p60dock-hk-improvements
All checks were successful
EIVE/eive-obsw/pipeline/pr-v4.0.0-dev This commit looks good
2023-06-11 21:49:45 +02:00
55d6edcd66 Merge remote-tracking branch 'origin/main' into v4.0.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-11 18:54:04 +02:00
20e920cde2 bump fsfw again
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-11 18:49:28 +02:00
3fdd1feb94 prep release
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-06-11 18:46:30 +02:00
a4391c0515 increase number of allowed parallel HK commands
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
2023-06-11 18:04:24 +02:00
1acb7d2679 Merge pull request 'chonky' (#670) from v3.0.0-dev into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #670
2023-06-11 14:25:19 +02:00
ef40391c09 removed debug output
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main This commit looks good
EIVE/-/pipeline/pr-main Build queued...
2023-06-10 15:34:45 +02:00
824f445ee1 boop 2023-06-10 15:14:20 +02:00
407901d990 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-10 14:48:10 +02:00
7132b0c53f bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-09 19:07:23 +02:00
df13fc2e80 Merge remote-tracking branch 'origin/main' into v3.0.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-09 18:43:15 +02:00
8adbbf50b2 Merge pull request 'Route CFDP to live' (#674) from route-cfdp-to-live into v3.0.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
Reviewed-on: #674
2023-06-09 18:42:19 +02:00
962c792679 Merge pull request 'Route CFDP to live' (#675) from route-cfdp-to-live-main into main
Some checks are pending
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/-/pipeline/head Build started...
Reviewed-on: #675
2023-06-09 18:41:59 +02:00
c44d8e6437 Merge branch 'main' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main Build started...
2023-06-09 18:37:22 +02:00
4146050807 changelog 2023-06-09 18:37:18 +02:00
bd2f1bf7f2 route CFDP to live VC0 2023-06-09 18:36:30 +02:00
020daf9a77 Merge pull request 'minor tweaks to fix main build' (#673) from minor-tweaks into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #673
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-06-09 18:32:39 +02:00
e3ae6260ad changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-09 18:26:41 +02:00
45b9e88915 route CFDP to live VC0 2023-06-09 18:25:59 +02:00
cf48a18733 bump fsfw
Some checks are pending
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/-/pipeline/head Build started...
2023-06-09 18:12:32 +02:00
9e787a7e44 Merge branch 'v3.0.0-dev' into v4.0.0-dev
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-06-09 18:10:38 +02:00
9cd38a33d4 minor tweaks to fix main build
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-09 17:16:01 +02:00
9740435d65 Merge pull request 'Core Controller Dir Listing FSM' (#669) from core-ctrl-dir-listing-fsm into v3.0.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
Reviewed-on: #669
2023-06-09 14:45:39 +02:00
b2535662e6 Merge branch 'v3.0.0-dev' into core-ctrl-dir-listing-fsm
Some checks are pending
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev Build queued...
2023-06-09 14:44:44 +02:00
1cf318fca1 Merge pull request 'Remove TCP IP components' (#672) from remove-tcp-ip-components into v3.0.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
Reviewed-on: #672
2023-06-09 14:44:35 +02:00
171d4976c3 removing printout
Some checks are pending
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev Build started...
2023-06-09 14:40:47 +02:00
e13fee75d0 this is dumb
Some checks are pending
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev Build started...
2023-06-09 14:38:54 +02:00
8e1af9cfba include stuff
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-09 14:36:10 +02:00
cd6b7d90be add one more cfg constant
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-09 14:25:59 +02:00
3bdbc67e0d Merge remote-tracking branch 'origin/v3.0.0-dev' into core-ctrl-dir-listing-fsm
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-09 14:24:42 +02:00
fe1cc9444d changelog
Some checks failed
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev There was a failure building this commit
2023-06-09 14:10:06 +02:00
019d1a7b0d that should do the job
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev There was a failure building this commit
2023-06-09 13:51:10 +02:00
1453b2abdc afmt
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-09 13:48:57 +02:00
fe70d2e047 Merge pull request 'Bump FSFW and TMTC: CFDP bugfix' (#671) from bump-fsfw-tmtc into v3.0.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
Reviewed-on: #671
2023-06-09 13:42:39 +02:00
900cb060e4 Merge branch 'bump-fsfw-tmtc' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into bump-fsfw-tmtc
Some checks are pending
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev Build queued...
2023-06-09 13:42:22 +02:00
bd7f28152a bump fsfw 2023-06-09 13:42:16 +02:00
9ec3eca10a Merge branch 'v3.0.0-dev' into bump-fsfw-tmtc
Some checks are pending
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev Build started...
2023-06-09 13:40:16 +02:00
4212fbef02 Merge pull request 'Move 2 pool variables' (#659) from move-pdu-datavar into v3.0.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
Reviewed-on: #659
2023-06-09 13:40:01 +02:00
6c1dfafb2e changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-09 13:13:05 +02:00
18ba3a711a bump fsfw
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
2023-06-09 13:11:50 +02:00
c1f8512b01 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-09 13:10:29 +02:00
c14bbe4a93 Merge branch 'v3.0.0-dev' into move-pdu-datavar
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-09 13:09:34 +02:00
0e171997d7 Merge pull request 'Rework config of GYRs' (#630) from gyr-confg-rework-2 into v3.0.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
Reviewed-on: #630
2023-06-09 13:09:19 +02:00
e08a2b76b9 Merge branch 'v3.0.0-dev' into move-pdu-datavar
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-09 13:05:32 +02:00
6ef593d8f3 bump fsfw
Some checks are pending
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev Build started...
2023-06-09 13:04:16 +02:00
08e7a8cf97 Merge branch 'v3.0.0-dev' into gyr-confg-rework-2
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-09 12:48:36 +02:00
d90ccd62f8 bump changelog and tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-06-09 12:47:07 +02:00
cab20a8c77 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-08 09:55:46 +02:00
6fdd9da2a0 Merge branch 'v3.0.0-dev' into gyr-confg-rework-2
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-08 09:36:07 +02:00
410fd1c425 final setting of dec rate filter
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-08 09:11:24 +02:00
deb154770d increased service 1 queue depth
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-07 16:21:51 +02:00
dcf3b1b1fe added debug statement for testing
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-07 15:55:26 +02:00
06c5344d8a this might actually work
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-07 15:14:03 +02:00
1dd38acee4 object factory stuff
Some checks failed
EIVE/eive-obsw/pipeline/pr-v4.0.0-dev There was a failure building this commit
EIVE/-/pipeline/pr-v4.0.0-dev Build queued...
2023-06-07 14:30:58 +02:00
26ed774806 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-07 14:25:13 +02:00
06b381d965 dir listing dump state machine
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-07 14:20:58 +02:00
4bcfb8f5a2 still doesnt work
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-07 14:13:32 +02:00
b8064c4a39 bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-07 13:50:11 +02:00
5ca96b2dd3 bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-07 13:49:12 +02:00
9aec8960b9 hi
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-07 13:43:23 +02:00
de35764ede Merge pull request 'ACS Ptg Ctrl Fixes' (#643) from acs-ptg-ctrl-fixes-2 into v3.0.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-main This commit looks good
Reviewed-on: #643
2023-06-07 11:49:09 +02:00
376c359d6e Merge branch 'v3.0.0-dev' into acs-ptg-ctrl-fixes-2
Some checks are pending
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev Build started...
2023-06-07 11:47:57 +02:00
a110bf32aa another small fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-07 11:46:23 +02:00
f4c9a4bda2 fix for indexing
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-07 11:38:02 +02:00
809d25890e init
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
EIVE/eive-obsw/pipeline/pr-v4.0.0-dev There was a failure building this commit
2023-06-07 11:33:09 +02:00
7fc934b9df Merge branch 'acs-ptg-ctrl-fixes-2' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into acs-ptg-ctrl-fixes-2
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-07 09:20:38 +02:00
7dbe69ef49 now he reads the comments ... what happened to him 2023-06-07 09:20:29 +02:00
72b5567f73 not that it matters
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-07 09:17:49 +02:00
6a2d5b8161 well this doesnt work
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-06 16:02:11 +02:00
5058b8905d let's not forget this
Some checks are pending
EIVE/eive-obsw/pipeline/pr-v4.0.0-dev This commit looks good
EIVE/-/pipeline/pr-v4.0.0-dev Build queued...
2023-06-06 14:05:44 +02:00
7d1b99c3f4 Merge branch 'v3.0.0-dev' into acs-ptg-ctrl-fixes-2
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-06 11:13:42 +02:00
8bfacbd5ef Merge pull request 'STR datasets to invalid on Shutdown' (#664) from str-invalid-off-transition into v3.0.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #664
2023-06-06 11:12:54 +02:00
8052734028 tiny tweak 2023-06-06 11:12:41 +02:00
b7eb693295 Merge branch 'v3.0.0-dev' into str-invalid-off-transition 2023-06-06 11:12:30 +02:00
aec383b974 add force flag for cp helper
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-v4.0.0-dev This commit looks good
2023-06-06 11:11:16 +02:00
caa2800a7a Merge branch 'v3.0.0-dev' into v4.0.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-06-06 11:10:03 +02:00
e96163f2a5 Merge pull request 'Small ACS Fixes' (#666) from small-acs-fixes into v3.0.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #666
2023-06-06 09:50:25 +02:00
d4b44962f5 prevent 0.4s spam
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-05 16:08:53 +02:00
58dee642a6 changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-05 16:06:36 +02:00
a5f9bb3177 reworked multiple rw failure handling
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-06-05 16:03:39 +02:00
939eeb09ec fixed str validity check 2023-06-05 16:03:18 +02:00
a1fec93b25 fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-05 16:02:01 +02:00
3be495fc30 Merge branch 'v3.0.0-dev' into gyr-confg-rework-2
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-05 09:54:23 +02:00
73981006a2 changelog
Some checks failed
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev There was a failure building this commit
2023-06-05 09:25:31 +02:00
5a60558354 set relevant datasets to invalid on shutdown 2023-06-05 09:24:52 +02:00
6915f0e003 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-02 17:45:08 +02:00
a58f51ee91 small fixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-02 17:41:25 +02:00
099eb488ae who needs comments anyways
Some checks failed
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev There was a failure building this commit
2023-06-02 17:37:47 +02:00
c64ea7f7e6 fixed nullspace rwSpd range
Some checks failed
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev There was a failure building this commit
2023-06-02 14:22:20 +02:00
487b6bf690 frmt
Some checks failed
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev There was a failure building this commit
2023-06-02 13:29:25 +02:00
bd15d7b0e2 fixed calculation of rotational rate for ptgCtrl which also is used for idle now
Some checks failed
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev There was a failure building this commit
2023-06-02 13:28:59 +02:00
f8d9925785 this shouldnt be needed
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-02 10:43:23 +02:00
4aca7a91e3 fixed more abs
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-02 09:33:40 +02:00
0fe7b256ec another RW speed scaling fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-01 17:11:55 +02:00
c6664c5cbf fixed RW scale for angular momentum calculation
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-01 16:04:51 +02:00
3750f1ac57 frmt
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-06-01 09:36:50 +02:00
bfa0a0707c fixed parameter IDs 2023-06-01 09:36:34 +02:00
ffe419e1ab Merge branch 'v3.0.0-dev' into acs-ptg-ctrl-fixes-2
Some checks failed
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev There was a failure building this commit
2023-06-01 09:11:30 +02:00
7b38ee3ecc Merge pull request 'Bump tmtc' (#663) from bump-tmtc into v3.0.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #663
2023-05-31 17:41:14 +02:00
f93e299296 bump tmtc
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-05-31 17:29:01 +02:00
004a283163 Merge pull request 'PAPB VC Simplification' (#661) from papb-vc-if-simplification into v4.0.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #661
2023-05-31 16:32:49 +02:00
a85b0a4a76 changelog
Some checks are pending
EIVE/eive-obsw/pipeline/pr-v4.0.0-dev Build started...
EIVE/eive-obsw/pipeline/head This commit looks good
2023-05-31 16:31:50 +02:00
998110dea4 back to somethng simple
All checks were successful
EIVE/eive-obsw/pipeline/pr-v4.0.0-dev This commit looks good
2023-05-31 16:10:52 +02:00
5c79d5e1f7 Merge pull request 'Update PTME code' (#635) from update-ptme-code-2 into v4.0.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #635
2023-05-31 15:23:14 +02:00
442b1c94a6 small fix
Some checks are pending
EIVE/eive-obsw/pipeline/pr-update-ptme-code-2 Build started...
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-v4.0.0-dev This commit looks good
2023-05-31 15:02:11 +02:00
8113a71c79 PAPB VC simplification
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-05-31 14:15:54 +02:00
cc60847bd0 Merge branch 'v4.0.0-dev' into update-ptme-code-2
All checks were successful
EIVE/eive-obsw/pipeline/pr-v4.0.0-dev This commit looks good
2023-05-31 11:53:04 +02:00
0b06bc4c8b bump major version
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-05-31 11:52:45 +02:00
9711bb6300 Merge branch 'v4.0.0-dev' into update-ptme-code-2
All checks were successful
EIVE/eive-obsw/pipeline/pr-v4.0.0-dev This commit looks good
2023-05-31 11:50:59 +02:00
68e4d9be07 Merge branch 'v3.0.0-dev' into v4.0.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-05-31 11:50:11 +02:00
ec8e8533d6 bump version
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-05-31 11:49:18 +02:00
170cb4d99c changelog
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-05-31 10:45:40 +02:00
f4523c8396 that should fix some issues
All checks were successful
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev This commit looks good
2023-05-31 10:39:56 +02:00
23625b2496 move 2 pool variables
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
EIVE/eive-obsw/pipeline/pr-v3.0.0-dev There was a failure building this commit
2023-05-31 09:53:13 +02:00
df69515bd4 Merge pull request 'switch info fix' (#657) from tcs-switch-info-fix into v2.1.0-dev
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/-/pipeline/head Build queued...
Reviewed-on: #657
2023-05-31 09:03:29 +02:00
ddcdc38310 try to get rid of the nanosleep
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.2.0-dev This commit looks good
2023-05-30 19:22:23 +02:00
9921522ce0 working, remove some old unrequired code 2023-05-30 19:06:59 +02:00
0aa617d440 switch info fix
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-30 16:54:56 +02:00
1f4880ddec Merge pull request 'small fix for mode event heater' (#656) from tcs-heater-event-fix into v2.1.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-main This commit looks good
Reviewed-on: #656
2023-05-30 16:47:20 +02:00
6aa856563e Merge branch 'tcs-heater-event-fix' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into tcs-heater-event-fix
Some checks are pending
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev Build started...
2023-05-30 16:45:36 +02:00
ebf5609680 changelog 2023-05-30 16:45:09 +02:00
5abcb31e22 Merge branch 'v2.1.0-dev' into tcs-heater-event-fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-30 16:39:39 +02:00
d400a71626 Merge pull request 'TCS: Prevent spam' (#655) from tcs-prevent-spam into v2.1.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #655
2023-05-30 15:47:29 +02:00
7811a4cc6b small fix for mode event heater
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-30 15:17:11 +02:00
b135e2f6a1 changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-30 15:14:47 +02:00
c5640c9fca prevent SPAM
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
2023-05-30 15:14:07 +02:00
fe34f69abe Merge pull request 'MTQ Scaling Bugfix' (#653) from mtq-cmd-bugfix into v2.1.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #653
2023-05-30 09:25:24 +02:00
899b19f34f Merge branch 'v2.1.0-dev' into mtq-cmd-bugfix
Some checks are pending
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev Build queued...
2023-05-30 09:25:06 +02:00
faeece7210 Merge pull request 'Remove Rad Sensor, fix image swichting' (#654) from remove-rad-sensor-again into v2.1.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #654
2023-05-30 09:24:17 +02:00
ada77ed53b ACS board still required
Some checks are pending
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev Build started...
2023-05-30 09:22:59 +02:00
f3cc406495 Merge branch 'v2.1.0-dev' into update-ptme-code-2
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.2.0-dev This commit looks good
2023-05-27 17:03:58 +02:00
71eca867ea i think the rad sesnor messing everything up
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-27 17:03:33 +02:00
9c78362ac5 use read write permissions for uio 2023-05-27 17:00:41 +02:00
a7c6cd017d changelog
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-26 13:53:46 +02:00
335394b863 fixed use of c abs which will truncate the value 2023-05-26 13:51:24 +02:00
de18ebfbe0 fixed error angle being calculated but not returned
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-26 09:57:03 +02:00
93cf6bab01 Merge pull request 'Heater Mode Fix' (#652) from heater-mode-fix into v2.1.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #652
2023-05-26 09:47:35 +02:00
5afe22bc92 heater mode fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-25 15:48:28 +02:00
2ff1c0d9d5 Merge pull request 'Added switcher for MGT dummy' (#651) from mgt-dummy-switcher-fix into v2.1.0-dev
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev Build queued...
Reviewed-on: #651
2023-05-25 11:23:56 +02:00
a6787538f2 changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev Build started...
2023-05-25 11:21:28 +02:00
db79e34d3b added switcher for IMTQ dummy 2023-05-25 11:20:28 +02:00
016e9dd2df Merge branch 'v2.2.0-dev' into update-ptme-code-2
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.2.0-dev This commit looks good
2023-05-25 10:34:04 +02:00
d22f948af4 Merge pull request 'Tweak for TM stores' (#650) from another-tweak-for-tm-stores into v2.1.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #650
2023-05-25 10:21:19 +02:00
351ca1154b Merge branch 'v2.1.0-dev' into v2.2.0-dev
Some checks are pending
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/-/pipeline/head Build queued...
2023-05-25 09:10:34 +02:00
e1aff4c641 another small logic fix
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-25 08:48:03 +02:00
8d041c6753 changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-05-25 08:45:20 +02:00
276501c504 another tweak for TM stores 2023-05-25 08:43:52 +02:00
65223ad3c7 Merge pull request 'ACU dummy enable HK sets' (#649) from acu-enable-hk-sets into v2.1.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #649
2023-05-24 14:15:38 +02:00
075c750e4a Merge branch 'v2.1.0-dev' into acu-enable-hk-sets
Some checks are pending
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev Build queued...
2023-05-24 14:14:07 +02:00
04f5011e0f Merge pull request 'IMTQ Dummy HK sets' (#648) from imtq-enable-hk-sets into v2.1.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #648
2023-05-24 14:13:46 +02:00
832140935f Merge branch 'v2.1.0-dev' into imtq-enable-hk-sets
Some checks are pending
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev Build started...
2023-05-24 14:13:29 +02:00
86bc6c4e0e Merge branch 'imtq-enable-hk-sets' into acu-enable-hk-sets
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-24 11:53:34 +02:00
31e24e297f fix host SW
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-24 11:53:07 +02:00
4dacca6df1 Merge pull request 'Another annoying TM store bug' (#645) from tm-store-task-base-bugfix into v2.1.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #645
2023-05-24 11:34:29 +02:00
ce9d00a42a Merge remote-tracking branch 'origin/v2.1.0-dev' into tm-store-task-base-bugfix
Some checks are pending
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev Build queued...
2023-05-24 11:34:39 +02:00
6e4d4cea95 Merge pull request 'HK TM store bug' (#644) from oh-no-no-no-bug into v2.1.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #644
2023-05-24 11:33:13 +02:00
3641dc3bfa Merge branch 'imtq-enable-hk-sets' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into imtq-enable-hk-sets
Some checks failed
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev There was a failure building this commit
2023-05-24 11:17:08 +02:00
b899bad0a8 IMTQ HK sets 2023-05-24 11:17:00 +02:00
9e0989915c changelog
Some checks failed
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev There was a failure building this commit
2023-05-24 11:16:35 +02:00
758f2b9d7a add ACU HK sets
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
2023-05-24 11:15:58 +02:00
46dd662145 Merge branch 'v2.1.0-dev' into imtq-enable-hk-sets
Some checks failed
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev There was a failure building this commit
2023-05-24 11:05:40 +02:00
8f4bba6fd1 Merge branch 'v2.1.0-dev' into oh-no-no-no-bug
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-24 11:04:48 +02:00
a38f5c78ae Merge branch 'v2.1.0-dev' into tm-store-task-base-bugfix
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-24 11:04:35 +02:00
dc36513efa Merge pull request 'always dump data into the VC' (#646) from always-dump-into-vc into v2.1.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #646
2023-05-24 11:04:24 +02:00
ee0646caf1 enable IMTQ HK sets
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-05-24 11:04:07 +02:00
a831ec7bda Merge branch 'v2.1.0-dev' into oh-no-no-no-bug
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-24 09:30:10 +02:00
efa9c42345 Merge remote-tracking branch 'origin/v2.1.0-dev' into always-dump-into-vc
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-24 09:27:26 +02:00
a0b1ac3d06 Merge pull request 'no dump cancel on TX OFF' (#647) from no-dump-cancel-on-tx-off into v2.1.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #647
2023-05-24 09:10:01 +02:00
30bb2da570 Merge branch 'v2.1.0-dev' into no-dump-cancel-on-tx-off
Some checks are pending
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev Build started...
2023-05-24 09:09:33 +02:00
c45f267e94 Merge remote-tracking branch 'origin/v2.1.0-dev' into oh-no-no-no-bug
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-23 20:32:43 +02:00
13fdaf731c Merge remote-tracking branch 'origin/v2.1.0-dev' into tm-store-task-base-bugfix
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-23 20:31:45 +02:00
d7a35d9818 Merge pull request 'ACS Parameter Fix' (#642) from acs-params-fix into v2.1.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #642
2023-05-23 20:20:02 +02:00
6cf488d0a6 Merge branch 'always-dump-into-vc' into update-ptme-code-2
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.2.0-dev This commit looks good
2023-05-23 20:19:06 +02:00
15139d6944 Merge branch 'no-dump-cancel-on-tx-off' into update-ptme-code-2 2023-05-23 20:18:37 +02:00
266abad3b3 no dump cancel on TX OFF
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-23 20:15:36 +02:00
042b8fb3c3 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-23 20:13:02 +02:00
303df55a12 always dump data into the VC
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-23 20:10:52 +02:00
50327fb614 get rid of the printouts and of the delay
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.2.0-dev This commit looks good
2023-05-23 19:44:06 +02:00
7bd2fce86f Merge branch 'tm-store-task-base-bugfix' into update-ptme-code-2 2023-05-23 19:40:17 +02:00
28beb006b2 thats an annoying bug
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-23 19:37:01 +02:00
7222475985 changelog, remove unnecessary logic 2023-05-23 19:18:42 +02:00
f5a7fd2ffe Merge branch 'oh-no-no-no-bug' into update-ptme-code-2 2023-05-23 19:16:36 +02:00
6bfb0d4fb0 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-23 19:14:03 +02:00
7ac2271eab buuuug
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-23 19:12:35 +02:00
8efbdf8279 Merge branch 'v2.2.0-dev' into update-ptme-code-2
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.2.0-dev This commit looks good
2023-05-23 18:30:00 +02:00
631a1aec42 Merge branch 'v2.1.0-dev' into gyr-confg-rework-2
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-23 15:42:30 +02:00
7eeece6934 Merge branch 'v2.1.0-dev' into acs-ptg-ctrl-fixes-2
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-23 15:37:16 +02:00
04571bbd7a Merge branch 'v2.1.0-dev' into acs-params-fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-23 15:08:56 +02:00
32a4aa48d9 frmt
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-23 15:07:23 +02:00
62ae7ff482 frmt 2023-05-23 15:04:43 +02:00
5390e947ca changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-05-23 15:02:35 +02:00
9ff154cedc added missing parameter 2023-05-23 14:56:04 +02:00
4763ec84fa Merge remote-tracking branch 'origin/v2.1.0-dev' into v2.2.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-05-23 14:46:44 +02:00
e4fc6e3d2a Merge branch 'v2.2.0-dev' into update-ptme-code-2
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.2.0-dev This commit looks good
2023-05-22 11:46:48 +02:00
2543cdf5b7 changelog
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-05-22 11:44:42 +02:00
72b5c7d053 Merge pull request 'ze batteri wos add' (#641) from add_ze_betteri into v2.1.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #641
2023-05-22 11:42:34 +02:00
d23082283d changelog
Some checks are pending
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev Build queued...
2023-05-22 11:42:08 +02:00
cd514e8125 ze batteri wos add
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev Build started...
2023-05-22 11:40:33 +02:00
ea9f72b9c4 Merge branch 'v2.2.0-dev' into update-ptme-code-2
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.2.0-dev This commit looks good
2023-05-22 10:48:47 +02:00
148a876fc9 Merge branch 'v2.1.0-dev' into v2.2.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-05-22 10:48:30 +02:00
9804898d05 Merge remote-tracking branch 'origin/v2.2.0-dev' into update-ptme-code-2 2023-05-22 10:48:22 +02:00
e04f349e77 Merge pull request 'CFDP Bugfix' (#639) from cfdp-bugfix into v2.2.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #639
2023-05-22 10:47:29 +02:00
8cc4431e22 Merge branch 'v2.2.0-dev' into update-ptme-code-2
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.2.0-dev This commit looks good
2023-05-22 10:46:25 +02:00
22dcf10207 Merge branch 'v2.1.0-dev' into update-ptme-code-2 2023-05-22 10:46:14 +02:00
fa4a40da6e Merge pull request 'PLOC MPSoC read file, fix write file' (#633) from ploc_mpsoc_read_file_2 into v2.1.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #633
2023-05-19 10:05:40 +02:00
a814746c53 Merge branch 'ploc_mpsoc_read_file_2' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into ploc_mpsoc_read_file_2
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-19 09:41:51 +02:00
ed74367f01 changelog 2023-05-19 09:41:44 +02:00
3f37c52f67 Merge branch 'v2.1.0-dev' into ploc_mpsoc_read_file_2
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-17 19:01:05 +02:00
a0e305fe1f changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-17 18:55:53 +02:00
d28bc3f74d bugfix
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-17 18:51:53 +02:00
b9afeb9c19 fix some regressions
Some checks failed
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev There was a failure building this commit
2023-05-17 18:44:12 +02:00
7f115303ae everything is working now
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-17 18:33:48 +02:00
e03df2ebca almost done
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-17 17:33:14 +02:00
f9e8dc6e60 D'OH
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-17 16:33:52 +02:00
0179c04472 that did not help
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-17 12:59:29 +02:00
c3b6b0a7ee pure chaos
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-16 18:46:13 +02:00
90b7f069dc it is getting annoying again 2023-05-16 18:41:04 +02:00
4ba9ebf58f kenning west alder 2023-05-16 13:34:06 +02:00
8b467ec69e dock hk improvements
Some checks are pending
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/-/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-v4.0.0-dev This commit looks good
2023-05-16 11:36:19 +02:00
468fa01650 bugfix 2023-05-16 11:08:33 +02:00
b39e448ab5 correction for flashfclose cmd
Some checks failed
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev There was a failure building this commit
2023-05-16 08:19:30 +02:00
8ed3bdc95c Merge pull request 'add ACU dummy when adding all dummies' (#640) from dummy-bugfix-host-build into v2.1.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #640
2023-05-15 17:34:21 +02:00
04b9ed4504 add ACU dummy as well
Some checks are pending
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
EIVE/eive-obsw/pipeline/head Build queued...
2023-05-15 16:53:18 +02:00
ab6a0c3e4d fix host build
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-15 16:49:16 +02:00
97a7087827 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.2.0-dev This commit looks good
2023-05-15 16:45:14 +02:00
a615ed2d21 bump fsfw
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-v2.2.0-dev This commit looks good
2023-05-15 16:18:44 +02:00
3d7d01d6ab bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-05-15 16:17:08 +02:00
78972cd173 remove some more printouts
Some checks failed
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev There was a failure building this commit
2023-05-15 16:16:17 +02:00
c8ed7fe20e new events and retvals
Some checks failed
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev There was a failure building this commit
2023-05-15 15:21:22 +02:00
5ce0a60184 some more cleaning and refacoring
Some checks failed
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev There was a failure building this commit
2023-05-15 15:19:12 +02:00
fabc6da562 changelog
Some checks failed
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev There was a failure building this commit
2023-05-15 15:16:44 +02:00
17df79b0d6 this does not make sense
Some checks failed
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev There was a failure building this commit
2023-05-15 15:15:58 +02:00
178a2183a2 clean up error handlng code 2023-05-15 14:40:14 +02:00
ae6b5b491b that should get the job done
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-15 13:27:24 +02:00
f099cd7688 seems to work fine 2023-05-15 13:25:53 +02:00
9fde16c912 disable missed deadline printing by default
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-15 10:29:15 +02:00
770697d5d0 forgot some git merge conflicts
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-15 10:16:34 +02:00
af77d083fa Merge remote-tracking branch 'origin/v2.1.0-dev' into ploc_mpsoc_read_file_2
Some checks failed
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev There was a failure building this commit
2023-05-15 10:15:16 +02:00
9b1ab3eb75 Merge pull request 'PLOC MPSoC dir content report' (#634) from ploc_mpsoc_dir_content_report_2 into v2.1.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #634
2023-05-15 09:40:01 +02:00
edf792c4fe 8 wait cycles are also okay
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-12 17:44:41 +02:00
a718d182fc done
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-12 17:39:15 +02:00
714e2d07e5 and were at DHB debugging again
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-12 17:13:51 +02:00
4887dc9e6b somethings still wrong
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-12 16:58:56 +02:00
3dc096c42b add back normal command
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-12 16:29:15 +02:00
ac73e6d2c3 bump tmtc again
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-12 16:27:25 +02:00
edda42cb61 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-12 16:25:59 +02:00
9887359e31 finally receiving the content report
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-12 16:09:08 +02:00
1f9c9e2407 horrible
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-12 15:52:47 +02:00
07d9ab0dd9 Merge branch 'ploc_mpsoc_update_2' into ploc_mpsoc_dir_content_report_2
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-12 13:31:13 +02:00
a3b119fda6 update changelog
Some checks are pending
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
EIVE/eive-obsw/pipeline/head Build queued...
2023-05-12 13:26:15 +02:00
86241a0052 Merge remote-tracking branch 'origin/v2.1.0-dev' into ploc_mpsoc_update_2
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-12 13:24:49 +02:00
9715612e46 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-12 13:24:14 +02:00
90d289f56e works now
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-12 13:23:17 +02:00
9391949369 speed up payload components a bit
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-12 12:39:54 +02:00
2b999e7fa7 requires some wait cycles
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-12 12:37:25 +02:00
699fc9a861 some HK corrections
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-12 12:14:37 +02:00
66c9a5eea3 some more fixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-12 11:55:33 +02:00
af20a36634 Merge branch 'ploc_mpsoc_update_2' into ploc_mpsoc_dir_content_report_2
Some checks failed
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev There was a failure building this commit
2023-05-12 11:48:43 +02:00
ba060be0d6 some more minor improvements
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-12 11:44:39 +02:00
a2217b0e64 Merge pull request 'gps-fdir-fix' (#638) from gps-fdir-fix into v2.1.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #638
2023-05-12 11:16:49 +02:00
f71a363385 changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev Build started...
2023-05-12 11:08:41 +02:00
42152ab711 fixed gps altitude fdir 2023-05-12 11:07:14 +02:00
1820dae3d4 horrible
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-12 11:06:26 +02:00
c9121c5214 Merge pull request 'Payload: Fixes and improvements' (#637) from ploc-code-improvenemts-2 into v2.1.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #637
2023-05-12 09:47:32 +02:00
f079818c42 Merge branch 'ploc-code-improvenemts-2' into ploc_mpsoc_update_2
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-12 09:42:56 +02:00
29eb0e736f never add CAM switcher dummy
Some checks are pending
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev Build queued...
2023-05-12 09:40:31 +02:00
412aaf93bd Merge branch 'ploc-code-improvenemts-2' into ploc_mpsoc_update_2
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-12 09:37:13 +02:00
0156533385 changelog
Some checks are pending
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev Build started...
2023-05-12 09:35:58 +02:00
cbf3315e16 Various fixes and improvements
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-05-12 09:32:24 +02:00
7e6c25901b Squashed commit of the following:
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
commit c137df64ab
Merge: a919b3d1 4179e8e1
Author: Robin Mueller <muellerr@irs.uni-stuttgart.de>
Date:   Fri Apr 28 15:38:52 2023 +0200

    Merge remote-tracking branch 'origin/main' into update_ptme_code

commit 4179e8e124
Merge: 26f5eff6 51f9d5e1
Author: Robin Müller <muellerr@irs.uni-stuttgart.de>
Date:   Fri Apr 28 15:35:54 2023 +0200

    Merge pull request 'This bugfix might be super important' (#621) from possible_bugfix_dual_lane_assy into main

    Reviewed-on: #621
    Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
    Reviewed-by: Steffen Gaisser <gaisser@irs.uni-stuttgart.de>

commit 51f9d5e1fe
Merge: a17f57cb 26f5eff6
Author: Robin Müller <muellerr@irs.uni-stuttgart.de>
Date:   Fri Apr 28 15:35:10 2023 +0200

    Merge branch 'main' into possible_bugfix_dual_lane_assy

commit a17f57cbb5
Author: Robin Mueller <muellerr@irs.uni-stuttgart.de>
Date:   Fri Apr 28 15:34:45 2023 +0200

    changelog

commit 26f5eff6d5
Merge: 4074e084 8a0f13ba
Author: Robin Müller <muellerr@irs.uni-stuttgart.de>
Date:   Fri Apr 28 15:32:03 2023 +0200

    Merge pull request 'More System Modes' (#612) from more-system-modes into main

    Reviewed-on: #612

commit 8a0f13bafb
Merge: 14baa356 4074e084
Author: Robin Müller <muellerr@irs.uni-stuttgart.de>
Date:   Fri Apr 28 15:31:51 2023 +0200

    Merge branch 'main' into more-system-modes

commit 14baa3563c
Author: Robin Mueller <muellerr@irs.uni-stuttgart.de>
Date:   Fri Apr 28 15:30:09 2023 +0200

    hello

commit 7045b6034a
Author: Robin Mueller <muellerr@irs.uni-stuttgart.de>
Date:   Fri Apr 28 15:18:47 2023 +0200

    changelog

commit 37b9615525
Author: Robin Mueller <muellerr@irs.uni-stuttgart.de>
Date:   Fri Apr 28 15:18:16 2023 +0200

    changelog

commit 4074e08480
Merge: 862a4f26 38686ac3
Author: Robin Müller <muellerr@irs.uni-stuttgart.de>
Date:   Fri Apr 28 15:12:46 2023 +0200

    Merge pull request 'Adaption for EM: Add P60 dock without ACU' (#620) from adaption_em_p60_dock_without_acu into main

    Reviewed-on: #620
    Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>

commit 23796345d9
Author: Robin Mueller <muellerr@irs.uni-stuttgart.de>
Date:   Fri Apr 28 15:04:30 2023 +0200

    changelog and stop payload tracking

commit b10275ca43
Author: Robin Mueller <muellerr@irs.uni-stuttgart.de>
Date:   Fri Apr 28 14:28:05 2023 +0200

    changelog

commit 383849c5cb
Author: Robin Mueller <muellerr@irs.uni-stuttgart.de>
Date:   Fri Apr 28 14:25:14 2023 +0200

    that is more robust

commit c66cef9129
Author: Robin Mueller <muellerr@irs.uni-stuttgart.de>
Date:   Fri Apr 28 14:23:21 2023 +0200

    changelog

commit 02ea8a7298
Author: Robin Mueller <muellerr@irs.uni-stuttgart.de>
Date:   Fri Apr 28 14:22:21 2023 +0200

    changelog

commit 38686ac3f6
Merge: 189a3126 74d5d709
Author: Robin Mueller <muellerr@irs.uni-stuttgart.de>
Date:   Fri Apr 28 14:04:03 2023 +0200

    Merge branch 'possible_bugfix_dual_lane_assy' into adaption_em_p60_dock_without_acu

commit 74d5d70973
Author: Robin Mueller <muellerr@irs.uni-stuttgart.de>
Date:   Fri Apr 28 13:58:08 2023 +0200

    this bugfix might be super important

commit 48355e8263
Merge: 5691fe8e 862a4f26
Author: Robin Müller <muellerr@irs.uni-stuttgart.de>
Date:   Fri Apr 28 10:25:50 2023 +0200

    Merge branch 'main' into more-system-modes

commit 189a312628
Merge: a1279428 862a4f26
Author: Robin Mueller <muellerr@irs.uni-stuttgart.de>
Date:   Fri Apr 28 10:23:46 2023 +0200

    Merge remote-tracking branch 'origin/main' into adaption_em_p60_dock_without_acu

commit a12794281b
Author: Robin Mueller <muellerr@irs.uni-stuttgart.de>
Date:   Fri Apr 28 10:20:31 2023 +0200

    changelog

commit fcaabb4e42
Merge: 6c326489 4aafca64
Author: Robin Mueller <muellerr@irs.uni-stuttgart.de>
Date:   Fri Apr 28 10:20:02 2023 +0200

    Merge remote-tracking branch 'origin/main' into adaption_em_p60_dock_without_acu

commit 6c326489cb
Author: Robin Mueller <muellerr@irs.uni-stuttgart.de>
Date:   Fri Apr 28 10:18:46 2023 +0200

    adapt EM SW: GS PCDU added, but use dummy for ACU

commit 862a4f2685
Merge: 4aafca64 2daca272
Author: Robin Müller <muellerr@irs.uni-stuttgart.de>
Date:   Fri Apr 28 09:37:55 2023 +0200

    Merge pull request 'Host SW bugfixes' (#618) from try_fix_host_obsw into main

    Reviewed-on: #618
    Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>

commit 5691fe8e72
Merge: 097be17a 4aafca64
Author: meggert <eggertm@irs.uni-stuttgart.de>
Date:   Thu Apr 27 15:40:31 2023 +0200

    Merge branch 'main' into more-system-modes

commit 2daca272f8
Author: Robin Mueller <muellerr@irs.uni-stuttgart.de>
Date:   Thu Apr 27 11:29:18 2023 +0200

    changelog

commit 03762f9620
Author: Robin Mueller <muellerr@irs.uni-stuttgart.de>
Date:   Wed Apr 26 17:38:06 2023 +0200

    lower live TM handler frequency

commit a296f16e5c
Author: Robin Mueller <muellerr@irs.uni-stuttgart.de>
Date:   Wed Apr 26 17:36:38 2023 +0200

    host SW works properly again

commit 83f07a6e16
Author: Robin Mueller <muellerr@irs.uni-stuttgart.de>
Date:   Wed Apr 26 17:26:32 2023 +0200

    configurable event manager queue depth

commit 00dab64628
Merge: 641b8e84 4aafca64
Author: Robin Mueller <muellerr@irs.uni-stuttgart.de>
Date:   Wed Apr 26 17:03:35 2023 +0200

    Merge remote-tracking branch 'origin/main' into try_fix_host_obsw

commit 4aafca64a6
Merge: f271242d 6901eae8
Author: Robin Müller <muellerr@irs.uni-stuttgart.de>
Date:   Wed Apr 26 17:03:01 2023 +0200

    Merge pull request 'EM adaptions' (#619) from em_adaptions into main

    Reviewed-on: #619

commit 6901eae816
Merge: 7d630ebc f271242d
Author: Robin Mueller <muellerr@irs.uni-stuttgart.de>
Date:   Wed Apr 26 17:02:24 2023 +0200

    Merge remote-tracking branch 'origin/main' into em_adaptions

commit 7d630ebcf3
Author: Robin Mueller <muellerr@irs.uni-stuttgart.de>
Date:   Wed Apr 26 17:00:04 2023 +0200

    EM adaptions

commit 641b8e847d
Author: Robin Mueller <muellerr@irs.uni-stuttgart.de>
Date:   Wed Apr 26 16:41:40 2023 +0200

    add back tm funnel handler for hosted build

commit 1314268682
Author: Robin Mueller <muellerr@irs.uni-stuttgart.de>
Date:   Wed Apr 26 16:23:50 2023 +0200

    host build requires dedicated live TM task..

commit 4040304ef0
Author: Robin Mueller <muellerr@irs.uni-stuttgart.de>
Date:   Wed Apr 26 13:15:42 2023 +0200

    this is annoying

commit a919b3d164
Merge: e22f2a53 9672d6d6
Author: Robin Mueller <muellerr@irs.uni-stuttgart.de>
Date:   Wed Apr 26 11:11:30 2023 +0200

    Merge remote-tracking branch 'origin/develop' into update_ptme_code

commit 9672d6d6cc
Author: Robin Mueller <muellerr@irs.uni-stuttgart.de>
Date:   Wed Apr 26 11:11:09 2023 +0200

    changelog

commit e22f2a53ea
Merge: b076e80b 0eb6b7cc
Author: Robin Mueller <muellerr@irs.uni-stuttgart.de>
Date:   Wed Apr 26 11:05:58 2023 +0200

    Merge remote-tracking branch 'origin/develop' into update_ptme_code

commit b076e80b44
Author: Robin Mueller <muellerr@irs.uni-stuttgart.de>
Date:   Wed Apr 26 11:04:10 2023 +0200

    changelog

commit 269aa6f7b0
Author: Robin Mueller <muellerr@irs.uni-stuttgart.de>
Date:   Wed Apr 26 11:03:42 2023 +0200

    changelog

commit caae2b4ba9
Author: Robin Mueller <muellerr@irs.uni-stuttgart.de>
Date:   Wed Apr 26 11:02:24 2023 +0200

    update PTME code

commit 097be17a29
Author: meggert <eggertm@irs.uni-stuttgart.de>
Date:   Wed Apr 19 15:07:21 2023 +0200

    added remaining acs modes as system modes
2023-05-12 09:13:02 +02:00
50d5180076 changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2023-05-11 21:29:15 +02:00
92fd1548cb dynamically enable/disable MPSoC 2023-05-11 21:28:50 +02:00
dbdcf0b0d6 changelog 2023-05-11 21:28:50 +02:00
bacc46a8dc i think that should do the job 2023-05-11 21:28:50 +02:00
0fb07fd3d5 implement dir content report in OBSW 2023-05-11 21:28:50 +02:00
98a858876a add some more commands 2023-05-11 21:28:50 +02:00
d4fc95ed9f start adding dir content report 2023-05-11 21:28:50 +02:00
2e00e10e09 request HK regularly now 2023-05-11 21:28:50 +02:00
4a3af32a65 MPSoC HK packet 2023-05-11 21:28:46 +02:00
66ca156ab3 mpsoc update 2023-05-11 21:17:14 +02:00
d67414e829 bugfxi by marius 2023-05-11 21:17:14 +02:00
0fd18204bf add new set 2023-05-11 21:17:14 +02:00
f225d9a7c1 add HK request command 2023-05-11 21:17:14 +02:00
9b5fac828b changelog 2023-05-11 21:17:06 +02:00
07dd84ff1e changelog 2023-05-11 20:25:26 +02:00
d5a6feb347 changelog 2023-05-11 20:25:26 +02:00
5728d916ef changelog 2023-05-11 20:25:26 +02:00
e762cc5fb3 changelog 2023-05-11 20:25:26 +02:00
119b1c8eb9 bump tmtc
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-11 20:22:10 +02:00
f72c797f53 this should do the job 2023-05-11 20:21:44 +02:00
71ef1edb68 changelog 2023-05-11 20:21:07 +02:00
98ef38f3eb i think that should do the job 2023-05-11 20:20:51 +02:00
827419ef34 implement dir content report in OBSW 2023-05-11 20:20:51 +02:00
5b4261104e add some more commands 2023-05-11 20:20:47 +02:00
ff175170aa start adding dir content report 2023-05-11 20:19:46 +02:00
e4431d20c4 driving code almost done as well 2023-05-11 20:19:19 +02:00
119afe6148 now the helper just needs to be driven 2023-05-11 20:19:19 +02:00
ff47fafdc2 first flash read impl almost done 2023-05-11 20:19:19 +02:00
0a109e552d start adding flash read 2023-05-11 20:19:19 +02:00
fa13703394 changelog 2023-05-11 20:18:39 +02:00
09ece30304 changelog 2023-05-11 20:17:50 +02:00
c3604085c2 changelog 2023-05-11 20:17:50 +02:00
1274993428 changelog 2023-05-11 20:17:41 +02:00
a7ccfae04e changelog 2023-05-11 20:17:41 +02:00
2c9da6a1e4 changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-11 20:14:17 +02:00
2b36195dac dynamically enable/disable MPSoC 2023-05-11 20:14:17 +02:00
758ed22b08 request HK regularly now 2023-05-11 20:14:17 +02:00
30fba0456b MPSoC HK packet 2023-05-11 20:14:12 +02:00
98e69b9a6a mpsoc update 2023-05-11 20:13:31 +02:00
531f87cd76 bugfxi by marius 2023-05-11 20:13:31 +02:00
3a0db9c9ad add new set 2023-05-11 20:13:31 +02:00
c8d1ce40ba add HK request command 2023-05-11 20:13:31 +02:00
32d2ad8f1d changelog 2023-05-11 20:13:26 +02:00
b34767c870 changelog 2023-05-11 20:12:15 +02:00
97567736fb changelog 2023-05-11 20:12:15 +02:00
621a6fd401 changelog 2023-05-11 20:12:13 +02:00
04b6c7006e changelog 2023-05-11 20:12:13 +02:00
8a65aca7b8 someone seemed to like pointers way too much
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main This commit looks good
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev Build started...
EIVE/eive-obsw/pipeline/head Build started...
2023-05-11 20:07:58 +02:00
e3dc39a028 fixes for function calls 2023-05-11 20:07:58 +02:00
8bb97f5f44 further fixes and cleanup for desaturation 2023-05-11 20:07:58 +02:00
83a373859d Robin must be the happiest man alive 2023-05-11 20:07:58 +02:00
52acb3373e changelog 2023-05-11 20:07:54 +02:00
ad32eee70a changelog 2023-05-11 20:05:53 +02:00
db3dc80756 changelog 2023-05-11 20:05:53 +02:00
65c59352e9 changelog 2023-05-11 20:05:50 +02:00
722a4208d4 changelog 2023-05-11 20:05:50 +02:00
db63757c0c deprecated include 2023-05-11 20:05:11 +02:00
5a9da1a99c fixed nullspace controller 2023-05-11 20:05:11 +02:00
a71be232ac make Robin even happier 2023-05-11 20:05:11 +02:00
4e428e6353 fixed antistiction logic 2023-05-11 20:04:43 +02:00
6705ede2fc englando too hard 2023-05-11 20:04:43 +02:00
0ff7e0f97a RW cmd fix and cleanup 2023-05-11 20:04:43 +02:00
e04313b9f3 make Robin happy 2023-05-11 20:04:43 +02:00
1166c66c8c added config values for testing
All checks were successful
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-11 19:56:27 +02:00
e78d458f06 changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main Build queued...
EIVE/eive-obsw/pipeline/pr-v2.1.0-dev This commit looks good
2023-05-11 19:54:44 +02:00
4f6f12217c fixed variances of ADIS sensors 2023-05-11 19:52:44 +02:00
ef039c47b8 update changelog again
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-05-11 19:35:57 +02:00
d4b7411de1 I guess no patch version 2023-05-11 19:34:37 +02:00
2e6a93c479 ACS board and init payload 2023-05-11 19:33:06 +02:00
f3a651602b this should be robust 2023-05-11 19:33:06 +02:00
6c00404ca7 changelog 2023-05-11 19:33:06 +02:00
1412dd4fb6 changelog readme etc. 2023-05-11 19:33:06 +02:00
1602d5d318 stuff 2023-05-11 19:33:06 +02:00
1870bf6405 changelog 2023-05-11 19:33:02 +02:00
51b0d897a1 adapt EM SW: GS PCDU added, but use dummy for ACU 2023-05-11 19:32:37 +02:00
670c753a75 hello 2023-05-11 19:32:37 +02:00
26e48f2f46 changelog 2023-05-11 19:32:37 +02:00
a352f25029 changelog 2023-05-11 19:32:37 +02:00
141438bd24 changelog and stop payload tracking 2023-05-11 19:32:37 +02:00
f5e20db03f added remaining acs modes as system modes 2023-05-11 19:32:37 +02:00
1cbb7d0af8 changelog 2023-05-11 19:32:33 +02:00
09ffcc8804 changelog 2023-05-11 19:32:10 +02:00
fb062bb4e8 changelog 2023-05-11 19:32:04 +02:00
2f58ca8534 changelog 2023-05-11 19:32:04 +02:00
5747f73dfe changelog 2023-05-11 19:31:50 +02:00
67c0a3b03e lower live TM handler frequency 2023-05-11 19:31:23 +02:00
490790bd0c host SW works properly again 2023-05-11 19:31:23 +02:00
7dfc7dc8c1 configurable event manager queue depth 2023-05-11 19:31:23 +02:00
aa63bd1fa5 EM adaptions 2023-05-11 19:31:23 +02:00
b7383294c9 add back tm funnel handler for hosted build 2023-05-11 19:30:45 +02:00
e31a95d1c4 host build requires dedicated live TM task.. 2023-05-11 19:30:45 +02:00
3e9933c7ee this is annoying 2023-05-11 19:30:45 +02:00
ee3ef042cd Merge remote-tracking branch 'origin/v2.0.5-dev' into HEAD
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-05-11 19:30:33 +02:00
05b0efe851 patch revision 2023-05-11 19:29:02 +02:00
8ade378a69 bump tmtc 2023-05-11 19:29:02 +02:00
045d149946 bump revision
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-05-11 18:50:49 +02:00
a75f9553be okay lets see if this works
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-05-11 18:38:41 +02:00
f271242d66 Merge pull request 'the hottest fix' (#614) from hottest_fix_acs into main
Some checks failed
EIVE/eive-obsw/pipeline/pr-main This commit looks good
EIVE/eive-obsw/pipeline/head There was a failure building this commit
Reviewed-on: #614
2023-04-19 18:17:54 +02:00
1756b5edcc patch revision
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build queued...
2023-04-19 18:14:28 +02:00
9c1fc44c60 Merge branch 'hottest_fix_acs' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into hottest_fix_acs
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build queued...
2023-04-19 18:12:40 +02:00
f46a705900 changelog 2023-04-19 18:12:32 +02:00
9183d18acc Merge branch 'main' into hottest_fix_acs
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build queued...
2023-04-19 18:10:50 +02:00
befa84a74b the hottest fix
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main Build started...
2023-04-19 18:09:57 +02:00
432b400835 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-04-18 10:28:01 +02:00
0eb6b7cccb bump patch revision to 3
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-04-17 11:58:44 +02:00
74ee291983 add tmtc release version
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-04-17 11:58:13 +02:00
a146c34140 CI/CD: Use 8 jobs
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-04-17 11:55:08 +02:00
61ced11766 Merge pull request 'fixes and tweaks TCS and EM build' (#610) from fixes_and_tweaks into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #610
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-04-17 11:53:15 +02:00
468fb096c9 high event severity
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-17 11:44:51 +02:00
4a2dd19a73 Merge branch 'fixes_and_tweaks' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into fixes_and_tweaks
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-04-17 11:41:26 +02:00
2658cabc9d remove TODO 2023-04-17 11:41:21 +02:00
dc83061f80 Merge branch 'develop' into fixes_and_tweaks
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-17 11:38:21 +02:00
00da51b6a2 okay its an afmt thing
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-17 11:36:34 +02:00
f846a18b33 update defines
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-04-17 11:36:17 +02:00
ab588b4844 fixes and tweaks TCS and EM build
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-04-17 11:35:10 +02:00
d12dca183d Merge pull request 'Test Cold Case EM' (#609) from test_cold_case_cam into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #609
2023-04-17 10:45:14 +02:00
701ecbd182 disable test
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-17 10:45:01 +02:00
bdd2b23ec3 test cold case camera
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-04-17 10:41:10 +02:00
d70245b56a Merge pull request 'acs-safe-hotfix' (#608) from acs-safe-hotfix into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #608
2023-04-17 10:15:52 +02:00
9097a3f3c7 changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-17 09:35:23 +02:00
e05d9d4b2a prevent low pass filter if no sensor data is available 2023-04-17 09:29:50 +02:00
07572ab3a0 fixed shadowing 2023-04-17 09:20:09 +02:00
304aabc336 bump sagittactl to avoid CMake warning
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-04-16 12:10:29 +02:00
07e8f95a31 of course something else was missing
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-04-16 12:05:41 +02:00
babea226ab thats an annoying patch release
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-04-16 11:54:27 +02:00
8c24a7310d Merge pull request 'update CHANGELOG and CMakeLists.txt' (#606) from prep_final_v2.0.0 into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #606
2023-04-16 11:49:05 +02:00
8f5982fd72 added additional note
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-16 11:48:24 +02:00
611a2c0b45 update CHANGELOG and CMakeLists.txt
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-04-16 11:41:30 +02:00
3aad452357 fix this some other time
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
EIVE/-/pipeline/pr-main Build queued...
2023-04-16 11:35:30 +02:00
61e6b09704 Merge pull request 'Update sagittactl to v10.7' (#605) from update_sagittactl_v10.7 into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #605
2023-04-16 11:25:38 +02:00
67351d5ada set time for star tracker
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-04-16 11:25:10 +02:00
a9a0266a84 Merge branch 'develop' into update_sagittactl_v10.7
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-16 11:01:19 +02:00
b7e6315be7 bump sagittactl to concrete version
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-16 10:58:25 +02:00
740275f57a normal mode now works as well
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-04-16 04:04:57 +02:00
58dd53def8 bump sagittactl 2023-04-16 03:54:10 +02:00
ddbe30f832 afmt 2023-04-16 03:52:45 +02:00
680d496b28 STR seems to work well now 2023-04-16 03:52:10 +02:00
9c163419b2 Merge pull request 'FS helpers' (#604) from core_ctrl_fs_helpers into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #604
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-04-16 02:57:16 +02:00
f4fedd20c9 added more bugfixes for list dir dump
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-04-16 02:56:46 +02:00
016fab105e bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-15 23:13:04 +02:00
767a0eda30 hopefully last bugfix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-15 23:11:00 +02:00
f2c71d962a done soon
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-15 23:00:34 +02:00
7bf880a29f use gzip directly
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-15 22:17:50 +02:00
0185691dba add more context info for dumped dir listing
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-15 20:51:46 +02:00
9997aa5470 bump sagittactl 2023-04-15 20:16:32 +02:00
c1ccfe66eb this compiles with warnings
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-15 15:17:22 +02:00
ae9f43c707 adaptions for new sagittalib
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-04-15 15:15:06 +02:00
143002de48 some improvements
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-15 13:06:16 +02:00
d439aedee7 bugfix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-15 13:03:44 +02:00
b8d010cd39 CHANGELOG + FS helpers
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-15 13:01:41 +02:00
22370e3e1e Merge pull request 'prep v1.45.0' (#603) from prep_v1.45.0 into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #603
2023-04-14 22:32:15 +02:00
b98f91f6c1 hopefully last EM fix for v2.0
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-14 21:44:23 +02:00
b47bda8ed1 bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-14 21:22:55 +02:00
078a04b317 bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-14 21:08:55 +02:00
d24a983985 some EM fixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-14 21:02:39 +02:00
b964b03b2d fix STR dummy
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-14 20:41:50 +02:00
f0d55f9e5b prep v1.45.0
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-14 20:35:00 +02:00
aa54dbbd10 Merge pull request 'Revert ACS Safe Mode Controller to FLP Design' (#466) from acs-flp-safe into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #466
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2023-04-14 20:26:19 +02:00
1a62a13d97 bump tmtc again
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-14 20:26:02 +02:00
500b3b6fc6 re-run generators. bump tmtc
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-14 20:24:37 +02:00
fa746f910d Merge remote-tracking branch 'origin/develop' into acs-flp-safe
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-04-14 20:13:50 +02:00
602c635967 Merge pull request 'fix host build' (#602) from feature_com_pdec_fdir into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #602
2023-04-14 20:12:27 +02:00
84db92f75e Merge branch 'develop' into feature_com_pdec_fdir 2023-04-14 20:12:19 +02:00
4de71062af fix host build
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
2023-04-14 20:11:33 +02:00
a4c8319cec Merge pull request 'Feature COM PDEC FDIR' (#599) from feature_com_pdec_fdir into develop
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
Reviewed-on: #599
Reviewed-by: Jakob Meier <meierj@irs.uni-stuttgart.de>
2023-04-14 20:09:44 +02:00
379fd6046e ge-generate files
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-04-14 20:08:05 +02:00
aa800c4524 trigger special reboot events 2023-04-14 20:04:51 +02:00
7f1fe3a2d8 bugfix
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-04-14 19:58:22 +02:00
e023220be4 better reset handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-14 19:42:11 +02:00
8cf9dd9136 use config constant
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-14 19:30:40 +02:00
62d18826f1 proper post reset handling for PDEC reset
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-14 19:29:22 +02:00
41f762c6ff also only use mekf for detumble check if allowed to
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-14 19:12:05 +02:00
644a768778 re-run generators
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-14 19:02:18 +02:00
756ea6d90d Merge remote-tracking branch 'origin/develop' into feature_com_pdec_fdir
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-14 19:01:22 +02:00
2d19d94d09 Merge branch 'acs-flp-safe' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into acs-flp-safe
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-14 18:58:47 +02:00
09a2ba7843 fixed type 2023-04-14 18:57:06 +02:00
716f2b2832 Merge branch 'develop' into acs-flp-safe
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-14 18:56:11 +02:00
6934721a42 prevent div by zero
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-14 18:56:05 +02:00
fc8a8ce5a9 Merge pull request 'Custom FDIR for tmp devices' (#598) from tmp_dev_custom_fdir into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #598
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-04-14 18:55:55 +02:00
5e53795cbe Merge branch 'develop' into tmp_dev_custom_fdir 2023-04-14 18:55:36 +02:00
2f2d1c7c7a Merge pull request 'v10.7' (#601) from str_update_v10.7 into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #601
2023-04-14 18:55:12 +02:00
f7be454dae changelog
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-14 18:55:20 +02:00
ca30fed4c3 Merge remote-tracking branch 'origin/develop' into str_update_v10.7
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-14 18:53:45 +02:00
54f742bf19 addition to changelog 2023-04-14 18:53:17 +02:00
4bfd675073 Merge remote-tracking branch 'origin/develop' into tmp_dev_custom_fdir
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-04-14 18:48:20 +02:00
36420a6855 Merge pull request 'hotfix ACS/SUS' (#600) from hotfix_acs_sus into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #600
2023-04-14 18:47:07 +02:00
b0a2b5886f hotfix ACS/SUS
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-04-14 18:45:58 +02:00
33d60ccf7f v10.7
Some checks are pending
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-14 18:31:56 +02:00
c8472f222c Merge pull request 'Heater Health Device' (#597) from heater_health_device into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #597
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-04-14 17:15:50 +02:00
e68ac9cc2d changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-14 16:55:28 +02:00
a306b2a0af Merge branch 'develop' into acs-flp-safe 2023-04-14 16:50:31 +02:00
f112c28391 enabled commanding from ACS ctrl
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-14 16:50:02 +02:00
4693407b68 fixed parameters 2023-04-14 16:47:53 +02:00
4e6b3ec9ed fixed shadowing
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-14 16:44:37 +02:00
38b9a9b34e bump sagittactl
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-14 14:45:02 +02:00
7c67648b8e bump sagitactl
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-14 14:44:48 +02:00
9b1d4de9c5 Merge remote-tracking branch 'origin/develop' into tmp_dev_custom_fdir 2023-04-14 14:44:40 +02:00
998f93e3fa Merge remote-tracking branch 'origin/develop' into heater_health_device
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-14 14:32:27 +02:00
b5e1e0c31b Merge branch 'develop' into feature_com_pdec_fdir
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-14 14:29:59 +02:00
9a65a9f20b Merge pull request 'STR: Update arcsec library' (#595) from str_update_arcsec_lib into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #595
2023-04-14 13:28:33 +02:00
b2a52b0bfc Merge branch 'develop' into str_update_arcsec_lib
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-14 13:28:22 +02:00
46862825ec 2 minutes countdown for ptme was attempted CD
Some checks are pending
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-14 13:27:50 +02:00
dc1e51891e added rest of necessary logic 2023-04-14 13:26:44 +02:00
213dba1e75 changelog 2023-04-14 13:12:03 +02:00
4e686b4ad0 better PDEC FDIR 2023-04-14 13:11:11 +02:00
1e521f0575 detumble mode changes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-14 11:38:05 +02:00
53cccc3c13 removed inertia matrix for safe mode 2023-04-14 11:37:23 +02:00
a7c227f8ea Merge pull request 'systemctl helper' (#596) from feature_systemctl_helper into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #596
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-04-14 08:25:09 +02:00
bc6531f7a5 bugfix for shell cmd executors
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-14 00:29:21 +02:00
e17b8d2ec4 add non-blocking shell cmd executor
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-14 00:21:28 +02:00
f645b97ba3 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-14 00:08:38 +02:00
e79e13416e changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-13 23:56:22 +02:00
33773179a7 custom FDIR for tmp devices
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-13 23:54:23 +02:00
c5b26eade4 now it compiles
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-13 23:34:11 +02:00
28eaf8461a changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-13 23:32:08 +02:00
6f67bd500b add new heater health device 2023-04-13 23:31:33 +02:00
af354bd9fb systemctl helper
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-04-13 23:24:32 +02:00
aa746276ae disable TCS test
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-04-13 21:15:10 +02:00
3e3ac9f5be conditional build of STR components
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-13 21:14:38 +02:00
ae66820b52 Merge remote-tracking branch 'origin/develop' into str_update_arcsec_lib
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-04-13 21:05:20 +02:00
93013d18ff Merge pull request 'STR update' (#594) from str_small_fixes into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #594
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-04-13 20:36:46 +02:00
7f3f99c6aa fixed wrong sign for ortho torque calculation
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-13 20:21:12 +02:00
600d0c580d another changelog entry
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-13 18:20:23 +02:00
2722e471ef changelog
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-04-13 18:14:30 +02:00
d8089489c4 Merge branch 'str_small_fixes' into str_update_arcsec_lib 2023-04-13 18:13:35 +02:00
cebe6e1423 Merge branch 'str_small_fixes' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into str_small_fixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-13 18:13:18 +02:00
906aedc911 changelog 2023-04-13 18:13:12 +02:00
97df53554e Merge branch 'develop' into str_small_fixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-13 18:11:53 +02:00
a81e939e70 Merge remote-tracking branch 'origin/develop' into str_update_arcsec_lib
Some checks failed
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-04-13 18:11:19 +02:00
b5f4b6cf7b Merge pull request 'TCS continued' (#576) from continue_tcs_tests into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #576
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-04-13 18:10:34 +02:00
f14677ec4e Merge branch 'develop' into continue_tcs_tests
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-13 18:10:24 +02:00
29dc684455 update done, compiles again
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-04-13 18:09:02 +02:00
3ff8c6a481 re-add str submodule
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-04-13 17:58:36 +02:00
f7bc052070 stupid submodules 2023-04-13 17:55:56 +02:00
9861772c38 fixed copy pasta
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-13 17:12:52 +02:00
d4080fe5cb fixed wrong calculation of gains
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-13 17:06:11 +02:00
6b976f1046 fixed torque parallel
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-13 16:28:54 +02:00
673826b131 removed even more deprecated code
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-13 15:02:07 +02:00
ae729337a2 removed deprecated code
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-04-13 14:39:40 +02:00
a09cc86336 final safe mode params
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-04-13 14:29:24 +02:00
8620bd0283 avoid faulty reply for STR special requests
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-13 12:35:56 +02:00
ea606ce217 adaptions and possible small fix for update process
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-04-13 12:08:31 +02:00
99305846f8 Merge pull request 'Set preferred SD card as parameter' (#593) from feature_core_ctrl_set_pref_sd_as_param into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #593
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-04-12 19:00:46 +02:00
dd211cdf54 afmt
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-12 18:11:41 +02:00
2262a15e35 compile fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-12 18:11:20 +02:00
94431cfdb8 Merge branch 'develop' into continue_tcs_tests
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-12 18:07:41 +02:00
41ec6dc0f2 set pref sd as param
Some checks failed
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-04-12 18:06:04 +02:00
836ce9a6cd Merge pull request 'this snippet should recognize faulty sensors' (#592) from feature_add_way_for_max_handler_to_recognize_faulty_sensor into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #592
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-04-12 17:55:39 +02:00
ae80eac9a2 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-12 17:25:54 +02:00
e063a7148a this snippet should recognize faulty sensors
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-12 17:23:08 +02:00
2808079444 add q7s-package update in changelog
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-04-12 16:29:34 +02:00
3ba81d19a7 changelog
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-04-12 13:40:59 +02:00
0e6f222ef1 update intall-obsw-yocto.sh
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-04-12 13:40:21 +02:00
90ca65f9a9 Merge pull request 'prep v1.44.1' (#591) from prep_v1.44.1 into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #591
2023-04-12 13:26:37 +02:00
f4c156479a prep v1.44.1
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
2023-04-12 13:26:23 +02:00
d9e38d97ee Merge remote-tracking branch 'origin/develop' into continue_tcs_tests
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-12 13:00:58 +02:00
67e94e1ee7 Merge pull request 'Move CFDP handler to mission code' (#586) from move_cfdp_handler into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #586
Reviewed-by: Michael Steinert <steinertm@irs.uni-stuttgart.de>
2023-04-12 12:59:09 +02:00
b20e38a2bc Merge branch 'develop' into move_cfdp_handler
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-12 12:59:00 +02:00
d71031f2e4 Merge pull request 'Shared Power Switch Assembly' (#590) from assy_proper_recovery_handling into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #590
2023-04-12 12:58:48 +02:00
98d1da428a Merge remote-tracking branch 'origin/develop' into continue_tcs_tests
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-12 10:53:59 +02:00
df7236cfee fix untitest
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-12 00:25:21 +02:00
c9cc1d4cfe done
Some checks failed
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-04-11 22:58:13 +02:00
128bd7d41a nan for all eclipse strats
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-11 18:56:10 +02:00
061cd0468c fixed wrong params
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-11 18:54:17 +02:00
2bb0f530fe Merge pull request 'ACS Board: Better reply result handling' (#588) from possible_fixes_acs_brd_polling into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #588
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-04-11 18:20:51 +02:00
b3f5e74609 typo
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-11 18:18:33 +02:00
ff28b628a4 leave that value
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-11 18:17:30 +02:00
5925de94e7 changelog
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-04-11 18:16:58 +02:00
7c36660000 that was nasty
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-04-11 18:15:12 +02:00
ae8f80bb54 safe params fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-11 18:12:04 +02:00
776a53b243 dont send anything in break CD 2023-04-11 18:03:07 +02:00
8ad68aca3a Merge branch 'develop' into acs-flp-safe
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-11 17:30:15 +02:00
b1bd7e0215 Merge branch 'develop' into acs-flp-safe 2023-04-11 17:29:50 +02:00
d42b6798e0 better reply result handling
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-11 17:29:32 +02:00
fa94c67e99 Merge pull request 'add a way to detect off or broken SUS devices' (#587) from bugfix_sus_fdir into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #587
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-04-11 17:24:01 +02:00
4e9a074e82 changelog
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-04-11 17:19:16 +02:00
b82f19ea50 reset reply result on mode change
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-04-11 17:18:12 +02:00
271830422a add a way to detect off devices
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-11 17:12:31 +02:00
7869289abc bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-11 16:53:07 +02:00
0a84eab0ef move cfdp handler
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-11 16:51:49 +02:00
b816b386cf bump fsfw
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-04-11 16:47:56 +02:00
8d9755c17f Merge remote-tracking branch 'origin/develop' into continue_tcs_tests
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-11 16:14:53 +02:00
d552b51c0d Merge pull request 'Custom OBSW update path' (#582) from feature_custom_obsw_update_path into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #582
2023-04-11 16:12:42 +02:00
52620f3dda Merge branch 'develop' into feature_custom_obsw_update_path
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-11 16:12:28 +02:00
d7eaceb0fc Merge pull request 'EM bugfix' (#585) from bugfix_em into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #585
2023-04-11 16:11:25 +02:00
e01fe19d53 EM bugfix
Some checks are pending
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-11 15:34:46 +02:00
af1d0759e1 remove re-declaration
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-11 15:26:33 +02:00
af9f346698 use exceptionless API
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-04-11 15:23:44 +02:00
b6ba2f291a safeCtrl using MEKF can now be disabled
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-11 11:19:04 +02:00
c66799b24f removed unit quats as they are confusing
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-11 10:55:48 +02:00
18be21a310 Merge branch 'develop' into acs-flp-safe
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-11 09:56:24 +02:00
abef9da9f9 Merge pull request 'Feature and Bugfixes: Better SDC state machine handling' (#584) from feature_sdc_fsm_mark_sd_unusbale into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #584
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-04-11 09:52:16 +02:00
4afddad503 typo
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-08 17:48:45 +02:00
cc39acd436 changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-04-08 17:47:56 +02:00
2df556c5be some bugfixes, seems to work now
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-04-08 17:46:54 +02:00
aa43912279 everything except SDC switch looking good.. 2023-04-08 17:13:42 +02:00
ece053e5c3 Merge remote-tracking branch 'origin/develop' into continue_tcs_tests
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-08 15:57:06 +02:00
1c0fbace4d Merge remote-tracking branch 'origin/develop' into feature_custom_obsw_update_path
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-08 15:56:08 +02:00
2fb7ac7b4b Merge pull request 'Bugfix SD state machine' (#583) from bugfix_sdc_state_machine into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #583
2023-04-08 15:55:03 +02:00
c89e332843 changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-04-08 13:25:31 +02:00
10f552f56a bugfix and simplifications for SDC state machine 2023-04-08 13:24:21 +02:00
310f8f5f3c SDC state machine printouts 2023-04-08 11:53:44 +02:00
584b6e3038 changelog and tmtc bump
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-08 11:40:23 +02:00
a81b24b67f allow custom filename
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-04-08 11:31:31 +02:00
6b671cfa65 bump eive-tmtc, compile fix
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-04-07 18:19:33 +02:00
3408624056 prep v1.44.9 2023-04-07 17:43:48 +02:00
146767b04f com subsystme mode printouts
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-04-07 17:35:04 +02:00
f4951385fd changelog
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-04-07 17:27:51 +02:00
f259face36 Merge pull request 'this is necessary so it works..' (#581) from important_fix_i2c_recovery into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #581
2023-04-07 17:25:15 +02:00
8482416ac5 this is necessary so it works..
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-07 17:24:19 +02:00
a419589a7f Merge pull request 'RW shutdown' (#580) from feature_proper_rw_shutdown into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #580
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-04-07 17:20:30 +02:00
ebcd0cdfa1 remove obsolete code
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-04-07 17:20:20 +02:00
9960fc8ce7 a bit more thread safety 2023-04-07 17:15:40 +02:00
353b9bd322 add some thread safety
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-07 17:10:30 +02:00
014ac8b8c2 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-07 17:04:33 +02:00
cd8bbaf1f9 RW fixes and test 2023-04-07 17:02:37 +02:00
d98873c9a6 that should do it
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-07 11:37:17 +02:00
aacd4dc088 Merge branch 'develop' into continue_tcs_tests
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-07 11:07:15 +02:00
d5d43e8d44 Merge pull request 'I2C reboot procedure for EIVE system' (#578) from feature_i2c_reboot_procedure into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #578
2023-04-07 11:07:04 +02:00
55dd4b28ee added missing event
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-04-07 11:06:43 +02:00
f9ed42f8a5 re-ran generators
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-04-07 11:04:13 +02:00
e9fc0c453d that should do the job
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-06 22:39:57 +02:00
ca44b541b1 remove debug statements 2023-04-06 22:37:38 +02:00
2968856d71 finally works 2023-04-06 22:35:23 +02:00
e4530544c2 trigger dedicated events
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-06 19:29:51 +02:00
103800e40c oopsie
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-06 19:26:57 +02:00
aa78d744b4 compile fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-06 19:23:45 +02:00
54c29e893d Merge branch 'feature_i2c_reboot_procedure' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into feature_i2c_reboot_procedure
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-04-06 19:20:59 +02:00
b9d0e4bdd9 Merge remote-tracking branch 'origin/develop' into feature_i2c_reboot_procedure 2023-04-06 19:20:54 +02:00
cdcadf3c18 Merge branch 'develop' into feature_i2c_reboot_procedure
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-04-06 19:18:47 +02:00
5243f304af Merge remote-tracking branch 'origin/develop' into continue_tcs_tests
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-06 19:17:56 +02:00
a8d19b0ff9 Merge pull request 'bugfix RW asyy' (#579) from bugfix_rw_assy into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #579
2023-04-06 19:12:22 +02:00
5bdb7414bf changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-06 19:12:15 +02:00
77b8c6eb3e bugfix RW asyy
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-04-06 19:11:26 +02:00
db669c44f6 Merge branch 'feature_i2c_reboot_procedure' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into feature_i2c_reboot_procedure
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-04-06 18:07:03 +02:00
bfb91f1baa fix for FM build 2023-04-06 18:06:56 +02:00
3c33d01089 Merge branch 'develop' into feature_i2c_reboot_procedure
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-04-06 17:56:14 +02:00
6156cc0b88 Merge branch 'develop' into continue_tcs_tests
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-06 17:50:49 +02:00
bd8389e0c9 Merge pull request 'log store delay' (#577) from tm_log_store_delay into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #577
2023-04-06 17:50:25 +02:00
58aef99bbc theoretically done
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-04-06 17:49:34 +02:00
9020014245 added some more safety features
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-06 17:01:28 +02:00
e523c2fe25 log store delay
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-06 16:51:03 +02:00
3bd434bbc3 I2C reboot procedure for EIVE system
Some checks failed
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-04-06 16:50:33 +02:00
4acf66a020 fix unittest
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-06 15:31:32 +02:00
2af1735cfd enabled possibility to disable safe controller during eclipse
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-06 13:36:46 +02:00
13844bce65 copy pasta 2023-04-06 13:34:52 +02:00
d7dc3f34c7 consecutive cold test
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-04-06 13:24:16 +02:00
086dbcc19e some tweaks and fixes
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-04-06 13:16:50 +02:00
7a53ada4b4 add some more cold test cases
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-04-06 13:09:48 +02:00
c5e18957f5 changelog
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-04-06 13:03:28 +02:00
64b4db98ba i think thats an important bugfix
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-04-06 13:02:53 +02:00
3a236a1a3b all heaters off wrapper
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-04-06 13:01:31 +02:00
19006e79b1 better handling for TCS ctrl state
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-04-06 12:53:35 +02:00
44325ee176 changelog
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-04-06 12:15:12 +02:00
397e23f1da more TCS tests 2023-04-06 12:13:24 +02:00
3d48f4d046 acsParams 1 2023-04-06 11:15:50 +02:00
0d7fe0ff74 updated gains
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-06 10:50:58 +02:00
543d147b37 cleanup and detumble switch
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-06 10:47:26 +02:00
34dde2640e add SafeModeStrategy to detumble laws 2023-04-06 10:46:58 +02:00
205a672680 cleanup 2023-04-06 10:37:59 +02:00
57b01a5d2c moved SafeModeStrategy to defs 2023-04-06 10:37:25 +02:00
4624d5a2a6 Merge branch 'develop' into acs-flp-safe 2023-04-06 09:49:20 +02:00
518f9d73f6 rtval comment
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-04-06 09:48:33 +02:00
d8ec121131 Merge pull request 'preparing v1.43.2' (#575) from prep_v1.43.2 into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #575
2023-04-05 18:21:11 +02:00
3e54bc9c3f preparing v1.43.2
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-05 17:29:09 +02:00
65dd0f313b use enum instead of rtval to enable easier tm generation
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-04-05 17:20:29 +02:00
4ca45f348c Merge pull request 'Bug' (#574) from bugfix_syrlinks into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #574
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-04-05 17:15:17 +02:00
34a0288987 Merge branch 'develop' into bugfix_syrlinks
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-04-05 17:13:20 +02:00
f031c46cb5 ACS Board assy
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-05 17:10:50 +02:00
dbf627cc12 Merge pull request 'Assembly and FDIR updates' (#572) from bugfix_syrlinks into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #572
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-04-05 17:02:50 +02:00
b06db0a0fc Merge branch 'bugfix_syrlinks' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into bugfix_syrlinks
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-04-05 16:58:40 +02:00
0a68b50ad7 copy and paste fix 2023-04-05 16:58:32 +02:00
b11ed219a2 Merge branch 'develop' into bugfix_syrlinks
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-05 16:47:53 +02:00
67082a6559 Merge pull request 'No more RW commands during Safe Mode' (#573) from acs-safe-no-rw-cmd into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #573
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2023-04-05 16:47:19 +02:00
39b2a3420c changed satRotRateRef to scalar
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-05 16:46:57 +02:00
36d5f8fd31 changelog, updates
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-05 16:41:49 +02:00
cdba7985ea Merge branch 'develop' into acs-safe-no-rw-cmd
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-05 16:26:31 +02:00
38b7593900 changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-05 16:23:29 +02:00
78cc0fc52d set commanded speed to 0 during off transition 2023-04-05 16:21:38 +02:00
4ed112d019 safe mode controller no longer commands RWs 2023-04-05 16:21:10 +02:00
7549a24f6f same adaption for IMTQ 2023-04-05 16:19:53 +02:00
ce7da9f513 first implementation of new laws
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-05 16:11:28 +02:00
d53fdf9078 Merge branch 'develop' into bugfix_syrlinks
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-05 16:09:19 +02:00
67988dad64 Merge pull request 'str assembly mode checks' (#571) from syrlinks_assy_mode_checks into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #571
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-04-05 16:08:16 +02:00
56c5838d15 str assembly include mode off
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-05 16:06:59 +02:00
2950876ce4 syrlinks ASSY
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-05 16:05:05 +02:00
a875bf55b8 Merge branch 'develop' into syrlinks_assy_mode_checks
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-05 15:31:12 +02:00
a28ba4ec66 Merge pull request 'SUS Assembly bug' (#569) from bugfix_sus_assy into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #569
2023-04-05 15:30:12 +02:00
c65b402361 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-05 15:29:44 +02:00
f5e47c6114 some more mode checks 2023-04-05 15:29:03 +02:00
600921e3a0 some code fixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-05 15:11:37 +02:00
3c38410643 some more tweaks
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-05 15:08:07 +02:00
2e0a685507 overwrite health corrections
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-05 15:06:41 +02:00
0ade2ae0ee str assembly mode checks
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-04-05 15:05:32 +02:00
b050047d9a special handling for sus groups
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-05 14:50:33 +02:00
65c231e92d that was a lot of printouts 2023-04-05 14:46:45 +02:00
5e93282662 seems to work now, but the whole printout crap needs to be removed
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-05 14:41:34 +02:00
7a7d0e650f added low pass filter for gyr and mgmDot values
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-05 11:25:44 +02:00
4ca8c38c98 Merge branch 'develop' into acs-flp-safe
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-05 11:05:53 +02:00
0cabe3a9ea Merge remote-tracking branch 'origin/develop' into bugfix_sus_assy
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-05 10:29:38 +02:00
845548ed25 maybe that fixes the issues 2023-04-05 10:27:19 +02:00
858c6c301e Merge pull request 'whoops' (#570) from fix into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #570
2023-04-05 09:55:20 +02:00
9825a8583f whoops
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-05 09:45:42 +02:00
babc4f80a8 Merge pull request 'update HK frequencies' (#568) from update_hk_frequencies into develop
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
Reviewed-on: #568
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-04-05 09:21:35 +02:00
3299260653 fix GPS HK enabling
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-04-04 20:59:25 +02:00
a0e531445a Merge remote-tracking branch 'origin/develop' into update_hk_frequencies
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-04 20:55:50 +02:00
5e854668b5 Merge pull request 'prep next patch release' (#567) from prep_v1.43.1 into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #567
2023-04-04 20:45:15 +02:00
52c69f05e6 prep next patch release
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-04 20:39:13 +02:00
5dd2638241 Merge pull request 'Tweaks Syrlinks HK' (#565) from tweak_syrlinks_hk into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #565
2023-04-04 20:37:53 +02:00
c835b31e7f minor fix
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-04-04 20:36:52 +02:00
57b41701ce hopefully those were the last fixes
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-04-04 20:34:28 +02:00
69bbe4ea39 update HK frequencies
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-04 19:18:53 +02:00
f2a2c73984 Merge remote-tracking branch 'origin/develop' into tweak_syrlinks_hk
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-04 18:53:14 +02:00
85cf95d6bb Merge pull request 'Feature: Set health overrides' (#563) from feature_set_health_overrides into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #563
2023-04-04 18:52:06 +02:00
08d83c158a Merge pull request 'wrong logic' (#566) from bugfix_gps_fdir into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #566
2023-04-04 18:51:50 +02:00
b0e65867ee wrong logic
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-04 18:51:09 +02:00
106cb1ab35 Merge branch 'develop' into feature_set_health_overrides
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-04 18:39:54 +02:00
a06d90daad remove duplicate code
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-04 18:29:07 +02:00
3cc48a4cea annoying
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-04 18:21:30 +02:00
04178b8831 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-04 18:04:09 +02:00
28882cc359 Merge pull request 'fancy GPS fdir' (#562) from fancy_gps_fdir into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #562
2023-04-04 18:02:54 +02:00
c9bd922711 Merge remote-tracking branch 'origin/develop' into tweak_syrlinks_hk
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-04 18:02:29 +02:00
94c736d143 Merge branch 'develop' into fancy_gps_fdir
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-04 18:00:36 +02:00
c4516f53b8 another include fix
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-04-04 17:57:07 +02:00
f39981deca include fix
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-04-04 17:55:57 +02:00
fd8317acd7 Merge remote-tracking branch 'origin/develop' into feature_set_health_overrides
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-04-04 17:54:43 +02:00
7df3308717 Merge pull request 'TCS Sanity Range' (#564) from tcs_sanity_range_check into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #564
2023-04-04 17:53:44 +02:00
a76074acf5 changelog
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-04 17:53:38 +02:00
697dcab345 changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-04 17:52:03 +02:00
104a8cab33 seems to work now
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-04-04 17:49:01 +02:00
8d4b980c32 this should fix some bugs 2023-04-04 16:46:07 +02:00
677457bbe7 syrlinks HK tweaks
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-04-04 15:59:45 +02:00
908927ed9f some fixes
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-04 15:09:51 +02:00
4a287344f4 add sanity range check
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-04-04 15:02:56 +02:00
ae0413f7f6 clean up code structure a bit
Some checks failed
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-04-04 14:52:22 +02:00
01081cbb29 set health overrides
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-04-04 14:45:09 +02:00
1d82977ca2 clean up
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-04 14:29:05 +02:00
bc7bdfe1fe Merge pull request 'inititalize loop indexes' (#561) from tcs_bugfix into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #561
2023-04-04 14:26:00 +02:00
38a0c14940 inititalize loop indexes
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-04-04 14:24:57 +02:00
3941770378 fancy GPS fdir
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-04-04 14:20:27 +02:00
e10359077c finally works
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-04-04 14:01:13 +02:00
8d1db69e0d annoying 2023-04-04 13:48:50 +02:00
8a2137d5d3 another test 2023-04-04 13:46:21 +02:00
e47ba65550 another test 2023-04-04 13:45:12 +02:00
143fb44037 try something 2023-04-04 13:41:55 +02:00
18994f5e65 Merge pull request 'prep v1.43.0' (#560) from prep_v1.43.0 into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #560
2023-04-04 13:33:06 +02:00
39a3b4aa6f prep v1.43.0
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-04 13:32:41 +02:00
2b18ab1504 Merge pull request 'Bugfixes ans tweaks for STR' (#559) from bugfixes_tweaks_str into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #559
2023-04-04 11:22:49 +02:00
83e0627548 Merge remote-tracking branch 'origin/develop' into bugfixes_tweaks_str
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-04 11:22:07 +02:00
152a3c20cf bump submodules
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-04 11:20:03 +02:00
9e8880c2c5 Merge remote-tracking branch 'origin/develop' into bugfixes_tweaks_str 2023-04-04 11:19:34 +02:00
ed8623259e Merge pull request 'Feature: 3V3 stack power switching' (#556) from feature_3v3_stack_switching into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #556
2023-04-04 11:18:57 +02:00
69a3cb20be Merge remote-tracking branch 'origin/develop' into feature_3v3_stack_switching
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-04 11:18:45 +02:00
01b98ca091 Merge pull request 'tweaks' (#558) from single_store_tweak_fsfw into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #558
2023-04-04 11:15:49 +02:00
0cd246182d bump fsfw
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-04-04 01:52:34 +02:00
9270165bf8 fix STR bugs and improve code
- Reset reply size after returning a reply
- Reset data link layer and flush RX for regular commands and before
  performing special commands to ensure consistent start state
- Clean up DHB a bit
- Set STR dev to OFF in assembly when it is faulty.
2023-04-04 01:35:05 +02:00
9aedc36e4d tweaks
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
- Bump fsfw: O_SYNC flag on UioMapper
- Reduce delay for single TM store task to 2 ms
2023-04-03 21:57:48 +02:00
f5588e9c62 Merge remote-tracking branch 'origin/develop' into feature_3v3_stack_switching
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-03 19:58:35 +02:00
afbab6d3f2 Merge pull request 'Bugfix for GPS health devices' (#555) from bugfix_gps_health_dev_connect_parent into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #555
2023-04-03 19:57:50 +02:00
6d0bd88cd9 changelog
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-03 19:57:16 +02:00
23af9685d6 bugfix
Some checks are pending
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-04-03 19:15:14 +02:00
a26d71f745 i hate this crap
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-04-03 19:04:21 +02:00
8404ce237b something is wrong now
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-04-03 18:54:47 +02:00
1610bdecf9 connect parent
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-04-03 18:02:45 +02:00
53c88f85d5 changelog update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-03 16:58:48 +02:00
ac514d9c19 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-04-03 16:57:12 +02:00
e6f0695e1e bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-04-03 16:55:37 +02:00
6b37d292c6 add 3v3 stack switching
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-04-03 16:25:32 +02:00
e3677f89fe Merge pull request 'IMTQ: Lower Integration Time' (#552) from imtq_lower_integration_time into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #552
2023-04-03 15:43:30 +02:00
5267bfcd82 Merge remote-tracking branch 'origin/develop' into imtq_lower_integration_time
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-03 15:34:51 +02:00
99eae0df51 update changelog
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-03 15:31:46 +02:00
73e2508025 Merge pull request 'remove double lock' (#554) from bugfix_axi_ptme_lock into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #554
2023-04-03 15:30:36 +02:00
1b2dd12e61 remove double lock
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-03 15:29:18 +02:00
8585114041 missing state check
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-04-03 15:27:06 +02:00
c4f62842ab Merge remote-tracking branch 'origin/develop' into imtq_lower_integration_time
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-03 15:21:00 +02:00
800ab7e87f Merge pull request 'disable some printouts' (#553) from tweaks_tcs into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #553
2023-04-03 15:20:32 +02:00
11d9871c0a disable some printouts
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
2023-04-03 15:20:11 +02:00
958abadd65 somethings buggy
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-03 15:16:53 +02:00
fba856a9a9 Merge branch 'develop' into imtq_lower_integration_time
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-03 15:13:00 +02:00
bc582abcb3 Merge pull request 'Thermal Controller Update' (#399) from thermal_controller into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #399
2023-04-03 15:12:48 +02:00
ba7a2c3ece Merge branch 'develop' into thermal_controller
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-04-03 15:12:30 +02:00
a8a0299b46 some adaptions, heater to off seems to work
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-03 14:38:00 +02:00
f4b47a24c0 adaptions for EM build
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-03 14:22:58 +02:00
e9c5bfe324 event spam has stopped
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-03 14:09:54 +02:00
5dcafa1de0 lower integration time
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-03 10:12:19 +02:00
7522eac9eb done 2023-04-02 23:43:41 +02:00
847e3bb51d prep imtq startup handling 2023-04-02 20:12:24 +02:00
020dfa8278 Merge pull request 'add compatible firmware' (#551) from ptme_poll_threshold_register into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #551
2023-04-02 15:52:29 +02:00
389b77a092 Merge branch 'develop' into ptme_poll_threshold_register
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-02 15:52:17 +02:00
a31f8c934a add compatible firmware
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-04-02 15:51:55 +02:00
685a4caace Merge pull request 'add SW IF for manipulating poll threshold' (#550) from ptme_poll_threshold_register into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #550
2023-04-02 15:35:39 +02:00
9360dad028 changelog
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-02 15:34:52 +02:00
8eac0b5ebd changelog
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-04-02 15:33:49 +02:00
703eaaa9aa poll threshold param cmd handling
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-04-02 15:32:04 +02:00
cab55c79dc add SW IF for manipulating poll threshold
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-02 14:22:52 +02:00
62952b89b1 Merge remote-tracking branch 'origin/develop' into thermal_controller
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-01 16:00:15 +02:00
b205fb5269 bump changelog
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-04-01 15:55:37 +02:00
959f37f25a changelog format fix 2023-04-01 15:55:23 +02:00
789b0ff7ae Merge pull request 'prep v1.42.0' (#549) from prep_v1.42.0 into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #549
2023-04-01 15:40:45 +02:00
601318d7eb prep v1.42.0
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-01 15:33:02 +02:00
87d622c82c Merge pull request 'STR tweaks parameter update' (#544) from str_tweaks_param_update into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #544
2023-04-01 15:23:43 +02:00
fc43627abb Merge branch 'develop' into str_tweaks_param_update 2023-04-01 15:23:33 +02:00
0878f3882a Merge pull request 'reduced HK rollover' (#547) from tweak_reduced_hk_rollover into develop
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
Reviewed-on: #547
2023-04-01 15:23:03 +02:00
6a8ddf96b8 Merge branch 'develop' into tweak_reduced_hk_rollover 2023-04-01 15:22:54 +02:00
6a2f569fc3 Merge pull request 'Double GomSpace polling frequency' (#548) from tweak_poll_gs_devs_more_often into develop
Reviewed-on: #548
2023-04-01 15:22:40 +02:00
d2f11b1860 Merge branch 'develop' into str_tweaks_param_update
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-01 15:20:52 +02:00
cf8dc9ed7d reduced HK rollover
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-01 15:07:47 +02:00
f65cf23391 dobule GS polling frequency
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-01 15:07:04 +02:00
b4c6965d9e poll GS devices more often 2023-04-01 15:06:21 +02:00
78d39a3760 Merge pull request 'filename fixes scex' (#546) from scex_filename_fixes into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #546
2023-04-01 15:05:04 +02:00
b58fc90879 important correction
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-01 14:40:34 +02:00
2386944ed8 removed unused code
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-04-01 14:32:41 +02:00
409631fb0a filename fixes scex
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-04-01 14:23:11 +02:00
13b8f9b1ec Merge remote-tracking branch 'origin/develop' into str_tweaks_param_update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-04-01 13:43:59 +02:00
d0f641abe0 Merge pull request 'Possible Bugfix for Duallane Swichting' (#545) from possible_bugfix_duallane_power_switching into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #545
2023-04-01 13:43:36 +02:00
9b5fc8995c changelog 2023-04-01 13:43:24 +02:00
23a4b08709 seems to work, improve dummy PCDU handler
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-31 23:41:30 +02:00
d1775a52aa Merge remote-tracking branch 'origin/develop' into thermal_controller
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-31 19:18:05 +02:00
ff6ad60eed changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-31 19:16:57 +02:00
95d220c304 docs
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-31 19:15:54 +02:00
65989261b0 that should fix the issue
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-31 19:14:42 +02:00
e365e03c2a possible bugfix
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-31 19:00:37 +02:00
da36160f6e returncode check
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-31 18:52:35 +02:00
3f8603967c param update STR
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-03-31 18:51:16 +02:00
013692cc41 Merge pull request 'PAPB multi-byte write support' (#543) from papb_multi_byte_write_support into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #543
2023-03-31 18:37:13 +02:00
2f9de8c36e some tweaks
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-31 17:41:01 +02:00
fcf3437410 some more tweaks 2023-03-31 17:39:13 +02:00
f51656a813 add back volatile keyword
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-31 17:36:49 +02:00
bb7a616283 some minor tweaks
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-31 17:35:53 +02:00
028f94a2f7 Merge remote-tracking branch 'origin/develop' into papb_multi_byte_write_support
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-31 17:34:35 +02:00
62ba7a1f80 Merge remote-tracking branch 'origin/develop' into papb_multi_byte_write_support
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-31 17:29:10 +02:00
9d42bb87d9 Merge pull request 'PTME rework reset handling' (#542) from ptme_rework_reset_handling into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #542
2023-03-31 17:26:52 +02:00
6c8eeeab31 init result
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-31 17:12:11 +02:00
f16d92c1b1 some more lock handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-31 17:05:01 +02:00
55a22c840c PTME_LOCK atomic boolean and related handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-31 16:51:30 +02:00
caa7c20adf tweaks
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-31 15:12:05 +02:00
6ee3fe2eef changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-31 13:22:07 +02:00
76ea3f7979 compile fixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-31 13:21:38 +02:00
3871c8b8de change layering
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-31 13:17:15 +02:00
e0f94039b4 found some bugs
Some checks failed
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-31 12:47:55 +02:00
a1380a6e3a syrlinks bugfix
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-03-31 12:11:55 +02:00
795486ae6c trying to find out whats wrong 2023-03-31 12:11:31 +02:00
4b1221ab99 modes for VC/stores 2023-03-31 01:14:59 +02:00
f6f4db525c read reg instead of polling GPIO 2023-03-30 23:52:37 +02:00
a6e24485e2 Merge pull request 'done' (#541) from refactor_fix_duallane_fdirs into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #541
2023-03-30 17:23:14 +02:00
74a38dc76b re-run generators
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-03-30 17:22:28 +02:00
5f6f85a778 done
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-03-30 17:16:59 +02:00
6426142039 Merge pull request 'minor tweak for device handler' (#540) from scex_minor_tweak into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #540
2023-03-30 13:41:54 +02:00
1541376701 minor tweak for device handler
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-03-30 13:41:14 +02:00
27370fcd44 multi byte write support but does not work..
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-03-30 13:36:44 +02:00
770fee0097 some minor tweaks 2023-03-29 17:38:38 +02:00
5903b3ef60 Merge pull request 'SCEX update' (#538) from tweaks_scex_filenames into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #538
2023-03-29 17:37:06 +02:00
0bf4527e94 Merge branch 'develop' into tweaks_scex_filenames
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-29 13:39:46 +02:00
f695115102 Merge pull request 'move STR assy' (#539) from move_str_assy into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #539
2023-03-29 12:42:55 +02:00
a72805d137 move STR assy
Some checks are pending
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-03-29 11:44:13 +02:00
b7c17fdf0f scex update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-29 11:41:42 +02:00
d4ae19ba8e Merge pull request 'prep v1.41.0' (#537) from prep_v1.41.0 into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #537
2023-03-28 22:29:03 +02:00
e2b36313c1 afmt
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-03-28 22:28:58 +02:00
0c3c61c686 prep v1.41.0
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-03-28 22:26:23 +02:00
3f72837134 Merge pull request 'Tweaks PAPB polling' (#533) from tweaks_papb_polling into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #533
2023-03-28 22:18:26 +02:00
0764dbb662 Merge remote-tracking branch 'origin/develop' into tweaks_papb_polling
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-03-28 22:18:28 +02:00
4336b8c14f Merge branch 'tweaks_papb_polling' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into tweaks_papb_polling
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-03-28 22:18:08 +02:00
9c743eb0d9 bump fsfw and changelog 2023-03-28 22:17:54 +02:00
c35d824fcd Merge remote-tracking branch 'origin/develop' into tweaks_papb_polling 2023-03-28 22:16:07 +02:00
3e58e4a8a4 Merge pull request 'proper fault/ext ctrl handling for dual side' (#529) from improve_duallane_fdir into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #529
2023-03-28 22:09:21 +02:00
8988905050 Merge branch 'develop' into tweaks_papb_polling
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-03-28 22:09:09 +02:00
f29163e8a9 changelog note
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-03-28 22:08:08 +02:00
9cfee12774 docs + TODO
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-28 22:04:40 +02:00
eafc47f7a1 some more cleaning up
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-28 21:59:38 +02:00
4c57e48399 cleaning up
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-28 21:58:04 +02:00
7a8df782cc Merge branch 'develop' into improve_duallane_fdir
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-28 21:54:16 +02:00
4d1fbbcabd re-generate files
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-28 21:51:54 +02:00
053cfed093 docs
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-28 21:49:16 +02:00
d09b53f6df ns delay between gpio polls solves it
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-28 21:45:04 +02:00
c474d6ed1d bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-28 19:50:19 +02:00
def7eca2f2 cleaning up a bit
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-28 19:38:02 +02:00
520b41c53b transition basic mode handling
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-28 17:21:43 +02:00
28d7dcf177 Merge remote-tracking branch 'origin/develop' into thermal_controller
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-28 16:37:09 +02:00
36d7852c1d changes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-28 16:35:49 +02:00
6a37503154 Merge pull request 'undefined init mode for power switcher' (#536) from bump_fsfw_power_switcher_component_undefined_init_mode into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #536
2023-03-28 15:28:57 +02:00
12c7ed2cb5 undefined init mode
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-03-28 15:28:28 +02:00
33babebb6f cancel events
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-28 15:15:38 +02:00
5c97020087 small change
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-28 15:11:21 +02:00
0adfb0cd3c add missing override specifiers
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-28 15:06:03 +02:00
0bba9b53ba some more documentation
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-28 15:03:34 +02:00
1f6c986a0c add instrumentation code
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-28 14:59:31 +02:00
746254a838 cancel transfer on TX disabled
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-28 10:13:39 +02:00
437288de1e small fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-27 23:09:26 +02:00
534945cfec last know working cfg for slow downlink
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-27 22:57:01 +02:00
9613d4aa51 add single store delay handling for log store as well
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-27 22:06:16 +02:00
bc72f59abb now its just trying things out
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-27 21:46:12 +02:00
00214dc378 found some more bugs
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-27 21:39:37 +02:00
fb324516bb this is insane
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-27 21:23:09 +02:00
7023fe5c42 this is weird
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-27 18:59:31 +02:00
1727168ee5 now its getitng weird 2023-03-27 18:39:53 +02:00
f1774fe80f docs 2023-03-27 18:13:00 +02:00
fcb5613aa8 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-27 17:44:51 +02:00
363fc89209 thsi is cleaner
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-27 17:43:52 +02:00
1a0e632d2f go down to nanoseconds 2023-03-27 17:42:54 +02:00
6dbb9b5e37 Merge pull request 'add some docs' (#532) from com_docs into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #532
2023-03-27 17:06:19 +02:00
31e2205e71 Merge remote-tracking branch 'origin/develop' into com_docs
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-03-27 17:06:35 +02:00
c83afa4e10 Merge remote-tracking branch 'origin/develop' into improve_duallane_fdir
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-27 17:05:24 +02:00
e10768386d Merge remote-tracking branch 'origin/develop' into tweaks_papb_polling
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-27 17:05:05 +02:00
be41d4f819 Merge pull request 'shorter delay between file swaps' (#531) from tweaks_tm_dumps into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #531
2023-03-27 17:03:09 +02:00
5adde9c1c4 Merge remote-tracking branch 'origin/develop' into tweaks_tm_dumps
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-03-27 17:03:15 +02:00
8dfdc62125 Merge pull request 'ACS board devs go to on first' (#530) from improvement_acs_devs_go_to_on into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #530
2023-03-27 17:02:15 +02:00
c53c052876 lower delays
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-03-27 17:02:02 +02:00
f8ff9c355c shorter delay between file swaps
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-27 16:10:50 +02:00
e0f5d049e3 compile fixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-27 15:15:20 +02:00
4c85b5d951 add some docs
Some checks are pending
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-03-27 15:10:35 +02:00
80ad923181 SUS goes to MODE_ON in startup now
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-27 15:03:54 +02:00
ec95792bc3 ACS board devs go to on first
Some checks failed
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-27 15:00:40 +02:00
53c839e389 proper fault/ext ctrl handling for dual side
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-27 14:53:18 +02:00
68bc7f7682 Merge pull request 'enable periodic HK' (#525) from feature_set_up_periodic_hk into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #525
2023-03-27 13:50:51 +02:00
efa3c11c7a bump tmtc again
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-26 20:10:03 +02:00
19723e88d3 configurable HK service queue depth
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-26 20:05:24 +02:00
b469455b9b bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-26 20:01:32 +02:00
861bee8083 Merge branch 'develop' into thermal_controller
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-26 16:58:30 +02:00
bb8d4fbc57 Merge branch 'develop' into feature_set_up_periodic_hk
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-26 16:58:18 +02:00
dc92770c01 Merge pull request 'bugfix EM and Host build' (#528) from bugfix_em_build into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #528
2023-03-26 16:58:09 +02:00
935f49094f fix host build as well
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-03-26 16:58:05 +02:00
11acfbbc91 bugfix EM build
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-03-26 16:54:40 +02:00
3e7901f060 Merge remote-tracking branch 'origin/develop' into thermal_controller
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-26 16:52:39 +02:00
58c343b8de Merge remote-tracking branch 'origin/develop' into feature_set_up_periodic_hk
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-26 16:45:28 +02:00
0ef3104e2e Merge pull request 'cleanup everything' (#527) from cleanup_everything into develop
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
Reviewed-on: #527
2023-03-26 16:43:29 +02:00
b92924881b changelog 2023-03-26 16:43:36 +02:00
63b50e6101 clean up op done
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-03-26 16:42:00 +02:00
e7eaaa9295 finished power clean up
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-03-26 16:16:54 +02:00
7c700a9e19 clean up power code 2023-03-26 16:13:54 +02:00
9af7b6a39b Merge pull request 'more ACS cleaning' (#526) from more_acs_cleaning into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #526
2023-03-26 16:06:02 +02:00
079da3b0e4 more ACS cleaning
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop Build queued...
- STR code is now in mission folder, but still only conpiled for Q7S
  code because wire library is proprietary
2023-03-26 16:05:01 +02:00
cb2fe300b2 enable periodic HK
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-26 15:28:00 +02:00
e9901f3c85 Merge pull request 'v1.40.0' (#524) from prep_v1.40.0 into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #524
2023-03-24 22:34:47 +01:00
c37f26021c changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-24 21:36:31 +01:00
58e427d51d small order fix
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-24 21:35:28 +01:00
3d93431278 prep v1.40.0
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
2023-03-24 21:34:03 +01:00
b301cbc750 Merge pull request 'improve sd lock handling again' (#523) from another_imrovement_sd_lock_handling into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #523
2023-03-24 21:29:39 +01:00
e69812b48b improve sd lock handling again
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-03-24 21:29:13 +01:00
0301c18af2 resolve some merge conflicts
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-24 21:20:27 +01:00
f71972609c Merge remote-tracking branch 'origin/develop' into thermal_controller
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-24 21:15:29 +01:00
61c26fe53a Merge pull request 'Dual Lane Boards: Allow Side Switches' (#412) from feature_allow_side_switch into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #412
2023-03-24 21:10:55 +01:00
40c000b183 changelog
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-03-24 21:10:59 +01:00
bee8838010 Merge remote-tracking branch 'origin/develop' into feature_allow_side_switch
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-03-24 21:09:43 +01:00
ff25f6ff3f Merge pull request 'Finish COM and ACS restructuring' (#522) from cleaning_com_acs into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #522
2023-03-24 21:08:32 +01:00
dd28767d68 changelog
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-03-24 21:08:44 +01:00
13f269e6aa fix unittest
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-03-24 21:08:00 +01:00
6331aef987 EM bugfix
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-03-24 21:05:11 +01:00
59d40a6794 finish acs and com
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-03-24 21:01:00 +01:00
29ba7b87b7 re-run generators
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-03-24 20:51:03 +01:00
87e1746d71 done 2023-03-24 20:50:33 +01:00
da386edd05 cleaniiing
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-03-24 20:03:35 +01:00
c40a192c48 Merge pull request 'more cleaning' (#521) from cleaning_com into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #521
2023-03-24 19:53:31 +01:00
58058bd402 Merge branch 'develop' into cleaning_com
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-03-24 19:53:18 +01:00
2fa5024236 more cleaning
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
2023-03-24 19:53:09 +01:00
3135bb923e afmt 2023-03-24 19:49:08 +01:00
6f368ef01a Merge pull request 'Cleaning COM' (#520) from cleaning_com into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #520
2023-03-24 19:49:01 +01:00
d6409b6112 em adaption
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-03-24 19:47:48 +01:00
72598e2ae6 bump tmtc
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-03-24 19:43:37 +01:00
9dc0c5bde0 cleaning up com
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-03-24 19:37:03 +01:00
ec40044b6e some bugfixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-24 19:14:27 +01:00
bea0c31a12 Merge remote-tracking branch 'origin/develop' into feature_allow_side_switch
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-24 17:29:13 +01:00
04e5c212d7 Merge pull request 'bugfix fsfwgen' (#519) from bugfix_fsfwgen_duplicate_events into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #519
2023-03-24 15:40:04 +01:00
fe1fb9425e bugfix fsfwgen
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
EIVE/eive-obsw/pipeline/head Build started...
2023-03-24 15:39:45 +01:00
96bd188e57 running gens and merging develop afterwards is so much fun aaaaaaaaamazing
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-24 15:20:40 +01:00
90db9785ea fixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-24 15:18:52 +01:00
506c8a3fa6 Merge branch 'develop' into acs-flp-safe 2023-03-24 15:10:34 +01:00
8fa5777634 Merge pull request 'MEKF invalid handling fix' (#514) from mekf-invalid-reset-counter into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #514
2023-03-24 15:03:17 +01:00
613d7738a8 update generates files
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-03-24 15:02:13 +01:00
b32e0ef4fb Merge remote-tracking branch 'origin/develop' into mekf-invalid-reset-counter 2023-03-24 15:01:01 +01:00
150595b7f7 gens
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-24 14:59:35 +01:00
07f482a98b fix 2023-03-24 14:58:49 +01:00
c759e118fa fixed indexing 2023-03-24 14:56:35 +01:00
82a9dbd632 Merge pull request 'some bugfixes for custom CSP router' (#518) from custom_csp_router_task into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #518
2023-03-24 14:55:12 +01:00
7e35a0a481 Merge branch 'develop' into custom_csp_router_task
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-03-24 14:55:02 +01:00
330e26b2ba Merge branch 'develop' into acs-flp-safe 2023-03-24 14:53:07 +01:00
7dc587e2df some bugfixes
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-03-24 14:53:07 +01:00
41215c9ae9 improved events 2023-03-24 14:52:26 +01:00
dce6323090 use safeCtrl strategy 2023-03-24 14:52:12 +01:00
906413e800 also check for inertia 2023-03-24 14:51:45 +01:00
ad72301ea0 for now final version of controller 2023-03-24 14:51:33 +01:00
44d0f1c533 frmt 2023-03-24 14:51:07 +01:00
1e1d41270b Merge pull request 'Refactoring Syrlinks COM' (#517) from refactoring_syrlinks_com_if into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #517
2023-03-24 14:49:07 +01:00
15b3144760 Merge branch 'develop' into refactoring_syrlinks_com_if
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-03-24 14:48:08 +01:00
d9284478c4 Merge pull request 'custom CSP router task' (#516) from custom_csp_router_task into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #516
2023-03-24 14:47:55 +01:00
74603f9969 Merge remote-tracking branch 'origin/develop' into refactoring_syrlinks_com_if
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-24 14:22:12 +01:00
69bb3922d3 Merge branch 'custom_csp_router_task' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into custom_csp_router_task
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-24 14:17:56 +01:00
52c439c501 Merge remote-tracking branch 'origin/develop' into custom_csp_router_task 2023-03-24 14:17:51 +01:00
f273eaccfb bump submodules 2023-03-24 14:17:28 +01:00
5ec001652f Merge branch 'develop' into custom_csp_router_task
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-03-24 14:17:20 +01:00
cbbac0d7a9 Merge pull request 'some tweaks for busy handling' (#500) from tweak_papb_busy_polling into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #500
2023-03-24 14:15:00 +01:00
267f900545 changelog
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-03-24 14:15:01 +01:00
012e173487 okay this should work
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-03-24 14:11:08 +01:00
91b83d477b changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-24 13:28:27 +01:00
349332c1e1 adapt all priorities
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-24 13:26:27 +01:00
d226726a27 this is going to be annyoing
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-24 11:58:45 +01:00
9d8dfdfd4f nearly there
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-24 11:35:46 +01:00
1f4c171576 custom CSP router
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-24 11:33:43 +01:00
21159107d7 done
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-24 02:34:38 +01:00
e8e01cf198 update gneerates files 2023-03-24 01:20:38 +01:00
fd235488f7 schedule new COM helper 2023-03-24 01:19:08 +01:00
d85fb18112 fix new shadowing warnings 2023-03-24 01:01:29 +01:00
a9efedfc86 Make syrlinks COM more reliable 2023-03-24 00:59:41 +01:00
175c0f9961 and another bug
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-23 20:56:06 +01:00
fd61a3f243 we still need the first file load
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-23 19:22:14 +01:00
cc4ef09e9f i think this is a bug
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-23 19:12:57 +01:00
0bced7eca5 bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-23 18:44:12 +01:00
abf689872d Merge remote-tracking branch 'origin/develop' into tweak_papb_busy_polling
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-23 18:42:24 +01:00
7f36bd365f Merge pull request 'TCS local pool variables as members' (#515) from thermal_ctrl_local_vars_as_members into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #515
2023-03-23 18:39:10 +01:00
0bb6c15b97 Merge remote-tracking branch 'origin/develop' into thermal_ctrl_local_vars_as_members
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-03-23 18:39:09 +01:00
e68918e978 Merge pull request 'STR improvements' (#509) from refactoring_str_use_ring_buff_for_rx into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #509
2023-03-23 18:37:18 +01:00
45054cc863 scaling up
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-23 18:31:47 +01:00
e6813efb88 realistic parameters
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-23 17:34:48 +01:00
8597e04eaf Merge branch 'develop' into acs-flp-safe
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-23 17:05:30 +01:00
493f89e0cb this is tricky
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-23 15:43:14 +01:00
f622e1afe4 bump changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-23 12:14:46 +01:00
7af2b5ddf9 TCS local pool variables as members
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-23 12:13:24 +01:00
dda8261fc3 stry debug printout
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-23 11:42:24 +01:00
f61c448a24 important bugfix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-23 11:32:46 +01:00
884462e793 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-23 12:03:53 +01:00
7a0641b98c Merge remote-tracking branch 'origin/develop' into tweak_papb_busy_polling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-23 12:02:55 +01:00
7bca418db8 changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-23 10:51:06 +01:00
32bab161ef new event 2023-03-23 10:37:34 +01:00
9c735e36b8 reset mekfInvalidCounter after STR FDIR event and also trigger event in case mekf has recovered 2023-03-23 10:27:32 +01:00
b5d5dc5ad8 Merge remote-tracking branch 'origin/develop' into refactoring_str_use_ring_buff_for_rx
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-23 09:28:24 +01:00
13defc5053 Merge remote-tracking branch 'origin/develop' into refactoring_str_use_ring_buff_for_rx
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-22 10:49:25 +01:00
9e393f61a1 remove obsolete code
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-22 10:39:52 +01:00
d824f8ba9e some more improvements for DLL
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-03-22 10:38:41 +01:00
d6331aab0b Merge branch 'develop' into acs-flp-safe
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-22 09:08:04 +01:00
56642a11f7 frmt
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-22 08:59:29 +01:00
f6a0954315 added relevant parameters 2023-03-22 08:59:13 +01:00
57f5a22b04 works like a charm
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-03-22 02:20:14 +01:00
2dc22a7d8f Merge remote-tracking branch 'origin/develop' into refactoring_str_use_ring_buff_for_rx
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-03-22 00:03:27 +01:00
9c8fc84053 Merge remote-tracking branch 'origin/develop' into thermal_controller
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-21 23:44:25 +01:00
9e719d455a more simplfications
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-03-21 20:59:59 +01:00
fabb643026 rework send and read, simplify
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-03-21 20:47:06 +01:00
0256824e37 add uart reception handler
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-03-21 20:35:28 +01:00
24fb8e34f2 use a ring buffer
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-03-21 18:47:42 +01:00
d00cfc420c shameless copy of FLP code
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-21 17:19:27 +01:00
2153294e6f EM build working now
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-21 15:17:31 +01:00
17b9086974 Merge remote-tracking branch 'origin/develop' into tweak_papb_busy_polling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-21 15:02:24 +01:00
0fdc79df5e Merge remote-tracking branch 'origin/develop' into thermal_controller
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-21 14:55:55 +01:00
0e5a3a2f6c update changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-21 14:46:07 +01:00
b81618344e update eive system FDIR
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-21 14:38:10 +01:00
d85ddcdbff Merge remote-tracking branch 'origin/develop' into thermal_controller
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-21 14:18:57 +01:00
092e9fa508 bump deps 2023-03-21 14:18:32 +01:00
9003eea07b task name adaptions
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-21 14:16:35 +01:00
8464dd1eae changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-21 14:12:00 +01:00
6a07471c3a changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-21 14:11:19 +01:00
beb80e7a0b transform tm stores into quasi background threads 2023-03-21 14:09:59 +01:00
9c22e4cab2 small sched tweaks
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-21 12:58:28 +01:00
68e68afdd6 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-20 17:59:46 +01:00
fede1fc4b3 Merge branch 'tweak_papb_busy_polling' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into tweak_papb_busy_polling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-20 17:58:30 +01:00
394f0498c5 small compile error 2023-03-20 17:58:23 +01:00
809e1ecf88 Merge branch 'develop' into tweak_papb_busy_polling
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-20 17:57:47 +01:00
a75b4fd951 Merge remote-tracking branch 'origin/develop' into tweak_papb_busy_polling
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-20 17:57:21 +01:00
159da20ef2 some tweaks for busy handling
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-20 14:31:10 +01:00
ba9cf5d79d small changes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-18 18:03:59 +01:00
4871479ed5 fixes for q7s build
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-18 11:17:24 +01:00
eb46841237 update thermal controller
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-17 17:40:11 +01:00
d44142ac26 Merge remote-tracking branch 'origin/develop' into thermal_controller
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-17 17:36:51 +01:00
f7be8ea63c use supervisor fdir
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
controls the power switch
2023-03-16 19:10:05 +01:00
3c6eb265c7 PLOC SUPV dummy has switch now
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-16 18:52:32 +01:00
b1d2f73b01 move Switches enum
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-16 18:47:51 +01:00
eda1f7e212 syrlinks event works
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-16 18:28:51 +01:00
56a4378a63 that should be transition safe
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-16 18:05:23 +01:00
a16671762d Merge remote-tracking branch 'origin/develop' into thermal_controller
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-16 17:48:17 +01:00
350ed59033 handle syrlinks overheating in COM SS
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-15 17:13:25 +01:00
096253a9a3 Merge branch 'feature_scheduling_tweaks' into thermal_controller
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-15 16:25:13 +01:00
11e5866f31 added some defines
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-15 16:24:46 +01:00
9b8092fb09 this seems to work
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-15 16:24:01 +01:00
f546df50a1 Merge branch 'feature_boot_sequence_eive_sys' into thermal_controller
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-15 16:21:14 +01:00
8201a4140a works better now
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-15 16:19:37 +01:00
364342855d maybe force a mode command?
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-15 15:52:20 +01:00
c688a51838 Merge remote-tracking branch 'origin/feature_boot_sequence_eive_sys' into thermal_controller 2023-03-15 15:52:14 +01:00
715a69db89 this should cover upper bound checking when heater is off
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-15 15:43:20 +01:00
dc44af5b29 copy and paste error
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-15 15:20:47 +01:00
27f29eda40 small error
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-15 15:16:12 +01:00
50a62b9243 sth broke..
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-15 15:13:53 +01:00
da7c450e06 most temps should be valid now
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-15 15:00:06 +01:00
a92fa31cb5 better variable names, tweaks for less init events
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-15 14:56:26 +01:00
d273621419 some tweaks
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-15 14:36:18 +01:00
64ec76bfb7 Merge branch 'develop' into thermal_controller
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-15 14:14:56 +01:00
69525b6fd1 bump fsfw
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-15 14:10:53 +01:00
c1d8eda2c7 Merge remote-tracking branch 'origin/develop' into thermal_controller 2023-03-15 14:10:36 +01:00
8b11302028 unittest works again
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-14 20:35:49 +01:00
c1b4a1c164 Merge branch 'thermal_controller' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into thermal_controller
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-14 20:04:03 +01:00
58212d7081 Merge remote-tracking branch 'origin/develop' into thermal_controller 2023-03-14 20:04:00 +01:00
a6e6ee053d Merge branch 'develop' into thermal_controller
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-14 20:03:29 +01:00
e82777479b Merge remote-tracking branch 'origin/develop' into thermal_controller
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-14 18:50:28 +01:00
a51a680396 Merge remote-tracking branch 'origin/develop' into thermal_controller
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-14 15:34:25 +01:00
d3bf70243b Merge remote-tracking branch 'origin/develop' into thermal_controller
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-14 14:25:35 +01:00
4392598a67 Merge remote-tracking branch 'origin/develop' into thermal_controller
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-14 14:16:59 +01:00
26a9dce0a0 basic implementation for passive cooling
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-13 17:36:41 +01:00
9d1d62aee0 bump fsfw
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-13 16:02:24 +01:00
bf2d97bd60 continue thermal controller overheating
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-13 15:59:19 +01:00
721a01409e Merge branch 'thermal_controller' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into thermal_controller
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-03-13 13:28:02 +01:00
a0d6552781 . 2023-03-13 13:27:36 +01:00
c709b2a526 Merge branch 'develop' into thermal_controller
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-13 13:01:31 +01:00
5793d73ff6 printouts
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-13 12:53:40 +01:00
c63b13fc40 overheating
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-09 16:53:48 +01:00
224a3af6f8 Merge remote-tracking branch 'origin/develop' into thermal_controller 2023-03-09 16:09:01 +01:00
131c508cae position heaterTransitionControl()
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-09 09:37:10 +01:00
7a62624687 changes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-08 15:56:05 +01:00
337717d271 Merge branch 'thermal_controller' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into thermal_controller
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-08 14:35:04 +01:00
9c77703ada Merge branch 'develop' into thermal_controller
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-05 16:19:59 +01:00
718d067b40 small 2023-03-05 13:27:42 +01:00
37b540fd48 switch
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
Transition
2023-03-05 13:05:32 +01:00
36f820a07a going from dual to other submode requires special power handling
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-03-01 20:18:41 +01:00
73c594a930 this is going to be tricky 2023-03-01 20:12:48 +01:00
88db78fed9 Merge remote-tracking branch 'origin/develop' into thermal_controller
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-28 19:17:45 +01:00
5f3bd5c754 Merge branch 'thermal_controller' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into thermal_controller
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-24 13:46:14 +01:00
63275df3f0 formal changes 2023-02-24 13:39:23 +01:00
d6f537da5f Merge remote-tracking branch 'origin/develop' into thermal_controller
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-23 15:58:10 +01:00
9a7779cffb struct heaterStates and more
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-22 21:46:56 +01:00
0fa1bab94d comments
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-22 19:14:35 +01:00
29179bde0c merge conflicts
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-22 18:01:54 +01:00
b9a6425078 dummy change
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-22 17:50:03 +01:00
e13636167f limit for error events thermalcontroller + dummy beta
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-22 17:30:30 +01:00
9b849d10e9 small changes
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-21 17:49:55 +01:00
77b7433caf enum ThermalComponents
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-10 12:18:16 +01:00
484 changed files with 24225 additions and 10890 deletions

4
.gitignore vendored
View File

@ -22,3 +22,7 @@ __pycache__
!/.idea/cmake.xml
generators/*.db
# Clangd LSP
/compile_commands.json
/.cache

6
.gitmodules vendored
View File

@ -10,9 +10,6 @@
[submodule "thirdparty/lwgps"]
path = thirdparty/lwgps
url = https://github.com/rmspacefish/lwgps.git
[submodule "thirdparty/arcsec_star_tracker"]
path = thirdparty/arcsec_star_tracker
url = https://egit.irs.uni-stuttgart.de/eive/arcsec_star_tracker.git
[submodule "thirdparty/json"]
path = thirdparty/json
url = https://github.com/nlohmann/json.git
@ -22,3 +19,6 @@
[submodule "thirdparty/gomspace-sw"]
path = thirdparty/gomspace-sw
url = https://egit.irs.uni-stuttgart.de/eive/gomspace-sw.git
[submodule "thirdparty/sagittactl"]
path = thirdparty/sagittactl
url = https://egit.irs.uni-stuttgart.de/eive/sagittactl.git

4
.idea/cmake.xml generated
View File

@ -2,8 +2,7 @@
<project version="4">
<component name="CMakeSharedSettings">
<configurations>
<configuration PROFILE_NAME="Debug" ENABLED="true" CONFIG_NAME="Debug" NO_GENERATOR="true" />
<configuration PROFILE_NAME="Debug Q7S" ENABLED="true" CONFIG_NAME="Debug" TOOLCHAIN_NAME="Q7S" GENERATION_OPTIONS="-DTGT_BSP=&quot;arm/q7s&quot;" NO_GENERATOR="true">
<configuration PROFILE_NAME="Debug Q7S" ENABLED="true" CONFIG_NAME="Debug" TOOLCHAIN_NAME="Default" GENERATION_OPTIONS="-DTGT_BSP=&quot;arm/q7s&quot;" NO_GENERATOR="true">
<ADDITIONAL_GENERATION_ENVIRONMENT>
<envs>
<env name="ZYNQ_7020_ROOTFS" value="/opt/xiphos/sdk/ark/sysroots/cortexa9hf-neon-xiphos-linux-gnueabi" />
@ -11,6 +10,7 @@
</envs>
</ADDITIONAL_GENERATION_ENVIRONMENT>
</configuration>
<configuration PROFILE_NAME="Debug" ENABLED="true" CONFIG_NAME="Debug" NO_GENERATOR="true" />
</configurations>
</component>
</project>

View File

@ -16,6 +16,930 @@ will consitute of a breaking change warranting a new major release:
# [unreleased]
# [v7.4.1] 2023-12-06
## Fixed
- Schedule SCEX again. Scheduling was removed accidentaly when Payload Task was converted to a PST.
- SCEX transition was previously 0 seconds.. which did not lead to bugs? In any case it is 5
seconds now.
# [v7.4.0] 2023-11-30
- `eive-tmtc` v5.11.0
## Changed
- Rewrote the PLOC Supervisor Handler, which is now based on a new device handler base class.
Added ADC and Logging Counters telemetry set support.
## Fixed
- Increase allowed time for PTME writers to finish partial transfers. A duration of 200 ms was
not sufficient for cases where 3 writers write concurrently.
- Fixed state issue for PTME writer object where the writer was not reset properly after a timeout
of a partial transfer. This was a major bug blocking the whole VC if it occured.
- STR config path was previously hardcoded to `/mnt/sd0/startracker/flight-config.json`.
A new abstraction was introduces which now uses the active SD card to build the correct
config path when initializing the star tracker.
## Added
- PL PCDU: Add command to enable and disable channel order checks.
- Added new PUS 15 subservice `DELETE_BY_TIME_RANGE` which allows to also specify a deletion
start time when deleting packets from the persistent TM store.
- Introduced a new `RELOAD_JSON_CFG_FILE` command for the STR to reload the JSON configuration
data based on the current output of the config file path getter function. A reboot of the
device is still necessary to load the configuration to the STR.
# [v7.3.0] 2023-11-07
## Changed
- Changed PDEC addresses depending on which firmware version is used. It is suspected that
the previous addresses were invalid and not properly covered by the Linux memory protection.
The OBSW will use the old addresses for older FW versions.
- Reverted some STR ComIF behaviour back to an older software version.
## Added
- Always add PLOC MPSoC and PLOC SUPV components for the EM as well.
# [v7.2.0] 2023-10-27
- `eive-tmtc` v5.10.1
## Added
- STR: Added new TM sets: Blob, Blobs, MatchedCentroids, Contrast, AutoBlob, Centroid, Centroids
- STR: Added new mechanism where the secondary TM which is polled can now be a set instead of
being temperature only. An API is exposed which allows to add a data set to that set of secondary
telemetry, reset it back to temperature only, and read the whole set. This allows more debugging
capability.
- CFDP source handler, which allows file downlink using the standardized
CFDP interface.
- Proper back pressure handling for the CFDP handler, where the `LiveTmTask` is able to throttle
the CFDP handler.
- Added CFDP fault handler events.
- The EIVE system will command the payload OFF explicitely again when receiving the
`power::POWER_LEVEL_CRITICAL` event.
## Fixed
- If the PTME is driven in a way where it fills faster than it can be emptied, the interface
can become full during the process of a regular packet write. The interface of the PAPB VC
was adapted to be stateful now. Packet generation is started with a `write` call while
write transfers are advanced and completed with the `advanceWrite` call if they can not be
completed immediately.
- CFDP Space Packets SSC is now generated properly, was always 0 before.
- Host build fixes
- PL Enable set of the power controller is now set to invalid properly if the power controller
is not in normal mode.
- MPSoC debug mode.
- Possible bugfix for PL PCDU parameter JSON handling which might not have been initialized
properly from the JSON file.
## Changed
- Swapped RTD 9 (PLOC HPA Sensor) and RTD 11 (PLOC MPA Sensor) chip select definitions. It is
strongly suspected the cables for those devices were swapped during integration. This is probably
the easiest way to fix the issue without the need to tweak ground or other OBSW or controller
code.
- Added a 3 second delay in the EIVE system between commanding all PL components except the SUPV,
and the SUPV itself OFF when the power level becomes low or critical.
- SUS FDIR should now trigger less events. The finish event is now only triggered once the
SUS has been working properly for a minute again. It will then display the number of periods
during which the SUS was not working as well as the maximum amount of invalid messages.
- Updated battery internal resistance to new value
# [v7.1.0] 2023-10-11
- Bumped `eive-tmtc` to v5.8.0.
- Activate Xiphos WDT with a timeout period of 80 seconds using the `libxiphos` API. The WDT
calls are done by the new `XiphosWdtHandler` object.
# [v7.0.0] 2023-10-11
- Bumped `eive-tmtc` to v5.7.1.
- Bumped `eive-fsfw`
## Added
- EPS Subsystem has been added to EIVE System Tree
- Power Controller for calculating the State of Charge and FDIR regarding low SoC has been
introduced.
## Changed
- Changed internals for MPSoC boot process to make the code more understandable and some
parameters better configurable. This should not affect the behaviour of the OBSW, but might
make it more reliable and fix some corner cases.
## Fixed
- Missing `nullptr` checks for PLOC Supervisor handler, which could lead to crashes.
- SCEX bugfix for normal and transition commanding.
# [v6.6.0] 2023-09-18
## Changed
- Changed the memory initialized for the PDEC Config Memory and the PDEC RAM by using `mmap`
directly and ignoring UIO. This makes the OBSW compatible to a device tree update, where those
memory segments are marked reserved and are thus not properly accessible through the UIO API
anymore. This change should be downwards compatible to older device trees.
# [v6.5.1] 2023-09-12
- Bumped `eive-tmtc` to v5.5.0.
# [v6.5.0] 2023-09-12
## Changed
- Relaxed SUS FDIR. The devices have shown to be glitchy in orbit, but still seem to deliver
sensible raw values most of the time. Some further testing is necessary, but some changes in the
code should cause the SUS devices to remain healthy for now.
- The primary and the secondary temperature sensors for the PLOC mission boards are exchanged.
- ACS parameters for the SUSMGM (FLP) safe mode have been adjusted. This safe mode is now the
default one.
- MGM3100 Startup Configuration: Ignore bit 1 of the CMM reply, which is sometimes set to
1 in the reply for some reason.
# [v6.4.1] 2023-08-21
## Fixed
- `PDEC_CONFIG_CORRUPTED` event now actually contains the readback instead of the expected
config
- Magnetic field vector was not calculated if only MGM4 was available, but still written to
the dataset. This would result in a NaN vector. Allowance for usage of MGM4 is now checked
before entering calculation.
# [v6.4.0] 2023-08-16
- `eive-tmtc`: v5.4.3
## Fixed
- The handling function of the GPS data is only called once per GPS read. This should remove
the fake fix-has-changed events.
- Fix for PLOC SUPV HK set parsing.
- The timestamp for the `POSSIBLE_FILE_CORRUPTION` event will be generated properly now.
## Changed
- PDEC FDIR rework: A full PDEC reboot will now only be performed after a regular PDEC reset has
failed 10 times. The mechanism will reset after no PDEC reset has happended for 2 minutes.
The PDEC reset will be performed when counting 4 dirty frame events 10 seconds after the count
was incremented initially.
- GPS Fix has changed event is no longer triggered for the EM
- MGM and SUS rates now will only be calculated, if 2 valid consecutive datapoints are available.
The stored value of the last timestep will now be reset, if no actual value is available.
## Added
- The PLOC SUPV HK set is requested and downlinked periodically if the SUPV is on now.
- SGP4 Propagator is now used for propagating the position of EIVE. It will only work once
a TLE has been uploaded with the newly added action command for the ACS Controller. In
return the actual GPS data will be ignored once SPG4 is running. However, by setting the
according parameter, the ACS Controller can be directed to ignore the SGP4 solution.
- Skyview dataset for more GPS TM has been added
- `PDEC_CONFIG_CORRUPTED` event which is triggered when the PDEC configuration does not match the
expected configuration. P1 will contain the readback of the first word and P2 will contain the
readback of the second word.
- The MGM and SUS vectors being too close together does not prevent the usage of the safe
mode controller anymore.
- Parameter to disable usage of MGM4, which is part of the MTQ and therefore cannot be
disabled without disabling the MTQ itself.
# [v6.3.0] 2023-08-03
## Fixed
- Small SCEX fix: The temperatur check option was not passed
on for commands with a user data size larger than 1.
- SCEX: Properly check whether filesystem is usable for filesystem checks.
- ACS Controller strategy is now actually written to the dataset for detumbling.
- During detumble the fused rotation rate is now calculated.
- Detumbling is now exited when its exit value is undercut and not its entry value.
- Rotation rate of last cycle is now stored in all cases for the fused rotational rate
calculation.
- Fused rotation rate estimation during eclipse can be disabled. This will also prevent
detumbling during eclipse, as no relevant rotational rate is available for now.
- `EiveSystem`: Add a small delay between triggering an event for FDIR reboots and sending the
command to the core controller.
- PL PDU: Fixed bounds checking logic. Bound checks will only be performed for modules which are
enabled.
## Changed
- SCEX: Only perform filesystem checks when not in OFF mode.
- The `EiveSystem` now only sends reboot commands targetting the same image.
- Added 200 ms delay between switching HPA/MPA/TX/X8 and DRO GPIO pin OFF.
- PL PCDU ADC set is now automatically enabled for `NORMAL` mode transitions. It is automatically
disabled for `OFF` mode transitions.
## Added
- PL PCDU for EM build.
- SCEX: Add warning event if filesystem is unusable.
# [v6.2.0] 2023-07-26
- `eive-tmtc`: v5.3.1
## Changed
- STR missed reply handling is now moved to DHB rather than the COM interface. The COM IF will
still trigger an event if a reply is taking too long, and FDIR should still work via reply
timeouts.
- Re-ordered some functions of the core controller in the initialize function.
- Rad sensor is now only polled every 30 minutes instead of every device cycle to reduce wear of
the RADFET electronics.
- The SD cards will still be switched OFF on a reboot, but this is done in a non-blocking manner
now with a timeout of 10 seconds where the reboot will be performed in any case.
- ACS Controller now includes the safe mode from FLP, which will calculate its rotational rate
from SUS and MGM measurements. To accommodate these changes, low-pass filters for SUS
measurements and rates as well as MGM measurements and rates are included. Usage of the new
controller as well as settings of the low-pass filters can be handled via parameter commands.
- Simplify and fix the chip and copy protection functions in the core controller. This mechanism
now is always performed for the target chip and target copy in the reboot handlers.
- Improvement in FSFW: HK generation is now countdown based.
## Added
- 5 ms delay after pulling RADFET enable pin high before starting
the ADC conversion.
- Set STR time in configuration sequence to firmware mode.
- The STR `AutoThreshold` parameters are now set from the configuration JSON file at STR
startup.
- The STR handler can now handle the COM error reply and triggers an low severity event accordingly.
- Add SCEX handler for EM.
- Radiation sensor handler dummy for the EM.
- Added event for SD card information in core controller initialize function. This event will also
be triggered after the SD state machine has run, so the event will generally be triggered twice
at system boot, and once after commanding SD card switches.
## Fixed
- General bugs in the SD card state machine. This might fix some other known bugs for certain
combinations of switching ON and OFF SD cards and also makes the whole state machine a lot more
robust against hanging up.
- SUS dummy handler went to `MODE_NORMAL` for ON commands.
- PL PCDU dummy went to `MODE_NORMAL` for ON commands.
# [v6.1.0] 2023-07-13
- `eive-tmtc`: v5.2.0
## Changed
- TCS: Remove OBC IF board thermal module, which is exactly identical to OBC module and therefore
obsolete.
- Swapped PL and PS I2C, BPX battery and MGT are connected to PS I2C now for firmware versions
equal or above v4. However, this software version is compatible to both v3 and v4 of the firmware.
- The firmware version variables are global statics inititalized early during the program
runtime now. This makes it possible to check the firmware version earlier.
- The TCS controller will now always command heaters OFF when being blind for thermal
components (no sensors available), irrespective of current switch state.
- Make OBSW compatible to prospective FW version v5.0.0, where the Q7 I2C devices were
moved to a PL I2C block and the TMP sensor devices were moved to the PS I2C0.
- Made `Xadc` code a little bit more robust against errors.
## Fixed
- TMP1075: Set dataset invalid on shutdown explicitely
- Small fixes for TMP1075 FDIR: Use strange and missed reply counters.
- TCS controller: Last heater (S-band heater) was skipped for transition completion
checks.
- TCS controller: A helper member to track the elapsed heater control cycles was not reset
properly, which could lead to switch transitions being completed immediately. This can
lead to weird bugs like heaters being commanded ON twice and can potentially lead to
other bugs.
- TMP1075: Devices did not go to OFF mode when being set faulty.
- Update PL PCDU 1 in TCS mode tree on the EM.
- TMP1075: Possibly ignored health commands.
- Bugfix in FSFW where certain packet types could only be sent with source data fields with a
maximum size of 255 bytes.
- TCS CTRL: Limit number of heater handler messages sent in case there are not sensors available
anymore.
- Fix to allow adding real STR device for EM.
# Added
- Two events for heaters being commanded ON and OFF by the TCS controller
- Upper limit for burn time of TCS heaters. Currently set to 1 hour for each heater.
This mechanism will only track the burn time for heaters which were commanded by the
TCS controller.
- TCS controller is now observable by introducing a new HK dataset which exposes some internal
fields related to TCS control.
# [v6.0.0] 2023-07-02
- `q7s-package` version v3.2.0
- Important bugfixes for PTME. See `q7s-package` CHANGELOG.
## Changed
- Added back PTME busy bit polling. This is necessary due to changes to the AXI APB interface
to the PTME core.
## Fixed
- For the live channel (VC0), telemetry was still only dumped if the transmitter is active.
Please note that this fix will lead to crashes for FW versions below v3.2.
However, it might not be an issue for the oldest firmware on the satellite (v2.5.1).
# [v5.2.0] 2023-07-02
## Fixed
- The firmware information event was not triggered even when possible because of an ordering
bug in the initializer function.
- Empty dumps (no TM in time range) will now correctly be completed immediately
## Changed
- PTME was always reset on submode changes. The reset will now only be performed if the actual data
rate changes.
- Add back ACS board code for the EM. Now that the radiation sensor was removed, the image switching
issue has disappeared and adding back the ACS board is worth it for the GPS timekeeping.
# [v5.1.0] 2023-06-28
- `eive-tmtc` version v5.1.0
## Changed
- Persistent TM store dumps are now performed in chronological order.
- Increase Syrlinks RX HK rate to 5.0 seconds during a pass.
- Various robustness improvements for the heater handler. The heater handler will now only
process the command queue if it is not busy with switch commanding which reduces the amount
of possible bugs.
- The heater handler is only able to process messages stricly sequentially now but is scheduled
twice in a 0.5 second slot so something like a consecutive heater ON or OFF command can still
be handled relatively quickly.
## Added
- Sequence counters for PUS and CFDP packets are now stored persistently across graceful reboots.
- The PUS packet message type counter will now be incremented properly for each PUS service.
- Internal error reporter set is now enabled by default and generated every 120 seconds.
# [v5.0.0] 2023-06-26
v3.3.1 and all following version will now be moved to v5.0.0 with the additional changes listed
here. This was done because the firmware update (v4.0.0) is not working right now and it is not
known when and how it will be fixed. Because of that, all updates to make the SW work with the new
firmware, which are limited to a few files will be moved to a dev branch so regular development
compatible to the old firmware can continue.
TLDR: This version is compatible to the old firmware and some changes which only work with the new
firmware have been reverted.
## Changed
- Added `sync` syscall in graceful shutdown handler
- Graceful shutdown is now performed by the reboot watchdog
- There is now a separate file for the total reboot counter. The reboot watchdog has its own local
counters to determine whether a reboot is necessary.
# [v4.0.1] 2023-06-24
## Fixed
- `PusLiveDemux` packet demultiplexing bugfix where the demultiplexing did not work when there was
only one destination available.
# [v4.0.0] 2023-06-22
- `eive-tmtc` version v5.0.0
- `q7s-package` version v3.1.1
## Fixed
- Important bugfixes for PTME. See `q7s-package` CHANGELOG.
- TCS fixes: Set temperature values to invalid value for MAX31865 RTD handler, SUS handler
and STR handler. Also set dataset to invakid for RTD handler.
- Fixed H parameter in SUS converter from 1 mm to 2.5 mm.
## Changed
- Removed PTME busy/ready signals. Those were not used anyway because register reads are used now.
- APB bus access busy checking is not done anymore as this is performed by the bus itself now.
- Core controller will now announce version and image information event in addition to reboot
event in the `inititalize` function.
- Core controller will now try to request and announce the firmware version in addition to the
OBSW version as well.
- Added core controller action to read reboot mechansm information
- GNSS reset pin will now only be asserted for 5 ms instead of 100 ms.
## Added
- Added PL I2C reset pin. It is not used/connected for now but could be used for FDIR procedures to
restore the PL I2C.
- Core controller now announces firmware version as well when requesting a version info event
# [v3.3.1] 2023-06-22
## Fixed
- `PusLiveDemux` packet demultiplexing bugfix where the demultiplexing did not work when there was
only one destination available.
## Fixed
- Fixed H parameter in SUS converter from 1 mm to 2.5 mm.
# [v3.3.0] 2023-06-21
Like v3.2.0 but without the custom FM changes related to VC0.
# [v3.2.0] 2023-06-21
## Fixed
- Fix sun vector calculation
- SUS total vector was not reset to being a zero vector during eclipse due to a wrong memcpy
length.
## Changed
- Reverted all changes related to VC0 handling to avoid FM bug possibly related to FPGA bug.
# [v3.1.1] 2023-06-14
## Fixed
- TMP1075 bugfix where negative temperatures could not be measured because of a two's-complement
conversion bug.
# [v3.1.0] 2023-06-14
- `eive-tmtc` version v4.1.0
## Fixed
- TCS heater switch enumeration naming was old/wrong and was not updated in sync with the object ID
update. This lead to the TCS controller commanding the wrong heaters.
## Changed
- Increase number of allowed parallel HK commands to 16
## Added
- Added `CONFIG_SET`, `MAN_HEATER_ON` and `MAN_HEATER_OFF` support for the BPX battery handler
# [v3.0.0] 2023-06-11
- `eive-tmtc` version v4.0.0
## Changed
- Adapt EM configuration to include all GomSpace PCDU devices except the ACU. For the ACU
(which broke), a dummy will still be used.
- Event Manager queue depth is configurable now.
- Do not construct and schedule broken TMP1075 device anymore.
- Do not track payload modes in system mode tables.
- ACS modes derived from system modes.
- The CMake build generator will now search for the cross-compiler binaries in the environmental
variable named `CROSS_COMPILE_BIN_PATH` first when setting up the build system. This prevents
CMake from selecting wrong cross-compilers if multiple cross-compilers with the same name are used
on the same system.
- Add ACS board for EM by default now.
- Add support for MPSoC HK packet.
- Add support for MPSoC Flash Directory Content Report.
- Dynamically enable and disable HK packets for MPSoC on `ON` and `OFF` commands.
- Add support for MPSoC Flash Directory Content Report.
- Larger allowed path and file sizes for STR and PLOC MPSoC modules.
- More robust MPSoC flash read and write command data handling.
- Increase frequency of payload handlers from 0.8 seconds to 0.5 seconds.
- Disable missed deadlines per default. Not useful in orbit, and triggers all the time on the EM
build after a number of subsequent runs, without any apparent reason (deadlines are not actually
missed, thread usage displayed is nominal)
- TM store dumpes will not be cancelled anymore if the transmitter is off. The dump can be cancelled
with an OFF command, and the PTME is perfectly capable of dumping without the transmitter being
on.
- Transmitter state is not taken into account anymore for writing into the PTME. The PTME should
be perfectly capable of generating a valid CADU, even when the transmitter is not ON for any
reason.
- OFF mode is ignores in TM store for determining whether a store will be written. The modes will
only be used to cancel a transfer.
- Handling of multiple RWs in the ACS Controller is improved and can be changed by parameter
commands.
- The Directory Listing direct dumper now has a state machine to stagger the directory listing dump.
This is required because very large dumps will overload the queue capacities in the framework.
- The PUS Service 8 now has larger queue sizes to handle more action replies. The PUS Service 1
also has a larger queue size to handle a lot of step replies now.
- Moved PDU `vcc` and `vbat` variable from auxiliary dataset to core dataset.
- Tweak TCP/IP configuration: Only the TCP server will be included on the EM. For the FM, no
TCP/IP servers will be included by default.
## Added
- Add the remaining system modes.
- PLOC MPSoC flash read command working.
- BPX battery handler is added for EM by default.
- ACU dummy HK sets
- IMTQ HK sets
- IMTQ dummy now handles power switch
- Added some new ACS parameters
- Enabled decimation filter for the ADIS GYRs
- Enabled second low-pass filter for L3GD20H GYRs
## Fixed
- CFDP low level protocol bugfix. Requires `fsfw` update and `tmtc` update.
- Compile fix if SCEX is compiled for the EM.
- Set up Rad Sensor chip select even for EM to avoid SPI bus issues.
- Correct ADIS Gyroscope type configuration for the EM, where the 16507 type is used instead of the
16505 type.
- Host build is working again. Added reduced live TM helper which schedules the PUS and CFDP
funnel.
- PLOC Supervisor handler now has a power switcher assigned to make PLOC power switching work
without an additional PCDU power switch command.
- The PLOC Supervisor handler now waits for the replies to the `SET_TIME` command to verify working
communication.
- The PLOC MPSoC now waits 10 cycles before going to on. These wait cycles are necessary because
the MPSoC is not ready to process commands without this additional boot time.
- Fixed correction for `GPS Altitude` in case the sensor data is out of the expected bonds.
- PLOC MPSoC special communication is now scheduled, which allows flash read and flash write
commands to work.
- Fixed the MPSoC flash write command.
- Added missing ACS parameter.
- HK TM store: The HK store dump success event was triggered for cancelled HK dumps.
- When a PUS parsing error occured while parsing a TM store file, the dump completion procedure
was always executed.
- Some smaller logic fixes in the TM store base class
- Fixed usage of C `abs` instead of C++ `std::abs`, which results in MTQ commands not being
scaled correctly between 1Am² and 0.2Am².
- TCS Heater Handler: Always trigger mode event if a heater goes `OFF` or `ON`. This event might
soon replace the `HEATER_WENT_ON` and `HEATER_WENT_OFF` events.
- Prevent spam of TCS controller heater unavailability event if all heaters are in external control.
- TCS heater switch info set contained invalid values because of a faulty `memcpy` in the TCS
controller. There is not crash risk but the heater states were invalid.
- STR datasets were not set to invalid on shutdown.
- Fixed usage of quaternion valid flag, which does not actually represent the validity of the
quaternion.
- Various fixes for the pointing modes of the `ACS Controller`. All modes should work now as
intended.
- The variance for the ADIS GYRs now represents the used `-3` version and not the `-1` version
- CFDP funnel did not route packets to live channel VC0
# [v2.0.5] 2023-05-11
- The dual lane assembly transition failed handler started new transitions towards the current mode
instead of the target mode. This means that if the dual lane assembly never reached the initial
submode (e.g. mode normal and submode dual side), it will transition back to the current mode,
which miht be `MODE_OFF`. Furthermore, this can lead to invalid internal states, so the subsequent
recovery handling becomes stuck in the custom recovery sequence when swichting power back on.
- The dual lane custom recovery handling was adapted to always perform proper power switch handling
irrespective of current or target modes.
# [v2.0.4] 2023-04-19
## Fixed
- The dual lane assembly datasets were not marked invalid properly on OFF transitions.
# [v2.0.3] 2023-04-17
- eive-tmtc: v3.1.1
## Fixed
- Fixed shadowing within the `SafeCtrl`, which prevented actuator commands to be calculated during
eclipse phase.
- EM build idle mode fixes for RW dummy.
## Added
- Add `MGT_OVERHEATING` event and fallback to system SAFE mode if the MGT is overheating for
whatever reason.
## Changed
- Low-pass filters can no longer be executed if no actual data is available.
# [v2.0.2] 2023-04-16
- Bump patch version to 2.
# [v2.0.1] 2023-04-16
- eive-tmtc: v3.1.0
# [v2.0.0] 2023-04-16
This is the version which will fly on the satellite for the initial launch phase.
- q7s-package: v2.5.0
- eive-tmtc: v3.0.0
- `wire` library is now on version v10.7 as well.
## Added
- Added `mv`, `cp` and `rm` action helpers for the core controller for common filesystem operations.
- Extended directory listing helpers. There is now a directory listing helper which dumps the
directory listing as an action data reply immediately. For smaller directory listings, this
allows a listing without requiring a separate file downlink (which also has not been implemented
yet)
## Changed
- The directory listing action commands now allow compressing of either the target output file
for the directory listing into file action command, or compression in the helper which dumps
the directory listing directly.
# [v1.45.0] 2023-04-14
- q7s-package: v2.5.0
- eive-tmtc: v3.0.0
- STR firmware was updated to v10.7. `wire` library still needs to be updated.
## Fixed
- Small fix for `install-obsw-yocto.sh` script
- Bugfix for STR firmware update procedure where the last remaining
bytes were not written properly.
- Bugfix for STR where an invalid reply was received for special requests
like firmware updates.
- Bugfix for shell command executors in command controller which lead to a crash.
- Important bugfix for STR solution set. Missing STR mode u8 parameter.
- Fix for STR image download.
- Possible fix for STR image upload.
- Fixed regression where the reply result for ACS board and SUS board devices was set to FAILED
even when going to OFF mode. In that case, it has to be set to OK so the device handler can
complete the OFF transition.
## Changed
- STR `wire` library updated to v10.3. Submodule renamed to `sagittactl`.
- Custom FDIR for TMP1075 sensors. The device handlers reject `NEEDS_RECOVERY` health commands
anyway, so it does not really make sense to use the default FDIR.
- Reject `NEEDS_RECOVERY` health commands for the heater health devices.
- Adapted some queue sizes so that EM startup works without queue errors
- Event Manager: 120 -> 160
- UDP TMTC Bridge: 50 -> 120
- TCP TMTC Bridge: 50 -> 120
- Service 5: 120 -> 160, number of events handled in one cycle increased to 80
- EM: PCDU dummy is not a device handler anymore, but a custom power switcher object. This avoids
some issues where the event manager could not send an event message to the PCDU dummy because
the FDIR event queue was too small.
## Added
- Add a way for the MAX31865 RTD handlers to recognize faulty/broken/off sensor devices.
- Add parameter interface for core controller
- Allow setting the preferred SD card via the new parameter interface of the core controller
with domain ID 0 and unque ID 0.
- Added action commands to reset the PDEC. Also added autonomous reset handling for the PDEC,
because there is no way so send TCs with a faulty PDEC.
- Added `I2C_REBOOT` and `PDEC_REBOOT` events for EIVE system component to ensure ground gets
informed.
## ACS
- Commanding from ACS Controller is now enabled.
- Safe Controller was reverted to FLP Design. This also introduces safe mode strategies.
They contain what the controller does and which data it uses. The controller will
automatically based on the available data decide on which strategy to use. If a strategy
is undesirable (e.g. the MEKF should not be used) this can be handeld via setting parameters.
# [v1.44.1] 2023-04-12
- eive-tmtc: v2.22.1
## Fixed
- Bugfixes and improvements for SDC state machine. Internal state was not updated correctly due
to a regression, so commanding the SDC state machine externally lead to confusing results.
- Heater states array in TCS controller was too small.
- Fixed a bug in persistent TM store, where the active file was not reset of SD card switches.
SD card switch from 0 to 1 and vice-versa works without errors from persistent TM stores now.
- Add a way for the SUS polling to detect broken or off devices by checking the retrieved
temperature for the all-ones value (0x0fff).
- Better reply result handling for the ACS board devices.
- ADIS1650X initial timeout handling now performed in device handler.
- The RW assembly and TCS board assembly now perform proper power switch handling for their
recovery handling.
## Changed
- Added additional logic for SDC state machine so that the SD cards are marked unusable when
the active SD card is switched or there is a transition from hot redundant to cold redundant mode.
This gives other tasks some time to register the SD cards being unusable, and therefore provides
a way for them to perform any re-initialization tasks necessary after SD card switches.
- TCS controller now only has an OFF mode and an ON mode
- The TCS controller pauses operations related to the TCS board assembly (reading sensors and
the primary control loop) while a TCS board recovery is on-going.
- Allow specifying custom OBSW update filename. This allowed keeping a cleaner file structure
where each update has a name including the version
- The files extracted during an update process are deleted after the update was performed to keep
the update directory cleaner.
## Added
- TCS controller: SUBMODE_NO_HEATER_CTRL (1) added for ON mode. If this submode is
commanded, all heaters will be switched off and then no further heater
commanding will be done.
- Fixed a bug in persistent TM store, where the active file was not reset of SD card switches.
SD card switch from 0 to 1 and vice-versa works without errors from persistent TM stores now.
# [v1.44.0] 2023-04-07
- eive-tmtc: v2.22.0
## Added
- Special I2C recovery handling. If the I2C bus is unavailable for whatever reason, the EIVE
system component will power-cycle all I2C devices by first going to the OFF/BOOT mode, then
power-cycling the 3V3 stack and rebooting the battery, and finally going back to safe mode.
If this does not restore the bus, a full reboot will be performed. This special sequence can
be commanded as well.
## Fixed
- RW Assembly: Correctly transition back to off when more than 1 devices is OFF. Also do this
when this was due to two devices being marked faulty.
- RW dummy and STR dummy components: Set/Update modes correctly.
- RW handlers: Bugfix for TM set retrieval and special request handling in general where the CRC
check always failed for special request. Also removed an unnecessary delay for special requests.
- RW handlers: Polling is now disabled for RWs which are off.
## Changed
- RW shutdown now waits for the speed to be near 0 or for a OFF transition countdown to be expired
before going to off.
# [v1.43.2] 2023-04-05
## Changed
- Adapted HK data rates to new table for LEOP SAFE mode.
- GPS controller HK is now generated periodically as well.
- Better mode combination checks for assembly components. This includes:
- IMTQ assembly
- Syrlinks assembly
- Dual Lane Assembly
- RWs are no longer commanded by the ACS Controller during safe mode. Instead the RW speed command
is set to 0 as part or the `doShutDown` of the RW handler.
## Fixed
- Dual lane assemblies: Fix handling when health states are overwritten. Also add better handling
when some devices are permanent faulty and some are only faulty. In that case, only the faulty
devices will be restored.
- ACS dual lane assembly: Gyro 3 helper mode was assigned to the Gyro 2 mode.
# [v1.43.1] 2023-04-04
## Fixed
- Generic HK handling: Bug where HKs were generated a lot more often than required. This is the case
if a device handler `PERFORM_OPERATION` step is performed more than once per PST cycle.
- Syrlinks now goes to `_MODE_TO_ON` when finishing the `doStartUp` transition.
## Changed
- Doubled GS PST interval instead of scheduling everything twice.
- Syrlinks now only has one `PERFORM_OPERATION` step, but still has two communication steps.
- PCDU components only allow setting `NEEDS_RECOVERY`, `HEALTHY` and `EXTERNAL_CONTROL` health
states now. TMP sensor components only allow `HEALTHY` , `EXTERNAL_CONTROL`, `FAULTY` and
`PERMANENT_FAULTY`.
- TCS controller now does a sanity check on the temperature values: Values below -80 C or above
160 C are ignored.
# [v1.43.0] 2023-04-04
- q7s-package: v2.4.0
- eive-tmtc: v2.21.0
## Added
- Version of thermal controller which performs basic control tasks.
- PCDU handler can now command switch of the 3V3 stack (switch ID 19)
- Set STR dev to OFF in assembly when it is faulty.
- STR: Reset data link layer and flush RX for regular commands and before performing special
commands to ensure consistent start state
## Fixed
- PTME was not reset after configuration changes.
- GPS health devices: ACS board assembly not reacts to health changes.
- STR COM helper: Reset reply size after returning a reply
## Changed
- Poll threshold configuration of the PTME IP core is now configurable via a parameter command
and is set to 0b010 (4 polls) instead of 0b001 (1 poll) per default.
- EIVE system fallback and COM system fallback: Perform general subsystem handling first, then
event reception, and finally any new transition handling.
- IMTQ MGM integration time lowered to 6 ms. This relaxes scheduling requirements a bit.
- PCDU handler switcher HK set now has additional 3V3 switcher state HK.
# [v1.42.0] 2023-04-01
- eive-tmtc: v2.20.1
- q7s-package: v2.3.0
## Changed
- SCEX filename updates. Also use T as the file ID / date separator between date and time.
- COM TM store and dump handling: Introduce modes for all 4 TM VC/store tasks. The OFF mode can be
used to disable ongoing dumps or to prevent writes to the PTME VC. This allows cleaner reset
handling of the PTME. All 4 VC/store tasks were attached to the COM mode tree and are commanded
as part of the COM sequence as well to ensure consistent state with the CCSDS IP core handler.
- Added `PTME_LOCKED` boolean lock which is used to lock the PTME so it is not used by the VC tasks
anymore. This lock will be controlled by the CCSDS IP core handler and is locked when the PTME
needs to be reset. Examples for this are datarate changes.
- Simulate real PCDU in PCDU dummy by remembering commandes switch change and triggering appropriate
events. Switch feedback is still immediate.
- GomSpace devices are polled with a doubled frequency. This speeds up power switch commanding.
## Fixed
- Bugfix for side lane transitions of the dual lane assemblies, which only worked when the
assembly was directly commanded.
- Syrlinks Handler: Bugfix so transition command is only sent once.
- SCEX file name bug: Create file name time stamp with `strftime` similarly to how it's done
for the persistent TM store.
## Added
- Added GPS0 and GPS1 health device which are used by the ACS board assembly when deciding whether
to change to the other side or to go to dual side directly. Setting the health devices to faulty
should also trigger a side switch or a switch to dual mode.
# [v1.41.0] 2023-03-28
- eive-tmtc: v2.20.0
- q7s-package: v2.2.0
## Fixed
- Proper Faulty/External Control handling for the dual lane assemblies.
- ACS board devices: Go to ON mode instead of going to NORMAL mode directly.
- SUS device handlers: Go to ON mode on startup instead of NORMAL mode.
- Tweaks for the delay handling for the persistent TM stores. This allows pushing the full
high datarate when dumping telemetry. The most important and interesting fix is that
there needs to be a small delay between the polling of the GPIO. Polling the GPIO
without any delay consecutively can lead to scheduling issues.
- Bump FSFW for fix of `ControllerBase` class `startTransition` implementation.
- Bump FSFW for possible fix of `PowerSwitcherComponent`: Initial mode `MODE_UNDEFINED`.
## Changed
- Enabled periodic hosuekeeping generation for release images.
- Project structure (linux and mission folder) is subsystem centric now.
# [v1.40.0] 2023-03-24
- eive-tmtc: v2.19.4
- q7s-packasge: v2.1.0
- Bumped fsfwgen for bugfix: Event translation can deal with duplicate event names now.
## Fixed
- PAPB busy polling now implemented properly with an upper bound of how often the PAPB is allowed
to be busy before returning the BUSY returnvalue. Also propagate and check for that case properly.
Ideally, this will never be an issue and the PAPB VC interface should never block for a longer
period.
- The `mekfInvalidCounter` now resets on setting the STR to faulty.
- Improve the SD lock handling. The file handling does not need to be locked as it
is only handled by one thread.
## Added
- The event `MEKF_RECOVERY` will be triggered in case the `MEKF` does manage to recover itself.
- The persistent TM stores now have low priorities and behave like background threads now. This
should prevent them from blocking or slowing down the system even during dumps
(at least in theory).
- STR: Fix weird issues on datalink layer data reception which sometimes occur.
- Syrlinks FDIR: Fully allow FDIR to do more recoveries. Assembly should take care of preventing
the switch to go off.
- Allow dual lane assembly side switches.
## Changed
- Rework FSFW OSALs to properly support regular scheduling (NICE priorities) and real-time
scheduling.
- STR: Move datalink layer to `StrComHandler` completely. DLL is now completely hidden from
device handler.
- STR: Is now scheduled twice in ACS PST.
- `StrHelper` renamed to `StrComHandler`, is now a `DeviceHandlerIF` directly and does not wrap
a separate UART COM interface anymore.
- TCS: Local pool variables are members now.
- Syrlinks: Create dedicated COM helper which uses a ring buffer to parse the Syrlinks datalinklayer
and should make communication more reliable even on high CPU loads.
- Syrlinks: Two communication cycles per PST.
- Fine-tuning of various task priorities.
- The CSP router now is scheduled with the `SCHED_RR` policy and the same priority as the PCDU
handlers as well.
- Change project structure to be more subsystem centric for ACS and COM.
# [v1.39.1] 2023-03-22
## Fixed
@ -874,8 +1798,8 @@ Syrlinks PR: PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/353
- Syrlinks Handler: Read RX frequency shift as 24 bit signed number now. Also include
validity handling for datasets.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/350
- `GyroADIS1650XHandler`: Changed calculation of angular rate to be sensitivity based instead of
max. range based, as previous fix still left an margin of error between ADIS16505 sensors
- `GyroADIS1650XHandler`: Changed calculation of angular rate to be sensitivity based instead of
max. range based, as previous fix still left an margin of error between ADIS16505 sensors
and L3GD20 sensors.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/346

View File

@ -9,8 +9,8 @@
# ##############################################################################
cmake_minimum_required(VERSION 3.13)
set(OBSW_VERSION_MAJOR 1)
set(OBSW_VERSION_MINOR 39)
set(OBSW_VERSION_MAJOR 7)
set(OBSW_VERSION_MINOR 4)
set(OBSW_VERSION_REVISION 1)
# set(CMAKE_VERBOSE TRUE)
@ -79,14 +79,21 @@ else()
set(INIT_VAL 1)
set(OBSW_STAR_TRACKER_GROUND_CONFIG 0)
endif()
set(OBSW_ADD_TMTC_TCP_SERVER
${OBSW_Q7S_EM}
CACHE STRING "Add TCP TMTC Server")
set(OBSW_ADD_TMTC_UDP_SERVER
0
CACHE STRING "Add UDP TMTC Server")
set(OBSW_ADD_MGT
${INIT_VAL}
CACHE STRING "Add MGT module")
set(OBSW_ADD_BPX_BATTERY_HANDLER
${INIT_VAL}
CACHE STRING "Add MGT module")
1
CACHE STRING "Add BPX battery module")
set(OBSW_ADD_STAR_TRACKER
${INIT_VAL}
1
CACHE STRING "Add Startracker module")
set(OBSW_ADD_SUN_SENSORS
${INIT_VAL}
@ -94,8 +101,11 @@ set(OBSW_ADD_SUN_SENSORS
set(OBSW_ADD_SUS_BOARD_ASS
${INIT_VAL}
CACHE STRING "Add sun sensor board assembly")
set(OBSW_ADD_THERMAL_TEMP_INSERTER
${OBSW_Q7S_EM}
CACHE STRING "Add thermal sensor temperature inserter")
set(OBSW_ADD_ACS_BOARD
${INIT_VAL}
1
CACHE STRING "Add ACS board module")
set(OBSW_ADD_GPS_CTRL
${INIT_VAL}
@ -113,16 +123,16 @@ set(OBSW_ADD_TCS_CTRL
1
CACHE STRING "Add TCS controllers")
set(OBSW_ADD_HEATERS
${INIT_VAL}
1
CACHE STRING "Add TCS heaters")
set(OBSW_ADD_PLOC_SUPERVISOR
${INIT_VAL}
1
CACHE STRING "Add PLOC supervisor handler")
set(OBSW_ADD_SA_DEPL
${INIT_VAL}
CACHE STRING "Add SA deployment handler")
set(OBSW_ADD_PLOC_MPSOC
${INIT_VAL}
1
CACHE STRING "Add MPSoC handler")
set(OBSW_ADD_ACS_CTRL
${INIT_VAL}
@ -134,22 +144,25 @@ set(OBSW_ADD_RAD_SENSORS
${INIT_VAL}
CACHE STRING "Add Rad Sensor module")
set(OBSW_ADD_PL_PCDU
${INIT_VAL}
1
CACHE STRING "Add Payload PCDU modukle")
set(OBSW_ADD_SYRLINKS
1
CACHE STRING "Add Syrlinks module")
set(OBSW_ADD_TMP_DEVICES
${INIT_VAL}
1
CACHE STRING "Add TMP devices")
set(OBSW_ADD_GOMSPACE_PCDU
${INIT_VAL}
1
CACHE STRING "Add GomSpace PCDU modules")
set(OBSW_ADD_GOMSPACE_ACU
${INIT_VAL}
CACHE STRING "Add GomSpace ACU submodule")
set(OBSW_ADD_RW
${INIT_VAL}
CACHE STRING "Add RW modules")
set(OBSW_ADD_SCEX_DEVICE
${INIT_VAL}
1
CACHE STRING "Add Solar Cell Experiment module")
set(OBSW_SYRLINKS_SIMULATED
0
@ -220,13 +233,16 @@ set(LIB_EIVE_MISSION_PATH mission)
set(LIB_ETL_PATH ${THIRD_PARTY_FOLDER}/etl)
set(LIB_CATCH2_PATH ${THIRD_PARTY_FOLDER}/Catch2)
set(LIB_LWGPS_PATH ${THIRD_PARTY_FOLDER}/lwgps)
set(LIB_ARCSEC_PATH ${THIRD_PARTY_FOLDER}/arcsec_star_tracker)
set(LIB_ARCSEC_PATH ${THIRD_PARTY_FOLDER}/sagittactl)
set(LIB_JSON_PATH ${THIRD_PARTY_FOLDER}/json)
set(FSFW_WARNING_SHADOW_LOCAL_GCC OFF)
set(EIVE_ADD_LINUX_FILES OFF)
set(FSFW_ADD_TMSTORAGE ON)
set(FSFW_ADD_COORDINATES ON)
set(FSFW_ADD_SGP4_PROPAGATOR ON)
# Analyse different OS and architecture/target options, determine BSP_PATH,
# display information about compiler etc.
pre_source_hw_os_config()
@ -297,9 +313,11 @@ include(BuildType)
set_build_type()
set(FSFW_DEBUG_INFO 0)
set(OBSW_ENABLE_PERIODIC_HK 1)
set(Q7S_CHECK_FOR_ALREADY_RUNNING_IMG 0)
if(RELEASE_BUILD MATCHES 0)
set(FSFW_DEBUG_INFO 1)
set(OBSW_ENABLE_PERIODIC_HK 0)
set(Q7S_CHECK_FOR_ALREADY_RUNNING_IMG 1)
endif()
@ -407,7 +425,6 @@ add_subdirectory(thirdparty)
if(EIVE_ADD_LINUX_FILES)
if(TGT_BSP MATCHES "arm/q7s")
add_subdirectory(${LIB_GOMSPACE_PATH})
add_subdirectory(${LIB_ARCSEC_PATH})
endif()
add_subdirectory(${LINUX_PATH})
endif()
@ -485,7 +502,8 @@ endif()
target_link_libraries(${LIB_EIVE_MISSION} PUBLIC ${LIB_FSFW_NAME}
${LIB_OS_NAME})
target_link_libraries(${LIB_DUMMIES} PUBLIC ${LIB_FSFW_NAME} ${LIB_JSON_NAME})
target_link_libraries(${LIB_DUMMIES} PUBLIC ${LIB_EIVE_MISSION}
${LIB_FSFW_NAME} ${LIB_JSON_NAME})
target_link_libraries(${OBSW_NAME} PRIVATE ${LIB_EIVE_MISSION} ${LIB_DUMMIES})

View File

@ -99,11 +99,21 @@ When using Windows, run theses steps in MSYS2.
git submodule update --init
```
3. Ensure that the cross-compiler is working with `arm-linux-gnueabihf-gcc --version` and that
3. Create two system variables to pass the system root path and the cross-compiler path to the
build system. You only need to do this once when setting up the build system.
Example for Unix:
```sh
export CROSS_COMPILE_BIN_PATH=<absolutePathToCrossCompilerBinPath>
export ZYNQ_7020_SYSROOT=<absolutePathToSysroot>
```
4. Ensure that the cross-compiler is working with
`${CROSS_COMPILE_BIN_PATH}/arm-linux-gnueabihf-gcc --version` and that
the sysroot environmental variables have been set like specified in the
[root filesystem chapter](#sysroot).
4. Run the CMake configuration to create the build system in a `build-Debug-Q7S` folder.
5. Run the CMake configuration to create the build system in a `build-Debug-Q7S` folder.
Add `-G "MinGW Makefiles` in MinGW64 on Windows.
```sh
@ -112,7 +122,7 @@ When using Windows, run theses steps in MSYS2.
cmake --build . -j
```
You can also use provided shell scripts to perform these commands.
Please note that you can also use provided shell scripts to perform these commands.
```sh
cp scripts/q7s-env.sh ..
cp scripts/q7s-env-em.sh ..
@ -144,7 +154,7 @@ When using Windows, run theses steps in MSYS2.
There are also different values for `-DTGT_BSP` to build for the Raspberry Pi
or the Beagle Bone Black: `arm/raspberrypi` and `arm/beagleboneblack`.
5. Build the software with
6. Build the software with
```sh
cd cmake-build-debug-q7s
@ -954,6 +964,12 @@ used by other software components to read the current chip and copy.
This is a configuration scripts which runs after the Network Time Protocol has run. This script
currently sets the static IP address `192.168.133.10` and starts the `can` interface.
## Initial boot delay
You can create a file named `boot_delays_secs.txt` inside the home folder to delay the OBSW boot
for 6 seconds if the file is empty of for the number of seconds specified inside the file. This
can be helpful if something inside the OBSW leads to an immediate crash of the OBC.
## PCDU
Connect to serial console of P60 Dock

View File

@ -27,7 +27,7 @@ PlocSupervisorHandler::PlocSupervisorHandler(object_id_t objectId, CookieIF* com
hkset(this),
bootStatusReport(this),
latchupStatusReport(this),
loggingReport(this),
countersReport(this),
adcReport(this),
powerSwitch(powerSwitch),
uartManager(supvHelper) {
@ -59,6 +59,19 @@ ReturnValue_t PlocSupervisorHandler::initialize() {
}
void PlocSupervisorHandler::performOperationHook() {
if (normalCommandIsPending and normalCmdCd.hasTimedOut()) {
// Event, FDIR, printout? Leads to spam though and normally should not happen..
normalCommandIsPending = false;
}
if (commandIsPending and cmdCd.hasTimedOut()) {
// Event, FDIR, printout? Leads to spam though and normally should not happen..
commandIsPending = false;
// if(iter->second.sendReplyTo != NO_COMMANDER) {
// actionHelper.finish(true, iter->second.sendReplyTo, iter->first, returnvalue::OK);
// }
disableAllReplies();
}
EventMessage event;
for (ReturnValue_t result = eventQueue->receiveMessage(&event); result == returnvalue::OK;
result = eventQueue->receiveMessage(&event)) {
@ -151,32 +164,44 @@ void PlocSupervisorHandler::doStartUp() {
}
}
}
if (startupState == StartupState::SET_TIME_EXECUTING) {
if (startupState == StartupState::TIME_WAS_SET) {
startupState = StartupState::ON;
}
if (startupState == StartupState::ON) {
hkset.setReportingEnabled(true);
supv::SUPV_ON = true;
setMode(_MODE_TO_ON);
}
}
void PlocSupervisorHandler::doShutDown() {
setMode(_MODE_POWER_DOWN);
hkset.setReportingEnabled(false);
hkset.setValidity(false, true);
shutdownCmdSent = false;
packetInBuffer = false;
nextReplyId = supv::NONE;
uartManager.stop();
uartIsolatorSwitch.pullLow();
disableAllReplies();
supv::SUPV_ON = false;
startupState = StartupState::OFF;
}
ReturnValue_t PlocSupervisorHandler::buildNormalDeviceCommand(DeviceCommandId_t* id) {
if (not normalCommandIsPending) {
*id = GET_HK_REPORT;
normalCommandIsPending = true;
normalCmdCd.resetTimer();
return buildCommandFromCommand(*id, nullptr, 0);
}
return NOTHING_TO_SEND;
}
ReturnValue_t PlocSupervisorHandler::buildTransitionDeviceCommand(DeviceCommandId_t* id) {
if (startupState == StartupState::SET_TIME) {
*id = supv::SET_TIME_REF;
startupState = StartupState::SET_TIME_EXECUTING;
startupState = StartupState::WAIT_FOR_TIME_REPLY;
return buildCommandFromCommand(*id, nullptr, 0);
}
return NOTHING_TO_SEND;
@ -195,11 +220,13 @@ ReturnValue_t PlocSupervisorHandler::buildCommandFromCommand(DeviceCommandId_t d
break;
}
case START_MPSOC: {
sif::info << "PLOC SUPV: Starting MPSoC" << std::endl;
prepareEmptyCmd(Apid::BOOT_MAN, static_cast<uint8_t>(tc::BootManId::START_MPSOC));
result = returnvalue::OK;
break;
}
case SHUTDOWN_MPSOC: {
sif::info << "PLOC SUPV: Shutting down MPSoC" << std::endl;
prepareEmptyCmd(Apid::BOOT_MAN, static_cast<uint8_t>(tc::BootManId::SHUTDOWN_MPSOC));
result = returnvalue::OK;
break;
@ -210,6 +237,7 @@ ReturnValue_t PlocSupervisorHandler::buildCommandFromCommand(DeviceCommandId_t d
break;
}
case RESET_MPSOC: {
sif::info << "PLOC SUPV: Resetting MPSoC" << std::endl;
prepareEmptyCmd(Apid::BOOT_MAN, static_cast<uint8_t>(tc::BootManId::RESET_MPSOC));
result = returnvalue::OK;
break;
@ -260,8 +288,7 @@ ReturnValue_t PlocSupervisorHandler::buildCommandFromCommand(DeviceCommandId_t d
break;
}
case SET_GPIO: {
prepareSetGpioCmd(commandData);
result = returnvalue::OK;
result = prepareSetGpioCmd(commandData, commandDataLen);
break;
}
case FACTORY_RESET: {
@ -269,8 +296,7 @@ ReturnValue_t PlocSupervisorHandler::buildCommandFromCommand(DeviceCommandId_t d
break;
}
case READ_GPIO: {
prepareReadGpioCmd(commandData);
result = returnvalue::OK;
result = prepareReadGpioCmd(commandData, commandDataLen);
break;
}
case SET_SHUTDOWN_TIMEOUT: {
@ -307,91 +333,25 @@ ReturnValue_t PlocSupervisorHandler::buildCommandFromCommand(DeviceCommandId_t d
result = prepareWipeMramCmd(commandData);
break;
}
// case ENABLE_NVMS: {
// result = prepareEnableNvmsCommand(commandData);
// break;
// }
// case RESTART_SUPERVISOR: {
// prepareEmptyCmd(APID_RESTART_SUPERVISOR);
// result = returnvalue::OK;
// break;
// }
// Removed command
// case START_MPSOC_QUIET: {
// prepareEmptyCmd(APID_START_MPSOC_QUIET);
// result = returnvalue::OK;
// break;
// }
// case ENABLE_AUTO_TM: {
// EnableAutoTm packet(spParams);
// result = packet.buildPacket();
// if (result != returnvalue::OK) {
// break;
// }
// finishTcPrep(packet.getFullPacketLen());
// break;
// }
// case DISABLE_AUTO_TM: {
// DisableAutoTm packet(spParams);
// result = packet.buildPacket();
// if (result != returnvalue::OK) {
// break;
// }
// finishTcPrep(packet.getFullPacketLen());
// break;
// }
// case LOGGING_REQUEST_COUNTERS: {
// RequestLoggingData packet(spParams);
// result = packet.buildPacket(RequestLoggingData::Sa::REQUEST_COUNTERS);
// if (result != returnvalue::OK) {
// break;
// }
// finishTcPrep(packet.getFullPacketLen());
// break;
// }
// case LOGGING_CLEAR_COUNTERS: {
// RequestLoggingData packet(spParams);
// result = packet.buildPacket(RequestLoggingData::Sa::CLEAR_COUNTERS);
// if (result != returnvalue::OK) {
// break;
// }
// finishTcPrep(packet.getFullPacketLen());
// break;
// }
// case LOGGING_SET_TOPIC: {
// if (commandData == nullptr or commandDataLen == 0) {
// return HasActionsIF::INVALID_PARAMETERS;
// }
// uint8_t tpc = *(commandData);
// RequestLoggingData packet(spParams);
// result = packet.buildPacket(RequestLoggingData::Sa::SET_LOGGING_TOPIC, tpc);
// if (result != returnvalue::OK) {
// break;
// }
// finishTcPrep(packet.getFullPacketLen());
// break;
// }
// I think this is disabled right now according to the TC excel table
// case COPY_ADC_DATA_TO_MRAM: {
// prepareEmptyCmd(APID_COPY_ADC_DATA_TO_MRAM);
// result = returnvalue::OK;
// break;
// }
// case REQUEST_ADC_REPORT: {
// prepareEmptyCmd(APID_REQUEST_ADC_REPORT);
// result = returnvalue::OK;
// break;
// }
// case FIRST_MRAM_DUMP:
// case CONSECUTIVE_MRAM_DUMP:
// result = prepareDumpMramCmd(commandData);
// break;
case REQUEST_ADC_REPORT: {
prepareEmptyCmd(Apid::ADC_MON, static_cast<uint8_t>(tc::AdcMonId::REQUEST_ADC_SAMPLE));
result = returnvalue::OK;
break;
}
case REQUEST_LOGGING_COUNTERS: {
prepareEmptyCmd(Apid::DATA_LOGGER,
static_cast<uint8_t>(tc::DataLoggerServiceId::REQUEST_COUNTERS));
result = returnvalue::OK;
break;
}
default:
sif::debug << "PlocSupervisorHandler::buildCommandFromCommand: Command not implemented"
<< std::endl;
result = DeviceHandlerIF::COMMAND_NOT_IMPLEMENTED;
break;
}
commandIsPending = true;
cmdCd.resetTimer();
return result;
}
@ -423,6 +383,8 @@ void PlocSupervisorHandler::fillCommandAndReplyMap() {
insertInCommandMap(SET_ADC_THRESHOLD);
insertInCommandMap(SET_ADC_WINDOW_AND_STRIDE);
insertInCommandMap(RESET_PL);
insertInCommandMap(REQUEST_ADC_REPORT);
insertInCommandMap(REQUEST_LOGGING_COUNTERS);
// ACK replies, use countdown for them
insertInReplyMap(ACK_REPORT, 0, nullptr, SIZE_ACK_REPORT, false, &acknowledgementReportTimeout);
@ -430,10 +392,10 @@ void PlocSupervisorHandler::fillCommandAndReplyMap() {
insertInReplyMap(MEMORY_CHECK, 5, nullptr, 0, false);
// TM replies
insertInReplyMap(HK_REPORT, 3, &hkset, SIZE_HK_REPORT);
insertInReplyMap(HK_REPORT, 3, &hkset);
insertInReplyMap(BOOT_STATUS_REPORT, 3, &bootStatusReport, SIZE_BOOT_STATUS_REPORT);
insertInReplyMap(LATCHUP_REPORT, 3, &latchupStatusReport, SIZE_LATCHUP_STATUS_REPORT);
insertInReplyMap(LOGGING_REPORT, 3, &loggingReport, SIZE_LOGGING_REPORT);
insertInReplyMap(COUNTERS_REPORT, 3, &countersReport, SIZE_COUNTERS_REPORT);
insertInReplyMap(ADC_REPORT, 3, &adcReport, SIZE_ADC_REPORT);
}
@ -475,13 +437,13 @@ ReturnValue_t PlocSupervisorHandler::enableReplyInReplyMap(DeviceCommandMap::ite
}
break;
}
case LOGGING_REQUEST_COUNTERS: {
case REQUEST_LOGGING_COUNTERS: {
enabledReplies = 3;
result =
DeviceHandlerBase::enableReplyInReplyMap(command, enabledReplies, true, LOGGING_REPORT);
DeviceHandlerBase::enableReplyInReplyMap(command, enabledReplies, true, COUNTERS_REPORT);
if (result != returnvalue::OK) {
sif::debug << "PlocSupervisorHandler::enableReplyInReplyMap: Reply with id "
<< LOGGING_REPORT << " not in replyMap" << std::endl;
<< COUNTERS_REPORT << " not in replyMap" << std::endl;
}
break;
}
@ -537,23 +499,17 @@ ReturnValue_t PlocSupervisorHandler::enableReplyInReplyMap(DeviceCommandMap::ite
case SET_ADC_ENABLED_CHANNELS:
case SET_ADC_WINDOW_AND_STRIDE:
case SET_ADC_THRESHOLD:
// case COPY_ADC_DATA_TO_MRAM:
case RUN_AUTO_EM_TESTS:
case WIPE_MRAM:
case SET_GPIO:
case FACTORY_RESET:
case READ_GPIO:
// case RESTART_SUPERVISOR:
case DISABLE_PERIOIC_HK_TRANSMISSION:
// case START_MPSOC_QUIET:
case SET_SHUTDOWN_TIMEOUT:
case FACTORY_FLASH:
case ENABLE_AUTO_TM:
case DISABLE_AUTO_TM:
// case LOGGING_CLEAR_COUNTERS:
// case LOGGING_SET_TOPIC:
case RESET_PL:
// case ENABLE_NVMS:
enabledReplies = 2;
break;
default:
@ -585,19 +541,12 @@ ReturnValue_t PlocSupervisorHandler::enableReplyInReplyMap(DeviceCommandMap::ite
ReturnValue_t PlocSupervisorHandler::scanForReply(const uint8_t* start, size_t remainingSize,
DeviceCommandId_t* foundId, size_t* foundLen) {
using namespace supv;
// TODO: Is this still required?
// if (nextReplyId == FIRST_MRAM_DUMP) {
// *foundId = FIRST_MRAM_DUMP;
// return parseMramPackets(start, remainingSize, foundLen);
// } else if (nextReplyId == CONSECUTIVE_MRAM_DUMP) {
// *foundId = CONSECUTIVE_MRAM_DUMP;
// return parseMramPackets(start, remainingSize, foundLen);
// }
tmReader.setData(start, remainingSize);
// sif::debug << "PlocSupervisorHandler::scanForReply: Received Packet" << std::endl;
// arrayprinter::print(start, remainingSize);
uint16_t apid = tmReader.getModuleApid();
if (DEBUG_PLOC_SUPV) {
handlePacketPrint();
}
switch (apid) {
case (Apid::TMTC_MAN): {
@ -619,6 +568,9 @@ ReturnValue_t PlocSupervisorHandler::scanForReply(const uint8_t* start, size_t r
}
case (Apid::HK): {
if (tmReader.getServiceId() == static_cast<uint8_t>(supv::tm::HkId::REPORT)) {
normalCommandIsPending = false;
// Yeah apparently this is needed??
disableCommand(GET_HK_REPORT);
*foundLen = tmReader.getFullPacketLen();
*foundId = ReplyId::HK_REPORT;
return OK;
@ -637,6 +589,14 @@ ReturnValue_t PlocSupervisorHandler::scanForReply(const uint8_t* start, size_t r
}
break;
}
case (Apid::ADC_MON): {
if (tmReader.getServiceId() == static_cast<uint8_t>(supv::tm::AdcMonId::ADC_REPORT)) {
*foundLen = tmReader.getFullPacketLen();
*foundId = ReplyId::ADC_REPORT;
return OK;
}
break;
}
case (Apid::MEM_MAN): {
if (tmReader.getServiceId() ==
static_cast<uint8_t>(supv::tm::MemManId::UPDATE_STATUS_REPORT)) {
@ -644,6 +604,15 @@ ReturnValue_t PlocSupervisorHandler::scanForReply(const uint8_t* start, size_t r
*foundId = ReplyId::UPDATE_STATUS_REPORT;
return OK;
}
break;
}
case (Apid::DATA_LOGGER): {
if (tmReader.getServiceId() ==
static_cast<uint8_t>(supv::tm::DataLoggerId::COUNTERS_REPORT)) {
*foundLen = tmReader.getFullPacketLen();
*foundId = ReplyId::COUNTERS_REPORT;
return OK;
}
}
}
handleBadApidServiceCombination(SUPV_UNKNOWN_TM, apid, tmReader.getServiceId());
@ -651,6 +620,58 @@ ReturnValue_t PlocSupervisorHandler::scanForReply(const uint8_t* start, size_t r
return INVALID_DATA;
}
void PlocSupervisorHandler::handlePacketPrint() {
if (tmReader.getModuleApid() == Apid::TMTC_MAN) {
if ((tmReader.getServiceId() == static_cast<uint8_t>(supv::tm::TmtcId::ACK)) or
(tmReader.getServiceId() == static_cast<uint8_t>(supv::tm::TmtcId::NAK))) {
AcknowledgmentReport ack(tmReader);
ReturnValue_t result = ack.parse();
if (result != returnvalue::OK) {
sif::warning << "PlocSupervisorHandler: Parsing ACK failed" << std::endl;
}
if (REDUCE_NORMAL_MODE_PRINTOUT and ack.getRefModuleApid() == (uint8_t)supv::Apid::HK and
ack.getRefServiceId() == (uint8_t)supv::tc::HkId::GET_REPORT) {
return;
}
const char* printStr = "???";
if (tmReader.getServiceId() == static_cast<uint8_t>(supv::tm::TmtcId::ACK)) {
printStr = "ACK";
} else if (tmReader.getServiceId() == static_cast<uint8_t>(supv::tm::TmtcId::NAK)) {
printStr = "NAK";
}
sif::debug << "PlocSupervisorHandler: RECV " << printStr << " for APID Module ID "
<< (int)ack.getRefModuleApid() << " Service ID " << (int)ack.getRefServiceId()
<< " Seq Count " << ack.getRefSequenceCount() << std::endl;
return;
} else if ((tmReader.getServiceId() == static_cast<uint8_t>(supv::tm::TmtcId::EXEC_ACK)) or
(tmReader.getServiceId() == static_cast<uint8_t>(supv::tm::TmtcId::EXEC_NAK))) {
ExecutionReport exe(tmReader);
ReturnValue_t result = exe.parse();
if (result != returnvalue::OK) {
sif::warning << "PlocSupervisorHandler: Parsing EXE failed" << std::endl;
}
const char* printStr = "???";
if (REDUCE_NORMAL_MODE_PRINTOUT and exe.getRefModuleApid() == (uint8_t)supv::Apid::HK and
exe.getRefServiceId() == (uint8_t)supv::tc::HkId::GET_REPORT) {
return;
}
if (tmReader.getServiceId() == static_cast<uint8_t>(supv::tm::TmtcId::EXEC_ACK)) {
printStr = "ACK EXE";
} else if (tmReader.getServiceId() == static_cast<uint8_t>(supv::tm::TmtcId::EXEC_NAK)) {
printStr = "NAK EXE";
}
sif::debug << "PlocSupervisorHandler: RECV " << printStr << " for APID Module ID "
<< (int)exe.getRefModuleApid() << " Service ID " << (int)exe.getRefServiceId()
<< " Seq Count " << exe.getRefSequenceCount() << std::endl;
return;
}
}
sif::debug << "PlocSupervisorHandler: RECV PACKET Size " << tmReader.getFullPacketLen()
<< " Module APID " << (int)tmReader.getModuleApid() << " Service ID "
<< (int)tmReader.getServiceId() << std::endl;
}
ReturnValue_t PlocSupervisorHandler::interpretDeviceReply(DeviceCommandId_t id,
const uint8_t* packet) {
using namespace supv;
@ -669,12 +690,22 @@ ReturnValue_t PlocSupervisorHandler::interpretDeviceReply(DeviceCommandId_t id,
result = handleBootStatusReport(packet);
break;
}
case (COUNTERS_REPORT): {
result = genericHandleTm("COUNTERS", packet, countersReport);
#if OBSW_VERBOSE_LEVEL >= 1 && OBSW_DEBUG_PLOC_SUPERVISOR == 1
countersReport.printSet();
#endif
break;
}
case (LATCHUP_REPORT): {
result = handleLatchupStatusReport(packet);
break;
}
case (ADC_REPORT): {
result = handleAdcReport(packet);
result = genericHandleTm("ADC", packet, adcReport);
#if OBSW_VERBOSE_LEVEL >= 1 && OBSW_DEBUG_PLOC_SUPERVISOR == 1
adcReport.printSet();
#endif
break;
}
case (EXE_REPORT): {
@ -739,13 +770,8 @@ ReturnValue_t PlocSupervisorHandler::initializeLocalDataPool(localpool::DataPool
localDataPoolMap.emplace(supv::LATCHUP_RPT_TIME_YEAR, new PoolEntry<uint8_t>({0}));
localDataPoolMap.emplace(supv::LATCHUP_RPT_IS_SET, new PoolEntry<uint8_t>({0}));
localDataPoolMap.emplace(supv::LATCHUP_HAPPENED_CNT_0, new PoolEntry<uint32_t>({0}));
localDataPoolMap.emplace(supv::LATCHUP_HAPPENED_CNT_1, new PoolEntry<uint32_t>({0}));
localDataPoolMap.emplace(supv::LATCHUP_HAPPENED_CNT_2, new PoolEntry<uint32_t>({0}));
localDataPoolMap.emplace(supv::LATCHUP_HAPPENED_CNT_3, new PoolEntry<uint32_t>({0}));
localDataPoolMap.emplace(supv::LATCHUP_HAPPENED_CNT_4, new PoolEntry<uint32_t>({0}));
localDataPoolMap.emplace(supv::LATCHUP_HAPPENED_CNT_5, new PoolEntry<uint32_t>({0}));
localDataPoolMap.emplace(supv::LATCHUP_HAPPENED_CNT_6, new PoolEntry<uint32_t>({0}));
localDataPoolMap.emplace(supv::SIGNATURE, new PoolEntry<uint32_t>());
localDataPoolMap.emplace(supv::LATCHUP_HAPPENED_CNTS, &latchupCounters);
localDataPoolMap.emplace(supv::ADC_DEVIATION_TRIGGERS_CNT, new PoolEntry<uint32_t>({0}));
localDataPoolMap.emplace(supv::TC_RECEIVED_CNT, new PoolEntry<uint32_t>({0}));
localDataPoolMap.emplace(supv::TM_AVAILABLE_CNT, new PoolEntry<uint32_t>({0}));
@ -754,42 +780,25 @@ ReturnValue_t PlocSupervisorHandler::initializeLocalDataPool(localpool::DataPool
localDataPoolMap.emplace(supv::MPSOC_BOOT_FAILED_ATTEMPTS, new PoolEntry<uint32_t>({0}));
localDataPoolMap.emplace(supv::MPSOC_POWER_UP, new PoolEntry<uint32_t>({0}));
localDataPoolMap.emplace(supv::MPSOC_UPDATES, new PoolEntry<uint32_t>({0}));
localDataPoolMap.emplace(supv::LAST_RECVD_TC, new PoolEntry<uint32_t>({0}));
localDataPoolMap.emplace(supv::MPSOC_HEARTBEAT_RESETS, new PoolEntry<uint32_t>({0}));
localDataPoolMap.emplace(supv::CPU_WDT_RESETS, new PoolEntry<uint32_t>({0}));
localDataPoolMap.emplace(supv::PS_HEARTBEATS_LOST, new PoolEntry<uint32_t>({0}));
localDataPoolMap.emplace(supv::PL_HEARTBEATS_LOST, new PoolEntry<uint32_t>({0}));
localDataPoolMap.emplace(supv::EB_TASK_LOST, new PoolEntry<uint32_t>({0}));
localDataPoolMap.emplace(supv::BM_TASK_LOST, new PoolEntry<uint32_t>({0}));
localDataPoolMap.emplace(supv::LM_TASK_LOST, new PoolEntry<uint32_t>({0}));
localDataPoolMap.emplace(supv::AM_TASK_LOST, new PoolEntry<uint32_t>({0}));
localDataPoolMap.emplace(supv::TCTMM_TASK_LOST, new PoolEntry<uint32_t>({0}));
localDataPoolMap.emplace(supv::MM_TASK_LOST, new PoolEntry<uint32_t>({0}));
localDataPoolMap.emplace(supv::HK_TASK_LOST, new PoolEntry<uint32_t>({0}));
localDataPoolMap.emplace(supv::DL_TASK_LOST, new PoolEntry<uint32_t>({0}));
localDataPoolMap.emplace(supv::RWS_TASKS_LOST, new PoolEntry<uint32_t>(3));
localDataPoolMap.emplace(supv::ADC_RAW_0, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(supv::ADC_RAW_1, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(supv::ADC_RAW_2, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(supv::ADC_RAW_3, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(supv::ADC_RAW_4, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(supv::ADC_RAW_5, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(supv::ADC_RAW_6, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(supv::ADC_RAW_7, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(supv::ADC_RAW_8, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(supv::ADC_RAW_9, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(supv::ADC_RAW_10, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(supv::ADC_RAW_11, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(supv::ADC_RAW_12, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(supv::ADC_RAW_13, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(supv::ADC_RAW_14, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(supv::ADC_RAW_15, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(supv::ADC_ENG_0, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(supv::ADC_ENG_1, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(supv::ADC_ENG_2, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(supv::ADC_ENG_3, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(supv::ADC_ENG_4, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(supv::ADC_ENG_5, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(supv::ADC_ENG_6, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(supv::ADC_ENG_7, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(supv::ADC_ENG_8, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(supv::ADC_ENG_9, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(supv::ADC_ENG_10, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(supv::ADC_ENG_11, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(supv::ADC_ENG_12, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(supv::ADC_ENG_13, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(supv::ADC_ENG_14, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(supv::ADC_ENG_15, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(supv::ADC_RAW, &adcRawEntry);
localDataPoolMap.emplace(supv::ADC_ENG, &adcEngEntry);
poolManager.subscribeForRegularPeriodicPacket(
subdp::RegularHkPeriodicParams(hkset.getSid(), false, 10.0));
return returnvalue::OK;
}
@ -911,6 +920,7 @@ ReturnValue_t PlocSupervisorHandler::handleExecutionReport(const uint8_t* data)
} else if (tmReader.getServiceId() == static_cast<uint8_t>(supv::tm::TmtcId::EXEC_NAK)) {
handleExecutionFailureReport(report);
}
commandIsPending = false;
nextReplyId = supv::NONE;
return result;
}
@ -918,7 +928,7 @@ ReturnValue_t PlocSupervisorHandler::handleExecutionReport(const uint8_t* data)
ReturnValue_t PlocSupervisorHandler::handleHkReport(const uint8_t* data) {
ReturnValue_t result = returnvalue::OK;
result = verifyPacket(data, supv::SIZE_HK_REPORT);
result = verifyPacket(data, tmReader.getFullPacketLen());
if (result == result::CRC_FAILURE) {
sif::error << "PlocSupervisorHandler::handleHkReport: Hk report has invalid crc" << std::endl;
@ -1145,37 +1155,31 @@ ReturnValue_t PlocSupervisorHandler::handleLatchupStatusReport(const uint8_t* da
return result;
}
ReturnValue_t PlocSupervisorHandler::handleAdcReport(const uint8_t* data) {
ReturnValue_t PlocSupervisorHandler::genericHandleTm(const char* contextString, const uint8_t* data,
LocalPoolDataSetBase& set) {
ReturnValue_t result = returnvalue::OK;
result = verifyPacket(data, supv::SIZE_ADC_REPORT);
result = verifyPacket(data, tmReader.getFullPacketLen());
if (result == result::CRC_FAILURE) {
sif::error << "PlocSupervisorHandler::handleAdcReport: ADC report has "
<< "invalid crc" << std::endl;
sif::warning << "PlocSupervisorHandler: " << contextString << " report has "
<< "invalid CRC" << std::endl;
return result;
}
const uint8_t* dataField = data + supv::PAYLOAD_OFFSET;
result = adcReport.read();
if (result != returnvalue::OK) {
PoolReadGuard pg(&set);
if (pg.getReadResult() != returnvalue::OK) {
return result;
}
adcReport.setValidityBufferGeneration(false);
size_t size = adcReport.getSerializedSize();
result = adcReport.deSerialize(&dataField, &size, SerializeIF::Endianness::BIG);
set.setValidityBufferGeneration(false);
size_t size = set.getSerializedSize();
result = set.deSerialize(&dataField, &size, SerializeIF::Endianness::BIG);
if (result != returnvalue::OK) {
sif::warning << "PlocSupervisorHandler::handleAdcReport: Deserialization failed" << std::endl;
sif::warning << "PlocSupervisorHandler: Deserialization failed" << std::endl;
}
adcReport.setValidityBufferGeneration(true);
adcReport.setValidity(true, true);
result = adcReport.commit();
if (result != returnvalue::OK) {
return result;
}
#if OBSW_VERBOSE_LEVEL >= 1 && OBSW_DEBUG_PLOC_SUPERVISOR == 1
adcReport.printSet();
#endif
set.setValidityBufferGeneration(true);
set.setValidity(true, true);
nextReplyId = supv::EXE_REPORT;
return result;
}
@ -1197,8 +1201,8 @@ void PlocSupervisorHandler::setNextReplyId() {
case supv::CONSECUTIVE_MRAM_DUMP:
nextReplyId = supv::CONSECUTIVE_MRAM_DUMP;
break;
case supv::LOGGING_REQUEST_COUNTERS:
nextReplyId = supv::LOGGING_REPORT;
case supv::REQUEST_LOGGING_COUNTERS:
nextReplyId = supv::COUNTERS_REPORT;
break;
case supv::REQUEST_ADC_REPORT:
nextReplyId = supv::ADC_REPORT;
@ -1277,7 +1281,7 @@ ReturnValue_t PlocSupervisorHandler::prepareEmptyCmd(uint16_t apid, uint8_t serv
if (result != returnvalue::OK) {
return result;
}
finishTcPrep(packet.getFullPacketLen());
finishTcPrep(packet);
return returnvalue::OK;
}
@ -1288,7 +1292,7 @@ ReturnValue_t PlocSupervisorHandler::prepareSelBootImageCmd(const uint8_t* comma
if (result != returnvalue::OK) {
return result;
}
finishTcPrep(packet.getFullPacketLen());
finishTcPrep(packet);
return returnvalue::OK;
}
@ -1305,7 +1309,7 @@ ReturnValue_t PlocSupervisorHandler::prepareSetTimeRefCmd() {
if (result != returnvalue::OK) {
return result;
}
finishTcPrep(packet.getFullPacketLen());
finishTcPrep(packet);
return returnvalue::OK;
}
@ -1315,7 +1319,7 @@ ReturnValue_t PlocSupervisorHandler::prepareDisableHk() {
if (result != returnvalue::OK) {
return result;
}
finishTcPrep(packet.getFullPacketLen());
finishTcPrep(packet);
return returnvalue::OK;
}
@ -1327,7 +1331,7 @@ ReturnValue_t PlocSupervisorHandler::prepareSetBootTimeoutCmd(const uint8_t* com
if (result != returnvalue::OK) {
return result;
}
finishTcPrep(packet.getFullPacketLen());
finishTcPrep(packet);
return returnvalue::OK;
}
@ -1338,7 +1342,7 @@ ReturnValue_t PlocSupervisorHandler::prepareRestartTriesCmd(const uint8_t* comma
if (result != returnvalue::OK) {
return result;
}
finishTcPrep(packet.getFullPacketLen());
finishTcPrep(packet);
return returnvalue::OK;
}
@ -1356,7 +1360,7 @@ ReturnValue_t PlocSupervisorHandler::prepareLatchupConfigCmd(const uint8_t* comm
if (result != returnvalue::OK) {
return result;
}
finishTcPrep(packet.getFullPacketLen());
finishTcPrep(packet);
break;
}
case (supv::DISABLE_LATCHUP_ALERT): {
@ -1365,7 +1369,7 @@ ReturnValue_t PlocSupervisorHandler::prepareLatchupConfigCmd(const uint8_t* comm
if (result != returnvalue::OK) {
return result;
}
finishTcPrep(packet.getFullPacketLen());
finishTcPrep(packet);
break;
}
default: {
@ -1392,7 +1396,7 @@ ReturnValue_t PlocSupervisorHandler::prepareSetAlertLimitCmd(const uint8_t* comm
if (result != returnvalue::OK) {
return result;
}
finishTcPrep(packet.getFullPacketLen());
finishTcPrep(packet);
return returnvalue::OK;
}
@ -1403,7 +1407,7 @@ ReturnValue_t PlocSupervisorHandler::prepareSetAdcEnabledChannelsCmd(const uint8
if (result != returnvalue::OK) {
return result;
}
finishTcPrep(packet.getFullPacketLen());
finishTcPrep(packet);
return returnvalue::OK;
}
@ -1417,7 +1421,7 @@ ReturnValue_t PlocSupervisorHandler::prepareSetAdcWindowAndStrideCmd(const uint8
if (result != returnvalue::OK) {
return result;
}
finishTcPrep(packet.getFullPacketLen());
finishTcPrep(packet);
return returnvalue::OK;
}
@ -1429,7 +1433,7 @@ ReturnValue_t PlocSupervisorHandler::prepareSetAdcThresholdCmd(const uint8_t* co
if (result != returnvalue::OK) {
return result;
}
finishTcPrep(packet.getFullPacketLen());
finishTcPrep(packet);
return returnvalue::OK;
}
@ -1443,11 +1447,15 @@ ReturnValue_t PlocSupervisorHandler::prepareRunAutoEmTest(const uint8_t* command
if (result != returnvalue::OK) {
return result;
}
finishTcPrep(packet.getFullPacketLen());
finishTcPrep(packet);
return returnvalue::OK;
}
ReturnValue_t PlocSupervisorHandler::prepareSetGpioCmd(const uint8_t* commandData) {
ReturnValue_t PlocSupervisorHandler::prepareSetGpioCmd(const uint8_t* commandData,
size_t commandDataLen) {
if (commandDataLen < 3) {
return HasActionsIF::INVALID_PARAMETERS;
}
uint8_t port = *commandData;
uint8_t pin = *(commandData + 1);
uint8_t val = *(commandData + 2);
@ -1456,11 +1464,15 @@ ReturnValue_t PlocSupervisorHandler::prepareSetGpioCmd(const uint8_t* commandDat
if (result != returnvalue::OK) {
return result;
}
finishTcPrep(packet.getFullPacketLen());
finishTcPrep(packet);
return returnvalue::OK;
}
ReturnValue_t PlocSupervisorHandler::prepareReadGpioCmd(const uint8_t* commandData) {
ReturnValue_t PlocSupervisorHandler::prepareReadGpioCmd(const uint8_t* commandData,
size_t commandDataLen) {
if (commandDataLen < 2) {
return HasActionsIF::INVALID_PARAMETERS;
}
uint8_t port = *commandData;
uint8_t pin = *(commandData + 1);
supv::ReadGpio packet(spParams);
@ -1468,7 +1480,7 @@ ReturnValue_t PlocSupervisorHandler::prepareReadGpioCmd(const uint8_t* commandDa
if (result != returnvalue::OK) {
return result;
}
finishTcPrep(packet.getFullPacketLen());
finishTcPrep(packet);
return returnvalue::OK;
}
@ -1482,14 +1494,18 @@ ReturnValue_t PlocSupervisorHandler::prepareFactoryResetCmd(const uint8_t* comma
if (result != returnvalue::OK) {
return result;
}
finishTcPrep(resetCmd.getFullPacketLen());
finishTcPrep(resetCmd);
return returnvalue::OK;
}
void PlocSupervisorHandler::finishTcPrep(size_t packetLen) {
void PlocSupervisorHandler::finishTcPrep(TcBase& tc) {
nextReplyId = supv::ACK_REPORT;
rawPacket = commandBuffer;
rawPacketLen = packetLen;
rawPacketLen = tc.getFullPacketLen();
if (DEBUG_PLOC_SUPV) {
sif::debug << "PLOC SUPV: SEND PACKET Size " << tc.getFullPacketLen() << " Module APID "
<< (int)tc.getModuleApid() << " Service ID " << (int)tc.getServiceId() << std::endl;
}
}
ReturnValue_t PlocSupervisorHandler::prepareSetShutdownTimeoutCmd(const uint8_t* commandData) {
@ -1502,13 +1518,14 @@ ReturnValue_t PlocSupervisorHandler::prepareSetShutdownTimeoutCmd(const uint8_t*
sif::warning
<< "PlocSupervisorHandler::prepareSetShutdownTimeoutCmd: Failed to deserialize timeout"
<< std::endl;
return result;
}
supv::SetShutdownTimeout packet(spParams);
result = packet.buildPacket(timeout);
if (result != returnvalue::OK) {
return result;
}
finishTcPrep(packet.getFullPacketLen());
finishTcPrep(packet);
return returnvalue::OK;
}
@ -1518,7 +1535,13 @@ void PlocSupervisorHandler::disableAllReplies() {
/* Disable ack reply */
iter = deviceReplyMap.find(ACK_REPORT);
if (iter == deviceReplyMap.end()) {
return;
}
DeviceReplyInfo* info = &(iter->second);
if (info == nullptr) {
return;
}
info->delayCycles = 0;
info->command = deviceCommandMap.end();
@ -1547,8 +1570,8 @@ void PlocSupervisorHandler::disableAllReplies() {
disableReply(LATCHUP_REPORT);
break;
}
case LOGGING_REQUEST_COUNTERS: {
disableReply(LOGGING_REPORT);
case REQUEST_LOGGING_COUNTERS: {
disableReply(COUNTERS_REPORT);
break;
}
default: {
@ -1562,6 +1585,9 @@ void PlocSupervisorHandler::disableAllReplies() {
void PlocSupervisorHandler::disableReply(DeviceCommandId_t replyId) {
DeviceReplyMap::iterator iter = deviceReplyMap.find(replyId);
if (iter == deviceReplyMap.end()) {
return;
}
DeviceReplyInfo* info = &(iter->second);
info->delayCycles = 0;
info->active = false;
@ -1592,6 +1618,9 @@ void PlocSupervisorHandler::sendFailureReport(DeviceCommandId_t replyId, ReturnV
void PlocSupervisorHandler::disableExeReportReply() {
DeviceReplyIter iter = deviceReplyMap.find(supv::EXE_REPORT);
if (iter == deviceReplyMap.end()) {
return;
}
DeviceReplyInfo* info = &(iter->second);
info->delayCycles = 0;
info->command = deviceCommandMap.end();
@ -1614,7 +1643,9 @@ ReturnValue_t PlocSupervisorHandler::handleMramDumpPacket(DeviceCommandId_t id)
result = handleMramDumpFile(id);
if (result != returnvalue::OK) {
DeviceCommandMap::iterator iter = deviceCommandMap.find(id);
actionHelper.finish(false, iter->second.sendReplyTo, id, result);
if (iter != deviceCommandMap.end()) {
actionHelper.finish(false, iter->second.sendReplyTo, id, result);
}
disableAllReplies();
nextReplyId = supv::NONE;
return result;
@ -1719,7 +1750,7 @@ ReturnValue_t PlocSupervisorHandler::prepareWipeMramCmd(const uint8_t* commandDa
if (result != returnvalue::OK) {
return result;
}
finishTcPrep(packet.getFullPacketLen());
finishTcPrep(packet);
return returnvalue::OK;
}
@ -1881,7 +1912,12 @@ ReturnValue_t PlocSupervisorHandler::eventSubscription() {
ReturnValue_t PlocSupervisorHandler::handleExecutionSuccessReport(ExecutionReport& report) {
DeviceCommandId_t commandId = getPendingCommand();
ReturnValue_t result = OK;
DeviceCommandMap::iterator iter = deviceCommandMap.find(commandId);
if (iter != deviceCommandMap.end() and iter->second.sendReplyTo != NO_COMMANDER) {
actionHelper.finish(true, iter->second.sendReplyTo, iter->first, returnvalue::OK);
iter->second.isExecuting = false;
}
commandIsPending = false;
switch (commandId) {
case supv::READ_GPIO: {
// TODO: Fix
@ -1889,14 +1925,13 @@ ReturnValue_t PlocSupervisorHandler::handleExecutionSuccessReport(ExecutionRepor
#if OBSW_DEBUG_PLOC_SUPERVISOR == 1
sif::info << "PlocSupervisorHandler: Read GPIO TM, State: " << gpioState << std::endl;
#endif /* OBSW_DEBUG_PLOC_SUPERVISOR == 1 */
DeviceCommandMap::iterator iter = deviceCommandMap.find(commandId);
if (iter->second.sendReplyTo == NO_COMMAND_ID) {
if (iter != deviceCommandMap.end() and iter->second.sendReplyTo == NO_COMMAND_ID) {
return returnvalue::OK;
}
uint8_t data[sizeof(gpioState)];
size_t size = 0;
result = SerializeAdapter::serialize(&gpioState, data, &size, sizeof(gpioState),
SerializeIF::Endianness::BIG);
ReturnValue_t result = SerializeAdapter::serialize(&gpioState, data, &size, sizeof(gpioState),
SerializeIF::Endianness::BIG);
if (result != returnvalue::OK) {
sif::debug << "PlocSupervisorHandler: Failed to deserialize GPIO state" << std::endl;
}
@ -1909,6 +1944,10 @@ ReturnValue_t PlocSupervisorHandler::handleExecutionSuccessReport(ExecutionRepor
case supv::SET_TIME_REF: {
// We could only allow proper bootup when the time was set successfully, but
// this makes debugging difficult.
if (startupState == StartupState::WAIT_FOR_TIME_REPLY) {
startupState = StartupState::TIME_WAS_SET;
}
break;
}
default:
@ -1968,133 +2007,21 @@ uint32_t PlocSupervisorHandler::getTransitionDelayMs(Mode_t modeFrom, Mode_t mod
return 7000;
}
// ReturnValue_t PlocSupervisorHandler::checkMramPacketApid() {
// uint16_t apid = (spacePacketBuffer[0] << 8 | spacePacketBuffer[1]) & supv::APID_MASK;
// TODO: Fix
// if (apid != supv::APID_MRAM_DUMP_TM) {
// return result::NO_MRAM_PACKET;
// }
// return APERIODIC_REPLY;
//}
void PlocSupervisorHandler::disableCommand(DeviceCommandId_t cmd) {
auto commandIter = deviceCommandMap.find(GET_HK_REPORT);
commandIter->second.isExecuting = false;
}
// ReturnValue_t PlocSupervisorHandler::parseMramPackets(const uint8_t* packet, size_t
// remainingSize,
// size_t* foundLen) {
// ReturnValue_t result = IGNORE_FULL_PACKET;
// uint16_t packetLen = 0;
// *foundLen = 0;
//
// for (size_t idx = 0; idx < remainingSize; idx++) {
// std::memcpy(spacePacketBuffer + bufferTop, packet + idx, 1);
// bufferTop += 1;
// *foundLen += 1;
// if (bufferTop >= ccsds::HEADER_LEN) {
// packetLen = readSpacePacketLength(spacePacketBuffer);
// }
//
// if (bufferTop == ccsds::HEADER_LEN + packetLen + 1) {
// packetInBuffer = true;
// bufferTop = 0;
// return checkMramPacketApid();
// }
//
// if (bufferTop == supv::MAX_PACKET_SIZE) {
// *foundLen = remainingSize;
// disableAllReplies();
// bufferTop = 0;
// sif::info << "PlocSupervisorHandler::parseMramPackets: Can not find MRAM packet in space "
// "packet buffer"
// << std::endl;
// return result::MRAM_PACKET_PARSING_FAILURE;
// }
// }
//
// return result;
// }
// ReturnValue_t PlocSupervisorHandler::prepareDumpMramCmd(const uint8_t* commandData) {
// uint32_t start = 0;
// uint32_t stop = 0;
// size_t size = sizeof(start) + sizeof(stop);
// SerializeAdapter::deSerialize(&start, &commandData, &size, SerializeIF::Endianness::BIG);
// SerializeAdapter::deSerialize(&stop, &commandData, &size, SerializeIF::Endianness::BIG);
// if ((stop - start) <= 0) {
// return SupvReturnValuesIF::INVALID_MRAM_ADDRESSES;
// }
// supv::MramCmd packet(spParams);
// ReturnValue_t result = packet.buildPacket(start, stop, supv::MramCmd::MramAction::DUMP);
// if (result != returnvalue::OK) {
// return result;
// }
// expectedMramDumpPackets = (stop - start) / supv::MAX_DATA_CAPACITY;
// if ((stop - start) % supv::MAX_DATA_CAPACITY) {
// expectedMramDumpPackets++;
// }
// receivedMramDumpPackets = 0;
//
// finishTcPrep(packet.getFullPacketLen());
// return returnvalue::OK;
// }
// ReturnValue_t PlocSupervisorHandler::prepareLoggingRequest(const uint8_t* commandData,
// size_t commandDataLen) {
// using namespace supv;
// RequestLoggingData::Sa sa = static_cast<RequestLoggingData::Sa>(*commandData);
// uint8_t tpc = *(commandData + 1);
// RequestLoggingData packet(spParams);
// ReturnValue_t result = packet.buildPacket(sa, tpc);
// if (result != returnvalue::OK) {
// return result;
// }
// finishTcPrep(packet.getFullPacketLen());
// return returnvalue::OK;
// }
// ReturnValue_t PlocSupervisorHandler::prepareEnableNvmsCommand(const uint8_t* commandData) {
// using namespace supv;
// uint8_t nvm01 = *(commandData);
// uint8_t nvm3 = *(commandData + 1);
// EnableNvms packet(spParams);
// ReturnValue_t result = packet.buildPacket(nvm01, nvm3);
// if (result != returnvalue::OK) {
// return result;
// }
// finishTcPrep(packet.getFullPacketLen());
// return returnvalue::OK;
// }
// ReturnValue_t PlocSupervisorHandler::handleLoggingReport(const uint8_t* data) {
// ReturnValue_t result = returnvalue::OK;
//
// result = verifyPacket(data, supv::SIZE_LOGGING_REPORT);
//
// if (result == SupvReturnValuesIF::CRC_FAILURE) {
// sif::warning << "PlocSupervisorHandler::handleLoggingReport: Logging report has "
// << "invalid crc" << std::endl;
// return result;
// }
//
// const uint8_t* dataField = data + supv::PAYLOAD_OFFSET + sizeof(supv::RequestLoggingData::Sa);
// result = loggingReport.read();
// if (result != returnvalue::OK) {
// return result;
// }
// loggingReport.setValidityBufferGeneration(false);
// size_t size = loggingReport.getSerializedSize();
// result = loggingReport.deSerialize(&dataField, &size, SerializeIF::Endianness::BIG);
// if (result != returnvalue::OK) {
// sif::warning << "PlocSupervisorHandler::handleLoggingReport: Deserialization failed"
// << std::endl;
// }
// loggingReport.setValidityBufferGeneration(true);
// loggingReport.setValidity(true, true);
// result = loggingReport.commit();
// if (result != returnvalue::OK) {
// return result;
// }
//#if OBSW_VERBOSE_LEVEL >= 1 && OBSW_DEBUG_PLOC_SUPERVISOR == 1
// loggingReport.printSet();
//#endif
// nextReplyId = supv::EXE_REPORT;
// return result;
// }
ReturnValue_t PlocSupervisorHandler::checkModeCommand(Mode_t commandedMode,
Submode_t commandedSubmode,
uint32_t* msToReachTheMode) {
if (commandedMode != MODE_OFF) {
PoolReadGuard pg(&enablePl);
if (pg.getReadResult() == returnvalue::OK) {
if (enablePl.plUseAllowed.isValid() and not enablePl.plUseAllowed.value) {
return NON_OP_STATE_OF_CHARGE;
}
}
}
return DeviceHandlerBase::checkModeCommand(commandedMode, commandedSubmode, msToReachTheMode);
}

View File

@ -1,7 +1,9 @@
#ifndef MISSION_DEVICES_PLOCSUPERVISORHANDLER_H_
#define MISSION_DEVICES_PLOCSUPERVISORHANDLER_H_
#include <linux/devices/ploc/PlocSupvUartMan.h>
#include <linux/payload/PlocSupvUartMan.h>
#include <linux/payload/plocSupvDefs.h>
#include <mission/controller/controllerdefinitions/PowerCtrlDefinitions.h>
#include "OBSWConfig.h"
#include "devices/powerSwitcherList.h"
@ -10,13 +12,16 @@
#include "fsfw_hal/linux/gpio/Gpio.h"
#include "fsfw_hal/linux/gpio/LinuxLibgpioIF.h"
#include "fsfw_hal/linux/serial/SerialComIF.h"
#include "linux/devices/devicedefinitions/PlocSupervisorDefinitions.h"
#ifdef XIPHOS_Q7S
#include "bsp_q7s/fs/SdCardManager.h"
#endif
using supv::ExecutionReport;
using supv::TcBase;
static constexpr bool DEBUG_PLOC_SUPV = true;
static constexpr bool REDUCE_NORMAL_MODE_PRINTOUT = true;
/**
* @brief This is the device handler for the supervisor of the PLOC which is programmed by
@ -63,26 +68,6 @@ class PlocSupervisorHandler : public DeviceHandlerBase {
void doOffActivity() override;
private:
static const uint8_t SUBSYSTEM_ID = SUBSYSTEM_ID::PLOC_SUPERVISOR_HANDLER;
//! [EXPORT] : [COMMENT] PLOC supervisor crc failure in telemetry packet
static const Event SUPV_MEMORY_READ_RPT_CRC_FAILURE = MAKE_EVENT(1, severity::LOW);
//! [EXPORT] : [COMMENT] Unhandled event. P1: APID, P2: Service ID
static constexpr Event SUPV_UNKNOWN_TM = MAKE_EVENT(2, severity::LOW);
static constexpr Event SUPV_UNINIMPLEMENTED_TM = MAKE_EVENT(3, severity::LOW);
//! [EXPORT] : [COMMENT] PLOC supervisor received acknowledgment failure report
static const Event SUPV_ACK_FAILURE = MAKE_EVENT(4, severity::LOW);
//! [EXPORT] : [COMMENT] PLOC received execution failure report
//! P1: ID of command for which the execution failed
//! P2: Status code sent by the supervisor handler
static const Event SUPV_EXE_FAILURE = MAKE_EVENT(5, severity::LOW);
//! [EXPORT] : [COMMENT] PLOC supervisor reply has invalid crc
static const Event SUPV_CRC_FAILURE_EVENT = MAKE_EVENT(6, severity::LOW);
//! [EXPORT] : [COMMENT] Supervisor helper currently executing a command
static const Event SUPV_HELPER_EXECUTING = MAKE_EVENT(7, severity::LOW);
//! [EXPORT] : [COMMENT] Failed to build the command to shutdown the MPSoC
static const Event SUPV_MPSOC_SHUTDOWN_BUILD_FAILED = MAKE_EVENT(8, severity::LOW);
static const uint16_t APID_MASK = 0x7FF;
static const uint16_t PACKET_SEQUENCE_COUNT_MASK = 0x3FFF;
static const uint8_t EXE_STATUS_OFFSET = 10;
@ -90,16 +75,22 @@ class PlocSupervisorHandler : public DeviceHandlerBase {
// 5 s
static const uint32_t EXECUTION_DEFAULT_TIMEOUT = 5000;
// 70 S
static const uint32_t ACKNOWLEDGE_DEFAULT_TIMEOUT = 70000;
static const uint32_t ACKNOWLEDGE_DEFAULT_TIMEOUT = 5000;
// 60 s
static const uint32_t MRAM_DUMP_EXECUTION_TIMEOUT = 60000;
// 70 s
static const uint32_t COPY_ADC_TO_MRAM_TIMEOUT = 70000;
// 60 s
static const uint32_t MRAM_DUMP_TIMEOUT = 60000;
// 4 s
static const uint32_t BOOT_TIMEOUT = 4000;
enum class StartupState : uint8_t { OFF, BOOTING, SET_TIME, SET_TIME_EXECUTING, ON };
enum class StartupState : uint8_t {
OFF,
BOOTING,
SET_TIME,
WAIT_FOR_TIME_REPLY,
TIME_WAS_SET,
ON
};
static constexpr bool SET_TIME_DURING_BOOT = true;
@ -120,11 +111,18 @@ class PlocSupervisorHandler : public DeviceHandlerBase {
LinuxLibgpioIF* gpioComIF = nullptr;
Gpio uartIsolatorSwitch;
bool shutdownCmdSent = false;
// Yeah, I am using an extra variable because I once again don't know
// what the hell the base class is doing and I don't care anymore.
bool normalCommandIsPending = false;
// True men implement their reply timeout handling themselves!
Countdown normalCmdCd = Countdown(2000);
bool commandIsPending = false;
Countdown cmdCd = Countdown(2000);
supv::HkSet hkset;
supv::BootStatusReport bootStatusReport;
supv::LatchupStatusReport latchupStatusReport;
supv::LoggingReport loggingReport;
supv::CountersReport countersReport;
supv::AdcReport adcReport;
const power::Switch_t powerSwitch = power::NO_SWITCH;
@ -153,9 +151,12 @@ class PlocSupervisorHandler : public DeviceHandlerBase {
Countdown executionReportTimeout = Countdown(EXECUTION_DEFAULT_TIMEOUT, false);
Countdown acknowledgementReportTimeout = Countdown(ACKNOWLEDGE_DEFAULT_TIMEOUT, false);
// Vorago nees some time to boot properly
Countdown bootTimeout = Countdown(BOOT_TIMEOUT);
Countdown bootTimeout = Countdown(supv::BOOT_TIMEOUT_MS);
Countdown mramDumpTimeout = Countdown(MRAM_DUMP_TIMEOUT);
PoolEntry<uint16_t> adcRawEntry = PoolEntry<uint16_t>(16);
PoolEntry<uint16_t> adcEngEntry = PoolEntry<uint16_t>(16);
PoolEntry<uint32_t> latchupCounters = PoolEntry<uint32_t>(7);
PoolEntry<uint8_t> fmcStateEntry = PoolEntry<uint8_t>(1);
PoolEntry<uint8_t> bootStateEntry = PoolEntry<uint8_t>(1);
PoolEntry<uint8_t> bootCyclesEntry = PoolEntry<uint8_t>(1);
@ -166,6 +167,8 @@ class PlocSupervisorHandler : public DeviceHandlerBase {
*/
void setExecutionTimeout(DeviceCommandId_t command);
void handlePacketPrint();
/**
* @brief Handles event messages received from the supervisor helper
*/
@ -218,9 +221,13 @@ class PlocSupervisorHandler : public DeviceHandlerBase {
ReturnValue_t handleBootStatusReport(const uint8_t* data);
ReturnValue_t handleLatchupStatusReport(const uint8_t* data);
ReturnValue_t handleCounterReport(const uint8_t* data);
void handleBadApidServiceCombination(Event result, unsigned int apid, unsigned int serviceId);
// ReturnValue_t handleLoggingReport(const uint8_t* data);
ReturnValue_t handleAdcReport(const uint8_t* data);
ReturnValue_t genericHandleTm(const char* contextString, const uint8_t* data,
LocalPoolDataSetBase& set);
void disableCommand(DeviceCommandId_t cmd);
/**
* @brief Depending on the current active command, this function sets the reply id of the
@ -289,16 +296,13 @@ class PlocSupervisorHandler : public DeviceHandlerBase {
ReturnValue_t prepareSetAdcThresholdCmd(const uint8_t* commandData);
ReturnValue_t prepareRunAutoEmTest(const uint8_t* commandData);
ReturnValue_t prepareWipeMramCmd(const uint8_t* commandData);
// ReturnValue_t prepareDumpMramCmd(const uint8_t* commandData);
ReturnValue_t prepareSetGpioCmd(const uint8_t* commandData);
ReturnValue_t prepareReadGpioCmd(const uint8_t* commandData);
// ReturnValue_t prepareLoggingRequest(const uint8_t* commandData, size_t commandDataLen);
// ReturnValue_t prepareEnableNvmsCommand(const uint8_t* commandData);
ReturnValue_t prepareSetGpioCmd(const uint8_t* commandData, size_t commandDataLen);
ReturnValue_t prepareReadGpioCmd(const uint8_t* commandData, size_t commandDataLen);
/**
* @brief Copies the content of a space packet to the command buffer.
*/
void finishTcPrep(size_t packetLen);
void finishTcPrep(TcBase& tc);
/**
* @brief In case an acknowledgment failure reply has been received this function disables
@ -324,12 +328,6 @@ class PlocSupervisorHandler : public DeviceHandlerBase {
*/
void disableExeReportReply();
/**
* @brief Function is called in scanForReply and fills the spacePacketBuffer with the read
* data until a full packet has been received.
*/
// ReturnValue_t parseMramPackets(const uint8_t* packet, size_t remainingSize, size_t* foundlen);
/**
* @brief This function generates the Service 8 packets for the MRAM dump data.
*/
@ -342,12 +340,6 @@ class PlocSupervisorHandler : public DeviceHandlerBase {
*/
void increaseExpectedMramReplies(DeviceCommandId_t id);
/**
* @brief Function checks if the packet written to the space packet buffer is really a
* MRAM dump packet.
*/
// ReturnValue_t checkMramPacketApid();
/**
* @brief Writes the data of the MRAM dump to a file. The file will be created when receiving
* the first packet.
@ -388,6 +380,10 @@ class PlocSupervisorHandler : public DeviceHandlerBase {
void handleExecutionFailureReport(ExecutionReport& report);
void printAckFailureInfo(uint16_t statusCode, DeviceCommandId_t commandId);
pwrctrl::EnablePl enablePl = pwrctrl::EnablePl(objects::POWER_CONTROLLER);
ReturnValue_t checkModeCommand(Mode_t commandedMode, Submode_t commandedSubmode,
uint32_t* msToReachTheMode) override;
};
#endif /* MISSION_DEVICES_PLOCSUPERVISORHANDLER_H_ */

View File

@ -22,7 +22,7 @@ pipeline {
steps {
dir(BUILDDIR_Q7S) {
sh 'cmake -DTGT_BSP="arm/q7s" -DCMAKE_BUILD_TYPE=Debug ..'
sh 'cmake --build . -j6'
sh 'cmake --build . -j8'
}
}
}
@ -30,7 +30,7 @@ pipeline {
steps {
dir(BUILDDIR_Q7S_EM) {
sh 'cmake -DTGT_BSP="arm/q7s" -DEIVE_Q7S_EM=ON -DCMAKE_BUILD_TYPE=Debug ..'
sh 'cmake --build . -j6'
sh 'cmake --build . -j8'
}
}
}
@ -38,7 +38,7 @@ pipeline {
steps {
dir(BUILDDIR_LINUX) {
sh 'cmake ..'
sh 'cmake --build . -j6'
sh 'cmake --build . -j8'
sh './eive-unittest'
}
}

View File

@ -1,4 +1,4 @@
target_sources(${OBSW_NAME} PUBLIC scheduling.cpp main.cpp ObjectFactory.cpp)
target_sources(${OBSW_NAME} PUBLIC scheduling.cpp main.cpp objectFactory.cpp)
add_subdirectory(fsfwconfig)
add_subdirectory(boardconfig)

View File

@ -101,7 +101,7 @@
/** CMake Defines */
/*******************************************************************/
#define OBSW_ADD_TMTC_UDP_SERVER 1
#define OBSW_ADD_TMTC_UDP_SERVER 0
#define OBSW_ADD_TMTC_TCP_SERVER 1
#cmakedefine EIVE_BUILD_GPSD_GPS_HANDLER

View File

@ -1,7 +1,7 @@
/**
* @brief Auto-generated event translation file. Contains 279 translations.
* @brief Auto-generated event translation file. Contains 317 translations.
* @details
* Generated on: 2023-03-21 23:59:36
* Generated on: 2023-11-29 15:14:46
*/
#include "translateEvents.h"
@ -92,16 +92,25 @@ const char *MSG_QUEUE_ERROR_STRING = "MSG_QUEUE_ERROR";
const char *SERIALIZATION_ERROR_STRING = "SERIALIZATION_ERROR";
const char *FILESTORE_ERROR_STRING = "FILESTORE_ERROR";
const char *FILENAME_TOO_LARGE_ERROR_STRING = "FILENAME_TOO_LARGE_ERROR";
const char *HANDLING_CFDP_REQUEST_FAILED_STRING = "HANDLING_CFDP_REQUEST_FAILED";
const char *SAFE_RATE_VIOLATION_STRING = "SAFE_RATE_VIOLATION";
const char *SAFE_RATE_RECOVERY_STRING = "SAFE_RATE_RECOVERY";
const char *MULTIPLE_RW_INVALID_STRING = "MULTIPLE_RW_INVALID";
const char *MEKF_INVALID_INFO_STRING = "MEKF_INVALID_INFO";
const char *MEKF_RECOVERY_STRING = "MEKF_RECOVERY";
const char *MEKF_AUTOMATIC_RESET_STRING = "MEKF_AUTOMATIC_RESET";
const char *MEKF_INVALID_MODE_VIOLATION_STRING = "MEKF_INVALID_MODE_VIOLATION";
const char *SAFE_MODE_CONTROLLER_FAILURE_STRING = "SAFE_MODE_CONTROLLER_FAILURE";
const char *TLE_TOO_OLD_STRING = "TLE_TOO_OLD";
const char *SWITCH_CMD_SENT_STRING = "SWITCH_CMD_SENT";
const char *SWITCH_HAS_CHANGED_STRING = "SWITCH_HAS_CHANGED";
const char *SWITCHING_Q7S_DENIED_STRING = "SWITCHING_Q7S_DENIED";
const char *FDIR_REACTION_IGNORED_STRING = "FDIR_REACTION_IGNORED";
const char *DATASET_READ_FAILED_STRING = "DATASET_READ_FAILED";
const char *VOLTAGE_OUT_OF_BOUNDS_STRING = "VOLTAGE_OUT_OF_BOUNDS";
const char *TIMEDELTA_OUT_OF_BOUNDS_STRING = "TIMEDELTA_OUT_OF_BOUNDS";
const char *POWER_LEVEL_LOW_STRING = "POWER_LEVEL_LOW";
const char *POWER_LEVEL_CRITICAL_STRING = "POWER_LEVEL_CRITICAL";
const char *GPIO_PULL_HIGH_FAILED_STRING = "GPIO_PULL_HIGH_FAILED";
const char *GPIO_PULL_LOW_FAILED_STRING = "GPIO_PULL_LOW_FAILED";
const char *HEATER_WENT_ON_STRING = "HEATER_WENT_ON";
@ -125,6 +134,8 @@ const char *EXE_FAILURE_STRING = "EXE_FAILURE";
const char *MPSOC_HANDLER_CRC_FAILURE_STRING = "MPSOC_HANDLER_CRC_FAILURE";
const char *MPSOC_HANDLER_SEQUENCE_COUNT_MISMATCH_STRING = "MPSOC_HANDLER_SEQUENCE_COUNT_MISMATCH";
const char *MPSOC_SHUTDOWN_FAILED_STRING = "MPSOC_SHUTDOWN_FAILED";
const char *SUPV_NOT_ON_STRING = "SUPV_NOT_ON";
const char *SUPV_REPLY_TIMEOUT_STRING = "SUPV_REPLY_TIMEOUT";
const char *SELF_TEST_I2C_FAILURE_STRING = "SELF_TEST_I2C_FAILURE";
const char *SELF_TEST_SPI_FAILURE_STRING = "SELF_TEST_SPI_FAILURE";
const char *SELF_TEST_ADC_FAILURE_STRING = "SELF_TEST_ADC_FAILURE";
@ -137,6 +148,7 @@ const char *ERROR_STATE_STRING = "ERROR_STATE";
const char *RESET_OCCURED_STRING = "RESET_OCCURED";
const char *BOOTING_FIRMWARE_FAILED_EVENT_STRING = "BOOTING_FIRMWARE_FAILED_EVENT";
const char *BOOTING_BOOTLOADER_FAILED_EVENT_STRING = "BOOTING_BOOTLOADER_FAILED_EVENT";
const char *COM_ERROR_REPLY_RECEIVED_STRING = "COM_ERROR_REPLY_RECEIVED";
const char *SUPV_MEMORY_READ_RPT_CRC_FAILURE_STRING = "SUPV_MEMORY_READ_RPT_CRC_FAILURE";
const char *SUPV_UNKNOWN_TM_STRING = "SUPV_UNKNOWN_TM";
const char *SUPV_UNINIMPLEMENTED_TM_STRING = "SUPV_UNINIMPLEMENTED_TM";
@ -145,6 +157,8 @@ const char *SUPV_EXE_FAILURE_STRING = "SUPV_EXE_FAILURE";
const char *SUPV_CRC_FAILURE_EVENT_STRING = "SUPV_CRC_FAILURE_EVENT";
const char *SUPV_HELPER_EXECUTING_STRING = "SUPV_HELPER_EXECUTING";
const char *SUPV_MPSOC_SHUTDOWN_BUILD_FAILED_STRING = "SUPV_MPSOC_SHUTDOWN_BUILD_FAILED";
const char *SUPV_ACK_UNKNOWN_COMMAND_STRING = "SUPV_ACK_UNKNOWN_COMMAND";
const char *SUPV_EXE_ACK_UNKNOWN_COMMAND_STRING = "SUPV_EXE_ACK_UNKNOWN_COMMAND";
const char *SANITIZATION_FAILED_STRING = "SANITIZATION_FAILED";
const char *MOUNTED_SD_CARD_STRING = "MOUNTED_SD_CARD";
const char *SEND_MRAM_DUMP_FAILED_STRING = "SEND_MRAM_DUMP_FAILED";
@ -159,8 +173,12 @@ const char *LOST_BIT_LOCK_PDEC_STRING = "LOST_BIT_LOCK_PDEC";
const char *TOO_MANY_IRQS_STRING = "TOO_MANY_IRQS";
const char *POLL_SYSCALL_ERROR_PDEC_STRING = "POLL_SYSCALL_ERROR_PDEC";
const char *WRITE_SYSCALL_ERROR_PDEC_STRING = "WRITE_SYSCALL_ERROR_PDEC";
const char *PDEC_TRYING_RESET_WITH_INIT_STRING = "PDEC_TRYING_RESET_WITH_INIT";
const char *PDEC_TRYING_RESET_NO_INIT_STRING = "PDEC_TRYING_RESET_NO_INIT";
const char *PDEC_RESET_FAILED_STRING = "PDEC_RESET_FAILED";
const char *OPEN_IRQ_FILE_FAILED_STRING = "OPEN_IRQ_FILE_FAILED";
const char *PDEC_INIT_FAILED_STRING = "PDEC_INIT_FAILED";
const char *PDEC_CONFIG_CORRUPTED_STRING = "PDEC_CONFIG_CORRUPTED";
const char *IMAGE_UPLOAD_FAILED_STRING = "IMAGE_UPLOAD_FAILED";
const char *IMAGE_DOWNLOAD_FAILED_STRING = "IMAGE_DOWNLOAD_FAILED";
const char *IMAGE_UPLOAD_SUCCESSFUL_STRING = "IMAGE_UPLOAD_SUCCESSFUL";
@ -172,7 +190,7 @@ const char *FIRMWARE_UPDATE_SUCCESSFUL_STRING = "FIRMWARE_UPDATE_SUCCESSFUL";
const char *FIRMWARE_UPDATE_FAILED_STRING = "FIRMWARE_UPDATE_FAILED";
const char *STR_HELPER_READING_REPLY_FAILED_STRING = "STR_HELPER_READING_REPLY_FAILED";
const char *STR_HELPER_COM_ERROR_STRING = "STR_HELPER_COM_ERROR";
const char *STR_HELPER_NO_REPLY_STRING = "STR_HELPER_NO_REPLY";
const char *STR_COM_REPLY_TIMEOUT_STRING = "STR_COM_REPLY_TIMEOUT";
const char *STR_HELPER_DEC_ERROR_STRING = "STR_HELPER_DEC_ERROR";
const char *POSITION_MISMATCH_STRING = "POSITION_MISMATCH";
const char *STR_HELPER_FILE_NOT_EXISTS_STRING = "STR_HELPER_FILE_NOT_EXISTS";
@ -192,6 +210,10 @@ const char *MPSOC_EXE_INVALID_APID_STRING = "MPSOC_EXE_INVALID_APID";
const char *MPSOC_HELPER_SEQ_CNT_MISMATCH_STRING = "MPSOC_HELPER_SEQ_CNT_MISMATCH";
const char *MPSOC_TM_SIZE_ERROR_STRING = "MPSOC_TM_SIZE_ERROR";
const char *MPSOC_TM_CRC_MISSMATCH_STRING = "MPSOC_TM_CRC_MISSMATCH";
const char *MPSOC_FLASH_READ_PACKET_ERROR_STRING = "MPSOC_FLASH_READ_PACKET_ERROR";
const char *MPSOC_FLASH_READ_FAILED_STRING = "MPSOC_FLASH_READ_FAILED";
const char *MPSOC_FLASH_READ_SUCCESSFUL_STRING = "MPSOC_FLASH_READ_SUCCESSFUL";
const char *MPSOC_READ_TIMEOUT_STRING = "MPSOC_READ_TIMEOUT";
const char *TRANSITION_BACK_TO_OFF_STRING = "TRANSITION_BACK_TO_OFF";
const char *NEG_V_OUT_OF_BOUNDS_STRING = "NEG_V_OUT_OF_BOUNDS";
const char *U_DRO_OUT_OF_BOUNDS_STRING = "U_DRO_OUT_OF_BOUNDS";
@ -208,6 +230,11 @@ const char *TRANSITION_OTHER_SIDE_FAILED_STRING = "TRANSITION_OTHER_SIDE_FAILED"
const char *NOT_ENOUGH_DEVICES_DUAL_MODE_STRING = "NOT_ENOUGH_DEVICES_DUAL_MODE";
const char *POWER_STATE_MACHINE_TIMEOUT_STRING = "POWER_STATE_MACHINE_TIMEOUT";
const char *SIDE_SWITCH_TRANSITION_NOT_ALLOWED_STRING = "SIDE_SWITCH_TRANSITION_NOT_ALLOWED";
const char *DIRECT_TRANSITION_TO_DUAL_OTHER_GPS_FAULTY_STRING = "DIRECT_TRANSITION_TO_DUAL_OTHER_GPS_FAULTY";
const char *TRANSITION_OTHER_SIDE_FAILED_12900_STRING = "TRANSITION_OTHER_SIDE_FAILED_12900";
const char *NOT_ENOUGH_DEVICES_DUAL_MODE_12901_STRING = "NOT_ENOUGH_DEVICES_DUAL_MODE_12901";
const char *POWER_STATE_MACHINE_TIMEOUT_12902_STRING = "POWER_STATE_MACHINE_TIMEOUT_12902";
const char *SIDE_SWITCH_TRANSITION_NOT_ALLOWED_12903_STRING = "SIDE_SWITCH_TRANSITION_NOT_ALLOWED_12903";
const char *CHILDREN_LOST_MODE_STRING = "CHILDREN_LOST_MODE";
const char *GPS_FIX_CHANGE_STRING = "GPS_FIX_CHANGE";
const char *CANT_GET_FIX_STRING = "CANT_GET_FIX";
@ -246,6 +273,7 @@ const char *TX_OFF_STRING = "TX_OFF";
const char *MISSING_PACKET_STRING = "MISSING_PACKET";
const char *EXPERIMENT_TIMEDOUT_STRING = "EXPERIMENT_TIMEDOUT";
const char *MULTI_PACKET_COMMAND_DONE_STRING = "MULTI_PACKET_COMMAND_DONE";
const char *FS_UNUSABLE_STRING = "FS_UNUSABLE";
const char *SET_CONFIGFILEVALUE_FAILED_STRING = "SET_CONFIGFILEVALUE_FAILED";
const char *GET_CONFIGFILEVALUE_FAILED_STRING = "GET_CONFIGFILEVALUE_FAILED";
const char *INSERT_CONFIGFILEVALUE_FAILED_STRING = "INSERT_CONFIGFILEVALUE_FAILED";
@ -260,25 +288,40 @@ const char *VERSION_INFO_STRING = "VERSION_INFO";
const char *CURRENT_IMAGE_INFO_STRING = "CURRENT_IMAGE_INFO";
const char *REBOOT_COUNTER_STRING = "REBOOT_COUNTER";
const char *INDIVIDUAL_BOOT_COUNTS_STRING = "INDIVIDUAL_BOOT_COUNTS";
const char *I2C_UNAVAILABLE_REBOOT_STRING = "I2C_UNAVAILABLE_REBOOT";
const char *TRYING_I2C_RECOVERY_STRING = "TRYING_I2C_RECOVERY";
const char *I2C_REBOOT_STRING = "I2C_REBOOT";
const char *PDEC_REBOOT_STRING = "PDEC_REBOOT";
const char *FIRMWARE_INFO_STRING = "FIRMWARE_INFO";
const char *ACTIVE_SD_INFO_STRING = "ACTIVE_SD_INFO";
const char *NO_VALID_SENSOR_TEMPERATURE_STRING = "NO_VALID_SENSOR_TEMPERATURE";
const char *NO_HEALTHY_HEATER_AVAILABLE_STRING = "NO_HEALTHY_HEATER_AVAILABLE";
const char *SYRLINKS_OVERHEATING_STRING = "SYRLINKS_OVERHEATING";
const char *PLOC_OVERHEATING_STRING = "PLOC_OVERHEATING";
const char *OBC_OVERHEATING_STRING = "OBC_OVERHEATING";
const char *HPA_OVERHEATING_STRING = "HPA_OVERHEATING";
const char *PLPCDU_OVERHEATING_STRING = "PLPCDU_OVERHEATING";
const char *CAMERA_OVERHEATING_STRING = "CAMERA_OVERHEATING";
const char *PCDU_SYSTEM_OVERHEATING_STRING = "PCDU_SYSTEM_OVERHEATING";
const char *HEATER_NOT_OFF_FOR_OFF_MODE_STRING = "HEATER_NOT_OFF_FOR_OFF_MODE";
const char *MGT_OVERHEATING_STRING = "MGT_OVERHEATING";
const char *TCS_SWITCHING_HEATER_ON_STRING = "TCS_SWITCHING_HEATER_ON";
const char *TCS_SWITCHING_HEATER_OFF_STRING = "TCS_SWITCHING_HEATER_OFF";
const char *TCS_HEATER_MAX_BURN_TIME_REACHED_STRING = "TCS_HEATER_MAX_BURN_TIME_REACHED";
const char *TX_TIMER_EXPIRED_STRING = "TX_TIMER_EXPIRED";
const char *BIT_LOCK_TX_ON_STRING = "BIT_LOCK_TX_ON";
const char *POSSIBLE_FILE_CORRUPTION_STRING = "POSSIBLE_FILE_CORRUPTION";
const char *FILE_TOO_LARGE_STRING = "FILE_TOO_LARGE";
const char *BUSY_DUMPING_EVENT_STRING = "BUSY_DUMPING_EVENT";
const char *DUMP_WAS_CANCELLED_STRING = "DUMP_WAS_CANCELLED";
const char *DUMP_OK_STORE_DONE_STRING = "DUMP_OK_STORE_DONE";
const char *DUMP_NOK_STORE_DONE_STRING = "DUMP_NOK_STORE_DONE";
const char *DUMP_MISC_STORE_DONE_STRING = "DUMP_MISC_STORE_DONE";
const char *DUMP_HK_STORE_DONE_STRING = "DUMP_HK_STORE_DONE";
const char *DUMP_CFDP_STORE_DONE_STRING = "DUMP_CFDP_STORE_DONE";
const char *DUMP_OK_CANCELLED_STRING = "DUMP_OK_CANCELLED";
const char *DUMP_NOK_CANCELLED_STRING = "DUMP_NOK_CANCELLED";
const char *DUMP_MISC_CANCELLED_STRING = "DUMP_MISC_CANCELLED";
const char *DUMP_HK_CANCELLED_STRING = "DUMP_HK_CANCELLED";
const char *DUMP_CFDP_CANCELLED_STRING = "DUMP_CFDP_CANCELLED";
const char *TEMPERATURE_ALL_ONES_START_STRING = "TEMPERATURE_ALL_ONES_START";
const char *TEMPERATURE_ALL_ONES_RECOVERY_STRING = "TEMPERATURE_ALL_ONES_RECOVERY";
const char *FAULT_HANDLER_TRIGGERED_STRING = "FAULT_HANDLER_TRIGGERED";
const char *translateEvents(Event event) {
switch ((event & 0xFFFF)) {
@ -456,6 +499,8 @@ const char *translateEvents(Event event) {
return FILESTORE_ERROR_STRING;
case (10804):
return FILENAME_TOO_LARGE_ERROR_STRING;
case (10805):
return HANDLING_CFDP_REQUEST_FAILED_STRING;
case (11200):
return SAFE_RATE_VIOLATION_STRING;
case (11201):
@ -465,9 +510,15 @@ const char *translateEvents(Event event) {
case (11203):
return MEKF_INVALID_INFO_STRING;
case (11204):
return MEKF_INVALID_MODE_VIOLATION_STRING;
return MEKF_RECOVERY_STRING;
case (11205):
return MEKF_AUTOMATIC_RESET_STRING;
case (11206):
return MEKF_INVALID_MODE_VIOLATION_STRING;
case (11207):
return SAFE_MODE_CONTROLLER_FAILURE_STRING;
case (11208):
return TLE_TOO_OLD_STRING;
case (11300):
return SWITCH_CMD_SENT_STRING;
case (11301):
@ -476,6 +527,16 @@ const char *translateEvents(Event event) {
return SWITCHING_Q7S_DENIED_STRING;
case (11303):
return FDIR_REACTION_IGNORED_STRING;
case (11304):
return DATASET_READ_FAILED_STRING;
case (11305):
return VOLTAGE_OUT_OF_BOUNDS_STRING;
case (11306):
return TIMEDELTA_OUT_OF_BOUNDS_STRING;
case (11307):
return POWER_LEVEL_LOW_STRING;
case (11308):
return POWER_LEVEL_CRITICAL_STRING;
case (11400):
return GPIO_PULL_HIGH_FAILED_STRING;
case (11401):
@ -522,6 +583,10 @@ const char *translateEvents(Event event) {
return MPSOC_HANDLER_SEQUENCE_COUNT_MISMATCH_STRING;
case (11606):
return MPSOC_SHUTDOWN_FAILED_STRING;
case (11607):
return SUPV_NOT_ON_STRING;
case (11608):
return SUPV_REPLY_TIMEOUT_STRING;
case (11701):
return SELF_TEST_I2C_FAILURE_STRING;
case (11702):
@ -546,6 +611,8 @@ const char *translateEvents(Event event) {
return BOOTING_FIRMWARE_FAILED_EVENT_STRING;
case (11902):
return BOOTING_BOOTLOADER_FAILED_EVENT_STRING;
case (11903):
return COM_ERROR_REPLY_RECEIVED_STRING;
case (12001):
return SUPV_MEMORY_READ_RPT_CRC_FAILURE_STRING;
case (12002):
@ -562,6 +629,10 @@ const char *translateEvents(Event event) {
return SUPV_HELPER_EXECUTING_STRING;
case (12008):
return SUPV_MPSOC_SHUTDOWN_BUILD_FAILED_STRING;
case (12009):
return SUPV_ACK_UNKNOWN_COMMAND_STRING;
case (12010):
return SUPV_EXE_ACK_UNKNOWN_COMMAND_STRING;
case (12100):
return SANITIZATION_FAILED_STRING;
case (12101):
@ -591,9 +662,17 @@ const char *translateEvents(Event event) {
case (12409):
return WRITE_SYSCALL_ERROR_PDEC_STRING;
case (12410):
return PDEC_RESET_FAILED_STRING;
return PDEC_TRYING_RESET_WITH_INIT_STRING;
case (12411):
return PDEC_TRYING_RESET_NO_INIT_STRING;
case (12412):
return PDEC_RESET_FAILED_STRING;
case (12413):
return OPEN_IRQ_FILE_FAILED_STRING;
case (12414):
return PDEC_INIT_FAILED_STRING;
case (12415):
return PDEC_CONFIG_CORRUPTED_STRING;
case (12500):
return IMAGE_UPLOAD_FAILED_STRING;
case (12501):
@ -617,16 +696,16 @@ const char *translateEvents(Event event) {
case (12510):
return STR_HELPER_COM_ERROR_STRING;
case (12511):
return STR_HELPER_NO_REPLY_STRING;
case (12512):
return STR_HELPER_DEC_ERROR_STRING;
return STR_COM_REPLY_TIMEOUT_STRING;
case (12513):
return POSITION_MISMATCH_STRING;
return STR_HELPER_DEC_ERROR_STRING;
case (12514):
return STR_HELPER_FILE_NOT_EXISTS_STRING;
return POSITION_MISMATCH_STRING;
case (12515):
return STR_HELPER_SENDING_PACKET_FAILED_STRING;
return STR_HELPER_FILE_NOT_EXISTS_STRING;
case (12516):
return STR_HELPER_SENDING_PACKET_FAILED_STRING;
case (12517):
return STR_HELPER_REQUESTING_MSG_FAILED_STRING;
case (12600):
return MPSOC_FLASH_WRITE_FAILED_STRING;
@ -656,6 +735,14 @@ const char *translateEvents(Event event) {
return MPSOC_TM_SIZE_ERROR_STRING;
case (12613):
return MPSOC_TM_CRC_MISSMATCH_STRING;
case (12614):
return MPSOC_FLASH_READ_PACKET_ERROR_STRING;
case (12615):
return MPSOC_FLASH_READ_FAILED_STRING;
case (12616):
return MPSOC_FLASH_READ_SUCCESSFUL_STRING;
case (12617):
return MPSOC_READ_TIMEOUT_STRING;
case (12700):
return TRANSITION_BACK_TO_OFF_STRING;
case (12701):
@ -688,6 +775,16 @@ const char *translateEvents(Event event) {
return POWER_STATE_MACHINE_TIMEOUT_STRING;
case (12803):
return SIDE_SWITCH_TRANSITION_NOT_ALLOWED_STRING;
case (12804):
return DIRECT_TRANSITION_TO_DUAL_OTHER_GPS_FAULTY_STRING;
case (12900):
return TRANSITION_OTHER_SIDE_FAILED_12900_STRING;
case (12901):
return NOT_ENOUGH_DEVICES_DUAL_MODE_12901_STRING;
case (12902):
return POWER_STATE_MACHINE_TIMEOUT_12902_STRING;
case (12903):
return SIDE_SWITCH_TRANSITION_NOT_ALLOWED_12903_STRING;
case (13000):
return CHILDREN_LOST_MODE_STRING;
case (13100):
@ -764,6 +861,8 @@ const char *translateEvents(Event event) {
return EXPERIMENT_TIMEDOUT_STRING;
case (13802):
return MULTI_PACKET_COMMAND_DONE_STRING;
case (13803):
return FS_UNUSABLE_STRING;
case (13901):
return SET_CONFIGFILEVALUE_FAILED_STRING;
case (13902):
@ -793,21 +892,37 @@ const char *translateEvents(Event event) {
case (14008):
return INDIVIDUAL_BOOT_COUNTS_STRING;
case (14010):
return I2C_UNAVAILABLE_REBOOT_STRING;
return TRYING_I2C_RECOVERY_STRING;
case (14011):
return I2C_REBOOT_STRING;
case (14012):
return PDEC_REBOOT_STRING;
case (14013):
return FIRMWARE_INFO_STRING;
case (14014):
return ACTIVE_SD_INFO_STRING;
case (14100):
return NO_VALID_SENSOR_TEMPERATURE_STRING;
case (14101):
return NO_HEALTHY_HEATER_AVAILABLE_STRING;
case (14102):
return SYRLINKS_OVERHEATING_STRING;
case (14103):
return PLOC_OVERHEATING_STRING;
case (14104):
return OBC_OVERHEATING_STRING;
case (14105):
return HPA_OVERHEATING_STRING;
return CAMERA_OVERHEATING_STRING;
case (14106):
return PLPCDU_OVERHEATING_STRING;
return PCDU_SYSTEM_OVERHEATING_STRING;
case (14107):
return HEATER_NOT_OFF_FOR_OFF_MODE_STRING;
case (14108):
return MGT_OVERHEATING_STRING;
case (14109):
return TCS_SWITCHING_HEATER_ON_STRING;
case (14110):
return TCS_SWITCHING_HEATER_OFF_STRING;
case (14111):
return TCS_HEATER_MAX_BURN_TIME_REACHED_STRING;
case (14201):
return TX_TIMER_EXPIRED_STRING;
case (14202):
@ -818,8 +933,6 @@ const char *translateEvents(Event event) {
return FILE_TOO_LARGE_STRING;
case (14302):
return BUSY_DUMPING_EVENT_STRING;
case (14303):
return DUMP_WAS_CANCELLED_STRING;
case (14305):
return DUMP_OK_STORE_DONE_STRING;
case (14306):
@ -830,6 +943,22 @@ const char *translateEvents(Event event) {
return DUMP_HK_STORE_DONE_STRING;
case (14309):
return DUMP_CFDP_STORE_DONE_STRING;
case (14310):
return DUMP_OK_CANCELLED_STRING;
case (14311):
return DUMP_NOK_CANCELLED_STRING;
case (14312):
return DUMP_MISC_CANCELLED_STRING;
case (14313):
return DUMP_HK_CANCELLED_STRING;
case (14314):
return DUMP_CFDP_CANCELLED_STRING;
case (14500):
return TEMPERATURE_ALL_ONES_START_STRING;
case (14501):
return TEMPERATURE_ALL_ONES_RECOVERY_STRING;
case (14600):
return FAULT_HANDLER_TRIGGERED_STRING;
default:
return "UNKNOWN_EVENT";
}

View File

@ -1,15 +1,17 @@
/**
* @brief Auto-generated object translation file.
* @details
* Contains 169 translations.
* Generated on: 2023-03-21 23:59:36
* Contains 175 translations.
* Generated on: 2023-11-29 15:14:46
*/
#include "translateObjects.h"
const char *TEST_TASK_STRING = "TEST_TASK";
const char *ACS_CONTROLLER_STRING = "ACS_CONTROLLER";
const char *CORE_CONTROLLER_STRING = "CORE_CONTROLLER";
const char *POWER_CONTROLLER_STRING = "POWER_CONTROLLER";
const char *GLOBAL_JSON_CFG_STRING = "GLOBAL_JSON_CFG";
const char *XIPHOS_WDT_STRING = "XIPHOS_WDT";
const char *THERMAL_CONTROLLER_STRING = "THERMAL_CONTROLLER";
const char *DUMMY_HANDLER_STRING = "DUMMY_HANDLER";
const char *MGM_0_LIS3_HANDLER_STRING = "MGM_0_LIS3_HANDLER";
@ -38,6 +40,8 @@ const char *GYRO_3_L3G_HANDLER_STRING = "GYRO_3_L3G_HANDLER";
const char *RW4_STRING = "RW4";
const char *STAR_TRACKER_STRING = "STAR_TRACKER";
const char *GPS_CONTROLLER_STRING = "GPS_CONTROLLER";
const char *GPS_0_HEALTH_DEV_STRING = "GPS_0_HEALTH_DEV";
const char *GPS_1_HEALTH_DEV_STRING = "GPS_1_HEALTH_DEV";
const char *IMTQ_POLLING_STRING = "IMTQ_POLLING";
const char *IMTQ_HANDLER_STRING = "IMTQ_HANDLER";
const char *PCDU_HANDLER_STRING = "PCDU_HANDLER";
@ -50,7 +54,7 @@ const char *PLPCDU_HANDLER_STRING = "PLPCDU_HANDLER";
const char *RAD_SENSOR_STRING = "RAD_SENSOR";
const char *PLOC_UPDATER_STRING = "PLOC_UPDATER";
const char *PLOC_MEMORY_DUMPER_STRING = "PLOC_MEMORY_DUMPER";
const char *STR_HELPER_STRING = "STR_HELPER";
const char *STR_COM_IF_STRING = "STR_COM_IF";
const char *PLOC_MPSOC_HELPER_STRING = "PLOC_MPSOC_HELPER";
const char *AXI_PTME_CONFIG_STRING = "AXI_PTME_CONFIG";
const char *PTME_CONFIG_STRING = "PTME_CONFIG";
@ -86,6 +90,7 @@ const char *RTD_13_IC16_PLPCDU_HEATSPREADER_STRING = "RTD_13_IC16_PLPCDU_HEATSPR
const char *RTD_14_IC17_TCS_BOARD_STRING = "RTD_14_IC17_TCS_BOARD";
const char *RTD_15_IC18_IMTQ_STRING = "RTD_15_IC18_IMTQ";
const char *SYRLINKS_HANDLER_STRING = "SYRLINKS_HANDLER";
const char *SYRLINKS_COM_HANDLER_STRING = "SYRLINKS_COM_HANDLER";
const char *ARDUINO_COM_IF_STRING = "ARDUINO_COM_IF";
const char *DUMMY_COM_IF_STRING = "DUMMY_COM_IF";
const char *SCEX_UART_READER_STRING = "SCEX_UART_READER";
@ -156,11 +161,13 @@ const char *PUS_TM_FUNNEL_STRING = "PUS_TM_FUNNEL";
const char *CFDP_TM_FUNNEL_STRING = "CFDP_TM_FUNNEL";
const char *CFDP_HANDLER_STRING = "CFDP_HANDLER";
const char *CFDP_DISTRIBUTOR_STRING = "CFDP_DISTRIBUTOR";
const char *CFDP_FAULT_HANDLER_STRING = "CFDP_FAULT_HANDLER";
const char *EIVE_SYSTEM_STRING = "EIVE_SYSTEM";
const char *ACS_SUBSYSTEM_STRING = "ACS_SUBSYSTEM";
const char *PL_SUBSYSTEM_STRING = "PL_SUBSYSTEM";
const char *TCS_SUBSYSTEM_STRING = "TCS_SUBSYSTEM";
const char *COM_SUBSYSTEM_STRING = "COM_SUBSYSTEM";
const char *EPS_SUBSYSTEM_STRING = "EPS_SUBSYSTEM";
const char *MISC_TM_STORE_STRING = "MISC_TM_STORE";
const char *OK_TM_STORE_STRING = "OK_TM_STORE";
const char *NOT_OK_TM_STORE_STRING = "NOT_OK_TM_STORE";
@ -171,7 +178,6 @@ const char *LOG_STORE_AND_TM_TASK_STRING = "LOG_STORE_AND_TM_TASK";
const char *HK_STORE_AND_TM_TASK_STRING = "HK_STORE_AND_TM_TASK";
const char *CFDP_STORE_AND_TM_TASK_STRING = "CFDP_STORE_AND_TM_TASK";
const char *DOWNLINK_RAM_STORE_STRING = "DOWNLINK_RAM_STORE";
const char *CCSDS_IP_CORE_BRIDGE_STRING = "CCSDS_IP_CORE_BRIDGE";
const char *THERMAL_TEMP_INSERTER_STRING = "THERMAL_TEMP_INSERTER";
const char *DUMMY_INTERFACE_STRING = "DUMMY_INTERFACE";
const char *NO_OBJECT_STRING = "NO_OBJECT";
@ -184,8 +190,12 @@ const char *translateObject(object_id_t object) {
return ACS_CONTROLLER_STRING;
case 0x43000003:
return CORE_CONTROLLER_STRING;
case 0x43000004:
return POWER_CONTROLLER_STRING;
case 0x43000006:
return GLOBAL_JSON_CFG_STRING;
case 0x43000007:
return XIPHOS_WDT_STRING;
case 0x43400001:
return THERMAL_CONTROLLER_STRING;
case 0x44000001:
@ -242,6 +252,10 @@ const char *translateObject(object_id_t object) {
return STAR_TRACKER_STRING;
case 0x44130045:
return GPS_CONTROLLER_STRING;
case 0x44130046:
return GPS_0_HEALTH_DEV_STRING;
case 0x44130047:
return GPS_1_HEALTH_DEV_STRING;
case 0x44140013:
return IMTQ_POLLING_STRING;
case 0x44140014:
@ -267,7 +281,7 @@ const char *translateObject(object_id_t object) {
case 0x44330001:
return PLOC_MEMORY_DUMPER_STRING;
case 0x44330002:
return STR_HELPER_STRING;
return STR_COM_IF_STRING;
case 0x44330003:
return PLOC_MPSOC_HELPER_STRING;
case 0x44330004:
@ -338,6 +352,8 @@ const char *translateObject(object_id_t object) {
return RTD_15_IC18_IMTQ_STRING;
case 0x445300A3:
return SYRLINKS_HANDLER_STRING;
case 0x445300A4:
return SYRLINKS_COM_HANDLER_STRING;
case 0x49000001:
return ARDUINO_COM_IF_STRING;
case 0x49000002:
@ -478,6 +494,8 @@ const char *translateObject(object_id_t object) {
return CFDP_HANDLER_STRING;
case 0x73000206:
return CFDP_DISTRIBUTOR_STRING;
case 0x73000207:
return CFDP_FAULT_HANDLER_STRING;
case 0x73010000:
return EIVE_SYSTEM_STRING;
case 0x73010001:
@ -488,6 +506,8 @@ const char *translateObject(object_id_t object) {
return TCS_SUBSYSTEM_STRING;
case 0x73010004:
return COM_SUBSYSTEM_STRING;
case 0x73010005:
return EPS_SUBSYSTEM_STRING;
case 0x73020001:
return MISC_TM_STORE_STRING;
case 0x73020002:
@ -508,8 +528,6 @@ const char *translateObject(object_id_t object) {
return CFDP_STORE_AND_TM_TASK_STRING;
case 0x73040004:
return DOWNLINK_RAM_STORE_STRING;
case 0x73500000:
return CCSDS_IP_CORE_BRIDGE_STRING;
case 0x90000003:
return THERMAL_TEMP_INSERTER_STRING;
case 0xCAFECAFE:

View File

@ -1,16 +1,17 @@
#include "ObjectFactory.h"
#include "objectFactory.h"
#include <fsfw/power/DummyPowerSwitcher.h>
#include <fsfw/tmtcservices/CommandingServiceBase.h>
#include <fsfw/tmtcservices/PusServiceBase.h>
#include <mission/controller/ThermalController.h>
#include <mission/core/GenericFactory.h>
#include <mission/genericFactory.h>
#include <mission/tmtc/TmFunnelHandler.h>
#include <objects/systemObjectList.h>
#include "../mission/utility/DummySdCardManager.h"
#include "OBSWConfig.h"
#include "fsfw/platform.h"
#include "fsfw/power/PowerSwitchIF.h"
#include "fsfw_tests/integration/task/TestTask.h"
#if OBSW_ADD_TMTC_UDP_SERVER == 1
@ -29,7 +30,7 @@
#include <dummies/AcuDummy.h>
#include <dummies/CoreControllerDummy.h>
#include "dummies/helpers.h"
#include "dummies/helperFactory.h"
#ifdef PLATFORM_UNIX
#include <fsfw_hal/linux/serial/SerialComIF.h>
@ -37,10 +38,10 @@
#include "devices/gpioIds.h"
#include "fsfw_hal/linux/gpio/Gpio.h"
#include "linux/devices/ploc/PlocMPSoCHandler.h"
#include "linux/devices/ploc/PlocMPSoCHelper.h"
#include "linux/devices/ploc/PlocSupervisorHandler.h"
#include "linux/devices/ploc/PlocSupvUartMan.h"
#include "linux/payload/FreshSupvHandler.h"
#include "linux/payload/PlocMpsocHandler.h"
#include "linux/payload/PlocMpsocSpecialComHelper.h"
#include "linux/payload/PlocSupvUartMan.h"
#include "test/gpio/DummyGpioIF.h"
#endif
@ -60,13 +61,24 @@ void ObjectFactory::produce(void* args) {
CfdpTmFunnel* cfdpFunnel;
StorageManagerIF* tmStore;
StorageManagerIF* ipcStore;
PersistentTmStores persistentStores;
PersistentTmStores persistentStores{};
bool enableHkSets = false;
#if OBSW_ENABLE_PERIODIC_HK == 1
enableHkSets = true;
#endif
auto sdcMan = new DummySdCardManager("/tmp");
ObjectFactory::produceGenericObjects(nullptr, &pusFunnel, &cfdpFunnel, *sdcMan, &ipcStore,
&tmStore, persistentStores);
&tmStore, persistentStores, 120, enableHkSets, false);
new TmFunnelHandler(objects::LIVE_TM_TASK, *pusFunnel, *cfdpFunnel);
auto* dummyGpioIF = new DummyGpioIF();
auto* dummySwitcher = new DummyPowerSwitcher(objects::PCDU_HANDLER, 18, 0);
std::vector<ReturnValue_t> switcherList;
auto initVal = PowerSwitchIF::SWITCH_OFF;
for (unsigned i = 0; i < 18; i++) {
switcherList.emplace_back(initVal);
}
dummySwitcher->setInitialSwitcherList(switcherList);
#ifdef PLATFORM_UNIX
new SerialComIF(objects::UART_COM_IF);
#if OBSW_ADD_PLOC_MPSOC == 1
@ -74,8 +86,8 @@ void ObjectFactory::produce(void* args) {
auto mpsocCookie = new UartCookie(objects::PLOC_MPSOC_HANDLER, mpscoDev, uart::PLOC_MPSOC_BAUD,
mpsoc::MAX_REPLY_SIZE, UartModes::NON_CANONICAL);
mpsocCookie->setNoFixedSizeReply();
auto plocMpsocHelper = new PlocMPSoCHelper(objects::PLOC_MPSOC_HELPER);
new PlocMPSoCHandler(objects::PLOC_MPSOC_HANDLER, objects::UART_COM_IF, mpsocCookie,
auto plocMpsocHelper = new PlocMpsocSpecialComHelper(objects::PLOC_MPSOC_HELPER);
new PlocMpsocHandler(objects::PLOC_MPSOC_HANDLER, objects::UART_COM_IF, mpsocCookie,
plocMpsocHelper, Gpio(gpioIds::ENABLE_MPSOC_UART, dummyGpioIF),
objects::PLOC_SUPERVISOR_HANDLER);
#endif /* OBSW_ADD_PLOC_MPSOC == 1 */
@ -85,15 +97,18 @@ void ObjectFactory::produce(void* args) {
new SerialCookie(objects::PLOC_SUPERVISOR_HANDLER, plocSupvString, uart::PLOC_SUPV_BAUD,
supv::MAX_PACKET_SIZE * 20, UartModes::NON_CANONICAL);
supervisorCookie->setNoFixedSizeReply();
auto supvHelper = new PlocSupvUartManager(objects::PLOC_SUPERVISOR_HELPER);
new PlocSupervisorHandler(objects::PLOC_SUPERVISOR_HANDLER, supervisorCookie,
Gpio(gpioIds::ENABLE_SUPV_UART, dummyGpioIF), pcdu::PDU1_CH6_PLOC_12V,
*supvHelper);
new PlocSupvUartManager(objects::PLOC_SUPERVISOR_HELPER);
DhbConfig dhbConf(objects::PLOC_SUPERVISOR_HANDLER);
auto* supvHandler =
new FreshSupvHandler(dhbConf, supervisorCookie, Gpio(gpioIds::ENABLE_SUPV_UART, dummyGpioIF),
dummySwitcher, power::PDU1_CH6_PLOC_12V);
#endif /* OBSW_ADD_PLOC_SUPERVISOR == 1 */
#endif
dummy::DummyCfg cfg;
dummy::createDummies(cfg, *dummySwitcher, dummyGpioIF);
cfg.addPlPcduDummy = true;
cfg.addCamSwitcherDummy = true;
dummy::createDummies(cfg, *dummySwitcher, dummyGpioIF, enableHkSets);
HeaterHandler* heaterHandler = nullptr;
// new ThermalController(objects::THERMAL_CONTROLLER);
@ -101,7 +116,7 @@ void ObjectFactory::produce(void* args) {
if (heaterHandler == nullptr) {
sif::error << "HeaterHandler could not be created" << std::endl;
} else {
ObjectFactory::createThermalController(*heaterHandler);
ObjectFactory::createThermalController(*heaterHandler, true);
}
new TestTask(objects::TEST_TASK);
}

View File

@ -13,8 +13,8 @@
#include <iostream>
#include "OBSWConfig.h"
#include "ObjectFactory.h"
#include "mission/core/scheduling.h"
#include "mission/scheduling.h"
#include "objectFactory.h"
#include "scheduling.h"
#ifdef LINUX
@ -59,35 +59,35 @@ void scheduling::initTasks() {
"DIST", 60, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.2, missedDeadlineFunc);
ReturnValue_t result = tmtcDistributor->addComponent(objects::CCSDS_PACKET_DISTRIBUTOR);
if (result != returnvalue::OK) {
sif::error << "adding CCSDS distributor failed" << std::endl;
sif::error << "Adding CCSDS distributor failed" << std::endl;
}
result = tmtcDistributor->addComponent(objects::PUS_PACKET_DISTRIBUTOR);
if (result != returnvalue::OK) {
sif::error << "adding PUS distributor failed" << std::endl;
}
result = tmtcDistributor->addComponent(objects::TM_FUNNEL);
if (result != returnvalue::OK) {
sif::error << "adding TM funnel failed" << std::endl;
sif::error << "Adding PUS distributor failed" << std::endl;
}
result = tmtcDistributor->addComponent(objects::CFDP_DISTRIBUTOR);
if (result != returnvalue::OK) {
sif::error << "adding CFDP distributor failed" << std::endl;
sif::error << "Adding CFDP distributor failed" << std::endl;
}
#if OBSW_ADD_TMTC_UDP_SERVER == 1
result = tmtcDistributor->addComponent(objects::UDP_TMTC_SERVER);
if (result != returnvalue::OK) {
sif::error << "adding UDP server failed" << std::endl;
}
#endif
result = tmtcDistributor->addComponent(objects::TCP_TMTC_SERVER);
if (result != returnvalue::OK) {
sif::error << "adding TCP server failed" << std::endl;
}
#if OBSW_ADD_TMTC_UDP_SERVER == 1
PeriodicTaskIF* udpPollingTask = factory->createPeriodicTask(
"UDP_POLLING", 70, PeriodicTaskIF::MINIMUM_STACK_SIZE, 2.0, missedDeadlineFunc);
result = udpPollingTask->addComponent(objects::UDP_TMTC_POLLING_TASK);
if (result != returnvalue::OK) {
sif::error << "Add component UDP Polling failed" << std::endl;
}
#endif
PeriodicTaskIF* tcpPollingTask = factory->createPeriodicTask(
"TCP_POLLING", 70, PeriodicTaskIF::MINIMUM_STACK_SIZE, 2.0, missedDeadlineFunc);
result = tcpPollingTask->addComponent(objects::TCP_TMTC_POLLING_TASK);
@ -95,6 +95,13 @@ void scheduling::initTasks() {
sif::error << "Add component UDP Polling failed" << std::endl;
}
PeriodicTaskIF* liveTmTask = factory->createPeriodicTask(
"LIVE_TM", 55, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.2, nullptr, &RR_SCHEDULING);
result = liveTmTask->addComponent(objects::LIVE_TM_TASK);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("LIVE_TM", objects::LIVE_TM_TASK);
}
PeriodicTaskIF* pusHighPrio = factory->createPeriodicTask(
"PUS_HIGH_PRIO", 60, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.200, missedDeadlineFunc);
result = pusHighPrio->addComponent(objects::PUS_SERVICE_1_VERIFICATION);
@ -149,13 +156,16 @@ void scheduling::initTasks() {
"THERMAL_CTL_TASK", 40, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.0, missedDeadlineFunc);
result = thermalTask->addComponent(objects::CORE_CONTROLLER);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("Core controller dummy", objects::CORE_CONTROLLER);
scheduling::printAddObjectError("CORE_CTRL", objects::CORE_CONTROLLER);
}
result = thermalTask->addComponent(objects::THERMAL_CONTROLLER);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("THERMAL_CONTROLLER", objects::THERMAL_CONTROLLER);
}
result = thermalTask->addComponent(objects::HEATER_HANDLER);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("HEATER_HANDLER", objects::HEATER_HANDLER);
}
FixedTimeslotTaskIF* pstTask = factory->createFixedTimeslotTask(
"DUMMY_PST", 75, PeriodicTaskIF::MINIMUM_STACK_SIZE * 4, 0.5, missedDeadlineFunc);
@ -173,6 +183,28 @@ void scheduling::initTasks() {
}
#endif
// If those are added at a later stage..
/*
PeriodicTaskIF* logTmTask = factory->createPeriodicTask(
"LOG_PSTORE", 0, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.0, nullptr);
result = logTmTask->addComponent(objects::LOG_STORE_AND_TM_TASK);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("LOG_STORE_AND_TM", objects::LOG_STORE_AND_TM_TASK);
}
PeriodicTaskIF* hkTmTask =
factory->createPeriodicTask("HK_PSTORE", 0, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.0, nullptr);
result = hkTmTask->addComponent(objects::HK_STORE_AND_TM_TASK);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("HK_STORE_AND_TM", objects::HK_STORE_AND_TM_TASK);
}
PeriodicTaskIF* cfdpTmTask = factory->createPeriodicTask(
"CFDP_PSTORE", 0, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.0, nullptr);
result = cfdpTmTask->addComponent(objects::CFDP_STORE_AND_TM_TASK);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("CFDP_STORE_AND_TM", objects::CFDP_STORE_AND_TM_TASK);
}
*/
#if OBSW_ADD_PLOC_SUPERVISOR == 1
PeriodicTaskIF* supvHelperTask = factory->createPeriodicTask(
"PLOC_SUPV_HELPER", 20, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.0, missedDeadlineFunc);
@ -193,8 +225,9 @@ void scheduling::initTasks() {
#endif /* OBSW_ADD_TEST_CODE == 1 */
PeriodicTaskIF* dummyTask = factory->createPeriodicTask(
"DUMMY_TASK", 30, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.0, missedDeadlineFunc);
scheduling::scheduleTmpTempSensors(dummyTask);
"DUMMY_TASK", 35, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.8, missedDeadlineFunc);
dummyTask->addComponent(objects::THERMAL_TEMP_INSERTER);
scheduling::scheduleTmpTempSensors(dummyTask, true);
scheduling::scheduleRtdSensors(dummyTask);
dummyTask->addComponent(objects::SUS_0_N_LOC_XFYFZM_PT_XF);
dummyTask->addComponent(objects::SUS_1_N_LOC_XBYFZM_PT_XB);
@ -211,8 +244,11 @@ void scheduling::initTasks() {
sif::info << "Starting tasks.." << std::endl;
tmtcDistributor->startTask();
#if OBSW_ADD_TMTC_UDP_SERVER == 1
udpPollingTask->startTask();
#endif
tcpPollingTask->startTask();
liveTmTask->startTask();
pusHighPrio->startTask();
pusMedPrio->startTask();
@ -220,6 +256,12 @@ void scheduling::initTasks() {
pstTask->startTask();
thermalTask->startTask();
dummyTask->startTask();
// If those are added at a later stage..
// logTmTask->startTask();
// cfdpTmTask->startTask();
// hkTmTask->startTask();
#if OBSW_ADD_PLOC_SUPERVISOR == 1
supvHelperTask->startTask();
#endif

View File

@ -7,12 +7,12 @@ target_link_libraries(${SIMPLE_OBSW_NAME} PUBLIC ${LIB_FSFW_NAME})
target_compile_definitions(${SIMPLE_OBSW_NAME} PRIVATE "Q7S_SIMPLE_MODE")
add_subdirectory(simple)
target_sources(${OBSW_NAME} PUBLIC main.cpp obsw.cpp)
target_sources(${OBSW_NAME} PUBLIC main.cpp obsw.cpp scheduling.cpp
objectFactory.cpp)
add_subdirectory(boardtest)
add_subdirectory(boardconfig)
add_subdirectory(comIF)
add_subdirectory(core)
if(EIVE_Q7S_EM)
@ -25,3 +25,4 @@ add_subdirectory(memory)
add_subdirectory(callbacks)
add_subdirectory(xadc)
add_subdirectory(fs)
add_subdirectory(acs)

View File

@ -13,13 +13,18 @@
/** All of the following flags should be enabled for mission code */
/*******************************************************************/
#define OBSW_ENABLE_PERIODIC_HK 0
#define OBSW_ENABLE_SYRLINKS_TRANSMIT_TIMEOUT 0
// This enables a lot of periodically generated telemetry, so it can make sense to
// disable this for debugging purposes.
#define OBSW_ENABLE_PERIODIC_HK @OBSW_ENABLE_PERIODIC_HK@
// This switch will cause the SW to command the EIVE system object to safe mode. This will
// trigger a lot of events, so it can make sense to disable this for debugging purposes
// trigger a lot of events, so it can make sense to disable this for debugging purposes.
#define OBSW_COMMAND_SAFE_MODE_AT_STARTUP 1
#define OBSW_ADD_GOMSPACE_PCDU @OBSW_ADD_GOMSPACE_PCDU@
// This define is necessary because the EM setup has the P60 dock module, but no ACU on the P60
// module because it broke.
#define OBSW_ADD_GOMSPACE_ACU @OBSW_ADD_GOMSPACE_ACU@
#define OBSW_ADD_MGT @OBSW_ADD_MGT@
#define OBSW_ADD_BPX_BATTERY_HANDLER @OBSW_ADD_BPX_BATTERY_HANDLER@
#define OBSW_ADD_STAR_TRACKER @OBSW_ADD_STAR_TRACKER@
@ -29,8 +34,8 @@
#define OBSW_ADD_SUS_BOARD_ASS @OBSW_ADD_SUS_BOARD_ASS@
#define OBSW_ADD_ACS_BOARD @OBSW_ADD_ACS_BOARD@
#define OBSW_ADD_ACS_CTRL 1
#define OBSW_ADD_TCS_CTRL 1
#define OBSW_ADD_GPS_CTRL @OBSW_ADD_GPS_CTRL@
#define OBSW_ADD_TCS_CTRL @OBSW_ADD_TCS_CTRL@
#define OBSW_ADD_RW @OBSW_ADD_RW@
#define OBSW_ADD_RTD_DEVICES @OBSW_ADD_RTD_DEVICES@
#define OBSW_ADD_SA_DEPL @OBSW_ADD_SA_DEPL@
@ -41,6 +46,9 @@
#define OBSW_ADD_PL_PCDU @OBSW_ADD_PL_PCDU@
#define OBSW_ADD_SYRLINKS @OBSW_ADD_SYRLINKS@
#define OBSW_ADD_CCSDS_IP_CORES @OBSW_ADD_CCSDS_IP_CORES@
// Only relevant for EM for TCS tests.
#define OBSW_ADD_THERMAL_TEMP_INSERTER @OBSW_ADD_THERMAL_TEMP_INSERTER@
// Set to 1 if all telemetry should be sent to the PTME IP Core
#define OBSW_TM_TO_PTME @OBSW_TM_TO_PTME@
// Set to 1 if telecommands are received via the PDEC IP Core
@ -59,12 +67,12 @@
// because UDP packets are not allowed in the VPN
// This will cause the OBSW to initialize the TMTC bridge responsible for exchanging data with the
// CCSDS IP Cores.
#define OBSW_ADD_TMTC_TCP_SERVER 1
#define OBSW_ADD_TMTC_UDP_SERVER 1
#define OBSW_ADD_TMTC_TCP_SERVER @OBSW_ADD_TMTC_TCP_SERVER@
#define OBSW_ADD_TMTC_UDP_SERVER @OBSW_ADD_TMTC_UDP_SERVER@
// Can be used to switch device to NORMAL mode immediately
#define OBSW_SWITCH_TO_NORMAL_MODE_AFTER_STARTUP 0
#define OBSW_PRINT_MISSED_DEADLINES 1
#define OBSW_PRINT_MISSED_DEADLINES 0
#define OBSW_MPSOC_JTAG_BOOT 0
#define OBSW_STAR_TRACKER_GROUND_CONFIG @OBSW_STAR_TRACKER_GROUND_CONFIG@

View File

@ -0,0 +1 @@
# target_sources(${OBSW_NAME} PUBLIC <Source File List>)

View File

@ -0,0 +1,23 @@
#include <optional>
#include "bsp_q7s/fs/SdCardManager.h"
#include "mission/acs/str/strHelpers.h"
class StrConfigPathGetter : public startracker::SdCardConfigPathGetter {
public:
StrConfigPathGetter(SdCardManager& sdcMan) : sdcMan(sdcMan) {}
std::optional<std::string> getCfgPath() override {
if (!sdcMan.isSdCardUsable(std::nullopt)) {
return std::nullopt;
}
if (sdcMan.getActiveSdCard() == sd::SdCard::SLOT_1) {
return std::string("/mnt/sd1/startracker/flight-config.json");
} else {
return std::string("/mnt/sd0/startracker/flight-config.json");
}
}
private:
SdCardManager& sdcMan;
};

View File

@ -12,10 +12,14 @@ static constexpr char SPI_RW_DEV[] = "/dev/spi_rw";
static constexpr char I2C_PL_EIVE[] = "/dev/i2c_pl";
//! I2C bus using the I2C peripheral of the ARM processing system (PS)
static constexpr char I2C_PS_EIVE[] = "/dev/i2c_ps";
//! I2C bus using the first I2C peripheral of the ARM processing system (PS).
//! Named like this because it is used by default for the Q7 devices.
static constexpr char I2C_Q7_EIVE[] = "/dev/i2c_q7";
static constexpr char UART_GNSS_DEV[] = "/dev/gps0";
static constexpr char UART_PLOC_MPSOC_DEV[] = "/dev/ul_plmpsoc";
static constexpr char UART_PLOC_SUPERVSIOR_DEV[] = "/dev/ploc_supv";
static constexpr char UART_PLOC_SUPERVISOR_DEV_FALLBACK[] = "/dev/ttyUL4";
static constexpr char UART_PLOC_SUPERVISOR_DEV[] = "/dev/ploc_supv";
static constexpr char UART_SYRLINKS_DEV[] = "/dev/ul_syrlinks";
static constexpr char UART_STAR_TRACKER_DEV[] = "/dev/ul_str";
static constexpr char UART_SCEX_DEV[] = "/dev/scex";
@ -23,6 +27,7 @@ static constexpr char UART_SCEX_DEV[] = "/dev/scex";
static constexpr char UIO_PDEC_REGISTERS[] = "/dev/uio_pdec_regs";
static constexpr char UIO_PTME[] = "/dev/uio_ptme";
static constexpr char UIO_PDEC_CONFIG_MEMORY[] = "/dev/uio_pdec_cfg_mem";
static constexpr char UIO_SYS_ROM[] = "/dev/uio_sys_rom";
static constexpr char UIO_PDEC_RAM[] = "/dev/uio_pdec_ram";
static constexpr char UIO_PDEC_IRQ[] = "/dev/uio_pdec_irq";
static constexpr int MAP_ID_PTME_CONFIG = 3;
@ -57,6 +62,7 @@ static constexpr char GYRO_0_ENABLE[] = "enable_gyro_0";
static constexpr char GYRO_2_ENABLE[] = "enable_gyro_2";
static constexpr char GNSS_SELECT[] = "gnss_mux_select";
static constexpr char GNSS_MUX_SELECT[] = "gnss_mux_select";
static constexpr char PL_I2C_ARESETN[] = "pl_i2c_aresetn";
static constexpr char HEATER_0[] = "heater0";
static constexpr char HEATER_1[] = "heater1";
@ -82,14 +88,12 @@ static constexpr char EN_RW_4[] = "enable_rw_4";
static constexpr char RAD_SENSOR_CHIP_SELECT[] = "rad_sensor_chip_select";
static constexpr char ENABLE_RADFET[] = "enable_radfet";
static constexpr char PAPB_BUSY_SIGNAL_VC0[] = "papb_busy_signal_vc0";
static constexpr char PAPB_EMPTY_SIGNAL_VC0[] = "papb_empty_signal_vc0";
static constexpr char PAPB_BUSY_SIGNAL_VC1[] = "papb_busy_signal_vc1";
static constexpr char PAPB_EMPTY_SIGNAL_VC1[] = "papb_empty_signal_vc1";
static constexpr char PAPB_BUSY_SIGNAL_VC2[] = "papb_busy_signal_vc2";
static constexpr char PAPB_EMPTY_SIGNAL_VC2[] = "papb_empty_signal_vc2";
static constexpr char PAPB_BUSY_SIGNAL_VC3[] = "papb_busy_signal_vc3";
static constexpr char PAPB_EMPTY_SIGNAL_VC3[] = "papb_empty_signal_vc3";
static constexpr char PTME_RESETN[] = "ptme_resetn";
static constexpr char RS485_EN_TX_CLOCK[] = "tx_clock_enable_ltc2872";

View File

@ -218,15 +218,30 @@ void Q7STestTask::testProtHandler() {
bool opPerformed = false;
ReturnValue_t result = returnvalue::OK;
// If any chips are unlocked, lock them here
result = coreController->setBootCopyProtection(xsc::Chip::ALL_CHIP, xsc::Copy::ALL_COPY, true,
opPerformed, true);
result = coreController->setBootCopyProtectionAndUpdateFile(xsc::Chip::CHIP_0, xsc::Copy::COPY_0,
true);
if (result != returnvalue::OK) {
sif::warning << "Q7STestTask::testProtHandler: Op failed" << std::endl;
}
result = coreController->setBootCopyProtectionAndUpdateFile(xsc::Chip::CHIP_0, xsc::Copy::COPY_1,
true);
if (result != returnvalue::OK) {
sif::warning << "Q7STestTask::testProtHandler: Op failed" << std::endl;
}
result = coreController->setBootCopyProtectionAndUpdateFile(xsc::Chip::CHIP_1, xsc::Copy::COPY_0,
true);
if (result != returnvalue::OK) {
sif::warning << "Q7STestTask::testProtHandler: Op failed" << std::endl;
}
result = coreController->setBootCopyProtectionAndUpdateFile(xsc::Chip::CHIP_1, xsc::Copy::COPY_1,
true);
if (result != returnvalue::OK) {
sif::warning << "Q7STestTask::testProtHandler: Op failed" << std::endl;
}
// unlock own copy
result = coreController->setBootCopyProtection(xsc::Chip::SELF_CHIP, xsc::Copy::SELF_COPY, false,
opPerformed, true);
result = coreController->setBootCopyProtectionAndUpdateFile(xsc::Chip::SELF_CHIP,
xsc::Copy::SELF_COPY, false);
if (result != returnvalue::OK) {
sif::warning << "Q7STestTask::testProtHandler: Op failed" << std::endl;
}
@ -239,8 +254,8 @@ void Q7STestTask::testProtHandler() {
}
// lock own copy
result = coreController->setBootCopyProtection(xsc::Chip::SELF_CHIP, xsc::Copy::SELF_COPY, true,
opPerformed, true);
result = coreController->setBootCopyProtectionAndUpdateFile(xsc::Chip::SELF_CHIP,
xsc::Copy::SELF_COPY, true);
if (result != returnvalue::OK) {
sif::warning << "Q7STestTask::testProtHandler: Op failed" << std::endl;
}
@ -253,8 +268,8 @@ void Q7STestTask::testProtHandler() {
}
// unlock specific copy
result = coreController->setBootCopyProtection(xsc::Chip::CHIP_1, xsc::Copy::COPY_1, false,
opPerformed, true);
result = coreController->setBootCopyProtectionAndUpdateFile(xsc::Chip::CHIP_1, xsc::Copy::COPY_1,
false);
if (result != returnvalue::OK) {
sif::warning << "Q7STestTask::testProtHandler: Op failed" << std::endl;
}
@ -267,8 +282,8 @@ void Q7STestTask::testProtHandler() {
}
// lock specific copy
result = coreController->setBootCopyProtection(xsc::Chip::CHIP_1, xsc::Copy::COPY_1, true,
opPerformed, true);
result = coreController->setBootCopyProtectionAndUpdateFile(xsc::Chip::CHIP_1, xsc::Copy::COPY_1,
true);
if (result != returnvalue::OK) {
sif::warning << "Q7STestTask::testProtHandler: Op failed" << std::endl;
}

View File

@ -1,9 +1,9 @@
#ifndef BSP_Q7S_CALLBACKS_PCDUSWITCHCB_H_
#define BSP_Q7S_CALLBACKS_PCDUSWITCHCB_H_
#include <cstdint>
#include <mission/power/gsDefs.h>
#include "mission/devices/devicedefinitions/GomspaceDefinitions.h"
#include <cstdint>
namespace pcdu {

View File

@ -6,7 +6,7 @@
#include "fsfw/serviceinterface/ServiceInterface.h"
#include "fsfw_hal/linux/UnixFileGuard.h"
#include "fsfw_hal/linux/spi/SpiCookie.h"
#include "mission/devices/RwHandler.h"
#include "mission/acs/RwHandler.h"
namespace rwSpiCallback {
@ -252,7 +252,7 @@ ReturnValue_t openSpi(const std::string& devname, int flags, GpioIF* gpioIF, gpi
fd = open(devname.c_str(), flags);
if (fd < 0) {
sif::error << "rwSpiCallback::spiCallback: Failed to open device file" << std::endl;
return SpiComIF::OPENING_FILE_FAILED;
return spi::OPENING_FILE_FAILED;
}
// Pull SPI CS low. For now, no support for active high given

View File

@ -1 +0,0 @@
target_sources(${OBSW_NAME} PRIVATE)

View File

@ -1,4 +1,2 @@
target_sources(${OBSW_NAME} PRIVATE CoreController.cpp scheduling.cpp
ObjectFactory.cpp WatchdogHandler.cpp)
target_sources(${SIMPLE_OBSW_NAME} PRIVATE scheduling.cpp)
target_sources(${OBSW_NAME} PRIVATE CoreController.cpp WatchdogHandler.cpp
XiphosWdtHandler.cpp)

File diff suppressed because it is too large Load Diff

View File

@ -1,33 +1,30 @@
#ifndef BSP_Q7S_CORE_CORECONTROLLER_H_
#define BSP_Q7S_CORE_CORECONTROLLER_H_
#include <bsp_q7s/core/defs.h>
#include <fsfw/container/DynamicFIFO.h>
#include <fsfw/container/SimpleRingBuffer.h>
#include <fsfw/globalfunctions/PeriodicOperationDivider.h>
#include <fsfw/parameters/ParameterHelper.h>
#include <fsfw/parameters/ReceivesParameterMessagesIF.h>
#include <fsfw_hal/linux/uio/UioMapper.h>
#include <libxiphos.h>
#include <mission/acs/archive/GPSDefinitions.h>
#include <mission/utility/trace.h>
#include <atomic>
#include <cstddef>
#include "CoreDefinitions.h"
#include "OBSWConfig.h"
#include "bsp_q7s/fs/SdCardManager.h"
#include "events/subsystemIdRanges.h"
#include "fsfw/controller/ExtendedControllerBase.h"
#include "mission/devices/devicedefinitions/GPSDefinitions.h"
#include "mission/trace.h"
#include "mission/sysDefs.h"
class Timer;
class SdCardManager;
namespace xsc {
enum Chip : int { CHIP_0, CHIP_1, NO_CHIP, SELF_CHIP, ALL_CHIP };
enum Copy : int { COPY_0, COPY_1, NO_COPY, SELF_COPY, ALL_COPY };
} // namespace xsc
struct RebootFile {
struct RebootWatchdogFile {
static constexpr uint8_t DEFAULT_MAX_BOOT_CNT = 10;
bool enabled = true;
@ -48,8 +45,97 @@ struct RebootFile {
xsc::Copy mechanismNextCopy = xsc::Copy::NO_COPY;
};
class CoreController : public ExtendedControllerBase {
class RebootWatchdogPacket : public SerialLinkedListAdapter<SerializeIF> {
public:
RebootWatchdogPacket(RebootWatchdogFile& rf) {
enabled = rf.enabled;
maxCount = rf.maxCount;
img00Count = rf.img00Cnt;
img01Count = rf.img01Cnt;
img10Count = rf.img10Cnt;
img11Count = rf.img11Cnt;
img00Lock = rf.img00Lock;
img01Lock = rf.img01Lock;
img10Lock = rf.img10Lock;
img11Lock = rf.img11Lock;
lastChip = static_cast<uint8_t>(rf.lastChip);
lastCopy = static_cast<uint8_t>(rf.lastCopy);
nextChip = static_cast<uint8_t>(rf.mechanismNextChip);
nextCopy = static_cast<uint8_t>(rf.mechanismNextCopy);
setLinks();
}
private:
void setLinks() {
setStart(&enabled);
enabled.setNext(&maxCount);
maxCount.setNext(&img00Count);
img00Count.setNext(&img01Count);
img01Count.setNext(&img10Count);
img10Count.setNext(&img11Count);
img11Count.setNext(&img00Lock);
img00Lock.setNext(&img01Lock);
img01Lock.setNext(&img10Lock);
img10Lock.setNext(&img11Lock);
img11Lock.setNext(&lastChip);
lastChip.setNext(&lastCopy);
lastCopy.setNext(&nextChip);
nextChip.setNext(&nextCopy);
setLast(&nextCopy);
}
SerializeElement<uint8_t> enabled = false;
SerializeElement<uint32_t> maxCount = 0;
SerializeElement<uint32_t> img00Count = 0;
SerializeElement<uint32_t> img01Count = 0;
SerializeElement<uint32_t> img10Count = 0;
SerializeElement<uint32_t> img11Count = 0;
SerializeElement<uint8_t> img00Lock = false;
SerializeElement<uint8_t> img01Lock = false;
SerializeElement<uint8_t> img10Lock = false;
SerializeElement<uint8_t> img11Lock = false;
SerializeElement<uint8_t> lastChip = 0;
SerializeElement<uint8_t> lastCopy = 0;
SerializeElement<uint8_t> nextChip = 0;
SerializeElement<uint8_t> nextCopy = 0;
};
struct RebootCountersFile {
// 16 bit values so all boot counters fit into one event.
uint16_t img00Cnt = 0;
uint16_t img01Cnt = 0;
uint16_t img10Cnt = 0;
uint16_t img11Cnt = 0;
};
class RebootCountersPacket : public SerialLinkedListAdapter<SerializeIF> {
RebootCountersPacket(RebootCountersFile& rf) {
img00Count = rf.img00Cnt;
img01Count = rf.img01Cnt;
img10Count = rf.img10Cnt;
img11Count = rf.img11Cnt;
setLinks();
}
private:
void setLinks() {
setStart(&img00Count);
img00Count.setNext(&img01Count);
img01Count.setNext(&img10Count);
img10Count.setNext(&img11Count);
setLast(&img11Count);
}
SerializeElement<uint16_t> img00Count = 0;
SerializeElement<uint16_t> img01Count = 0;
SerializeElement<uint16_t> img10Count = 0;
SerializeElement<uint16_t> img11Count = 0;
};
class CoreController : public ExtendedControllerBase, public ReceivesParameterMessagesIF {
public:
enum ParamId : uint8_t { PREF_SD = 0, NUM_IDS };
static xsc::Chip CURRENT_CHIP;
static xsc::Copy CURRENT_COPY;
@ -57,85 +143,28 @@ class CoreController : public ExtendedControllerBase {
static constexpr char CHIP_STATE_FILE[] = "/tmp/chip_prot_status.txt";
static constexpr char CURR_COPY_FILE[] = "/tmp/curr_copy.txt";
static constexpr char CONF_FOLDER[] = "conf";
static constexpr char VERSION_FILE_NAME[] = "version.txt";
static constexpr char REBOOT_FILE_NAME[] = "reboot.txt";
static constexpr char TIME_FILE_NAME[] = "time_backup.txt";
const std::string VERSION_FILE =
"/" + std::string(CONF_FOLDER) + "/" + std::string(VERSION_FILE_NAME);
const std::string REBOOT_FILE =
"/" + std::string(CONF_FOLDER) + "/" + std::string(REBOOT_FILE_NAME);
"/" + std::string(core::CONF_FOLDER) + "/" + std::string(core::VERSION_FILE_NAME);
const std::string LEGACY_REBOOT_WATCHDOG_FILE =
"/" + std::string(core::CONF_FOLDER) + "/" +
std::string(core::LEGACY_REBOOT_WATCHDOG_FILE_NAME);
const std::string REBOOT_WATCHDOG_FILE =
"/" + std::string(core::CONF_FOLDER) + "/" + std::string(core::REBOOT_WATCHDOG_FILE_NAME);
const std::string BACKUP_TIME_FILE =
"/" + std::string(CONF_FOLDER) + "/" + std::string(TIME_FILE_NAME);
"/" + std::string(core::CONF_FOLDER) + "/" + std::string(core::TIME_FILE_NAME);
const std::string REBOOT_COUNTERS_FILE =
"/" + std::string(core::CONF_FOLDER) + "/" + std::string(core::REBOOT_COUNTER_FILE_NAME);
static constexpr char CHIP_0_COPY_0_MOUNT_DIR[] = "/tmp/mntupdate-xdi-qspi0-nom-rootfs";
static constexpr char CHIP_0_COPY_1_MOUNT_DIR[] = "/tmp/mntupdate-xdi-qspi0-gold-rootfs";
static constexpr char CHIP_1_COPY_0_MOUNT_DIR[] = "/tmp/mntupdate-xdi-qspi1-nom-rootfs";
static constexpr char CHIP_1_COPY_1_MOUNT_DIR[] = "/tmp/mntupdate-xdi-qspi1-gold-rootfs";
static constexpr char LIST_DIR_DUMP_WORK_FILE[] = "/tmp/dir_listing.tmp";
static constexpr dur_millis_t INIT_SD_CARD_CHECK_TIMEOUT = 5000;
static constexpr dur_millis_t DEFAULT_SD_CARD_CHECK_TIMEOUT = 60000;
static constexpr ActionId_t LIST_DIRECTORY_INTO_FILE = 0;
static constexpr ActionId_t ANNOUNCE_VERSION = 1;
static constexpr ActionId_t ANNOUNCE_CURRENT_IMAGE = 2;
static constexpr ActionId_t ANNOUNCE_BOOT_COUNTS = 3;
static constexpr ActionId_t SWITCH_REBOOT_FILE_HANDLING = 5;
static constexpr ActionId_t RESET_REBOOT_COUNTERS = 6;
static constexpr ActionId_t SWITCH_IMG_LOCK = 7;
static constexpr ActionId_t SET_MAX_REBOOT_CNT = 8;
static constexpr ActionId_t OBSW_UPDATE_FROM_SD_0 = 10;
static constexpr ActionId_t OBSW_UPDATE_FROM_SD_1 = 11;
static constexpr ActionId_t OBSW_UPDATE_FROM_TMP = 12;
static constexpr ActionId_t SWITCH_TO_SD_0 = 16;
static constexpr ActionId_t SWITCH_TO_SD_1 = 17;
static constexpr ActionId_t SWITCH_TO_BOTH_SD_CARDS = 18;
//! Reboot using the xsc_boot_copy command
static constexpr ActionId_t XSC_REBOOT_OBC = 32;
static constexpr ActionId_t MOUNT_OTHER_COPY = 33;
//! Reboot using the reboot command
static constexpr ActionId_t REBOOT_OBC = 34;
static constexpr ActionId_t EXECUTE_SHELL_CMD = 40;
static constexpr uint8_t SUBSYSTEM_ID = SUBSYSTEM_ID::CORE;
static constexpr Event ALLOC_FAILURE = event::makeEvent(SUBSYSTEM_ID, 0, severity::MEDIUM);
//! [EXPORT] : [COMMENT] Software reboot occurred. Can also be a systemd reboot.
//! P1: Current Chip, P2: Current Copy
static constexpr Event REBOOT_SW = event::makeEvent(SUBSYSTEM_ID, 1, severity::LOW);
//! [EXPORT] : [COMMENT] The reboot mechanism was triggered.
//! P1: First 16 bits: Last Chip, Last 16 bits: Last Copy,
//! P2: Each byte is the respective reboot count for the slots
static constexpr Event REBOOT_MECHANISM_TRIGGERED =
event::makeEvent(SUBSYSTEM_ID, 2, severity::MEDIUM);
//! Trying to find a way how to determine that the reboot came from ProASIC3 or PCDU..
static constexpr Event REBOOT_HW = event::makeEvent(SUBSYSTEM_ID, 3, severity::MEDIUM);
//! [EXPORT] : [COMMENT] No SD card was active. Core controller will attempt to re-initialize
//! a SD card.
static constexpr Event NO_SD_CARD_ACTIVE = event::makeEvent(SUBSYSTEM_ID, 4, severity::HIGH);
//! [EXPORT] : [COMMENT]
//! P1: Byte 0: Major, Byte 1: Minor, Byte 2: Patch, Byte 3: Has Git Hash
//! P2: First four letters of Git SHA is the last byte of P1 is set.
static constexpr Event VERSION_INFO = event::makeEvent(SUBSYSTEM_ID, 5, severity::INFO);
//! [EXPORT] : [COMMENT] P1: Current Chip, P2: Current Copy
static constexpr Event CURRENT_IMAGE_INFO = event::makeEvent(SUBSYSTEM_ID, 6, severity::INFO);
//! [EXPORT] : [COMMENT] Total reboot counter, which is the sum of the boot count of all
//! individual images.
static constexpr Event REBOOT_COUNTER = event::makeEvent(SUBSYSTEM_ID, 7, severity::INFO);
//! [EXPORT] : [COMMENT] Get the boot count of the individual images.
//! P1: First 16 bits boot count of image 0 0, last 16 bits boot count of image 0 1.
//! P2: First 16 bits boot count of image 1 0, last 16 bits boot count of image 1 1.
static constexpr Event INDIVIDUAL_BOOT_COUNTS = event::makeEvent(SUBSYSTEM_ID, 8, severity::INFO);
static constexpr Event I2C_UNAVAILABLE_REBOOT =
event::makeEvent(SUBSYSTEM_ID, 10, severity::MEDIUM);
CoreController(object_id_t objectId, const std::atomic_uint16_t& i2cErrors);
CoreController(object_id_t objectId, bool enableHkSet);
virtual ~CoreController();
ReturnValue_t initialize() override;
@ -170,8 +199,8 @@ class CoreController : public ExtendedControllerBase {
* @param updateProtFile Specify whether the protection info file is updated
* @return
*/
ReturnValue_t setBootCopyProtection(xsc::Chip targetChip, xsc::Copy targetCopy, bool protect,
bool& protOperationPerformed, bool updateProtFile = true);
ReturnValue_t setBootCopyProtectionAndUpdateFile(xsc::Chip targetChip, xsc::Copy targetCopy,
bool protect);
bool sdInitFinished() const;
@ -179,14 +208,15 @@ class CoreController : public ExtendedControllerBase {
static constexpr uint32_t BOOT_OFFSET_SECONDS = 15;
static constexpr MutexIF::TimeoutType TIMEOUT_TYPE = MutexIF::TimeoutType::WAITING;
static constexpr uint32_t MUTEX_TIMEOUT = 20;
bool enableHkSet = false;
GpsHyperion::FixMode gpsFix = GpsHyperion::FixMode::UNKNOWN;
// States for SD state machine, which is used in non-blocking mode
enum class SdStates {
NONE,
START,
GET_INFO,
SET_STATE_SELF,
UPDATE_SD_INFO_START,
SKIP_TWO_CYCLES_IF_SD_LOCKED,
MOUNT_SELF,
// Determine operations for other SD card, depending on redundancy configuration
DETERMINE_OTHER,
@ -196,7 +226,7 @@ class CoreController : public ExtendedControllerBase {
// Skip period because the shell command used to generate the info file sometimes is
// missing the last performed operation if executed too early
SKIP_CYCLE_BEFORE_INFO_UPDATE,
UPDATE_INFO,
UPDATE_SD_INFO_END,
// SD initialization done
IDLE
};
@ -205,26 +235,34 @@ class CoreController : public ExtendedControllerBase {
static constexpr bool BLOCKING_SD_INIT = false;
uint32_t* mappedSysRomAddr = nullptr;
SdCardManager* sdcMan = nullptr;
MessageQueueIF* eventQueue = nullptr;
uint8_t prefSdRaw = sd::SdCard::SLOT_0;
SdStates sdFsmState = SdStates::START;
SdStates fsmStateAfterDelay = SdStates::IDLE;
enum SdCfgMode { PASSIVE, COLD_REDUNDANT, HOT_REDUNDANT };
struct SdFsmParams {
SdCfgMode cfgMode = SdCfgMode::COLD_REDUNDANT;
sd::SdCard active = sd::SdCard::NONE;
sd::SdCard other = sd::SdCard::NONE;
sd::SdState activeState = sd::SdState::OFF;
sd::SdState otherState = sd::SdState::OFF;
std::string activeChar = "0";
std::string otherChar = "1";
sd::SdState activeState = sd::SdState::OFF;
sd::SdState otherState = sd::SdState::OFF;
std::pair<bool, bool> mountSwitch = {true, true};
// Used to track whether a command was executed
bool commandExecuted = true;
// This flag denotes that the SD card usage is locked. This is relevant if SD cards go off
// to leave appliation using the SD cards some time to detect the SD card is not usable anymore.
// This is relevant if the active SD card is being switched. The SD card will also be locked
// when going from hot-redundant mode to cold-redundant mode.
bool lockSdCardUsage = false;
bool commandPending = true;
bool initFinished = false;
SdCardManager::SdStatePair currentState;
uint16_t cycleCount = 0;
uint16_t skippedCyclesCount = 0;
} sdInfo;
struct SdCommanding {
@ -233,7 +271,22 @@ class CoreController : public ExtendedControllerBase {
DeviceCommandId_t actionId;
} sdCommandingInfo;
RebootFile rebootFile = {};
struct DirListingDumpContext {
bool active;
bool firstDump;
size_t dumpedBytes;
size_t totalFileSize;
size_t listingDataOffset;
size_t maxDumpLen;
uint32_t segmentIdx;
MessageQueueId_t commander = MessageQueueIF::NO_QUEUE;
DeviceCommandId_t actionId;
};
std::array<uint8_t, 1024> dirListingBuf{};
DirListingDumpContext dumpContext{};
RebootWatchdogFile rebootWatchdogFile = {};
RebootCountersFile rebootCountersFile = {};
CommandExecutor cmdExecutor;
SimpleRingBuffer cmdReplyBuf;
@ -251,12 +304,10 @@ class CoreController : public ExtendedControllerBase {
Countdown sdCardCheckCd = Countdown(INIT_SD_CARD_CHECK_TIMEOUT);
/**
* Index 0: Chip 0 Copy 0
* Index 1: Chip 0 Copy 1
* Index 2: Chip 1 Copy 0
* Index 3: Chip 1 Copy 1
* First index: Chip.
* Second index: Copy.
*/
std::array<bool, 4> protArray;
bool protArray[2][2]{};
PeriodicOperationDivider opDivider5;
PeriodicOperationDivider opDivider10;
@ -265,12 +316,17 @@ class CoreController : public ExtendedControllerBase {
PoolEntry<float> plVoltageEntry = PoolEntry<float>(0.0);
core::HkSet hkSet;
const std::atomic_uint16_t& i2cErrors;
ParameterHelper paramHelper;
#if OBSW_SD_CARD_MUST_BE_ON == 1
bool remountAttemptFlag = true;
#endif
MessageQueueId_t getCommandQueue() const override;
ReturnValue_t getParameter(uint8_t domainId, uint8_t uniqueIdentifier,
ParameterWrapper* parameterWrapper, const ParameterWrapper* newValues,
uint16_t startAtIndex) override;
ReturnValue_t initializeLocalDataPool(localpool::DataPool& localDataPoolMap,
LocalDataPoolManager& poolManager) override;
@ -289,7 +345,7 @@ class CoreController : public ExtendedControllerBase {
void initPrint();
ReturnValue_t sdStateMachine();
void updateSdInfoOther();
void updateInternalSdInfo();
ReturnValue_t sdCardSetup(sd::SdCard sdCard, sd::SdState targetState, std::string sdChar,
bool printOutput = true);
ReturnValue_t executeSwUpdate(SwUpdateSources sourceDir, const uint8_t* data, size_t size);
@ -298,27 +354,40 @@ class CoreController : public ExtendedControllerBase {
void currentStateSetter(sd::SdCard sdCard, sd::SdState newState);
void executeNextExternalSdCommand();
void checkExternalSdCommandStatus();
void performRebootFileHandling(bool recreateFile);
void performRebootWatchdogHandling(bool recreateFile);
void performRebootCountersHandling(bool recreateFile);
ReturnValue_t actionListDirectoryIntoFile(ActionId_t actionId, MessageQueueId_t commandedBy,
const uint8_t* data, size_t size);
ReturnValue_t actionListDirectoryDumpDirectly(ActionId_t actionId, MessageQueueId_t commandedBy,
const uint8_t* data, size_t size);
ReturnValue_t performGracefulShutdown(xsc::Chip targetChip, xsc::Copy targetCopy);
ReturnValue_t actionListDirectoryCommonCommandCreator(const uint8_t* data, size_t size,
std::ostringstream& oss);
ReturnValue_t actionXscReboot(const uint8_t* data, size_t size);
ReturnValue_t actionReboot(const uint8_t* data, size_t size);
ReturnValue_t gracefulShutdownTasks(xsc::Chip chip, xsc::Copy copy, bool& protOpPerformed);
ReturnValue_t handleProtInfoUpdateLine(std::string nextLine);
int handleBootCopyProtAtIndex(xsc::Chip targetChip, xsc::Copy targetCopy, bool protect,
bool& protOperationPerformed, bool selfChip, bool selfCopy,
bool allChips, bool allCopies, uint8_t arrIdx);
void determineAndExecuteReboot(RebootFile& rf, bool& needsReboot, xsc::Chip& tgtChip,
xsc::Copy& tgtCopy);
void resetRebootCount(xsc::Chip tgtChip, xsc::Copy tgtCopy);
ReturnValue_t handleSwitchingSdCardsOffNonBlocking();
bool handleBootCopyProt(xsc::Chip targetChip, xsc::Copy targetCopy, bool protect);
void rebootWatchdogAlgorithm(RebootWatchdogFile& rf, bool& needsReboot, xsc::Chip& tgtChip,
xsc::Copy& tgtCopy);
void resetRebootWatchdogCounters(xsc::Chip tgtChip, xsc::Copy tgtCopy);
void setRebootMechanismLock(bool lock, xsc::Chip tgtChip, xsc::Copy tgtCopy);
bool parseRebootFile(std::string path, RebootFile& file);
void rewriteRebootFile(RebootFile file);
bool parseRebootWatchdogFile(std::string path, RebootWatchdogFile& file);
bool parseRebootCountersFile(std::string path, RebootCountersFile& file);
void rewriteRebootWatchdogFile(RebootWatchdogFile file);
void rewriteRebootCountersFile(RebootCountersFile file);
void announceBootCounts();
void announceVersionInfo();
void announceCurrentImageInfo();
void announceSdInfo(SdCardManager::SdStatePair sdStates);
void readHkData();
void dirListingDumpHandler();
bool isNumber(const std::string& s);
};

View File

@ -0,0 +1,122 @@
#include "XiphosWdtHandler.h"
#include "fsfw/ipc/QueueFactory.h"
XiphosWdtHandler::XiphosWdtHandler(object_id_t objectId)
: SystemObject(objectId),
requestQueue(QueueFactory::instance()->createMessageQueue()),
actionHelper(this, requestQueue) {}
ReturnValue_t XiphosWdtHandler::initialize() {
ReturnValue_t result = actionHelper.initialize();
if (result != returnvalue::OK) {
return result;
}
int retval = xsc_watchdog_init(&wdtHandle);
if (retval != 0) {
sif::error << "XiphosWdtHandler: Initiating watchdog failed with code " << retval << ": "
<< strerror(retval) << std::endl;
return ObjectManagerIF::CHILD_INIT_FAILED;
}
if (wdtHandle == nullptr) {
sif::error << "XiphosWdtHandler: WDT handle is nullptr!" << std::endl;
return ObjectManagerIF::CHILD_INIT_FAILED;
}
retval = xsc_watchdog_set_timeout(wdtHandle, timeoutSeconds);
if (retval != 0) {
// This propably means that the default timeout is used. Still continue with task init.
sif::warning << "XiphosWdtHandler: Setting WDT timeout of " << timeoutSeconds
<< " seconds failed with code " << result << ": " << strerror(retval) << std::endl;
}
return enableWdt();
}
ReturnValue_t XiphosWdtHandler::performOperation(uint8_t opCode) {
CommandMessage command;
ReturnValue_t result;
for (result = requestQueue->receiveMessage(&command); result == returnvalue::OK;
result = requestQueue->receiveMessage(&command)) {
result = actionHelper.handleActionMessage(&command);
if (result == returnvalue::OK) {
continue;
}
sif::warning << "Can not handle message with message type " << command.getMessageType()
<< std::endl;
}
if (enabled) {
int retval = xsc_watchdog_keepalive(wdtHandle);
if (retval != 0) {
sif::warning << "XiphosWdtHandler: Feeding WDT failed with code " << retval << ": "
<< strerror(retval) << std::endl;
return returnvalue::FAILED;
}
}
return returnvalue::OK;
}
ReturnValue_t XiphosWdtHandler::executeAction(ActionId_t actionId, MessageQueueId_t commandedBy,
const uint8_t *data, size_t size) {
switch (actionId) {
case (ActionId::ENABLE): {
ReturnValue_t result = enableWdt();
if (result != returnvalue::OK) {
return result;
}
return EXECUTION_FINISHED;
}
case (ActionId::DISABLE): {
ReturnValue_t result = disableWdt();
if (result != returnvalue::OK) {
return result;
}
return EXECUTION_FINISHED;
}
}
return HasActionsIF::INVALID_ACTION_ID;
}
ReturnValue_t XiphosWdtHandler::enableWdt() {
int nowayout = 0;
int status = 0;
int retval = xsc_watchdog_get_status(&nowayout, &status);
// If this fails for whatever reason, just try enabling in any case.
if (retval != 0) {
sif::warning << "XiphosWdtHandler: Getting WDT status failed" << std::endl;
}
// Of course the enable API will fail if the device is already on, just perfect, love me some
// good C API... :)))
if (retval != 0 or status == 0) {
retval = xsc_watchdog_enable(wdtHandle);
if (retval != 0) {
sif::error << "XiphosWdtHandler: Enabling WDT failed with code " << retval << ": "
<< strerror(retval) << std::endl;
return returnvalue::FAILED;
}
}
enabled = true;
return returnvalue::OK;
}
ReturnValue_t XiphosWdtHandler::disableWdt() {
int nowayout = 0;
int status = 0;
int retval = xsc_watchdog_get_status(&nowayout, &status);
// If this fails for whatever reason, just try disabling in any case.
if (retval != 0) {
sif::warning << "XiphosWdtHandler: Getting WDT status failed" << std::endl;
}
// Of course the disable API will fail if the device is already off, just perfect, love me some
// good C API... :)))
if (retval != 0 or status == 1) {
retval = xsc_watchdog_disable(wdtHandle);
if (retval != 0) {
sif::error << "XiphosWdtHandler: Disabling WDT failed with code " << retval << ": "
<< strerror(retval) << std::endl;
return returnvalue::FAILED;
}
}
enabled = false;
return returnvalue::OK;
}
MessageQueueId_t XiphosWdtHandler::getCommandQueue() const { return requestQueue->getId(); }

View File

@ -0,0 +1,36 @@
#ifndef BSP_Q7S_CORE_XIPHOSWDTHANDLER_H_
#define BSP_Q7S_CORE_XIPHOSWDTHANDLER_H_
#include <fsfw/action/HasActionsIF.h>
#include <fsfw/objectmanager/SystemObject.h>
#include <fsfw/tasks/ExecutableObjectIF.h>
#include <libxiphos.h>
class XiphosWdtHandler : public SystemObject, public ExecutableObjectIF, public HasActionsIF {
public:
enum ActionId { ENABLE = 0, DISABLE = 1 };
XiphosWdtHandler(object_id_t objectId);
ReturnValue_t performOperation(uint8_t opCode) override;
ReturnValue_t initialize() override;
ReturnValue_t executeAction(ActionId_t actionId, MessageQueueId_t commandedBy,
const uint8_t* data, size_t size) override;
[[nodiscard]] virtual MessageQueueId_t getCommandQueue() const override;
private:
// Wrappers to ensure idempotency of trash C API.
ReturnValue_t enableWdt();
ReturnValue_t disableWdt();
// Timeout duration range specified by Xiphos: 0.001 seconds to 171 seconds. The libxiphos API
// expects an int, so I guess this translates to 1 to 171 seconds.
// WARNING: DO NOT SET THIS HIGHER THAN 80 SECONDS!
// Possible bug in Xiphos/Xilinx kernel driver for watchdog, related to overflow.
int timeoutSeconds = 80;
bool enabled = false;
struct watchdog_s* wdtHandle = nullptr;
MessageQueueIF* requestQueue = nullptr;
ActionHelper actionHelper;
};
#endif /* BSP_Q7S_CORE_XIPHOSWDTHANDLER_H_ */

View File

@ -1,10 +1,16 @@
#ifndef BSP_Q7S_CORE_COREDEFINITIONS_H_
#define BSP_Q7S_CORE_COREDEFINITIONS_H_
#ifndef BSP_Q7S_CORE_DEFS_H_
#define BSP_Q7S_CORE_DEFS_H_
#include <fsfw/datapoollocal/StaticLocalDataSet.h>
namespace core {
extern uint8_t FW_VERSION_MAJOR;
extern uint8_t FW_VERSION_MINOR;
extern uint8_t FW_VERSION_REVISION;
extern bool FW_VERSION_HAS_SHA;
extern char FW_VERSION_GIT_SHA[4];
static const uint8_t HK_SET_ENTRIES = 3;
static const uint32_t HK_SET_ID = 5;
@ -36,4 +42,4 @@ class HkSet : public StaticLocalDataSet<HK_SET_ENTRIES> {
} // namespace core
#endif /* BSP_Q7S_CORE_COREDEFINITIONS_H_ */
#endif /* BSP_Q7S_CORE_DEFS_H_ */

View File

@ -1,25 +1,27 @@
#include <bsp_q7s/callbacks/q7sGpioCallbacks.h>
#include <bsp_q7s/core/XiphosWdtHandler.h>
#include <bsp_q7s/objectFactory.h>
#include <dummies/ComCookieDummy.h>
#include <dummies/PcduHandlerDummy.h>
#include <fsfw/health/HealthTableIF.h>
#include <fsfw/power/DummyPowerSwitcher.h>
#include <fsfw_hal/common/gpio/GpioCookie.h>
#include <mission/devices/devicedefinitions/GomspaceDefinitions.h>
#include <mission/system/tree/system.h>
#include <mission/power/gsDefs.h>
#include <mission/system/systemTree.h>
#include <mission/utility/DummySdCardManager.h>
#include "OBSWConfig.h"
#include "bsp_q7s/core/CoreController.h"
#include "bsp_q7s/core/ObjectFactory.h"
#include "busConf.h"
#include "common/config/devices/addresses.h"
#include "devConf.h"
#include "dummies/helpers.h"
#include "dummies/helperFactory.h"
#include "eive/objects.h"
#include "fsfw_hal/linux/gpio/LinuxLibgpioIF.h"
#include "linux/ObjectFactory.h"
#include "linux/callbacks/gpioCallbacks.h"
#include "mission/core/GenericFactory.h"
#include "mission/system/tree/comModeTree.h"
#include "mission/genericFactory.h"
#include "mission/system/com/comModeTree.h"
void ObjectFactory::produce(void* args) {
ObjectFactory::setStatics();
@ -29,62 +31,107 @@ void ObjectFactory::produce(void* args) {
StorageManagerIF* ipcStore = nullptr;
StorageManagerIF* tmStore = nullptr;
bool enableHkSets = false;
#if OBSW_ENABLE_PERIODIC_HK == 1
enableHkSets = true;
#endif
PersistentTmStores stores;
readFirmwareVersion();
new XiphosWdtHandler(objects::XIPHOS_WDT);
ObjectFactory::produceGenericObjects(&healthTable, &pusFunnel, &cfdpFunnel,
*SdCardManager::instance(), &ipcStore, &tmStore, stores);
*SdCardManager::instance(), &ipcStore, &tmStore, stores, 200,
enableHkSets, true);
LinuxLibgpioIF* gpioComIF = nullptr;
SerialComIF* uartComIF = nullptr;
SpiComIF* spiMainComIF = nullptr;
I2cComIF* i2cComIF = nullptr;
createCommunicationInterfaces(&gpioComIF, &uartComIF, &spiMainComIF, &i2cComIF);
/* Adding gpios for chip select decoding to the gpioComIf */
// Adding GPIOs for chip select decoding and initializing them.
q7s::gpioCallbacks::initSpiCsDecoder(gpioComIF);
gpioCallbacks::disableAllDecoder(gpioComIF);
createPlI2cResetGpio(gpioComIF);
// Hardware is usually not connected to EM, so we need to create dummies which replace lower
// level components.
dummy::DummyCfg dummyCfg;
dummyCfg.addCoreCtrlCfg = false;
dummyCfg.addCamSwitcherDummy = false;
#if OBSW_ADD_SYRLINKS == 1
dummyCfg.addSyrlinksDummies = false;
#endif
#if OBSW_ADD_PLOC_SUPERVISOR == 1 || OBSW_ADD_PLOC_MPSOC == 1
dummyCfg.addPlocDummies = false;
#endif
#if OBSW_ADD_TMP_DEVICES == 1
std::vector<std::pair<object_id_t, address_t>> tmpDevsToAdd = {{
{objects::TMP1075_HANDLER_PLPCDU_0, addresses::TMP1075_PLPCDU_0},
{objects::TMP1075_HANDLER_PLPCDU_1, addresses::TMP1075_PLPCDU_1},
{objects::TMP1075_HANDLER_IF_BOARD, addresses::TMP1075_IF_BOARD},
}};
createTmpComponents(tmpDevsToAdd);
dummy::Tmp1075Cfg tmpCfg{};
tmpCfg.addTcsBrd0 = true;
tmpCfg.addTcsBrd1 = true;
tmpCfg.addPlPcdu0 = false;
tmpCfg.addPlPcdu1 = false;
tmpCfg.addIfBrd = false;
dummyCfg.tmp1075Cfg = tmpCfg;
#endif
#if OBSW_ADD_GOMSPACE_PCDU == 1
dummyCfg.addPowerDummies = false;
// The ACU broke.
dummyCfg.addOnlyAcuDummy = true;
#endif
#if OBSW_ADD_STAR_TRACKER == 1
dummyCfg.addStrDummy = false;
#endif
#if OBSW_ADD_SCEX_DEVICE == 0
dummyCfg.addScexDummy = true;
#endif
#if OBSW_ADD_BPX_BATTERY_HANDLER == 1
dummyCfg.addBpxBattDummy = false;
#endif
#if OBSW_ADD_ACS_BOARD == 1
dummyCfg.addAcsBoardDummies = false;
#endif
#if OBSW_ADD_PL_PCDU == 0
dummyCfg.addPlPcduDummy = true;
#endif
PowerSwitchIF* pwrSwitcher = nullptr;
#if OBSW_ADD_GOMSPACE_PCDU == 0
auto* comCookieDummy = new ComCookieDummy();
pwrSwitcher = new PcduHandlerDummy(objects::PCDU_HANDLER, objects::DUMMY_COM_IF, comCookieDummy);
pwrSwitcher = new PcduHandlerDummy(objects::PCDU_HANDLER);
#else
createPcduComponents(gpioComIF, &pwrSwitcher);
createPcduComponents(gpioComIF, &pwrSwitcher, enableHkSets);
#endif
satsystem::EIVE_SYSTEM.setI2cRecoveryParams(pwrSwitcher);
dummy::createDummies(dummyCfg, *pwrSwitcher, gpioComIF);
const char* battAndImtqI2cDev = q7s::I2C_PL_EIVE;
if (core::FW_VERSION_MAJOR >= 4) {
battAndImtqI2cDev = q7s::I2C_PS_EIVE;
}
static_cast<void>(battAndImtqI2cDev);
new CoreController(objects::CORE_CONTROLLER, I2C_FATAL_ERRORS);
#if OBSW_ADD_BPX_BATTERY_HANDLER == 1
createBpxBatteryComponent(enableHkSets, battAndImtqI2cDev);
#endif
createPowerController(true, enableHkSets);
// Regular FM code, does not work for EM if the hardware is not connected
// createPcduComponents(gpioComIF, &pwrSwitcher);
// createPlPcduComponents(gpioComIF, spiMainComIF, pwrSwitcher);
// createSyrlinksComponents(pwrSwitcher);
// createSunSensorComponents(gpioComIF, spiMainComIF, pwrSwitcher, q7s::SPI_DEFAULT_DEV);
// createRtdComponents(q7s::SPI_DEFAULT_DEV, gpioComIF, pwrSwitcher, spiMainComIF);
// createTmpComponents();
// createSolarArrayDeploymentComponents();
// createPayloadComponents(gpioComIF);
// createHeaterComponents(gpioComIF, pwrSwitcher, healthTable);
dummy::createDummies(dummyCfg, *pwrSwitcher, gpioComIF, enableHkSets);
// TODO: Careful! Switching this on somehow messes with the communication with the ProASIC
// and will cause xsc_boot_copy commands to always boot to 0 0
// createRadSensorComponent(gpioComIF);
new CoreController(objects::CORE_CONTROLLER, enableHkSets);
auto* stackHandler = new Stack5VHandler(*pwrSwitcher);
static_cast<void>(stackHandler);
// Initialize chip select to avoid SPI bus issues.
createRadSensorChipSelect(gpioComIF);
#if OBSW_ADD_ACS_BOARD == 1
createAcsBoardComponents(gpioComIF, uartComIF, *pwrSwitcher);
createAcsBoardComponents(*spiMainComIF, gpioComIF, uartComIF, *pwrSwitcher, true,
adis1650x::Type::ADIS16507);
#else
// Still add all GPIOs for EM.
GpioCookie* acsBoardGpios = new GpioCookie();
@ -93,7 +140,7 @@ void ObjectFactory::produce(void* args) {
#endif
#if OBSW_ADD_MGT == 1
createImtqComponents(pwrSwitcher);
createImtqComponents(pwrSwitcher, enableHkSets, battAndImtqI2cDev);
#endif
#if OBSW_ADD_SYRLINKS == 1
@ -104,36 +151,33 @@ void ObjectFactory::produce(void* args) {
createReactionWheelComponents(gpioComIF, pwrSwitcher);
#endif
#if OBSW_ADD_BPX_BATTERY_HANDLER == 1
createBpxBatteryComponent();
#endif
#if OBSW_ADD_STAR_TRACKER == 1
createStrComponents(pwrSwitcher);
createStrComponents(pwrSwitcher, *SdCardManager::instance());
#endif /* OBSW_ADD_STAR_TRACKER == 1 */
#if OBSW_ADD_PL_PCDU == 1
createPlPcduComponents(gpioComIF, spiMainComIF, pwrSwitcher, *stackHandler);
#endif
createPayloadComponents(gpioComIF, *pwrSwitcher);
#if OBSW_ADD_CCSDS_IP_CORES == 1
CcsdsIpCoreHandler* ipCoreHandler = nullptr;
CcsdsComponentArgs ccsdsArgs(*gpioComIF, *ipcStore, *tmStore, stores, *pusFunnel, *cfdpFunnel,
&ipCoreHandler);
createCcsdsComponents(ccsdsArgs);
#if OBSW_TM_TO_PTME == 1
if (ccsdsArgs.liveDestination != nullptr) {
pusFunnel->addLiveDestination("VC0 LIVE TM", *ccsdsArgs.liveDestination, 0);
}
#endif
&ipCoreHandler, 0, 0);
createCcsdsIpComponentsWrapper(ccsdsArgs);
#endif /* OBSW_ADD_CCSDS_IP_CORES == 1 */
/* Test Task */
#if OBSW_ADD_TEST_CODE == 1
createTestComponents(gpioComIF);
#endif /* OBSW_ADD_TEST_CODE == 1 */
#if OBSW_ADD_SCEX_DEVICE == 1
createScexComponents(q7s::UART_SCEX_DEV, pwrSwitcher, *SdCardManager::instance(), false,
pcdu::Switches::PDU1_CH5_SOLAR_CELL_EXP_5V);
power::Switches::PDU1_CH5_SOLAR_CELL_EXP_5V);
#endif
createAcsController(true);
HeaterHandler* heaterHandler = nullptr;
ObjectFactory::createGenericHeaterComponents(*gpioComIF, *pwrSwitcher, heaterHandler);
createThermalController(*heaterHandler);
satsystem::init();
createAcsController(true, enableHkSets);
HeaterHandler* heaterHandler;
createHeaterComponents(gpioComIF, pwrSwitcher, healthTable, heaterHandler);
createThermalController(*heaterHandler, true);
satsystem::init(true);
}

View File

@ -1,19 +1,23 @@
#include <bsp_q7s/callbacks/q7sGpioCallbacks.h>
#include <bsp_q7s/core/XiphosWdtHandler.h>
#include <bsp_q7s/objectFactory.h>
#include <devices/gpioIds.h>
#include <fsfw/storagemanager/LocalPool.h>
#include <fsfw/storagemanager/PoolManager.h>
#include <mission/devices/devicedefinitions/GomspaceDefinitions.h>
#include <mission/power/gsDefs.h>
#include <mission/system/EiveSystem.h>
#include "OBSWConfig.h"
#include "bsp_q7s/core/CoreController.h"
#include "bsp_q7s/core/ObjectFactory.h"
#include "busConf.h"
#include "devConf.h"
#include "devices/addresses.h"
#include "eive/objects.h"
#include "fsfw_hal/linux/gpio/LinuxLibgpioIF.h"
#include "linux/ObjectFactory.h"
#include "linux/callbacks/gpioCallbacks.h"
#include "mission/core/GenericFactory.h"
#include "mission/system/tree/system.h"
#include "mission/genericFactory.h"
#include "mission/system/systemTree.h"
#include "mission/tmtc/tmFilters.h"
void ObjectFactory::produce(void* args) {
@ -24,9 +28,17 @@ void ObjectFactory::produce(void* args) {
StorageManagerIF* ipcStore = nullptr;
StorageManagerIF* tmStore = nullptr;
bool enableHkSets = false;
#if OBSW_ENABLE_PERIODIC_HK == 1
enableHkSets = true;
#endif
PersistentTmStores stores;
readFirmwareVersion();
new XiphosWdtHandler(objects::XIPHOS_WDT);
ObjectFactory::produceGenericObjects(&healthTable, &pusFunnel, &cfdpFunnel,
*SdCardManager::instance(), &ipcStore, &tmStore, stores);
*SdCardManager::instance(), &ipcStore, &tmStore, stores, 200,
true, true);
LinuxLibgpioIF* gpioComIF = nullptr;
SerialComIF* uartComIF = nullptr;
@ -37,9 +49,12 @@ void ObjectFactory::produce(void* args) {
/* Adding gpios for chip select decoding to the gpioComIf */
q7s::gpioCallbacks::initSpiCsDecoder(gpioComIF);
gpioCallbacks::disableAllDecoder(gpioComIF);
createPlI2cResetGpio(gpioComIF);
new CoreController(objects::CORE_CONTROLLER, enableHkSets);
createPcduComponents(gpioComIF, &pwrSwitcher, enableHkSets);
satsystem::EIVE_SYSTEM.setI2cRecoveryParams(pwrSwitcher);
new CoreController(objects::CORE_CONTROLLER, I2C_FATAL_ERRORS);
createPcduComponents(gpioComIF, &pwrSwitcher);
auto* stackHandler = new Stack5VHandler(*pwrSwitcher);
#if OBSW_ADD_RAD_SENSORS == 1
@ -50,49 +65,63 @@ void ObjectFactory::produce(void* args) {
#endif
#if OBSW_ADD_ACS_BOARD == 1
createAcsBoardComponents(*spiMainComIF, gpioComIF, uartComIF, *pwrSwitcher);
createAcsBoardComponents(*spiMainComIF, gpioComIF, uartComIF, *pwrSwitcher, true,
adis1650x::Type::ADIS16505);
#endif
HeaterHandler* heaterHandler;
createHeaterComponents(gpioComIF, pwrSwitcher, healthTable, heaterHandler);
#if OBSW_ADD_TMP_DEVICES == 1
createTmpComponents();
std::vector<std::pair<object_id_t, address_t>> tmpDevsToAdd = {{
{objects::TMP1075_HANDLER_TCS_0, addresses::TMP1075_TCS_0},
{objects::TMP1075_HANDLER_TCS_1, addresses::TMP1075_TCS_1},
{objects::TMP1075_HANDLER_PLPCDU_0, addresses::TMP1075_PLPCDU_0},
// damaged
// {objects::TMP1075_HANDLER_PLPCDU_1, addresses::TMP1075_PLPCDU_1},
{objects::TMP1075_HANDLER_IF_BOARD, addresses::TMP1075_IF_BOARD},
}};
createTmpComponents(tmpDevsToAdd);
#endif
createSolarArrayDeploymentComponents(*pwrSwitcher, *gpioComIF);
createPlPcduComponents(gpioComIF, spiMainComIF, pwrSwitcher, *stackHandler);
#if OBSW_ADD_SYRLINKS == 1
createSyrlinksComponents(pwrSwitcher);
#endif /* OBSW_ADD_SYRLINKS == 1 */
createRtdComponents(q7s::SPI_DEFAULT_DEV, gpioComIF, pwrSwitcher, spiMainComIF);
createPayloadComponents(gpioComIF, *pwrSwitcher);
const char* battAndImtqI2cDev = q7s::I2C_PL_EIVE;
if (core::FW_VERSION_MAJOR >= 4) {
battAndImtqI2cDev = q7s::I2C_PS_EIVE;
}
#if OBSW_ADD_MGT == 1
createImtqComponents(pwrSwitcher);
createImtqComponents(pwrSwitcher, enableHkSets, battAndImtqI2cDev);
#endif
createReactionWheelComponents(gpioComIF, pwrSwitcher);
#if OBSW_ADD_BPX_BATTERY_HANDLER == 1
createBpxBatteryComponent();
createBpxBatteryComponent(enableHkSets, battAndImtqI2cDev);
#endif
createPowerController(true, enableHkSets);
#if OBSW_ADD_PL_PCDU == 1
createPlPcduComponents(gpioComIF, spiMainComIF, pwrSwitcher, *stackHandler);
#endif
#if OBSW_ADD_SYRLINKS == 1
createSyrlinksComponents(pwrSwitcher);
#endif /* OBSW_ADD_SYRLINKS == 1 */
createRtdComponents(q7s::SPI_DEFAULT_DEV, gpioComIF, pwrSwitcher, spiMainComIF);
createPayloadComponents(gpioComIF, *pwrSwitcher);
#if OBSW_ADD_STAR_TRACKER == 1
createStrComponents(pwrSwitcher);
createStrComponents(pwrSwitcher, *SdCardManager::instance());
#endif /* OBSW_ADD_STAR_TRACKER == 1 */
#if OBSW_ADD_CCSDS_IP_CORES == 1
CcsdsIpCoreHandler* ipCoreHandler = nullptr;
CcsdsComponentArgs ccsdsArgs(*gpioComIF, *ipcStore, *tmStore, stores, *pusFunnel, *cfdpFunnel,
&ipCoreHandler);
createCcsdsComponents(ccsdsArgs);
#if OBSW_TM_TO_PTME == 1
if (ccsdsArgs.liveDestination != nullptr) {
pusFunnel->addLiveDestination("VC0 LIVE TM", *ccsdsArgs.liveDestination, 0);
}
#endif
&ipCoreHandler, 0, 0);
createCcsdsIpComponentsWrapper(ccsdsArgs);
#endif /* OBSW_ADD_CCSDS_IP_CORES == 1 */
#if OBSW_ADD_SCEX_DEVICE == 1
createScexComponents(q7s::UART_SCEX_DEV, pwrSwitcher, *SdCardManager::instance(), false,
pcdu::Switches::PDU1_CH5_SOLAR_CELL_EXP_5V);
power::Switches::PDU1_CH5_SOLAR_CELL_EXP_5V);
#endif
/* Test Task */
#if OBSW_ADD_TEST_CODE == 1
@ -100,7 +129,7 @@ void ObjectFactory::produce(void* args) {
#endif /* OBSW_ADD_TEST_CODE == 1 */
createMiscComponents();
createThermalController(*heaterHandler);
createAcsController(true);
satsystem::init();
createThermalController(*heaterHandler, false);
createAcsController(true, enableHkSets);
satsystem::init(false);
}

View File

@ -125,13 +125,8 @@ ReturnValue_t SdCardManager::switchOnSdCard(sd::SdCard sdCard, bool doMountSdCar
return mountSdCard(sdCard);
}
ReturnValue_t SdCardManager::switchOffSdCard(sd::SdCard sdCard, bool doUnmountSdCard,
SdStatePair* statusPair) {
std::pair<sd::SdState, sd::SdState> active;
ReturnValue_t result = getSdCardsStatus(active);
if (result != returnvalue::OK) {
return result;
}
ReturnValue_t SdCardManager::switchOffSdCard(sd::SdCard sdCard, SdStatePair& sdStates,
bool doUnmountSdCard) {
if (doUnmountSdCard) {
if (not blocking) {
sif::warning << "SdCardManager::switchOffSdCard: Two-step command but manager is"
@ -147,17 +142,17 @@ ReturnValue_t SdCardManager::switchOffSdCard(sd::SdCard sdCard, bool doUnmountSd
return returnvalue::FAILED;
}
if (sdCard == sd::SdCard::SLOT_0) {
if (active.first == sd::SdState::OFF) {
if (sdStates.first == sd::SdState::OFF) {
return ALREADY_OFF;
}
} else if (sdCard == sd::SdCard::SLOT_1) {
if (active.second == sd::SdState::OFF) {
if (sdStates.second == sd::SdState::OFF) {
return ALREADY_OFF;
}
}
if (doUnmountSdCard) {
result = unmountSdCard(sdCard);
ReturnValue_t result = unmountSdCard(sdCard);
if (result != returnvalue::OK) {
return result;
}
@ -189,7 +184,7 @@ ReturnValue_t SdCardManager::setSdCardState(sd::SdCard sdCard, bool on) {
command << "q7hw sd set " << sdstring << " " << statestring;
cmdExecutor.load(command.str(), blocking, printCmdOutput);
ReturnValue_t result = cmdExecutor.execute();
if (blocking and result != returnvalue::OK) {
if (result != returnvalue::OK) {
utility::handleSystemError(cmdExecutor.getLastError(), "SdCardManager::setSdCardState");
}
return result;
@ -204,6 +199,7 @@ ReturnValue_t SdCardManager::getSdCardsStatus(SdStatePair& sdStates) {
ReturnValue_t SdCardManager::mountSdCard(sd::SdCard sdCard) {
using namespace std;
if (cmdExecutor.getCurrentState() == CommandExecutor::States::PENDING) {
sif::warning << "SdCardManager::mountSdCard: Command still pending" << std::endl;
return CommandExecutor::COMMAND_PENDING;
}
if (sdCard == sd::SdCard::BOTH) {
@ -309,33 +305,6 @@ void SdCardManager::resetState() {
currentOp = Operations::IDLE;
}
ReturnValue_t SdCardManager::updateSdStatePair() {
using namespace std;
MutexGuard mg(sdLock, LOCK_TYPE, SD_LOCK_TIMEOUT, LOCK_CTX);
std::error_code e;
if (not filesystem::exists(SD_STATE_FILE, e)) {
return STATUS_FILE_NEXISTS;
}
// Now the file should exist in any case. Still check whether it exists.
fstream sdStatus(SD_STATE_FILE);
if (not sdStatus.good()) {
return STATUS_FILE_NEXISTS;
}
string line;
uint8_t idx = 0;
sd::SdCard currentSd = sd::SdCard::SLOT_0;
// Process status file line by line
while (std::getline(sdStatus, line)) {
processSdStatusLine(line, idx, currentSd);
}
if (sdStates.first != sd::SdState::MOUNTED && sdStates.second != sd::SdState::MOUNTED) {
sdCardActive = false;
}
return returnvalue::OK;
}
void SdCardManager::processSdStatusLine(std::string& line, uint8_t& idx, sd::SdCard& currentSd) {
using namespace std;
istringstream iss(line);
@ -362,6 +331,7 @@ void SdCardManager::processSdStatusLine(std::string& line, uint8_t& idx, sd::SdC
sdStates.second = sd::SdState::ON;
}
} else if (word == "off") {
MutexGuard mg(sdLock, LOCK_TYPE, SD_LOCK_TIMEOUT, LOCK_CTX);
if (currentSd == sd::SdCard::SLOT_0) {
sdStates.first = sd::SdState::OFF;
} else {
@ -371,6 +341,7 @@ void SdCardManager::processSdStatusLine(std::string& line, uint8_t& idx, sd::SdC
}
if (mountLine) {
MutexGuard mg(sdLock, LOCK_TYPE, SD_LOCK_TIMEOUT, LOCK_CTX);
if (currentSd == sd::SdCard::SLOT_0) {
sdStates.first = sd::SdState::MOUNTED;
} else {
@ -406,18 +377,39 @@ ReturnValue_t SdCardManager::setPreferredSdCard(sd::SdCard sdCard) {
}
ReturnValue_t SdCardManager::updateSdCardStateFile() {
using namespace std;
if (cmdExecutor.getCurrentState() == CommandExecutor::States::PENDING) {
return CommandExecutor::COMMAND_PENDING;
}
MutexGuard mg(sdLock, LOCK_TYPE, SD_LOCK_TIMEOUT, LOCK_CTX);
// Use q7hw utility and pipe the command output into the state file
std::string updateCmd = "q7hw sd info all > " + std::string(SD_STATE_FILE);
cmdExecutor.load(updateCmd, true, printCmdOutput);
ReturnValue_t result = cmdExecutor.execute();
if (blocking and result != returnvalue::OK) {
if (result != returnvalue::OK) {
utility::handleSystemError(cmdExecutor.getLastError(), "SdCardManager::mountSdCard");
}
return result;
std::error_code e;
if (not filesystem::exists(SD_STATE_FILE, e)) {
return STATUS_FILE_NEXISTS;
}
// Now the file should exist in any case. Still check whether it exists.
fstream sdStatus(SD_STATE_FILE);
if (not sdStatus.good()) {
return STATUS_FILE_NEXISTS;
}
string line;
uint8_t idx = 0;
sd::SdCard currentSd = sd::SdCard::SLOT_0;
// Process status file line by line
while (std::getline(sdStatus, line)) {
processSdStatusLine(line, idx, currentSd);
}
if (sdStates.first != sd::SdState::MOUNTED && sdStates.second != sd::SdState::MOUNTED) {
sdCardActive = false;
}
return returnvalue::OK;
}
const char* SdCardManager::getCurrentMountPrefix() const {
@ -585,3 +577,8 @@ void SdCardManager::markUnusable() {
MutexGuard mg(defaultLock, LOCK_TYPE, OTHER_TIMEOUT, LOCK_CTX);
markedUnusable = true;
}
void SdCardManager::markUsable() {
MutexGuard mg(defaultLock, LOCK_TYPE, OTHER_TIMEOUT, LOCK_CTX);
markedUnusable = false;
}

View File

@ -114,18 +114,7 @@ class SdCardManager : public SystemObject, public SdCardMountedIF {
* @return - returnvalue::OK on success, ALREADY_ON if it is already on,
* SYSTEM_CALL_ERROR on system error
*/
ReturnValue_t switchOffSdCard(sd::SdCard sdCard, bool doUnmountSdCard = true,
SdStatePair* statusPair = nullptr);
/**
* Update the state file or creates one if it does not exist. You need to call this
* function before calling #sdCardActive
* @return
* - returnvalue::OK if the state file was updated successfully
* - CommandExecutor::COMMAND_PENDING: Non-blocking command is pending
* - returnvalue::FAILED: blocking command failed
*/
ReturnValue_t updateSdCardStateFile();
ReturnValue_t switchOffSdCard(sd::SdCard sdCard, SdStatePair& sdStates, bool doUnmountSdCard);
/**
* Get the state of the SD cards. If the state file does not exist, this function will
@ -215,6 +204,7 @@ class SdCardManager : public SystemObject, public SdCardMountedIF {
ReturnValue_t performFsck(sd::SdCard sdcard, bool printOutput, int& linuxError);
void markUnusable();
void markUsable();
private:
CommandExecutor cmdExecutor;
@ -228,13 +218,21 @@ class SdCardManager : public SystemObject, public SdCardMountedIF {
MutexIF* prefLock = nullptr;
MutexIF* defaultLock = nullptr;
static constexpr MutexIF::TimeoutType LOCK_TYPE = MutexIF::TimeoutType::WAITING;
static constexpr uint32_t SD_LOCK_TIMEOUT = 250;
static constexpr uint32_t SD_LOCK_TIMEOUT = 100;
static constexpr uint32_t OTHER_TIMEOUT = 20;
static constexpr char LOCK_CTX[] = "SdCardManager";
SdCardManager();
ReturnValue_t updateSdStatePair();
/**
* Update the state file or creates one if it does not exist. You need to call this
* function before calling #sdCardActive
* @return
* - returnvalue::OK if the state file was updated successfully
* - CommandExecutor::COMMAND_PENDING: Non-blocking command is pending
* - returnvalue::FAILED: blocking command failed
*/
ReturnValue_t updateSdCardStateFile();
ReturnValue_t setSdCardState(sd::SdCard sdCard, bool on);

View File

@ -1,27 +1,45 @@
#include "ObjectFactory.h"
#include "objectFactory.h"
#include <fsfw/devicehandlers/HealthDevice.h>
#include <fsfw/subsystem/Subsystem.h>
#include <linux/devices/AcsBoardPolling.h>
#include <linux/devices/ImtqPollingTask.h>
#include <linux/devices/RwPollingTask.h>
#include <mission/devices/GyrL3gCustomHandler.h>
#include <mission/devices/MgmLis3CustomHandler.h>
#include <mission/devices/MgmRm3100CustomHandler.h>
#include <mission/system/fdir/StrFdir.h>
#include <fsfw/tasks/TaskFactory.h>
#include <fsfw_hal/linux/uio/UioMapper.h>
#include <linux/acs/AcsBoardPolling.h>
#include <linux/acs/GpsHyperionLinuxController.h>
#include <linux/acs/ImtqPollingTask.h>
#include <linux/acs/RwPollingTask.h>
#include <linux/acs/StrComHandler.h>
#include <linux/com/SyrlinksComHandler.h>
#include <linux/payload/PlocMemoryDumper.h>
#include <linux/payload/PlocMpsocHandler.h>
#include <linux/payload/PlocMpsocSpecialComHelper.h>
#include <linux/payload/ScexUartReader.h>
#include <linux/payload/plocMpsocHelpers.h>
#include <linux/power/CspComIF.h>
#include <mission/acs/GyrL3gCustomHandler.h>
#include <mission/acs/MgmLis3CustomHandler.h>
#include <mission/acs/MgmRm3100CustomHandler.h>
#include <mission/acs/str/StarTrackerHandler.h>
#include <mission/acs/str/strHelpers.h>
#include <mission/com/LiveTmTask.h>
#include <mission/com/PersistentLogTmStoreTask.h>
#include <mission/com/PersistentSingleTmStoreTask.h>
#include <mission/power/CspCookie.h>
#include <mission/system/acs/ImtqAssembly.h>
#include <mission/system/acs/StrAssembly.h>
#include <mission/system/acs/StrFdir.h>
#include <mission/system/com/SyrlinksAssembly.h>
#include <mission/system/objects/CamSwitcher.h>
#include <mission/system/objects/ImtqAssembly.h>
#include <mission/system/objects/StrAssembly.h>
#include <mission/system/objects/SyrlinksAssembly.h>
#include <mission/tmtc/LiveTmTask.h>
#include <mission/tmtc/PersistentLogTmStoreTask.h>
#include <mission/tmtc/PersistentSingleTmStoreTask.h>
#include <mission/system/tcs/TmpDevFdir.h>
#include <cstdint>
#include <cstring>
#include "OBSWConfig.h"
#include "bsp_q7s/acs/StrConfigPathGetter.h"
#include "bsp_q7s/boardtest/Q7STestTask.h"
#include "bsp_q7s/callbacks/gnssCallback.h"
#include "bsp_q7s/callbacks/pcduSwitchCb.h"
#include "bsp_q7s/callbacks/q7sGpioCallbacks.h"
#include "bsp_q7s/callbacks/rwSpiCallback.h"
#include "busConf.h"
#include "ccsdsConfig.h"
#include "devConf.h"
@ -35,56 +53,57 @@
#include "linux/boardtest/SpiTestClass.h"
#include "linux/boardtest/UartTestClass.h"
#include "linux/callbacks/gpioCallbacks.h"
#include "linux/csp/CspComIF.h"
#include "linux/devices/GpsHyperionLinuxController.h"
#include "linux/devices/ScexUartReader.h"
#include "linux/devices/devicedefinitions/PlocMPSoCDefinitions.h"
#include "linux/devices/devicedefinitions/StarTrackerDefinitions.h"
#include "linux/devices/ploc/PlocMPSoCHandler.h"
#include "linux/devices/ploc/PlocMPSoCHelper.h"
#include "linux/devices/ploc/PlocMemoryDumper.h"
#include "linux/devices/ploc/PlocSupervisorHandler.h"
#include "linux/devices/startracker/StarTrackerHandler.h"
#include "linux/devices/startracker/StrHelper.h"
#include "linux/ipcore/AxiPtmeConfig.h"
#include "linux/ipcore/PapbVcInterface.h"
#include "linux/ipcore/PdecHandler.h"
#include "linux/ipcore/Ptme.h"
#include "linux/ipcore/PtmeConfig.h"
#include "linux/payload/FreshSupvHandler.h"
#include "mission/config/configfile.h"
#include "mission/csp/CspCookie.h"
#include "mission/system/fdir/AcsBoardFdir.h"
#include "mission/system/fdir/GomspacePowerFdir.h"
#include "mission/system/fdir/RtdFdir.h"
#include "mission/system/fdir/SusFdir.h"
#include "mission/system/fdir/SyrlinksFdir.h"
#include "mission/system/objects/AcsSubsystem.h"
#include "mission/system/objects/RwAssembly.h"
#include "mission/system/objects/TcsBoardAssembly.h"
#include "mission/system/tree/acsModeTree.h"
#include "mission/system/tree/comModeTree.h"
#include "mission/system/tree/payloadModeTree.h"
#include "mission/system/tree/tcsModeTree.h"
#include "mission/system/acs/AcsBoardFdir.h"
#include "mission/system/acs/AcsSubsystem.h"
#include "mission/system/acs/RwAssembly.h"
#include "mission/system/acs/SusFdir.h"
#include "mission/system/acs/acsModeTree.h"
#include "mission/system/com/SyrlinksFdir.h"
#include "mission/system/com/comModeTree.h"
#include "mission/system/payloadModeTree.h"
#include "mission/system/power/GomspacePowerFdir.h"
#include "mission/system/tcs/RtdFdir.h"
#include "mission/system/tcs/TcsBoardAssembly.h"
#include "mission/system/tcs/tcsModeTree.h"
#include "mission/tmtc/tmFilters.h"
#include "mission/utility/GlobalConfigHandler.h"
#include "tmtc/pusIds.h"
using gpio::Direction;
using gpio::Levels;
#if OBSW_TEST_LIBGPIOD == 1
#include "linux/boardtest/LibgpiodTest.h"
#endif
#include <mission/devices/GyrAdis1650XHandler.h>
#include <mission/devices/ImtqHandler.h>
#include <mission/devices/PcduHandler.h>
#include <mission/devices/Pdu1Handler.h>
#include <mission/devices/Pdu2Handler.h>
#include <mission/devices/SyrlinksHandler.h>
#include <mission/devices/devicedefinitions/rwHelpers.h>
#include <mission/tmtc/VirtualChannelWithQueue.h>
#include <mission/SolarArrayDeploymentHandler.h>
#include <mission/acs/GyrAdis1650XHandler.h>
#include <mission/acs/ImtqHandler.h>
#include <mission/acs/rwHelpers.h>
#include <mission/com/SyrlinksHandler.h>
#include <mission/com/VirtualChannelWithQueue.h>
#include <mission/payload/PayloadPcduHandler.h>
#include <mission/payload/RadiationSensorHandler.h>
#include <mission/payload/payloadPcduDefinitions.h>
#include <mission/payload/radSensorDefinitions.h>
#include <mission/power/AcuHandler.h>
#include <mission/power/BpxBatteryHandler.h>
#include <mission/power/P60DockHandler.h>
#include <mission/power/PcduHandler.h>
#include <mission/power/Pdu1Handler.h>
#include <mission/power/Pdu2Handler.h>
#include <mission/power/gsDefs.h>
#include <mission/tcs/HeaterHandler.h>
#include <mission/tcs/Max31865Definitions.h>
#include <mission/tcs/Max31865PT1000Handler.h>
#include <mission/tcs/Tmp1075Handler.h>
#include <sstream>
#include "bsp_q7s/core/defs.h"
#include "fsfw/datapoollocal/LocalDataPoolManager.h"
#include "fsfw/tmtcpacket/pus/tm.h"
#include "fsfw/tmtcservices/CommandingServiceBase.h"
@ -101,29 +120,25 @@ using gpio::Levels;
#include "fsfw_hal/linux/serial/SerialCookie.h"
#include "fsfw_hal/linux/spi/SpiComIF.h"
#include "fsfw_hal/linux/spi/SpiCookie.h"
#include "mission/core/GenericFactory.h"
#include "mission/devices/ACUHandler.h"
#include "mission/devices/BpxBatteryHandler.h"
#include "mission/devices/HeaterHandler.h"
#include "mission/devices/Max31865PT1000Handler.h"
#include "mission/devices/P60DockHandler.h"
#include "mission/devices/PayloadPcduHandler.h"
#include "mission/devices/RadiationSensorHandler.h"
#include "mission/devices/RwHandler.h"
#include "mission/devices/SolarArrayDeploymentHandler.h"
#include "mission/devices/Tmp1075Handler.h"
#include "mission/devices/devicedefinitions/GomspaceDefinitions.h"
#include "mission/devices/devicedefinitions/Max31865Definitions.h"
#include "mission/devices/devicedefinitions/RadSensorDefinitions.h"
#include "mission/devices/devicedefinitions/SyrlinksDefinitions.h"
#include "mission/devices/devicedefinitions/payloadPcduDefinitions.h"
#include "mission/system/objects/AcsBoardAssembly.h"
#include "mission/tmtc/CcsdsIpCoreHandler.h"
#include "mission/acs/RwHandler.h"
#include "mission/com/CcsdsIpCoreHandler.h"
#include "mission/com/syrlinksDefs.h"
#include "mission/genericFactory.h"
#include "mission/system/acs/AcsBoardAssembly.h"
#include "mission/tmtc/TmFunnelHandler.h"
using gpio::Direction;
using gpio::Levels;
ResetArgs RESET_ARGS_GNSS;
std::atomic_bool LINK_STATE = CcsdsIpCoreHandler::LINK_DOWN;
std::atomic_uint16_t I2C_FATAL_ERRORS = 0;
std::atomic_bool PTME_LOCKED = false;
std::atomic_uint16_t signals::I2C_FATAL_ERRORS = 0;
uint8_t core::FW_VERSION_MAJOR = 0;
uint8_t core::FW_VERSION_MINOR = 0;
uint8_t core::FW_VERSION_REVISION = 0;
bool core::FW_VERSION_HAS_SHA = false;
char core::FW_VERSION_GIT_SHA[4] = {};
void Factory::setStaticFrameworkObjectIds() {
PusServiceBase::PUS_DISTRIBUTOR = objects::PUS_PACKET_DISTRIBUTOR;
@ -145,27 +160,23 @@ void Factory::setStaticFrameworkObjectIds() {
void ObjectFactory::setStatics() { Factory::setStaticFrameworkObjectIds(); }
void ObjectFactory::createTmpComponents() {
std::vector<std::pair<object_id_t, address_t>> tmpDevIds = {{
{objects::TMP1075_HANDLER_TCS_0, addresses::TMP1075_TCS_0},
{objects::TMP1075_HANDLER_TCS_1, addresses::TMP1075_TCS_1},
{objects::TMP1075_HANDLER_PLPCDU_0, addresses::TMP1075_PLPCDU_0},
// damaged
// {objects::TMP1075_HANDLER_PLPCDU_1, addresses::TMP1075_PLPCDU_1},
{objects::TMP1075_HANDLER_IF_BOARD, addresses::TMP1075_IF_BOARD},
}};
void ObjectFactory::createTmpComponents(
std::vector<std::pair<object_id_t, address_t>> tmpDevsToAdd) {
const char* tmpI2cDev = q7s::I2C_PS_EIVE;
if (core::FW_VERSION_MAJOR == 4) {
tmpI2cDev = q7s::I2C_PL_EIVE;
} else if (core::FW_VERSION_MAJOR >= 5) {
tmpI2cDev = q7s::I2C_Q7_EIVE;
}
std::vector<I2cCookie*> tmpDevCookies;
for (size_t idx = 0; idx < tmpDevIds.size(); idx++) {
for (size_t idx = 0; idx < tmpDevsToAdd.size(); idx++) {
tmpDevCookies.push_back(
new I2cCookie(tmpDevIds[idx].second, TMP1075::MAX_REPLY_LENGTH, q7s::I2C_PS_EIVE));
new I2cCookie(tmpDevsToAdd[idx].second, TMP1075::MAX_REPLY_LENGTH, tmpI2cDev));
auto* tmpDevHandler =
new Tmp1075Handler(tmpDevIds[idx].first, objects::I2C_COM_IF, tmpDevCookies[idx]);
new Tmp1075Handler(tmpDevsToAdd[idx].first, objects::I2C_COM_IF, tmpDevCookies[idx]);
tmpDevHandler->setCustomFdir(new TmpDevFdir(tmpDevsToAdd[idx].first));
tmpDevHandler->connectModeTreeParent(satsystem::tcs::SUBSYSTEM);
// TODO: Remove this after TCS subsystem was added
// These devices are connected to the 3V3 stack and should be powered permanently. Therefore,
// we set them to normal mode immediately here.
tmpDevHandler->setModeNormal();
}
}
@ -179,34 +190,36 @@ void ObjectFactory::createCommunicationInterfaces(LinuxLibgpioIF** gpioComIF,
*gpioComIF = new LinuxLibgpioIF(objects::GPIO_IF);
/* Communication interfaces */
new CspComIF(objects::CSP_COM_IF);
new CspComIF(objects::CSP_COM_IF, "CSP_ROUTER", 60);
*i2cComIF = new I2cComIF(objects::I2C_COM_IF);
*uartComIF = new SerialComIF(objects::UART_COM_IF);
*spiMainComIF = new SpiComIF(objects::SPI_MAIN_COM_IF, q7s::SPI_DEFAULT_DEV, **gpioComIF);
//*spiRWComIF = new SpiComIF(objects::SPI_RW_COM_IF, q7s::SPI_RW_DEV, **gpioComIF);
}
void ObjectFactory::createPcduComponents(LinuxLibgpioIF* gpioComIF, PowerSwitchIF** pwrSwitcher) {
void ObjectFactory::createPcduComponents(LinuxLibgpioIF* gpioComIF, PowerSwitchIF** pwrSwitcher,
bool enableHkSets) {
CspCookie* p60DockCspCookie = new CspCookie(P60Dock::MAX_REPLY_SIZE, addresses::P60DOCK, 500);
CspCookie* pdu1CspCookie = new CspCookie(PDU::MAX_REPLY_SIZE, addresses::PDU1, 500);
CspCookie* pdu2CspCookie = new CspCookie(PDU::MAX_REPLY_SIZE, addresses::PDU2, 500);
CspCookie* acuCspCookie = new CspCookie(ACU::MAX_REPLY_SIZE, addresses::ACU, 500);
auto p60Fdir = new GomspacePowerFdir(objects::P60DOCK_HANDLER);
P60DockHandler* p60dockhandler =
new P60DockHandler(objects::P60DOCK_HANDLER, objects::CSP_COM_IF, p60DockCspCookie, p60Fdir);
P60DockHandler* p60dockhandler = new P60DockHandler(objects::P60DOCK_HANDLER, objects::CSP_COM_IF,
p60DockCspCookie, p60Fdir, enableHkSets);
auto pdu1Fdir = new GomspacePowerFdir(objects::PDU1_HANDLER);
Pdu1Handler* pdu1handler =
new Pdu1Handler(objects::PDU1_HANDLER, objects::CSP_COM_IF, pdu1CspCookie, pdu1Fdir);
Pdu1Handler* pdu1handler = new Pdu1Handler(objects::PDU1_HANDLER, objects::CSP_COM_IF,
pdu1CspCookie, pdu1Fdir, enableHkSets);
auto pdu2Fdir = new GomspacePowerFdir(objects::PDU2_HANDLER);
Pdu2Handler* pdu2handler =
new Pdu2Handler(objects::PDU2_HANDLER, objects::CSP_COM_IF, pdu2CspCookie, pdu2Fdir);
Pdu2Handler* pdu2handler = new Pdu2Handler(objects::PDU2_HANDLER, objects::CSP_COM_IF,
pdu2CspCookie, pdu2Fdir, enableHkSets);
#if OBSW_ADD_GOMSPACE_ACU == 1
CspCookie* acuCspCookie = new CspCookie(ACU::MAX_REPLY_SIZE, addresses::ACU, 500);
auto acuFdir = new GomspacePowerFdir(objects::ACU_HANDLER);
ACUHandler* acuhandler =
new ACUHandler(objects::ACU_HANDLER, objects::CSP_COM_IF, acuCspCookie, acuFdir);
ACUHandler* acuhandler = new ACUHandler(objects::ACU_HANDLER, objects::CSP_COM_IF, acuCspCookie,
acuFdir, enableHkSets);
#endif
auto pcduHandler = new PcduHandler(objects::PCDU_HANDLER, 50);
/**
@ -216,7 +229,9 @@ void ObjectFactory::createPcduComponents(LinuxLibgpioIF* gpioComIF, PowerSwitchI
p60dockhandler->setModeNormal();
pdu1handler->setModeNormal();
pdu2handler->setModeNormal();
#if OBSW_ADD_GOMSPACE_ACU == 1
acuhandler->setModeNormal();
#endif
if (pwrSwitcher != nullptr) {
*pwrSwitcher = pcduHandler;
}
@ -230,23 +245,10 @@ void ObjectFactory::createPcduComponents(LinuxLibgpioIF* gpioComIF, PowerSwitchI
ReturnValue_t ObjectFactory::createRadSensorComponent(LinuxLibgpioIF* gpioComIF,
Stack5VHandler& stackHandler) {
using namespace gpio;
if (gpioComIF == nullptr) {
return returnvalue::FAILED;
}
GpioCookie* gpioCookieRadSensor = new GpioCookie;
std::stringstream consumer;
consumer << "0x" << std::hex << objects::RAD_SENSOR;
GpiodRegularByLineName* gpio = new GpiodRegularByLineName(
q7s::gpioNames::RAD_SENSOR_CHIP_SELECT, consumer.str(), Direction::OUT, Levels::HIGH);
gpioCookieRadSensor->addGpio(gpioIds::CS_RAD_SENSOR, gpio);
gpio = new GpiodRegularByLineName(q7s::gpioNames::ENABLE_RADFET, consumer.str(), Direction::OUT,
Levels::LOW);
gpioCookieRadSensor->addGpio(gpioIds::ENABLE_RADFET, gpio);
gpioChecker(gpioComIF->addGpios(gpioCookieRadSensor), "RAD sensor");
createRadSensorChipSelect(gpioComIF);
SpiCookie* spiCookieRadSensor =
new SpiCookie(addresses::RAD_SENSOR, gpioIds::CS_RAD_SENSOR, RAD_SENSOR::READ_SIZE,
new SpiCookie(addresses::RAD_SENSOR, gpioIds::CS_RAD_SENSOR, radSens::READ_SIZE,
spi::DEFAULT_MAX_1227_MODE, spi::DEFAULT_MAX_1227_SPEED);
spiCookieRadSensor->setMutexParams(MutexIF::TimeoutType::WAITING, spi::RAD_SENSOR_CS_TIMEOUT);
auto radSensor = new RadiationSensorHandler(objects::RAD_SENSOR, objects::SPI_MAIN_COM_IF,
@ -356,7 +358,8 @@ void ObjectFactory::createAcsBoardGpios(GpioCookie& cookie) {
}
void ObjectFactory::createAcsBoardComponents(SpiComIF& spiComIF, LinuxLibgpioIF* gpioComIF,
SerialComIF* uartComIF, PowerSwitchIF& pwrSwitcher) {
SerialComIF* uartComIF, PowerSwitchIF& pwrSwitcher,
bool enableHkSets, adis1650x::Type adisType) {
using namespace gpio;
GpioCookie* gpioCookieAcsBoard = new GpioCookie();
createAcsBoardGpios(*gpioCookieAcsBoard);
@ -442,9 +445,8 @@ void ObjectFactory::createAcsBoardComponents(SpiComIF& spiComIF, LinuxLibgpioIF*
new SpiCookie(addresses::GYRO_0_ADIS, gpioIds::GYRO_0_ADIS_CS, adis1650x::MAXIMUM_REPLY_SIZE,
spi::DEFAULT_ADIS16507_MODE, spi::DEFAULT_ADIS16507_SPEED);
spiCookie->setMutexParams(MutexIF::TimeoutType::WAITING, spi::ACS_BOARD_CS_TIMEOUT);
auto adisHandler =
new GyrAdis1650XHandler(objects::GYRO_0_ADIS_HANDLER, objects::ACS_BOARD_POLLING_TASK,
spiCookie, adis1650x::Type::ADIS16505);
auto adisHandler = new GyrAdis1650XHandler(objects::GYRO_0_ADIS_HANDLER,
objects::ACS_BOARD_POLLING_TASK, spiCookie, adisType);
fdir = new AcsBoardFdir(objects::GYRO_0_ADIS_HANDLER);
adisHandler->setCustomFdir(fdir);
assemblyChildren[4] = adisHandler;
@ -477,9 +479,8 @@ void ObjectFactory::createAcsBoardComponents(SpiComIF& spiComIF, LinuxLibgpioIF*
new SpiCookie(addresses::GYRO_2_ADIS, gpioIds::GYRO_2_ADIS_CS, adis1650x::MAXIMUM_REPLY_SIZE,
spi::DEFAULT_ADIS16507_MODE, spi::DEFAULT_ADIS16507_SPEED);
spiCookie->setMutexParams(MutexIF::TimeoutType::WAITING, spi::ACS_BOARD_CS_TIMEOUT);
adisHandler =
new GyrAdis1650XHandler(objects::GYRO_2_ADIS_HANDLER, objects::ACS_BOARD_POLLING_TASK,
spiCookie, adis1650x::Type::ADIS16505);
adisHandler = new GyrAdis1650XHandler(objects::GYRO_2_ADIS_HANDLER,
objects::ACS_BOARD_POLLING_TASK, spiCookie, adisType);
fdir = new AcsBoardFdir(objects::GYRO_2_ADIS_HANDLER);
adisHandler->setCustomFdir(fdir);
assemblyChildren[6] = adisHandler;
@ -509,9 +510,9 @@ void ObjectFactory::createAcsBoardComponents(SpiComIF& spiComIF, LinuxLibgpioIF*
debugGps = true;
#endif
RESET_ARGS_GNSS.gpioComIF = gpioComIF;
RESET_ARGS_GNSS.waitPeriodMs = 100;
auto gpsCtrl =
new GpsHyperionLinuxController(objects::GPS_CONTROLLER, objects::NO_OBJECT, debugGps);
RESET_ARGS_GNSS.waitPeriodMs = 5;
auto gpsCtrl = new GpsHyperionLinuxController(objects::GPS_CONTROLLER, objects::NO_OBJECT,
enableHkSets, debugGps);
gpsCtrl->setResetPinTriggerFunction(gps::triggerGpioResetPin, &RESET_ARGS_GNSS);
ObjectFactory::createAcsBoardAssy(pwrSwitcher, assemblyChildren, gpsCtrl, gpioComIF);
@ -586,22 +587,23 @@ void ObjectFactory::createSolarArrayDeploymentComponents(PowerSwitchIF& pwrSwitc
}
new SolarArrayDeploymentHandler(objects::SOLAR_ARRAY_DEPL_HANDLER, gpioIF, pwrSwitcher,
pcdu::Switches::PDU2_CH5_DEPLOYMENT_MECHANISM_8V,
power::Switches::PDU2_CH5_DEPLOYMENT_MECHANISM_8V,
gpioIds::DEPLSA1, gpioIds::DEPLSA2, *SdCardManager::instance());
}
void ObjectFactory::createSyrlinksComponents(PowerSwitchIF* pwrSwitcher) {
auto* syrlinksUartCookie =
new SerialCookie(objects::SYRLINKS_HANDLER, q7s::UART_SYRLINKS_DEV, uart::SYRLINKS_BAUD,
new SerialCookie(objects::SYRLINKS_HANDLER, q7s::UART_SYRLINKS_DEV, serial::SYRLINKS_BAUD,
syrlinks::MAX_REPLY_SIZE, UartModes::NON_CANONICAL);
syrlinksUartCookie->setParityEven();
new SyrlinksComHandler(objects::SYRLINKS_COM_HANDLER);
auto* syrlinksAssy = new SyrlinksAssembly(objects::SYRLINKS_ASSY);
syrlinksAssy->connectModeTreeParent(satsystem::com::SUBSYSTEM);
auto syrlinksFdir = new SyrlinksFdir(objects::SYRLINKS_HANDLER);
auto syrlinksHandler =
new SyrlinksHandler(objects::SYRLINKS_HANDLER, objects::UART_COM_IF, syrlinksUartCookie,
pcdu::PDU1_CH1_SYRLINKS_12V, syrlinksFdir);
new SyrlinksHandler(objects::SYRLINKS_HANDLER, objects::SYRLINKS_COM_HANDLER,
syrlinksUartCookie, power::PDU1_CH1_SYRLINKS_12V, syrlinksFdir);
syrlinksHandler->setPowerSwitcher(pwrSwitcher);
syrlinksHandler->connectModeTreeParent(*syrlinksAssy);
#if OBSW_DEBUG_SYRLINKS == 1
@ -609,11 +611,11 @@ void ObjectFactory::createSyrlinksComponents(PowerSwitchIF* pwrSwitcher) {
#endif
}
void ObjectFactory::createPayloadComponents(LinuxLibgpioIF* gpioComIF, PowerSwitchIF& pwrSwitch) {
void ObjectFactory::createPayloadComponents(LinuxLibgpioIF* gpioComIF, PowerSwitchIF& pwrSwitcher) {
using namespace gpio;
std::stringstream consumer;
auto* camSwitcher =
new CamSwitcher(objects::CAM_SWITCHER, pwrSwitch, pcdu::PDU2_CH8_PAYLOAD_CAMERA);
new CamSwitcher(objects::CAM_SWITCHER, pwrSwitcher, power::PDU2_CH8_PAYLOAD_CAMERA);
camSwitcher->connectModeTreeParent(satsystem::payload::SUBSYSTEM);
#if OBSW_ADD_PLOC_MPSOC == 1
consumer << "0x" << std::hex << objects::PLOC_MPSOC_HANDLER;
@ -623,11 +625,11 @@ void ObjectFactory::createPayloadComponents(LinuxLibgpioIF* gpioComIF, PowerSwit
mpsocGpioCookie->addGpio(gpioIds::ENABLE_MPSOC_UART, gpioConfigMPSoC);
gpioChecker(gpioComIF->addGpios(mpsocGpioCookie), "PLOC MPSoC");
auto mpsocCookie =
new SerialCookie(objects::PLOC_MPSOC_HANDLER, q7s::UART_PLOC_MPSOC_DEV, uart::PLOC_MPSOC_BAUD,
mpsoc::MAX_REPLY_SIZE, UartModes::NON_CANONICAL);
new SerialCookie(objects::PLOC_MPSOC_HANDLER, q7s::UART_PLOC_MPSOC_DEV,
serial::PLOC_MPSOC_BAUD, mpsoc::MAX_REPLY_SIZE, UartModes::NON_CANONICAL);
mpsocCookie->setNoFixedSizeReply();
auto plocMpsocHelper = new PlocMPSoCHelper(objects::PLOC_MPSOC_HELPER);
auto* mpsocHandler = new PlocMPSoCHandler(
auto plocMpsocHelper = new PlocMpsocSpecialComHelper(objects::PLOC_MPSOC_HELPER);
auto* mpsocHandler = new PlocMpsocHandler(
objects::PLOC_MPSOC_HANDLER, objects::UART_COM_IF, mpsocCookie, plocMpsocHelper,
Gpio(gpioIds::ENABLE_MPSOC_UART, gpioComIF), objects::PLOC_SUPERVISOR_HANDLER);
mpsocHandler->connectModeTreeParent(satsystem::payload::SUBSYSTEM);
@ -639,14 +641,19 @@ void ObjectFactory::createPayloadComponents(LinuxLibgpioIF* gpioComIF, PowerSwit
auto supvGpioCookie = new GpioCookie;
supvGpioCookie->addGpio(gpioIds::ENABLE_SUPV_UART, gpioConfigSupv);
gpioComIF->addGpios(supvGpioCookie);
const char* plocSupvDev = q7s::UART_PLOC_SUPERVISOR_DEV;
if (not std::filesystem::exists(plocSupvDev)) {
plocSupvDev = q7s::UART_PLOC_SUPERVISOR_DEV_FALLBACK;
}
auto supervisorCookie =
new SerialCookie(objects::PLOC_SUPERVISOR_HANDLER, q7s::UART_PLOC_SUPERVSIOR_DEV,
uart::PLOC_SUPV_BAUD, supv::MAX_PACKET_SIZE * 20, UartModes::NON_CANONICAL);
new SerialCookie(objects::PLOC_SUPERVISOR_HANDLER, plocSupvDev, serial::PLOC_SUPV_BAUD,
supv::MAX_PACKET_SIZE * 20, UartModes::NON_CANONICAL);
supervisorCookie->setNoFixedSizeReply();
auto supvHelper = new PlocSupvUartManager(objects::PLOC_SUPERVISOR_HELPER);
auto* supvHandler = new PlocSupervisorHandler(objects::PLOC_SUPERVISOR_HANDLER, supervisorCookie,
Gpio(gpioIds::ENABLE_SUPV_UART, gpioComIF),
pcdu::PDU1_CH6_PLOC_12V, *supvHelper);
new PlocSupvUartManager(objects::PLOC_SUPERVISOR_HELPER);
DhbConfig dhbConf(objects::PLOC_SUPERVISOR_HANDLER);
auto* supvHandler =
new FreshSupvHandler(dhbConf, supervisorCookie, Gpio(gpioIds::ENABLE_SUPV_UART, gpioComIF),
pwrSwitcher, power::PDU1_CH6_PLOC_12V);
supvHandler->connectModeTreeParent(satsystem::payload::SUBSYSTEM);
#endif /* OBSW_ADD_PLOC_SUPERVISOR == 1 */
static_cast<void>(consumer);
@ -723,7 +730,7 @@ void ObjectFactory::createReactionWheelComponents(LinuxLibgpioIF* gpioComIF,
rws[idx] = rwHandler;
}
createRwAssy(*pwrSwitcher, pcdu::Switches::PDU2_CH2_RW_5V, rws, rwIds);
createRwAssy(*pwrSwitcher, power::Switches::PDU2_CH2_RW_5V, rws, rwIds);
#endif /* OBSW_ADD_RW == 1 */
}
@ -732,42 +739,32 @@ ReturnValue_t ObjectFactory::createCcsdsComponents(CcsdsComponentArgs& args) {
// GPIO definitions of signals connected to the virtual channel interfaces of the PTME IP Core
GpioCookie* gpioCookiePtmeIp = new GpioCookie;
GpiodRegularByLineName* gpio = nullptr;
gpio = new GpiodRegularByLineName(q7s::gpioNames::PAPB_BUSY_SIGNAL_VC0, "PAPB VC0");
gpioCookiePtmeIp->addGpio(gpioIds::VC0_PAPB_BUSY, gpio);
gpio = new GpiodRegularByLineName(q7s::gpioNames::PAPB_EMPTY_SIGNAL_VC0, "PAPB VC0");
gpioCookiePtmeIp->addGpio(gpioIds::VC0_PAPB_EMPTY, gpio);
gpio = new GpiodRegularByLineName(q7s::gpioNames::PAPB_BUSY_SIGNAL_VC1, "PAPB VC1");
gpioCookiePtmeIp->addGpio(gpioIds::VC1_PAPB_BUSY, gpio);
gpio = new GpiodRegularByLineName(q7s::gpioNames::PAPB_EMPTY_SIGNAL_VC1, "PAPB VC1");
gpioCookiePtmeIp->addGpio(gpioIds::VC1_PAPB_EMPTY, gpio);
gpio = new GpiodRegularByLineName(q7s::gpioNames::PAPB_BUSY_SIGNAL_VC2, "PAPB VC2");
gpioCookiePtmeIp->addGpio(gpioIds::VC2_PAPB_BUSY, gpio);
gpio = new GpiodRegularByLineName(q7s::gpioNames::PAPB_EMPTY_SIGNAL_VC2, "PAPB VC2");
gpioCookiePtmeIp->addGpio(gpioIds::VC2_PAPB_EMPTY, gpio);
gpio = new GpiodRegularByLineName(q7s::gpioNames::PAPB_BUSY_SIGNAL_VC3, "PAPB VC3");
gpioCookiePtmeIp->addGpio(gpioIds::VC3_PAPB_BUSY, gpio);
gpio = new GpiodRegularByLineName(q7s::gpioNames::PAPB_EMPTY_SIGNAL_VC3, "PAPB VC3");
gpioCookiePtmeIp->addGpio(gpioIds::VC3_PAPB_EMPTY, gpio);
// Initialise to low and then pull high to do a PTME reset, which puts the PTME in reset
// state. It will be put out of reset in the CCSDS handler initialize function.
gpio = new GpiodRegularByLineName(q7s::gpioNames::PTME_RESETN, "PTME RESETN",
gpio::Direction::OUT, gpio::Levels::LOW);
gpio::Direction::OUT, gpio::Levels::HIGH);
gpioCookiePtmeIp->addGpio(gpioIds::PTME_RESETN, gpio);
gpioChecker(args.gpioComIF.addGpios(gpioCookiePtmeIp), "PTME PAPB VCs");
// Creating virtual channel interfaces
VirtualChannelIF* vc0 =
new PapbVcInterface(&args.gpioComIF, gpioIds::VC0_PAPB_BUSY, gpioIds::VC0_PAPB_EMPTY,
q7s::UIO_PTME, q7s::uiomapids::PTME_VC0);
new PapbVcInterface(&args.gpioComIF, gpioIds::VC0_PAPB_EMPTY, q7s::UIO_PTME,
q7s::uiomapids::PTME_VC0, config::MAX_SPACEPACKET_TC_SIZE);
VirtualChannelIF* vc1 =
new PapbVcInterface(&args.gpioComIF, gpioIds::VC1_PAPB_BUSY, gpioIds::VC1_PAPB_EMPTY,
q7s::UIO_PTME, q7s::uiomapids::PTME_VC1);
new PapbVcInterface(&args.gpioComIF, gpioIds::VC1_PAPB_EMPTY, q7s::UIO_PTME,
q7s::uiomapids::PTME_VC1, config::MAX_SPACEPACKET_TC_SIZE);
VirtualChannelIF* vc2 =
new PapbVcInterface(&args.gpioComIF, gpioIds::VC2_PAPB_BUSY, gpioIds::VC2_PAPB_EMPTY,
q7s::UIO_PTME, q7s::uiomapids::PTME_VC2);
new PapbVcInterface(&args.gpioComIF, gpioIds::VC2_PAPB_EMPTY, q7s::UIO_PTME,
q7s::uiomapids::PTME_VC2, config::MAX_SPACEPACKET_TC_SIZE);
VirtualChannelIF* vc3 =
new PapbVcInterface(&args.gpioComIF, gpioIds::VC3_PAPB_BUSY, gpioIds::VC3_PAPB_EMPTY,
q7s::UIO_PTME, q7s::uiomapids::PTME_VC3);
new PapbVcInterface(&args.gpioComIF, gpioIds::VC3_PAPB_EMPTY, q7s::UIO_PTME,
q7s::uiomapids::PTME_VC3, config::MAX_SPACEPACKET_TC_SIZE);
// Creating ptme object and adding virtual channel interfaces
Ptme* ptme = new Ptme(objects::PTME);
ptme->addVcInterface(ccsds::VC0, vc0);
@ -785,34 +782,43 @@ ReturnValue_t ObjectFactory::createCcsdsComponents(CcsdsComponentArgs& args) {
*args.ipCoreHandler =
new CcsdsIpCoreHandler(objects::CCSDS_HANDLER, objects::CCSDS_PACKET_DISTRIBUTOR, *ptmeConfig,
LINK_STATE, &args.gpioComIF, gpios);
LINK_STATE, &args.gpioComIF, gpios, PTME_LOCKED);
// This VC will receive all live TM
auto* vcWithQueue =
new VirtualChannelWithQueue(objects::PTME_VC0_LIVE_TM, ccsds::VC0, "PTME VC0 LIVE TM", *ptme,
LINK_STATE, args.tmStore, 500);
args.liveDestination = vcWithQueue;
new LiveTmTask(objects::LIVE_TM_TASK, args.pusFunnel, args.cfdpFunnel, *vcWithQueue);
auto* vcWithQueue = new VirtualChannel(objects::PTME_VC0_LIVE_TM, ccsds::VC0, "PTME VC0 LIVE TM",
*ptme, LINK_STATE);
auto* liveTask = new LiveTmTask(objects::LIVE_TM_TASK, args.pusFunnel, args.cfdpFunnel,
*vcWithQueue, PTME_LOCKED, config::LIVE_CHANNEL_NORMAL_QUEUE_SIZE,
config::LIVE_CHANNEL_CFDP_QUEUE_SIZE);
args.normalLiveTmDest = liveTask->getNormalLiveQueueId();
args.cfdpLiveTmDest = liveTask->getCfdpLiveQueueId();
liveTask->connectModeTreeParent(satsystem::com::SUBSYSTEM);
// Set up log store.
auto* vc = new VirtualChannel(objects::PTME_VC1_LOG_TM, ccsds::VC1, "PTME VC1 LOG TM", *ptme,
LINK_STATE);
LogStores logStores(args.stores);
// Core task which handles the LOG store and takes care of dumping it as TM using a VC directly
new PersistentLogTmStoreTask(objects::LOG_STORE_AND_TM_TASK, args.ipcStore, logStores, *vc,
*SdCardManager::instance());
auto* logStore =
new PersistentLogTmStoreTask(objects::LOG_STORE_AND_TM_TASK, args.ipcStore, logStores, *vc,
*SdCardManager::instance(), PTME_LOCKED);
logStore->connectModeTreeParent(satsystem::com::SUBSYSTEM);
vc = new VirtualChannel(objects::PTME_VC2_HK_TM, ccsds::VC2, "PTME VC2 HK TM", *ptme, LINK_STATE);
// Core task which handles the HK store and takes care of dumping it as TM using a VC directly
new PersistentSingleTmStoreTask(objects::HK_STORE_AND_TM_TASK, args.ipcStore,
*args.stores.hkStore, *vc, persTmStore::DUMP_HK_STORE_DONE,
*SdCardManager::instance());
auto* hkStore = new PersistentSingleTmStoreTask(
objects::HK_STORE_AND_TM_TASK, args.ipcStore, *args.stores.hkStore, *vc,
persTmStore::DUMP_HK_STORE_DONE, persTmStore::DUMP_HK_CANCELLED, *SdCardManager::instance(),
PTME_LOCKED);
hkStore->connectModeTreeParent(satsystem::com::SUBSYSTEM);
vc = new VirtualChannel(objects::PTME_VC3_CFDP_TM, ccsds::VC3, "PTME VC3 CFDP TM", *ptme,
LINK_STATE);
// Core task which handles the CFDP store and takes care of dumping it as TM using a VC directly
new PersistentSingleTmStoreTask(objects::CFDP_STORE_AND_TM_TASK, args.ipcStore,
*args.stores.cfdpStore, *vc, persTmStore::DUMP_CFDP_STORE_DONE,
*SdCardManager::instance());
auto* cfdpTask = new PersistentSingleTmStoreTask(
objects::CFDP_STORE_AND_TM_TASK, args.ipcStore, *args.stores.cfdpStore, *vc,
persTmStore::DUMP_CFDP_STORE_DONE, persTmStore::DUMP_CFDP_CANCELLED,
*SdCardManager::instance(), PTME_LOCKED);
cfdpTask->connectModeTreeParent(satsystem::com::SUBSYSTEM);
ReturnValue_t result = (*args.ipCoreHandler)->connectModeTreeParent(satsystem::com::SUBSYSTEM);
if (result != returnvalue::OK) {
@ -833,7 +839,7 @@ ReturnValue_t ObjectFactory::createCcsdsComponents(CcsdsComponentArgs& args) {
uioNames.registers = q7s::UIO_PDEC_REGISTERS;
uioNames.irq = q7s::UIO_PDEC_IRQ;
new PdecHandler(objects::PDEC_HANDLER, objects::CCSDS_HANDLER, &args.gpioComIF,
gpioIds::PDEC_RESET, uioNames);
gpioIds::PDEC_RESET, uioNames, args.pdecCfgMemBaseAddr, args.pdecRamBaseAddr);
GpioCookie* gpioRS485Chip = new GpioCookie;
gpio = new GpiodRegularByLineName(q7s::gpioNames::RS485_EN_TX_CLOCK, "RS485 Transceiver",
Direction::OUT, Levels::LOW);
@ -904,8 +910,6 @@ void ObjectFactory::createPlPcduComponents(LinuxLibgpioIF* gpioComIF, SpiComIF*
new PayloadPcduHandler(objects::PLPCDU_HANDLER, objects::SPI_MAIN_COM_IF, spiCookie,
gpioComIF, SdCardManager::instance(), stackHandler, false);
spiCookie->setCallbackMode(PayloadPcduHandler::extConvAsTwoCallback, plPcduHandler);
// plPcduHandler->enablePeriodicPrintout(true, 5);
// static_cast<void>(plPcduHandler);
#if OBSW_TEST_PL_PCDU == 1
plPcduHandler->setStartUpImmediately();
#endif
@ -930,45 +934,38 @@ void ObjectFactory::createTestComponents(LinuxLibgpioIF* gpioComIF) {
#endif
}
void ObjectFactory::createStrComponents(PowerSwitchIF* pwrSwitcher) {
void ObjectFactory::createStrComponents(PowerSwitchIF* pwrSwitcher, SdCardManager& sdcMan) {
auto* strAssy = new StrAssembly(objects::STR_ASSY);
strAssy->connectModeTreeParent(satsystem::acs::ACS_SUBSYSTEM);
auto* starTrackerCookie =
new SerialCookie(objects::STAR_TRACKER, q7s::UART_STAR_TRACKER_DEV, uart::STAR_TRACKER_BAUD,
new SerialCookie(objects::STAR_TRACKER, q7s::UART_STAR_TRACKER_DEV, serial::STAR_TRACKER_BAUD,
startracker::MAX_FRAME_SIZE * 2 + 2, UartModes::NON_CANONICAL);
starTrackerCookie->setNoFixedSizeReply();
StrHelper* strHelper = new StrHelper(objects::STR_HELPER);
StrComHandler* strComIF = new StrComHandler(objects::STR_COM_IF);
const char* paramJsonFile = nullptr;
#ifdef EGSE
paramJsonFile = "/home/pi/arcsec/json/flight-config.json";
#else
#if OBSW_STAR_TRACKER_GROUND_CONFIG == 1
paramJsonFile = "/mnt/sd0/startracker/ground-config.json";
#else
paramJsonFile = "/mnt/sd0/startracker/flight-config.json";
#endif
#endif
const char* paramJsonFile = "/mnt/sd0/startracker/flight-config.json";
if (paramJsonFile == nullptr) {
sif::error << "No valid Star Tracker parameter JSON file" << std::endl;
}
auto strFdir = new StrFdir(objects::STAR_TRACKER);
auto cfgGetter = new StrConfigPathGetter(sdcMan);
auto starTracker =
new StarTrackerHandler(objects::STAR_TRACKER, objects::UART_COM_IF, starTrackerCookie,
paramJsonFile, strHelper, pcdu::PDU1_CH2_STAR_TRACKER_5V);
new StarTrackerHandler(objects::STAR_TRACKER, objects::STR_COM_IF, starTrackerCookie,
strComIF, power::PDU1_CH2_STAR_TRACKER_5V, *cfgGetter);
starTracker->setPowerSwitcher(pwrSwitcher);
starTracker->connectModeTreeParent(*strAssy);
starTracker->setCustomFdir(strFdir);
}
void ObjectFactory::createImtqComponents(PowerSwitchIF* pwrSwitcher) {
void ObjectFactory::createImtqComponents(PowerSwitchIF* pwrSwitcher, bool enableHkSets,
const char* i2cDev) {
auto* imtqAssy = new ImtqAssembly(objects::IMTQ_ASSY);
imtqAssy->connectModeTreeParent(satsystem::acs::ACS_SUBSYSTEM);
new ImtqPollingTask(objects::IMTQ_POLLING, I2C_FATAL_ERRORS);
I2cCookie* imtqI2cCookie = new I2cCookie(addresses::IMTQ, imtq::MAX_REPLY_SIZE, q7s::I2C_PL_EIVE);
new ImtqPollingTask(objects::IMTQ_POLLING, signals::I2C_FATAL_ERRORS);
I2cCookie* imtqI2cCookie = new I2cCookie(addresses::IMTQ, imtq::MAX_REPLY_SIZE, i2cDev);
auto imtqHandler = new ImtqHandler(objects::IMTQ_HANDLER, objects::IMTQ_POLLING, imtqI2cCookie,
pcdu::Switches::PDU1_CH3_MGT_5V);
power::Switches::PDU1_CH3_MGT_5V, enableHkSets);
imtqHandler->enableThermalModule(ThermalStateCfg());
imtqHandler->setPowerSwitcher(pwrSwitcher);
imtqHandler->connectModeTreeParent(*imtqAssy);
@ -982,10 +979,10 @@ void ObjectFactory::createImtqComponents(PowerSwitchIF* pwrSwitcher) {
#endif
}
void ObjectFactory::createBpxBatteryComponent() {
I2cCookie* bpxI2cCookie = new I2cCookie(addresses::BPX_BATTERY, 100, q7s::I2C_PL_EIVE);
BpxBatteryHandler* bpxHandler =
new BpxBatteryHandler(objects::BPX_BATT_HANDLER, objects::I2C_COM_IF, bpxI2cCookie);
void ObjectFactory::createBpxBatteryComponent(bool enableHkSets, const char* i2cDev) {
I2cCookie* bpxI2cCookie = new I2cCookie(addresses::BPX_BATTERY, 100, i2cDev);
BpxBatteryHandler* bpxHandler = new BpxBatteryHandler(
objects::BPX_BATT_HANDLER, objects::I2C_COM_IF, bpxI2cCookie, enableHkSets);
bpxHandler->setStartUpImmediately();
bpxHandler->setToGoToNormalMode(true);
#if OBSW_DEBUG_BPX_BATT == 1
@ -1004,3 +1001,87 @@ void ObjectFactory::testAcsBrdAss(AcsBoardAssembly* acsAss) {
sif::warning << "Sending mode command failed" << std::endl;
}
}
void ObjectFactory::createRadSensorChipSelect(LinuxLibgpioIF* gpioIF) {
using namespace gpio;
if (gpioIF == nullptr) {
return;
}
GpioCookie* gpioCookieRadSensor = new GpioCookie;
std::stringstream consumer;
consumer << "0x" << std::hex << objects::RAD_SENSOR;
GpiodRegularByLineName* gpio = new GpiodRegularByLineName(
q7s::gpioNames::RAD_SENSOR_CHIP_SELECT, consumer.str(), Direction::OUT, Levels::HIGH);
gpioCookieRadSensor->addGpio(gpioIds::CS_RAD_SENSOR, gpio);
gpio = new GpiodRegularByLineName(q7s::gpioNames::ENABLE_RADFET, consumer.str(), Direction::OUT,
Levels::LOW);
gpioCookieRadSensor->addGpio(gpioIds::ENABLE_RADFET, gpio);
gpioChecker(gpioIF->addGpios(gpioCookieRadSensor), "RAD sensor");
}
void ObjectFactory::createPlI2cResetGpio(LinuxLibgpioIF* gpioIF) {
using namespace gpio;
if (common::OBSW_VERSION_MAJOR >= 6 or common::OBSW_VERSION_MAJOR == 4) {
if (gpioIF == nullptr) {
return;
}
GpioCookie* gpioI2cResetnCookie = new GpioCookie;
GpiodRegularByLineName* gpioI2cResetn = new GpiodRegularByLineName(
q7s::gpioNames::PL_I2C_ARESETN, "PL_I2C_ARESETN", Direction::OUT, Levels::HIGH);
gpioI2cResetnCookie->addGpio(gpioIds::PL_I2C_ARESETN, gpioI2cResetn);
gpioChecker(gpioIF->addGpios(gpioI2cResetnCookie), "PL I2C ARESETN");
// Reset I2C explicitely again.
gpioIF->pullLow(gpioIds::PL_I2C_ARESETN);
TaskFactory::delayTask(1);
gpioIF->pullHigh(gpioIds::PL_I2C_ARESETN);
}
}
ReturnValue_t ObjectFactory::readFirmwareVersion() {
uint32_t* mappedSysRomAddr = nullptr;
// The SYS ROM FPGA block is only available in those versions.
if (not(common::OBSW_VERSION_MAJOR >= 6) or (common::OBSW_VERSION_MAJOR == 4)) {
return returnvalue::OK;
}
// This has to come before the version announce because it might be required for retrieving
// the firmware version.
UioMapper sysRomMapper(q7s::UIO_SYS_ROM);
ReturnValue_t result =
sysRomMapper.getMappedAdress(&mappedSysRomAddr, UioMapper::Permissions::READ_ONLY);
if (result != returnvalue::OK) {
sif::error << "Getting mapped SYS ROM UIO address failed" << std::endl;
return returnvalue::FAILED;
}
if (mappedSysRomAddr != nullptr) {
uint32_t firstEntry = *(reinterpret_cast<uint32_t*>(mappedSysRomAddr));
uint32_t secondEntry = *(reinterpret_cast<uint32_t*>(mappedSysRomAddr) + 1);
core::FW_VERSION_MAJOR = (firstEntry >> 24) & 0xff;
core::FW_VERSION_MINOR = (firstEntry >> 16) & 0xff;
core::FW_VERSION_REVISION = (firstEntry >> 8) & 0xff;
bool hasGitSha = (firstEntry & 0x0b1);
if (hasGitSha) {
std::memcpy(core::FW_VERSION_GIT_SHA, &secondEntry, 4);
}
}
return returnvalue::OK;
}
ReturnValue_t ObjectFactory::createCcsdsIpComponentsWrapper(CcsdsComponentArgs& ccsdsArgs) {
ccsdsArgs.pdecCfgMemBaseAddr = config::pdec::PDEC_CONFIG_BASE_ADDR;
ccsdsArgs.pdecRamBaseAddr = config::pdec::PDEC_RAM_ADDR;
if (core::FW_VERSION_MAJOR < 6) {
ccsdsArgs.pdecCfgMemBaseAddr = config::pdec::PDEC_CONFIG_BASE_ADDR_LEGACY;
ccsdsArgs.pdecRamBaseAddr = config::pdec::PDEC_RAM_ADDR_LEGACY;
}
ReturnValue_t result = createCcsdsComponents(ccsdsArgs);
#if OBSW_TM_TO_PTME == 1
if (ccsdsArgs.normalLiveTmDest != MessageQueueIF::NO_QUEUE) {
ccsdsArgs.pusFunnel.addLiveDestinationByRawId("VC0 NORMAL LIVE TM", ccsdsArgs.normalLiveTmDest,
0);
}
if (ccsdsArgs.cfdpLiveTmDest != MessageQueueIF::NO_QUEUE) {
ccsdsArgs.cfdpFunnel.addLiveDestinationByRawId("VC0 CFDP LIVE TM", ccsdsArgs.cfdpLiveTmDest, 0);
}
#endif
return result;
}

View File

@ -3,17 +3,20 @@
#include <fsfw/returnvalues/returnvalue.h>
#include <fsfw_hal/linux/spi/SpiComIF.h>
#include <mission/core/GenericFactory.h>
#include <mission/devices/HeaterHandler.h>
#include <mission/acs/gyroAdisHelpers.h>
#include <mission/com/CcsdsIpCoreHandler.h>
#include <mission/com/PersistentLogTmStoreTask.h>
#include <mission/genericFactory.h>
#include <mission/system/objects/Stack5VHandler.h>
#include <mission/tmtc/CcsdsIpCoreHandler.h>
#include <mission/tcs/HeaterHandler.h>
#include <mission/tmtc/CfdpTmFunnel.h>
#include <mission/tmtc/PersistentLogTmStoreTask.h>
#include <mission/tmtc/PusTmFunnel.h>
#include <atomic>
#include <string>
#include "bsp_q7s/fs/SdCardManager.h"
class LinuxLibgpioIF;
class SerialComIF;
class SpiComIF;
@ -23,21 +26,24 @@ class HealthTableIF;
class AcsBoardAssembly;
class GpioIF;
extern std::atomic_uint16_t I2C_FATAL_ERRORS;
extern std::atomic_bool PTME_LOCKED;
namespace ObjectFactory {
struct CcsdsComponentArgs {
CcsdsComponentArgs(LinuxLibgpioIF& gpioIF, StorageManagerIF& ipcStore, StorageManagerIF& tmStore,
PersistentTmStores& stores, PusTmFunnel& pusFunnel, CfdpTmFunnel& cfdpFunnel,
CcsdsIpCoreHandler** ipCoreHandler)
CcsdsIpCoreHandler** ipCoreHandler, uint32_t pdecCfgMemBaseAddr,
uint32_t pdecRamBaseAddr)
: gpioComIF(gpioIF),
ipcStore(ipcStore),
tmStore(tmStore),
stores(stores),
pusFunnel(pusFunnel),
cfdpFunnel(cfdpFunnel),
ipCoreHandler(ipCoreHandler) {}
ipCoreHandler(ipCoreHandler),
pdecCfgMemBaseAddr(pdecCfgMemBaseAddr),
pdecRamBaseAddr(pdecRamBaseAddr) {}
LinuxLibgpioIF& gpioComIF;
StorageManagerIF& ipcStore;
StorageManagerIF& tmStore;
@ -45,7 +51,10 @@ struct CcsdsComponentArgs {
PusTmFunnel& pusFunnel;
CfdpTmFunnel& cfdpFunnel;
CcsdsIpCoreHandler** ipCoreHandler;
AcceptsTelemetryIF* liveDestination = nullptr;
uint32_t pdecCfgMemBaseAddr;
uint32_t pdecRamBaseAddr;
MessageQueueId_t normalLiveTmDest = MessageQueueIF::NO_QUEUE;
MessageQueueId_t cfdpLiveTmDest = MessageQueueIF::NO_QUEUE;
};
void setStatics();
@ -53,27 +62,33 @@ void produce(void* args);
void createCommunicationInterfaces(LinuxLibgpioIF** gpioComIF, SerialComIF** uartComIF,
SpiComIF** spiMainComIF, I2cComIF** i2cComIF);
void createPcduComponents(LinuxLibgpioIF* gpioComIF, PowerSwitchIF** pwrSwitcher);
void createPcduComponents(LinuxLibgpioIF* gpioComIF, PowerSwitchIF** pwrSwitcher,
bool enableHkSets);
void createPlPcduComponents(LinuxLibgpioIF* gpioComIF, SpiComIF* spiComIF,
PowerSwitchIF* pwrSwitcher, Stack5VHandler& stackHandler);
void createTmpComponents();
void createTmpComponents(std::vector<std::pair<object_id_t, address_t>> tmpDevsToAdd);
void createRadSensorChipSelect(LinuxLibgpioIF* gpioIF);
ReturnValue_t createRadSensorComponent(LinuxLibgpioIF* gpioComIF, Stack5VHandler& handler);
void createAcsBoardGpios(GpioCookie& cookie);
void createAcsBoardComponents(SpiComIF& spiComIF, LinuxLibgpioIF* gpioComIF, SerialComIF* uartComIF,
PowerSwitchIF& pwrSwitcher);
PowerSwitchIF& pwrSwitcher, bool enableHkSets,
adis1650x::Type adisType);
void createHeaterComponents(GpioIF* gpioIF, PowerSwitchIF* pwrSwitcher, HealthTableIF* healthTable,
HeaterHandler*& heaterHandler);
void createImtqComponents(PowerSwitchIF* pwrSwitcher);
void createBpxBatteryComponent();
void createStrComponents(PowerSwitchIF* pwrSwitcher);
void createImtqComponents(PowerSwitchIF* pwrSwitcher, bool enableHkSets, const char* i2cDev);
void createBpxBatteryComponent(bool enableHkSets, const char* i2cDev);
void createStrComponents(PowerSwitchIF* pwrSwitcher, SdCardManager& sdcMan);
void createSolarArrayDeploymentComponents(PowerSwitchIF& pwrSwitcher, GpioIF& gpioIF);
void createSyrlinksComponents(PowerSwitchIF* pwrSwitcher);
void createPayloadComponents(LinuxLibgpioIF* gpioComIF, PowerSwitchIF& pwrSwitcher);
void createReactionWheelComponents(LinuxLibgpioIF* gpioComIF, PowerSwitchIF* pwrSwitcher);
ReturnValue_t createCcsdsIpComponentsWrapper(CcsdsComponentArgs& args);
ReturnValue_t createCcsdsComponents(CcsdsComponentArgs& args);
ReturnValue_t readFirmwareVersion();
void createMiscComponents();
void createTestComponents(LinuxLibgpioIF* gpioComIF);
void createPlI2cResetGpio(LinuxLibgpioIF* gpioComIF);
void testAcsBrdAss(AcsBoardAssembly* assAss);

View File

@ -11,13 +11,13 @@
#include "OBSWConfig.h"
#include "bsp_q7s/core/WatchdogHandler.h"
#include "commonConfig.h"
#include "core/scheduling.h"
#include "fsfw/tasks/TaskFactory.h"
#include "fsfw/version.h"
#include "mission/acsDefs.h"
#include "mission/comDefs.h"
#include "mission/system/tree/system.h"
#include "mission/acs/defs.h"
#include "mission/com/defs.h"
#include "mission/system/systemTree.h"
#include "q7sConfig.h"
#include "scheduling.h"
#include "watchdog/definitions.h"
static constexpr int OBSW_ALREADY_RUNNING = -2;

View File

@ -3,12 +3,12 @@
#include <fsfw/devicehandlers/DeviceCommunicationIF.h>
#include <fsfw/subsystem/Subsystem.h>
#include <linux/scheduling.h>
#include <mission/tcs/Max31865Definitions.h>
#include <iostream>
#include <vector>
#include "OBSWConfig.h"
#include "bsp_q7s/core/ObjectFactory.h"
#include "fsfw/objectmanager/ObjectManager.h"
#include "fsfw/objectmanager/ObjectManagerIF.h"
#include "fsfw/platform.h"
@ -17,10 +17,11 @@
#include "fsfw/tasks/FixedTimeslotTaskIF.h"
#include "fsfw/tasks/PeriodicTaskIF.h"
#include "fsfw/tasks/TaskFactory.h"
#include "mission/core/pollingSeqTables.h"
#include "mission/core/scheduling.h"
#include "mission/devices/devicedefinitions/Max31865Definitions.h"
#include "mission/pollingSeqTables.h"
#include "mission/scheduling.h"
#include "mission/utility/InitMission.h"
#include "objectFactory.h"
#include "q7sConfig.h"
/* This is configured for linux without CR */
#ifdef PLATFORM_UNIX
@ -72,16 +73,27 @@ void scheduling::initTasks() {
#if OBSW_ADD_SA_DEPL == 1
// Could add this to the core controller but the core controller does so many thing that I would
// prefer to have the solar array deployment in a seprate task.
PeriodicTaskIF* solarArrayDeplTask = factory->createPeriodicTask(
"SOLAR_ARRAY_DEPL", 65, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.4, missedDeadlineFunc);
PeriodicTaskIF* solarArrayDeplTask =
factory->createPeriodicTask("SOLAR_ARRAY_DEPL", 65, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.4,
missedDeadlineFunc, &RR_SCHEDULING);
result = solarArrayDeplTask->addComponent(objects::SOLAR_ARRAY_DEPL_HANDLER);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("SOLAR_ARRAY_DEPL", objects::SOLAR_ARRAY_DEPL_HANDLER);
}
#endif
// Medium priority, higher than something like payload, but not the highest priority to also
// detect tasks which choke other tasks.
PeriodicTaskIF* xiphosWdtTask =
factory->createPeriodicTask("XIPHOS_WDT", 40, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.4,
missedDeadlineFunc, &RR_SCHEDULING);
result = xiphosWdtTask->addComponent(objects::XIPHOS_WDT);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("XIPHOS_WDT", objects::XIPHOS_WDT);
}
PeriodicTaskIF* coreCtrlTask = factory->createPeriodicTask(
"CORE_CTRL", 60, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.4, missedDeadlineFunc);
"CORE_CTRL", 55, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.4, missedDeadlineFunc, &RR_SCHEDULING);
result = coreCtrlTask->addComponent(objects::CORE_CONTROLLER);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("CORE_CTRL", objects::CORE_CONTROLLER);
@ -89,7 +101,7 @@ void scheduling::initTasks() {
/* TMTC Distribution */
PeriodicTaskIF* tmTcDistributor = factory->createPeriodicTask(
"DIST", 45, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.2, missedDeadlineFunc);
"TC_DIST", 45, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.2, missedDeadlineFunc, &RR_SCHEDULING);
#if OBSW_ADD_TCPIP_SERVERS == 1
#if OBSW_ADD_TMTC_UDP_SERVER == 1
result = tmTcDistributor->addComponent(objects::UDP_TMTC_SERVER);
@ -120,7 +132,7 @@ void scheduling::initTasks() {
#if OBSW_ADD_TCPIP_SERVERS == 1
#if OBSW_ADD_TMTC_UDP_SERVER == 1
PeriodicTaskIF* udpPollingTask = factory->createPeriodicTask(
"UDP_TMTC_POLLING", 65, PeriodicTaskIF::MINIMUM_STACK_SIZE, 2.0, missedDeadlineFunc);
"UDP_TMTC_POLLING", 0, PeriodicTaskIF::MINIMUM_STACK_SIZE, 2.0, missedDeadlineFunc);
result = udpPollingTask->addComponent(objects::UDP_TMTC_POLLING_TASK);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("UDP_POLLING", objects::UDP_TMTC_POLLING_TASK);
@ -128,7 +140,7 @@ void scheduling::initTasks() {
#endif
#if OBSW_ADD_TMTC_TCP_SERVER == 1
PeriodicTaskIF* tcpPollingTask = factory->createPeriodicTask(
"TCP_TMTC_POLLING", 65, PeriodicTaskIF::MINIMUM_STACK_SIZE, 2.0, missedDeadlineFunc);
"TCP_TMTC_POLLING", 0, PeriodicTaskIF::MINIMUM_STACK_SIZE, 2.0, missedDeadlineFunc);
result = tcpPollingTask->addComponent(objects::TCP_TMTC_POLLING_TASK);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("UDP_POLLING", objects::TCP_TMTC_POLLING_TASK);
@ -136,8 +148,9 @@ void scheduling::initTasks() {
#endif
#endif
PeriodicTaskIF* genericSysTask = factory->createPeriodicTask(
"SYSTEM_TASK", 50, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.5, missedDeadlineFunc);
PeriodicTaskIF* genericSysTask =
factory->createPeriodicTask("SYSTEM_TASK", 50, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.5,
missedDeadlineFunc, &RR_SCHEDULING);
result = genericSysTask->addComponent(objects::EIVE_SYSTEM);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("EIVE_SYSTEM", objects::EIVE_SYSTEM);
@ -154,6 +167,10 @@ void scheduling::initTasks() {
if (result != returnvalue::OK) {
scheduling::printAddObjectError("PL_SUBSYSTEM", objects::PL_SUBSYSTEM);
}
result = genericSysTask->addComponent(objects::EPS_SUBSYSTEM);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("EPS_SUBSYSTEM", objects::EPS_SUBSYSTEM);
}
result = genericSysTask->addComponent(objects::INTERNAL_ERROR_REPORTER);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("ERROR_REPORTER", objects::INTERNAL_ERROR_REPORTER);
@ -171,7 +188,7 @@ void scheduling::initTasks() {
// Runs in IRQ mode, frequency does not really matter
PeriodicTaskIF* pdecHandlerTask = factory->createPeriodicTask(
"PDEC_HANDLER", 75, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.0, missedDeadlineFunc);
"PDEC_HANDLER", 75, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.0, nullptr, &RR_SCHEDULING);
result = pdecHandlerTask->addComponent(objects::PDEC_HANDLER);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("PDEC Handler", objects::PDEC_HANDLER);
@ -179,50 +196,54 @@ void scheduling::initTasks() {
#endif /* OBSW_ADD_CCSDS_IP_CORE == 1 */
// All the TM store tasks run in permanent loops, frequency does not matter
PeriodicTaskIF* liveTmTask =
factory->createPeriodicTask("LIVE_TM", 55, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.0, nullptr);
PeriodicTaskIF* liveTmTask = factory->createPeriodicTask(
"LIVE_TM", 55, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.0, nullptr, &RR_SCHEDULING);
result = liveTmTask->addComponent(objects::LIVE_TM_TASK);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("LIVE_TM", objects::LIVE_TM_TASK);
}
PeriodicTaskIF* logTmTask = factory->createPeriodicTask(
"LOG_STORE_AND_TM", 45, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.0, nullptr);
"LOG_PSTORE", 0, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.0, nullptr);
result = logTmTask->addComponent(objects::LOG_STORE_AND_TM_TASK);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("LOG_STORE_AND_TM", objects::LOG_STORE_AND_TM_TASK);
}
PeriodicTaskIF* hkTmTask = factory->createPeriodicTask(
"HK_STORE_AND_TM", 45, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.0, nullptr);
PeriodicTaskIF* hkTmTask =
factory->createPeriodicTask("HK_PSTORE", 0, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.0, nullptr);
result = hkTmTask->addComponent(objects::HK_STORE_AND_TM_TASK);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("HK_STORE_AND_TM", objects::HK_STORE_AND_TM_TASK);
}
PeriodicTaskIF* cfdpTmTask = factory->createPeriodicTask(
"CFDP_STORE_AND_TM", 45, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.0, nullptr);
"CFDP_PSTORE", 0, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.0, nullptr);
result = cfdpTmTask->addComponent(objects::CFDP_STORE_AND_TM_TASK);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("CFDP_STORE_AND_TM", objects::CFDP_STORE_AND_TM_TASK);
}
// TODO: Use user priorities for this task.
#if OBSW_ADD_CFDP_COMPONENTS == 1
PeriodicTaskIF* cfdpTask = factory->createPeriodicTask(
"CFDP Handler", 45, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.4, missedDeadlineFunc);
PeriodicTaskIF* cfdpTask =
factory->createPeriodicTask("CFDP_HANDLER", 40, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.4,
missedDeadlineFunc, &RR_SCHEDULING);
result = cfdpTask->addComponent(objects::CFDP_HANDLER);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("CFDP Handler", objects::CFDP_HANDLER);
scheduling::printAddObjectError("CFDP", objects::CFDP_HANDLER);
}
#endif
PeriodicTaskIF* gpsTask = factory->createPeriodicTask(
"GPS_TASK", 50, PeriodicTaskIF::MINIMUM_STACK_SIZE * 2, 0.4, missedDeadlineFunc);
PeriodicTaskIF* gpsTask =
factory->createPeriodicTask("GPS_TASK", 50, PeriodicTaskIF::MINIMUM_STACK_SIZE * 2, 0.4,
missedDeadlineFunc, &RR_SCHEDULING);
result = gpsTask->addComponent(objects::GPS_CONTROLLER);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("GPS_CTRL", objects::GPS_CONTROLLER);
}
#if OBSW_ADD_ACS_BOARD == 1
PeriodicTaskIF* acsBrdPolling = factory->createPeriodicTask(
"ACS_BOARD_POLLING", 85, PeriodicTaskIF::MINIMUM_STACK_SIZE * 2, 0.4, missedDeadlineFunc);
PeriodicTaskIF* acsBrdPolling =
factory->createPeriodicTask("ACS_BOARD_POLLING", 85, PeriodicTaskIF::MINIMUM_STACK_SIZE * 2,
0.4, missedDeadlineFunc, &RR_SCHEDULING);
result = acsBrdPolling->addComponent(objects::ACS_BOARD_POLLING_TASK);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("ACS_BOARD_POLLING", objects::ACS_BOARD_POLLING_TASK);
@ -230,16 +251,18 @@ void scheduling::initTasks() {
#endif
#if OBSW_ADD_RW == 1
PeriodicTaskIF* rwPolling = factory->createPeriodicTask(
"RW_POLLING_TASK", 85, PeriodicTaskIF::MINIMUM_STACK_SIZE * 2, 0.4, missedDeadlineFunc);
PeriodicTaskIF* rwPolling =
factory->createPeriodicTask("RW_POLLING_TASK", 75, PeriodicTaskIF::MINIMUM_STACK_SIZE * 2,
0.4, missedDeadlineFunc, &RR_SCHEDULING);
result = rwPolling->addComponent(objects::RW_POLLING_TASK);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("RW_POLLING_TASK", objects::RW_POLLING_TASK);
}
#endif
#if OBSW_ADD_MGT == 1
PeriodicTaskIF* imtqPolling = factory->createPeriodicTask(
"IMTQ_POLLING_TASK", 85, PeriodicTaskIF::MINIMUM_STACK_SIZE * 2, 0.4, missedDeadlineFunc);
PeriodicTaskIF* imtqPolling =
factory->createPeriodicTask("IMTQ_POLLING_TASK", 85, PeriodicTaskIF::MINIMUM_STACK_SIZE * 2,
0.4, missedDeadlineFunc, &RR_SCHEDULING);
result = imtqPolling->addComponent(objects::IMTQ_POLLING);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("IMTQ_POLLING_TASK", objects::IMTQ_POLLING);
@ -247,16 +270,18 @@ void scheduling::initTasks() {
#endif
#if OBSW_ADD_SUN_SENSORS == 1
PeriodicTaskIF* susPolling = factory->createPeriodicTask(
"SUS_POLLING_TASK", 85, PeriodicTaskIF::MINIMUM_STACK_SIZE * 2, 0.4, missedDeadlineFunc);
PeriodicTaskIF* susPolling =
factory->createPeriodicTask("SUS_POLLING_TASK", 85, PeriodicTaskIF::MINIMUM_STACK_SIZE * 2,
0.4, missedDeadlineFunc, &RR_SCHEDULING);
result = susPolling->addComponent(objects::SUS_POLLING_TASK);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("SUS_POLLING_TASK", objects::SUS_POLLING_TASK);
}
#endif
PeriodicTaskIF* acsSysTask = factory->createPeriodicTask(
"ACS_SYS_TASK", 55, PeriodicTaskIF::MINIMUM_STACK_SIZE * 2, 0.4, missedDeadlineFunc);
PeriodicTaskIF* acsSysTask =
factory->createPeriodicTask("ACS_SYS_TASK", 55, PeriodicTaskIF::MINIMUM_STACK_SIZE * 2, 0.4,
missedDeadlineFunc, &RR_SCHEDULING);
result = acsSysTask->addComponent(objects::ACS_SUBSYSTEM);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("ACS_SUBSYSTEM", objects::ACS_SUBSYSTEM);
@ -281,9 +306,20 @@ void scheduling::initTasks() {
if (result != returnvalue::OK) {
scheduling::printAddObjectError("STR_ASSY", objects::STR_ASSY);
}
result = acsSysTask->addComponent(objects::GPS_0_HEALTH_DEV);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("GPS_0_HEALTH_DEV", objects::GPS_0_HEALTH_DEV);
}
result = acsSysTask->addComponent(objects::GPS_1_HEALTH_DEV);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("GPS_1_HEALTH_DEV", objects::GPS_1_HEALTH_DEV);
}
PeriodicTaskIF* tcsSystemTask = factory->createPeriodicTask(
"TCS_TASK", 55, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.5, missedDeadlineFunc);
"TCS_TASK", 50, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.5, missedDeadlineFunc, &RR_SCHEDULING);
#if OBSW_ADD_THERMAL_TEMP_INSERTER == 1
tcsSystemTask->addComponent(objects::THERMAL_TEMP_INSERTER);
#endif
scheduling::scheduleRtdSensors(tcsSystemTask);
result = tcsSystemTask->addComponent(objects::TCS_SUBSYSTEM);
if (result != returnvalue::OK) {
@ -299,45 +335,57 @@ void scheduling::initTasks() {
scheduling::printAddObjectError("THERMAL_CONTROLLER", objects::THERMAL_CONTROLLER);
}
#endif
#if OBSW_ADD_HEATERS == 1
result = tcsSystemTask->addComponent(objects::HEATER_HANDLER);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("HEATER_HANDLER", objects::HEATER_HANDLER);
}
result = tcsSystemTask->addComponent(objects::HEATER_HANDLER);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("HEATER_HANDLER", objects::HEATER_HANDLER);
}
#if OBSW_ADD_SYRLINKS == 1
PeriodicTaskIF* syrlinksCom = factory->createPeriodicTask(
"SYRLINKS_COM", 65, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.0, missedDeadlineFunc);
result = syrlinksCom->addComponent(objects::SYRLINKS_COM_HANDLER);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("SYRLINKS_COM", objects::SYRLINKS_COM_HANDLER);
}
#endif
#if OBSW_ADD_STAR_TRACKER == 1
PeriodicTaskIF* strHelperTask = factory->createPeriodicTask(
"STR_HELPER", 20, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.2, missedDeadlineFunc);
result = strHelperTask->addComponent(objects::STR_HELPER);
// Relatively high priority to make sure STR COM works well.
PeriodicTaskIF* strHelperTask =
factory->createPeriodicTask("STR_HELPER", 30, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.2,
missedDeadlineFunc, &RR_SCHEDULING);
result = strHelperTask->addComponent(objects::STR_COM_IF);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("STR_HELPER", objects::STR_HELPER);
scheduling::printAddObjectError("STR_HELPER", objects::STR_COM_IF);
}
#endif /* OBSW_ADD_STAR_TRACKER == 1 */
#if OBSW_ADD_PLOC_MPSOC == 1
PeriodicTaskIF* mpsocHelperTask = factory->createPeriodicTask(
"PLOC_MPSOC_HELPER", 20, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.2, missedDeadlineFunc);
"PLOC_MPSOC_HELPER", 0, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.2, missedDeadlineFunc);
result = mpsocHelperTask->addComponent(objects::PLOC_MPSOC_HELPER);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("PLOC_MPSOC_HELPER", objects::PLOC_MPSOC_HELPER);
}
#endif /* OBSW_ADD_PLOC_MPSOC */
// TODO: Use regular scheduler for this task
#if OBSW_ADD_PLOC_SUPERVISOR == 1
PeriodicTaskIF* supvHelperTask = factory->createPeriodicTask(
"PLOC_SUPV_HELPER", 10, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.0, missedDeadlineFunc);
"PLOC_SUPV_HELPER", 0, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.0, missedDeadlineFunc);
result = supvHelperTask->addComponent(objects::PLOC_SUPERVISOR_HELPER);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("PLOC_SUPV_HELPER", objects::PLOC_SUPERVISOR_HELPER);
}
#endif /* OBSW_ADD_PLOC_SUPERVISOR */
PeriodicTaskIF* plTask = factory->createPeriodicTask(
"PL_TASK", 30, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.8, missedDeadlineFunc);
plTask->addComponent(objects::CAM_SWITCHER);
scheduling::addMpsocSupvHandlers(plTask);
scheduling::scheduleScexDev(plTask);
FixedTimeslotTaskIF* plTask = factory->createFixedTimeslotTask(
"PL_TASK", 25, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.5, missedDeadlineFunc);
pst::pstPayload(plTask);
#if OBSW_ADD_SCEX_DEVICE == 1
PeriodicTaskIF* scexReaderTask;
@ -374,6 +422,7 @@ void scheduling::initTasks() {
};
sif::info << "Starting tasks.." << std::endl;
xiphosWdtTask->startTask();
tmTcDistributor->startTask();
#if OBSW_ADD_TCPIP_SERVERS == 1
@ -401,6 +450,9 @@ void scheduling::initTasks() {
#if OBSW_ADD_ACS_BOARD == 1
acsBrdPolling->startTask();
#endif
#if OBSW_ADD_SYRLINKS == 1
syrlinksCom->startTask();
#endif
#if OBSW_ADD_MGT == 1
imtqPolling->startTask();
#endif
@ -437,6 +489,9 @@ void scheduling::initTasks() {
#if OBSW_ADD_PLOC_SUPERVISOR == 1
supvHelperTask->startTask();
#endif /* OBSW_ADD_PLOC_SUPERVISOR == 1 */
#if OBSW_ADD_PLOC_MPSOC == 1
mpsocHelperTask->startTask();
#endif
plTask->startTask();
#if OBSW_ADD_TEST_CODE == 1
@ -455,8 +510,9 @@ void scheduling::createPstTasks(TaskFactory& factory, TaskDeadlineMissedFunction
#else
static constexpr float acsPstPeriod = 0.4;
#endif
FixedTimeslotTaskIF* acsTcsPst = factory.createFixedTimeslotTask(
"ACS_TCS_PST", 80, PeriodicTaskIF::MINIMUM_STACK_SIZE * 2, acsPstPeriod, missedDeadlineFunc);
FixedTimeslotTaskIF* acsTcsPst =
factory.createFixedTimeslotTask("ACS_TCS_PST", 85, PeriodicTaskIF::MINIMUM_STACK_SIZE * 2,
acsPstPeriod, missedDeadlineFunc, &RR_SCHEDULING);
result = pst::pstTcsAndAcs(acsTcsPst, cfg);
if (result != returnvalue::OK) {
if (result == FixedTimeslotTaskIF::SLOT_LIST_EMPTY) {
@ -470,8 +526,9 @@ void scheduling::createPstTasks(TaskFactory& factory, TaskDeadlineMissedFunction
/* Polling Sequence Table Default */
#if OBSW_ADD_SPI_TEST_CODE == 0
FixedTimeslotTaskIF* syrlinksPst = factory.createFixedTimeslotTask(
"SYRLINKS", 45, PeriodicTaskIF::MINIMUM_STACK_SIZE * 4, 0.5, missedDeadlineFunc);
FixedTimeslotTaskIF* syrlinksPst =
factory.createFixedTimeslotTask("SYRLINKS", 65, PeriodicTaskIF::MINIMUM_STACK_SIZE * 4, 0.5,
missedDeadlineFunc, &RR_SCHEDULING);
result = pst::pstSyrlinks(syrlinksPst);
if (result != returnvalue::OK) {
if (result == FixedTimeslotTaskIF::SLOT_LIST_EMPTY) {
@ -485,9 +542,18 @@ void scheduling::createPstTasks(TaskFactory& factory, TaskDeadlineMissedFunction
#endif
#if OBSW_ADD_I2C_TEST_CODE == 0
FixedTimeslotTaskIF* i2cPst = factory.createFixedTimeslotTask(
"I2C_PST", 50, PeriodicTaskIF::MINIMUM_STACK_SIZE * 4, 0.4, missedDeadlineFunc);
result = pst::pstI2cProcessingSystem(i2cPst);
FixedTimeslotTaskIF* i2cPst =
factory.createFixedTimeslotTask("I2C_PS_PST", 60, PeriodicTaskIF::MINIMUM_STACK_SIZE * 4, 0.6,
missedDeadlineFunc, &RR_SCHEDULING);
pst::TmpSchedConfig tmpSchedConf;
#if OBSW_Q7S_EM == 1
tmpSchedConf.scheduleTmpDev0 = true;
tmpSchedConf.scheduleTmpDev1 = true;
tmpSchedConf.schedulePlPcduDev0 = true;
tmpSchedConf.schedulePlPcduDev1 = true;
tmpSchedConf.scheduleIfBoardDev = true;
#endif
result = pst::pstI2c(tmpSchedConf, i2cPst);
if (result != returnvalue::OK) {
if (result == FixedTimeslotTaskIF::SLOT_LIST_EMPTY) {
sif::warning << "scheduling::initTasks: I2C PST is empty" << std::endl;
@ -499,8 +565,9 @@ void scheduling::createPstTasks(TaskFactory& factory, TaskDeadlineMissedFunction
}
#endif
FixedTimeslotTaskIF* gomSpacePstTask = factory.createFixedTimeslotTask(
"GS_PST_TASK", 65, PeriodicTaskIF::MINIMUM_STACK_SIZE * 4, 0.5, missedDeadlineFunc);
FixedTimeslotTaskIF* gomSpacePstTask =
factory.createFixedTimeslotTask("GS_PST_TASK", 65, PeriodicTaskIF::MINIMUM_STACK_SIZE * 4,
0.25, missedDeadlineFunc, &RR_SCHEDULING);
result = pst::pstGompaceCan(gomSpacePstTask);
if (result != returnvalue::OK) {
if (result != FixedTimeslotTaskIF::SLOT_LIST_EMPTY) {
@ -514,8 +581,9 @@ void scheduling::createPusTasks(TaskFactory& factory, TaskDeadlineMissedFunction
std::vector<PeriodicTaskIF*>& taskVec) {
ReturnValue_t result = returnvalue::OK;
/* PUS Services */
PeriodicTaskIF* pusHighPrio = factory.createPeriodicTask(
"PUS_HIGH_PRIO", 60, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.2, missedDeadlineFunc);
PeriodicTaskIF* pusHighPrio =
factory.createPeriodicTask("PUS_HIGH_PRIO", 60, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.2,
missedDeadlineFunc, &RR_SCHEDULING);
result = pusHighPrio->addComponent(objects::PUS_SERVICE_1_VERIFICATION);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("PUS_VERIF", objects::PUS_SERVICE_1_VERIFICATION);
@ -526,16 +594,17 @@ void scheduling::createPusTasks(TaskFactory& factory, TaskDeadlineMissedFunction
}
result = pusHighPrio->addComponent(objects::EVENT_MANAGER);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("PUS_MGMT", objects::EVENT_MANAGER);
scheduling::printAddObjectError("EVENT_MGMT", objects::EVENT_MANAGER);
}
result = pusHighPrio->addComponent(objects::PUS_SERVICE_9_TIME_MGMT);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("PUS_9", objects::PUS_SERVICE_9_TIME_MGMT);
scheduling::printAddObjectError("PUS_TIME", objects::PUS_SERVICE_9_TIME_MGMT);
}
taskVec.push_back(pusHighPrio);
PeriodicTaskIF* pusMedPrio = factory.createPeriodicTask(
"PUS_MED_PRIO", 40, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.8, missedDeadlineFunc);
PeriodicTaskIF* pusMedPrio =
factory.createPeriodicTask("PUS_MED_PRIO", 45, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.8,
missedDeadlineFunc, &RR_SCHEDULING);
result = pusMedPrio->addComponent(objects::PUS_SERVICE_3_HOUSEKEEPING);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("PUS_3", objects::PUS_SERVICE_3_HOUSEKEEPING);

View File

@ -4,7 +4,7 @@
#include <vector>
#include "fsfw/tasks/definitions.h"
#include "mission/core/pollingSeqTables.h"
#include "mission/pollingSeqTables.h"
using pst::AcsPstCfg;

View File

@ -129,7 +129,7 @@ ReturnValue_t Xadc::readValFromFile(const char* filename, T& val) {
sif::warning << "Xadc::readValFromFile: Failed to open file " << filename << std::endl;
return returnvalue::FAILED;
}
char valstring[MAX_STR_LENGTH] = "";
char valstring[MAX_STR_LENGTH]{};
char* returnVal = fgets(valstring, MAX_STR_LENGTH, fp);
if (returnVal == nullptr) {
sif::warning << "Xadc::readValFromFile: Failed to read string from file " << filename
@ -139,6 +139,11 @@ ReturnValue_t Xadc::readValFromFile(const char* filename, T& val) {
}
std::istringstream valSstream(valstring);
valSstream >> val;
if (valSstream.bad()) {
sif::warning << "Xadc: Conversion of value to target type failed" << std::endl;
fclose(fp);
return returnvalue::FAILED;
}
fclose(fp);
return returnvalue::OK;
}

View File

@ -40,8 +40,8 @@ set(CROSS_COMPILE_OBJCOPY "${CROSS_COMPILE}-objcopy")
set(CROSS_COMPILE_SIZE "${CROSS_COMPILE}-size")
# At the very least, cross compile gcc and g++ have to be set!
find_program (CMAKE_C_COMPILER ${CROSS_COMPILE_CC} REQUIRED)
find_program (CMAKE_CXX_COMPILER ${CROSS_COMPILE_CXX} REQUIRED)
find_program (CMAKE_C_COMPILER ${CROSS_COMPILE_CC} HINTS $ENV{CROSS_COMPILE_BIN_PATH} REQUIRED)
find_program (CMAKE_CXX_COMPILER ${CROSS_COMPILE_CXX} HINTS $ENV{CROSS_COMPILE_BIN_PATH} REQUIRED)
# Useful utilities, not strictly necessary
find_program(CMAKE_SIZE ${CROSS_COMPILE_SIZE})
find_program(CMAKE_OBJCOPY ${CROSS_COMPILE_OBJCOPY})

View File

@ -24,6 +24,8 @@ if [ ! -z "${EIVE_Q7S_EM}" ]; then
build_defs="EIVE_Q7S_EM=ON"
fi
build_defs="${build_defs} CMAKE_EXPORT_COMPILE_COMMANDS=ON"
os_fsfw="linux"
tgt_bsp="arm/q7s"
build_dir="cmake-build-debug-q7s"

View File

@ -24,6 +24,8 @@ if [ ! -z "${EIVE_Q7S_EM}" ]; then
build_defs="EIVE_Q7S_EM=ON"
fi
build_defs="${build_defs} CMAKE_EXPORT_COMPILE_COMMANDS=ON"
os_fsfw="linux"
tgt_bsp="arm/q7s"
build_dir="cmake-build-release-q7s"

View File

@ -63,7 +63,7 @@ static constexpr dur_millis_t ACS_BOARD_CS_TIMEOUT = 50 * CS_FACTOR;
} // namespace spi
namespace uart {
namespace serial {
static constexpr size_t HYPERION_GPS_REPLY_MAX_BUFFER = 1024;
static constexpr UartBaudRate SYRLINKS_BAUD = UartBaudRate::RATE_38400;
@ -73,6 +73,6 @@ static constexpr UartBaudRate PLOC_MPSOC_BAUD = UartBaudRate::RATE_115200;
static constexpr UartBaudRate PLOC_SUPV_BAUD = UartBaudRate::RATE_921600;
static constexpr UartBaudRate STAR_TRACKER_BAUD = UartBaudRate::RATE_921600;
} // namespace uart
} // namespace serial
#endif /* COMMON_CONFIG_DEVCONF_H_ */

View File

@ -54,6 +54,9 @@ enum I2cAddress : address_t {
};
enum spiAddresses : address_t {
RTD_IC_0,
RTD_IC_1,
RTD_IC_2,
RTD_IC_3,
RTD_IC_4,
RTD_IC_5,
@ -67,9 +70,6 @@ enum spiAddresses : address_t {
RTD_IC_13,
RTD_IC_14,
RTD_IC_15,
RTD_IC_16,
RTD_IC_17,
RTD_IC_18,
RW1,
RW2,
RW3,

View File

@ -37,6 +37,9 @@ enum gpioId_t {
TEST_ID_0,
TEST_ID_1,
RTD_IC_0,
RTD_IC_1,
RTD_IC_2,
RTD_IC_3,
RTD_IC_4,
RTD_IC_5,
@ -50,9 +53,6 @@ enum gpioId_t {
RTD_IC_13,
RTD_IC_14,
RTD_IC_15,
RTD_IC_16,
RTD_IC_17,
RTD_IC_18,
CS_SUS_0,
CS_SUS_1,
@ -77,6 +77,8 @@ enum gpioId_t {
CS_RAD_SENSOR,
ENABLE_RADFET,
PL_I2C_ARESETN,
PAPB_BUSY_N,
PAPB_EMPTY,
@ -93,15 +95,10 @@ enum gpioId_t {
EN_RW_CS,
SPI_MUX,
VC0_PAPB_EMPTY,
VC0_PAPB_BUSY,
VC1_PAPB_EMPTY,
VC1_PAPB_BUSY,
VC2_PAPB_EMPTY,
VC2_PAPB_BUSY,
VC3_PAPB_EMPTY,
VC3_PAPB_BUSY,
PTME_RESETN,
PDEC_RESET,

View File

@ -1,20 +0,0 @@
#ifndef FSFWCONFIG_DEVICES_HEATERSWITCHERLIST_H_
#define FSFWCONFIG_DEVICES_HEATERSWITCHERLIST_H_
#include <cstdint>
namespace heater {
enum Switchers : uint8_t {
HEATER_0_OBC_BRD,
HEATER_1_PLOC_PROC_BRD,
HEATER_2_ACS_BRD,
HEATER_3_PCDU_PDU,
HEATER_4_CAMERA,
HEATER_5_STR,
HEATER_6_DRO,
HEATER_7_S_BAND,
NUMBER_OF_SWITCHES
};
}
#endif /* FSFWCONFIG_DEVICES_HEATERSWITCHERLIST_H_ */

View File

@ -1,6 +1,6 @@
#ifndef FSFWCONFIG_DEVICES_POWERSWITCHERLIST_H_
#define FSFWCONFIG_DEVICES_POWERSWITCHERLIST_H_
#include "mission/devices/devicedefinitions/GomspaceDefinitions.h"
#include <mission/power/gsDefs.h>
#endif /* FSFWCONFIG_DEVICES_POWERSWITCHERLIST_H_ */

View File

@ -11,10 +11,15 @@ static constexpr char SD_1_MOUNT_POINT[] = "/mnt/sd1";
static constexpr char OBSW_UPDATE_ARCHIVE_FILE_NAME[] = "eive-sw-update.tar.xz";
static constexpr char STRIPPED_OBSW_BINARY_FILE_NAME[] = "eive-obsw-stripped";
static constexpr char OBSW_VERSION_FILE_NAME[] = "obsw_version.txt";
static constexpr char PUS_SEQUENCE_COUNT_FILE[] = "pus-sequence-count.txt";
static constexpr char CFDP_SEQUENCE_COUNT_FILE[] = "cfdp-sequence-count.txt";
static constexpr char OBSW_PATH[] = "/usr/bin/eive-obsw";
static constexpr char OBSW_VERSION_FILE_PATH[] = "/usr/share/eive-obsw/obsw_version.txt";
// ISO8601 timestamp.
static constexpr char FILE_DATE_FORMAT[] = "%FT%H%M%SZ";
static constexpr uint16_t EIVE_PUS_APID = 0x65;
static constexpr uint16_t EIVE_CFDP_APID = 0x66;
static constexpr uint16_t EIVE_LOCAL_CFDP_ENTITY_ID = EIVE_CFDP_APID;
@ -30,9 +35,11 @@ static constexpr uint32_t STR_IMG_HELPER_QUEUE_SIZE = 50;
static constexpr uint8_t LIVE_TM = 0;
static constexpr size_t MAX_SPACEPACKET_TC_SIZE = 2048;
/* Limits for filename and path checks */
static constexpr uint32_t MAX_PATH_SIZE = 100;
static constexpr uint32_t MAX_FILENAME_SIZE = 50;
static constexpr uint32_t MAX_PATH_SIZE = 200;
static constexpr uint32_t MAX_FILENAME_SIZE = 100;
static constexpr uint32_t SA_DEPL_INIT_BUFFER_SECS = 120;
// Burn time for autonomous deployment
@ -43,6 +50,8 @@ static constexpr uint32_t LEGACY_SA_DEPL_CHANNEL_ALTERNATION_INTERVAL_SECS = 5;
// Maximum allowed burn time allowed by the software.
static constexpr uint32_t SA_DEPL_MAX_BURN_TIME = 180;
static constexpr size_t CFDP_MAX_FILE_SEGMENT_LEN = 900;
static constexpr uint32_t CCSDS_HANDLER_QUEUE_SIZE = 50;
static constexpr uint8_t NUMBER_OF_VIRTUAL_CHANNELS = 4;
static constexpr uint32_t VC0_LIVE_TM_QUEUE_SIZE = 300;
@ -53,11 +62,25 @@ static constexpr uint32_t NOK_STORE_QUEUE_SIZE = 350;
static constexpr uint32_t HK_STORE_QUEUE_SIZE = 300;
static constexpr uint32_t CFDP_STORE_QUEUE_SIZE = 300;
static constexpr uint32_t MAX_PUS_FUNNEL_QUEUE_DEPTH = 100;
static constexpr uint32_t MAX_CFDP_FUNNEL_QUEUE_DEPTH = 80;
static constexpr uint32_t LIVE_CHANNEL_NORMAL_QUEUE_SIZE = 250;
static constexpr uint32_t LIVE_CHANNEL_CFDP_QUEUE_SIZE = 350;
static constexpr uint32_t MAX_STORED_CMDS_UDP = 150;
static constexpr uint32_t MAX_STORED_CMDS_TCP = 180;
static constexpr uint32_t CFDP_MAX_FSM_CALL_COUNT_SRC_HANDLER = 10;
static constexpr uint32_t CFDP_MAX_FSM_CALL_COUNT_DEST_HANDLER = 300;
static constexpr uint32_t CFDP_SHORT_DELAY_MS = 40;
static constexpr uint32_t CFDP_REGULAR_DELAY_MS = 200;
static constexpr uint32_t MAX_PUS_FUNNEL_QUEUE_DEPTH = 100;
static constexpr uint32_t MAX_CFDP_FUNNEL_QUEUE_DEPTH = LIVE_CHANNEL_CFDP_QUEUE_SIZE;
static constexpr uint32_t VERIFICATION_SERVICE_QUEUE_DEPTH = 120;
static constexpr uint32_t HK_SERVICE_QUEUE_DEPTH = 60;
static constexpr uint32_t ACTION_SERVICE_QUEUE_DEPTH = 60;
static constexpr uint32_t UDP_MAX_STORED_CMDS = 200;
static constexpr uint32_t UDP_MSG_QUEUE_DEPTH = UDP_MAX_STORED_CMDS;
static constexpr uint32_t TCP_MAX_STORED_CMDS = 350;
static constexpr uint32_t TCP_MSG_QUEUE_DEPTH = TCP_MAX_STORED_CMDS;
static constexpr uint32_t TCP_MAX_NUMBER_TMS_SENT_PER_CYCLE = TCP_MSG_QUEUE_DEPTH;
namespace spiSched {
@ -71,6 +94,7 @@ static constexpr uint32_t SCHED_BLOCK_RTD = 150;
static constexpr uint32_t SCHED_BLOCK_7_RW_READ_MS = 300;
static constexpr uint32_t SCHED_BLOCK_8_PLPCDU_MS = 320;
static constexpr uint32_t SCHED_BLOCK_9_RAD_SENS_MS = 340;
static constexpr uint32_t SCHED_BLOCK_10_PWR_CTRL_MS = 350;
// 15 ms for FM
static constexpr float SCHED_BLOCK_1_PERIOD = static_cast<float>(SCHED_BLOCK_1_SUS_READ_MS) / 400.0;
@ -86,9 +110,23 @@ static constexpr float SCHED_BLOCK_RTD_PERIOD = static_cast<float>(SCHED_BLOCK_R
static constexpr float SCHED_BLOCK_7_PERIOD = static_cast<float>(SCHED_BLOCK_7_RW_READ_MS) / 400.0;
static constexpr float SCHED_BLOCK_8_PERIOD = static_cast<float>(SCHED_BLOCK_8_PLPCDU_MS) / 400.0;
static constexpr float SCHED_BLOCK_9_PERIOD = static_cast<float>(SCHED_BLOCK_9_RAD_SENS_MS) / 400.0;
static constexpr float SCHED_BLOCK_10_PERIOD =
static_cast<float>(SCHED_BLOCK_10_PWR_CTRL_MS) / 400.0;
} // namespace spiSched
namespace pdec {
// Pre FW v6.0.0
static constexpr uint32_t PDEC_CONFIG_BASE_ADDR_LEGACY = 0x24000000;
static constexpr uint32_t PDEC_RAM_ADDR_LEGACY = 0x26000000;
// Post FW v6.0.0
static constexpr uint32_t PDEC_CONFIG_BASE_ADDR = 0x4000000;
static constexpr uint32_t PDEC_RAM_ADDR = 0x7000000;
} // namespace pdec
} // namespace config
#endif /* COMMON_CONFIG_DEFINITIONS_H_ */

View File

@ -39,6 +39,9 @@ enum : uint8_t {
TCS_CONTROLLER = 141,
COM_SUBSYSTEM = 142,
PERSISTENT_TM_STORE = 143,
SYRLINKS_COM = 144,
SUS_HANDLER = 145,
CFDP_APP = 146,
COMMON_SUBSYSTEM_ID_END
};

View File

@ -26,7 +26,9 @@ enum commonObjects : uint32_t {
THERMAL_CONTROLLER = 0x43400001,
ACS_CONTROLLER = 0x43000002,
CORE_CONTROLLER = 0x43000003,
POWER_CONTROLLER = 0x43000004,
GLOBAL_JSON_CFG = 0x43000006,
XIPHOS_WDT = 0x43000007,
/* 0x44 ('D') for device handlers */
MGM_0_LIS3_HANDLER = 0x44120006,
@ -43,6 +45,8 @@ enum commonObjects : uint32_t {
RW4 = 0x44120350,
STAR_TRACKER = 0x44130001,
GPS_CONTROLLER = 0x44130045,
GPS_0_HEALTH_DEV = 0x44130046,
GPS_1_HEALTH_DEV = 0x44130047,
IMTQ_POLLING = 0x44140013,
IMTQ_HANDLER = 0x44140014,
@ -62,7 +66,7 @@ enum commonObjects : uint32_t {
RAD_SENSOR = 0x443200A5,
PLOC_UPDATER = 0x44330000,
PLOC_MEMORY_DUMPER = 0x44330001,
STR_HELPER = 0x44330002,
STR_COM_IF = 0x44330002,
PLOC_MPSOC_HELPER = 0x44330003,
AXI_PTME_CONFIG = 0x44330004,
PTME_CONFIG = 0x44330005,
@ -123,8 +127,7 @@ enum commonObjects : uint32_t {
SUS_11_R_LOC_XBYMZB_PT_ZB = 0x44120043,
SYRLINKS_HANDLER = 0x445300A3,
// might be obsolete, was not used in Q7S FM SW
// CCSDS_IP_CORE_BRIDGE = 0x73500000,
SYRLINKS_COM_HANDLER = 0x445300A4,
/* 0x49 ('I') for Communication Interfaces */
ACS_BOARD_POLLING_TASK = 0x49060004,
@ -156,12 +159,14 @@ enum commonObjects : uint32_t {
PL_SUBSYSTEM = 0x73010002,
TCS_SUBSYSTEM = 0x73010003,
COM_SUBSYSTEM = 0x73010004,
EPS_SUBSYSTEM = 0x73010005,
TM_FUNNEL = 0x73000100,
PUS_TM_FUNNEL = 0x73000101,
CFDP_TM_FUNNEL = 0x73000102,
CFDP_HANDLER = 0x73000205,
CFDP_DISTRIBUTOR = 0x73000206,
CFDP_FAULT_HANDLER = 0x73000207,
MISC_TM_STORE = 0x73020001,
OK_TM_STORE = 0x73020002,
NOT_OK_TM_STORE = 0x73020003,

View File

@ -37,13 +37,11 @@ enum commonClassIds : uint8_t {
SUPV_RETURN_VALUES_IF, // SPVRTVIF
ACS_CTRL, // ACSCTRL
ACS_MEKF, // ACSMEKF
ACS_SAFE, // ACSSAF
ACS_PTG, // ACSPTG
ACS_DETUMBLE, // ACSDTB
SD_CARD_MANAGER, // SDMA
LOCAL_PARAM_HANDLER, // LPH
PERSISTENT_TM_STORE, // PTM
TM_SINK, // TMS
VIRTUAL_CHANNEL, // VCS
COMMON_CLASS_ID_END // [EXPORT] : [END]
};
}

View File

@ -1,9 +1,12 @@
#include "AcuDummy.h"
#include <mission/devices/devicedefinitions/GomspaceDefinitions.h>
#include <mission/power/gsDefs.h>
AcuDummy::AcuDummy(object_id_t objectId, object_id_t comif, CookieIF *comCookie)
: DeviceHandlerBase(objectId, comif, comCookie) {}
AcuDummy::AcuDummy(object_id_t objectId, object_id_t comif, CookieIF *comCookie, bool enableHkSets)
: DeviceHandlerBase(objectId, comif, comCookie),
coreHk(this),
auxHk(this),
enableHkSets(enableHkSets) {}
AcuDummy::~AcuDummy() {}
@ -37,7 +40,49 @@ uint32_t AcuDummy::getTransitionDelayMs(Mode_t modeFrom, Mode_t modeTo) { return
ReturnValue_t AcuDummy::initializeLocalDataPool(localpool::DataPool &localDataPoolMap,
LocalDataPoolManager &poolManager) {
using namespace ACU;
localDataPoolMap.emplace(pool::ACU_CURRENT_IN_CHANNELS, new PoolEntry<int16_t>(6));
localDataPoolMap.emplace(pool::ACU_VOLTAGE_IN_CHANNELS, new PoolEntry<uint16_t>(6));
localDataPoolMap.emplace(pool::ACU_VCC, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(pool::ACU_VBAT, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(ACU::pool::ACU_TEMPERATURES,
new PoolEntry<float>({10.0, 10.0, 10.0}, true));
localDataPoolMap.emplace(pool::ACU_MPPT_MODE, new PoolEntry<uint8_t>({0}));
localDataPoolMap.emplace(pool::ACU_VBOOST_IN_CHANNELS, new PoolEntry<uint16_t>(6));
localDataPoolMap.emplace(pool::ACU_POWER_IN_CHANNELS, new PoolEntry<uint16_t>(6));
localDataPoolMap.emplace(pool::ACU_DAC_ENABLES, new PoolEntry<uint8_t>(3));
localDataPoolMap.emplace(pool::ACU_DAC_RAW_CHANNELS, new PoolEntry<uint16_t>(6));
localDataPoolMap.emplace(pool::ACU_BOOTCAUSE, new PoolEntry<uint32_t>({0}));
localDataPoolMap.emplace(pool::ACU_BOOTCNT, new PoolEntry<uint32_t>({0}));
localDataPoolMap.emplace(pool::ACU_UPTIME, new PoolEntry<uint32_t>({0}));
localDataPoolMap.emplace(pool::ACU_RESET_CAUSE, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(pool::ACU_MPPT_TIME, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(pool::ACU_MPPT_PERIOD, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(pool::ACU_DEVICES, new PoolEntry<uint8_t>(8));
localDataPoolMap.emplace(pool::ACU_DEVICES_STATUS, new PoolEntry<uint8_t>(8));
localDataPoolMap.emplace(pool::ACU_WDT_CNT_GND, new PoolEntry<uint32_t>({0}));
localDataPoolMap.emplace(pool::ACU_WDT_GND_LEFT, new PoolEntry<uint32_t>({0}));
poolManager.subscribeForDiagPeriodicPacket(
subdp::DiagnosticsHkPeriodicParams(coreHk.getSid(), enableHkSets, 30.0));
poolManager.subscribeForRegularPeriodicPacket(
subdp::RegularHkPeriodicParams(auxHk.getSid(), enableHkSets, 6000.0));
return returnvalue::OK;
}
LocalPoolDataSetBase *AcuDummy::getDataSetHandle(sid_t sid) {
if (sid == coreHk.getSid()) {
return &coreHk;
} else if (sid == auxHk.getSid()) {
return &auxHk;
}
return nullptr;
}

View File

@ -2,6 +2,7 @@
#define DUMMIES_ACUDUMMY_H_
#include <fsfw/devicehandlers/DeviceHandlerBase.h>
#include <mission/power/gsDefs.h>
class AcuDummy : public DeviceHandlerBase {
public:
@ -11,10 +12,14 @@ class AcuDummy : public DeviceHandlerBase {
static const uint8_t SIMPLE_COMMAND_DATA = 1;
static const uint8_t PERIODIC_REPLY_DATA = 2;
AcuDummy(object_id_t objectId, object_id_t comif, CookieIF *comCookie);
AcuDummy(object_id_t objectId, object_id_t comif, CookieIF *comCookie, bool enableHkSets);
virtual ~AcuDummy();
protected:
ACU::CoreHk coreHk;
ACU::AuxHk auxHk;
bool enableHkSets;
void doStartUp() override;
void doShutDown() override;
ReturnValue_t buildNormalDeviceCommand(DeviceCommandId_t *id) override;
@ -28,6 +33,7 @@ class AcuDummy : public DeviceHandlerBase {
uint32_t getTransitionDelayMs(Mode_t modeFrom, Mode_t modeTo) override;
ReturnValue_t initializeLocalDataPool(localpool::DataPool &localDataPoolMap,
LocalDataPoolManager &poolManager) override;
LocalPoolDataSetBase *getDataSetHandle(sid_t sid) override;
};
#endif /* DUMMIES_ACUDUMMY_H_ */

View File

@ -1,6 +1,6 @@
#include "BpxDummy.h"
#include <mission/devices/devicedefinitions/BpxBatteryDefinitions.h>
#include <mission/power/bpxBattDefs.h>
BpxDummy::BpxDummy(object_id_t objectId, object_id_t comif, CookieIF *comCookie)
: DeviceHandlerBase(objectId, comif, comCookie) {}
@ -37,19 +37,19 @@ uint32_t BpxDummy::getTransitionDelayMs(Mode_t modeFrom, Mode_t modeTo) { return
ReturnValue_t BpxDummy::initializeLocalDataPool(localpool::DataPool &localDataPoolMap,
LocalDataPoolManager &poolManager) {
localDataPoolMap.emplace(BpxBattery::BATT_TEMP_1, &battTemp1);
localDataPoolMap.emplace(BpxBattery::BATT_TEMP_2, &battTemp2);
localDataPoolMap.emplace(BpxBattery::BATT_TEMP_3, &battTemp3);
localDataPoolMap.emplace(BpxBattery::BATT_TEMP_4, &battTemp4);
localDataPoolMap.emplace(BpxBattery::CHARGE_CURRENT, &chargeCurrent);
localDataPoolMap.emplace(BpxBattery::DISCHARGE_CURRENT, &dischargeCurrent);
localDataPoolMap.emplace(BpxBattery::HEATER_CURRENT, &heaterCurrent);
localDataPoolMap.emplace(BpxBattery::BATT_VOLTAGE, &battVolt);
localDataPoolMap.emplace(BpxBattery::REBOOT_COUNTER, &rebootCounter);
localDataPoolMap.emplace(BpxBattery::BOOTCAUSE, &bootCause);
localDataPoolMap.emplace(bpxBat::BATT_TEMP_1, &battTemp1);
localDataPoolMap.emplace(bpxBat::BATT_TEMP_2, &battTemp2);
localDataPoolMap.emplace(bpxBat::BATT_TEMP_3, &battTemp3);
localDataPoolMap.emplace(bpxBat::BATT_TEMP_4, &battTemp4);
localDataPoolMap.emplace(bpxBat::CHARGE_CURRENT, &chargeCurrent);
localDataPoolMap.emplace(bpxBat::DISCHARGE_CURRENT, &dischargeCurrent);
localDataPoolMap.emplace(bpxBat::HEATER_CURRENT, &heaterCurrent);
localDataPoolMap.emplace(bpxBat::BATT_VOLTAGE, &battVolt);
localDataPoolMap.emplace(bpxBat::REBOOT_COUNTER, &rebootCounter);
localDataPoolMap.emplace(bpxBat::BOOTCAUSE, &bootCause);
localDataPoolMap.emplace(BpxBattery::BATTERY_HEATER_MODE, &battheatMode);
localDataPoolMap.emplace(BpxBattery::BATTHEAT_LOW_LIMIT, &battheatLow);
localDataPoolMap.emplace(BpxBattery::BATTHEAT_HIGH_LIMIT, &battheatHigh);
localDataPoolMap.emplace(bpxBat::BATTERY_HEATER_MODE, &battheatMode);
localDataPoolMap.emplace(bpxBat::BATTHEAT_LOW_LIMIT, &battheatLow);
localDataPoolMap.emplace(bpxBat::BATTHEAT_HIGH_LIMIT, &battheatHigh);
return returnvalue::OK;
}

View File

@ -19,6 +19,7 @@ target_sources(
GpsCtrlDummy.cpp
GyroAdisDummy.cpp
GyroL3GD20Dummy.cpp
RadSensorDummy.cpp
MgmLIS3MDLDummy.cpp
PlPcduDummy.cpp
ExecutableComIfDummy.cpp
@ -26,6 +27,6 @@ target_sources(
CoreControllerDummy.cpp
PlocMpsocDummy.cpp
PlocSupervisorDummy.cpp
helpers.cpp
helperFactory.cpp
MgmRm3100Dummy.cpp
Tmp1075Dummy.cpp)

View File

@ -1,6 +1,6 @@
#include "CoreControllerDummy.h"
#include <bsp_q7s/core/CoreDefinitions.h>
#include <bsp_q7s/core/defs.h>
#include <objects/systemObjectList.h>
#include <cmath>

View File

@ -1,7 +1,7 @@
#pragma once
#include <fsfw/controller/ExtendedControllerBase.h>
#include <mission/devices/devicedefinitions/susMax1227Helpers.h>
#include <mission/acs/susMax1227Helpers.h>
class CoreControllerDummy : public ExtendedControllerBase {
public:

View File

@ -2,7 +2,7 @@
#define DUMMIES_GPSCTRLDUMMY_H_
#include <fsfw/controller/ExtendedControllerBase.h>
#include <mission/devices/devicedefinitions/GPSDefinitions.h>
#include <mission/acs/archive/GPSDefinitions.h>
class GpsCtrlDummy : public ExtendedControllerBase {
public:

View File

@ -1,5 +1,5 @@
#include <dummies/GpsDhbDummy.h>
#include <mission/devices/devicedefinitions/GPSDefinitions.h>
#include <mission/acs/archive/GPSDefinitions.h>
GpsDhbDummy::GpsDhbDummy(object_id_t objectId, object_id_t comif, CookieIF *comCookie)
: DeviceHandlerBase(objectId, comif, comCookie) {}

View File

@ -1,6 +1,6 @@
#include "GyroAdisDummy.h"
#include <mission/devices/devicedefinitions/gyroAdisHelpers.h>
#include <mission/acs/gyroAdisHelpers.h>
GyroAdisDummy::GyroAdisDummy(object_id_t objectId, object_id_t comif, CookieIF *comCookie)
: DeviceHandlerBase(objectId, comif, comCookie), dataset(this) {}
@ -46,7 +46,7 @@ ReturnValue_t GyroAdisDummy::initializeLocalDataPool(localpool::DataPool &localD
localDataPoolMap.emplace(adis1650x::ACCELERATION_X, new PoolEntry<double>({0.0}));
localDataPoolMap.emplace(adis1650x::ACCELERATION_Y, new PoolEntry<double>({0.0}));
localDataPoolMap.emplace(adis1650x::ACCELERATION_Z, new PoolEntry<double>({0.0}));
localDataPoolMap.emplace(adis1650x::TEMPERATURE, new PoolEntry<float>({0.0}));
localDataPoolMap.emplace(adis1650x::TEMPERATURE, new PoolEntry<float>({10.0}, true));
return returnvalue::OK;
}

View File

@ -2,7 +2,7 @@
#define DUMMIES_GYROADISDUMMY_H_
#include <fsfw/devicehandlers/DeviceHandlerBase.h>
#include <mission/devices/devicedefinitions/gyroAdisHelpers.h>
#include <mission/acs/gyroAdisHelpers.h>
class GyroAdisDummy : public DeviceHandlerBase {
public:

View File

@ -1,16 +1,35 @@
#include "ImtqDummy.h"
#include <mission/devices/devicedefinitions/imtqHelpers.h>
#include <mission/acs/imtqHelpers.h>
ImtqDummy::ImtqDummy(object_id_t objectId, object_id_t comif, CookieIF *comCookie)
: DeviceHandlerBase(objectId, comif, comCookie) {}
ImtqDummy::ImtqDummy(object_id_t objectId, object_id_t comif, CookieIF *comCookie,
power::Switch_t pwrSwitcher, bool enableHkSets)
: DeviceHandlerBase(objectId, comif, comCookie),
enableHkSets(enableHkSets),
statusSet(this),
dipoleSet(*this),
rawMtmNoTorque(this),
hkDatasetNoTorque(this),
rawMtmWithTorque(this),
hkDatasetWithTorque(this),
calMtmMeasurementSet(this),
switcher(pwrSwitcher) {}
ImtqDummy::~ImtqDummy() = default;
void ImtqDummy::doStartUp() { setMode(MODE_NORMAL); }
void ImtqDummy::doStartUp() { setMode(MODE_ON); }
void ImtqDummy::doShutDown() { setMode(_MODE_POWER_DOWN); }
ReturnValue_t ImtqDummy::getSwitches(const uint8_t **switches, uint8_t *numberOfSwitches) {
if (switcher != power::NO_SWITCH) {
*numberOfSwitches = 1;
*switches = &switcher;
return returnvalue::OK;
}
return DeviceHandlerBase::NO_SWITCH;
}
ReturnValue_t ImtqDummy::buildNormalDeviceCommand(DeviceCommandId_t *id) { return NOTHING_TO_SEND; }
ReturnValue_t ImtqDummy::buildTransitionDeviceCommand(DeviceCommandId_t *id) {
@ -43,5 +62,59 @@ ReturnValue_t ImtqDummy::initializeLocalDataPool(localpool::DataPool &localDataP
localDataPoolMap.emplace(imtq::ACTUATION_CAL_STATUS, new PoolEntry<uint8_t>({0}));
localDataPoolMap.emplace(imtq::MTM_RAW, new PoolEntry<float>({0.12, 0.76, -0.45}, true));
localDataPoolMap.emplace(imtq::ACTUATION_RAW_STATUS, new PoolEntry<uint8_t>({0}));
localDataPoolMap.emplace(imtq::DIPOLES_ID, new PoolEntry<int16_t>({0, 0, 0}));
localDataPoolMap.emplace(imtq::CURRENT_TORQUE_DURATION, new PoolEntry<uint16_t>({0}));
// ENG HK No Torque
localDataPoolMap.emplace(imtq::DIGITAL_VOLTAGE_MV, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(imtq::ANALOG_VOLTAGE_MV, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(imtq::DIGITAL_CURRENT, new PoolEntry<float>({0}));
localDataPoolMap.emplace(imtq::ANALOG_CURRENT, new PoolEntry<float>({0}));
localDataPoolMap.emplace(imtq::COIL_CURRENTS, &coilCurrentsMilliampsNoTorque);
localDataPoolMap.emplace(imtq::COIL_TEMPERATURES, &coilTempsNoTorque);
localDataPoolMap.emplace(imtq::MCU_TEMPERATURE, new PoolEntry<int16_t>({0}));
// ENG HK With Torque
localDataPoolMap.emplace(imtq::DIGITAL_VOLTAGE_MV_WT, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(imtq::ANALOG_VOLTAGE_MV_WT, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(imtq::DIGITAL_CURRENT_WT, new PoolEntry<float>({0}));
localDataPoolMap.emplace(imtq::ANALOG_CURRENT_WT, new PoolEntry<float>({0}));
localDataPoolMap.emplace(imtq::COIL_CURRENTS_WT, &coilCurrentsMilliampsWithTorque);
localDataPoolMap.emplace(imtq::COIL_TEMPERATURES_WT, &coilTempsWithTorque);
localDataPoolMap.emplace(imtq::MCU_TEMPERATURE_WT, new PoolEntry<int16_t>({0}));
poolManager.subscribeForDiagPeriodicPacket(
subdp::DiagnosticsHkPeriodicParams(hkDatasetNoTorque.getSid(), enableHkSets, 30.0));
poolManager.subscribeForDiagPeriodicPacket(
subdp::DiagnosticsHkPeriodicParams(hkDatasetWithTorque.getSid(), enableHkSets, 30.0));
poolManager.subscribeForDiagPeriodicPacket(
subdp::DiagnosticsHkPeriodicParams(rawMtmNoTorque.getSid(), false, 10.0));
poolManager.subscribeForDiagPeriodicPacket(
subdp::DiagnosticsHkPeriodicParams(rawMtmWithTorque.getSid(), false, 10.0));
poolManager.subscribeForDiagPeriodicPacket(
subdp::DiagnosticsHkPeriodicParams(calMtmMeasurementSet.getSid(), false, 10.0));
poolManager.subscribeForRegularPeriodicPacket(
subdp::RegularHkPeriodicParams(statusSet.getSid(), false, 10.0));
poolManager.subscribeForDiagPeriodicPacket(
subdp::DiagnosticsHkPeriodicParams(dipoleSet.getSid(), false, 10.0));
return DeviceHandlerBase::initializeLocalDataPool(localDataPoolMap, poolManager);
}
LocalPoolDataSetBase *ImtqDummy::getDataSetHandle(sid_t sid) {
if (sid == hkDatasetNoTorque.getSid()) {
return &hkDatasetNoTorque;
} else if (sid == dipoleSet.getSid()) {
return &dipoleSet;
} else if (sid == statusSet.getSid()) {
return &statusSet;
} else if (sid == hkDatasetWithTorque.getSid()) {
return &hkDatasetWithTorque;
} else if (sid == rawMtmWithTorque.getSid()) {
return &rawMtmWithTorque;
} else if (sid == calMtmMeasurementSet.getSid()) {
return &calMtmMeasurementSet;
} else if (sid == rawMtmNoTorque.getSid()) {
return &rawMtmNoTorque;
}
return nullptr;
}

View File

@ -3,6 +3,8 @@
#include <fsfw/devicehandlers/DeviceHandlerBase.h>
#include "mission/acs/imtqHelpers.h"
class ImtqDummy : public DeviceHandlerBase {
public:
static const DeviceCommandId_t SIMPLE_COMMAND = 1;
@ -11,10 +13,44 @@ class ImtqDummy : public DeviceHandlerBase {
static const uint8_t SIMPLE_COMMAND_DATA = 1;
static const uint8_t PERIODIC_REPLY_DATA = 2;
ImtqDummy(object_id_t objectId, object_id_t comif, CookieIF *comCookie);
ImtqDummy(object_id_t objectId, object_id_t comif, CookieIF *comCookie,
power::Switch_t pwrSwitcher, bool enableHkSets);
~ImtqDummy() override;
protected:
bool enableHkSets;
imtq::StatusDataset statusSet;
imtq::DipoleActuationSet dipoleSet;
imtq::RawMtmMeasurementNoTorque rawMtmNoTorque;
imtq::HkDatasetNoTorque hkDatasetNoTorque;
imtq::RawMtmMeasurementWithTorque rawMtmWithTorque;
imtq::HkDatasetWithTorque hkDatasetWithTorque;
imtq::CalibratedMtmMeasurementSet calMtmMeasurementSet;
PoolEntry<uint8_t> statusMode = PoolEntry<uint8_t>({0});
PoolEntry<uint8_t> statusError = PoolEntry<uint8_t>({0});
PoolEntry<uint8_t> statusConfig = PoolEntry<uint8_t>({0});
PoolEntry<uint32_t> statusUptime = PoolEntry<uint32_t>({0});
PoolEntry<int32_t> mgmCalEntry = PoolEntry<int32_t>(3);
PoolEntry<int16_t> dipolesPoolEntry = PoolEntry<int16_t>({0, 0, 0}, false);
PoolEntry<uint16_t> torqueDurationEntry = PoolEntry<uint16_t>({0}, false);
PoolEntry<float> coilCurrentsMilliampsNoTorque = PoolEntry<float>(3);
PoolEntry<float> coilCurrentsMilliampsWithTorque = PoolEntry<float>(3);
PoolEntry<int16_t> coilTempsNoTorque = PoolEntry<int16_t>(3);
PoolEntry<int16_t> coilTempsWithTorque = PoolEntry<int16_t>(3);
PoolEntry<float> mtmRawNoTorque = PoolEntry<float>(3);
PoolEntry<uint8_t> actStatusNoTorque = PoolEntry<uint8_t>(1);
PoolEntry<float> mtmRawWithTorque = PoolEntry<float>(3);
PoolEntry<uint8_t> actStatusWithTorque = PoolEntry<uint8_t>(1);
power::Switch_t switcher = power::NO_SWITCH;
ReturnValue_t getSwitches(const uint8_t **switches, uint8_t *numberOfSwitches) override;
void doStartUp() override;
void doShutDown() override;
ReturnValue_t buildNormalDeviceCommand(DeviceCommandId_t *id) override;
@ -28,6 +64,7 @@ class ImtqDummy : public DeviceHandlerBase {
uint32_t getTransitionDelayMs(Mode_t modeFrom, Mode_t modeTo) override;
ReturnValue_t initializeLocalDataPool(localpool::DataPool &localDataPoolMap,
LocalDataPoolManager &poolManager) override;
LocalPoolDataSetBase *getDataSetHandle(sid_t sid) override;
};
#endif /* DUMMIES_IMTQDUMMY_H_ */

View File

@ -1,19 +1,27 @@
#include "Max31865Dummy.h"
#include "fsfw/datapool/PoolReadGuard.h"
using namespace returnvalue;
Max31865Dummy::Max31865Dummy(object_id_t objectId, object_id_t comif, CookieIF *comCookie)
: DeviceHandlerBase(objectId, comif, comCookie), set(this, EiveMax31855::EXCHANGE_SET_ID) {}
void Max31865Dummy::doStartUp() { setMode(MODE_ON); }
void Max31865Dummy::doShutDown() { setMode(_MODE_POWER_DOWN); }
void Max31865Dummy::doShutDown() {
PoolReadGuard pg(&set);
set.setValidity(false, true);
setMode(MODE_OFF);
}
ReturnValue_t Max31865Dummy::buildNormalDeviceCommand(DeviceCommandId_t *id) {
return NOTHING_TO_SEND;
}
ReturnValue_t Max31865Dummy::buildTransitionDeviceCommand(DeviceCommandId_t *id) { return OK; }
ReturnValue_t Max31865Dummy::buildTransitionDeviceCommand(DeviceCommandId_t *id) {
return NOTHING_TO_SEND;
}
ReturnValue_t Max31865Dummy::buildCommandFromCommand(DeviceCommandId_t deviceCommand,
const uint8_t *commandData,
size_t commandDataLen) {
return 0;
return NOTHING_TO_SEND;
}
ReturnValue_t Max31865Dummy::scanForReply(const uint8_t *start, size_t len,
DeviceCommandId_t *foundId, size_t *foundLen) {
@ -28,15 +36,20 @@ ReturnValue_t Max31865Dummy::initializeLocalDataPool(localpool::DataPool &localD
LocalDataPoolManager &poolManager) {
using namespace MAX31865;
localDataPoolMap.emplace(static_cast<lp_id_t>(PoolIds::RTD_VALUE), new PoolEntry<float>({0}));
localDataPoolMap.emplace(static_cast<lp_id_t>(PoolIds::TEMPERATURE_C), new PoolEntry<float>({0}));
localDataPoolMap.emplace(static_cast<lp_id_t>(PoolIds::TEMPERATURE_C),
new PoolEntry<float>({10.0}, true));
localDataPoolMap.emplace(static_cast<lp_id_t>(PoolIds::LAST_FAULT_BYTE),
new PoolEntry<uint8_t>({0}));
localDataPoolMap.emplace(static_cast<lp_id_t>(PoolIds::FAULT_BYTE), new PoolEntry<uint8_t>({0}));
return OK;
}
void Max31865Dummy::setTemperature(float temperature) {
set.temperatureCelcius.value = temperature;
void Max31865Dummy::setTemperature(float temperature, bool valid) {
PoolReadGuard pg(&set);
if (pg.getReadResult() == returnvalue::OK) {
set.temperatureCelcius.value = temperature;
set.setValidity(valid, true);
}
}
LocalPoolDataSetBase *Max31865Dummy::getDataSetHandle(sid_t sid) { return &set; }

View File

@ -1,15 +1,16 @@
#ifndef EIVE_OBSW_MAX31865DUMMY_H
#define EIVE_OBSW_MAX31865DUMMY_H
#include <mission/tcs/Max31865Definitions.h>
#include "fsfw/devicehandlers/DeviceHandlerBase.h"
#include "mission/devices/devicedefinitions/Max31865Definitions.h"
class Max31865Dummy : public DeviceHandlerBase {
public:
Max31865Dummy(object_id_t objectId, object_id_t comif, CookieIF *comCookie);
Max31865Dummy(object_id_t objectId, CookieIF *comCookie);
void setTemperature(float temperature);
void setTemperature(float temperature, bool setValid);
private:
MAX31865::PrimarySet set;

View File

@ -40,7 +40,7 @@ uint32_t MgmLIS3MDLDummy::getTransitionDelayMs(Mode_t modeFrom, Mode_t modeTo) {
ReturnValue_t MgmLIS3MDLDummy::initializeLocalDataPool(localpool::DataPool &localDataPoolMap,
LocalDataPoolManager &poolManager) {
localDataPoolMap.emplace(mgmLis3::TEMPERATURE_CELCIUS, new PoolEntry<float>({0.0}));
localDataPoolMap.emplace(mgmLis3::TEMPERATURE_CELCIUS, new PoolEntry<float>({10.0}, true));
localDataPoolMap.emplace(mgmLis3::FIELD_STRENGTHS,
new PoolEntry<float>({1.02, 0.56, -0.78}, true));
return returnvalue::OK;

View File

@ -1,6 +1,8 @@
#include "P60DockDummy.h"
#include <mission/devices/devicedefinitions/GomspaceDefinitions.h>
#include <mission/power/gsDefs.h>
#include "fsfw/datapool/PoolReadGuard.h"
P60DockDummy::P60DockDummy(object_id_t objectId, object_id_t comif, CookieIF *comCookie)
: DeviceHandlerBase(objectId, comif, comCookie) {}

View File

@ -3,6 +3,8 @@
#include <fsfw/devicehandlers/DeviceHandlerBase.h>
#include "mission/power/gsDefs.h"
class P60DockDummy : public DeviceHandlerBase {
public:
static const DeviceCommandId_t SIMPLE_COMMAND = 1;
@ -15,6 +17,8 @@ class P60DockDummy : public DeviceHandlerBase {
virtual ~P60DockDummy();
protected:
lp_var_t<float> temp1 = lp_var_t<float>(this, P60Dock::pool::P60DOCK_TEMPERATURE_1);
lp_var_t<float> temp2 = lp_var_t<float>(this, P60Dock::pool::P60DOCK_TEMPERATURE_2);
void doStartUp() override;
void doShutDown() override;
ReturnValue_t buildNormalDeviceCommand(DeviceCommandId_t *id) override;

View File

@ -1,49 +1,35 @@
#include "PcduHandlerDummy.h"
#include <mission/devices/devicedefinitions/GomspaceDefinitions.h>
#include <fsfw/ipc/QueueFactory.h>
#include <mission/power/gsDefs.h>
PcduHandlerDummy::PcduHandlerDummy(object_id_t objectId, object_id_t comif, CookieIF *comCookie)
: DeviceHandlerBase(objectId, comif, comCookie), dummySwitcher(objectId, 18, 18, false) {}
#include "mission/power/defs.h"
PcduHandlerDummy::PcduHandlerDummy(object_id_t objectId)
: SystemObject(objectId), manager(this, nullptr), dummySwitcher(objectId, 18, 18, false) {
switcherLock = MutexFactory::instance()->createMutex();
queue = QueueFactory::instance()->createMessageQueue(20);
}
PcduHandlerDummy::~PcduHandlerDummy() {}
void PcduHandlerDummy::doStartUp() { setMode(MODE_NORMAL); }
void PcduHandlerDummy::doShutDown() { setMode(MODE_OFF); }
ReturnValue_t PcduHandlerDummy::buildNormalDeviceCommand(DeviceCommandId_t *id) {
return NOTHING_TO_SEND;
}
ReturnValue_t PcduHandlerDummy::buildTransitionDeviceCommand(DeviceCommandId_t *id) {
return NOTHING_TO_SEND;
}
ReturnValue_t PcduHandlerDummy::buildCommandFromCommand(DeviceCommandId_t deviceCommand,
const uint8_t *commandData,
size_t commandDataLen) {
return returnvalue::OK;
}
ReturnValue_t PcduHandlerDummy::scanForReply(const uint8_t *start, size_t len,
DeviceCommandId_t *foundId, size_t *foundLen) {
return returnvalue::OK;
}
ReturnValue_t PcduHandlerDummy::interpretDeviceReply(DeviceCommandId_t id, const uint8_t *packet) {
return returnvalue::OK;
}
void PcduHandlerDummy::fillCommandAndReplyMap() {}
uint32_t PcduHandlerDummy::getTransitionDelayMs(Mode_t modeFrom, Mode_t modeTo) { return 500; }
ReturnValue_t PcduHandlerDummy::initializeLocalDataPool(localpool::DataPool &localDataPoolMap,
LocalDataPoolManager &poolManager) {
ReturnValue_t PcduHandlerDummy::initializeLocalDataPool(localpool::DataPool& localDataPoolMap,
LocalDataPoolManager& poolManager) {
return returnvalue::OK;
}
ReturnValue_t PcduHandlerDummy::sendSwitchCommand(power::Switch_t switchNr, ReturnValue_t onOff) {
if (onOff == SWITCH_ON) {
triggerEvent(power::SWITCH_CMD_SENT, true, switchNr);
} else {
triggerEvent(power::SWITCH_CMD_SENT, false, switchNr);
}
{
MutexGuard mg(switcherLock);
// To simulate a real PCDU, remember the switch change to trigger a SWITCH_HAS_CHANGED event
// at a later stage.
switchChangeArray[switchNr] = true;
}
return dummySwitcher.sendSwitchCommand(switchNr, onOff);
}
@ -60,3 +46,37 @@ ReturnValue_t PcduHandlerDummy::getFuseState(uint8_t fuseNr) const {
}
uint32_t PcduHandlerDummy::getSwitchDelayMs(void) const { return dummySwitcher.getSwitchDelayMs(); }
ReturnValue_t PcduHandlerDummy::performOperation(uint8_t opCode) {
// TODO: Handle HK messages in queue.
SwitcherBoolArray switcherChangeCopy{};
{
MutexGuard mg(switcherLock);
std::memcpy(switcherChangeCopy.data(), switchChangeArray.data(), switchChangeArray.size());
}
for (uint8_t idx = 0; idx < switcherChangeCopy.size(); idx++) {
if (switcherChangeCopy[idx]) {
if (dummySwitcher.getSwitchState(idx) == PowerSwitchIF::SWITCH_ON) {
triggerEvent(power::SWITCH_HAS_CHANGED, true, idx);
} else {
triggerEvent(power::SWITCH_HAS_CHANGED, false, idx);
}
MutexGuard mg(switcherLock);
switchChangeArray[idx] = false;
}
}
return returnvalue::OK;
}
object_id_t PcduHandlerDummy::getObjectId() const { return SystemObject::getObjectId(); }
MessageQueueId_t PcduHandlerDummy::getCommandQueue() const { return queue->getId(); }
dur_millis_t PcduHandlerDummy::getPeriodicOperationFrequency() const {
// TODO: dummy value. Retrieve from intiitalize after task creation..
return 400;
}
LocalDataPoolManager* PcduHandlerDummy::getHkManagerHandle() { return &manager; }
LocalPoolDataSetBase* PcduHandlerDummy::getDataSetHandle(sid_t sid) { return nullptr; }

View File

@ -3,7 +3,10 @@
#include <fsfw/devicehandlers/DeviceHandlerBase.h>
#include <fsfw/power/DummyPowerSwitcher.h>
class PcduHandlerDummy : public DeviceHandlerBase, public PowerSwitchIF {
class PcduHandlerDummy : public PowerSwitchIF,
public HasLocalDataPoolIF,
public SystemObject,
public ExecutableObjectIF {
public:
static const DeviceCommandId_t SIMPLE_COMMAND = 1;
static const DeviceCommandId_t PERIODIC_REPLY = 2;
@ -11,29 +14,49 @@ class PcduHandlerDummy : public DeviceHandlerBase, public PowerSwitchIF {
static const uint8_t SIMPLE_COMMAND_DATA = 1;
static const uint8_t PERIODIC_REPLY_DATA = 2;
PcduHandlerDummy(object_id_t objectId, object_id_t comif, CookieIF *comCookie);
PcduHandlerDummy(object_id_t objectId);
virtual ~PcduHandlerDummy();
protected:
MessageQueueIF* queue;
LocalDataPoolManager manager;
MutexIF* switcherLock;
DummyPowerSwitcher dummySwitcher;
using SwitcherBoolArray = std::array<bool, 18>;
void doStartUp() override;
void doShutDown() override;
ReturnValue_t buildNormalDeviceCommand(DeviceCommandId_t *id) override;
ReturnValue_t buildTransitionDeviceCommand(DeviceCommandId_t *id) override;
ReturnValue_t buildCommandFromCommand(DeviceCommandId_t deviceCommand, const uint8_t *commandData,
size_t commandDataLen) override;
ReturnValue_t scanForReply(const uint8_t *start, size_t len, DeviceCommandId_t *foundId,
size_t *foundLen) override;
ReturnValue_t interpretDeviceReply(DeviceCommandId_t id, const uint8_t *packet) override;
void fillCommandAndReplyMap() override;
uint32_t getTransitionDelayMs(Mode_t modeFrom, Mode_t modeTo) override;
ReturnValue_t initializeLocalDataPool(localpool::DataPool &localDataPoolMap,
LocalDataPoolManager &poolManager) override;
ReturnValue_t performOperation(uint8_t opCode) override;
SwitcherBoolArray switchChangeArray{};
ReturnValue_t initializeLocalDataPool(localpool::DataPool& localDataPoolMap,
LocalDataPoolManager& poolManager) override;
ReturnValue_t sendSwitchCommand(power::Switch_t switchNr, ReturnValue_t onOff) override;
ReturnValue_t sendFuseOnCommand(uint8_t fuseNr) override;
ReturnValue_t getSwitchState(power::Switch_t switchNr) const override;
ReturnValue_t getFuseState(uint8_t fuseNr) const override;
uint32_t getSwitchDelayMs(void) const override;
object_id_t getObjectId() const override;
/** Command queue for housekeeping messages. */
MessageQueueId_t getCommandQueue() const override;
dur_millis_t getPeriodicOperationFrequency() const override;
/**
* Every class implementing this interface should have a local data pool manager. This
* function will return a reference to the manager.
* @return
*/
LocalDataPoolManager* getHkManagerHandle() override;
/**
* This function is used by the pool manager to get a valid dataset
* from a SID. This function is protected to prevent users from
* using raw data set pointers which could not be thread-safe. Users
* should use the #ProvidesDataPoolSubscriptionIF.
* @param sid Corresponding structure ID
* @return
*/
LocalPoolDataSetBase* getDataSetHandle(sid_t sid) override;
};

View File

@ -1,6 +1,6 @@
#include "PduDummy.h"
#include <mission/devices/devicedefinitions/GomspaceDefinitions.h>
#include <mission/power/gsDefs.h>
PduDummy::PduDummy(object_id_t objectId, object_id_t comif, CookieIF *comCookie)
: DeviceHandlerBase(objectId, comif, comCookie),

View File

@ -2,8 +2,7 @@
#define DUMMIES_PDUDUMMY_H_
#include <fsfw/devicehandlers/DeviceHandlerBase.h>
#include "mission/devices/devicedefinitions/GomspaceDefinitions.h"
#include <mission/power/gsDefs.h>
class PduDummy : public DeviceHandlerBase {
public:

View File

@ -1,13 +1,13 @@
#include "PlPcduDummy.h"
#include <mission/devices/devicedefinitions/GomspaceDefinitions.h>
#include <mission/power/gsDefs.h>
PlPcduDummy::PlPcduDummy(object_id_t objectId, object_id_t comif, CookieIF *comCookie)
: DeviceHandlerBase(objectId, comif, comCookie) {}
PlPcduDummy::~PlPcduDummy() {}
void PlPcduDummy::doStartUp() { setMode(MODE_NORMAL); }
void PlPcduDummy::doStartUp() { setMode(MODE_ON); }
void PlPcduDummy::doShutDown() { setMode(MODE_OFF); }
@ -43,3 +43,16 @@ ReturnValue_t PlPcduDummy::initializeLocalDataPool(localpool::DataPool &localDat
localDataPoolMap.emplace(plpcdu::PlPcduPoolIds::TEMP, new PoolEntry<float>({0.0}, true));
return returnvalue::OK;
}
ReturnValue_t PlPcduDummy::checkModeCommand(Mode_t commandedMode, Submode_t commandedSubmode,
uint32_t *msToReachTheMode) {
if (commandedMode != MODE_OFF) {
PoolReadGuard pg(&enablePl);
if (pg.getReadResult() == returnvalue::OK) {
if (enablePl.plUseAllowed.isValid() and not enablePl.plUseAllowed.value) {
return NON_OP_STATE_OF_CHARGE;
}
}
}
return DeviceHandlerBase::checkModeCommand(commandedMode, commandedSubmode, msToReachTheMode);
}

View File

@ -1,8 +1,10 @@
#ifndef DUMMIES_PLPCDUDUMMY_H_
#define DUMMIES_PLPCDUDUMMY_H_
#include <common/config/eive/objects.h>
#include <fsfw/devicehandlers/DeviceHandlerBase.h>
#include <mission/devices/devicedefinitions/payloadPcduDefinitions.h>
#include <mission/controller/controllerdefinitions/PowerCtrlDefinitions.h>
#include <mission/payload/payloadPcduDefinitions.h>
class PlPcduDummy : public DeviceHandlerBase {
public:
@ -29,6 +31,10 @@ class PlPcduDummy : public DeviceHandlerBase {
uint32_t getTransitionDelayMs(Mode_t modeFrom, Mode_t modeTo) override;
ReturnValue_t initializeLocalDataPool(localpool::DataPool &localDataPoolMap,
LocalDataPoolManager &poolManager) override;
ReturnValue_t checkModeCommand(Mode_t commandedMode, Submode_t commandedSubmode,
uint32_t *msToReachTheMode) override;
pwrctrl::EnablePl enablePl = pwrctrl::EnablePl(objects::POWER_CONTROLLER);
};
#endif /* DUMMIES_PLPCDUDUMMY_H_ */

View File

@ -23,6 +23,19 @@ ReturnValue_t PlocMpsocDummy::buildCommandFromCommand(DeviceCommandId_t deviceCo
return returnvalue::OK;
}
ReturnValue_t PlocMpsocDummy::checkModeCommand(Mode_t commandedMode, Submode_t commandedSubmode,
uint32_t *msToReachTheMode) {
if (commandedMode != MODE_OFF) {
PoolReadGuard pg(&enablePl);
if (pg.getReadResult() == returnvalue::OK) {
if (enablePl.plUseAllowed.isValid() and not enablePl.plUseAllowed.value) {
return NON_OP_STATE_OF_CHARGE;
}
}
}
return DeviceHandlerBase::checkModeCommand(commandedMode, commandedSubmode, msToReachTheMode);
}
ReturnValue_t PlocMpsocDummy::scanForReply(const uint8_t *start, size_t len,
DeviceCommandId_t *foundId, size_t *foundLen) {
return returnvalue::OK;

View File

@ -1,6 +1,10 @@
#pragma once
#include <common/config/eive/objects.h>
#include <fsfw/devicehandlers/DeviceHandlerBase.h>
#include <mission/controller/controllerdefinitions/PowerCtrlDefinitions.h>
#include "mission/power/defs.h"
class PlocMpsocDummy : public DeviceHandlerBase {
public:
@ -22,6 +26,9 @@ class PlocMpsocDummy : public DeviceHandlerBase {
size_t commandDataLen) override;
ReturnValue_t scanForReply(const uint8_t *start, size_t len, DeviceCommandId_t *foundId,
size_t *foundLen) override;
ReturnValue_t checkModeCommand(Mode_t commandedMode, Submode_t commandedSubmode,
uint32_t *msToReachTheMode) override;
pwrctrl::EnablePl enablePl = pwrctrl::EnablePl(objects::POWER_CONTROLLER);
ReturnValue_t interpretDeviceReply(DeviceCommandId_t id, const uint8_t *packet) override;
void fillCommandAndReplyMap() override;
uint32_t getTransitionDelayMs(Mode_t modeFrom, Mode_t modeTo) override;

View File

@ -1,8 +1,10 @@
#include "PlocSupervisorDummy.h"
PlocSupervisorDummy::PlocSupervisorDummy(object_id_t objectId, object_id_t comif,
CookieIF *comCookie)
: DeviceHandlerBase(objectId, comif, comCookie) {}
CookieIF *comCookie, PowerSwitchIF &pwrSwitcher)
: DeviceHandlerBase(objectId, comif, comCookie) {
setPowerSwitcher(&pwrSwitcher);
}
PlocSupervisorDummy::~PlocSupervisorDummy() {}
@ -42,3 +44,24 @@ ReturnValue_t PlocSupervisorDummy::initializeLocalDataPool(localpool::DataPool &
LocalDataPoolManager &poolManager) {
return returnvalue::OK;
}
ReturnValue_t PlocSupervisorDummy::getSwitches(const uint8_t **switches,
uint8_t *numberOfSwitches) {
*numberOfSwitches = 1;
*switches = reinterpret_cast<const uint8_t *>(&switchId);
return returnvalue::OK;
}
ReturnValue_t PlocSupervisorDummy::checkModeCommand(Mode_t commandedMode,
Submode_t commandedSubmode,
uint32_t *msToReachTheMode) {
if (commandedMode != MODE_OFF) {
PoolReadGuard pg(&enablePl);
if (pg.getReadResult() == returnvalue::OK) {
if (enablePl.plUseAllowed.isValid() and not enablePl.plUseAllowed.value) {
return NON_OP_STATE_OF_CHARGE;
}
}
}
return DeviceHandlerBase::checkModeCommand(commandedMode, commandedSubmode, msToReachTheMode);
}

View File

@ -1,6 +1,9 @@
#pragma once
#include <common/config/eive/objects.h>
#include <fsfw/devicehandlers/DeviceHandlerBase.h>
#include <mission/controller/controllerdefinitions/PowerCtrlDefinitions.h>
#include <mission/power/defs.h>
class PlocSupervisorDummy : public DeviceHandlerBase {
public:
@ -10,10 +13,13 @@ class PlocSupervisorDummy : public DeviceHandlerBase {
static const uint8_t SIMPLE_COMMAND_DATA = 1;
static const uint8_t PERIODIC_REPLY_DATA = 2;
PlocSupervisorDummy(object_id_t objectId, object_id_t comif, CookieIF *comCookie);
PlocSupervisorDummy(object_id_t objectId, object_id_t comif, CookieIF *comCookie,
PowerSwitchIF &pwrSwitcher);
virtual ~PlocSupervisorDummy();
protected:
const power::Switches switchId = power::Switches::PDU1_CH6_PLOC_12V;
void doStartUp() override;
void doShutDown() override;
ReturnValue_t buildNormalDeviceCommand(DeviceCommandId_t *id) override;
@ -27,4 +33,8 @@ class PlocSupervisorDummy : public DeviceHandlerBase {
uint32_t getTransitionDelayMs(Mode_t modeFrom, Mode_t modeTo) override;
ReturnValue_t initializeLocalDataPool(localpool::DataPool &localDataPoolMap,
LocalDataPoolManager &poolManager) override;
ReturnValue_t getSwitches(const uint8_t **switches, uint8_t *numberOfSwitches) override;
ReturnValue_t checkModeCommand(Mode_t commandedMode, Submode_t commandedSubmode,
uint32_t *msToReachTheMode) override;
pwrctrl::EnablePl enablePl = pwrctrl::EnablePl(objects::POWER_CONTROLLER);
};

View File

@ -0,0 +1,55 @@
#include "RadSensorDummy.h"
RadSensorDummy::RadSensorDummy(object_id_t objectId, object_id_t comif, CookieIF *comCookie)
: DeviceHandlerBase(objectId, comif, comCookie), sensorSet(this) {}
RadSensorDummy::~RadSensorDummy() {}
void RadSensorDummy::doStartUp() { setMode(MODE_ON); }
void RadSensorDummy::doShutDown() { setMode(MODE_OFF); }
ReturnValue_t RadSensorDummy::buildNormalDeviceCommand(DeviceCommandId_t *id) {
return NOTHING_TO_SEND;
}
ReturnValue_t RadSensorDummy::buildTransitionDeviceCommand(DeviceCommandId_t *id) {
return NOTHING_TO_SEND;
}
ReturnValue_t RadSensorDummy::buildCommandFromCommand(DeviceCommandId_t deviceCommand,
const uint8_t *commandData,
size_t commandDataLen) {
return returnvalue::OK;
}
ReturnValue_t RadSensorDummy::scanForReply(const uint8_t *start, size_t len,
DeviceCommandId_t *foundId, size_t *foundLen) {
return returnvalue::OK;
}
ReturnValue_t RadSensorDummy::interpretDeviceReply(DeviceCommandId_t id, const uint8_t *packet) {
return returnvalue::OK;
}
void RadSensorDummy::fillCommandAndReplyMap() {}
uint32_t RadSensorDummy::getTransitionDelayMs(Mode_t modeFrom, Mode_t modeTo) { return 500; }
ReturnValue_t RadSensorDummy::initializeLocalDataPool(localpool::DataPool &localDataPoolMap,
LocalDataPoolManager &poolManager) {
localDataPoolMap.emplace(radSens::TEMPERATURE_C, new PoolEntry<float>({0.0}));
localDataPoolMap.emplace(radSens::AIN0, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(radSens::AIN1, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(radSens::AIN4, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(radSens::AIN5, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(radSens::AIN6, new PoolEntry<uint16_t>({0}));
localDataPoolMap.emplace(radSens::AIN7, new PoolEntry<uint16_t>({0}));
poolManager.subscribeForRegularPeriodicPacket(
subdp::RegularHkPeriodicParams(sensorSet.getSid(), false, 20.0));
return returnvalue::OK;
return returnvalue::OK;
}
LocalPoolDataSetBase *RadSensorDummy::getDataSetHandle(sid_t sid) { return &sensorSet; }

35
dummies/RadSensorDummy.h Normal file
View File

@ -0,0 +1,35 @@
#pragma once
#include <fsfw/devicehandlers/DeviceHandlerBase.h>
#include "mission/payload/radSensorDefinitions.h"
class RadSensorDummy : public DeviceHandlerBase {
public:
static const DeviceCommandId_t SIMPLE_COMMAND = 1;
static const DeviceCommandId_t PERIODIC_REPLY = 2;
static const uint8_t SIMPLE_COMMAND_DATA = 1;
static const uint8_t PERIODIC_REPLY_DATA = 2;
RadSensorDummy(object_id_t objectId, object_id_t comif, CookieIF *comCookie);
virtual ~RadSensorDummy();
protected:
radSens::RadSensorDataset sensorSet;
void doStartUp() override;
void doShutDown() override;
ReturnValue_t buildNormalDeviceCommand(DeviceCommandId_t *id) override;
ReturnValue_t buildTransitionDeviceCommand(DeviceCommandId_t *id) override;
ReturnValue_t buildCommandFromCommand(DeviceCommandId_t deviceCommand, const uint8_t *commandData,
size_t commandDataLen) override;
ReturnValue_t scanForReply(const uint8_t *start, size_t len, DeviceCommandId_t *foundId,
size_t *foundLen) override;
ReturnValue_t interpretDeviceReply(DeviceCommandId_t id, const uint8_t *packet) override;
void fillCommandAndReplyMap() override;
uint32_t getTransitionDelayMs(Mode_t modeFrom, Mode_t modeTo) override;
ReturnValue_t initializeLocalDataPool(localpool::DataPool &localDataPoolMap,
LocalDataPoolManager &poolManager) override;
LocalPoolDataSetBase *getDataSetHandle(sid_t sid) override;
};

View File

@ -1,15 +1,26 @@
#include "RwDummy.h"
#include <mission/devices/devicedefinitions/rwHelpers.h>
#include <mission/acs/rwHelpers.h>
RwDummy::RwDummy(object_id_t objectId, object_id_t comif, CookieIF *comCookie)
: DeviceHandlerBase(objectId, comif, comCookie) {}
: DeviceHandlerBase(objectId, comif, comCookie),
statusSet(this),
lastResetStatusSet(this),
tmDataset(this),
rwSpeedActuationSet(*this) {}
RwDummy::~RwDummy() {}
void RwDummy::doStartUp() {}
void RwDummy::doStartUp() {
statusSet.setReportingEnabled(true);
setMode(MODE_ON);
}
void RwDummy::doShutDown() {}
void RwDummy::doShutDown() {
statusSet.setReportingEnabled(false);
setMode(MODE_OFF);
}
ReturnValue_t RwDummy::buildNormalDeviceCommand(DeviceCommandId_t *id) { return NOTHING_TO_SEND; }
@ -37,6 +48,9 @@ uint32_t RwDummy::getTransitionDelayMs(Mode_t modeFrom, Mode_t modeTo) { return
ReturnValue_t RwDummy::initializeLocalDataPool(localpool::DataPool &localDataPoolMap,
LocalDataPoolManager &poolManager) {
localDataPoolMap.emplace(rws::RW_SPEED, &rwSpeed);
localDataPoolMap.emplace(rws::RAMP_TIME, &rampTime);
localDataPoolMap.emplace(rws::TEMPERATURE_C, new PoolEntry<int32_t>({0}));
localDataPoolMap.emplace(rws::CURR_SPEED, new PoolEntry<int32_t>({0}));
@ -71,5 +85,29 @@ ReturnValue_t RwDummy::initializeLocalDataPool(localpool::DataPool &localDataPoo
localDataPoolMap.emplace(rws::SPI_BYTES_READ, new PoolEntry<uint32_t>({0}));
localDataPoolMap.emplace(rws::SPI_REG_OVERRUN_ERRORS, new PoolEntry<uint32_t>({0}));
localDataPoolMap.emplace(rws::SPI_TOTAL_ERRORS, new PoolEntry<uint32_t>({0}));
poolManager.subscribeForDiagPeriodicPacket(
subdp::DiagnosticsHkPeriodicParams(statusSet.getSid(), false, 12.0));
poolManager.subscribeForRegularPeriodicPacket(
subdp::RegularHkPeriodicParams(tmDataset.getSid(), false, 30.0));
poolManager.subscribeForRegularPeriodicPacket(
subdp::RegularHkPeriodicParams(lastResetStatusSet.getSid(), false, 30.0));
return returnvalue::OK;
}
LocalPoolDataSetBase *RwDummy::getDataSetHandle(sid_t sid) {
switch (sid.ownerSetId) {
case (rws::SetIds::STATUS_SET_ID): {
return &statusSet;
}
case (rws::SetIds::LAST_RESET_ID): {
return &lastResetStatusSet;
}
case (rws::SetIds::SPEED_CMD_SET): {
return &rwSpeedActuationSet;
}
case (rws::SetIds::TM_SET_ID): {
return &tmDataset;
}
}
return nullptr;
}

View File

@ -2,6 +2,7 @@
#define DUMMIES_RWDUMMY_H_
#include <fsfw/devicehandlers/DeviceHandlerBase.h>
#include <mission/acs/rwHelpers.h>
class RwDummy : public DeviceHandlerBase {
public:
@ -15,6 +16,14 @@ class RwDummy : public DeviceHandlerBase {
virtual ~RwDummy();
protected:
rws::StatusSet statusSet;
rws::LastResetSatus lastResetStatusSet;
rws::TmDataset tmDataset;
rws::RwSpeedActuationSet rwSpeedActuationSet;
PoolEntry<int32_t> rwSpeed = PoolEntry<int32_t>({0});
PoolEntry<uint16_t> rampTime = PoolEntry<uint16_t>({10});
void doStartUp() override;
void doShutDown() override;
ReturnValue_t buildNormalDeviceCommand(DeviceCommandId_t *id) override;
@ -28,6 +37,7 @@ class RwDummy : public DeviceHandlerBase {
uint32_t getTransitionDelayMs(Mode_t modeFrom, Mode_t modeTo) override;
ReturnValue_t initializeLocalDataPool(localpool::DataPool &localDataPoolMap,
LocalDataPoolManager &poolManager) override;
LocalPoolDataSetBase *getDataSetHandle(sid_t sid) override;
};
#endif /* DUMMIES_RWDUMMY_H_ */

View File

@ -1,15 +1,15 @@
#include "StarTrackerDummy.h"
#include <linux/devices/devicedefinitions/StarTrackerDefinitions.h>
#include <mission/acs/str/strHelpers.h>
StarTrackerDummy::StarTrackerDummy(object_id_t objectId, object_id_t comif, CookieIF *comCookie)
: DeviceHandlerBase(objectId, comif, comCookie) {}
StarTrackerDummy::~StarTrackerDummy() {}
void StarTrackerDummy::doStartUp() {}
void StarTrackerDummy::doStartUp() { setMode(MODE_ON); }
void StarTrackerDummy::doShutDown() {}
void StarTrackerDummy::doShutDown() { setMode(_MODE_POWER_DOWN); }
ReturnValue_t StarTrackerDummy::buildNormalDeviceCommand(DeviceCommandId_t *id) {
return NOTHING_TO_SEND;
@ -40,7 +40,7 @@ uint32_t StarTrackerDummy::getTransitionDelayMs(Mode_t modeFrom, Mode_t modeTo)
ReturnValue_t StarTrackerDummy::initializeLocalDataPool(localpool::DataPool &localDataPoolMap,
LocalDataPoolManager &poolManager) {
localDataPoolMap.emplace(startracker::MCU_TEMPERATURE, new PoolEntry<float>({0}));
localDataPoolMap.emplace(startracker::MCU_TEMPERATURE, new PoolEntry<float>({10.0}, true));
localDataPoolMap.emplace(startracker::TICKS_SOLUTION_SET, new PoolEntry<uint32_t>({0}));
localDataPoolMap.emplace(startracker::TIME_SOLUTION_SET, new PoolEntry<uint64_t>({0}));
@ -64,6 +64,7 @@ ReturnValue_t StarTrackerDummy::initializeLocalDataPool(localpool::DataPool &loc
localDataPoolMap.emplace(startracker::LISA_NR_CLOSE, new PoolEntry<uint8_t>({0}));
localDataPoolMap.emplace(startracker::TRUST_WORTHY, new PoolEntry<uint8_t>({0}));
localDataPoolMap.emplace(startracker::STABLE_COUNT, new PoolEntry<uint32_t>({0}));
localDataPoolMap.emplace(startracker::STR_MODE, new PoolEntry<uint8_t>({0}));
localDataPoolMap.emplace(startracker::SOLUTION_STRATEGY, new PoolEntry<uint8_t>({0}));
return returnvalue::OK;
}

View File

@ -5,7 +5,7 @@ SusDummy::SusDummy(object_id_t objectId, object_id_t comif, CookieIF *comCookie)
SusDummy::~SusDummy() {}
void SusDummy::doStartUp() { setMode(MODE_NORMAL); }
void SusDummy::doStartUp() { setMode(MODE_ON); }
void SusDummy::doShutDown() { setMode(MODE_OFF); }

View File

@ -2,7 +2,7 @@
#define DUMMIES_SUSDUMMY_H_
#include <fsfw/devicehandlers/DeviceHandlerBase.h>
#include <mission/devices/devicedefinitions/susMax1227Helpers.h>
#include <mission/acs/susMax1227Helpers.h>
class SusDummy : public DeviceHandlerBase {
public:

View File

@ -1,6 +1,6 @@
#include "SyrlinksDummy.h"
#include <mission/devices/devicedefinitions/SyrlinksDefinitions.h>
#include <mission/com/syrlinksDefs.h>
SyrlinksDummy::SyrlinksDummy(object_id_t objectId, object_id_t comif, CookieIF *comCookie)
: DeviceHandlerBase(objectId, comif, comCookie) {}
@ -40,7 +40,7 @@ uint32_t SyrlinksDummy::getTransitionDelayMs(Mode_t modeFrom, Mode_t modeTo) { r
ReturnValue_t SyrlinksDummy::initializeLocalDataPool(localpool::DataPool &localDataPoolMap,
LocalDataPoolManager &poolManager) {
localDataPoolMap.emplace(syrlinks::TEMP_BASEBAND_BOARD, new PoolEntry<float>({0}));
localDataPoolMap.emplace(syrlinks::TEMP_POWER_AMPLIFIER, new PoolEntry<float>({0}));
localDataPoolMap.emplace(syrlinks::TEMP_BASEBAND_BOARD, new PoolEntry<float>({10}, true));
localDataPoolMap.emplace(syrlinks::TEMP_POWER_AMPLIFIER, new PoolEntry<float>({10}, true));
return returnvalue::OK;
}

View File

@ -1,40 +1,149 @@
#include "TemperatureSensorInserter.h"
#include <fsfw/datapool/PoolReadGuard.h>
#include <objects/systemObjectList.h>
#include <cmath>
#include <cstdlib>
#include <utility>
TemperatureSensorInserter::TemperatureSensorInserter(object_id_t objectId,
Max31865DummyMap tempSensorDummies_,
Tmp1075DummyMap tempTmpSensorDummies_)
: SystemObject(objects::THERMAL_TEMP_INSERTER),
TemperatureSensorInserter::TemperatureSensorInserter(
object_id_t objectId, Max31865DummyMap tempSensorDummies_,
std::optional<Tmp1075DummyMap> tempTmpSensorDummies_)
: SystemObject(objectId),
max31865DummyMap(std::move(tempSensorDummies_)),
tmp1075DummyMap(std::move(tempTmpSensorDummies_)) {}
ReturnValue_t TemperatureSensorInserter::initialize() {
if (performTest) {
if (testCase == TestCase::COOL_SYRLINKS) {
}
}
testCase = TestCase::NONE;
return returnvalue::OK;
}
ReturnValue_t TemperatureSensorInserter::performOperation(uint8_t opCode) {
/*
ReturnValue_t result = max31865PlocHeatspreaderSet.read();
if (result != returnvalue::OK) {
sif::warning << "Failed to read temperature from MAX31865 dataset" << std::endl;
// TODO: deviceSensors
if (not tempsWereInitialized) {
for (auto& rtdDummy : max31865DummyMap) {
rtdDummy.second->setTemperature(10, true);
}
if (tmp1075DummyMap.has_value()) {
for (auto& tmpDummy : tmp1075DummyMap.value()) {
tmpDummy.second->setTemperature(10, true);
}
}
tempsWereInitialized = true;
}
max31865PlocHeatspreaderSet.rtdValue = value - 5;
max31865PlocHeatspreaderSet.temperatureCelcius = value;
if ((iteration % 100) < 20) {
max31865PlocHeatspreaderSet.setValidity(false, true);
} else {
max31865PlocHeatspreaderSet.setValidity(true, true);
switch (testCase) {
case (TestCase::NONE): {
break;
}
case (TestCase::COLD_SYRLINKS): {
// TODO: How do I insert this?
// Does not work on EM, where a real syrlinks device is connected.
if (cycles == 15) {
lp_var_t<float> tempSyrlinksBasebandBoard =
lp_var_t<float>(objects::SYRLINKS_HANDLER, syrlinks::TEMP_BASEBAND_BOARD);
PoolReadGuard pg(&tempSyrlinksBasebandBoard);
tempSyrlinksBasebandBoard.value = -50;
}
if (cycles == 30) {
lp_var_t<float> tempSyrlinksBasebandBoard =
lp_var_t<float>(objects::SYRLINKS_HANDLER, syrlinks::TEMP_BASEBAND_BOARD);
PoolReadGuard pg(&tempSyrlinksBasebandBoard);
tempSyrlinksBasebandBoard.value = 0;
}
break;
}
case (TestCase::COLD_HPA): {
if (cycles == 15) {
sif::debug << "Setting cold HPA temperature" << std::endl;
max31865DummyMap[objects::RTD_9_IC12_HPA]->setTemperature(-60, true);
}
if (cycles == 30) {
sif::debug << "Setting HPA temperature back to normal" << std::endl;
max31865DummyMap[objects::RTD_9_IC12_HPA]->setTemperature(0, true);
}
break;
}
case (TestCase::COLD_MGT): {
if (cycles == 15) {
sif::debug << "Setting cold MGT temperature" << std::endl;
max31865DummyMap[objects::RTD_15_IC18_IMTQ]->setTemperature(-60, true);
}
if (cycles == 30) {
sif::debug << "Setting MGT temperature back to normal" << std::endl;
max31865DummyMap[objects::RTD_15_IC18_IMTQ]->setTemperature(0, true);
}
break;
}
case (TestCase::COLD_STR):
case (TestCase::COLD_STR_CONSECUTIVE): {
if (cycles == 15) {
sif::debug << "Setting cold STR temperature" << std::endl;
max31865DummyMap[objects::RTD_4_IC7_STARTRACKER]->setTemperature(-40, true);
}
if (cycles == 30) {
sif::debug << "Setting STR temperature back to normal" << std::endl;
max31865DummyMap[objects::RTD_4_IC7_STARTRACKER]->setTemperature(0, true);
}
if (testCase == TestCase::COLD_STR_CONSECUTIVE) {
if (cycles == 45) {
sif::debug << "Setting cold STR temperature again" << std::endl;
max31865DummyMap[objects::RTD_4_IC7_STARTRACKER]->setTemperature(-40, true);
}
if (cycles == 60) {
sif::debug << "Setting STR temperature back to normal again" << std::endl;
max31865DummyMap[objects::RTD_4_IC7_STARTRACKER]->setTemperature(0, true);
}
}
break;
}
case (TestCase::COLD_PLOC_CONSECUTIVE): {
if (cycles == 15) {
sif::debug << "Setting cold PLOC temperature" << std::endl;
max31865DummyMap[objects::RTD_0_IC3_PLOC_HEATSPREADER]->setTemperature(-15, true);
}
if (cycles == 30) {
sif::debug << "Setting warmer PLOC temperature" << std::endl;
max31865DummyMap[objects::RTD_0_IC3_PLOC_HEATSPREADER]->setTemperature(0, true);
}
if (cycles == 45) {
sif::debug << "Setting cold PLOC temperature again" << std::endl;
max31865DummyMap[objects::RTD_0_IC3_PLOC_HEATSPREADER]->setTemperature(-15, true);
}
if (cycles == 60) {
sif::debug << "Setting warmer PLOC temperature again" << std::endl;
max31865DummyMap[objects::RTD_0_IC3_PLOC_HEATSPREADER]->setTemperature(0, true);
}
break;
}
case (TestCase::COLD_CAMERA): {
if (cycles == 15) {
sif::debug << "Setting cold CAM temperature" << std::endl;
max31865DummyMap[objects::RTD_2_IC5_4K_CAMERA]->setTemperature(-40, true);
}
if (cycles == 30) {
sif::debug << "Setting CAM temperature back to normal" << std::endl;
max31865DummyMap[objects::RTD_2_IC5_4K_CAMERA]->setTemperature(0, true);
}
break;
}
case (TestCase::COLD_PLOC_STAYS_COLD): {
if (cycles == 15) {
sif::debug << "Setting cold PLOC temperature" << std::endl;
max31865DummyMap[objects::RTD_0_IC3_PLOC_HEATSPREADER]->setTemperature(-40, true);
}
break;
}
case (TestCase::COLD_CAMERA_STAYS_COLD): {
if (cycles == 15) {
sif::debug << "Setting cold PLOC temperature" << std::endl;
max31865DummyMap[objects::RTD_2_IC5_4K_CAMERA]->setTemperature(-40, true);
}
break;
}
}
max31865PlocHeatspreaderSet.commit();
*/
cycles++;
return returnvalue::OK;
}
ReturnValue_t TemperatureSensorInserter::initializeAfterTaskCreation() { return returnvalue::OK; }

View File

@ -1,7 +1,8 @@
#pragma once
#include <fsfw/controller/ExtendedControllerBase.h>
#include <mission/devices/devicedefinitions/Max31865Definitions.h>
#include <mission/com/syrlinksDefs.h>
#include <mission/tcs/Max31865Definitions.h>
#include "Max31865Dummy.h"
#include "Tmp1075Dummy.h"
@ -11,19 +12,33 @@ class TemperatureSensorInserter : public ExecutableObjectIF, public SystemObject
using Max31865DummyMap = std::map<object_id_t, Max31865Dummy*>;
using Tmp1075DummyMap = std::map<object_id_t, Tmp1075Dummy*>;
explicit TemperatureSensorInserter(object_id_t objectId, Max31865DummyMap tempSensorDummies_,
Tmp1075DummyMap tempTmpSensorDummies_);
std::optional<Tmp1075DummyMap> tempTmpSensorDummies_);
ReturnValue_t initialize() override;
ReturnValue_t initializeAfterTaskCreation() override;
protected:
ReturnValue_t performOperation(uint8_t opCode) override;
private:
Max31865DummyMap max31865DummyMap;
Tmp1075DummyMap tmp1075DummyMap;
enum TestCase { NONE = 0, COOL_SYRLINKS = 1 };
std::optional<Tmp1075DummyMap> tmp1075DummyMap;
enum TestCase {
NONE = 0,
COLD_SYRLINKS = 1,
COLD_HPA = 2,
COLD_MGT = 3,
COLD_STR = 4,
COLD_STR_CONSECUTIVE = 5,
COLD_CAMERA = 6,
COLD_PLOC_CONSECUTIVE = 7,
COLD_PLOC_STAYS_COLD = 8,
COLD_CAMERA_STAYS_COLD = 9
};
int iteration = 0;
bool performTest = false;
uint32_t cycles = 0;
bool tempsWereInitialized = false;
TestCase testCase = TestCase::NONE;
// void noise();

View File

@ -1,36 +1,64 @@
#include "Tmp1075Dummy.h"
#include "mission/devices/devicedefinitions/Tmp1075Definitions.h"
#include <fsfw/datapool/PoolReadGuard.h>
#include <mission/tcs/Tmp1075Definitions.h>
using namespace returnvalue;
Tmp1075Dummy::Tmp1075Dummy(object_id_t objectId, object_id_t comif, CookieIF *comCookie)
: DeviceHandlerBase(objectId, comif, comCookie), set(this) {}
void Tmp1075Dummy::doStartUp() { setMode(MODE_NORMAL); }
void Tmp1075Dummy::doShutDown() { setMode(MODE_OFF); }
void Tmp1075Dummy::doStartUp() { setMode(MODE_ON); }
void Tmp1075Dummy::doShutDown() {
PoolReadGuard pg(&set);
set.setValidity(false, true);
setMode(MODE_OFF);
}
ReturnValue_t Tmp1075Dummy::buildNormalDeviceCommand(DeviceCommandId_t *id) {
return NOTHING_TO_SEND;
}
ReturnValue_t Tmp1075Dummy::buildTransitionDeviceCommand(DeviceCommandId_t *id) { return OK; }
ReturnValue_t Tmp1075Dummy::buildTransitionDeviceCommand(DeviceCommandId_t *id) {
return NOTHING_TO_SEND;
}
ReturnValue_t Tmp1075Dummy::buildCommandFromCommand(DeviceCommandId_t deviceCommand,
const uint8_t *commandData,
size_t commandDataLen) {
return 0;
return NOTHING_TO_SEND;
}
ReturnValue_t Tmp1075Dummy::scanForReply(const uint8_t *start, size_t len,
DeviceCommandId_t *foundId, size_t *foundLen) {
return 0;
}
ReturnValue_t Tmp1075Dummy::interpretDeviceReply(DeviceCommandId_t id, const uint8_t *packet) {
return 0;
}
void Tmp1075Dummy::setTemperature(float temperature, bool valid) {
PoolReadGuard pg(&set);
set.temperatureCelcius.value = temperature;
set.setValidity(valid, true);
}
void Tmp1075Dummy::fillCommandAndReplyMap() {}
uint32_t Tmp1075Dummy::getTransitionDelayMs(Mode_t modeFrom, Mode_t modeTo) { return 1000; }
ReturnValue_t Tmp1075Dummy::initializeLocalDataPool(localpool::DataPool &localDataPoolMap,
LocalDataPoolManager &poolManager) {
localDataPoolMap.emplace(TMP1075::TEMPERATURE_C_TMP1075, new PoolEntry<float>({0.0}));
localDataPoolMap.emplace(TMP1075::TEMPERATURE_C_TMP1075, new PoolEntry<float>({10.0}, true));
return OK;
}
ReturnValue_t Tmp1075Dummy::setHealth(HealthState health) {
if (health == FAULTY or health == PERMANENT_FAULTY) {
setMode(_MODE_SHUT_DOWN);
}
return DeviceHandlerBase::setHealth(health);
}
LocalPoolDataSetBase *Tmp1075Dummy::getDataSetHandle(sid_t sid) { return &set; }

View File

@ -1,12 +1,14 @@
#ifndef EIVE_OBSW_TMP1075DUMMY_H
#define EIVE_OBSW_TMP1075DUMMY_H
#include <mission/tcs/Tmp1075Definitions.h>
#include "fsfw/devicehandlers/DeviceHandlerBase.h"
#include "mission/devices/devicedefinitions/Tmp1075Definitions.h"
class Tmp1075Dummy : public DeviceHandlerBase {
public:
Tmp1075Dummy(object_id_t objectId, object_id_t comif, CookieIF *comCookie);
void setTemperature(float temperature, bool setValid);
private:
TMP1075::Tmp1075Dataset set;
@ -24,6 +26,7 @@ class Tmp1075Dummy : public DeviceHandlerBase {
uint32_t getTransitionDelayMs(Mode_t modeFrom, Mode_t modeTo) override;
ReturnValue_t initializeLocalDataPool(localpool::DataPool &localDataPoolMap,
LocalDataPoolManager &poolManager) override;
ReturnValue_t setHealth(HealthState health) override;
protected:
LocalPoolDataSetBase *getDataSetHandle(sid_t sid) override;

View File

@ -1,4 +1,4 @@
#include "helpers.h"
#include "helperFactory.h"
#include <dummies/AcuDummy.h>
#include <dummies/BpxDummy.h>
@ -18,32 +18,39 @@
#include <dummies/PlPcduDummy.h>
#include <dummies/PlocMpsocDummy.h>
#include <dummies/PlocSupervisorDummy.h>
#include <dummies/RadSensorDummy.h>
#include <dummies/RwDummy.h>
#include <dummies/SaDeploymentDummy.h>
#include <dummies/ScexDummy.h>
#include <dummies/StarTrackerDummy.h>
#include <dummies/SusDummy.h>
#include <dummies/SyrlinksDummy.h>
#include <fsfw/devicehandlers/HealthDevice.h>
#include <fsfw_hal/common/gpio/GpioIF.h>
#include <mission/power/gsDefs.h>
#include <mission/system/acs/ImtqAssembly.h>
#include <mission/system/acs/StrAssembly.h>
#include <mission/system/objects/CamSwitcher.h>
#include <mission/system/objects/ImtqAssembly.h>
#include <mission/system/objects/StrAssembly.h>
#include <mission/system/objects/TcsBoardAssembly.h>
#include <mission/system/tcs/TcsBoardAssembly.h>
#include "TemperatureSensorInserter.h"
#include "dummies/Max31865Dummy.h"
#include "dummies/SusDummy.h"
#include "dummies/Tmp1075Dummy.h"
#include "mission/core/GenericFactory.h"
#include "mission/devices/devicedefinitions/GomspaceDefinitions.h"
#include "mission/system/tree/acsModeTree.h"
#include "mission/system/tree/comModeTree.h"
#include "mission/system/tree/payloadModeTree.h"
#include "mission/system/tree/tcsModeTree.h"
#include "mission/genericFactory.h"
#include "mission/system/acs/acsModeTree.h"
#include "mission/system/com/comModeTree.h"
#include "mission/system/payloadModeTree.h"
#include "mission/system/tcs/tcsModeTree.h"
#include "mission/tcs/defs.h"
void dummy::createDummies(DummyCfg cfg, PowerSwitchIF& pwrSwitcher, GpioIF* gpioIF) {
void dummy::createDummies(DummyCfg cfg, PowerSwitchIF& pwrSwitcher, GpioIF* gpioIF,
bool enableHkSets) {
new ComIFDummy(objects::DUMMY_COM_IF);
auto* comCookieDummy = new ComCookieDummy();
new BpxDummy(objects::BPX_BATT_HANDLER, objects::DUMMY_COM_IF, comCookieDummy);
if (cfg.addBpxBattDummy) {
new BpxDummy(objects::BPX_BATT_HANDLER, objects::DUMMY_COM_IF, comCookieDummy);
}
if (cfg.addCoreCtrlCfg) {
new CoreControllerDummy(objects::CORE_CONTROLLER);
}
@ -56,13 +63,16 @@ void dummy::createDummies(DummyCfg cfg, PowerSwitchIF& pwrSwitcher, GpioIF* gpio
rws[1] = new RwDummy(objects::RW2, objects::DUMMY_COM_IF, comCookieDummy);
rws[2] = new RwDummy(objects::RW3, objects::DUMMY_COM_IF, comCookieDummy);
rws[3] = new RwDummy(objects::RW4, objects::DUMMY_COM_IF, comCookieDummy);
ObjectFactory::createRwAssy(pwrSwitcher, pcdu::Switches::PDU2_CH2_RW_5V, rws, rwIds);
ObjectFactory::createRwAssy(pwrSwitcher, power::Switches::PDU2_CH2_RW_5V, rws, rwIds);
new SaDeplDummy(objects::SOLAR_ARRAY_DEPL_HANDLER);
auto* strAssy = new StrAssembly(objects::STR_ASSY);
strAssy->connectModeTreeParent(satsystem::acs::ACS_SUBSYSTEM);
auto* strDummy =
new StarTrackerDummy(objects::STAR_TRACKER, objects::DUMMY_COM_IF, comCookieDummy);
strDummy->connectModeTreeParent(*strAssy);
if (cfg.addStrDummy) {
auto* strAssy = new StrAssembly(objects::STR_ASSY);
strAssy->connectModeTreeParent(satsystem::acs::ACS_SUBSYSTEM);
auto* strDummy =
new StarTrackerDummy(objects::STAR_TRACKER, objects::DUMMY_COM_IF, comCookieDummy);
strDummy->connectModeTreeParent(*strAssy);
}
if (cfg.addSyrlinksDummies) {
auto* syrlinksDummy =
new SyrlinksDummy(objects::SYRLINKS_HANDLER, objects::DUMMY_COM_IF, comCookieDummy);
@ -70,18 +80,22 @@ void dummy::createDummies(DummyCfg cfg, PowerSwitchIF& pwrSwitcher, GpioIF* gpio
}
auto* imtqAssy = new ImtqAssembly(objects::IMTQ_ASSY);
imtqAssy->connectModeTreeParent(satsystem::acs::ACS_SUBSYSTEM);
auto* imtqDummy = new ImtqDummy(objects::IMTQ_HANDLER, objects::DUMMY_COM_IF, comCookieDummy);
auto* imtqDummy = new ImtqDummy(objects::IMTQ_HANDLER, objects::DUMMY_COM_IF, comCookieDummy,
power::Switches::PDU1_CH3_MGT_5V, enableHkSets);
imtqDummy->enableThermalModule(ThermalStateCfg());
imtqDummy->setPowerSwitcher(&pwrSwitcher);
imtqDummy->connectModeTreeParent(*imtqAssy);
if (cfg.addPowerDummies) {
new AcuDummy(objects::ACU_HANDLER, objects::DUMMY_COM_IF, comCookieDummy);
if (cfg.addOnlyAcuDummy) {
new AcuDummy(objects::ACU_HANDLER, objects::DUMMY_COM_IF, comCookieDummy, enableHkSets);
} else if (cfg.addPowerDummies) {
new AcuDummy(objects::ACU_HANDLER, objects::DUMMY_COM_IF, comCookieDummy, enableHkSets);
new PduDummy(objects::PDU1_HANDLER, objects::DUMMY_COM_IF, comCookieDummy);
new PduDummy(objects::PDU2_HANDLER, objects::DUMMY_COM_IF, comCookieDummy);
new P60DockDummy(objects::P60DOCK_HANDLER, objects::DUMMY_COM_IF, comCookieDummy);
}
if (cfg.addAcsBoardDummies) {
std::array<DeviceHandlerBase*, 8> assemblyDhbs;
std::array<DeviceHandlerBase*, 8> assemblyDhbs{};
assemblyDhbs[0] =
new MgmLIS3MDLDummy(objects::MGM_0_LIS3_HANDLER, objects::DUMMY_COM_IF, comCookieDummy);
assemblyDhbs[1] =
@ -103,7 +117,7 @@ void dummy::createDummies(DummyCfg cfg, PowerSwitchIF& pwrSwitcher, GpioIF* gpio
}
if (cfg.addSusDummies) {
std::array<DeviceHandlerBase*, 12> suses;
std::array<DeviceHandlerBase*, 12> suses{};
suses[0] =
new SusDummy(objects::SUS_0_N_LOC_XFYFZM_PT_XF, objects::DUMMY_COM_IF, comCookieDummy);
suses[1] =
@ -182,47 +196,74 @@ void dummy::createDummies(DummyCfg cfg, PowerSwitchIF& pwrSwitcher, GpioIF* gpio
objects::RTD_15_IC18_IMTQ,
new Max31865Dummy(objects::RTD_15_IC18_IMTQ, objects::DUMMY_COM_IF, comCookieDummy));
std::map<object_id_t, Tmp1075Dummy*> tmpSensorDummies;
tmpSensorDummies.emplace(
objects::TMP1075_HANDLER_TCS_0,
new Tmp1075Dummy(objects::TMP1075_HANDLER_TCS_0, objects::DUMMY_COM_IF, comCookieDummy));
tmpSensorDummies.emplace(
objects::TMP1075_HANDLER_TCS_1,
new Tmp1075Dummy(objects::TMP1075_HANDLER_TCS_1, objects::DUMMY_COM_IF, comCookieDummy));
tmpSensorDummies.emplace(
objects::TMP1075_HANDLER_PLPCDU_0,
new Tmp1075Dummy(objects::TMP1075_HANDLER_PLPCDU_0, objects::DUMMY_COM_IF, comCookieDummy));
tmpSensorDummies.emplace(
objects::TMP1075_HANDLER_PLPCDU_1,
new Tmp1075Dummy(objects::TMP1075_HANDLER_PLPCDU_1, objects::DUMMY_COM_IF, comCookieDummy));
tmpSensorDummies.emplace(
objects::TMP1075_HANDLER_IF_BOARD,
new Tmp1075Dummy(objects::TMP1075_HANDLER_IF_BOARD, objects::DUMMY_COM_IF, comCookieDummy));
std::optional<TemperatureSensorInserter::Tmp1075DummyMap> tmpSensorDummies;
if (cfg.addTmpDummies) {
TemperatureSensorInserter::Tmp1075DummyMap tmpDummyMap;
if (cfg.tmp1075Cfg.addTcsBrd0) {
tmpDummyMap.emplace(objects::TMP1075_HANDLER_TCS_0,
new Tmp1075Dummy(objects::TMP1075_HANDLER_TCS_0, objects::DUMMY_COM_IF,
comCookieDummy));
}
if (cfg.tmp1075Cfg.addTcsBrd1) {
tmpDummyMap.emplace(objects::TMP1075_HANDLER_TCS_1,
new Tmp1075Dummy(objects::TMP1075_HANDLER_TCS_1, objects::DUMMY_COM_IF,
comCookieDummy));
}
if (cfg.tmp1075Cfg.addPlPcdu0) {
tmpDummyMap.emplace(objects::TMP1075_HANDLER_PLPCDU_0,
new Tmp1075Dummy(objects::TMP1075_HANDLER_PLPCDU_0,
objects::DUMMY_COM_IF, comCookieDummy));
}
if (cfg.tmp1075Cfg.addPlPcdu1) {
tmpDummyMap.emplace(objects::TMP1075_HANDLER_PLPCDU_1,
new Tmp1075Dummy(objects::TMP1075_HANDLER_PLPCDU_1,
objects::DUMMY_COM_IF, comCookieDummy));
}
if (cfg.tmp1075Cfg.addIfBrd) {
tmpDummyMap.emplace(objects::TMP1075_HANDLER_IF_BOARD,
new Tmp1075Dummy(objects::TMP1075_HANDLER_IF_BOARD,
objects::DUMMY_COM_IF, comCookieDummy));
}
tmpSensorDummies = std::move(tmpDummyMap);
}
new TemperatureSensorInserter(objects::THERMAL_TEMP_INSERTER, rtdSensorDummies,
tmpSensorDummies);
TcsBoardAssembly* tcsBoardAssy = ObjectFactory::createTcsBoardAssy(pwrSwitcher);
TcsBoardAssembly* tcsBoardAssy =
ObjectFactory::createTcsBoardAssy(pwrSwitcher, tcs::TCS_BOARD_SHORTLY_UNAVAILABLE);
for (auto& rtd : rtdSensorDummies) {
rtd.second->connectModeTreeParent(*tcsBoardAssy);
}
for (auto& tmp : tmpSensorDummies) {
tmp.second->connectModeTreeParent(satsystem::tcs::SUBSYSTEM);
if (tmpSensorDummies.has_value()) {
for (auto& tmp : tmpSensorDummies.value()) {
tmp.second->connectModeTreeParent(satsystem::tcs::SUBSYSTEM);
}
}
}
auto* camSwitcher =
new CamSwitcher(objects::CAM_SWITCHER, pwrSwitcher, pcdu::Switches::PDU2_CH8_PAYLOAD_CAMERA);
camSwitcher->connectModeTreeParent(satsystem::payload::SUBSYSTEM);
auto* scexDummy = new ScexDummy(objects::SCEX, objects::DUMMY_COM_IF, comCookieDummy);
scexDummy->connectModeTreeParent(satsystem::payload::SUBSYSTEM);
auto* plPcduDummy =
new PlPcduDummy(objects::PLPCDU_HANDLER, objects::DUMMY_COM_IF, comCookieDummy);
plPcduDummy->connectModeTreeParent(satsystem::payload::SUBSYSTEM);
if (cfg.addCamSwitcherDummy) {
auto* camSwitcher = new CamSwitcher(objects::CAM_SWITCHER, pwrSwitcher,
power::Switches::PDU2_CH8_PAYLOAD_CAMERA);
camSwitcher->connectModeTreeParent(satsystem::payload::SUBSYSTEM);
}
if (cfg.addScexDummy) {
auto* scexDummy = new ScexDummy(objects::SCEX, objects::DUMMY_COM_IF, comCookieDummy);
scexDummy->connectModeTreeParent(satsystem::payload::SUBSYSTEM);
}
if (cfg.addPlPcduDummy) {
auto* plPcduDummy =
new PlPcduDummy(objects::PLPCDU_HANDLER, objects::DUMMY_COM_IF, comCookieDummy);
plPcduDummy->connectModeTreeParent(satsystem::payload::SUBSYSTEM);
}
if (cfg.addPlocDummies) {
auto* plocMpsocDummy =
new PlocMpsocDummy(objects::PLOC_MPSOC_HANDLER, objects::DUMMY_COM_IF, comCookieDummy);
plocMpsocDummy->connectModeTreeParent(satsystem::payload::SUBSYSTEM);
auto* plocSupervisorDummy = new PlocSupervisorDummy(objects::PLOC_SUPERVISOR_HANDLER,
objects::DUMMY_COM_IF, comCookieDummy);
auto* plocSupervisorDummy = new PlocSupervisorDummy(
objects::PLOC_SUPERVISOR_HANDLER, objects::DUMMY_COM_IF, comCookieDummy, pwrSwitcher);
plocSupervisorDummy->connectModeTreeParent(satsystem::payload::SUBSYSTEM);
}
if (cfg.addRadSensorDummy) {
auto* radSensorDummy =
new RadSensorDummy(objects::RAD_SENSOR, objects::DUMMY_COM_IF, comCookieDummy);
radSensorDummy->connectModeTreeParent(satsystem::payload::SUBSYSTEM);
}
}

41
dummies/helperFactory.h Normal file
View File

@ -0,0 +1,41 @@
#pragma once
#include <fsfw/power/PowerSwitchIF.h>
class GpioIF;
namespace dummy {
struct Tmp1075Cfg {
bool addTcsBrd0 = true;
bool addTcsBrd1 = true;
bool addPlPcdu0 = true;
bool addPlPcdu1 = true;
bool addIfBrd = true;
};
// Default values targeted towards EM.
struct DummyCfg {
bool addCoreCtrlCfg = true;
// Special variant because the ACU broke. Overrides addPowerDummies, only ACU dummy will be added.
bool addOnlyAcuDummy = false;
bool addPowerDummies = true;
bool addBpxBattDummy = true;
bool addSyrlinksDummies = true;
bool addAcsBoardDummies = true;
bool addSusDummies = true;
bool addTempSensorDummies = true;
bool addRtdComIFDummy = true;
bool addPlocDummies = true;
bool addStrDummy = true;
bool addTmpDummies = true;
bool addRadSensorDummy = true;
bool addPlPcduDummy = false;
Tmp1075Cfg tmp1075Cfg;
bool addCamSwitcherDummy = false;
bool addScexDummy = false;
};
void createDummies(DummyCfg cfg, PowerSwitchIF& pwrSwitch, GpioIF* gpioIF, bool enableHkSets);
} // namespace dummy

View File

@ -1,22 +0,0 @@
#pragma once
#include <fsfw/power/PowerSwitchIF.h>
class GpioIF;
namespace dummy {
struct DummyCfg {
bool addCoreCtrlCfg = true;
bool addPowerDummies = true;
bool addSyrlinksDummies = true;
bool addAcsBoardDummies = true;
bool addSusDummies = true;
bool addTempSensorDummies = true;
bool addRtdComIFDummy = true;
bool addPlocDummies = true;
};
void createDummies(DummyCfg cfg, PowerSwitchIF& pwrSwitch, GpioIF* gpioIF);
} // namespace dummy

2
fsfw

Submodule fsfw updated: 227524a21d...b28174db24

View File

@ -86,195 +86,233 @@ Event ID (dec); Event ID (hex); Name; Severity; Description; File Path
10802;0x2a32;SERIALIZATION_ERROR;LOW;No description;fsfw/src/fsfw/cfdp/handler/defs.h
10803;0x2a33;FILESTORE_ERROR;LOW;No description;fsfw/src/fsfw/cfdp/handler/defs.h
10804;0x2a34;FILENAME_TOO_LARGE_ERROR;LOW;P1: Transaction step ID, P2: 0 for source file name, 1 for dest file name;fsfw/src/fsfw/cfdp/handler/defs.h
11200;0x2bc0;SAFE_RATE_VIOLATION;MEDIUM;No description;mission/acsDefs.h
11201;0x2bc1;SAFE_RATE_RECOVERY;MEDIUM;No description;mission/acsDefs.h
11202;0x2bc2;MULTIPLE_RW_INVALID;HIGH;No description;mission/acsDefs.h
11203;0x2bc3;MEKF_INVALID_INFO;INFO;No description;mission/acsDefs.h
11204;0x2bc4;MEKF_INVALID_MODE_VIOLATION;HIGH;No description;mission/acsDefs.h
11205;0x2bc5;SAFE_MODE_CONTROLLER_FAILURE;HIGH;No description;mission/acsDefs.h
11300;0x2c24;SWITCH_CMD_SENT;INFO;Indicates that a FSFW object requested setting a switch P1: 1 if on was requested, 0 for off | P2: Switch Index;mission/devices/devicedefinitions/powerDefinitions.h
11301;0x2c25;SWITCH_HAS_CHANGED;INFO;Indicated that a switch state has changed P1: New switch state, 1 for on, 0 for off | P2: Switch Index;mission/devices/devicedefinitions/powerDefinitions.h
11302;0x2c26;SWITCHING_Q7S_DENIED;MEDIUM;No description;mission/devices/devicedefinitions/powerDefinitions.h
11303;0x2c27;FDIR_REACTION_IGNORED;MEDIUM;No description;mission/devices/devicedefinitions/powerDefinitions.h
11400;0x2c88;GPIO_PULL_HIGH_FAILED;LOW;No description;mission/devices/HeaterHandler.h
11401;0x2c89;GPIO_PULL_LOW_FAILED;LOW;No description;mission/devices/HeaterHandler.h
11402;0x2c8a;HEATER_WENT_ON;INFO;No description;mission/devices/HeaterHandler.h
11403;0x2c8b;HEATER_WENT_OFF;INFO;No description;mission/devices/HeaterHandler.h
11404;0x2c8c;SWITCH_ALREADY_ON;LOW;No description;mission/devices/HeaterHandler.h
11405;0x2c8d;SWITCH_ALREADY_OFF;LOW;No description;mission/devices/HeaterHandler.h
11406;0x2c8e;MAIN_SWITCH_TIMEOUT;MEDIUM;No description;mission/devices/HeaterHandler.h
11407;0x2c8f;FAULTY_HEATER_WAS_ON;LOW;No description;mission/devices/HeaterHandler.h
11500;0x2cec;BURN_PHASE_START;INFO;P1: Burn duration in milliseconds, P2: Dry run flag;mission/devices/SolarArrayDeploymentHandler.h
11501;0x2ced;BURN_PHASE_DONE;INFO;P1: Burn duration in milliseconds, P2: Dry run flag;mission/devices/SolarArrayDeploymentHandler.h
11502;0x2cee;MAIN_SWITCH_ON_TIMEOUT;LOW;No description;mission/devices/SolarArrayDeploymentHandler.h
11503;0x2cef;MAIN_SWITCH_OFF_TIMEOUT;LOW;No description;mission/devices/SolarArrayDeploymentHandler.h
11504;0x2cf0;DEPL_SA1_GPIO_SWTICH_ON_FAILED;HIGH;No description;mission/devices/SolarArrayDeploymentHandler.h
11505;0x2cf1;DEPL_SA2_GPIO_SWTICH_ON_FAILED;HIGH;No description;mission/devices/SolarArrayDeploymentHandler.h
11506;0x2cf2;DEPL_SA1_GPIO_SWTICH_OFF_FAILED;HIGH;No description;mission/devices/SolarArrayDeploymentHandler.h
11507;0x2cf3;DEPL_SA2_GPIO_SWTICH_OFF_FAILED;HIGH;No description;mission/devices/SolarArrayDeploymentHandler.h
11508;0x2cf4;AUTONOMOUS_DEPLOYMENT_COMPLETED;INFO;No description;mission/devices/SolarArrayDeploymentHandler.h
11601;0x2d51;MEMORY_READ_RPT_CRC_FAILURE;LOW;PLOC crc failure in telemetry packet;linux/devices/ploc/PlocMPSoCHandler.h
11602;0x2d52;ACK_FAILURE;LOW;PLOC receive acknowledgment failure report P1: Command Id which leads the acknowledgment failure report P2: The status field inserted by the MPSoC into the data field;linux/devices/ploc/PlocMPSoCHandler.h
11603;0x2d53;EXE_FAILURE;LOW;PLOC receive execution failure report P1: Command Id which leads the execution failure report P2: The status field inserted by the MPSoC into the data field;linux/devices/ploc/PlocMPSoCHandler.h
11604;0x2d54;MPSOC_HANDLER_CRC_FAILURE;LOW;PLOC reply has invalid crc;linux/devices/ploc/PlocMPSoCHandler.h
11605;0x2d55;MPSOC_HANDLER_SEQUENCE_COUNT_MISMATCH;LOW;Packet sequence count in received space packet does not match expected count P1: Expected sequence count P2: Received sequence count;linux/devices/ploc/PlocMPSoCHandler.h
11606;0x2d56;MPSOC_SHUTDOWN_FAILED;HIGH;Supervisor fails to shutdown MPSoC. Requires to power off the PLOC and thus also to shutdown the supervisor.;linux/devices/ploc/PlocMPSoCHandler.h
11701;0x2db5;SELF_TEST_I2C_FAILURE;LOW;Get self test result returns I2C failure P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA;mission/devices/ImtqHandler.h
11702;0x2db6;SELF_TEST_SPI_FAILURE;LOW;Get self test result returns SPI failure. This concerns the MTM connectivity. P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA;mission/devices/ImtqHandler.h
11703;0x2db7;SELF_TEST_ADC_FAILURE;LOW;Get self test result returns failure in measurement of current and temperature. P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA;mission/devices/ImtqHandler.h
11704;0x2db8;SELF_TEST_PWM_FAILURE;LOW;Get self test result returns PWM failure which concerns the coil actuation. P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA;mission/devices/ImtqHandler.h
11705;0x2db9;SELF_TEST_TC_FAILURE;LOW;Get self test result returns TC failure (system failure) P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA;mission/devices/ImtqHandler.h
11706;0x2dba;SELF_TEST_MTM_RANGE_FAILURE;LOW;Get self test result returns failure that MTM values were outside of the expected range. P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA;mission/devices/ImtqHandler.h
11707;0x2dbb;SELF_TEST_COIL_CURRENT_FAILURE;LOW;Get self test result returns failure indicating that the coil current was outside of the expected range P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA;mission/devices/ImtqHandler.h
11708;0x2dbc;INVALID_ERROR_BYTE;LOW;Received invalid error byte. This indicates an error of the communication link between IMTQ and OBC.;mission/devices/ImtqHandler.h
11801;0x2e19;ERROR_STATE;HIGH;Reaction wheel signals an error state;mission/devices/devicedefinitions/rwHelpers.h
11802;0x2e1a;RESET_OCCURED;LOW;No description;mission/devices/devicedefinitions/rwHelpers.h
11901;0x2e7d;BOOTING_FIRMWARE_FAILED_EVENT;LOW;Failed to boot firmware;linux/devices/startracker/StarTrackerHandler.h
11902;0x2e7e;BOOTING_BOOTLOADER_FAILED_EVENT;LOW;Failed to boot star tracker into bootloader mode;linux/devices/startracker/StarTrackerHandler.h
12001;0x2ee1;SUPV_MEMORY_READ_RPT_CRC_FAILURE;LOW;PLOC supervisor crc failure in telemetry packet;linux/devices/ploc/PlocSupervisorHandler.h
12002;0x2ee2;SUPV_UNKNOWN_TM;LOW;Unhandled event. P1: APID, P2: Service ID;linux/devices/ploc/PlocSupervisorHandler.h
12003;0x2ee3;SUPV_UNINIMPLEMENTED_TM;LOW;No description;linux/devices/ploc/PlocSupervisorHandler.h
12004;0x2ee4;SUPV_ACK_FAILURE;LOW;PLOC supervisor received acknowledgment failure report;linux/devices/ploc/PlocSupervisorHandler.h
12005;0x2ee5;SUPV_EXE_FAILURE;LOW;PLOC received execution failure report P1: ID of command for which the execution failed P2: Status code sent by the supervisor handler;linux/devices/ploc/PlocSupervisorHandler.h
12006;0x2ee6;SUPV_CRC_FAILURE_EVENT;LOW;PLOC supervisor reply has invalid crc;linux/devices/ploc/PlocSupervisorHandler.h
12007;0x2ee7;SUPV_HELPER_EXECUTING;LOW;Supervisor helper currently executing a command;linux/devices/ploc/PlocSupervisorHandler.h
12008;0x2ee8;SUPV_MPSOC_SHUTDOWN_BUILD_FAILED;LOW;Failed to build the command to shutdown the MPSoC;linux/devices/ploc/PlocSupervisorHandler.h
10805;0x2a35;HANDLING_CFDP_REQUEST_FAILED;LOW;CFDP request handling failed. P2: Returncode.;fsfw/src/fsfw/cfdp/handler/defs.h
11200;0x2bc0;SAFE_RATE_VIOLATION;MEDIUM;The limits for the rotation in safe mode were violated.;mission/acs/defs.h
11201;0x2bc1;SAFE_RATE_RECOVERY;MEDIUM;The system has recovered from a safe rate rotation violation.;mission/acs/defs.h
11202;0x2bc2;MULTIPLE_RW_INVALID;HIGH;Multiple RWs are invalid, uncommandable and therefore higher ACS modes cannot be maintained.;mission/acs/defs.h
11203;0x2bc3;MEKF_INVALID_INFO;INFO;MEKF was not able to compute a solution. P1: MEKF state on exit;mission/acs/defs.h
11204;0x2bc4;MEKF_RECOVERY;INFO;MEKF is able to compute a solution again.;mission/acs/defs.h
11205;0x2bc5;MEKF_AUTOMATIC_RESET;INFO;MEKF performed an automatic reset after detection of nonfinite values.;mission/acs/defs.h
11206;0x2bc6;MEKF_INVALID_MODE_VIOLATION;HIGH;MEKF was not able to compute a solution during any pointing ACS mode for a prolonged time.;mission/acs/defs.h
11207;0x2bc7;SAFE_MODE_CONTROLLER_FAILURE;HIGH;The ACS safe mode controller was not able to compute a solution and has failed. P1: Missing information about magnetic field, P2: Missing information about rotational rate;mission/acs/defs.h
11208;0x2bc8;TLE_TOO_OLD;INFO;The TLE for the SGP4 Propagator has become too old.;mission/acs/defs.h
11300;0x2c24;SWITCH_CMD_SENT;INFO;Indicates that a FSFW object requested setting a switch P1: 1 if on was requested, 0 for off | P2: Switch Index;mission/power/defs.h
11301;0x2c25;SWITCH_HAS_CHANGED;INFO;Indicated that a switch state has changed P1: New switch state, 1 for on, 0 for off | P2: Switch Index;mission/power/defs.h
11302;0x2c26;SWITCHING_Q7S_DENIED;MEDIUM;No description;mission/power/defs.h
11303;0x2c27;FDIR_REACTION_IGNORED;MEDIUM;No description;mission/power/defs.h
11304;0x2c28;DATASET_READ_FAILED;INFO;The dataset read for the inputs of the Power Controller has failed.;mission/power/defs.h
11305;0x2c29;VOLTAGE_OUT_OF_BOUNDS;HIGH;No description;mission/power/defs.h
11306;0x2c2a;TIMEDELTA_OUT_OF_BOUNDS;LOW;Time difference for Coulomb Counter was too large. P1: time in s * 10;mission/power/defs.h
11307;0x2c2b;POWER_LEVEL_LOW;HIGH;The State of Charge is below the limit for payload use. Setting Payload to faulty.;mission/power/defs.h
11308;0x2c2c;POWER_LEVEL_CRITICAL;HIGH;The State of Charge is below the limit for higher modes. Setting Reaction Wheels to faulty.;mission/power/defs.h
11400;0x2c88;GPIO_PULL_HIGH_FAILED;LOW;No description;mission/tcs/HeaterHandler.h
11401;0x2c89;GPIO_PULL_LOW_FAILED;LOW;No description;mission/tcs/HeaterHandler.h
11402;0x2c8a;HEATER_WENT_ON;INFO;No description;mission/tcs/HeaterHandler.h
11403;0x2c8b;HEATER_WENT_OFF;INFO;No description;mission/tcs/HeaterHandler.h
11404;0x2c8c;SWITCH_ALREADY_ON;INFO;No description;mission/tcs/HeaterHandler.h
11405;0x2c8d;SWITCH_ALREADY_OFF;INFO;No description;mission/tcs/HeaterHandler.h
11406;0x2c8e;MAIN_SWITCH_TIMEOUT;MEDIUM;No description;mission/tcs/HeaterHandler.h
11407;0x2c8f;FAULTY_HEATER_WAS_ON;LOW;No description;mission/tcs/HeaterHandler.h
11500;0x2cec;BURN_PHASE_START;INFO;P1: Burn duration in milliseconds, P2: Dry run flag;mission/SolarArrayDeploymentHandler.h
11501;0x2ced;BURN_PHASE_DONE;INFO;P1: Burn duration in milliseconds, P2: Dry run flag;mission/SolarArrayDeploymentHandler.h
11502;0x2cee;MAIN_SWITCH_ON_TIMEOUT;LOW;No description;mission/SolarArrayDeploymentHandler.h
11503;0x2cef;MAIN_SWITCH_OFF_TIMEOUT;LOW;No description;mission/SolarArrayDeploymentHandler.h
11504;0x2cf0;DEPL_SA1_GPIO_SWTICH_ON_FAILED;HIGH;No description;mission/SolarArrayDeploymentHandler.h
11505;0x2cf1;DEPL_SA2_GPIO_SWTICH_ON_FAILED;HIGH;No description;mission/SolarArrayDeploymentHandler.h
11506;0x2cf2;DEPL_SA1_GPIO_SWTICH_OFF_FAILED;HIGH;No description;mission/SolarArrayDeploymentHandler.h
11507;0x2cf3;DEPL_SA2_GPIO_SWTICH_OFF_FAILED;HIGH;No description;mission/SolarArrayDeploymentHandler.h
11508;0x2cf4;AUTONOMOUS_DEPLOYMENT_COMPLETED;INFO;No description;mission/SolarArrayDeploymentHandler.h
11601;0x2d51;MEMORY_READ_RPT_CRC_FAILURE;LOW;PLOC crc failure in telemetry packet;linux/payload/PlocMpsocHandler.h
11602;0x2d52;ACK_FAILURE;LOW;PLOC receive acknowledgment failure report P1: Command Id which leads the acknowledgment failure report P2: The status field inserted by the MPSoC into the data field;linux/payload/PlocMpsocHandler.h
11603;0x2d53;EXE_FAILURE;LOW;PLOC receive execution failure report P1: Command Id which leads the execution failure report P2: The status field inserted by the MPSoC into the data field;linux/payload/PlocMpsocHandler.h
11604;0x2d54;MPSOC_HANDLER_CRC_FAILURE;LOW;PLOC reply has invalid crc;linux/payload/PlocMpsocHandler.h
11605;0x2d55;MPSOC_HANDLER_SEQUENCE_COUNT_MISMATCH;LOW;Packet sequence count in received space packet does not match expected count P1: Expected sequence count P2: Received sequence count;linux/payload/PlocMpsocHandler.h
11606;0x2d56;MPSOC_SHUTDOWN_FAILED;HIGH;Supervisor fails to shutdown MPSoC. Requires to power off the PLOC and thus also to shutdown the supervisor.;linux/payload/PlocMpsocHandler.h
11607;0x2d57;SUPV_NOT_ON;LOW;SUPV not on for boot or shutdown process. P1: 0 for OFF transition, 1 for ON transition.;linux/payload/PlocMpsocHandler.h
11608;0x2d58;SUPV_REPLY_TIMEOUT;LOW;No description;linux/payload/PlocMpsocHandler.h
11701;0x2db5;SELF_TEST_I2C_FAILURE;LOW;Get self test result returns I2C failure P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA;mission/acs/ImtqHandler.h
11702;0x2db6;SELF_TEST_SPI_FAILURE;LOW;Get self test result returns SPI failure. This concerns the MTM connectivity. P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA;mission/acs/ImtqHandler.h
11703;0x2db7;SELF_TEST_ADC_FAILURE;LOW;Get self test result returns failure in measurement of current and temperature. P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA;mission/acs/ImtqHandler.h
11704;0x2db8;SELF_TEST_PWM_FAILURE;LOW;Get self test result returns PWM failure which concerns the coil actuation. P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA;mission/acs/ImtqHandler.h
11705;0x2db9;SELF_TEST_TC_FAILURE;LOW;Get self test result returns TC failure (system failure) P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA;mission/acs/ImtqHandler.h
11706;0x2dba;SELF_TEST_MTM_RANGE_FAILURE;LOW;Get self test result returns failure that MTM values were outside of the expected range. P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA;mission/acs/ImtqHandler.h
11707;0x2dbb;SELF_TEST_COIL_CURRENT_FAILURE;LOW;Get self test result returns failure indicating that the coil current was outside of the expected range P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA;mission/acs/ImtqHandler.h
11708;0x2dbc;INVALID_ERROR_BYTE;LOW;Received invalid error byte. This indicates an error of the communication link between IMTQ and OBC.;mission/acs/ImtqHandler.h
11801;0x2e19;ERROR_STATE;HIGH;Reaction wheel signals an error state;mission/acs/rwHelpers.h
11802;0x2e1a;RESET_OCCURED;LOW;No description;mission/acs/rwHelpers.h
11901;0x2e7d;BOOTING_FIRMWARE_FAILED_EVENT;LOW;Failed to boot firmware;mission/acs/str/StarTrackerHandler.h
11902;0x2e7e;BOOTING_BOOTLOADER_FAILED_EVENT;LOW;Failed to boot star tracker into bootloader mode;mission/acs/str/StarTrackerHandler.h
11903;0x2e7f;COM_ERROR_REPLY_RECEIVED;LOW;Received COM error. P1: Communication Error ID (datasheet p32);mission/acs/str/StarTrackerHandler.h
12001;0x2ee1;SUPV_MEMORY_READ_RPT_CRC_FAILURE;LOW;PLOC supervisor crc failure in telemetry packet;linux/payload/plocSupvDefs.h
12002;0x2ee2;SUPV_UNKNOWN_TM;LOW;Unhandled event. P1: APID, P2: Service ID;linux/payload/plocSupvDefs.h
12003;0x2ee3;SUPV_UNINIMPLEMENTED_TM;LOW;No description;linux/payload/plocSupvDefs.h
12004;0x2ee4;SUPV_ACK_FAILURE;LOW;PLOC supervisor received acknowledgment failure report;linux/payload/plocSupvDefs.h
12005;0x2ee5;SUPV_EXE_FAILURE;LOW;PLOC received execution failure report P1: ID of command for which the execution failed P2: Status code sent by the supervisor handler;linux/payload/plocSupvDefs.h
12006;0x2ee6;SUPV_CRC_FAILURE_EVENT;LOW;PLOC supervisor reply has invalid crc;linux/payload/plocSupvDefs.h
12007;0x2ee7;SUPV_HELPER_EXECUTING;LOW;Supervisor helper currently executing a command;linux/payload/plocSupvDefs.h
12008;0x2ee8;SUPV_MPSOC_SHUTDOWN_BUILD_FAILED;LOW;Failed to build the command to shutdown the MPSoC;linux/payload/plocSupvDefs.h
12009;0x2ee9;SUPV_ACK_UNKNOWN_COMMAND;LOW;Received ACK, but no related command is unknown or has not been sent by this software instance. P1: Module APID. P2: Service ID.;linux/payload/plocSupvDefs.h
12010;0x2eea;SUPV_EXE_ACK_UNKNOWN_COMMAND;LOW;Received ACK EXE, but no related command is unknown or has not been sent by this software instance. P1: Module APID. P2: Service ID.;linux/payload/plocSupvDefs.h
12100;0x2f44;SANITIZATION_FAILED;LOW;No description;bsp_q7s/fs/SdCardManager.h
12101;0x2f45;MOUNTED_SD_CARD;INFO;No description;bsp_q7s/fs/SdCardManager.h
12300;0x300c;SEND_MRAM_DUMP_FAILED;LOW;Failed to send mram dump command to supervisor handler P1: Return value of commandAction function P2: Start address of MRAM to dump with this command;linux/devices/ploc/PlocMemoryDumper.h
12301;0x300d;MRAM_DUMP_FAILED;LOW;Received completion failure report form PLOC supervisor handler P1: MRAM start address of failing dump command;linux/devices/ploc/PlocMemoryDumper.h
12302;0x300e;MRAM_DUMP_FINISHED;LOW;MRAM dump finished successfully;linux/devices/ploc/PlocMemoryDumper.h
12401;0x3071;INVALID_TC_FRAME;HIGH;No description;linux/ipcore/PdecHandler.h
12402;0x3072;INVALID_FAR;HIGH;Read invalid FAR from PDEC after startup;linux/ipcore/PdecHandler.h
12403;0x3073;CARRIER_LOCK;INFO;Carrier lock detected;linux/ipcore/PdecHandler.h
12404;0x3074;BIT_LOCK_PDEC;INFO;Bit lock detected (data valid);linux/ipcore/PdecHandler.h
12405;0x3075;LOST_CARRIER_LOCK_PDEC;INFO;Lost carrier lock;linux/ipcore/PdecHandler.h
12406;0x3076;LOST_BIT_LOCK_PDEC;INFO;Lost bit lock;linux/ipcore/PdecHandler.h
12407;0x3077;TOO_MANY_IRQS;MEDIUM;Too many IRQs over the time window of one second. P1: Allowed TCs;linux/ipcore/PdecHandler.h
12408;0x3078;POLL_SYSCALL_ERROR_PDEC;MEDIUM;No description;linux/ipcore/PdecHandler.h
12409;0x3079;WRITE_SYSCALL_ERROR_PDEC;HIGH;No description;linux/ipcore/PdecHandler.h
12410;0x307a;PDEC_RESET_FAILED;HIGH;Failed to pull PDEC reset to low;linux/ipcore/PdecHandler.h
12411;0x307b;OPEN_IRQ_FILE_FAILED;HIGH;Failed to open the IRQ uio file;linux/ipcore/PdecHandler.h
12500;0x30d4;IMAGE_UPLOAD_FAILED;LOW;Image upload failed;linux/devices/startracker/StrHelper.h
12501;0x30d5;IMAGE_DOWNLOAD_FAILED;LOW;Image download failed;linux/devices/startracker/StrHelper.h
12502;0x30d6;IMAGE_UPLOAD_SUCCESSFUL;LOW;Uploading image to star tracker was successfulop;linux/devices/startracker/StrHelper.h
12503;0x30d7;IMAGE_DOWNLOAD_SUCCESSFUL;LOW;Image download was successful;linux/devices/startracker/StrHelper.h
12504;0x30d8;FLASH_WRITE_SUCCESSFUL;LOW;Finished flash write procedure successfully;linux/devices/startracker/StrHelper.h
12505;0x30d9;FLASH_READ_SUCCESSFUL;LOW;Finished flash read procedure successfully;linux/devices/startracker/StrHelper.h
12506;0x30da;FLASH_READ_FAILED;LOW;Flash read procedure failed;linux/devices/startracker/StrHelper.h
12507;0x30db;FIRMWARE_UPDATE_SUCCESSFUL;LOW;Firmware update was successful;linux/devices/startracker/StrHelper.h
12508;0x30dc;FIRMWARE_UPDATE_FAILED;LOW;Firmware update failed;linux/devices/startracker/StrHelper.h
12509;0x30dd;STR_HELPER_READING_REPLY_FAILED;LOW;Failed to read communication interface reply data P1: Return code of failed communication interface read call P1: Upload/download position for which the read call failed;linux/devices/startracker/StrHelper.h
12510;0x30de;STR_HELPER_COM_ERROR;LOW;Unexpected stop of decoding sequence P1: Return code of failed communication interface read call P1: Upload/download position for which the read call failed;linux/devices/startracker/StrHelper.h
12511;0x30df;STR_HELPER_NO_REPLY;LOW;Star tracker did not send replies (maybe device is powered off) P1: Position of upload or download packet for which no reply was sent;linux/devices/startracker/StrHelper.h
12512;0x30e0;STR_HELPER_DEC_ERROR;LOW;Error during decoding of received reply occurred P1: Return value of decoding function P2: Position of upload/download packet, or address of flash write/read request;linux/devices/startracker/StrHelper.h
12513;0x30e1;POSITION_MISMATCH;LOW;Position mismatch P1: The expected position and thus the position for which the image upload/download failed;linux/devices/startracker/StrHelper.h
12514;0x30e2;STR_HELPER_FILE_NOT_EXISTS;LOW;Specified file does not exist P1: Internal state of str helper;linux/devices/startracker/StrHelper.h
12515;0x30e3;STR_HELPER_SENDING_PACKET_FAILED;LOW;No description;linux/devices/startracker/StrHelper.h
12516;0x30e4;STR_HELPER_REQUESTING_MSG_FAILED;LOW;No description;linux/devices/startracker/StrHelper.h
12600;0x3138;MPSOC_FLASH_WRITE_FAILED;LOW;Flash write fails;linux/devices/ploc/PlocMPSoCHelper.h
12601;0x3139;MPSOC_FLASH_WRITE_SUCCESSFUL;LOW;Flash write successful;linux/devices/ploc/PlocMPSoCHelper.h
12602;0x313a;MPSOC_SENDING_COMMAND_FAILED;LOW;No description;linux/devices/ploc/PlocMPSoCHelper.h
12603;0x313b;MPSOC_HELPER_REQUESTING_REPLY_FAILED;LOW;Request receive message of communication interface failed P1: Return value returned by the communication interface requestReceiveMessage function P2: Internal state of MPSoC helper;linux/devices/ploc/PlocMPSoCHelper.h
12604;0x313c;MPSOC_HELPER_READING_REPLY_FAILED;LOW;Reading receive message of communication interface failed P1: Return value returned by the communication interface readingReceivedMessage function P2: Internal state of MPSoC helper;linux/devices/ploc/PlocMPSoCHelper.h
12605;0x313d;MPSOC_MISSING_ACK;LOW;Did not receive acknowledgment report P1: Number of bytes missing P2: Internal state of MPSoC helper;linux/devices/ploc/PlocMPSoCHelper.h
12606;0x313e;MPSOC_MISSING_EXE;LOW;Did not receive execution report P1: Number of bytes missing P2: Internal state of MPSoC helper;linux/devices/ploc/PlocMPSoCHelper.h
12607;0x313f;MPSOC_ACK_FAILURE_REPORT;LOW;Received acknowledgment failure report P1: Internal state of MPSoC;linux/devices/ploc/PlocMPSoCHelper.h
12608;0x3140;MPSOC_EXE_FAILURE_REPORT;LOW;Received execution failure report P1: Internal state of MPSoC;linux/devices/ploc/PlocMPSoCHelper.h
12609;0x3141;MPSOC_ACK_INVALID_APID;LOW;Expected acknowledgment report but received space packet with other apid P1: Apid of received space packet P2: Internal state of MPSoC;linux/devices/ploc/PlocMPSoCHelper.h
12610;0x3142;MPSOC_EXE_INVALID_APID;LOW;Expected execution report but received space packet with other apid P1: Apid of received space packet P2: Internal state of MPSoC;linux/devices/ploc/PlocMPSoCHelper.h
12611;0x3143;MPSOC_HELPER_SEQ_CNT_MISMATCH;LOW;Received sequence count does not match expected sequence count P1: Expected sequence count P2: Received sequence count;linux/devices/ploc/PlocMPSoCHelper.h
12612;0x3144;MPSOC_TM_SIZE_ERROR;LOW;No description;linux/devices/ploc/PlocMPSoCHelper.h
12613;0x3145;MPSOC_TM_CRC_MISSMATCH;LOW;No description;linux/devices/ploc/PlocMPSoCHelper.h
12700;0x319c;TRANSITION_BACK_TO_OFF;MEDIUM;Could not transition properly and went back to ALL OFF;mission/devices/PayloadPcduHandler.h
12701;0x319d;NEG_V_OUT_OF_BOUNDS;MEDIUM;P1: 0 -> too low, 1 -> too high P2: Float value;mission/devices/PayloadPcduHandler.h
12702;0x319e;U_DRO_OUT_OF_BOUNDS;MEDIUM;P1: 0 -> too low, 1 -> too high P2: Float value;mission/devices/PayloadPcduHandler.h
12703;0x319f;I_DRO_OUT_OF_BOUNDS;MEDIUM;P1: 0 -> too low, 1 -> too high P2: Float value;mission/devices/PayloadPcduHandler.h
12704;0x31a0;U_X8_OUT_OF_BOUNDS;MEDIUM;P1: 0 -> too low, 1 -> too high P2: Float value;mission/devices/PayloadPcduHandler.h
12705;0x31a1;I_X8_OUT_OF_BOUNDS;MEDIUM;P1: 0 -> too low, 1 -> too high P2: Float value;mission/devices/PayloadPcduHandler.h
12706;0x31a2;U_TX_OUT_OF_BOUNDS;MEDIUM;P1: 0 -> too low, 1 -> too high P2: Float value;mission/devices/PayloadPcduHandler.h
12707;0x31a3;I_TX_OUT_OF_BOUNDS;MEDIUM;P1: 0 -> too low, 1 -> too high P2: Float value;mission/devices/PayloadPcduHandler.h
12708;0x31a4;U_MPA_OUT_OF_BOUNDS;MEDIUM;P1: 0 -> too low, 1 -> too high P2: Float value;mission/devices/PayloadPcduHandler.h
12709;0x31a5;I_MPA_OUT_OF_BOUNDS;MEDIUM;P1: 0 -> too low, 1 -> too high P2: Float value;mission/devices/PayloadPcduHandler.h
12710;0x31a6;U_HPA_OUT_OF_BOUNDS;MEDIUM;P1: 0 -> too low, 1 -> too high P2: Float value;mission/devices/PayloadPcduHandler.h
12711;0x31a7;I_HPA_OUT_OF_BOUNDS;MEDIUM;P1: 0 -> too low, 1 -> too high P2: Float value;mission/devices/PayloadPcduHandler.h
12800;0x3200;TRANSITION_OTHER_SIDE_FAILED;HIGH;No description;mission/system/objects/AcsBoardAssembly.h
12801;0x3201;NOT_ENOUGH_DEVICES_DUAL_MODE;HIGH;No description;mission/system/objects/AcsBoardAssembly.h
12802;0x3202;POWER_STATE_MACHINE_TIMEOUT;MEDIUM;No description;mission/system/objects/AcsBoardAssembly.h
12803;0x3203;SIDE_SWITCH_TRANSITION_NOT_ALLOWED;LOW;Not implemented, would increase already high complexity. Operator should instead command the assembly off first and then command the assembly on into the desired mode/submode combination;mission/system/objects/AcsBoardAssembly.h
12900;0x3264;TRANSITION_OTHER_SIDE_FAILED;HIGH;No description;mission/system/objects/SusAssembly.h
12901;0x3265;NOT_ENOUGH_DEVICES_DUAL_MODE;HIGH;No description;mission/system/objects/SusAssembly.h
12902;0x3266;POWER_STATE_MACHINE_TIMEOUT;MEDIUM;No description;mission/system/objects/SusAssembly.h
12903;0x3267;SIDE_SWITCH_TRANSITION_NOT_ALLOWED;LOW;Not implemented, would increase already high complexity. Operator should instead command the assembly off first and then command the assembly on into the desired mode/submode combination;mission/system/objects/SusAssembly.h
13000;0x32c8;CHILDREN_LOST_MODE;MEDIUM;No description;mission/system/objects/TcsBoardAssembly.h
13100;0x332c;GPS_FIX_CHANGE;INFO;Fix has changed. P1: Old fix. P2: New fix 0: Not seen, 1: No Fix, 2: 2D-Fix, 3: 3D-Fix;mission/devices/devicedefinitions/GPSDefinitions.h
13101;0x332d;CANT_GET_FIX;LOW;Could not get fix in maximum allowed time. P1: Maximum allowed time to get a fix after the GPS was switched on.;mission/devices/devicedefinitions/GPSDefinitions.h
13200;0x3390;P60_BOOT_COUNT;INFO;P60 boot count is broadcasted once at SW startup. P1: Boot count;mission/devices/P60DockHandler.h
13201;0x3391;BATT_MODE;INFO;Battery mode is broadcasted at startup. P1: Mode;mission/devices/P60DockHandler.h
13202;0x3392;BATT_MODE_CHANGED;MEDIUM;Battery mode has changed. P1: Old mode. P2: New mode;mission/devices/P60DockHandler.h
13600;0x3520;SUPV_UPDATE_FAILED;LOW;update failed;linux/devices/ploc/PlocSupvUartMan.h
13601;0x3521;SUPV_UPDATE_SUCCESSFUL;LOW;update successful;linux/devices/ploc/PlocSupvUartMan.h
13602;0x3522;SUPV_CONTINUE_UPDATE_FAILED;LOW;Continue update command failed;linux/devices/ploc/PlocSupvUartMan.h
13603;0x3523;SUPV_CONTINUE_UPDATE_SUCCESSFUL;LOW;Continue update command successful;linux/devices/ploc/PlocSupvUartMan.h
13604;0x3524;TERMINATED_UPDATE_PROCEDURE;LOW;Terminated update procedure by command;linux/devices/ploc/PlocSupvUartMan.h
13605;0x3525;SUPV_EVENT_BUFFER_REQUEST_SUCCESSFUL;LOW;Requesting event buffer was successful;linux/devices/ploc/PlocSupvUartMan.h
13606;0x3526;SUPV_EVENT_BUFFER_REQUEST_FAILED;LOW;Requesting event buffer failed;linux/devices/ploc/PlocSupvUartMan.h
13607;0x3527;SUPV_EVENT_BUFFER_REQUEST_TERMINATED;LOW;Terminated event buffer request by command P1: Number of packets read before process was terminated;linux/devices/ploc/PlocSupvUartMan.h
13608;0x3528;SUPV_MEM_CHECK_OK;INFO;No description;linux/devices/ploc/PlocSupvUartMan.h
13609;0x3529;SUPV_MEM_CHECK_FAIL;INFO;No description;linux/devices/ploc/PlocSupvUartMan.h
13616;0x3530;SUPV_SENDING_COMMAND_FAILED;LOW;No description;linux/devices/ploc/PlocSupvUartMan.h
13617;0x3531;SUPV_HELPER_REQUESTING_REPLY_FAILED;LOW;Request receive message of communication interface failed P1: Return value returned by the communication interface requestReceiveMessage function P2: Internal state of supervisor helper;linux/devices/ploc/PlocSupvUartMan.h
13618;0x3532;SUPV_HELPER_READING_REPLY_FAILED;LOW;Reading receive message of communication interface failed P1: Return value returned by the communication interface readingReceivedMessage function P2: Internal state of supervisor helper;linux/devices/ploc/PlocSupvUartMan.h
13619;0x3533;SUPV_MISSING_ACK;LOW;Did not receive acknowledgement report P1: Number of bytes missing P2: Internal state of MPSoC helper;linux/devices/ploc/PlocSupvUartMan.h
13620;0x3534;SUPV_MISSING_EXE;LOW;Supervisor did not receive execution report P1: Number of bytes missing P2: Internal state of supervisor helper;linux/devices/ploc/PlocSupvUartMan.h
13621;0x3535;SUPV_ACK_FAILURE_REPORT;LOW;Supervisor received acknowledgment failure report P1: Internal state of supervisor helper;linux/devices/ploc/PlocSupvUartMan.h
13622;0x3536;SUPV_EXE_FAILURE_REPORT;LOW;Execution report failure P1:;linux/devices/ploc/PlocSupvUartMan.h
13623;0x3537;SUPV_ACK_INVALID_APID;LOW;Supervisor expected acknowledgment report but received space packet with other apid P1: Apid of received space packet P2: Internal state of supervisor helper;linux/devices/ploc/PlocSupvUartMan.h
13624;0x3538;SUPV_EXE_INVALID_APID;LOW;Supervisor helper expected execution report but received space packet with other apid P1: Apid of received space packet P2: Internal state of supervisor helper;linux/devices/ploc/PlocSupvUartMan.h
13625;0x3539;ACK_RECEPTION_FAILURE;LOW;Failed to receive acknowledgment report P1: Return value P2: Apid of command for which the reception of the acknowledgment report failed;linux/devices/ploc/PlocSupvUartMan.h
13626;0x353a;EXE_RECEPTION_FAILURE;LOW;Failed to receive execution report P1: Return value P2: Apid of command for which the reception of the execution report failed;linux/devices/ploc/PlocSupvUartMan.h
13627;0x353b;WRITE_MEMORY_FAILED;LOW;Update procedure failed when sending packet. P1: First byte percent, third and fourth byte Sequence Count, P2: Bytes written;linux/devices/ploc/PlocSupvUartMan.h
13628;0x353c;SUPV_REPLY_SIZE_MISSMATCH;LOW;No description;linux/devices/ploc/PlocSupvUartMan.h
13629;0x353d;SUPV_REPLY_CRC_MISSMATCH;LOW;No description;linux/devices/ploc/PlocSupvUartMan.h
13630;0x353e;SUPV_UPDATE_PROGRESS;INFO;Will be triggered every 5 percent of the update progress. P1: First byte percent, third and fourth byte Sequence Count, P2: Bytes written;linux/devices/ploc/PlocSupvUartMan.h
13631;0x353f;HDLC_FRAME_REMOVAL_ERROR;INFO;No description;linux/devices/ploc/PlocSupvUartMan.h
13632;0x3540;HDLC_CRC_ERROR;INFO;No description;linux/devices/ploc/PlocSupvUartMan.h
13700;0x3584;FDIR_REACTION_IGNORED;MEDIUM;No description;mission/devices/devicedefinitions/SyrlinksDefinitions.h
13701;0x3585;TX_ON;INFO;Transmitter is on now. P1: Submode, P2: Current default datarate.;mission/devices/devicedefinitions/SyrlinksDefinitions.h
13702;0x3586;TX_OFF;INFO;Transmitter is off now.;mission/devices/devicedefinitions/SyrlinksDefinitions.h
13800;0x35e8;MISSING_PACKET;LOW;No description;mission/devices/devicedefinitions/ScexDefinitions.h
13801;0x35e9;EXPERIMENT_TIMEDOUT;LOW;No description;mission/devices/devicedefinitions/ScexDefinitions.h
13802;0x35ea;MULTI_PACKET_COMMAND_DONE;INFO;No description;mission/devices/devicedefinitions/ScexDefinitions.h
12300;0x300c;SEND_MRAM_DUMP_FAILED;LOW;Failed to send mram dump command to supervisor handler P1: Return value of commandAction function P2: Start address of MRAM to dump with this command;linux/payload/PlocMemoryDumper.h
12301;0x300d;MRAM_DUMP_FAILED;LOW;Received completion failure report form PLOC supervisor handler P1: MRAM start address of failing dump command;linux/payload/PlocMemoryDumper.h
12302;0x300e;MRAM_DUMP_FINISHED;LOW;MRAM dump finished successfully;linux/payload/PlocMemoryDumper.h
12401;0x3071;INVALID_TC_FRAME;HIGH;No description;linux/ipcore/pdec.h
12402;0x3072;INVALID_FAR;HIGH;Read invalid FAR from PDEC after startup;linux/ipcore/pdec.h
12403;0x3073;CARRIER_LOCK;INFO;Carrier lock detected;linux/ipcore/pdec.h
12404;0x3074;BIT_LOCK_PDEC;INFO;Bit lock detected (data valid);linux/ipcore/pdec.h
12405;0x3075;LOST_CARRIER_LOCK_PDEC;INFO;Lost carrier lock;linux/ipcore/pdec.h
12406;0x3076;LOST_BIT_LOCK_PDEC;INFO;Lost bit lock;linux/ipcore/pdec.h
12407;0x3077;TOO_MANY_IRQS;MEDIUM;Too many IRQs over the time window of one second. P1: Allowed TCs;linux/ipcore/pdec.h
12408;0x3078;POLL_SYSCALL_ERROR_PDEC;MEDIUM;No description;linux/ipcore/pdec.h
12409;0x3079;WRITE_SYSCALL_ERROR_PDEC;HIGH;No description;linux/ipcore/pdec.h
12410;0x307a;PDEC_TRYING_RESET_WITH_INIT;LOW;Trying a PDEC reset with complete re-initialization;linux/ipcore/pdec.h
12411;0x307b;PDEC_TRYING_RESET_NO_INIT;LOW;Trying a PDEC reset without re-initialization.;linux/ipcore/pdec.h
12412;0x307c;PDEC_RESET_FAILED;HIGH;Failed to pull PDEC reset to low;linux/ipcore/pdec.h
12413;0x307d;OPEN_IRQ_FILE_FAILED;HIGH;Failed to open the IRQ uio file;linux/ipcore/pdec.h
12414;0x307e;PDEC_INIT_FAILED;HIGH;PDEC initialization failed. This might also be due to the persistent confiuration never becoming available, for example due to SD card issues.;linux/ipcore/pdec.h
12415;0x307f;PDEC_CONFIG_CORRUPTED;HIGH;The PDEC configuration area has been corrupted P1: The first configuration word P2: The second configuration word;linux/ipcore/pdec.h
12500;0x30d4;IMAGE_UPLOAD_FAILED;LOW;Image upload failed;linux/acs/StrComHandler.h
12501;0x30d5;IMAGE_DOWNLOAD_FAILED;LOW;Image download failed;linux/acs/StrComHandler.h
12502;0x30d6;IMAGE_UPLOAD_SUCCESSFUL;LOW;Uploading image to star tracker was successfulop;linux/acs/StrComHandler.h
12503;0x30d7;IMAGE_DOWNLOAD_SUCCESSFUL;LOW;Image download was successful;linux/acs/StrComHandler.h
12504;0x30d8;FLASH_WRITE_SUCCESSFUL;LOW;Finished flash write procedure successfully;linux/acs/StrComHandler.h
12505;0x30d9;FLASH_READ_SUCCESSFUL;LOW;Finished flash read procedure successfully;linux/acs/StrComHandler.h
12506;0x30da;FLASH_READ_FAILED;LOW;Flash read procedure failed;linux/acs/StrComHandler.h
12507;0x30db;FIRMWARE_UPDATE_SUCCESSFUL;LOW;Firmware update was successful;linux/acs/StrComHandler.h
12508;0x30dc;FIRMWARE_UPDATE_FAILED;LOW;Firmware update failed;linux/acs/StrComHandler.h
12509;0x30dd;STR_HELPER_READING_REPLY_FAILED;LOW;Failed to read communication interface reply data P1: Return code of failed communication interface read call P1: Upload/download position for which the read call failed;linux/acs/StrComHandler.h
12510;0x30de;STR_HELPER_COM_ERROR;LOW;Unexpected stop of decoding sequence P1: Return code of failed communication interface read call P1: Upload/download position for which the read call failed;linux/acs/StrComHandler.h
12511;0x30df;STR_COM_REPLY_TIMEOUT;LOW;Star tracker did not send a valid reply for a certain timeout. P1: Position of upload or download packet for which the packet wa sent. P2: Timeout;linux/acs/StrComHandler.h
12513;0x30e1;STR_HELPER_DEC_ERROR;LOW;Error during decoding of received reply occurred P1: Return value of decoding function P2: Position of upload/download packet, or address of flash write/read request;linux/acs/StrComHandler.h
12514;0x30e2;POSITION_MISMATCH;LOW;Position mismatch P1: The expected position and thus the position for which the image upload/download failed;linux/acs/StrComHandler.h
12515;0x30e3;STR_HELPER_FILE_NOT_EXISTS;LOW;Specified file does not exist P1: Internal state of str helper;linux/acs/StrComHandler.h
12516;0x30e4;STR_HELPER_SENDING_PACKET_FAILED;LOW;No description;linux/acs/StrComHandler.h
12517;0x30e5;STR_HELPER_REQUESTING_MSG_FAILED;LOW;No description;linux/acs/StrComHandler.h
12600;0x3138;MPSOC_FLASH_WRITE_FAILED;LOW;Flash write fails;linux/payload/PlocMpsocSpecialComHelper.h
12601;0x3139;MPSOC_FLASH_WRITE_SUCCESSFUL;INFO;Flash write successful;linux/payload/PlocMpsocSpecialComHelper.h
12602;0x313a;MPSOC_SENDING_COMMAND_FAILED;LOW;No description;linux/payload/PlocMpsocSpecialComHelper.h
12603;0x313b;MPSOC_HELPER_REQUESTING_REPLY_FAILED;LOW;Request receive message of communication interface failed P1: Return value returned by the communication interface requestReceiveMessage function P2: Internal state of MPSoC helper;linux/payload/PlocMpsocSpecialComHelper.h
12604;0x313c;MPSOC_HELPER_READING_REPLY_FAILED;LOW;Reading receive message of communication interface failed P1: Return value returned by the communication interface readingReceivedMessage function P2: Internal state of MPSoC helper;linux/payload/PlocMpsocSpecialComHelper.h
12605;0x313d;MPSOC_MISSING_ACK;LOW;Did not receive acknowledgment report P1: Number of bytes missing P2: Internal state of MPSoC helper;linux/payload/PlocMpsocSpecialComHelper.h
12606;0x313e;MPSOC_MISSING_EXE;LOW;Did not receive execution report P1: Number of bytes missing P2: Internal state of MPSoC helper;linux/payload/PlocMpsocSpecialComHelper.h
12607;0x313f;MPSOC_ACK_FAILURE_REPORT;LOW;Received acknowledgment failure report P1: Internal state of MPSoC;linux/payload/PlocMpsocSpecialComHelper.h
12608;0x3140;MPSOC_EXE_FAILURE_REPORT;LOW;Received execution failure report P1: Internal state of MPSoC;linux/payload/PlocMpsocSpecialComHelper.h
12609;0x3141;MPSOC_ACK_INVALID_APID;LOW;Expected acknowledgment report but received space packet with other apid P1: Apid of received space packet P2: Internal state of MPSoC;linux/payload/PlocMpsocSpecialComHelper.h
12610;0x3142;MPSOC_EXE_INVALID_APID;LOW;Expected execution report but received space packet with other apid P1: Apid of received space packet P2: Internal state of MPSoC;linux/payload/PlocMpsocSpecialComHelper.h
12611;0x3143;MPSOC_HELPER_SEQ_CNT_MISMATCH;LOW;Received sequence count does not match expected sequence count P1: Expected sequence count P2: Received sequence count;linux/payload/PlocMpsocSpecialComHelper.h
12612;0x3144;MPSOC_TM_SIZE_ERROR;LOW;No description;linux/payload/PlocMpsocSpecialComHelper.h
12613;0x3145;MPSOC_TM_CRC_MISSMATCH;LOW;No description;linux/payload/PlocMpsocSpecialComHelper.h
12614;0x3146;MPSOC_FLASH_READ_PACKET_ERROR;LOW;No description;linux/payload/PlocMpsocSpecialComHelper.h
12615;0x3147;MPSOC_FLASH_READ_FAILED;LOW;No description;linux/payload/PlocMpsocSpecialComHelper.h
12616;0x3148;MPSOC_FLASH_READ_SUCCESSFUL;INFO;No description;linux/payload/PlocMpsocSpecialComHelper.h
12617;0x3149;MPSOC_READ_TIMEOUT;LOW;No description;linux/payload/PlocMpsocSpecialComHelper.h
12700;0x319c;TRANSITION_BACK_TO_OFF;MEDIUM;Could not transition properly and went back to ALL OFF;mission/payload/PayloadPcduHandler.h
12701;0x319d;NEG_V_OUT_OF_BOUNDS;MEDIUM;P1: 0 -> too low, 1 -> too high P2: Float value;mission/payload/PayloadPcduHandler.h
12702;0x319e;U_DRO_OUT_OF_BOUNDS;MEDIUM;P1: 0 -> too low, 1 -> too high P2: Float value;mission/payload/PayloadPcduHandler.h
12703;0x319f;I_DRO_OUT_OF_BOUNDS;MEDIUM;P1: 0 -> too low, 1 -> too high P2: Float value;mission/payload/PayloadPcduHandler.h
12704;0x31a0;U_X8_OUT_OF_BOUNDS;MEDIUM;P1: 0 -> too low, 1 -> too high P2: Float value;mission/payload/PayloadPcduHandler.h
12705;0x31a1;I_X8_OUT_OF_BOUNDS;MEDIUM;P1: 0 -> too low, 1 -> too high P2: Float value;mission/payload/PayloadPcduHandler.h
12706;0x31a2;U_TX_OUT_OF_BOUNDS;MEDIUM;P1: 0 -> too low, 1 -> too high P2: Float value;mission/payload/PayloadPcduHandler.h
12707;0x31a3;I_TX_OUT_OF_BOUNDS;MEDIUM;P1: 0 -> too low, 1 -> too high P2: Float value;mission/payload/PayloadPcduHandler.h
12708;0x31a4;U_MPA_OUT_OF_BOUNDS;MEDIUM;P1: 0 -> too low, 1 -> too high P2: Float value;mission/payload/PayloadPcduHandler.h
12709;0x31a5;I_MPA_OUT_OF_BOUNDS;MEDIUM;P1: 0 -> too low, 1 -> too high P2: Float value;mission/payload/PayloadPcduHandler.h
12710;0x31a6;U_HPA_OUT_OF_BOUNDS;MEDIUM;P1: 0 -> too low, 1 -> too high P2: Float value;mission/payload/PayloadPcduHandler.h
12711;0x31a7;I_HPA_OUT_OF_BOUNDS;MEDIUM;P1: 0 -> too low, 1 -> too high P2: Float value;mission/payload/PayloadPcduHandler.h
12800;0x3200;TRANSITION_OTHER_SIDE_FAILED;HIGH;No description;mission/system/acs/AcsBoardAssembly.h
12801;0x3201;NOT_ENOUGH_DEVICES_DUAL_MODE;HIGH;No description;mission/system/acs/AcsBoardAssembly.h
12802;0x3202;POWER_STATE_MACHINE_TIMEOUT;MEDIUM;No description;mission/system/acs/AcsBoardAssembly.h
12803;0x3203;SIDE_SWITCH_TRANSITION_NOT_ALLOWED;LOW;Not implemented, would increase already high complexity. Operator should instead command the assembly off first and then command the assembly on into the desired mode/submode combination;mission/system/acs/AcsBoardAssembly.h
12804;0x3204;DIRECT_TRANSITION_TO_DUAL_OTHER_GPS_FAULTY;MEDIUM;This is triggered when the assembly would have normally switched the board side, but the GPS device of the other side was marked faulty. P1: Current submode.;mission/system/acs/AcsBoardAssembly.h
12900;0x3264;TRANSITION_OTHER_SIDE_FAILED;HIGH;No description;mission/system/acs/SusAssembly.h
12901;0x3265;NOT_ENOUGH_DEVICES_DUAL_MODE;HIGH;No description;mission/system/acs/SusAssembly.h
12902;0x3266;POWER_STATE_MACHINE_TIMEOUT;MEDIUM;No description;mission/system/acs/SusAssembly.h
12903;0x3267;SIDE_SWITCH_TRANSITION_NOT_ALLOWED;LOW;Not implemented, would increase already high complexity. Operator should instead command the assembly off first and then command the assembly on into the desired mode/submode combination;mission/system/acs/SusAssembly.h
13000;0x32c8;CHILDREN_LOST_MODE;MEDIUM;No description;mission/system/tcs/TcsBoardAssembly.h
13100;0x332c;GPS_FIX_CHANGE;INFO;Fix has changed. P1: Old fix. P2: New fix 0: Not seen, 1: No Fix, 2: 2D-Fix, 3: 3D-Fix;mission/acs/archive/GPSDefinitions.h
13101;0x332d;CANT_GET_FIX;LOW;Could not get fix in maximum allowed time. P1: Maximum allowed time to get a fix after the GPS was switched on.;mission/acs/archive/GPSDefinitions.h
13200;0x3390;P60_BOOT_COUNT;INFO;P60 boot count is broadcasted once at SW startup. P1: Boot count;mission/power/P60DockHandler.h
13201;0x3391;BATT_MODE;INFO;Battery mode is broadcasted at startup. P1: Mode;mission/power/P60DockHandler.h
13202;0x3392;BATT_MODE_CHANGED;MEDIUM;Battery mode has changed. P1: Old mode. P2: New mode;mission/power/P60DockHandler.h
13600;0x3520;SUPV_UPDATE_FAILED;LOW;update failed;linux/payload/PlocSupvUartMan.h
13601;0x3521;SUPV_UPDATE_SUCCESSFUL;LOW;update successful;linux/payload/PlocSupvUartMan.h
13602;0x3522;SUPV_CONTINUE_UPDATE_FAILED;LOW;Continue update command failed;linux/payload/PlocSupvUartMan.h
13603;0x3523;SUPV_CONTINUE_UPDATE_SUCCESSFUL;LOW;Continue update command successful;linux/payload/PlocSupvUartMan.h
13604;0x3524;TERMINATED_UPDATE_PROCEDURE;LOW;Terminated update procedure by command;linux/payload/PlocSupvUartMan.h
13605;0x3525;SUPV_EVENT_BUFFER_REQUEST_SUCCESSFUL;LOW;Requesting event buffer was successful;linux/payload/PlocSupvUartMan.h
13606;0x3526;SUPV_EVENT_BUFFER_REQUEST_FAILED;LOW;Requesting event buffer failed;linux/payload/PlocSupvUartMan.h
13607;0x3527;SUPV_EVENT_BUFFER_REQUEST_TERMINATED;LOW;Terminated event buffer request by command P1: Number of packets read before process was terminated;linux/payload/PlocSupvUartMan.h
13608;0x3528;SUPV_MEM_CHECK_OK;INFO;No description;linux/payload/PlocSupvUartMan.h
13609;0x3529;SUPV_MEM_CHECK_FAIL;INFO;No description;linux/payload/PlocSupvUartMan.h
13616;0x3530;SUPV_SENDING_COMMAND_FAILED;LOW;No description;linux/payload/PlocSupvUartMan.h
13617;0x3531;SUPV_HELPER_REQUESTING_REPLY_FAILED;LOW;Request receive message of communication interface failed P1: Return value returned by the communication interface requestReceiveMessage function P2: Internal state of supervisor helper;linux/payload/PlocSupvUartMan.h
13618;0x3532;SUPV_HELPER_READING_REPLY_FAILED;LOW;Reading receive message of communication interface failed P1: Return value returned by the communication interface readingReceivedMessage function P2: Internal state of supervisor helper;linux/payload/PlocSupvUartMan.h
13619;0x3533;SUPV_MISSING_ACK;LOW;Did not receive acknowledgement report P1: Number of bytes missing P2: Internal state of MPSoC helper;linux/payload/PlocSupvUartMan.h
13620;0x3534;SUPV_MISSING_EXE;LOW;Supervisor did not receive execution report P1: Number of bytes missing P2: Internal state of supervisor helper;linux/payload/PlocSupvUartMan.h
13621;0x3535;SUPV_ACK_FAILURE_REPORT;LOW;Supervisor received acknowledgment failure report P1: Internal state of supervisor helper;linux/payload/PlocSupvUartMan.h
13622;0x3536;SUPV_EXE_FAILURE_REPORT;LOW;Execution report failure P1:;linux/payload/PlocSupvUartMan.h
13623;0x3537;SUPV_ACK_INVALID_APID;LOW;Supervisor expected acknowledgment report but received space packet with other apid P1: Apid of received space packet P2: Internal state of supervisor helper;linux/payload/PlocSupvUartMan.h
13624;0x3538;SUPV_EXE_INVALID_APID;LOW;Supervisor helper expected execution report but received space packet with other apid P1: Apid of received space packet P2: Internal state of supervisor helper;linux/payload/PlocSupvUartMan.h
13625;0x3539;ACK_RECEPTION_FAILURE;LOW;Failed to receive acknowledgment report P1: Return value P2: Apid of command for which the reception of the acknowledgment report failed;linux/payload/PlocSupvUartMan.h
13626;0x353a;EXE_RECEPTION_FAILURE;LOW;Failed to receive execution report P1: Return value P2: Apid of command for which the reception of the execution report failed;linux/payload/PlocSupvUartMan.h
13627;0x353b;WRITE_MEMORY_FAILED;LOW;Update procedure failed when sending packet. P1: First byte percent, third and fourth byte Sequence Count, P2: Bytes written;linux/payload/PlocSupvUartMan.h
13628;0x353c;SUPV_REPLY_SIZE_MISSMATCH;LOW;No description;linux/payload/PlocSupvUartMan.h
13629;0x353d;SUPV_REPLY_CRC_MISSMATCH;LOW;No description;linux/payload/PlocSupvUartMan.h
13630;0x353e;SUPV_UPDATE_PROGRESS;INFO;Will be triggered every 5 percent of the update progress. P1: First byte percent, third and fourth byte Sequence Count, P2: Bytes written;linux/payload/PlocSupvUartMan.h
13631;0x353f;HDLC_FRAME_REMOVAL_ERROR;INFO;No description;linux/payload/PlocSupvUartMan.h
13632;0x3540;HDLC_CRC_ERROR;INFO;No description;linux/payload/PlocSupvUartMan.h
13701;0x3585;TX_ON;INFO;Transmitter is on now. P1: Submode, P2: Current default datarate.;mission/com/syrlinksDefs.h
13702;0x3586;TX_OFF;INFO;Transmitter is off now.;mission/com/syrlinksDefs.h
13800;0x35e8;MISSING_PACKET;LOW;No description;mission/payload/scexHelpers.h
13801;0x35e9;EXPERIMENT_TIMEDOUT;LOW;No description;mission/payload/scexHelpers.h
13802;0x35ea;MULTI_PACKET_COMMAND_DONE;INFO;No description;mission/payload/scexHelpers.h
13803;0x35eb;FS_UNUSABLE;LOW;No description;mission/payload/scexHelpers.h
13901;0x364d;SET_CONFIGFILEVALUE_FAILED;MEDIUM;No description;mission/utility/GlobalConfigHandler.h
13902;0x364e;GET_CONFIGFILEVALUE_FAILED;MEDIUM;No description;mission/utility/GlobalConfigHandler.h
13903;0x364f;INSERT_CONFIGFILEVALUE_FAILED;MEDIUM;No description;mission/utility/GlobalConfigHandler.h
13904;0x3650;WRITE_CONFIGFILE_FAILED;MEDIUM;No description;mission/utility/GlobalConfigHandler.h
13905;0x3651;READ_CONFIGFILE_FAILED;MEDIUM;No description;mission/utility/GlobalConfigHandler.h
14000;0x36b0;ALLOC_FAILURE;MEDIUM;No description;bsp_q7s/core/CoreController.h
14001;0x36b1;REBOOT_SW;LOW; Software reboot occurred. Can also be a systemd reboot. P1: Current Chip, P2: Current Copy;bsp_q7s/core/CoreController.h
14002;0x36b2;REBOOT_MECHANISM_TRIGGERED;MEDIUM;The reboot mechanism was triggered. P1: First 16 bits: Last Chip, Last 16 bits: Last Copy, P2: Each byte is the respective reboot count for the slots;bsp_q7s/core/CoreController.h
14003;0x36b3;REBOOT_HW;MEDIUM;No description;bsp_q7s/core/CoreController.h
14004;0x36b4;NO_SD_CARD_ACTIVE;HIGH;No SD card was active. Core controller will attempt to re-initialize a SD card.;bsp_q7s/core/CoreController.h
14005;0x36b5;VERSION_INFO;INFO;P1: Byte 0: Major, Byte 1: Minor, Byte 2: Patch, Byte 3: Has Git Hash P2: First four letters of Git SHA is the last byte of P1 is set.;bsp_q7s/core/CoreController.h
14006;0x36b6;CURRENT_IMAGE_INFO;INFO;P1: Current Chip, P2: Current Copy;bsp_q7s/core/CoreController.h
14007;0x36b7;REBOOT_COUNTER;INFO;Total reboot counter, which is the sum of the boot count of all individual images.;bsp_q7s/core/CoreController.h
14008;0x36b8;INDIVIDUAL_BOOT_COUNTS;INFO;Get the boot count of the individual images. P1: First 16 bits boot count of image 0 0, last 16 bits boot count of image 0 1. P2: First 16 bits boot count of image 1 0, last 16 bits boot count of image 1 1.;bsp_q7s/core/CoreController.h
14010;0x36ba;I2C_UNAVAILABLE_REBOOT;MEDIUM;No description;bsp_q7s/core/CoreController.h
14100;0x3714;NO_VALID_SENSOR_TEMPERATURE;MEDIUM;No description;mission/controller/ThermalController.h
14101;0x3715;NO_HEALTHY_HEATER_AVAILABLE;MEDIUM;No description;mission/controller/ThermalController.h
14102;0x3716;SYRLINKS_OVERHEATING;HIGH;No description;mission/controller/ThermalController.h
14103;0x3717;PLOC_OVERHEATING;HIGH;No description;mission/controller/ThermalController.h
14104;0x3718;OBC_OVERHEATING;HIGH;No description;mission/controller/ThermalController.h
14105;0x3719;HPA_OVERHEATING;HIGH;No description;mission/controller/ThermalController.h
14106;0x371a;PLPCDU_OVERHEATING;HIGH;No description;mission/controller/ThermalController.h
14201;0x3779;TX_TIMER_EXPIRED;INFO;The transmit timer to protect the Syrlinks expired P1: The current timer value;mission/system/objects/ComSubsystem.h
14202;0x377a;BIT_LOCK_TX_ON;INFO;Transmitter will be turned on due to detection of bitlock;mission/system/objects/ComSubsystem.h
14000;0x36b0;ALLOC_FAILURE;MEDIUM;No description;mission/sysDefs.h
14001;0x36b1;REBOOT_SW;LOW; Software reboot occurred. Can also be a systemd reboot. P1: Current Chip, P2: Current Copy;mission/sysDefs.h
14002;0x36b2;REBOOT_MECHANISM_TRIGGERED;MEDIUM;The reboot mechanism was triggered. P1: First 16 bits: Last Chip, Last 16 bits: Last Copy, P2: Each byte is the respective reboot count for the slots;mission/sysDefs.h
14003;0x36b3;REBOOT_HW;MEDIUM;No description;mission/sysDefs.h
14004;0x36b4;NO_SD_CARD_ACTIVE;HIGH;No SD card was active. Core controller will attempt to re-initialize a SD card.;mission/sysDefs.h
14005;0x36b5;VERSION_INFO;INFO;P1: Byte 0: Major, Byte 1: Minor, Byte 2: Patch, Byte 3: Has Git Hash P2: First four letters of Git SHA is the last byte of P1 is set.;mission/sysDefs.h
14006;0x36b6;CURRENT_IMAGE_INFO;INFO;P1: Current Chip, P2: Current Copy;mission/sysDefs.h
14007;0x36b7;REBOOT_COUNTER;INFO;Total reboot counter, which is the sum of the boot count of all individual images.;mission/sysDefs.h
14008;0x36b8;INDIVIDUAL_BOOT_COUNTS;INFO;Get the boot count of the individual images. P1: First 16 bits boot count of image 0 0, last 16 bits boot count of image 0 1. P2: First 16 bits boot count of image 1 0, last 16 bits boot count of image 1 1.;mission/sysDefs.h
14010;0x36ba;TRYING_I2C_RECOVERY;HIGH;I2C is unavailable. Trying recovery of I2C bus by power cycling all I2C devices.;mission/sysDefs.h
14011;0x36bb;I2C_REBOOT;HIGH;I2C is unavailable. Recovery did not work, performing full reboot.;mission/sysDefs.h
14012;0x36bc;PDEC_REBOOT;HIGH;PDEC recovery through reset was not possible, performing full reboot.;mission/sysDefs.h
14013;0x36bd;FIRMWARE_INFO;INFO;Version information of the firmware (not OBSW). P1: Byte 0: Major, Byte 1: Minor, Byte 2: Patch, Byte 3: Has Git Hash P2: First four letters of Git SHA is the last byte of P1 is set.;mission/sysDefs.h
14014;0x36be;ACTIVE_SD_INFO;INFO;Active SD card info. SD States: 0: OFF, 1: ON, 2: MOUNTED. P1: Active SD Card Index, 0 if none is active P2: First two bytes: SD state of SD card 0, last two bytes SD state of SD card 1;mission/sysDefs.h
14100;0x3714;NO_VALID_SENSOR_TEMPERATURE;MEDIUM;No description;mission/controller/tcsDefs.h
14101;0x3715;NO_HEALTHY_HEATER_AVAILABLE;MEDIUM;No description;mission/controller/tcsDefs.h
14102;0x3716;SYRLINKS_OVERHEATING;HIGH;No description;mission/controller/tcsDefs.h
14104;0x3718;OBC_OVERHEATING;HIGH;No description;mission/controller/tcsDefs.h
14105;0x3719;CAMERA_OVERHEATING;HIGH;No description;mission/controller/tcsDefs.h
14106;0x371a;PCDU_SYSTEM_OVERHEATING;HIGH;No description;mission/controller/tcsDefs.h
14107;0x371b;HEATER_NOT_OFF_FOR_OFF_MODE;MEDIUM;No description;mission/controller/tcsDefs.h
14108;0x371c;MGT_OVERHEATING;HIGH;No description;mission/controller/tcsDefs.h
14109;0x371d;TCS_SWITCHING_HEATER_ON;INFO;P1: Module index. P2: Heater index;mission/controller/tcsDefs.h
14110;0x371e;TCS_SWITCHING_HEATER_OFF;INFO;P1: Module index. P2: Heater index;mission/controller/tcsDefs.h
14111;0x371f;TCS_HEATER_MAX_BURN_TIME_REACHED;MEDIUM;P1: Heater index. P2: Maximum burn time for heater.;mission/controller/tcsDefs.h
14201;0x3779;TX_TIMER_EXPIRED;INFO;The transmit timer to protect the Syrlinks expired P1: The current timer value;mission/system/com/ComSubsystem.h
14202;0x377a;BIT_LOCK_TX_ON;INFO;Transmitter will be turned on due to detection of bitlock;mission/system/com/ComSubsystem.h
14300;0x37dc;POSSIBLE_FILE_CORRUPTION;LOW;P1: Result code of TM packet parser. P2: Timestamp of possibly corrupt file as a unix timestamp.;mission/persistentTmStoreDefs.h
14301;0x37dd;FILE_TOO_LARGE;LOW;File in store too large. P1: Detected file size P2: Allowed file size;mission/persistentTmStoreDefs.h
14302;0x37de;BUSY_DUMPING_EVENT;INFO;No description;mission/persistentTmStoreDefs.h
14303;0x37df;DUMP_WAS_CANCELLED;LOW;Dump was cancelled. P1: Object ID of store.;mission/persistentTmStoreDefs.h
14305;0x37e1;DUMP_OK_STORE_DONE;INFO;P1: Number of dumped packets. P2: Total dumped bytes.;mission/persistentTmStoreDefs.h
14306;0x37e2;DUMP_NOK_STORE_DONE;INFO;P1: Number of dumped packets. P2: Total dumped bytes.;mission/persistentTmStoreDefs.h
14307;0x37e3;DUMP_MISC_STORE_DONE;INFO;P1: Number of dumped packets. P2: Total dumped bytes.;mission/persistentTmStoreDefs.h
14308;0x37e4;DUMP_HK_STORE_DONE;INFO;P1: Number of dumped packets. P2: Total dumped bytes.;mission/persistentTmStoreDefs.h
14309;0x37e5;DUMP_CFDP_STORE_DONE;INFO;P1: Number of dumped packets. P2: Total dumped bytes.;mission/persistentTmStoreDefs.h
14310;0x37e6;DUMP_OK_CANCELLED;LOW;P1: Number of dumped packets. P2: Total dumped bytes.;mission/persistentTmStoreDefs.h
14311;0x37e7;DUMP_NOK_CANCELLED;LOW;P1: Number of dumped packets. P2: Total dumped bytes.;mission/persistentTmStoreDefs.h
14312;0x37e8;DUMP_MISC_CANCELLED;LOW;P1: Number of dumped packets. P2: Total dumped bytes.;mission/persistentTmStoreDefs.h
14313;0x37e9;DUMP_HK_CANCELLED;LOW;P1: Number of dumped packets. P2: Total dumped bytes.;mission/persistentTmStoreDefs.h
14314;0x37ea;DUMP_CFDP_CANCELLED;LOW;P1: Number of dumped packets. P2: Total dumped bytes.;mission/persistentTmStoreDefs.h
14500;0x38a4;TEMPERATURE_ALL_ONES_START;MEDIUM;Detected invalid values, starting invalid message counting;mission/acs/SusHandler.h
14501;0x38a5;TEMPERATURE_ALL_ONES_RECOVERY;INFO;Detected valid values for a prolonged time again, resetting all counters. P1: Number of periods with invalid messages. P2: Maximum invalid message counter.;mission/acs/SusHandler.h
14600;0x3908;FAULT_HANDLER_TRIGGERED;LOW;P1: CFDP fault handler code. P2: CFDP condition code.;mission/cfdp/defs.h

1 Event ID (dec) Event ID (hex) Name Severity Description File Path
86 10802 0x2a32 SERIALIZATION_ERROR LOW No description fsfw/src/fsfw/cfdp/handler/defs.h
87 10803 0x2a33 FILESTORE_ERROR LOW No description fsfw/src/fsfw/cfdp/handler/defs.h
88 10804 0x2a34 FILENAME_TOO_LARGE_ERROR LOW P1: Transaction step ID, P2: 0 for source file name, 1 for dest file name fsfw/src/fsfw/cfdp/handler/defs.h
89 11200 10805 0x2bc0 0x2a35 SAFE_RATE_VIOLATION HANDLING_CFDP_REQUEST_FAILED MEDIUM LOW No description CFDP request handling failed. P2: Returncode. mission/acsDefs.h fsfw/src/fsfw/cfdp/handler/defs.h
90 11201 11200 0x2bc1 0x2bc0 SAFE_RATE_RECOVERY SAFE_RATE_VIOLATION MEDIUM No description The limits for the rotation in safe mode were violated. mission/acsDefs.h mission/acs/defs.h
91 11202 11201 0x2bc2 0x2bc1 MULTIPLE_RW_INVALID SAFE_RATE_RECOVERY HIGH MEDIUM No description The system has recovered from a safe rate rotation violation. mission/acsDefs.h mission/acs/defs.h
92 11203 11202 0x2bc3 0x2bc2 MEKF_INVALID_INFO MULTIPLE_RW_INVALID INFO HIGH No description Multiple RWs are invalid, uncommandable and therefore higher ACS modes cannot be maintained. mission/acsDefs.h mission/acs/defs.h
93 11204 11203 0x2bc4 0x2bc3 MEKF_INVALID_MODE_VIOLATION MEKF_INVALID_INFO HIGH INFO No description MEKF was not able to compute a solution. P1: MEKF state on exit mission/acsDefs.h mission/acs/defs.h
94 11205 11204 0x2bc5 0x2bc4 SAFE_MODE_CONTROLLER_FAILURE MEKF_RECOVERY HIGH INFO No description MEKF is able to compute a solution again. mission/acsDefs.h mission/acs/defs.h
95 11300 11205 0x2c24 0x2bc5 SWITCH_CMD_SENT MEKF_AUTOMATIC_RESET INFO Indicates that a FSFW object requested setting a switch P1: 1 if on was requested, 0 for off | P2: Switch Index MEKF performed an automatic reset after detection of nonfinite values. mission/devices/devicedefinitions/powerDefinitions.h mission/acs/defs.h
96 11301 11206 0x2c25 0x2bc6 SWITCH_HAS_CHANGED MEKF_INVALID_MODE_VIOLATION INFO HIGH Indicated that a switch state has changed P1: New switch state, 1 for on, 0 for off | P2: Switch Index MEKF was not able to compute a solution during any pointing ACS mode for a prolonged time. mission/devices/devicedefinitions/powerDefinitions.h mission/acs/defs.h
97 11302 11207 0x2c26 0x2bc7 SWITCHING_Q7S_DENIED SAFE_MODE_CONTROLLER_FAILURE MEDIUM HIGH No description The ACS safe mode controller was not able to compute a solution and has failed. P1: Missing information about magnetic field, P2: Missing information about rotational rate mission/devices/devicedefinitions/powerDefinitions.h mission/acs/defs.h
98 11303 11208 0x2c27 0x2bc8 FDIR_REACTION_IGNORED TLE_TOO_OLD MEDIUM INFO No description The TLE for the SGP4 Propagator has become too old. mission/devices/devicedefinitions/powerDefinitions.h mission/acs/defs.h
99 11400 11300 0x2c88 0x2c24 GPIO_PULL_HIGH_FAILED SWITCH_CMD_SENT LOW INFO No description Indicates that a FSFW object requested setting a switch P1: 1 if on was requested, 0 for off | P2: Switch Index mission/devices/HeaterHandler.h mission/power/defs.h
100 11401 11301 0x2c89 0x2c25 GPIO_PULL_LOW_FAILED SWITCH_HAS_CHANGED LOW INFO No description Indicated that a switch state has changed P1: New switch state, 1 for on, 0 for off | P2: Switch Index mission/devices/HeaterHandler.h mission/power/defs.h
101 11402 11302 0x2c8a 0x2c26 HEATER_WENT_ON SWITCHING_Q7S_DENIED INFO MEDIUM No description mission/devices/HeaterHandler.h mission/power/defs.h
102 11403 11303 0x2c8b 0x2c27 HEATER_WENT_OFF FDIR_REACTION_IGNORED INFO MEDIUM No description mission/devices/HeaterHandler.h mission/power/defs.h
103 11404 11304 0x2c8c 0x2c28 SWITCH_ALREADY_ON DATASET_READ_FAILED LOW INFO No description The dataset read for the inputs of the Power Controller has failed. mission/devices/HeaterHandler.h mission/power/defs.h
104 11405 11305 0x2c8d 0x2c29 SWITCH_ALREADY_OFF VOLTAGE_OUT_OF_BOUNDS LOW HIGH No description mission/devices/HeaterHandler.h mission/power/defs.h
105 11406 11306 0x2c8e 0x2c2a MAIN_SWITCH_TIMEOUT TIMEDELTA_OUT_OF_BOUNDS MEDIUM LOW No description Time difference for Coulomb Counter was too large. P1: time in s * 10 mission/devices/HeaterHandler.h mission/power/defs.h
106 11407 11307 0x2c8f 0x2c2b FAULTY_HEATER_WAS_ON POWER_LEVEL_LOW LOW HIGH No description The State of Charge is below the limit for payload use. Setting Payload to faulty. mission/devices/HeaterHandler.h mission/power/defs.h
107 11500 11308 0x2cec 0x2c2c BURN_PHASE_START POWER_LEVEL_CRITICAL INFO HIGH P1: Burn duration in milliseconds, P2: Dry run flag The State of Charge is below the limit for higher modes. Setting Reaction Wheels to faulty. mission/devices/SolarArrayDeploymentHandler.h mission/power/defs.h
108 11501 11400 0x2ced 0x2c88 BURN_PHASE_DONE GPIO_PULL_HIGH_FAILED INFO LOW P1: Burn duration in milliseconds, P2: Dry run flag No description mission/devices/SolarArrayDeploymentHandler.h mission/tcs/HeaterHandler.h
109 11502 11401 0x2cee 0x2c89 MAIN_SWITCH_ON_TIMEOUT GPIO_PULL_LOW_FAILED LOW No description mission/devices/SolarArrayDeploymentHandler.h mission/tcs/HeaterHandler.h
110 11503 11402 0x2cef 0x2c8a MAIN_SWITCH_OFF_TIMEOUT HEATER_WENT_ON LOW INFO No description mission/devices/SolarArrayDeploymentHandler.h mission/tcs/HeaterHandler.h
111 11504 11403 0x2cf0 0x2c8b DEPL_SA1_GPIO_SWTICH_ON_FAILED HEATER_WENT_OFF HIGH INFO No description mission/devices/SolarArrayDeploymentHandler.h mission/tcs/HeaterHandler.h
112 11505 11404 0x2cf1 0x2c8c DEPL_SA2_GPIO_SWTICH_ON_FAILED SWITCH_ALREADY_ON HIGH INFO No description mission/devices/SolarArrayDeploymentHandler.h mission/tcs/HeaterHandler.h
113 11506 11405 0x2cf2 0x2c8d DEPL_SA1_GPIO_SWTICH_OFF_FAILED SWITCH_ALREADY_OFF HIGH INFO No description mission/devices/SolarArrayDeploymentHandler.h mission/tcs/HeaterHandler.h
114 11507 11406 0x2cf3 0x2c8e DEPL_SA2_GPIO_SWTICH_OFF_FAILED MAIN_SWITCH_TIMEOUT HIGH MEDIUM No description mission/devices/SolarArrayDeploymentHandler.h mission/tcs/HeaterHandler.h
115 11508 11407 0x2cf4 0x2c8f AUTONOMOUS_DEPLOYMENT_COMPLETED FAULTY_HEATER_WAS_ON INFO LOW No description mission/devices/SolarArrayDeploymentHandler.h mission/tcs/HeaterHandler.h
116 11601 11500 0x2d51 0x2cec MEMORY_READ_RPT_CRC_FAILURE BURN_PHASE_START LOW INFO PLOC crc failure in telemetry packet P1: Burn duration in milliseconds, P2: Dry run flag linux/devices/ploc/PlocMPSoCHandler.h mission/SolarArrayDeploymentHandler.h
117 11602 11501 0x2d52 0x2ced ACK_FAILURE BURN_PHASE_DONE LOW INFO PLOC receive acknowledgment failure report P1: Command Id which leads the acknowledgment failure report P2: The status field inserted by the MPSoC into the data field P1: Burn duration in milliseconds, P2: Dry run flag linux/devices/ploc/PlocMPSoCHandler.h mission/SolarArrayDeploymentHandler.h
118 11603 11502 0x2d53 0x2cee EXE_FAILURE MAIN_SWITCH_ON_TIMEOUT LOW PLOC receive execution failure report P1: Command Id which leads the execution failure report P2: The status field inserted by the MPSoC into the data field No description linux/devices/ploc/PlocMPSoCHandler.h mission/SolarArrayDeploymentHandler.h
119 11604 11503 0x2d54 0x2cef MPSOC_HANDLER_CRC_FAILURE MAIN_SWITCH_OFF_TIMEOUT LOW PLOC reply has invalid crc No description linux/devices/ploc/PlocMPSoCHandler.h mission/SolarArrayDeploymentHandler.h
120 11605 11504 0x2d55 0x2cf0 MPSOC_HANDLER_SEQUENCE_COUNT_MISMATCH DEPL_SA1_GPIO_SWTICH_ON_FAILED LOW HIGH Packet sequence count in received space packet does not match expected count P1: Expected sequence count P2: Received sequence count No description linux/devices/ploc/PlocMPSoCHandler.h mission/SolarArrayDeploymentHandler.h
121 11606 11505 0x2d56 0x2cf1 MPSOC_SHUTDOWN_FAILED DEPL_SA2_GPIO_SWTICH_ON_FAILED HIGH Supervisor fails to shutdown MPSoC. Requires to power off the PLOC and thus also to shutdown the supervisor. No description linux/devices/ploc/PlocMPSoCHandler.h mission/SolarArrayDeploymentHandler.h
122 11701 11506 0x2db5 0x2cf2 SELF_TEST_I2C_FAILURE DEPL_SA1_GPIO_SWTICH_OFF_FAILED LOW HIGH Get self test result returns I2C failure P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA No description mission/devices/ImtqHandler.h mission/SolarArrayDeploymentHandler.h
123 11702 11507 0x2db6 0x2cf3 SELF_TEST_SPI_FAILURE DEPL_SA2_GPIO_SWTICH_OFF_FAILED LOW HIGH Get self test result returns SPI failure. This concerns the MTM connectivity. P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA No description mission/devices/ImtqHandler.h mission/SolarArrayDeploymentHandler.h
124 11703 11508 0x2db7 0x2cf4 SELF_TEST_ADC_FAILURE AUTONOMOUS_DEPLOYMENT_COMPLETED LOW INFO Get self test result returns failure in measurement of current and temperature. P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA No description mission/devices/ImtqHandler.h mission/SolarArrayDeploymentHandler.h
125 11704 11601 0x2db8 0x2d51 SELF_TEST_PWM_FAILURE MEMORY_READ_RPT_CRC_FAILURE LOW Get self test result returns PWM failure which concerns the coil actuation. P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA PLOC crc failure in telemetry packet mission/devices/ImtqHandler.h linux/payload/PlocMpsocHandler.h
126 11705 11602 0x2db9 0x2d52 SELF_TEST_TC_FAILURE ACK_FAILURE LOW Get self test result returns TC failure (system failure) P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA PLOC receive acknowledgment failure report P1: Command Id which leads the acknowledgment failure report P2: The status field inserted by the MPSoC into the data field mission/devices/ImtqHandler.h linux/payload/PlocMpsocHandler.h
127 11706 11603 0x2dba 0x2d53 SELF_TEST_MTM_RANGE_FAILURE EXE_FAILURE LOW Get self test result returns failure that MTM values were outside of the expected range. P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA PLOC receive execution failure report P1: Command Id which leads the execution failure report P2: The status field inserted by the MPSoC into the data field mission/devices/ImtqHandler.h linux/payload/PlocMpsocHandler.h
128 11707 11604 0x2dbb 0x2d54 SELF_TEST_COIL_CURRENT_FAILURE MPSOC_HANDLER_CRC_FAILURE LOW Get self test result returns failure indicating that the coil current was outside of the expected range P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA PLOC reply has invalid crc mission/devices/ImtqHandler.h linux/payload/PlocMpsocHandler.h
129 11708 11605 0x2dbc 0x2d55 INVALID_ERROR_BYTE MPSOC_HANDLER_SEQUENCE_COUNT_MISMATCH LOW Received invalid error byte. This indicates an error of the communication link between IMTQ and OBC. Packet sequence count in received space packet does not match expected count P1: Expected sequence count P2: Received sequence count mission/devices/ImtqHandler.h linux/payload/PlocMpsocHandler.h
130 11801 11606 0x2e19 0x2d56 ERROR_STATE MPSOC_SHUTDOWN_FAILED HIGH Reaction wheel signals an error state Supervisor fails to shutdown MPSoC. Requires to power off the PLOC and thus also to shutdown the supervisor. mission/devices/devicedefinitions/rwHelpers.h linux/payload/PlocMpsocHandler.h
131 11802 11607 0x2e1a 0x2d57 RESET_OCCURED SUPV_NOT_ON LOW No description SUPV not on for boot or shutdown process. P1: 0 for OFF transition, 1 for ON transition. mission/devices/devicedefinitions/rwHelpers.h linux/payload/PlocMpsocHandler.h
132 11901 11608 0x2e7d 0x2d58 BOOTING_FIRMWARE_FAILED_EVENT SUPV_REPLY_TIMEOUT LOW Failed to boot firmware No description linux/devices/startracker/StarTrackerHandler.h linux/payload/PlocMpsocHandler.h
133 11902 11701 0x2e7e 0x2db5 BOOTING_BOOTLOADER_FAILED_EVENT SELF_TEST_I2C_FAILURE LOW Failed to boot star tracker into bootloader mode Get self test result returns I2C failure P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA linux/devices/startracker/StarTrackerHandler.h mission/acs/ImtqHandler.h
134 12001 11702 0x2ee1 0x2db6 SUPV_MEMORY_READ_RPT_CRC_FAILURE SELF_TEST_SPI_FAILURE LOW PLOC supervisor crc failure in telemetry packet Get self test result returns SPI failure. This concerns the MTM connectivity. P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA linux/devices/ploc/PlocSupervisorHandler.h mission/acs/ImtqHandler.h
135 12002 11703 0x2ee2 0x2db7 SUPV_UNKNOWN_TM SELF_TEST_ADC_FAILURE LOW Unhandled event. P1: APID, P2: Service ID Get self test result returns failure in measurement of current and temperature. P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA linux/devices/ploc/PlocSupervisorHandler.h mission/acs/ImtqHandler.h
136 12003 11704 0x2ee3 0x2db8 SUPV_UNINIMPLEMENTED_TM SELF_TEST_PWM_FAILURE LOW No description Get self test result returns PWM failure which concerns the coil actuation. P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA linux/devices/ploc/PlocSupervisorHandler.h mission/acs/ImtqHandler.h
137 12004 11705 0x2ee4 0x2db9 SUPV_ACK_FAILURE SELF_TEST_TC_FAILURE LOW PLOC supervisor received acknowledgment failure report Get self test result returns TC failure (system failure) P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA linux/devices/ploc/PlocSupervisorHandler.h mission/acs/ImtqHandler.h
138 12005 11706 0x2ee5 0x2dba SUPV_EXE_FAILURE SELF_TEST_MTM_RANGE_FAILURE LOW PLOC received execution failure report P1: ID of command for which the execution failed P2: Status code sent by the supervisor handler Get self test result returns failure that MTM values were outside of the expected range. P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA linux/devices/ploc/PlocSupervisorHandler.h mission/acs/ImtqHandler.h
139 12006 11707 0x2ee6 0x2dbb SUPV_CRC_FAILURE_EVENT SELF_TEST_COIL_CURRENT_FAILURE LOW PLOC supervisor reply has invalid crc Get self test result returns failure indicating that the coil current was outside of the expected range P1: Indicates on which axis the failure occurred. 0 -> INIT, 1 -> +X, 2 -> -X, 3 -> +Y, 4 -> -Y, 5 -> +Z, 6 -> -Z, 7 -> FINA linux/devices/ploc/PlocSupervisorHandler.h mission/acs/ImtqHandler.h
140 12007 11708 0x2ee7 0x2dbc SUPV_HELPER_EXECUTING INVALID_ERROR_BYTE LOW Supervisor helper currently executing a command Received invalid error byte. This indicates an error of the communication link between IMTQ and OBC. linux/devices/ploc/PlocSupervisorHandler.h mission/acs/ImtqHandler.h
141 12008 11801 0x2ee8 0x2e19 SUPV_MPSOC_SHUTDOWN_BUILD_FAILED ERROR_STATE LOW HIGH Failed to build the command to shutdown the MPSoC Reaction wheel signals an error state linux/devices/ploc/PlocSupervisorHandler.h mission/acs/rwHelpers.h
142 11802 0x2e1a RESET_OCCURED LOW No description mission/acs/rwHelpers.h
143 11901 0x2e7d BOOTING_FIRMWARE_FAILED_EVENT LOW Failed to boot firmware mission/acs/str/StarTrackerHandler.h
144 11902 0x2e7e BOOTING_BOOTLOADER_FAILED_EVENT LOW Failed to boot star tracker into bootloader mode mission/acs/str/StarTrackerHandler.h
145 11903 0x2e7f COM_ERROR_REPLY_RECEIVED LOW Received COM error. P1: Communication Error ID (datasheet p32) mission/acs/str/StarTrackerHandler.h
146 12001 0x2ee1 SUPV_MEMORY_READ_RPT_CRC_FAILURE LOW PLOC supervisor crc failure in telemetry packet linux/payload/plocSupvDefs.h
147 12002 0x2ee2 SUPV_UNKNOWN_TM LOW Unhandled event. P1: APID, P2: Service ID linux/payload/plocSupvDefs.h
148 12003 0x2ee3 SUPV_UNINIMPLEMENTED_TM LOW No description linux/payload/plocSupvDefs.h
149 12004 0x2ee4 SUPV_ACK_FAILURE LOW PLOC supervisor received acknowledgment failure report linux/payload/plocSupvDefs.h
150 12005 0x2ee5 SUPV_EXE_FAILURE LOW PLOC received execution failure report P1: ID of command for which the execution failed P2: Status code sent by the supervisor handler linux/payload/plocSupvDefs.h
151 12006 0x2ee6 SUPV_CRC_FAILURE_EVENT LOW PLOC supervisor reply has invalid crc linux/payload/plocSupvDefs.h
152 12007 0x2ee7 SUPV_HELPER_EXECUTING LOW Supervisor helper currently executing a command linux/payload/plocSupvDefs.h
153 12008 0x2ee8 SUPV_MPSOC_SHUTDOWN_BUILD_FAILED LOW Failed to build the command to shutdown the MPSoC linux/payload/plocSupvDefs.h
154 12009 0x2ee9 SUPV_ACK_UNKNOWN_COMMAND LOW Received ACK, but no related command is unknown or has not been sent by this software instance. P1: Module APID. P2: Service ID. linux/payload/plocSupvDefs.h
155 12010 0x2eea SUPV_EXE_ACK_UNKNOWN_COMMAND LOW Received ACK EXE, but no related command is unknown or has not been sent by this software instance. P1: Module APID. P2: Service ID. linux/payload/plocSupvDefs.h
156 12100 0x2f44 SANITIZATION_FAILED LOW No description bsp_q7s/fs/SdCardManager.h
157 12101 0x2f45 MOUNTED_SD_CARD INFO No description bsp_q7s/fs/SdCardManager.h
158 12300 0x300c SEND_MRAM_DUMP_FAILED LOW Failed to send mram dump command to supervisor handler P1: Return value of commandAction function P2: Start address of MRAM to dump with this command linux/devices/ploc/PlocMemoryDumper.h linux/payload/PlocMemoryDumper.h
159 12301 0x300d MRAM_DUMP_FAILED LOW Received completion failure report form PLOC supervisor handler P1: MRAM start address of failing dump command linux/devices/ploc/PlocMemoryDumper.h linux/payload/PlocMemoryDumper.h
160 12302 0x300e MRAM_DUMP_FINISHED LOW MRAM dump finished successfully linux/devices/ploc/PlocMemoryDumper.h linux/payload/PlocMemoryDumper.h
161 12401 0x3071 INVALID_TC_FRAME HIGH No description linux/ipcore/PdecHandler.h linux/ipcore/pdec.h
162 12402 0x3072 INVALID_FAR HIGH Read invalid FAR from PDEC after startup linux/ipcore/PdecHandler.h linux/ipcore/pdec.h
163 12403 0x3073 CARRIER_LOCK INFO Carrier lock detected linux/ipcore/PdecHandler.h linux/ipcore/pdec.h
164 12404 0x3074 BIT_LOCK_PDEC INFO Bit lock detected (data valid) linux/ipcore/PdecHandler.h linux/ipcore/pdec.h
165 12405 0x3075 LOST_CARRIER_LOCK_PDEC INFO Lost carrier lock linux/ipcore/PdecHandler.h linux/ipcore/pdec.h
166 12406 0x3076 LOST_BIT_LOCK_PDEC INFO Lost bit lock linux/ipcore/PdecHandler.h linux/ipcore/pdec.h
167 12407 0x3077 TOO_MANY_IRQS MEDIUM Too many IRQs over the time window of one second. P1: Allowed TCs linux/ipcore/PdecHandler.h linux/ipcore/pdec.h
168 12408 0x3078 POLL_SYSCALL_ERROR_PDEC MEDIUM No description linux/ipcore/PdecHandler.h linux/ipcore/pdec.h
169 12409 0x3079 WRITE_SYSCALL_ERROR_PDEC HIGH No description linux/ipcore/PdecHandler.h linux/ipcore/pdec.h
170 12410 0x307a PDEC_RESET_FAILED PDEC_TRYING_RESET_WITH_INIT HIGH LOW Failed to pull PDEC reset to low Trying a PDEC reset with complete re-initialization linux/ipcore/PdecHandler.h linux/ipcore/pdec.h
171 12411 0x307b OPEN_IRQ_FILE_FAILED PDEC_TRYING_RESET_NO_INIT HIGH LOW Failed to open the IRQ uio file Trying a PDEC reset without re-initialization. linux/ipcore/PdecHandler.h linux/ipcore/pdec.h
172 12500 12412 0x30d4 0x307c IMAGE_UPLOAD_FAILED PDEC_RESET_FAILED LOW HIGH Image upload failed Failed to pull PDEC reset to low linux/devices/startracker/StrHelper.h linux/ipcore/pdec.h
173 12501 12413 0x30d5 0x307d IMAGE_DOWNLOAD_FAILED OPEN_IRQ_FILE_FAILED LOW HIGH Image download failed Failed to open the IRQ uio file linux/devices/startracker/StrHelper.h linux/ipcore/pdec.h
174 12502 12414 0x30d6 0x307e IMAGE_UPLOAD_SUCCESSFUL PDEC_INIT_FAILED LOW HIGH Uploading image to star tracker was successfulop PDEC initialization failed. This might also be due to the persistent confiuration never becoming available, for example due to SD card issues. linux/devices/startracker/StrHelper.h linux/ipcore/pdec.h
175 12503 12415 0x30d7 0x307f IMAGE_DOWNLOAD_SUCCESSFUL PDEC_CONFIG_CORRUPTED LOW HIGH Image download was successful The PDEC configuration area has been corrupted P1: The first configuration word P2: The second configuration word linux/devices/startracker/StrHelper.h linux/ipcore/pdec.h
176 12504 12500 0x30d8 0x30d4 FLASH_WRITE_SUCCESSFUL IMAGE_UPLOAD_FAILED LOW Finished flash write procedure successfully Image upload failed linux/devices/startracker/StrHelper.h linux/acs/StrComHandler.h
177 12505 12501 0x30d9 0x30d5 FLASH_READ_SUCCESSFUL IMAGE_DOWNLOAD_FAILED LOW Finished flash read procedure successfully Image download failed linux/devices/startracker/StrHelper.h linux/acs/StrComHandler.h
178 12506 12502 0x30da 0x30d6 FLASH_READ_FAILED IMAGE_UPLOAD_SUCCESSFUL LOW Flash read procedure failed Uploading image to star tracker was successfulop linux/devices/startracker/StrHelper.h linux/acs/StrComHandler.h
179 12507 12503 0x30db 0x30d7 FIRMWARE_UPDATE_SUCCESSFUL IMAGE_DOWNLOAD_SUCCESSFUL LOW Firmware update was successful Image download was successful linux/devices/startracker/StrHelper.h linux/acs/StrComHandler.h
180 12508 12504 0x30dc 0x30d8 FIRMWARE_UPDATE_FAILED FLASH_WRITE_SUCCESSFUL LOW Firmware update failed Finished flash write procedure successfully linux/devices/startracker/StrHelper.h linux/acs/StrComHandler.h
181 12509 12505 0x30dd 0x30d9 STR_HELPER_READING_REPLY_FAILED FLASH_READ_SUCCESSFUL LOW Failed to read communication interface reply data P1: Return code of failed communication interface read call P1: Upload/download position for which the read call failed Finished flash read procedure successfully linux/devices/startracker/StrHelper.h linux/acs/StrComHandler.h
182 12510 12506 0x30de 0x30da STR_HELPER_COM_ERROR FLASH_READ_FAILED LOW Unexpected stop of decoding sequence P1: Return code of failed communication interface read call P1: Upload/download position for which the read call failed Flash read procedure failed linux/devices/startracker/StrHelper.h linux/acs/StrComHandler.h
183 12511 12507 0x30df 0x30db STR_HELPER_NO_REPLY FIRMWARE_UPDATE_SUCCESSFUL LOW Star tracker did not send replies (maybe device is powered off) P1: Position of upload or download packet for which no reply was sent Firmware update was successful linux/devices/startracker/StrHelper.h linux/acs/StrComHandler.h
184 12512 12508 0x30e0 0x30dc STR_HELPER_DEC_ERROR FIRMWARE_UPDATE_FAILED LOW Error during decoding of received reply occurred P1: Return value of decoding function P2: Position of upload/download packet, or address of flash write/read request Firmware update failed linux/devices/startracker/StrHelper.h linux/acs/StrComHandler.h
185 12513 12509 0x30e1 0x30dd POSITION_MISMATCH STR_HELPER_READING_REPLY_FAILED LOW Position mismatch P1: The expected position and thus the position for which the image upload/download failed Failed to read communication interface reply data P1: Return code of failed communication interface read call P1: Upload/download position for which the read call failed linux/devices/startracker/StrHelper.h linux/acs/StrComHandler.h
186 12514 12510 0x30e2 0x30de STR_HELPER_FILE_NOT_EXISTS STR_HELPER_COM_ERROR LOW Specified file does not exist P1: Internal state of str helper Unexpected stop of decoding sequence P1: Return code of failed communication interface read call P1: Upload/download position for which the read call failed linux/devices/startracker/StrHelper.h linux/acs/StrComHandler.h
187 12515 12511 0x30e3 0x30df STR_HELPER_SENDING_PACKET_FAILED STR_COM_REPLY_TIMEOUT LOW No description Star tracker did not send a valid reply for a certain timeout. P1: Position of upload or download packet for which the packet wa sent. P2: Timeout linux/devices/startracker/StrHelper.h linux/acs/StrComHandler.h
188 12516 12513 0x30e4 0x30e1 STR_HELPER_REQUESTING_MSG_FAILED STR_HELPER_DEC_ERROR LOW No description Error during decoding of received reply occurred P1: Return value of decoding function P2: Position of upload/download packet, or address of flash write/read request linux/devices/startracker/StrHelper.h linux/acs/StrComHandler.h
189 12600 12514 0x3138 0x30e2 MPSOC_FLASH_WRITE_FAILED POSITION_MISMATCH LOW Flash write fails Position mismatch P1: The expected position and thus the position for which the image upload/download failed linux/devices/ploc/PlocMPSoCHelper.h linux/acs/StrComHandler.h
190 12601 12515 0x3139 0x30e3 MPSOC_FLASH_WRITE_SUCCESSFUL STR_HELPER_FILE_NOT_EXISTS LOW Flash write successful Specified file does not exist P1: Internal state of str helper linux/devices/ploc/PlocMPSoCHelper.h linux/acs/StrComHandler.h
191 12602 12516 0x313a 0x30e4 MPSOC_SENDING_COMMAND_FAILED STR_HELPER_SENDING_PACKET_FAILED LOW No description linux/devices/ploc/PlocMPSoCHelper.h linux/acs/StrComHandler.h
192 12603 12517 0x313b 0x30e5 MPSOC_HELPER_REQUESTING_REPLY_FAILED STR_HELPER_REQUESTING_MSG_FAILED LOW Request receive message of communication interface failed P1: Return value returned by the communication interface requestReceiveMessage function P2: Internal state of MPSoC helper No description linux/devices/ploc/PlocMPSoCHelper.h linux/acs/StrComHandler.h
193 12604 12600 0x313c 0x3138 MPSOC_HELPER_READING_REPLY_FAILED MPSOC_FLASH_WRITE_FAILED LOW Reading receive message of communication interface failed P1: Return value returned by the communication interface readingReceivedMessage function P2: Internal state of MPSoC helper Flash write fails linux/devices/ploc/PlocMPSoCHelper.h linux/payload/PlocMpsocSpecialComHelper.h
194 12605 12601 0x313d 0x3139 MPSOC_MISSING_ACK MPSOC_FLASH_WRITE_SUCCESSFUL LOW INFO Did not receive acknowledgment report P1: Number of bytes missing P2: Internal state of MPSoC helper Flash write successful linux/devices/ploc/PlocMPSoCHelper.h linux/payload/PlocMpsocSpecialComHelper.h
195 12606 12602 0x313e 0x313a MPSOC_MISSING_EXE MPSOC_SENDING_COMMAND_FAILED LOW Did not receive execution report P1: Number of bytes missing P2: Internal state of MPSoC helper No description linux/devices/ploc/PlocMPSoCHelper.h linux/payload/PlocMpsocSpecialComHelper.h
196 12607 12603 0x313f 0x313b MPSOC_ACK_FAILURE_REPORT MPSOC_HELPER_REQUESTING_REPLY_FAILED LOW Received acknowledgment failure report P1: Internal state of MPSoC Request receive message of communication interface failed P1: Return value returned by the communication interface requestReceiveMessage function P2: Internal state of MPSoC helper linux/devices/ploc/PlocMPSoCHelper.h linux/payload/PlocMpsocSpecialComHelper.h
197 12608 12604 0x3140 0x313c MPSOC_EXE_FAILURE_REPORT MPSOC_HELPER_READING_REPLY_FAILED LOW Received execution failure report P1: Internal state of MPSoC Reading receive message of communication interface failed P1: Return value returned by the communication interface readingReceivedMessage function P2: Internal state of MPSoC helper linux/devices/ploc/PlocMPSoCHelper.h linux/payload/PlocMpsocSpecialComHelper.h
198 12609 12605 0x3141 0x313d MPSOC_ACK_INVALID_APID MPSOC_MISSING_ACK LOW Expected acknowledgment report but received space packet with other apid P1: Apid of received space packet P2: Internal state of MPSoC Did not receive acknowledgment report P1: Number of bytes missing P2: Internal state of MPSoC helper linux/devices/ploc/PlocMPSoCHelper.h linux/payload/PlocMpsocSpecialComHelper.h
199 12610 12606 0x3142 0x313e MPSOC_EXE_INVALID_APID MPSOC_MISSING_EXE LOW Expected execution report but received space packet with other apid P1: Apid of received space packet P2: Internal state of MPSoC Did not receive execution report P1: Number of bytes missing P2: Internal state of MPSoC helper linux/devices/ploc/PlocMPSoCHelper.h linux/payload/PlocMpsocSpecialComHelper.h
200 12611 12607 0x3143 0x313f MPSOC_HELPER_SEQ_CNT_MISMATCH MPSOC_ACK_FAILURE_REPORT LOW Received sequence count does not match expected sequence count P1: Expected sequence count P2: Received sequence count Received acknowledgment failure report P1: Internal state of MPSoC linux/devices/ploc/PlocMPSoCHelper.h linux/payload/PlocMpsocSpecialComHelper.h
201 12612 12608 0x3144 0x3140 MPSOC_TM_SIZE_ERROR MPSOC_EXE_FAILURE_REPORT LOW No description Received execution failure report P1: Internal state of MPSoC linux/devices/ploc/PlocMPSoCHelper.h linux/payload/PlocMpsocSpecialComHelper.h
202 12613 12609 0x3145 0x3141 MPSOC_TM_CRC_MISSMATCH MPSOC_ACK_INVALID_APID LOW No description Expected acknowledgment report but received space packet with other apid P1: Apid of received space packet P2: Internal state of MPSoC linux/devices/ploc/PlocMPSoCHelper.h linux/payload/PlocMpsocSpecialComHelper.h
203 12700 12610 0x319c 0x3142 TRANSITION_BACK_TO_OFF MPSOC_EXE_INVALID_APID MEDIUM LOW Could not transition properly and went back to ALL OFF Expected execution report but received space packet with other apid P1: Apid of received space packet P2: Internal state of MPSoC mission/devices/PayloadPcduHandler.h linux/payload/PlocMpsocSpecialComHelper.h
204 12701 12611 0x319d 0x3143 NEG_V_OUT_OF_BOUNDS MPSOC_HELPER_SEQ_CNT_MISMATCH MEDIUM LOW P1: 0 -> too low, 1 -> too high P2: Float value Received sequence count does not match expected sequence count P1: Expected sequence count P2: Received sequence count mission/devices/PayloadPcduHandler.h linux/payload/PlocMpsocSpecialComHelper.h
205 12702 12612 0x319e 0x3144 U_DRO_OUT_OF_BOUNDS MPSOC_TM_SIZE_ERROR MEDIUM LOW P1: 0 -> too low, 1 -> too high P2: Float value No description mission/devices/PayloadPcduHandler.h linux/payload/PlocMpsocSpecialComHelper.h
206 12703 12613 0x319f 0x3145 I_DRO_OUT_OF_BOUNDS MPSOC_TM_CRC_MISSMATCH MEDIUM LOW P1: 0 -> too low, 1 -> too high P2: Float value No description mission/devices/PayloadPcduHandler.h linux/payload/PlocMpsocSpecialComHelper.h
207 12704 12614 0x31a0 0x3146 U_X8_OUT_OF_BOUNDS MPSOC_FLASH_READ_PACKET_ERROR MEDIUM LOW P1: 0 -> too low, 1 -> too high P2: Float value No description mission/devices/PayloadPcduHandler.h linux/payload/PlocMpsocSpecialComHelper.h
208 12705 12615 0x31a1 0x3147 I_X8_OUT_OF_BOUNDS MPSOC_FLASH_READ_FAILED MEDIUM LOW P1: 0 -> too low, 1 -> too high P2: Float value No description mission/devices/PayloadPcduHandler.h linux/payload/PlocMpsocSpecialComHelper.h
209 12706 12616 0x31a2 0x3148 U_TX_OUT_OF_BOUNDS MPSOC_FLASH_READ_SUCCESSFUL MEDIUM INFO P1: 0 -> too low, 1 -> too high P2: Float value No description mission/devices/PayloadPcduHandler.h linux/payload/PlocMpsocSpecialComHelper.h
210 12707 12617 0x31a3 0x3149 I_TX_OUT_OF_BOUNDS MPSOC_READ_TIMEOUT MEDIUM LOW P1: 0 -> too low, 1 -> too high P2: Float value No description mission/devices/PayloadPcduHandler.h linux/payload/PlocMpsocSpecialComHelper.h
211 12708 12700 0x31a4 0x319c U_MPA_OUT_OF_BOUNDS TRANSITION_BACK_TO_OFF MEDIUM P1: 0 -> too low, 1 -> too high P2: Float value Could not transition properly and went back to ALL OFF mission/devices/PayloadPcduHandler.h mission/payload/PayloadPcduHandler.h
212 12709 12701 0x31a5 0x319d I_MPA_OUT_OF_BOUNDS NEG_V_OUT_OF_BOUNDS MEDIUM P1: 0 -> too low, 1 -> too high P2: Float value mission/devices/PayloadPcduHandler.h mission/payload/PayloadPcduHandler.h
213 12710 12702 0x31a6 0x319e U_HPA_OUT_OF_BOUNDS U_DRO_OUT_OF_BOUNDS MEDIUM P1: 0 -> too low, 1 -> too high P2: Float value mission/devices/PayloadPcduHandler.h mission/payload/PayloadPcduHandler.h
214 12711 12703 0x31a7 0x319f I_HPA_OUT_OF_BOUNDS I_DRO_OUT_OF_BOUNDS MEDIUM P1: 0 -> too low, 1 -> too high P2: Float value mission/devices/PayloadPcduHandler.h mission/payload/PayloadPcduHandler.h
215 12800 12704 0x3200 0x31a0 TRANSITION_OTHER_SIDE_FAILED U_X8_OUT_OF_BOUNDS HIGH MEDIUM No description P1: 0 -> too low, 1 -> too high P2: Float value mission/system/objects/AcsBoardAssembly.h mission/payload/PayloadPcduHandler.h
216 12801 12705 0x3201 0x31a1 NOT_ENOUGH_DEVICES_DUAL_MODE I_X8_OUT_OF_BOUNDS HIGH MEDIUM No description P1: 0 -> too low, 1 -> too high P2: Float value mission/system/objects/AcsBoardAssembly.h mission/payload/PayloadPcduHandler.h
217 12802 12706 0x3202 0x31a2 POWER_STATE_MACHINE_TIMEOUT U_TX_OUT_OF_BOUNDS MEDIUM No description P1: 0 -> too low, 1 -> too high P2: Float value mission/system/objects/AcsBoardAssembly.h mission/payload/PayloadPcduHandler.h
218 12803 12707 0x3203 0x31a3 SIDE_SWITCH_TRANSITION_NOT_ALLOWED I_TX_OUT_OF_BOUNDS LOW MEDIUM Not implemented, would increase already high complexity. Operator should instead command the assembly off first and then command the assembly on into the desired mode/submode combination P1: 0 -> too low, 1 -> too high P2: Float value mission/system/objects/AcsBoardAssembly.h mission/payload/PayloadPcduHandler.h
219 12900 12708 0x3264 0x31a4 TRANSITION_OTHER_SIDE_FAILED U_MPA_OUT_OF_BOUNDS HIGH MEDIUM No description P1: 0 -> too low, 1 -> too high P2: Float value mission/system/objects/SusAssembly.h mission/payload/PayloadPcduHandler.h
220 12901 12709 0x3265 0x31a5 NOT_ENOUGH_DEVICES_DUAL_MODE I_MPA_OUT_OF_BOUNDS HIGH MEDIUM No description P1: 0 -> too low, 1 -> too high P2: Float value mission/system/objects/SusAssembly.h mission/payload/PayloadPcduHandler.h
221 12902 12710 0x3266 0x31a6 POWER_STATE_MACHINE_TIMEOUT U_HPA_OUT_OF_BOUNDS MEDIUM No description P1: 0 -> too low, 1 -> too high P2: Float value mission/system/objects/SusAssembly.h mission/payload/PayloadPcduHandler.h
222 12903 12711 0x3267 0x31a7 SIDE_SWITCH_TRANSITION_NOT_ALLOWED I_HPA_OUT_OF_BOUNDS LOW MEDIUM Not implemented, would increase already high complexity. Operator should instead command the assembly off first and then command the assembly on into the desired mode/submode combination P1: 0 -> too low, 1 -> too high P2: Float value mission/system/objects/SusAssembly.h mission/payload/PayloadPcduHandler.h
223 13000 12800 0x32c8 0x3200 CHILDREN_LOST_MODE TRANSITION_OTHER_SIDE_FAILED MEDIUM HIGH No description mission/system/objects/TcsBoardAssembly.h mission/system/acs/AcsBoardAssembly.h
224 13100 12801 0x332c 0x3201 GPS_FIX_CHANGE NOT_ENOUGH_DEVICES_DUAL_MODE INFO HIGH Fix has changed. P1: Old fix. P2: New fix 0: Not seen, 1: No Fix, 2: 2D-Fix, 3: 3D-Fix No description mission/devices/devicedefinitions/GPSDefinitions.h mission/system/acs/AcsBoardAssembly.h
225 13101 12802 0x332d 0x3202 CANT_GET_FIX POWER_STATE_MACHINE_TIMEOUT LOW MEDIUM Could not get fix in maximum allowed time. P1: Maximum allowed time to get a fix after the GPS was switched on. No description mission/devices/devicedefinitions/GPSDefinitions.h mission/system/acs/AcsBoardAssembly.h
226 13200 12803 0x3390 0x3203 P60_BOOT_COUNT SIDE_SWITCH_TRANSITION_NOT_ALLOWED INFO LOW P60 boot count is broadcasted once at SW startup. P1: Boot count Not implemented, would increase already high complexity. Operator should instead command the assembly off first and then command the assembly on into the desired mode/submode combination mission/devices/P60DockHandler.h mission/system/acs/AcsBoardAssembly.h
227 13201 12804 0x3391 0x3204 BATT_MODE DIRECT_TRANSITION_TO_DUAL_OTHER_GPS_FAULTY INFO MEDIUM Battery mode is broadcasted at startup. P1: Mode This is triggered when the assembly would have normally switched the board side, but the GPS device of the other side was marked faulty. P1: Current submode. mission/devices/P60DockHandler.h mission/system/acs/AcsBoardAssembly.h
228 13202 12900 0x3392 0x3264 BATT_MODE_CHANGED TRANSITION_OTHER_SIDE_FAILED MEDIUM HIGH Battery mode has changed. P1: Old mode. P2: New mode No description mission/devices/P60DockHandler.h mission/system/acs/SusAssembly.h
229 13600 12901 0x3520 0x3265 SUPV_UPDATE_FAILED NOT_ENOUGH_DEVICES_DUAL_MODE LOW HIGH update failed No description linux/devices/ploc/PlocSupvUartMan.h mission/system/acs/SusAssembly.h
230 13601 12902 0x3521 0x3266 SUPV_UPDATE_SUCCESSFUL POWER_STATE_MACHINE_TIMEOUT LOW MEDIUM update successful No description linux/devices/ploc/PlocSupvUartMan.h mission/system/acs/SusAssembly.h
231 13602 12903 0x3522 0x3267 SUPV_CONTINUE_UPDATE_FAILED SIDE_SWITCH_TRANSITION_NOT_ALLOWED LOW Continue update command failed Not implemented, would increase already high complexity. Operator should instead command the assembly off first and then command the assembly on into the desired mode/submode combination linux/devices/ploc/PlocSupvUartMan.h mission/system/acs/SusAssembly.h
232 13603 13000 0x3523 0x32c8 SUPV_CONTINUE_UPDATE_SUCCESSFUL CHILDREN_LOST_MODE LOW MEDIUM Continue update command successful No description linux/devices/ploc/PlocSupvUartMan.h mission/system/tcs/TcsBoardAssembly.h
233 13604 13100 0x3524 0x332c TERMINATED_UPDATE_PROCEDURE GPS_FIX_CHANGE LOW INFO Terminated update procedure by command Fix has changed. P1: Old fix. P2: New fix 0: Not seen, 1: No Fix, 2: 2D-Fix, 3: 3D-Fix linux/devices/ploc/PlocSupvUartMan.h mission/acs/archive/GPSDefinitions.h
234 13605 13101 0x3525 0x332d SUPV_EVENT_BUFFER_REQUEST_SUCCESSFUL CANT_GET_FIX LOW Requesting event buffer was successful Could not get fix in maximum allowed time. P1: Maximum allowed time to get a fix after the GPS was switched on. linux/devices/ploc/PlocSupvUartMan.h mission/acs/archive/GPSDefinitions.h
235 13606 13200 0x3526 0x3390 SUPV_EVENT_BUFFER_REQUEST_FAILED P60_BOOT_COUNT LOW INFO Requesting event buffer failed P60 boot count is broadcasted once at SW startup. P1: Boot count linux/devices/ploc/PlocSupvUartMan.h mission/power/P60DockHandler.h
236 13607 13201 0x3527 0x3391 SUPV_EVENT_BUFFER_REQUEST_TERMINATED BATT_MODE LOW INFO Terminated event buffer request by command P1: Number of packets read before process was terminated Battery mode is broadcasted at startup. P1: Mode linux/devices/ploc/PlocSupvUartMan.h mission/power/P60DockHandler.h
237 13608 13202 0x3528 0x3392 SUPV_MEM_CHECK_OK BATT_MODE_CHANGED INFO MEDIUM No description Battery mode has changed. P1: Old mode. P2: New mode linux/devices/ploc/PlocSupvUartMan.h mission/power/P60DockHandler.h
238 13609 13600 0x3529 0x3520 SUPV_MEM_CHECK_FAIL SUPV_UPDATE_FAILED INFO LOW No description update failed linux/devices/ploc/PlocSupvUartMan.h linux/payload/PlocSupvUartMan.h
239 13616 13601 0x3530 0x3521 SUPV_SENDING_COMMAND_FAILED SUPV_UPDATE_SUCCESSFUL LOW No description update successful linux/devices/ploc/PlocSupvUartMan.h linux/payload/PlocSupvUartMan.h
240 13617 13602 0x3531 0x3522 SUPV_HELPER_REQUESTING_REPLY_FAILED SUPV_CONTINUE_UPDATE_FAILED LOW Request receive message of communication interface failed P1: Return value returned by the communication interface requestReceiveMessage function P2: Internal state of supervisor helper Continue update command failed linux/devices/ploc/PlocSupvUartMan.h linux/payload/PlocSupvUartMan.h
241 13618 13603 0x3532 0x3523 SUPV_HELPER_READING_REPLY_FAILED SUPV_CONTINUE_UPDATE_SUCCESSFUL LOW Reading receive message of communication interface failed P1: Return value returned by the communication interface readingReceivedMessage function P2: Internal state of supervisor helper Continue update command successful linux/devices/ploc/PlocSupvUartMan.h linux/payload/PlocSupvUartMan.h
242 13619 13604 0x3533 0x3524 SUPV_MISSING_ACK TERMINATED_UPDATE_PROCEDURE LOW Did not receive acknowledgement report P1: Number of bytes missing P2: Internal state of MPSoC helper Terminated update procedure by command linux/devices/ploc/PlocSupvUartMan.h linux/payload/PlocSupvUartMan.h
243 13620 13605 0x3534 0x3525 SUPV_MISSING_EXE SUPV_EVENT_BUFFER_REQUEST_SUCCESSFUL LOW Supervisor did not receive execution report P1: Number of bytes missing P2: Internal state of supervisor helper Requesting event buffer was successful linux/devices/ploc/PlocSupvUartMan.h linux/payload/PlocSupvUartMan.h
244 13621 13606 0x3535 0x3526 SUPV_ACK_FAILURE_REPORT SUPV_EVENT_BUFFER_REQUEST_FAILED LOW Supervisor received acknowledgment failure report P1: Internal state of supervisor helper Requesting event buffer failed linux/devices/ploc/PlocSupvUartMan.h linux/payload/PlocSupvUartMan.h
245 13622 13607 0x3536 0x3527 SUPV_EXE_FAILURE_REPORT SUPV_EVENT_BUFFER_REQUEST_TERMINATED LOW Execution report failure P1: Terminated event buffer request by command P1: Number of packets read before process was terminated linux/devices/ploc/PlocSupvUartMan.h linux/payload/PlocSupvUartMan.h
246 13623 13608 0x3537 0x3528 SUPV_ACK_INVALID_APID SUPV_MEM_CHECK_OK LOW INFO Supervisor expected acknowledgment report but received space packet with other apid P1: Apid of received space packet P2: Internal state of supervisor helper No description linux/devices/ploc/PlocSupvUartMan.h linux/payload/PlocSupvUartMan.h
247 13624 13609 0x3538 0x3529 SUPV_EXE_INVALID_APID SUPV_MEM_CHECK_FAIL LOW INFO Supervisor helper expected execution report but received space packet with other apid P1: Apid of received space packet P2: Internal state of supervisor helper No description linux/devices/ploc/PlocSupvUartMan.h linux/payload/PlocSupvUartMan.h
248 13625 13616 0x3539 0x3530 ACK_RECEPTION_FAILURE SUPV_SENDING_COMMAND_FAILED LOW Failed to receive acknowledgment report P1: Return value P2: Apid of command for which the reception of the acknowledgment report failed No description linux/devices/ploc/PlocSupvUartMan.h linux/payload/PlocSupvUartMan.h
249 13626 13617 0x353a 0x3531 EXE_RECEPTION_FAILURE SUPV_HELPER_REQUESTING_REPLY_FAILED LOW Failed to receive execution report P1: Return value P2: Apid of command for which the reception of the execution report failed Request receive message of communication interface failed P1: Return value returned by the communication interface requestReceiveMessage function P2: Internal state of supervisor helper linux/devices/ploc/PlocSupvUartMan.h linux/payload/PlocSupvUartMan.h
250 13627 13618 0x353b 0x3532 WRITE_MEMORY_FAILED SUPV_HELPER_READING_REPLY_FAILED LOW Update procedure failed when sending packet. P1: First byte percent, third and fourth byte Sequence Count, P2: Bytes written Reading receive message of communication interface failed P1: Return value returned by the communication interface readingReceivedMessage function P2: Internal state of supervisor helper linux/devices/ploc/PlocSupvUartMan.h linux/payload/PlocSupvUartMan.h
251 13628 13619 0x353c 0x3533 SUPV_REPLY_SIZE_MISSMATCH SUPV_MISSING_ACK LOW No description Did not receive acknowledgement report P1: Number of bytes missing P2: Internal state of MPSoC helper linux/devices/ploc/PlocSupvUartMan.h linux/payload/PlocSupvUartMan.h
252 13629 13620 0x353d 0x3534 SUPV_REPLY_CRC_MISSMATCH SUPV_MISSING_EXE LOW No description Supervisor did not receive execution report P1: Number of bytes missing P2: Internal state of supervisor helper linux/devices/ploc/PlocSupvUartMan.h linux/payload/PlocSupvUartMan.h
253 13630 13621 0x353e 0x3535 SUPV_UPDATE_PROGRESS SUPV_ACK_FAILURE_REPORT INFO LOW Will be triggered every 5 percent of the update progress. P1: First byte percent, third and fourth byte Sequence Count, P2: Bytes written Supervisor received acknowledgment failure report P1: Internal state of supervisor helper linux/devices/ploc/PlocSupvUartMan.h linux/payload/PlocSupvUartMan.h
254 13631 13622 0x353f 0x3536 HDLC_FRAME_REMOVAL_ERROR SUPV_EXE_FAILURE_REPORT INFO LOW No description Execution report failure P1: linux/devices/ploc/PlocSupvUartMan.h linux/payload/PlocSupvUartMan.h
255 13632 13623 0x3540 0x3537 HDLC_CRC_ERROR SUPV_ACK_INVALID_APID INFO LOW No description Supervisor expected acknowledgment report but received space packet with other apid P1: Apid of received space packet P2: Internal state of supervisor helper linux/devices/ploc/PlocSupvUartMan.h linux/payload/PlocSupvUartMan.h
256 13700 13624 0x3584 0x3538 FDIR_REACTION_IGNORED SUPV_EXE_INVALID_APID MEDIUM LOW No description Supervisor helper expected execution report but received space packet with other apid P1: Apid of received space packet P2: Internal state of supervisor helper mission/devices/devicedefinitions/SyrlinksDefinitions.h linux/payload/PlocSupvUartMan.h
257 13701 13625 0x3585 0x3539 TX_ON ACK_RECEPTION_FAILURE INFO LOW Transmitter is on now. P1: Submode, P2: Current default datarate. Failed to receive acknowledgment report P1: Return value P2: Apid of command for which the reception of the acknowledgment report failed mission/devices/devicedefinitions/SyrlinksDefinitions.h linux/payload/PlocSupvUartMan.h
258 13702 13626 0x3586 0x353a TX_OFF EXE_RECEPTION_FAILURE INFO LOW Transmitter is off now. Failed to receive execution report P1: Return value P2: Apid of command for which the reception of the execution report failed mission/devices/devicedefinitions/SyrlinksDefinitions.h linux/payload/PlocSupvUartMan.h
259 13800 13627 0x35e8 0x353b MISSING_PACKET WRITE_MEMORY_FAILED LOW No description Update procedure failed when sending packet. P1: First byte percent, third and fourth byte Sequence Count, P2: Bytes written mission/devices/devicedefinitions/ScexDefinitions.h linux/payload/PlocSupvUartMan.h
260 13801 13628 0x35e9 0x353c EXPERIMENT_TIMEDOUT SUPV_REPLY_SIZE_MISSMATCH LOW No description mission/devices/devicedefinitions/ScexDefinitions.h linux/payload/PlocSupvUartMan.h
261 13802 13629 0x35ea 0x353d MULTI_PACKET_COMMAND_DONE SUPV_REPLY_CRC_MISSMATCH INFO LOW No description mission/devices/devicedefinitions/ScexDefinitions.h linux/payload/PlocSupvUartMan.h
262 13630 0x353e SUPV_UPDATE_PROGRESS INFO Will be triggered every 5 percent of the update progress. P1: First byte percent, third and fourth byte Sequence Count, P2: Bytes written linux/payload/PlocSupvUartMan.h
263 13631 0x353f HDLC_FRAME_REMOVAL_ERROR INFO No description linux/payload/PlocSupvUartMan.h
264 13632 0x3540 HDLC_CRC_ERROR INFO No description linux/payload/PlocSupvUartMan.h
265 13701 0x3585 TX_ON INFO Transmitter is on now. P1: Submode, P2: Current default datarate. mission/com/syrlinksDefs.h
266 13702 0x3586 TX_OFF INFO Transmitter is off now. mission/com/syrlinksDefs.h
267 13800 0x35e8 MISSING_PACKET LOW No description mission/payload/scexHelpers.h
268 13801 0x35e9 EXPERIMENT_TIMEDOUT LOW No description mission/payload/scexHelpers.h
269 13802 0x35ea MULTI_PACKET_COMMAND_DONE INFO No description mission/payload/scexHelpers.h
270 13803 0x35eb FS_UNUSABLE LOW No description mission/payload/scexHelpers.h
271 13901 0x364d SET_CONFIGFILEVALUE_FAILED MEDIUM No description mission/utility/GlobalConfigHandler.h
272 13902 0x364e GET_CONFIGFILEVALUE_FAILED MEDIUM No description mission/utility/GlobalConfigHandler.h
273 13903 0x364f INSERT_CONFIGFILEVALUE_FAILED MEDIUM No description mission/utility/GlobalConfigHandler.h
274 13904 0x3650 WRITE_CONFIGFILE_FAILED MEDIUM No description mission/utility/GlobalConfigHandler.h
275 13905 0x3651 READ_CONFIGFILE_FAILED MEDIUM No description mission/utility/GlobalConfigHandler.h
276 14000 0x36b0 ALLOC_FAILURE MEDIUM No description bsp_q7s/core/CoreController.h mission/sysDefs.h
277 14001 0x36b1 REBOOT_SW LOW Software reboot occurred. Can also be a systemd reboot. P1: Current Chip, P2: Current Copy bsp_q7s/core/CoreController.h mission/sysDefs.h
278 14002 0x36b2 REBOOT_MECHANISM_TRIGGERED MEDIUM The reboot mechanism was triggered. P1: First 16 bits: Last Chip, Last 16 bits: Last Copy, P2: Each byte is the respective reboot count for the slots bsp_q7s/core/CoreController.h mission/sysDefs.h
279 14003 0x36b3 REBOOT_HW MEDIUM No description bsp_q7s/core/CoreController.h mission/sysDefs.h
280 14004 0x36b4 NO_SD_CARD_ACTIVE HIGH No SD card was active. Core controller will attempt to re-initialize a SD card. bsp_q7s/core/CoreController.h mission/sysDefs.h
281 14005 0x36b5 VERSION_INFO INFO P1: Byte 0: Major, Byte 1: Minor, Byte 2: Patch, Byte 3: Has Git Hash P2: First four letters of Git SHA is the last byte of P1 is set. bsp_q7s/core/CoreController.h mission/sysDefs.h
282 14006 0x36b6 CURRENT_IMAGE_INFO INFO P1: Current Chip, P2: Current Copy bsp_q7s/core/CoreController.h mission/sysDefs.h
283 14007 0x36b7 REBOOT_COUNTER INFO Total reboot counter, which is the sum of the boot count of all individual images. bsp_q7s/core/CoreController.h mission/sysDefs.h
284 14008 0x36b8 INDIVIDUAL_BOOT_COUNTS INFO Get the boot count of the individual images. P1: First 16 bits boot count of image 0 0, last 16 bits boot count of image 0 1. P2: First 16 bits boot count of image 1 0, last 16 bits boot count of image 1 1. bsp_q7s/core/CoreController.h mission/sysDefs.h
285 14010 0x36ba I2C_UNAVAILABLE_REBOOT TRYING_I2C_RECOVERY MEDIUM HIGH No description I2C is unavailable. Trying recovery of I2C bus by power cycling all I2C devices. bsp_q7s/core/CoreController.h mission/sysDefs.h
286 14100 14011 0x3714 0x36bb NO_VALID_SENSOR_TEMPERATURE I2C_REBOOT MEDIUM HIGH No description I2C is unavailable. Recovery did not work, performing full reboot. mission/controller/ThermalController.h mission/sysDefs.h
287 14101 14012 0x3715 0x36bc NO_HEALTHY_HEATER_AVAILABLE PDEC_REBOOT MEDIUM HIGH No description PDEC recovery through reset was not possible, performing full reboot. mission/controller/ThermalController.h mission/sysDefs.h
288 14102 14013 0x3716 0x36bd SYRLINKS_OVERHEATING FIRMWARE_INFO HIGH INFO No description Version information of the firmware (not OBSW). P1: Byte 0: Major, Byte 1: Minor, Byte 2: Patch, Byte 3: Has Git Hash P2: First four letters of Git SHA is the last byte of P1 is set. mission/controller/ThermalController.h mission/sysDefs.h
289 14103 14014 0x3717 0x36be PLOC_OVERHEATING ACTIVE_SD_INFO HIGH INFO No description Active SD card info. SD States: 0: OFF, 1: ON, 2: MOUNTED. P1: Active SD Card Index, 0 if none is active P2: First two bytes: SD state of SD card 0, last two bytes SD state of SD card 1 mission/controller/ThermalController.h mission/sysDefs.h
290 14104 14100 0x3718 0x3714 OBC_OVERHEATING NO_VALID_SENSOR_TEMPERATURE HIGH MEDIUM No description mission/controller/ThermalController.h mission/controller/tcsDefs.h
291 14105 14101 0x3719 0x3715 HPA_OVERHEATING NO_HEALTHY_HEATER_AVAILABLE HIGH MEDIUM No description mission/controller/ThermalController.h mission/controller/tcsDefs.h
292 14106 14102 0x371a 0x3716 PLPCDU_OVERHEATING SYRLINKS_OVERHEATING HIGH No description mission/controller/ThermalController.h mission/controller/tcsDefs.h
293 14201 14104 0x3779 0x3718 TX_TIMER_EXPIRED OBC_OVERHEATING INFO HIGH The transmit timer to protect the Syrlinks expired P1: The current timer value No description mission/system/objects/ComSubsystem.h mission/controller/tcsDefs.h
294 14202 14105 0x377a 0x3719 BIT_LOCK_TX_ON CAMERA_OVERHEATING INFO HIGH Transmitter will be turned on due to detection of bitlock No description mission/system/objects/ComSubsystem.h mission/controller/tcsDefs.h
295 14106 0x371a PCDU_SYSTEM_OVERHEATING HIGH No description mission/controller/tcsDefs.h
296 14107 0x371b HEATER_NOT_OFF_FOR_OFF_MODE MEDIUM No description mission/controller/tcsDefs.h
297 14108 0x371c MGT_OVERHEATING HIGH No description mission/controller/tcsDefs.h
298 14109 0x371d TCS_SWITCHING_HEATER_ON INFO P1: Module index. P2: Heater index mission/controller/tcsDefs.h
299 14110 0x371e TCS_SWITCHING_HEATER_OFF INFO P1: Module index. P2: Heater index mission/controller/tcsDefs.h
300 14111 0x371f TCS_HEATER_MAX_BURN_TIME_REACHED MEDIUM P1: Heater index. P2: Maximum burn time for heater. mission/controller/tcsDefs.h
301 14201 0x3779 TX_TIMER_EXPIRED INFO The transmit timer to protect the Syrlinks expired P1: The current timer value mission/system/com/ComSubsystem.h
302 14202 0x377a BIT_LOCK_TX_ON INFO Transmitter will be turned on due to detection of bitlock mission/system/com/ComSubsystem.h
303 14300 0x37dc POSSIBLE_FILE_CORRUPTION LOW P1: Result code of TM packet parser. P2: Timestamp of possibly corrupt file as a unix timestamp. mission/persistentTmStoreDefs.h
304 14301 0x37dd FILE_TOO_LARGE LOW File in store too large. P1: Detected file size P2: Allowed file size mission/persistentTmStoreDefs.h
305 14302 0x37de BUSY_DUMPING_EVENT INFO No description mission/persistentTmStoreDefs.h
14303 0x37df DUMP_WAS_CANCELLED LOW Dump was cancelled. P1: Object ID of store. mission/persistentTmStoreDefs.h
306 14305 0x37e1 DUMP_OK_STORE_DONE INFO P1: Number of dumped packets. P2: Total dumped bytes. mission/persistentTmStoreDefs.h
307 14306 0x37e2 DUMP_NOK_STORE_DONE INFO P1: Number of dumped packets. P2: Total dumped bytes. mission/persistentTmStoreDefs.h
308 14307 0x37e3 DUMP_MISC_STORE_DONE INFO P1: Number of dumped packets. P2: Total dumped bytes. mission/persistentTmStoreDefs.h
309 14308 0x37e4 DUMP_HK_STORE_DONE INFO P1: Number of dumped packets. P2: Total dumped bytes. mission/persistentTmStoreDefs.h
310 14309 0x37e5 DUMP_CFDP_STORE_DONE INFO P1: Number of dumped packets. P2: Total dumped bytes. mission/persistentTmStoreDefs.h
311 14310 0x37e6 DUMP_OK_CANCELLED LOW P1: Number of dumped packets. P2: Total dumped bytes. mission/persistentTmStoreDefs.h
312 14311 0x37e7 DUMP_NOK_CANCELLED LOW P1: Number of dumped packets. P2: Total dumped bytes. mission/persistentTmStoreDefs.h
313 14312 0x37e8 DUMP_MISC_CANCELLED LOW P1: Number of dumped packets. P2: Total dumped bytes. mission/persistentTmStoreDefs.h
314 14313 0x37e9 DUMP_HK_CANCELLED LOW P1: Number of dumped packets. P2: Total dumped bytes. mission/persistentTmStoreDefs.h
315 14314 0x37ea DUMP_CFDP_CANCELLED LOW P1: Number of dumped packets. P2: Total dumped bytes. mission/persistentTmStoreDefs.h
316 14500 0x38a4 TEMPERATURE_ALL_ONES_START MEDIUM Detected invalid values, starting invalid message counting mission/acs/SusHandler.h
317 14501 0x38a5 TEMPERATURE_ALL_ONES_RECOVERY INFO Detected valid values for a prolonged time again, resetting all counters. P1: Number of periods with invalid messages. P2: Maximum invalid message counter. mission/acs/SusHandler.h
318 14600 0x3908 FAULT_HANDLER_TRIGGERED LOW P1: CFDP fault handler code. P2: CFDP condition code. mission/cfdp/defs.h

View File

@ -1,7 +1,9 @@
0x42694269;TEST_TASK
0x43000002;ACS_CONTROLLER
0x43000003;CORE_CONTROLLER
0x43000004;POWER_CONTROLLER
0x43000006;GLOBAL_JSON_CFG
0x43000007;XIPHOS_WDT
0x43400001;THERMAL_CONTROLLER
0x44000001;DUMMY_HANDLER
0x44120006;MGM_0_LIS3_HANDLER
@ -30,6 +32,8 @@
0x44120350;RW4
0x44130001;STAR_TRACKER
0x44130045;GPS_CONTROLLER
0x44130046;GPS_0_HEALTH_DEV
0x44130047;GPS_1_HEALTH_DEV
0x44140013;IMTQ_POLLING
0x44140014;IMTQ_HANDLER
0x442000A1;PCDU_HANDLER
@ -42,7 +46,7 @@
0x443200A5;RAD_SENSOR
0x44330000;PLOC_UPDATER
0x44330001;PLOC_MEMORY_DUMPER
0x44330002;STR_HELPER
0x44330002;STR_COM_IF
0x44330003;PLOC_MPSOC_HELPER
0x44330004;AXI_PTME_CONFIG
0x44330005;PTME_CONFIG
@ -78,6 +82,7 @@
0x44420030;RTD_14_IC17_TCS_BOARD
0x44420031;RTD_15_IC18_IMTQ
0x445300A3;SYRLINKS_HANDLER
0x445300A4;SYRLINKS_COM_HANDLER
0x49000001;ARDUINO_COM_IF
0x49000002;DUMMY_COM_IF
0x49010006;SCEX_UART_READER
@ -148,11 +153,13 @@
0x73000102;CFDP_TM_FUNNEL
0x73000205;CFDP_HANDLER
0x73000206;CFDP_DISTRIBUTOR
0x73000207;CFDP_FAULT_HANDLER
0x73010000;EIVE_SYSTEM
0x73010001;ACS_SUBSYSTEM
0x73010002;PL_SUBSYSTEM
0x73010003;TCS_SUBSYSTEM
0x73010004;COM_SUBSYSTEM
0x73010005;EPS_SUBSYSTEM
0x73020001;MISC_TM_STORE
0x73020002;OK_TM_STORE
0x73020003;NOT_OK_TM_STORE
@ -163,7 +170,6 @@
0x73040002;HK_STORE_AND_TM_TASK
0x73040003;CFDP_STORE_AND_TM_TASK
0x73040004;DOWNLINK_RAM_STORE
0x73500000;CCSDS_IP_CORE_BRIDGE
0x90000003;THERMAL_TEMP_INSERTER
0xCAFECAFE;DUMMY_INTERFACE
0xFFFFFFFF;NO_OBJECT

1 0x42694269 TEST_TASK
2 0x43000002 ACS_CONTROLLER
3 0x43000003 CORE_CONTROLLER
4 0x43000004 POWER_CONTROLLER
5 0x43000006 GLOBAL_JSON_CFG
6 0x43000007 XIPHOS_WDT
7 0x43400001 THERMAL_CONTROLLER
8 0x44000001 DUMMY_HANDLER
9 0x44120006 MGM_0_LIS3_HANDLER
32 0x44120350 RW4
33 0x44130001 STAR_TRACKER
34 0x44130045 GPS_CONTROLLER
35 0x44130046 GPS_0_HEALTH_DEV
36 0x44130047 GPS_1_HEALTH_DEV
37 0x44140013 IMTQ_POLLING
38 0x44140014 IMTQ_HANDLER
39 0x442000A1 PCDU_HANDLER
46 0x443200A5 RAD_SENSOR
47 0x44330000 PLOC_UPDATER
48 0x44330001 PLOC_MEMORY_DUMPER
49 0x44330002 STR_HELPER STR_COM_IF
50 0x44330003 PLOC_MPSOC_HELPER
51 0x44330004 AXI_PTME_CONFIG
52 0x44330005 PTME_CONFIG
82 0x44420030 RTD_14_IC17_TCS_BOARD
83 0x44420031 RTD_15_IC18_IMTQ
84 0x445300A3 SYRLINKS_HANDLER
85 0x445300A4 SYRLINKS_COM_HANDLER
86 0x49000001 ARDUINO_COM_IF
87 0x49000002 DUMMY_COM_IF
88 0x49010006 SCEX_UART_READER
153 0x73000102 CFDP_TM_FUNNEL
154 0x73000205 CFDP_HANDLER
155 0x73000206 CFDP_DISTRIBUTOR
156 0x73000207 CFDP_FAULT_HANDLER
157 0x73010000 EIVE_SYSTEM
158 0x73010001 ACS_SUBSYSTEM
159 0x73010002 PL_SUBSYSTEM
160 0x73010003 TCS_SUBSYSTEM
161 0x73010004 COM_SUBSYSTEM
162 0x73010005 EPS_SUBSYSTEM
163 0x73020001 MISC_TM_STORE
164 0x73020002 OK_TM_STORE
165 0x73020003 NOT_OK_TM_STORE
170 0x73040002 HK_STORE_AND_TM_TASK
171 0x73040003 CFDP_STORE_AND_TM_TASK
172 0x73040004 DOWNLINK_RAM_STORE
0x73500000 CCSDS_IP_CORE_BRIDGE
173 0x90000003 THERMAL_TEMP_INSERTER
174 0xCAFECAFE DUMMY_INTERFACE
175 0xFFFFFFFF NO_OBJECT

View File

@ -190,8 +190,8 @@ Full ID (hex); Name; Description; Unique ID; Subsytem Name; File Path
0x2207;TMF_AllDeleted;No description;7;TM_STORE_FRONTEND_IF;fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h
0x2208;TMF_InvalidData;No description;8;TM_STORE_FRONTEND_IF;fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h
0x2209;TMF_NotReady;No description;9;TM_STORE_FRONTEND_IF;fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h
0x2401;MT_NoPacketFound;No description;1;MATCH_TREE_CLASS;fsfw/src/fsfw/globalfunctions/DleParser.h
0x2402;MT_PossiblePacketLoss;No description;2;MATCH_TREE_CLASS;fsfw/src/fsfw/globalfunctions/DleParser.h
0x2401;MT_TooDetailedRequest;No description;1;MATCH_TREE_CLASS;fsfw/src/fsfw/globalfunctions/matching/MatchTree.h
0x2402;MT_TooGeneralRequest;No description;2;MATCH_TREE_CLASS;fsfw/src/fsfw/globalfunctions/matching/MatchTree.h
0x2403;MT_NoMatch;No description;3;MATCH_TREE_CLASS;fsfw/src/fsfw/globalfunctions/matching/MatchTree.h
0x2404;MT_Full;No description;4;MATCH_TREE_CLASS;fsfw/src/fsfw/globalfunctions/matching/MatchTree.h
0x2405;MT_NewNodeCreated;No description;5;MATCH_TREE_CLASS;fsfw/src/fsfw/globalfunctions/matching/MatchTree.h
@ -210,6 +210,7 @@ Full ID (hex); Name; Description; Unique ID; Subsytem Name; File Path
0x27a8;DHI_NoReplyExpected;No description;168;DEVICE_HANDLER_IF;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
0x27a9;DHI_NonOpTemperature;No description;169;DEVICE_HANDLER_IF;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
0x27aa;DHI_CommandNotImplemented;No description;170;DEVICE_HANDLER_IF;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
0x27ab;DHI_NonOpStateOfCharge;No description;171;DEVICE_HANDLER_IF;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
0x27b0;DHI_ChecksumError;No description;176;DEVICE_HANDLER_IF;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
0x27b1;DHI_LengthMissmatch;No description;177;DEVICE_HANDLER_IF;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
0x27b2;DHI_InvalidData;No description;178;DEVICE_HANDLER_IF;fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
@ -321,166 +322,205 @@ Full ID (hex); Name; Description; Unique ID; Subsytem Name; File Path
0x3404;DC_InvalidCookieType;No description;4;DEVICE_COMMUNICATION_IF;fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h
0x3405;DC_NotActive;No description;5;DEVICE_COMMUNICATION_IF;fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h
0x3406;DC_TooMuchData;No description;6;DEVICE_COMMUNICATION_IF;fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h
0x3601;CFDP_InvalidTlvType;No description;1;CFDP;fsfw/src/fsfw/cfdp/definitions.h
0x3602;CFDP_InvalidDirectiveField;No description;2;CFDP;fsfw/src/fsfw/cfdp/definitions.h
0x3603;CFDP_InvalidPduDatafieldLen;No description;3;CFDP;fsfw/src/fsfw/cfdp/definitions.h
0x3604;CFDP_InvalidAckDirectiveFields;No description;4;CFDP;fsfw/src/fsfw/cfdp/definitions.h
0x3605;CFDP_MetadataCantParseOptions;No description;5;CFDP;fsfw/src/fsfw/cfdp/definitions.h
0x3606;CFDP_NakCantParseOptions;No description;6;CFDP;fsfw/src/fsfw/cfdp/definitions.h
0x3607;CFDP_FinishedCantParseFsResponses;No description;7;CFDP;fsfw/src/fsfw/cfdp/definitions.h
0x3608;CFDP_FilestoreRequiresSecondFile;No description;8;CFDP;fsfw/src/fsfw/cfdp/definitions.h
0x3609;CFDP_FilestoreResponseCantParseFsMessage;No description;9;CFDP;fsfw/src/fsfw/cfdp/definitions.h
0x360a;CFDP_InvalidPduFormat;No description;10;CFDP;fsfw/src/fsfw/cfdp/definitions.h
0x3701;TSI_BadTimestamp;No description;1;TIME_STAMPER_IF;fsfw/src/fsfw/timemanager/TimeStampIF.h
0x38a1;SGP4_InvalidEccentricity;No description;161;SGP4PROPAGATOR_CLASS;fsfw/src/fsfw/coordinates/Sgp4Propagator.h
0x38a2;SGP4_InvalidMeanMotion;No description;162;SGP4PROPAGATOR_CLASS;fsfw/src/fsfw/coordinates/Sgp4Propagator.h
0x38a3;SGP4_InvalidPerturbationElements;No description;163;SGP4PROPAGATOR_CLASS;fsfw/src/fsfw/coordinates/Sgp4Propagator.h
0x38a4;SGP4_InvalidSemiLatusRectum;No description;164;SGP4PROPAGATOR_CLASS;fsfw/src/fsfw/coordinates/Sgp4Propagator.h
0x38a5;SGP4_InvalidEpochElements;No description;165;SGP4PROPAGATOR_CLASS;fsfw/src/fsfw/coordinates/Sgp4Propagator.h
0x38a6;SGP4_SatelliteHasDecayed;No description;166;SGP4PROPAGATOR_CLASS;fsfw/src/fsfw/coordinates/Sgp4Propagator.h
0x38b1;SGP4_TleTooOld;No description;177;SGP4PROPAGATOR_CLASS;fsfw/src/fsfw/coordinates/Sgp4Propagator.h
0x38b2;SGP4_TleNotInitialized;No description;178;SGP4PROPAGATOR_CLASS;fsfw/src/fsfw/coordinates/Sgp4Propagator.h
0x3901;MUX_NotEnoughResources;No description;1;MUTEX_IF;fsfw/src/fsfw/ipc/MutexIF.h
0x3902;MUX_InsufficientMemory;No description;2;MUTEX_IF;fsfw/src/fsfw/ipc/MutexIF.h
0x3903;MUX_NoPrivilege;No description;3;MUTEX_IF;fsfw/src/fsfw/ipc/MutexIF.h
0x3904;MUX_WrongAttributeSetting;No description;4;MUTEX_IF;fsfw/src/fsfw/ipc/MutexIF.h
0x3905;MUX_MutexAlreadyLocked;No description;5;MUTEX_IF;fsfw/src/fsfw/ipc/MutexIF.h
0x3906;MUX_MutexNotFound;No description;6;MUTEX_IF;fsfw/src/fsfw/ipc/MutexIF.h
0x3907;MUX_MutexMaxLocks;No description;7;MUTEX_IF;fsfw/src/fsfw/ipc/MutexIF.h
0x3908;MUX_CurrThreadAlreadyOwnsMutex;No description;8;MUTEX_IF;fsfw/src/fsfw/ipc/MutexIF.h
0x3909;MUX_CurrThreadDoesNotOwnMutex;No description;9;MUTEX_IF;fsfw/src/fsfw/ipc/MutexIF.h
0x390a;MUX_MutexTimeout;No description;10;MUTEX_IF;fsfw/src/fsfw/ipc/MutexIF.h
0x390b;MUX_MutexInvalidId;No description;11;MUTEX_IF;fsfw/src/fsfw/ipc/MutexIF.h
0x390c;MUX_MutexDestroyedWhileWaiting;No description;12;MUTEX_IF;fsfw/src/fsfw/ipc/MutexIF.h
0x3a01;MQI_Empty;No description;1;MESSAGE_QUEUE_IF;fsfw/src/fsfw/ipc/MessageQueueIF.h
0x3a02;MQI_Full;No space left for more messages;2;MESSAGE_QUEUE_IF;fsfw/src/fsfw/ipc/MessageQueueIF.h
0x3a03;MQI_NoReplyPartner;Returned if a reply method was called without partner;3;MESSAGE_QUEUE_IF;fsfw/src/fsfw/ipc/MessageQueueIF.h
0x3a04;MQI_DestinationInvalid;Returned if the target destination is invalid.;4;MESSAGE_QUEUE_IF;fsfw/src/fsfw/ipc/MessageQueueIF.h
0x3b00;SPH_ConnBroken;No description;0;SEMAPHORE_IF;fsfw/src/fsfw/osal/common/TcpTmTcServer.h
0x3b01;SPH_SemaphoreTimeout;No description;1;SEMAPHORE_IF;fsfw/src/fsfw/tasks/SemaphoreIF.h
0x3b02;SPH_SemaphoreNotOwned;No description;2;SEMAPHORE_IF;fsfw/src/fsfw/tasks/SemaphoreIF.h
0x3b03;SPH_SemaphoreInvalid;No description;3;SEMAPHORE_IF;fsfw/src/fsfw/tasks/SemaphoreIF.h
0x3c00;LPIF_PoolEntryNotFound;No description;0;LOCAL_POOL_OWNER_IF;fsfw/src/fsfw/datapoollocal/localPoolDefinitions.h
0x3c01;LPIF_PoolEntryTypeConflict;No description;1;LOCAL_POOL_OWNER_IF;fsfw/src/fsfw/datapoollocal/localPoolDefinitions.h
0x3da0;PVA_InvalidReadWriteMode;No description;160;POOL_VARIABLE_IF;fsfw/src/fsfw/datapool/PoolVariableIF.h
0x3da1;PVA_InvalidPoolEntry;No description;161;POOL_VARIABLE_IF;fsfw/src/fsfw/datapool/PoolVariableIF.h
0x3e00;HKM_QueueOrDestinationInvalid;No description;0;HOUSEKEEPING_MANAGER;fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h
0x3e01;HKM_WrongHkPacketType;No description;1;HOUSEKEEPING_MANAGER;fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h
0x3e02;HKM_ReportingStatusUnchanged;No description;2;HOUSEKEEPING_MANAGER;fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h
0x3e03;HKM_PeriodicHelperInvalid;No description;3;HOUSEKEEPING_MANAGER;fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h
0x3e04;HKM_PoolobjectNotFound;No description;4;HOUSEKEEPING_MANAGER;fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h
0x3e05;HKM_DatasetNotFound;No description;5;HOUSEKEEPING_MANAGER;fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h
0x3f01;DLEE_StreamTooShort;No description;1;DLE_ENCODER;fsfw/src/fsfw/globalfunctions/DleEncoder.h
0x3f02;DLEE_DecodingError;No description;2;DLE_ENCODER;fsfw/src/fsfw/globalfunctions/DleEncoder.h
0x4201;PUS11_InvalidTypeTimeWindow;No description;1;PUS_SERVICE_11;fsfw/src/fsfw/pus/Service11TelecommandScheduling.h
0x4202;PUS11_InvalidTimeWindow;No description;2;PUS_SERVICE_11;fsfw/src/fsfw/pus/Service11TelecommandScheduling.h
0x4203;PUS11_TimeshiftingNotPossible;No description;3;PUS_SERVICE_11;fsfw/src/fsfw/pus/Service11TelecommandScheduling.h
0x4204;PUS11_InvalidRelativeTime;No description;4;PUS_SERVICE_11;fsfw/src/fsfw/pus/Service11TelecommandScheduling.h
0x4205;PUS11_ContainedTcTooSmall;No description;5;PUS_SERVICE_11;fsfw/src/fsfw/pus/Service11TelecommandScheduling.h
0x4206;PUS11_ContainedTcCrcMissmatch;No description;6;PUS_SERVICE_11;fsfw/src/fsfw/pus/Service11TelecommandScheduling.h
0x4300;FILS_GenericFileError;No description;0;FILE_SYSTEM;fsfw/src/fsfw/filesystem/HasFileSystemIF.h
0x4301;FILS_GenericDirError;No description;1;FILE_SYSTEM;fsfw/src/fsfw/filesystem/HasFileSystemIF.h
0x4302;FILS_FilesystemInactive;No description;2;FILE_SYSTEM;fsfw/src/fsfw/filesystem/HasFileSystemIF.h
0x4303;FILS_GenericRenameError;No description;3;FILE_SYSTEM;fsfw/src/fsfw/filesystem/HasFileSystemIF.h
0x4304;FILS_IsBusy;No description;4;FILE_SYSTEM;fsfw/src/fsfw/filesystem/HasFileSystemIF.h
0x4305;FILS_InvalidParameters;No description;5;FILE_SYSTEM;fsfw/src/fsfw/filesystem/HasFileSystemIF.h
0x430a;FILS_FileDoesNotExist;No description;10;FILE_SYSTEM;fsfw/src/fsfw/filesystem/HasFileSystemIF.h
0x430b;FILS_FileAlreadyExists;No description;11;FILE_SYSTEM;fsfw/src/fsfw/filesystem/HasFileSystemIF.h
0x430c;FILS_NotAFile;No description;12;FILE_SYSTEM;fsfw/src/fsfw/filesystem/HasFileSystemIF.h
0x430d;FILS_FileLocked;No description;13;FILE_SYSTEM;fsfw/src/fsfw/filesystem/HasFileSystemIF.h
0x430e;FILS_PermissionDenied;No description;14;FILE_SYSTEM;fsfw/src/fsfw/filesystem/HasFileSystemIF.h
0x4315;FILS_DirectoryDoesNotExist;No description;21;FILE_SYSTEM;fsfw/src/fsfw/filesystem/HasFileSystemIF.h
0x4316;FILS_DirectoryAlreadyExists;No description;22;FILE_SYSTEM;fsfw/src/fsfw/filesystem/HasFileSystemIF.h
0x4317;FILS_NotADirectory;No description;23;FILE_SYSTEM;fsfw/src/fsfw/filesystem/HasFileSystemIF.h
0x4318;FILS_DirectoryNotEmpty;No description;24;FILE_SYSTEM;fsfw/src/fsfw/filesystem/HasFileSystemIF.h
0x431e;FILS_SequencePacketMissingWrite;No description;30;FILE_SYSTEM;fsfw/src/fsfw/filesystem/HasFileSystemIF.h
0x431f;FILS_SequencePacketMissingRead;No description;31;FILE_SYSTEM;fsfw/src/fsfw/filesystem/HasFileSystemIF.h
0x4400;UXOS_ExecutionFinished;Execution of the current command has finished;0;LINUX_OSAL;fsfw/src/fsfw_hal/linux/CommandExecutor.h
0x4401;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;LINUX_OSAL;fsfw/src/fsfw_hal/linux/CommandExecutor.h
0x4402;UXOS_BytesRead;Some bytes have been read from the executing process;2;LINUX_OSAL;fsfw/src/fsfw_hal/linux/CommandExecutor.h
0x4403;UXOS_CommandError;Command execution failed;3;LINUX_OSAL;fsfw/src/fsfw_hal/linux/CommandExecutor.h
0x4404;UXOS_NoCommandLoadedOrPending;;4;LINUX_OSAL;fsfw/src/fsfw_hal/linux/CommandExecutor.h
0x4406;UXOS_PcloseCallError;No description;6;LINUX_OSAL;fsfw/src/fsfw_hal/linux/CommandExecutor.h
0x4500;HSPI_HalTimeoutRetval;No description;0;HAL_SPI;fsfw/src/fsfw_hal/stm32h7/spi/spiDefinitions.h
0x4501;HSPI_HalBusyRetval;No description;1;HAL_SPI;fsfw/src/fsfw_hal/stm32h7/spi/spiDefinitions.h
0x4502;HSPI_HalErrorRetval;No description;2;HAL_SPI;fsfw/src/fsfw_hal/stm32h7/spi/spiDefinitions.h
0x4601;HURT_UartReadFailure;No description;1;HAL_UART;fsfw/src/fsfw_hal/linux/serial/SerialComIF.h
0x4602;HURT_UartReadSizeMissmatch;No description;2;HAL_UART;fsfw/src/fsfw_hal/linux/serial/SerialComIF.h
0x4603;HURT_UartRxBufferTooSmall;No description;3;HAL_UART;fsfw/src/fsfw_hal/linux/serial/SerialComIF.h
0x4801;HGIO_UnknownGpioId;No description;1;HAL_GPIO;fsfw/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h
0x4802;HGIO_DriveGpioFailure;No description;2;HAL_GPIO;fsfw/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h
0x4803;HGIO_GpioTypeFailure;No description;3;HAL_GPIO;fsfw/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h
0x4804;HGIO_GpioInvalidInstance;No description;4;HAL_GPIO;fsfw/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h
0x4805;HGIO_GpioDuplicateDetected;No description;5;HAL_GPIO;fsfw/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h
0x4806;HGIO_GpioInitFailed;No description;6;HAL_GPIO;fsfw/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h
0x4807;HGIO_GpioGetValueFailed;No description;7;HAL_GPIO;fsfw/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h
0x4c00;SPPA_NoPacketFound;No description;0;SPACE_PACKET_PARSER;fsfw/src/fsfw/tmtcservices/SpacePacketParser.h
0x4c01;SPPA_SplitPacket;No description;1;SPACE_PACKET_PARSER;fsfw/src/fsfw/tmtcservices/SpacePacketParser.h
0x4fa1;HEATER_CommandNotSupported;No description;161;HEATER_HANDLER;mission/devices/HeaterHandler.h
0x4fa2;HEATER_InitFailed;No description;162;HEATER_HANDLER;mission/devices/HeaterHandler.h
0x4fa3;HEATER_InvalidSwitchNr;No description;163;HEATER_HANDLER;mission/devices/HeaterHandler.h
0x4fa4;HEATER_MainSwitchSetTimeout;No description;164;HEATER_HANDLER;mission/devices/HeaterHandler.h
0x4fa5;HEATER_CommandAlreadyWaiting;No description;165;HEATER_HANDLER;mission/devices/HeaterHandler.h
0x50a0;SYRLINKS_CrcFailure;No description;160;SYRLINKS_HANDLER;mission/devices/SyrlinksHandler.h
0x50a1;SYRLINKS_UartFraminOrParityErrorAck;No description;161;SYRLINKS_HANDLER;mission/devices/SyrlinksHandler.h
0x50a2;SYRLINKS_BadCharacterAck;No description;162;SYRLINKS_HANDLER;mission/devices/SyrlinksHandler.h
0x50a3;SYRLINKS_BadParameterValueAck;No description;163;SYRLINKS_HANDLER;mission/devices/SyrlinksHandler.h
0x50a4;SYRLINKS_BadEndOfFrameAck;No description;164;SYRLINKS_HANDLER;mission/devices/SyrlinksHandler.h
0x50a5;SYRLINKS_UnknownCommandIdAck;No description;165;SYRLINKS_HANDLER;mission/devices/SyrlinksHandler.h
0x50a6;SYRLINKS_BadCrcAck;No description;166;SYRLINKS_HANDLER;mission/devices/SyrlinksHandler.h
0x50a7;SYRLINKS_ReplyWrongSize;No description;167;SYRLINKS_HANDLER;mission/devices/SyrlinksHandler.h
0x50a8;SYRLINKS_MissingStartFrameCharacter;No description;168;SYRLINKS_HANDLER;mission/devices/SyrlinksHandler.h
0x5100;IMTQ_InvalidCommandCode;No description;0;IMTQ_HANDLER;mission/devices/devicedefinitions/imtqHelpers.h
0x5101;IMTQ_MgmMeasurementLowLevelError;No description;1;IMTQ_HANDLER;mission/devices/devicedefinitions/imtqHelpers.h
0x5102;IMTQ_ActuateCmdLowLevelError;No description;2;IMTQ_HANDLER;mission/devices/devicedefinitions/imtqHelpers.h
0x5103;IMTQ_ParameterMissing;No description;3;IMTQ_HANDLER;mission/devices/devicedefinitions/imtqHelpers.h
0x5104;IMTQ_ParameterInvalid;No description;4;IMTQ_HANDLER;mission/devices/devicedefinitions/imtqHelpers.h
0x5105;IMTQ_CcUnavailable;No description;5;IMTQ_HANDLER;mission/devices/devicedefinitions/imtqHelpers.h
0x5106;IMTQ_InternalProcessingError;No description;6;IMTQ_HANDLER;mission/devices/devicedefinitions/imtqHelpers.h
0x5107;IMTQ_RejectedWithoutReason;No description;7;IMTQ_HANDLER;mission/devices/devicedefinitions/imtqHelpers.h
0x5108;IMTQ_CmdErrUnknown;No description;8;IMTQ_HANDLER;mission/devices/devicedefinitions/imtqHelpers.h
0x51a7;IMTQ_UnexpectedSelfTestReply;The status reply to a self test command was received but no self test command has been sent. This should normally never happen.;167;IMTQ_HANDLER;mission/devices/devicedefinitions/imtqHelpers.h
0x52b0;RWHA_SpiWriteFailure;No description;176;RW_HANDLER;mission/devices/devicedefinitions/rwHelpers.h
0x52b1;RWHA_SpiReadFailure;Used by the spi send function to tell a failing read call;177;RW_HANDLER;mission/devices/devicedefinitions/rwHelpers.h
0x52b2;RWHA_MissingStartSign;Can be used by the HDLC decoding mechanism to inform about a missing start sign 0x7E;178;RW_HANDLER;mission/devices/devicedefinitions/rwHelpers.h
0x52b3;RWHA_InvalidSubstitute;Can be used by the HDLC decoding mechanism to inform about an invalid substitution combination;179;RW_HANDLER;mission/devices/devicedefinitions/rwHelpers.h
0x52b4;RWHA_MissingEndSign;HDLC decoding mechanism never receives the end sign 0x7E;180;RW_HANDLER;mission/devices/devicedefinitions/rwHelpers.h
0x52b5;RWHA_NoReply;Reaction wheel only responds with empty frames.;181;RW_HANDLER;mission/devices/devicedefinitions/rwHelpers.h
0x52b6;RWHA_NoStartMarker;Expected a start marker as first byte;182;RW_HANDLER;mission/devices/devicedefinitions/rwHelpers.h
0x52b7;RWHA_SpiReadTimeout;Timeout when reading reply;183;RW_HANDLER;mission/devices/devicedefinitions/rwHelpers.h
0x58a0;SUSS_ErrorUnlockMutex;No description;160;SUS_HANDLER;mission/devices/LegacySusHandler.h
0x58a1;SUSS_ErrorLockMutex;No description;161;SUS_HANDLER;mission/devices/LegacySusHandler.h
0x5d00;GOMS_PacketTooLong;No description;0;GOM_SPACE_HANDLER;mission/devices/GomspaceDeviceHandler.h
0x5d01;GOMS_InvalidTableId;No description;1;GOM_SPACE_HANDLER;mission/devices/GomspaceDeviceHandler.h
0x5d02;GOMS_InvalidAddress;No description;2;GOM_SPACE_HANDLER;mission/devices/GomspaceDeviceHandler.h
0x5d03;GOMS_InvalidParamSize;No description;3;GOM_SPACE_HANDLER;mission/devices/GomspaceDeviceHandler.h
0x5d04;GOMS_InvalidPayloadSize;No description;4;GOM_SPACE_HANDLER;mission/devices/GomspaceDeviceHandler.h
0x5d05;GOMS_UnknownReplyId;No description;5;GOM_SPACE_HANDLER;mission/devices/GomspaceDeviceHandler.h
0x5da0;GOMS_InvalidSpeed;Action Message with invalid speed was received. Valid speeds must be in the range of [-65000, 1000] or [1000, 65000];160;GOM_SPACE_HANDLER;mission/devices/RwHandler.h
0x5da1;GOMS_InvalidRampTime;Action Message with invalid ramp time was received.;161;GOM_SPACE_HANDLER;mission/devices/RwHandler.h
0x5da2;GOMS_SetSpeedCommandInvalidLength;Received set speed command has invalid length. Should be 6.;162;GOM_SPACE_HANDLER;mission/devices/RwHandler.h
0x5da3;GOMS_ExecutionFailed;Command execution failed;163;GOM_SPACE_HANDLER;mission/devices/RwHandler.h
0x5da4;GOMS_CrcError;Reaction wheel reply has invalid crc;164;GOM_SPACE_HANDLER;mission/devices/RwHandler.h
0x5da5;GOMS_ValueNotRead;No description;165;GOM_SPACE_HANDLER;mission/devices/RwHandler.h
0x60a0;CCSDS_CommandNotImplemented;Received action message with unknown action id;160;CCSDS_HANDLER;mission/tmtc/CcsdsIpCoreHandler.h
0x63a0;NVMB_KeyNotExists;Specified key does not exist in json file;160;NVM_PARAM_BASE;mission/memory/NvmParameterBase.h
0x66a0;SADPL_CommandNotSupported;No description;160;SA_DEPL_HANDLER;mission/devices/SolarArrayDeploymentHandler.h
0x66a1;SADPL_DeploymentAlreadyExecuting;No description;161;SA_DEPL_HANDLER;mission/devices/SolarArrayDeploymentHandler.h
0x66a2;SADPL_MainSwitchTimeoutFailure;No description;162;SA_DEPL_HANDLER;mission/devices/SolarArrayDeploymentHandler.h
0x66a3;SADPL_SwitchingDeplSa1Failed;No description;163;SA_DEPL_HANDLER;mission/devices/SolarArrayDeploymentHandler.h
0x66a4;SADPL_SwitchingDeplSa2Failed;No description;164;SA_DEPL_HANDLER;mission/devices/SolarArrayDeploymentHandler.h
0x6900;ACSCTRL_FileDeletionFailed;No description;0;ACS_CTRL;mission/controller/AcsController.h
0x6a02;ACSMEKF_MekfUninitialized;No description;2;ACS_MEKF;mission/controller/acs/MultiplicativeKalmanFilter.h
0x6a03;ACSMEKF_MekfNoGyrData;No description;3;ACS_MEKF;mission/controller/acs/MultiplicativeKalmanFilter.h
0x6a04;ACSMEKF_MekfNoModelVectors;No description;4;ACS_MEKF;mission/controller/acs/MultiplicativeKalmanFilter.h
0x6a05;ACSMEKF_MekfNoSusMgmStrData;No description;5;ACS_MEKF;mission/controller/acs/MultiplicativeKalmanFilter.h
0x6a06;ACSMEKF_MekfCovarianceInversionFailed;No description;6;ACS_MEKF;mission/controller/acs/MultiplicativeKalmanFilter.h
0x6a07;ACSMEKF_MekfNotFinite;No description;7;ACS_MEKF;mission/controller/acs/MultiplicativeKalmanFilter.h
0x6a08;ACSMEKF_MekfInitialized;No description;8;ACS_MEKF;mission/controller/acs/MultiplicativeKalmanFilter.h
0x6a09;ACSMEKF_MekfRunning;No description;9;ACS_MEKF;mission/controller/acs/MultiplicativeKalmanFilter.h
0x6b01;ACSSAF_SafectrlMekfInputInvalid;No description;1;ACS_SAFE;mission/controller/acs/control/SafeCtrl.h
0x6c01;ACSPTG_PtgctrlMekfInputInvalid;No description;1;ACS_PTG;mission/controller/acs/control/PtgCtrl.h
0x6d01;ACSDTB_DetumbleNoSensordata;No description;1;ACS_DETUMBLE;mission/controller/acs/control/Detumble.h
0x7000;PTM_DumpDone;No description;0;PERSISTENT_TM_STORE;mission/tmtc/PersistentTmStore.h
0x7001;PTM_BusyDumping;No description;1;PERSISTENT_TM_STORE;mission/tmtc/PersistentTmStore.h
0x7100;TMS_IsBusy;No description;0;TM_SINK;mission/tmtc/DirectTmSinkIF.h
0x3407;DC_Busy;No description;7;DEVICE_COMMUNICATION_IF;fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h
0x3601;CFDP_InvalidTlvType;No description;1;CFDP_BASE;fsfw/src/fsfw/cfdp/definitions.h
0x3602;CFDP_InvalidDirectiveField;No description;2;CFDP_BASE;fsfw/src/fsfw/cfdp/definitions.h
0x3603;CFDP_InvalidPduDatafieldLen;No description;3;CFDP_BASE;fsfw/src/fsfw/cfdp/definitions.h
0x3604;CFDP_InvalidAckDirectiveFields;No description;4;CFDP_BASE;fsfw/src/fsfw/cfdp/definitions.h
0x3605;CFDP_MetadataCantParseOptions;No description;5;CFDP_BASE;fsfw/src/fsfw/cfdp/definitions.h
0x3606;CFDP_NakCantParseOptions;No description;6;CFDP_BASE;fsfw/src/fsfw/cfdp/definitions.h
0x3607;CFDP_FinishedCantParseFsResponses;No description;7;CFDP_BASE;fsfw/src/fsfw/cfdp/definitions.h
0x3608;CFDP_FilestoreRequiresSecondFile;No description;8;CFDP_BASE;fsfw/src/fsfw/cfdp/definitions.h
0x3609;CFDP_FilestoreResponseCantParseFsMessage;No description;9;CFDP_BASE;fsfw/src/fsfw/cfdp/definitions.h
0x360a;CFDP_InvalidPduFormat;No description;10;CFDP_BASE;fsfw/src/fsfw/cfdp/definitions.h
0x3700;CFDP_SourceTransactionPending;No description;0;CFDP_HANDLER;fsfw/src/fsfw/cfdp/handler/defs.h
0x3701;CFDP_FileDoesNotExist;No description;1;CFDP_HANDLER;fsfw/src/fsfw/cfdp/handler/defs.h
0x3702;CFDP_FileSegmentLenInvalid;No description;2;CFDP_HANDLER;fsfw/src/fsfw/cfdp/handler/defs.h
0x3703;CFDP_SourceNameEmpty;No description;3;CFDP_HANDLER;fsfw/src/fsfw/cfdp/handler/defs.h
0x3704;CFDP_DestNameEmpty;No description;4;CFDP_HANDLER;fsfw/src/fsfw/cfdp/handler/defs.h
0x3705;CFDP_WrongRemoteCfgEntityId;No description;5;CFDP_HANDLER;fsfw/src/fsfw/cfdp/handler/defs.h
0x3706;CFDP_TargetMsgQueueFull;No description;6;CFDP_HANDLER;fsfw/src/fsfw/cfdp/handler/defs.h
0x3707;CFDP_TmStoreFull;No description;7;CFDP_HANDLER;fsfw/src/fsfw/cfdp/handler/defs.h
0x3801;TSI_BadTimestamp;No description;1;TIME_STAMPER_IF;fsfw/src/fsfw/timemanager/TimeStampIF.h
0x39a1;SGP4_InvalidEccentricity;No description;161;SGP4PROPAGATOR_CLASS;fsfw/src/fsfw/coordinates/Sgp4Propagator.h
0x39a2;SGP4_InvalidMeanMotion;No description;162;SGP4PROPAGATOR_CLASS;fsfw/src/fsfw/coordinates/Sgp4Propagator.h
0x39a3;SGP4_InvalidPerturbationElements;No description;163;SGP4PROPAGATOR_CLASS;fsfw/src/fsfw/coordinates/Sgp4Propagator.h
0x39a4;SGP4_InvalidSemiLatusRectum;No description;164;SGP4PROPAGATOR_CLASS;fsfw/src/fsfw/coordinates/Sgp4Propagator.h
0x39a5;SGP4_InvalidEpochElements;No description;165;SGP4PROPAGATOR_CLASS;fsfw/src/fsfw/coordinates/Sgp4Propagator.h
0x39a6;SGP4_SatelliteHasDecayed;No description;166;SGP4PROPAGATOR_CLASS;fsfw/src/fsfw/coordinates/Sgp4Propagator.h
0x39b1;SGP4_TleTooOld;No description;177;SGP4PROPAGATOR_CLASS;fsfw/src/fsfw/coordinates/Sgp4Propagator.h
0x39b2;SGP4_TleNotInitialized;No description;178;SGP4PROPAGATOR_CLASS;fsfw/src/fsfw/coordinates/Sgp4Propagator.h
0x3a01;MUX_NotEnoughResources;No description;1;MUTEX_IF;fsfw/src/fsfw/ipc/MutexIF.h
0x3a02;MUX_InsufficientMemory;No description;2;MUTEX_IF;fsfw/src/fsfw/ipc/MutexIF.h
0x3a03;MUX_NoPrivilege;No description;3;MUTEX_IF;fsfw/src/fsfw/ipc/MutexIF.h
0x3a04;MUX_WrongAttributeSetting;No description;4;MUTEX_IF;fsfw/src/fsfw/ipc/MutexIF.h
0x3a05;MUX_MutexAlreadyLocked;No description;5;MUTEX_IF;fsfw/src/fsfw/ipc/MutexIF.h
0x3a06;MUX_MutexNotFound;No description;6;MUTEX_IF;fsfw/src/fsfw/ipc/MutexIF.h
0x3a07;MUX_MutexMaxLocks;No description;7;MUTEX_IF;fsfw/src/fsfw/ipc/MutexIF.h
0x3a08;MUX_CurrThreadAlreadyOwnsMutex;No description;8;MUTEX_IF;fsfw/src/fsfw/ipc/MutexIF.h
0x3a09;MUX_CurrThreadDoesNotOwnMutex;No description;9;MUTEX_IF;fsfw/src/fsfw/ipc/MutexIF.h
0x3a0a;MUX_MutexTimeout;No description;10;MUTEX_IF;fsfw/src/fsfw/ipc/MutexIF.h
0x3a0b;MUX_MutexInvalidId;No description;11;MUTEX_IF;fsfw/src/fsfw/ipc/MutexIF.h
0x3a0c;MUX_MutexDestroyedWhileWaiting;No description;12;MUTEX_IF;fsfw/src/fsfw/ipc/MutexIF.h
0x3b01;MQI_Empty;No description;1;MESSAGE_QUEUE_IF;fsfw/src/fsfw/ipc/MessageQueueIF.h
0x3b02;MQI_Full;No space left for more messages;2;MESSAGE_QUEUE_IF;fsfw/src/fsfw/ipc/MessageQueueIF.h
0x3b03;MQI_NoReplyPartner;Returned if a reply method was called without partner;3;MESSAGE_QUEUE_IF;fsfw/src/fsfw/ipc/MessageQueueIF.h
0x3b04;MQI_DestinationInvalid;Returned if the target destination is invalid.;4;MESSAGE_QUEUE_IF;fsfw/src/fsfw/ipc/MessageQueueIF.h
0x3c01;SPH_SemaphoreTimeout;No description;1;SEMAPHORE_IF;fsfw/src/fsfw/tasks/SemaphoreIF.h
0x3c02;SPH_SemaphoreNotOwned;No description;2;SEMAPHORE_IF;fsfw/src/fsfw/tasks/SemaphoreIF.h
0x3c03;SPH_SemaphoreInvalid;No description;3;SEMAPHORE_IF;fsfw/src/fsfw/tasks/SemaphoreIF.h
0x3d00;LPIF_PoolEntryNotFound;No description;0;LOCAL_POOL_OWNER_IF;fsfw/src/fsfw/datapoollocal/localPoolDefinitions.h
0x3d01;LPIF_PoolEntryTypeConflict;No description;1;LOCAL_POOL_OWNER_IF;fsfw/src/fsfw/datapoollocal/localPoolDefinitions.h
0x3ea0;PVA_InvalidReadWriteMode;No description;160;POOL_VARIABLE_IF;fsfw/src/fsfw/datapool/PoolVariableIF.h
0x3ea1;PVA_InvalidPoolEntry;No description;161;POOL_VARIABLE_IF;fsfw/src/fsfw/datapool/PoolVariableIF.h
0x3f00;HKM_QueueOrDestinationInvalid;No description;0;HOUSEKEEPING_MANAGER;fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h
0x3f01;HKM_WrongHkPacketType;No description;1;HOUSEKEEPING_MANAGER;fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h
0x3f02;HKM_ReportingStatusUnchanged;No description;2;HOUSEKEEPING_MANAGER;fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h
0x3f03;HKM_PeriodicHelperInvalid;No description;3;HOUSEKEEPING_MANAGER;fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h
0x3f04;HKM_PoolobjectNotFound;No description;4;HOUSEKEEPING_MANAGER;fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h
0x3f05;HKM_DatasetNotFound;No description;5;HOUSEKEEPING_MANAGER;fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h
0x4001;DLEE_StreamTooShort;No description;1;DLE_ENCODER;fsfw/src/fsfw/globalfunctions/DleEncoder.h
0x4002;DLEE_DecodingError;No description;2;DLE_ENCODER;fsfw/src/fsfw/globalfunctions/DleEncoder.h
0x4301;PUS11_InvalidTypeTimeWindow;No description;1;PUS_SERVICE_11;fsfw/src/fsfw/pus/Service11TelecommandScheduling.h
0x4302;PUS11_InvalidTimeWindow;No description;2;PUS_SERVICE_11;fsfw/src/fsfw/pus/Service11TelecommandScheduling.h
0x4303;PUS11_TimeshiftingNotPossible;No description;3;PUS_SERVICE_11;fsfw/src/fsfw/pus/Service11TelecommandScheduling.h
0x4304;PUS11_InvalidRelativeTime;No description;4;PUS_SERVICE_11;fsfw/src/fsfw/pus/Service11TelecommandScheduling.h
0x4305;PUS11_ContainedTcTooSmall;No description;5;PUS_SERVICE_11;fsfw/src/fsfw/pus/Service11TelecommandScheduling.h
0x4306;PUS11_ContainedTcCrcMissmatch;No description;6;PUS_SERVICE_11;fsfw/src/fsfw/pus/Service11TelecommandScheduling.h
0x4400;FILS_GenericFileError;No description;0;FILE_SYSTEM;fsfw/src/fsfw/filesystem/HasFileSystemIF.h
0x4401;FILS_GenericDirError;No description;1;FILE_SYSTEM;fsfw/src/fsfw/filesystem/HasFileSystemIF.h
0x4402;FILS_FilesystemInactive;No description;2;FILE_SYSTEM;fsfw/src/fsfw/filesystem/HasFileSystemIF.h
0x4403;FILS_GenericRenameError;No description;3;FILE_SYSTEM;fsfw/src/fsfw/filesystem/HasFileSystemIF.h
0x4404;FILS_IsBusy;No description;4;FILE_SYSTEM;fsfw/src/fsfw/filesystem/HasFileSystemIF.h
0x4405;FILS_InvalidParameters;No description;5;FILE_SYSTEM;fsfw/src/fsfw/filesystem/HasFileSystemIF.h
0x440a;FILS_FileDoesNotExist;No description;10;FILE_SYSTEM;fsfw/src/fsfw/filesystem/HasFileSystemIF.h
0x440b;FILS_FileAlreadyExists;No description;11;FILE_SYSTEM;fsfw/src/fsfw/filesystem/HasFileSystemIF.h
0x440c;FILS_NotAFile;No description;12;FILE_SYSTEM;fsfw/src/fsfw/filesystem/HasFileSystemIF.h
0x440d;FILS_FileLocked;No description;13;FILE_SYSTEM;fsfw/src/fsfw/filesystem/HasFileSystemIF.h
0x440e;FILS_PermissionDenied;No description;14;FILE_SYSTEM;fsfw/src/fsfw/filesystem/HasFileSystemIF.h
0x4415;FILS_DirectoryDoesNotExist;No description;21;FILE_SYSTEM;fsfw/src/fsfw/filesystem/HasFileSystemIF.h
0x4416;FILS_DirectoryAlreadyExists;No description;22;FILE_SYSTEM;fsfw/src/fsfw/filesystem/HasFileSystemIF.h
0x4417;FILS_NotADirectory;No description;23;FILE_SYSTEM;fsfw/src/fsfw/filesystem/HasFileSystemIF.h
0x4418;FILS_DirectoryNotEmpty;No description;24;FILE_SYSTEM;fsfw/src/fsfw/filesystem/HasFileSystemIF.h
0x441e;FILS_SequencePacketMissingWrite;No description;30;FILE_SYSTEM;fsfw/src/fsfw/filesystem/HasFileSystemIF.h
0x441f;FILS_SequencePacketMissingRead;No description;31;FILE_SYSTEM;fsfw/src/fsfw/filesystem/HasFileSystemIF.h
0x4500;UXOS_ExecutionFinished;Execution of the current command has finished;0;LINUX_OSAL;fsfw/src/fsfw_hal/linux/CommandExecutor.h
0x4501;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;LINUX_OSAL;fsfw/src/fsfw_hal/linux/CommandExecutor.h
0x4502;UXOS_BytesRead;Some bytes have been read from the executing process;2;LINUX_OSAL;fsfw/src/fsfw_hal/linux/CommandExecutor.h
0x4503;UXOS_CommandError;Command execution failed;3;LINUX_OSAL;fsfw/src/fsfw_hal/linux/CommandExecutor.h
0x4504;UXOS_NoCommandLoadedOrPending;;4;LINUX_OSAL;fsfw/src/fsfw_hal/linux/CommandExecutor.h
0x4506;UXOS_PcloseCallError;No description;6;LINUX_OSAL;fsfw/src/fsfw_hal/linux/CommandExecutor.h
0x4600;HSPI_OpeningFileFailed;No description;0;HAL_SPI;fsfw/src/fsfw_hal/common/spi/spiCommon.h
0x4601;HSPI_FullDuplexTransferFailed;No description;1;HAL_SPI;fsfw/src/fsfw_hal/common/spi/spiCommon.h
0x4602;HSPI_HalfDuplexTransferFailed;No description;2;HAL_SPI;fsfw/src/fsfw_hal/common/spi/spiCommon.h
0x4603;HSPI_Timeout;No description;3;HAL_SPI;fsfw/src/fsfw_hal/common/spi/spiCommon.h
0x4604;HSPI_Busy;No description;4;HAL_SPI;fsfw/src/fsfw_hal/common/spi/spiCommon.h
0x4605;HSPI_GenericError;No description;5;HAL_SPI;fsfw/src/fsfw_hal/common/spi/spiCommon.h
0x4701;HURT_UartReadFailure;No description;1;HAL_UART;fsfw/src/fsfw_hal/linux/serial/SerialComIF.h
0x4702;HURT_UartReadSizeMissmatch;No description;2;HAL_UART;fsfw/src/fsfw_hal/linux/serial/SerialComIF.h
0x4703;HURT_UartRxBufferTooSmall;No description;3;HAL_UART;fsfw/src/fsfw_hal/linux/serial/SerialComIF.h
0x4901;HGIO_UnknownGpioId;No description;1;HAL_GPIO;fsfw/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h
0x4902;HGIO_DriveGpioFailure;No description;2;HAL_GPIO;fsfw/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h
0x4903;HGIO_GpioTypeFailure;No description;3;HAL_GPIO;fsfw/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h
0x4904;HGIO_GpioInvalidInstance;No description;4;HAL_GPIO;fsfw/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h
0x4905;HGIO_GpioDuplicateDetected;No description;5;HAL_GPIO;fsfw/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h
0x4906;HGIO_GpioInitFailed;No description;6;HAL_GPIO;fsfw/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h
0x4907;HGIO_GpioGetValueFailed;No description;7;HAL_GPIO;fsfw/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h
0x4d00;SPPA_NoPacketFound;No description;0;SPACE_PACKET_PARSER;fsfw/src/fsfw/tmtcservices/SpacePacketParser.h
0x4d01;SPPA_SplitPacket;No description;1;SPACE_PACKET_PARSER;fsfw/src/fsfw/tmtcservices/SpacePacketParser.h
0x50a1;HEATER_CommandNotSupported;No description;161;HEATER_HANDLER;mission/tcs/HeaterHandler.h
0x50a2;HEATER_InitFailed;No description;162;HEATER_HANDLER;mission/tcs/HeaterHandler.h
0x50a3;HEATER_InvalidSwitchNr;No description;163;HEATER_HANDLER;mission/tcs/HeaterHandler.h
0x50a4;HEATER_MainSwitchSetTimeout;No description;164;HEATER_HANDLER;mission/tcs/HeaterHandler.h
0x50a5;HEATER_CommandAlreadyWaiting;No description;165;HEATER_HANDLER;mission/tcs/HeaterHandler.h
0x51a0;SYRLINKS_CrcFailure;No description;160;SYRLINKS_HANDLER;mission/com/SyrlinksHandler.h
0x51a1;SYRLINKS_UartFraminOrParityErrorAck;No description;161;SYRLINKS_HANDLER;mission/com/SyrlinksHandler.h
0x51a2;SYRLINKS_BadCharacterAck;No description;162;SYRLINKS_HANDLER;mission/com/SyrlinksHandler.h
0x51a3;SYRLINKS_BadParameterValueAck;No description;163;SYRLINKS_HANDLER;mission/com/SyrlinksHandler.h
0x51a4;SYRLINKS_BadEndOfFrameAck;No description;164;SYRLINKS_HANDLER;mission/com/SyrlinksHandler.h
0x51a5;SYRLINKS_UnknownCommandIdAck;No description;165;SYRLINKS_HANDLER;mission/com/SyrlinksHandler.h
0x51a6;SYRLINKS_BadCrcAck;No description;166;SYRLINKS_HANDLER;mission/com/SyrlinksHandler.h
0x51a7;SYRLINKS_ReplyWrongSize;No description;167;SYRLINKS_HANDLER;mission/com/SyrlinksHandler.h
0x51a8;SYRLINKS_MissingStartFrameCharacter;No description;168;SYRLINKS_HANDLER;mission/com/SyrlinksHandler.h
0x5200;IMTQ_InvalidCommandCode;No description;0;IMTQ_HANDLER;mission/acs/imtqHelpers.h
0x5201;IMTQ_MgmMeasurementLowLevelError;No description;1;IMTQ_HANDLER;mission/acs/imtqHelpers.h
0x5202;IMTQ_ActuateCmdLowLevelError;No description;2;IMTQ_HANDLER;mission/acs/imtqHelpers.h
0x5203;IMTQ_ParameterMissing;No description;3;IMTQ_HANDLER;mission/acs/imtqHelpers.h
0x5204;IMTQ_ParameterInvalid;No description;4;IMTQ_HANDLER;mission/acs/imtqHelpers.h
0x5205;IMTQ_CcUnavailable;No description;5;IMTQ_HANDLER;mission/acs/imtqHelpers.h
0x5206;IMTQ_InternalProcessingError;No description;6;IMTQ_HANDLER;mission/acs/imtqHelpers.h
0x5207;IMTQ_RejectedWithoutReason;No description;7;IMTQ_HANDLER;mission/acs/imtqHelpers.h
0x5208;IMTQ_CmdErrUnknown;No description;8;IMTQ_HANDLER;mission/acs/imtqHelpers.h
0x5209;IMTQ_StartupCfgError;No description;9;IMTQ_HANDLER;mission/acs/imtqHelpers.h
0x520a;IMTQ_UnexpectedSelfTestReply;The status reply to a self test command was received but no self test command has been sent. This should normally never happen.;10;IMTQ_HANDLER;mission/acs/imtqHelpers.h
0x53b0;RWHA_SpiWriteFailure;No description;176;RW_HANDLER;mission/acs/rwHelpers.h
0x53b1;RWHA_SpiReadFailure;Used by the spi send function to tell a failing read call;177;RW_HANDLER;mission/acs/rwHelpers.h
0x53b2;RWHA_MissingStartSign;Can be used by the HDLC decoding mechanism to inform about a missing start sign 0x7E;178;RW_HANDLER;mission/acs/rwHelpers.h
0x53b3;RWHA_InvalidSubstitute;Can be used by the HDLC decoding mechanism to inform about an invalid substitution combination;179;RW_HANDLER;mission/acs/rwHelpers.h
0x53b4;RWHA_MissingEndSign;HDLC decoding mechanism never receives the end sign 0x7E;180;RW_HANDLER;mission/acs/rwHelpers.h
0x53b5;RWHA_NoReply;Reaction wheel only responds with empty frames.;181;RW_HANDLER;mission/acs/rwHelpers.h
0x53b6;RWHA_NoStartMarker;Expected a start marker as first byte;182;RW_HANDLER;mission/acs/rwHelpers.h
0x53b7;RWHA_SpiReadTimeout;Timeout when reading reply;183;RW_HANDLER;mission/acs/rwHelpers.h
0x54a0;STRH_TemperatureReqFailed;Status in temperature reply signals error;160;STR_HANDLER;mission/acs/str/StarTrackerHandler.h
0x54a1;STRH_PingFailed;Ping command failed;161;STR_HANDLER;mission/acs/str/StarTrackerHandler.h
0x54a2;STRH_VersionReqFailed;Status in version reply signals error;162;STR_HANDLER;mission/acs/str/StarTrackerHandler.h
0x54a3;STRH_InterfaceReqFailed;Status in interface reply signals error;163;STR_HANDLER;mission/acs/str/StarTrackerHandler.h
0x54a4;STRH_PowerReqFailed;Status in power reply signals error;164;STR_HANDLER;mission/acs/str/StarTrackerHandler.h
0x54a5;STRH_SetParamFailed;Status of reply to parameter set command signals error;165;STR_HANDLER;mission/acs/str/StarTrackerHandler.h
0x54a6;STRH_ActionFailed;Status of reply to action command signals error;166;STR_HANDLER;mission/acs/str/StarTrackerHandler.h
0x54a7;STRH_FilePathTooLong;Received invalid path string. Exceeds allowed length;167;STR_HANDLER;mission/acs/str/StarTrackerHandler.h
0x54a8;STRH_FilenameTooLong;Name of file received with command is too long;168;STR_HANDLER;mission/acs/str/StarTrackerHandler.h
0x54a9;STRH_InvalidProgram;Received version reply with invalid program ID;169;STR_HANDLER;mission/acs/str/StarTrackerHandler.h
0x54aa;STRH_ReplyError;Status field reply signals error;170;STR_HANDLER;mission/acs/str/StarTrackerHandler.h
0x54ab;STRH_CommandTooShort;Received command which is too short (some data is missing for proper execution);171;STR_HANDLER;mission/acs/str/StarTrackerHandler.h
0x54ac;STRH_InvalidLength;Received command with invalid length (too few or too many parameters);172;STR_HANDLER;mission/acs/str/StarTrackerHandler.h
0x54ad;STRH_RegionMismatch;Region mismatch between send and received data;173;STR_HANDLER;mission/acs/str/StarTrackerHandler.h
0x54ae;STRH_AddressMismatch;Address mismatch between send and received data;174;STR_HANDLER;mission/acs/str/StarTrackerHandler.h
0x54af;STRH_LengthMismatch;Length field mismatch between send and received data;175;STR_HANDLER;mission/acs/str/StarTrackerHandler.h
0x54b0;STRH_FileNotExists;Specified file does not exist;176;STR_HANDLER;mission/acs/str/StarTrackerHandler.h
0x54b1;STRH_InvalidType;Download blob pixel command has invalid type field;177;STR_HANDLER;mission/acs/str/StarTrackerHandler.h
0x54b2;STRH_InvalidId;Received FPGA action command with invalid ID;178;STR_HANDLER;mission/acs/str/StarTrackerHandler.h
0x54b3;STRH_ReplyTooShort;Received reply is too short;179;STR_HANDLER;mission/acs/str/StarTrackerHandler.h
0x54b4;STRH_CrcFailure;Received reply with invalid CRC;180;STR_HANDLER;mission/acs/str/StarTrackerHandler.h
0x54b5;STRH_StrHelperExecuting;Star tracker handler currently executing a command and using the communication interface;181;STR_HANDLER;mission/acs/str/StarTrackerHandler.h
0x54b6;STRH_StartrackerAlreadyBooted;Star tracker is already in firmware mode;182;STR_HANDLER;mission/acs/str/StarTrackerHandler.h
0x54b7;STRH_StartrackerNotRunningFirmware;Star tracker must be in firmware mode to run this command;183;STR_HANDLER;mission/acs/str/StarTrackerHandler.h
0x54b8;STRH_StartrackerNotRunningBootloader;Star tracker must be in bootloader mode to run this command;184;STR_HANDLER;mission/acs/str/StarTrackerHandler.h
0x59a0;SUSS_InvalidSpeed;Action Message with invalid speed was received. Valid speeds must be in the range of [-65000, 1000] or [1000, 65000];160;SUS_HANDLER;mission/acs/RwHandler.h
0x59a1;SUSS_InvalidRampTime;Action Message with invalid ramp time was received.;161;SUS_HANDLER;mission/acs/RwHandler.h
0x59a2;SUSS_SetSpeedCommandInvalidLength;Received set speed command has invalid length. Should be 6.;162;SUS_HANDLER;mission/acs/RwHandler.h
0x59a3;SUSS_ExecutionFailed;Command execution failed;163;SUS_HANDLER;mission/acs/RwHandler.h
0x59a4;SUSS_CrcError;Reaction wheel reply has invalid crc;164;SUS_HANDLER;mission/acs/RwHandler.h
0x59a5;SUSS_ValueNotRead;No description;165;SUS_HANDLER;mission/acs/RwHandler.h
0x5e00;GOMS_PacketTooLong;No description;0;GOM_SPACE_HANDLER;mission/power/GomspaceDeviceHandler.h
0x5e01;GOMS_InvalidTableId;No description;1;GOM_SPACE_HANDLER;mission/power/GomspaceDeviceHandler.h
0x5e02;GOMS_InvalidAddress;No description;2;GOM_SPACE_HANDLER;mission/power/GomspaceDeviceHandler.h
0x5e03;GOMS_InvalidParamSize;No description;3;GOM_SPACE_HANDLER;mission/power/GomspaceDeviceHandler.h
0x5e04;GOMS_InvalidPayloadSize;No description;4;GOM_SPACE_HANDLER;mission/power/GomspaceDeviceHandler.h
0x5e05;GOMS_UnknownReplyId;No description;5;GOM_SPACE_HANDLER;mission/power/GomspaceDeviceHandler.h
0x61a0;CCSDS_CommandNotImplemented;Received action message with unknown action id;160;CCSDS_HANDLER;mission/com/CcsdsIpCoreHandler.h
0x6301;JSONBASE_JsonFileNotExists;Specified json file does not exist;1;ARCSEC_JSON_BASE;mission/acs/str/ArcsecJsonParamBase.h
0x6302;JSONBASE_SetNotExists;Requested set does not exist in json file;2;ARCSEC_JSON_BASE;mission/acs/str/ArcsecJsonParamBase.h
0x6303;JSONBASE_ParamNotExists;Requested parameter does not exist in json file;3;ARCSEC_JSON_BASE;mission/acs/str/ArcsecJsonParamBase.h
0x64a0;NVMB_KeyNotExists;Specified key does not exist in json file;160;NVM_PARAM_BASE;mission/memory/NvmParameterBase.h
0x67a0;SADPL_CommandNotSupported;No description;160;SA_DEPL_HANDLER;mission/SolarArrayDeploymentHandler.h
0x67a1;SADPL_DeploymentAlreadyExecuting;No description;161;SA_DEPL_HANDLER;mission/SolarArrayDeploymentHandler.h
0x67a2;SADPL_MainSwitchTimeoutFailure;No description;162;SA_DEPL_HANDLER;mission/SolarArrayDeploymentHandler.h
0x67a3;SADPL_SwitchingDeplSa1Failed;No description;163;SA_DEPL_HANDLER;mission/SolarArrayDeploymentHandler.h
0x67a4;SADPL_SwitchingDeplSa2Failed;No description;164;SA_DEPL_HANDLER;mission/SolarArrayDeploymentHandler.h
0x6a00;ACSCTRL_FileDeletionFailed;File deletion failed and at least one file is still existent.;0;ACS_CTRL;mission/controller/AcsController.h
0x6b02;ACSMEKF_MekfUninitialized;No description;2;ACS_MEKF;mission/controller/acs/MultiplicativeKalmanFilter.h
0x6b03;ACSMEKF_MekfNoGyrData;No description;3;ACS_MEKF;mission/controller/acs/MultiplicativeKalmanFilter.h
0x6b04;ACSMEKF_MekfNoModelVectors;No description;4;ACS_MEKF;mission/controller/acs/MultiplicativeKalmanFilter.h
0x6b05;ACSMEKF_MekfNoSusMgmStrData;No description;5;ACS_MEKF;mission/controller/acs/MultiplicativeKalmanFilter.h
0x6b06;ACSMEKF_MekfCovarianceInversionFailed;No description;6;ACS_MEKF;mission/controller/acs/MultiplicativeKalmanFilter.h
0x6b07;ACSMEKF_MekfNotFinite;No description;7;ACS_MEKF;mission/controller/acs/MultiplicativeKalmanFilter.h
0x6b08;ACSMEKF_MekfInitialized;No description;8;ACS_MEKF;mission/controller/acs/MultiplicativeKalmanFilter.h
0x6b09;ACSMEKF_MekfRunning;No description;9;ACS_MEKF;mission/controller/acs/MultiplicativeKalmanFilter.h
0x6e00;PTM_DumpDone;No description;0;PERSISTENT_TM_STORE;mission/tmtc/PersistentTmStore.h
0x6e01;PTM_BusyDumping;No description;1;PERSISTENT_TM_STORE;mission/tmtc/PersistentTmStore.h
0x6f00;TMS_IsBusy;No description;0;TM_SINK;mission/tmtc/DirectTmSinkIF.h
0x6f01;TMS_PartiallyWritten;No description;1;TM_SINK;mission/tmtc/DirectTmSinkIF.h
0x6f02;TMS_NoWriteActive;No description;2;TM_SINK;mission/tmtc/DirectTmSinkIF.h
0x6f03;TMS_Timeout;No description;3;TM_SINK;mission/tmtc/DirectTmSinkIF.h
0x7000;VCS_ChannelDoesNotExist;No description;0;VIRTUAL_CHANNEL;mission/com/VirtualChannel.h

1 Full ID (hex) Name Description Unique ID Subsytem Name File Path
190 0x2207 TMF_AllDeleted No description 7 TM_STORE_FRONTEND_IF fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h
191 0x2208 TMF_InvalidData No description 8 TM_STORE_FRONTEND_IF fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h
192 0x2209 TMF_NotReady No description 9 TM_STORE_FRONTEND_IF fsfw/src/fsfw/tmstorage/TmStoreFrontendIF.h
193 0x2401 MT_NoPacketFound MT_TooDetailedRequest No description 1 MATCH_TREE_CLASS fsfw/src/fsfw/globalfunctions/DleParser.h fsfw/src/fsfw/globalfunctions/matching/MatchTree.h
194 0x2402 MT_PossiblePacketLoss MT_TooGeneralRequest No description 2 MATCH_TREE_CLASS fsfw/src/fsfw/globalfunctions/DleParser.h fsfw/src/fsfw/globalfunctions/matching/MatchTree.h
195 0x2403 MT_NoMatch No description 3 MATCH_TREE_CLASS fsfw/src/fsfw/globalfunctions/matching/MatchTree.h
196 0x2404 MT_Full No description 4 MATCH_TREE_CLASS fsfw/src/fsfw/globalfunctions/matching/MatchTree.h
197 0x2405 MT_NewNodeCreated No description 5 MATCH_TREE_CLASS fsfw/src/fsfw/globalfunctions/matching/MatchTree.h
210 0x27a8 DHI_NoReplyExpected No description 168 DEVICE_HANDLER_IF fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
211 0x27a9 DHI_NonOpTemperature No description 169 DEVICE_HANDLER_IF fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
212 0x27aa DHI_CommandNotImplemented No description 170 DEVICE_HANDLER_IF fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
213 0x27ab DHI_NonOpStateOfCharge No description 171 DEVICE_HANDLER_IF fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
214 0x27b0 DHI_ChecksumError No description 176 DEVICE_HANDLER_IF fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
215 0x27b1 DHI_LengthMissmatch No description 177 DEVICE_HANDLER_IF fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
216 0x27b2 DHI_InvalidData No description 178 DEVICE_HANDLER_IF fsfw/src/fsfw/devicehandlers/DeviceHandlerIF.h
322 0x3404 DC_InvalidCookieType No description 4 DEVICE_COMMUNICATION_IF fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h
323 0x3405 DC_NotActive No description 5 DEVICE_COMMUNICATION_IF fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h
324 0x3406 DC_TooMuchData No description 6 DEVICE_COMMUNICATION_IF fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h
325 0x3601 0x3407 CFDP_InvalidTlvType DC_Busy No description 1 7 CFDP DEVICE_COMMUNICATION_IF fsfw/src/fsfw/cfdp/definitions.h fsfw/src/fsfw/devicehandlers/DeviceCommunicationIF.h
326 0x3602 0x3601 CFDP_InvalidDirectiveField CFDP_InvalidTlvType No description 2 1 CFDP CFDP_BASE fsfw/src/fsfw/cfdp/definitions.h
327 0x3603 0x3602 CFDP_InvalidPduDatafieldLen CFDP_InvalidDirectiveField No description 3 2 CFDP CFDP_BASE fsfw/src/fsfw/cfdp/definitions.h
328 0x3604 0x3603 CFDP_InvalidAckDirectiveFields CFDP_InvalidPduDatafieldLen No description 4 3 CFDP CFDP_BASE fsfw/src/fsfw/cfdp/definitions.h
329 0x3605 0x3604 CFDP_MetadataCantParseOptions CFDP_InvalidAckDirectiveFields No description 5 4 CFDP CFDP_BASE fsfw/src/fsfw/cfdp/definitions.h
330 0x3606 0x3605 CFDP_NakCantParseOptions CFDP_MetadataCantParseOptions No description 6 5 CFDP CFDP_BASE fsfw/src/fsfw/cfdp/definitions.h
331 0x3607 0x3606 CFDP_FinishedCantParseFsResponses CFDP_NakCantParseOptions No description 7 6 CFDP CFDP_BASE fsfw/src/fsfw/cfdp/definitions.h
332 0x3608 0x3607 CFDP_FilestoreRequiresSecondFile CFDP_FinishedCantParseFsResponses No description 8 7 CFDP CFDP_BASE fsfw/src/fsfw/cfdp/definitions.h
333 0x3609 0x3608 CFDP_FilestoreResponseCantParseFsMessage CFDP_FilestoreRequiresSecondFile No description 9 8 CFDP CFDP_BASE fsfw/src/fsfw/cfdp/definitions.h
334 0x360a 0x3609 CFDP_InvalidPduFormat CFDP_FilestoreResponseCantParseFsMessage No description 10 9 CFDP CFDP_BASE fsfw/src/fsfw/cfdp/definitions.h
335 0x3701 0x360a TSI_BadTimestamp CFDP_InvalidPduFormat No description 1 10 TIME_STAMPER_IF CFDP_BASE fsfw/src/fsfw/timemanager/TimeStampIF.h fsfw/src/fsfw/cfdp/definitions.h
336 0x38a1 0x3700 SGP4_InvalidEccentricity CFDP_SourceTransactionPending No description 161 0 SGP4PROPAGATOR_CLASS CFDP_HANDLER fsfw/src/fsfw/coordinates/Sgp4Propagator.h fsfw/src/fsfw/cfdp/handler/defs.h
337 0x38a2 0x3701 SGP4_InvalidMeanMotion CFDP_FileDoesNotExist No description 162 1 SGP4PROPAGATOR_CLASS CFDP_HANDLER fsfw/src/fsfw/coordinates/Sgp4Propagator.h fsfw/src/fsfw/cfdp/handler/defs.h
338 0x38a3 0x3702 SGP4_InvalidPerturbationElements CFDP_FileSegmentLenInvalid No description 163 2 SGP4PROPAGATOR_CLASS CFDP_HANDLER fsfw/src/fsfw/coordinates/Sgp4Propagator.h fsfw/src/fsfw/cfdp/handler/defs.h
339 0x38a4 0x3703 SGP4_InvalidSemiLatusRectum CFDP_SourceNameEmpty No description 164 3 SGP4PROPAGATOR_CLASS CFDP_HANDLER fsfw/src/fsfw/coordinates/Sgp4Propagator.h fsfw/src/fsfw/cfdp/handler/defs.h
340 0x38a5 0x3704 SGP4_InvalidEpochElements CFDP_DestNameEmpty No description 165 4 SGP4PROPAGATOR_CLASS CFDP_HANDLER fsfw/src/fsfw/coordinates/Sgp4Propagator.h fsfw/src/fsfw/cfdp/handler/defs.h
341 0x38a6 0x3705 SGP4_SatelliteHasDecayed CFDP_WrongRemoteCfgEntityId No description 166 5 SGP4PROPAGATOR_CLASS CFDP_HANDLER fsfw/src/fsfw/coordinates/Sgp4Propagator.h fsfw/src/fsfw/cfdp/handler/defs.h
342 0x38b1 0x3706 SGP4_TleTooOld CFDP_TargetMsgQueueFull No description 177 6 SGP4PROPAGATOR_CLASS CFDP_HANDLER fsfw/src/fsfw/coordinates/Sgp4Propagator.h fsfw/src/fsfw/cfdp/handler/defs.h
343 0x38b2 0x3707 SGP4_TleNotInitialized CFDP_TmStoreFull No description 178 7 SGP4PROPAGATOR_CLASS CFDP_HANDLER fsfw/src/fsfw/coordinates/Sgp4Propagator.h fsfw/src/fsfw/cfdp/handler/defs.h
344 0x3901 0x3801 MUX_NotEnoughResources TSI_BadTimestamp No description 1 MUTEX_IF TIME_STAMPER_IF fsfw/src/fsfw/ipc/MutexIF.h fsfw/src/fsfw/timemanager/TimeStampIF.h
345 0x3902 0x39a1 MUX_InsufficientMemory SGP4_InvalidEccentricity No description 2 161 MUTEX_IF SGP4PROPAGATOR_CLASS fsfw/src/fsfw/ipc/MutexIF.h fsfw/src/fsfw/coordinates/Sgp4Propagator.h
346 0x3903 0x39a2 MUX_NoPrivilege SGP4_InvalidMeanMotion No description 3 162 MUTEX_IF SGP4PROPAGATOR_CLASS fsfw/src/fsfw/ipc/MutexIF.h fsfw/src/fsfw/coordinates/Sgp4Propagator.h
347 0x3904 0x39a3 MUX_WrongAttributeSetting SGP4_InvalidPerturbationElements No description 4 163 MUTEX_IF SGP4PROPAGATOR_CLASS fsfw/src/fsfw/ipc/MutexIF.h fsfw/src/fsfw/coordinates/Sgp4Propagator.h
348 0x3905 0x39a4 MUX_MutexAlreadyLocked SGP4_InvalidSemiLatusRectum No description 5 164 MUTEX_IF SGP4PROPAGATOR_CLASS fsfw/src/fsfw/ipc/MutexIF.h fsfw/src/fsfw/coordinates/Sgp4Propagator.h
349 0x3906 0x39a5 MUX_MutexNotFound SGP4_InvalidEpochElements No description 6 165 MUTEX_IF SGP4PROPAGATOR_CLASS fsfw/src/fsfw/ipc/MutexIF.h fsfw/src/fsfw/coordinates/Sgp4Propagator.h
350 0x3907 0x39a6 MUX_MutexMaxLocks SGP4_SatelliteHasDecayed No description 7 166 MUTEX_IF SGP4PROPAGATOR_CLASS fsfw/src/fsfw/ipc/MutexIF.h fsfw/src/fsfw/coordinates/Sgp4Propagator.h
351 0x3908 0x39b1 MUX_CurrThreadAlreadyOwnsMutex SGP4_TleTooOld No description 8 177 MUTEX_IF SGP4PROPAGATOR_CLASS fsfw/src/fsfw/ipc/MutexIF.h fsfw/src/fsfw/coordinates/Sgp4Propagator.h
352 0x3909 0x39b2 MUX_CurrThreadDoesNotOwnMutex SGP4_TleNotInitialized No description 9 178 MUTEX_IF SGP4PROPAGATOR_CLASS fsfw/src/fsfw/ipc/MutexIF.h fsfw/src/fsfw/coordinates/Sgp4Propagator.h
353 0x390a 0x3a01 MUX_MutexTimeout MUX_NotEnoughResources No description 10 1 MUTEX_IF fsfw/src/fsfw/ipc/MutexIF.h
354 0x390b 0x3a02 MUX_MutexInvalidId MUX_InsufficientMemory No description 11 2 MUTEX_IF fsfw/src/fsfw/ipc/MutexIF.h
355 0x390c 0x3a03 MUX_MutexDestroyedWhileWaiting MUX_NoPrivilege No description 12 3 MUTEX_IF fsfw/src/fsfw/ipc/MutexIF.h
356 0x3a01 0x3a04 MQI_Empty MUX_WrongAttributeSetting No description 1 4 MESSAGE_QUEUE_IF MUTEX_IF fsfw/src/fsfw/ipc/MessageQueueIF.h fsfw/src/fsfw/ipc/MutexIF.h
357 0x3a02 0x3a05 MQI_Full MUX_MutexAlreadyLocked No space left for more messages No description 2 5 MESSAGE_QUEUE_IF MUTEX_IF fsfw/src/fsfw/ipc/MessageQueueIF.h fsfw/src/fsfw/ipc/MutexIF.h
358 0x3a03 0x3a06 MQI_NoReplyPartner MUX_MutexNotFound Returned if a reply method was called without partner No description 3 6 MESSAGE_QUEUE_IF MUTEX_IF fsfw/src/fsfw/ipc/MessageQueueIF.h fsfw/src/fsfw/ipc/MutexIF.h
359 0x3a04 0x3a07 MQI_DestinationInvalid MUX_MutexMaxLocks Returned if the target destination is invalid. No description 4 7 MESSAGE_QUEUE_IF MUTEX_IF fsfw/src/fsfw/ipc/MessageQueueIF.h fsfw/src/fsfw/ipc/MutexIF.h
360 0x3b00 0x3a08 SPH_ConnBroken MUX_CurrThreadAlreadyOwnsMutex No description 0 8 SEMAPHORE_IF MUTEX_IF fsfw/src/fsfw/osal/common/TcpTmTcServer.h fsfw/src/fsfw/ipc/MutexIF.h
361 0x3b01 0x3a09 SPH_SemaphoreTimeout MUX_CurrThreadDoesNotOwnMutex No description 1 9 SEMAPHORE_IF MUTEX_IF fsfw/src/fsfw/tasks/SemaphoreIF.h fsfw/src/fsfw/ipc/MutexIF.h
362 0x3b02 0x3a0a SPH_SemaphoreNotOwned MUX_MutexTimeout No description 2 10 SEMAPHORE_IF MUTEX_IF fsfw/src/fsfw/tasks/SemaphoreIF.h fsfw/src/fsfw/ipc/MutexIF.h
363 0x3b03 0x3a0b SPH_SemaphoreInvalid MUX_MutexInvalidId No description 3 11 SEMAPHORE_IF MUTEX_IF fsfw/src/fsfw/tasks/SemaphoreIF.h fsfw/src/fsfw/ipc/MutexIF.h
364 0x3c00 0x3a0c LPIF_PoolEntryNotFound MUX_MutexDestroyedWhileWaiting No description 0 12 LOCAL_POOL_OWNER_IF MUTEX_IF fsfw/src/fsfw/datapoollocal/localPoolDefinitions.h fsfw/src/fsfw/ipc/MutexIF.h
365 0x3c01 0x3b01 LPIF_PoolEntryTypeConflict MQI_Empty No description 1 LOCAL_POOL_OWNER_IF MESSAGE_QUEUE_IF fsfw/src/fsfw/datapoollocal/localPoolDefinitions.h fsfw/src/fsfw/ipc/MessageQueueIF.h
366 0x3da0 0x3b02 PVA_InvalidReadWriteMode MQI_Full No description No space left for more messages 160 2 POOL_VARIABLE_IF MESSAGE_QUEUE_IF fsfw/src/fsfw/datapool/PoolVariableIF.h fsfw/src/fsfw/ipc/MessageQueueIF.h
367 0x3da1 0x3b03 PVA_InvalidPoolEntry MQI_NoReplyPartner No description Returned if a reply method was called without partner 161 3 POOL_VARIABLE_IF MESSAGE_QUEUE_IF fsfw/src/fsfw/datapool/PoolVariableIF.h fsfw/src/fsfw/ipc/MessageQueueIF.h
368 0x3e00 0x3b04 HKM_QueueOrDestinationInvalid MQI_DestinationInvalid No description Returned if the target destination is invalid. 0 4 HOUSEKEEPING_MANAGER MESSAGE_QUEUE_IF fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h fsfw/src/fsfw/ipc/MessageQueueIF.h
369 0x3e01 0x3c01 HKM_WrongHkPacketType SPH_SemaphoreTimeout No description 1 HOUSEKEEPING_MANAGER SEMAPHORE_IF fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h fsfw/src/fsfw/tasks/SemaphoreIF.h
370 0x3e02 0x3c02 HKM_ReportingStatusUnchanged SPH_SemaphoreNotOwned No description 2 HOUSEKEEPING_MANAGER SEMAPHORE_IF fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h fsfw/src/fsfw/tasks/SemaphoreIF.h
371 0x3e03 0x3c03 HKM_PeriodicHelperInvalid SPH_SemaphoreInvalid No description 3 HOUSEKEEPING_MANAGER SEMAPHORE_IF fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h fsfw/src/fsfw/tasks/SemaphoreIF.h
372 0x3e04 0x3d00 HKM_PoolobjectNotFound LPIF_PoolEntryNotFound No description 4 0 HOUSEKEEPING_MANAGER LOCAL_POOL_OWNER_IF fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h fsfw/src/fsfw/datapoollocal/localPoolDefinitions.h
373 0x3e05 0x3d01 HKM_DatasetNotFound LPIF_PoolEntryTypeConflict No description 5 1 HOUSEKEEPING_MANAGER LOCAL_POOL_OWNER_IF fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h fsfw/src/fsfw/datapoollocal/localPoolDefinitions.h
374 0x3f01 0x3ea0 DLEE_StreamTooShort PVA_InvalidReadWriteMode No description 1 160 DLE_ENCODER POOL_VARIABLE_IF fsfw/src/fsfw/globalfunctions/DleEncoder.h fsfw/src/fsfw/datapool/PoolVariableIF.h
375 0x3f02 0x3ea1 DLEE_DecodingError PVA_InvalidPoolEntry No description 2 161 DLE_ENCODER POOL_VARIABLE_IF fsfw/src/fsfw/globalfunctions/DleEncoder.h fsfw/src/fsfw/datapool/PoolVariableIF.h
376 0x4201 0x3f00 PUS11_InvalidTypeTimeWindow HKM_QueueOrDestinationInvalid No description 1 0 PUS_SERVICE_11 HOUSEKEEPING_MANAGER fsfw/src/fsfw/pus/Service11TelecommandScheduling.h fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h
377 0x4202 0x3f01 PUS11_InvalidTimeWindow HKM_WrongHkPacketType No description 2 1 PUS_SERVICE_11 HOUSEKEEPING_MANAGER fsfw/src/fsfw/pus/Service11TelecommandScheduling.h fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h
378 0x4203 0x3f02 PUS11_TimeshiftingNotPossible HKM_ReportingStatusUnchanged No description 3 2 PUS_SERVICE_11 HOUSEKEEPING_MANAGER fsfw/src/fsfw/pus/Service11TelecommandScheduling.h fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h
379 0x4204 0x3f03 PUS11_InvalidRelativeTime HKM_PeriodicHelperInvalid No description 4 3 PUS_SERVICE_11 HOUSEKEEPING_MANAGER fsfw/src/fsfw/pus/Service11TelecommandScheduling.h fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h
380 0x4205 0x3f04 PUS11_ContainedTcTooSmall HKM_PoolobjectNotFound No description 5 4 PUS_SERVICE_11 HOUSEKEEPING_MANAGER fsfw/src/fsfw/pus/Service11TelecommandScheduling.h fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h
381 0x4206 0x3f05 PUS11_ContainedTcCrcMissmatch HKM_DatasetNotFound No description 6 5 PUS_SERVICE_11 HOUSEKEEPING_MANAGER fsfw/src/fsfw/pus/Service11TelecommandScheduling.h fsfw/src/fsfw/datapoollocal/LocalDataPoolManager.h
382 0x4300 0x4001 FILS_GenericFileError DLEE_StreamTooShort No description 0 1 FILE_SYSTEM DLE_ENCODER fsfw/src/fsfw/filesystem/HasFileSystemIF.h fsfw/src/fsfw/globalfunctions/DleEncoder.h
383 0x4301 0x4002 FILS_GenericDirError DLEE_DecodingError No description 1 2 FILE_SYSTEM DLE_ENCODER fsfw/src/fsfw/filesystem/HasFileSystemIF.h fsfw/src/fsfw/globalfunctions/DleEncoder.h
384 0x4302 0x4301 FILS_FilesystemInactive PUS11_InvalidTypeTimeWindow No description 2 1 FILE_SYSTEM PUS_SERVICE_11 fsfw/src/fsfw/filesystem/HasFileSystemIF.h fsfw/src/fsfw/pus/Service11TelecommandScheduling.h
385 0x4303 0x4302 FILS_GenericRenameError PUS11_InvalidTimeWindow No description 3 2 FILE_SYSTEM PUS_SERVICE_11 fsfw/src/fsfw/filesystem/HasFileSystemIF.h fsfw/src/fsfw/pus/Service11TelecommandScheduling.h
386 0x4304 0x4303 FILS_IsBusy PUS11_TimeshiftingNotPossible No description 4 3 FILE_SYSTEM PUS_SERVICE_11 fsfw/src/fsfw/filesystem/HasFileSystemIF.h fsfw/src/fsfw/pus/Service11TelecommandScheduling.h
387 0x4305 0x4304 FILS_InvalidParameters PUS11_InvalidRelativeTime No description 5 4 FILE_SYSTEM PUS_SERVICE_11 fsfw/src/fsfw/filesystem/HasFileSystemIF.h fsfw/src/fsfw/pus/Service11TelecommandScheduling.h
388 0x430a 0x4305 FILS_FileDoesNotExist PUS11_ContainedTcTooSmall No description 10 5 FILE_SYSTEM PUS_SERVICE_11 fsfw/src/fsfw/filesystem/HasFileSystemIF.h fsfw/src/fsfw/pus/Service11TelecommandScheduling.h
389 0x430b 0x4306 FILS_FileAlreadyExists PUS11_ContainedTcCrcMissmatch No description 11 6 FILE_SYSTEM PUS_SERVICE_11 fsfw/src/fsfw/filesystem/HasFileSystemIF.h fsfw/src/fsfw/pus/Service11TelecommandScheduling.h
390 0x430c 0x4400 FILS_NotAFile FILS_GenericFileError No description 12 0 FILE_SYSTEM fsfw/src/fsfw/filesystem/HasFileSystemIF.h
391 0x430d 0x4401 FILS_FileLocked FILS_GenericDirError No description 13 1 FILE_SYSTEM fsfw/src/fsfw/filesystem/HasFileSystemIF.h
392 0x430e 0x4402 FILS_PermissionDenied FILS_FilesystemInactive No description 14 2 FILE_SYSTEM fsfw/src/fsfw/filesystem/HasFileSystemIF.h
393 0x4315 0x4403 FILS_DirectoryDoesNotExist FILS_GenericRenameError No description 21 3 FILE_SYSTEM fsfw/src/fsfw/filesystem/HasFileSystemIF.h
394 0x4316 0x4404 FILS_DirectoryAlreadyExists FILS_IsBusy No description 22 4 FILE_SYSTEM fsfw/src/fsfw/filesystem/HasFileSystemIF.h
395 0x4317 0x4405 FILS_NotADirectory FILS_InvalidParameters No description 23 5 FILE_SYSTEM fsfw/src/fsfw/filesystem/HasFileSystemIF.h
396 0x4318 0x440a FILS_DirectoryNotEmpty FILS_FileDoesNotExist No description 24 10 FILE_SYSTEM fsfw/src/fsfw/filesystem/HasFileSystemIF.h
397 0x431e 0x440b FILS_SequencePacketMissingWrite FILS_FileAlreadyExists No description 30 11 FILE_SYSTEM fsfw/src/fsfw/filesystem/HasFileSystemIF.h
398 0x431f 0x440c FILS_SequencePacketMissingRead FILS_NotAFile No description 31 12 FILE_SYSTEM fsfw/src/fsfw/filesystem/HasFileSystemIF.h
399 0x4400 0x440d UXOS_ExecutionFinished FILS_FileLocked Execution of the current command has finished No description 0 13 LINUX_OSAL FILE_SYSTEM fsfw/src/fsfw_hal/linux/CommandExecutor.h fsfw/src/fsfw/filesystem/HasFileSystemIF.h
400 0x4401 0x440e UXOS_CommandPending FILS_PermissionDenied Command is pending. This will also be returned if the user tries to load another command but a command is still pending No description 1 14 LINUX_OSAL FILE_SYSTEM fsfw/src/fsfw_hal/linux/CommandExecutor.h fsfw/src/fsfw/filesystem/HasFileSystemIF.h
401 0x4402 0x4415 UXOS_BytesRead FILS_DirectoryDoesNotExist Some bytes have been read from the executing process No description 2 21 LINUX_OSAL FILE_SYSTEM fsfw/src/fsfw_hal/linux/CommandExecutor.h fsfw/src/fsfw/filesystem/HasFileSystemIF.h
402 0x4403 0x4416 UXOS_CommandError FILS_DirectoryAlreadyExists Command execution failed No description 3 22 LINUX_OSAL FILE_SYSTEM fsfw/src/fsfw_hal/linux/CommandExecutor.h fsfw/src/fsfw/filesystem/HasFileSystemIF.h
403 0x4404 0x4417 UXOS_NoCommandLoadedOrPending FILS_NotADirectory No description 4 23 LINUX_OSAL FILE_SYSTEM fsfw/src/fsfw_hal/linux/CommandExecutor.h fsfw/src/fsfw/filesystem/HasFileSystemIF.h
404 0x4406 0x4418 UXOS_PcloseCallError FILS_DirectoryNotEmpty No description 6 24 LINUX_OSAL FILE_SYSTEM fsfw/src/fsfw_hal/linux/CommandExecutor.h fsfw/src/fsfw/filesystem/HasFileSystemIF.h
405 0x4500 0x441e HSPI_HalTimeoutRetval FILS_SequencePacketMissingWrite No description 0 30 HAL_SPI FILE_SYSTEM fsfw/src/fsfw_hal/stm32h7/spi/spiDefinitions.h fsfw/src/fsfw/filesystem/HasFileSystemIF.h
406 0x4501 0x441f HSPI_HalBusyRetval FILS_SequencePacketMissingRead No description 1 31 HAL_SPI FILE_SYSTEM fsfw/src/fsfw_hal/stm32h7/spi/spiDefinitions.h fsfw/src/fsfw/filesystem/HasFileSystemIF.h
407 0x4502 0x4500 HSPI_HalErrorRetval UXOS_ExecutionFinished No description Execution of the current command has finished 2 0 HAL_SPI LINUX_OSAL fsfw/src/fsfw_hal/stm32h7/spi/spiDefinitions.h fsfw/src/fsfw_hal/linux/CommandExecutor.h
408 0x4601 0x4501 HURT_UartReadFailure UXOS_CommandPending No description Command is pending. This will also be returned if the user tries to load another command but a command is still pending 1 HAL_UART LINUX_OSAL fsfw/src/fsfw_hal/linux/serial/SerialComIF.h fsfw/src/fsfw_hal/linux/CommandExecutor.h
409 0x4602 0x4502 HURT_UartReadSizeMissmatch UXOS_BytesRead No description Some bytes have been read from the executing process 2 HAL_UART LINUX_OSAL fsfw/src/fsfw_hal/linux/serial/SerialComIF.h fsfw/src/fsfw_hal/linux/CommandExecutor.h
410 0x4603 0x4503 HURT_UartRxBufferTooSmall UXOS_CommandError No description Command execution failed 3 HAL_UART LINUX_OSAL fsfw/src/fsfw_hal/linux/serial/SerialComIF.h fsfw/src/fsfw_hal/linux/CommandExecutor.h
411 0x4801 0x4504 HGIO_UnknownGpioId UXOS_NoCommandLoadedOrPending No description 1 4 HAL_GPIO LINUX_OSAL fsfw/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h fsfw/src/fsfw_hal/linux/CommandExecutor.h
412 0x4802 0x4506 HGIO_DriveGpioFailure UXOS_PcloseCallError No description 2 6 HAL_GPIO LINUX_OSAL fsfw/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h fsfw/src/fsfw_hal/linux/CommandExecutor.h
413 0x4803 0x4600 HGIO_GpioTypeFailure HSPI_OpeningFileFailed No description 3 0 HAL_GPIO HAL_SPI fsfw/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h fsfw/src/fsfw_hal/common/spi/spiCommon.h
414 0x4804 0x4601 HGIO_GpioInvalidInstance HSPI_FullDuplexTransferFailed No description 4 1 HAL_GPIO HAL_SPI fsfw/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h fsfw/src/fsfw_hal/common/spi/spiCommon.h
415 0x4805 0x4602 HGIO_GpioDuplicateDetected HSPI_HalfDuplexTransferFailed No description 5 2 HAL_GPIO HAL_SPI fsfw/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h fsfw/src/fsfw_hal/common/spi/spiCommon.h
416 0x4806 0x4603 HGIO_GpioInitFailed HSPI_Timeout No description 6 3 HAL_GPIO HAL_SPI fsfw/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h fsfw/src/fsfw_hal/common/spi/spiCommon.h
417 0x4807 0x4604 HGIO_GpioGetValueFailed HSPI_Busy No description 7 4 HAL_GPIO HAL_SPI fsfw/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h fsfw/src/fsfw_hal/common/spi/spiCommon.h
418 0x4c00 0x4605 SPPA_NoPacketFound HSPI_GenericError No description 0 5 SPACE_PACKET_PARSER HAL_SPI fsfw/src/fsfw/tmtcservices/SpacePacketParser.h fsfw/src/fsfw_hal/common/spi/spiCommon.h
419 0x4c01 0x4701 SPPA_SplitPacket HURT_UartReadFailure No description 1 SPACE_PACKET_PARSER HAL_UART fsfw/src/fsfw/tmtcservices/SpacePacketParser.h fsfw/src/fsfw_hal/linux/serial/SerialComIF.h
420 0x4fa1 0x4702 HEATER_CommandNotSupported HURT_UartReadSizeMissmatch No description 161 2 HEATER_HANDLER HAL_UART mission/devices/HeaterHandler.h fsfw/src/fsfw_hal/linux/serial/SerialComIF.h
421 0x4fa2 0x4703 HEATER_InitFailed HURT_UartRxBufferTooSmall No description 162 3 HEATER_HANDLER HAL_UART mission/devices/HeaterHandler.h fsfw/src/fsfw_hal/linux/serial/SerialComIF.h
422 0x4fa3 0x4901 HEATER_InvalidSwitchNr HGIO_UnknownGpioId No description 163 1 HEATER_HANDLER HAL_GPIO mission/devices/HeaterHandler.h fsfw/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h
423 0x4fa4 0x4902 HEATER_MainSwitchSetTimeout HGIO_DriveGpioFailure No description 164 2 HEATER_HANDLER HAL_GPIO mission/devices/HeaterHandler.h fsfw/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h
424 0x4fa5 0x4903 HEATER_CommandAlreadyWaiting HGIO_GpioTypeFailure No description 165 3 HEATER_HANDLER HAL_GPIO mission/devices/HeaterHandler.h fsfw/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h
425 0x50a0 0x4904 SYRLINKS_CrcFailure HGIO_GpioInvalidInstance No description 160 4 SYRLINKS_HANDLER HAL_GPIO mission/devices/SyrlinksHandler.h fsfw/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h
426 0x50a1 0x4905 SYRLINKS_UartFraminOrParityErrorAck HGIO_GpioDuplicateDetected No description 161 5 SYRLINKS_HANDLER HAL_GPIO mission/devices/SyrlinksHandler.h fsfw/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h
427 0x50a2 0x4906 SYRLINKS_BadCharacterAck HGIO_GpioInitFailed No description 162 6 SYRLINKS_HANDLER HAL_GPIO mission/devices/SyrlinksHandler.h fsfw/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h
428 0x50a3 0x4907 SYRLINKS_BadParameterValueAck HGIO_GpioGetValueFailed No description 163 7 SYRLINKS_HANDLER HAL_GPIO mission/devices/SyrlinksHandler.h fsfw/src/fsfw_hal/linux/gpio/LinuxLibgpioIF.h
429 0x50a4 0x4d00 SYRLINKS_BadEndOfFrameAck SPPA_NoPacketFound No description 164 0 SYRLINKS_HANDLER SPACE_PACKET_PARSER mission/devices/SyrlinksHandler.h fsfw/src/fsfw/tmtcservices/SpacePacketParser.h
430 0x50a5 0x4d01 SYRLINKS_UnknownCommandIdAck SPPA_SplitPacket No description 165 1 SYRLINKS_HANDLER SPACE_PACKET_PARSER mission/devices/SyrlinksHandler.h fsfw/src/fsfw/tmtcservices/SpacePacketParser.h
431 0x50a6 0x50a1 SYRLINKS_BadCrcAck HEATER_CommandNotSupported No description 166 161 SYRLINKS_HANDLER HEATER_HANDLER mission/devices/SyrlinksHandler.h mission/tcs/HeaterHandler.h
432 0x50a7 0x50a2 SYRLINKS_ReplyWrongSize HEATER_InitFailed No description 167 162 SYRLINKS_HANDLER HEATER_HANDLER mission/devices/SyrlinksHandler.h mission/tcs/HeaterHandler.h
433 0x50a8 0x50a3 SYRLINKS_MissingStartFrameCharacter HEATER_InvalidSwitchNr No description 168 163 SYRLINKS_HANDLER HEATER_HANDLER mission/devices/SyrlinksHandler.h mission/tcs/HeaterHandler.h
434 0x5100 0x50a4 IMTQ_InvalidCommandCode HEATER_MainSwitchSetTimeout No description 0 164 IMTQ_HANDLER HEATER_HANDLER mission/devices/devicedefinitions/imtqHelpers.h mission/tcs/HeaterHandler.h
435 0x5101 0x50a5 IMTQ_MgmMeasurementLowLevelError HEATER_CommandAlreadyWaiting No description 1 165 IMTQ_HANDLER HEATER_HANDLER mission/devices/devicedefinitions/imtqHelpers.h mission/tcs/HeaterHandler.h
436 0x5102 0x51a0 IMTQ_ActuateCmdLowLevelError SYRLINKS_CrcFailure No description 2 160 IMTQ_HANDLER SYRLINKS_HANDLER mission/devices/devicedefinitions/imtqHelpers.h mission/com/SyrlinksHandler.h
437 0x5103 0x51a1 IMTQ_ParameterMissing SYRLINKS_UartFraminOrParityErrorAck No description 3 161 IMTQ_HANDLER SYRLINKS_HANDLER mission/devices/devicedefinitions/imtqHelpers.h mission/com/SyrlinksHandler.h
438 0x5104 0x51a2 IMTQ_ParameterInvalid SYRLINKS_BadCharacterAck No description 4 162 IMTQ_HANDLER SYRLINKS_HANDLER mission/devices/devicedefinitions/imtqHelpers.h mission/com/SyrlinksHandler.h
439 0x5105 0x51a3 IMTQ_CcUnavailable SYRLINKS_BadParameterValueAck No description 5 163 IMTQ_HANDLER SYRLINKS_HANDLER mission/devices/devicedefinitions/imtqHelpers.h mission/com/SyrlinksHandler.h
440 0x5106 0x51a4 IMTQ_InternalProcessingError SYRLINKS_BadEndOfFrameAck No description 6 164 IMTQ_HANDLER SYRLINKS_HANDLER mission/devices/devicedefinitions/imtqHelpers.h mission/com/SyrlinksHandler.h
441 0x5107 0x51a5 IMTQ_RejectedWithoutReason SYRLINKS_UnknownCommandIdAck No description 7 165 IMTQ_HANDLER SYRLINKS_HANDLER mission/devices/devicedefinitions/imtqHelpers.h mission/com/SyrlinksHandler.h
442 0x5108 0x51a6 IMTQ_CmdErrUnknown SYRLINKS_BadCrcAck No description 8 166 IMTQ_HANDLER SYRLINKS_HANDLER mission/devices/devicedefinitions/imtqHelpers.h mission/com/SyrlinksHandler.h
443 0x51a7 IMTQ_UnexpectedSelfTestReply SYRLINKS_ReplyWrongSize The status reply to a self test command was received but no self test command has been sent. This should normally never happen. No description 167 IMTQ_HANDLER SYRLINKS_HANDLER mission/devices/devicedefinitions/imtqHelpers.h mission/com/SyrlinksHandler.h
444 0x52b0 0x51a8 RWHA_SpiWriteFailure SYRLINKS_MissingStartFrameCharacter No description 176 168 RW_HANDLER SYRLINKS_HANDLER mission/devices/devicedefinitions/rwHelpers.h mission/com/SyrlinksHandler.h
445 0x52b1 0x5200 RWHA_SpiReadFailure IMTQ_InvalidCommandCode Used by the spi send function to tell a failing read call No description 177 0 RW_HANDLER IMTQ_HANDLER mission/devices/devicedefinitions/rwHelpers.h mission/acs/imtqHelpers.h
446 0x52b2 0x5201 RWHA_MissingStartSign IMTQ_MgmMeasurementLowLevelError Can be used by the HDLC decoding mechanism to inform about a missing start sign 0x7E No description 178 1 RW_HANDLER IMTQ_HANDLER mission/devices/devicedefinitions/rwHelpers.h mission/acs/imtqHelpers.h
447 0x52b3 0x5202 RWHA_InvalidSubstitute IMTQ_ActuateCmdLowLevelError Can be used by the HDLC decoding mechanism to inform about an invalid substitution combination No description 179 2 RW_HANDLER IMTQ_HANDLER mission/devices/devicedefinitions/rwHelpers.h mission/acs/imtqHelpers.h
448 0x52b4 0x5203 RWHA_MissingEndSign IMTQ_ParameterMissing HDLC decoding mechanism never receives the end sign 0x7E No description 180 3 RW_HANDLER IMTQ_HANDLER mission/devices/devicedefinitions/rwHelpers.h mission/acs/imtqHelpers.h
449 0x52b5 0x5204 RWHA_NoReply IMTQ_ParameterInvalid Reaction wheel only responds with empty frames. No description 181 4 RW_HANDLER IMTQ_HANDLER mission/devices/devicedefinitions/rwHelpers.h mission/acs/imtqHelpers.h
450 0x52b6 0x5205 RWHA_NoStartMarker IMTQ_CcUnavailable Expected a start marker as first byte No description 182 5 RW_HANDLER IMTQ_HANDLER mission/devices/devicedefinitions/rwHelpers.h mission/acs/imtqHelpers.h
451 0x52b7 0x5206 RWHA_SpiReadTimeout IMTQ_InternalProcessingError Timeout when reading reply No description 183 6 RW_HANDLER IMTQ_HANDLER mission/devices/devicedefinitions/rwHelpers.h mission/acs/imtqHelpers.h
452 0x58a0 0x5207 SUSS_ErrorUnlockMutex IMTQ_RejectedWithoutReason No description 160 7 SUS_HANDLER IMTQ_HANDLER mission/devices/LegacySusHandler.h mission/acs/imtqHelpers.h
453 0x58a1 0x5208 SUSS_ErrorLockMutex IMTQ_CmdErrUnknown No description 161 8 SUS_HANDLER IMTQ_HANDLER mission/devices/LegacySusHandler.h mission/acs/imtqHelpers.h
454 0x5d00 0x5209 GOMS_PacketTooLong IMTQ_StartupCfgError No description 0 9 GOM_SPACE_HANDLER IMTQ_HANDLER mission/devices/GomspaceDeviceHandler.h mission/acs/imtqHelpers.h
455 0x5d01 0x520a GOMS_InvalidTableId IMTQ_UnexpectedSelfTestReply No description The status reply to a self test command was received but no self test command has been sent. This should normally never happen. 1 10 GOM_SPACE_HANDLER IMTQ_HANDLER mission/devices/GomspaceDeviceHandler.h mission/acs/imtqHelpers.h
456 0x5d02 0x53b0 GOMS_InvalidAddress RWHA_SpiWriteFailure No description 2 176 GOM_SPACE_HANDLER RW_HANDLER mission/devices/GomspaceDeviceHandler.h mission/acs/rwHelpers.h
457 0x5d03 0x53b1 GOMS_InvalidParamSize RWHA_SpiReadFailure No description Used by the spi send function to tell a failing read call 3 177 GOM_SPACE_HANDLER RW_HANDLER mission/devices/GomspaceDeviceHandler.h mission/acs/rwHelpers.h
458 0x5d04 0x53b2 GOMS_InvalidPayloadSize RWHA_MissingStartSign No description Can be used by the HDLC decoding mechanism to inform about a missing start sign 0x7E 4 178 GOM_SPACE_HANDLER RW_HANDLER mission/devices/GomspaceDeviceHandler.h mission/acs/rwHelpers.h
459 0x5d05 0x53b3 GOMS_UnknownReplyId RWHA_InvalidSubstitute No description Can be used by the HDLC decoding mechanism to inform about an invalid substitution combination 5 179 GOM_SPACE_HANDLER RW_HANDLER mission/devices/GomspaceDeviceHandler.h mission/acs/rwHelpers.h
460 0x5da0 0x53b4 GOMS_InvalidSpeed RWHA_MissingEndSign Action Message with invalid speed was received. Valid speeds must be in the range of [-65000, 1000] or [1000, 65000] HDLC decoding mechanism never receives the end sign 0x7E 160 180 GOM_SPACE_HANDLER RW_HANDLER mission/devices/RwHandler.h mission/acs/rwHelpers.h
461 0x5da1 0x53b5 GOMS_InvalidRampTime RWHA_NoReply Action Message with invalid ramp time was received. Reaction wheel only responds with empty frames. 161 181 GOM_SPACE_HANDLER RW_HANDLER mission/devices/RwHandler.h mission/acs/rwHelpers.h
462 0x5da2 0x53b6 GOMS_SetSpeedCommandInvalidLength RWHA_NoStartMarker Received set speed command has invalid length. Should be 6. Expected a start marker as first byte 162 182 GOM_SPACE_HANDLER RW_HANDLER mission/devices/RwHandler.h mission/acs/rwHelpers.h
463 0x5da3 0x53b7 GOMS_ExecutionFailed RWHA_SpiReadTimeout Command execution failed Timeout when reading reply 163 183 GOM_SPACE_HANDLER RW_HANDLER mission/devices/RwHandler.h mission/acs/rwHelpers.h
464 0x5da4 0x54a0 GOMS_CrcError STRH_TemperatureReqFailed Reaction wheel reply has invalid crc Status in temperature reply signals error 164 160 GOM_SPACE_HANDLER STR_HANDLER mission/devices/RwHandler.h mission/acs/str/StarTrackerHandler.h
465 0x5da5 0x54a1 GOMS_ValueNotRead STRH_PingFailed No description Ping command failed 165 161 GOM_SPACE_HANDLER STR_HANDLER mission/devices/RwHandler.h mission/acs/str/StarTrackerHandler.h
466 0x60a0 0x54a2 CCSDS_CommandNotImplemented STRH_VersionReqFailed Received action message with unknown action id Status in version reply signals error 160 162 CCSDS_HANDLER STR_HANDLER mission/tmtc/CcsdsIpCoreHandler.h mission/acs/str/StarTrackerHandler.h
467 0x63a0 0x54a3 NVMB_KeyNotExists STRH_InterfaceReqFailed Specified key does not exist in json file Status in interface reply signals error 160 163 NVM_PARAM_BASE STR_HANDLER mission/memory/NvmParameterBase.h mission/acs/str/StarTrackerHandler.h
468 0x66a0 0x54a4 SADPL_CommandNotSupported STRH_PowerReqFailed No description Status in power reply signals error 160 164 SA_DEPL_HANDLER STR_HANDLER mission/devices/SolarArrayDeploymentHandler.h mission/acs/str/StarTrackerHandler.h
469 0x66a1 0x54a5 SADPL_DeploymentAlreadyExecuting STRH_SetParamFailed No description Status of reply to parameter set command signals error 161 165 SA_DEPL_HANDLER STR_HANDLER mission/devices/SolarArrayDeploymentHandler.h mission/acs/str/StarTrackerHandler.h
470 0x66a2 0x54a6 SADPL_MainSwitchTimeoutFailure STRH_ActionFailed No description Status of reply to action command signals error 162 166 SA_DEPL_HANDLER STR_HANDLER mission/devices/SolarArrayDeploymentHandler.h mission/acs/str/StarTrackerHandler.h
471 0x66a3 0x54a7 SADPL_SwitchingDeplSa1Failed STRH_FilePathTooLong No description Received invalid path string. Exceeds allowed length 163 167 SA_DEPL_HANDLER STR_HANDLER mission/devices/SolarArrayDeploymentHandler.h mission/acs/str/StarTrackerHandler.h
472 0x66a4 0x54a8 SADPL_SwitchingDeplSa2Failed STRH_FilenameTooLong No description Name of file received with command is too long 164 168 SA_DEPL_HANDLER STR_HANDLER mission/devices/SolarArrayDeploymentHandler.h mission/acs/str/StarTrackerHandler.h
473 0x6900 0x54a9 ACSCTRL_FileDeletionFailed STRH_InvalidProgram No description Received version reply with invalid program ID 0 169 ACS_CTRL STR_HANDLER mission/controller/AcsController.h mission/acs/str/StarTrackerHandler.h
474 0x6a02 0x54aa ACSMEKF_MekfUninitialized STRH_ReplyError No description Status field reply signals error 2 170 ACS_MEKF STR_HANDLER mission/controller/acs/MultiplicativeKalmanFilter.h mission/acs/str/StarTrackerHandler.h
475 0x6a03 0x54ab ACSMEKF_MekfNoGyrData STRH_CommandTooShort No description Received command which is too short (some data is missing for proper execution) 3 171 ACS_MEKF STR_HANDLER mission/controller/acs/MultiplicativeKalmanFilter.h mission/acs/str/StarTrackerHandler.h
476 0x6a04 0x54ac ACSMEKF_MekfNoModelVectors STRH_InvalidLength No description Received command with invalid length (too few or too many parameters) 4 172 ACS_MEKF STR_HANDLER mission/controller/acs/MultiplicativeKalmanFilter.h mission/acs/str/StarTrackerHandler.h
477 0x6a05 0x54ad ACSMEKF_MekfNoSusMgmStrData STRH_RegionMismatch No description Region mismatch between send and received data 5 173 ACS_MEKF STR_HANDLER mission/controller/acs/MultiplicativeKalmanFilter.h mission/acs/str/StarTrackerHandler.h
478 0x6a06 0x54ae ACSMEKF_MekfCovarianceInversionFailed STRH_AddressMismatch No description Address mismatch between send and received data 6 174 ACS_MEKF STR_HANDLER mission/controller/acs/MultiplicativeKalmanFilter.h mission/acs/str/StarTrackerHandler.h
479 0x6a07 0x54af ACSMEKF_MekfNotFinite STRH_LengthMismatch No description Length field mismatch between send and received data 7 175 ACS_MEKF STR_HANDLER mission/controller/acs/MultiplicativeKalmanFilter.h mission/acs/str/StarTrackerHandler.h
480 0x6a08 0x54b0 ACSMEKF_MekfInitialized STRH_FileNotExists No description Specified file does not exist 8 176 ACS_MEKF STR_HANDLER mission/controller/acs/MultiplicativeKalmanFilter.h mission/acs/str/StarTrackerHandler.h
481 0x6a09 0x54b1 ACSMEKF_MekfRunning STRH_InvalidType No description Download blob pixel command has invalid type field 9 177 ACS_MEKF STR_HANDLER mission/controller/acs/MultiplicativeKalmanFilter.h mission/acs/str/StarTrackerHandler.h
482 0x6b01 0x54b2 ACSSAF_SafectrlMekfInputInvalid STRH_InvalidId No description Received FPGA action command with invalid ID 1 178 ACS_SAFE STR_HANDLER mission/controller/acs/control/SafeCtrl.h mission/acs/str/StarTrackerHandler.h
483 0x6c01 0x54b3 ACSPTG_PtgctrlMekfInputInvalid STRH_ReplyTooShort No description Received reply is too short 1 179 ACS_PTG STR_HANDLER mission/controller/acs/control/PtgCtrl.h mission/acs/str/StarTrackerHandler.h
484 0x6d01 0x54b4 ACSDTB_DetumbleNoSensordata STRH_CrcFailure No description Received reply with invalid CRC 1 180 ACS_DETUMBLE STR_HANDLER mission/controller/acs/control/Detumble.h mission/acs/str/StarTrackerHandler.h
485 0x7000 0x54b5 PTM_DumpDone STRH_StrHelperExecuting No description Star tracker handler currently executing a command and using the communication interface 0 181 PERSISTENT_TM_STORE STR_HANDLER mission/tmtc/PersistentTmStore.h mission/acs/str/StarTrackerHandler.h
486 0x7001 0x54b6 PTM_BusyDumping STRH_StartrackerAlreadyBooted No description Star tracker is already in firmware mode 1 182 PERSISTENT_TM_STORE STR_HANDLER mission/tmtc/PersistentTmStore.h mission/acs/str/StarTrackerHandler.h
487 0x7100 0x54b7 TMS_IsBusy STRH_StartrackerNotRunningFirmware No description Star tracker must be in firmware mode to run this command 0 183 TM_SINK STR_HANDLER mission/tmtc/DirectTmSinkIF.h mission/acs/str/StarTrackerHandler.h
488 0x54b8 STRH_StartrackerNotRunningBootloader Star tracker must be in bootloader mode to run this command 184 STR_HANDLER mission/acs/str/StarTrackerHandler.h
489 0x59a0 SUSS_InvalidSpeed Action Message with invalid speed was received. Valid speeds must be in the range of [-65000, 1000] or [1000, 65000] 160 SUS_HANDLER mission/acs/RwHandler.h
490 0x59a1 SUSS_InvalidRampTime Action Message with invalid ramp time was received. 161 SUS_HANDLER mission/acs/RwHandler.h
491 0x59a2 SUSS_SetSpeedCommandInvalidLength Received set speed command has invalid length. Should be 6. 162 SUS_HANDLER mission/acs/RwHandler.h
492 0x59a3 SUSS_ExecutionFailed Command execution failed 163 SUS_HANDLER mission/acs/RwHandler.h
493 0x59a4 SUSS_CrcError Reaction wheel reply has invalid crc 164 SUS_HANDLER mission/acs/RwHandler.h
494 0x59a5 SUSS_ValueNotRead No description 165 SUS_HANDLER mission/acs/RwHandler.h
495 0x5e00 GOMS_PacketTooLong No description 0 GOM_SPACE_HANDLER mission/power/GomspaceDeviceHandler.h
496 0x5e01 GOMS_InvalidTableId No description 1 GOM_SPACE_HANDLER mission/power/GomspaceDeviceHandler.h
497 0x5e02 GOMS_InvalidAddress No description 2 GOM_SPACE_HANDLER mission/power/GomspaceDeviceHandler.h
498 0x5e03 GOMS_InvalidParamSize No description 3 GOM_SPACE_HANDLER mission/power/GomspaceDeviceHandler.h
499 0x5e04 GOMS_InvalidPayloadSize No description 4 GOM_SPACE_HANDLER mission/power/GomspaceDeviceHandler.h
500 0x5e05 GOMS_UnknownReplyId No description 5 GOM_SPACE_HANDLER mission/power/GomspaceDeviceHandler.h
501 0x61a0 CCSDS_CommandNotImplemented Received action message with unknown action id 160 CCSDS_HANDLER mission/com/CcsdsIpCoreHandler.h
502 0x6301 JSONBASE_JsonFileNotExists Specified json file does not exist 1 ARCSEC_JSON_BASE mission/acs/str/ArcsecJsonParamBase.h
503 0x6302 JSONBASE_SetNotExists Requested set does not exist in json file 2 ARCSEC_JSON_BASE mission/acs/str/ArcsecJsonParamBase.h
504 0x6303 JSONBASE_ParamNotExists Requested parameter does not exist in json file 3 ARCSEC_JSON_BASE mission/acs/str/ArcsecJsonParamBase.h
505 0x64a0 NVMB_KeyNotExists Specified key does not exist in json file 160 NVM_PARAM_BASE mission/memory/NvmParameterBase.h
506 0x67a0 SADPL_CommandNotSupported No description 160 SA_DEPL_HANDLER mission/SolarArrayDeploymentHandler.h
507 0x67a1 SADPL_DeploymentAlreadyExecuting No description 161 SA_DEPL_HANDLER mission/SolarArrayDeploymentHandler.h
508 0x67a2 SADPL_MainSwitchTimeoutFailure No description 162 SA_DEPL_HANDLER mission/SolarArrayDeploymentHandler.h
509 0x67a3 SADPL_SwitchingDeplSa1Failed No description 163 SA_DEPL_HANDLER mission/SolarArrayDeploymentHandler.h
510 0x67a4 SADPL_SwitchingDeplSa2Failed No description 164 SA_DEPL_HANDLER mission/SolarArrayDeploymentHandler.h
511 0x6a00 ACSCTRL_FileDeletionFailed File deletion failed and at least one file is still existent. 0 ACS_CTRL mission/controller/AcsController.h
512 0x6b02 ACSMEKF_MekfUninitialized No description 2 ACS_MEKF mission/controller/acs/MultiplicativeKalmanFilter.h
513 0x6b03 ACSMEKF_MekfNoGyrData No description 3 ACS_MEKF mission/controller/acs/MultiplicativeKalmanFilter.h
514 0x6b04 ACSMEKF_MekfNoModelVectors No description 4 ACS_MEKF mission/controller/acs/MultiplicativeKalmanFilter.h
515 0x6b05 ACSMEKF_MekfNoSusMgmStrData No description 5 ACS_MEKF mission/controller/acs/MultiplicativeKalmanFilter.h
516 0x6b06 ACSMEKF_MekfCovarianceInversionFailed No description 6 ACS_MEKF mission/controller/acs/MultiplicativeKalmanFilter.h
517 0x6b07 ACSMEKF_MekfNotFinite No description 7 ACS_MEKF mission/controller/acs/MultiplicativeKalmanFilter.h
518 0x6b08 ACSMEKF_MekfInitialized No description 8 ACS_MEKF mission/controller/acs/MultiplicativeKalmanFilter.h
519 0x6b09 ACSMEKF_MekfRunning No description 9 ACS_MEKF mission/controller/acs/MultiplicativeKalmanFilter.h
520 0x6e00 PTM_DumpDone No description 0 PERSISTENT_TM_STORE mission/tmtc/PersistentTmStore.h
521 0x6e01 PTM_BusyDumping No description 1 PERSISTENT_TM_STORE mission/tmtc/PersistentTmStore.h
522 0x6f00 TMS_IsBusy No description 0 TM_SINK mission/tmtc/DirectTmSinkIF.h
523 0x6f01 TMS_PartiallyWritten No description 1 TM_SINK mission/tmtc/DirectTmSinkIF.h
524 0x6f02 TMS_NoWriteActive No description 2 TM_SINK mission/tmtc/DirectTmSinkIF.h
525 0x6f03 TMS_Timeout No description 3 TM_SINK mission/tmtc/DirectTmSinkIF.h
526 0x7000 VCS_ChannelDoesNotExist No description 0 VIRTUAL_CHANNEL mission/com/VirtualChannel.h

View File

@ -59,3 +59,6 @@
141;TCS_CONTROLLER
142;COM_SUBSYSTEM
143;PERSISTENT_TM_STORE
144;SYRLINKS_COM
145;SUS_HANDLER
146;CFDP_APP

1 22 MEMORY
59 141 TCS_CONTROLLER
60 142 COM_SUBSYSTEM
61 143 PERSISTENT_TM_STORE
62 144 SYRLINKS_COM
63 145 SUS_HANDLER
64 146 CFDP_APP

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