Compare commits

...

2703 Commits

Author SHA1 Message Date
881f9ea7ea prep v1.26.0
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-08 14:52:11 +01:00
b1da4bb81b remove doubly scheduled ACS CTRL
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-08 14:33:48 +01:00
50d8d0b278 remove old unneeded IF ID
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-08 14:22:56 +01:00
7e0b30e845 ACS section separate
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-02-08 14:11:49 +01:00
349ebca08d re-run generators
all associated changes and fixes
2023-02-08 14:11:11 +01:00
6dcec02377 Merge pull request 'Final Version of the ACS Controller' (#367) from eggert/acs into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #367
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2023-02-08 13:50:10 +01:00
da166c7bc3 resolve merge conflicts
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-08 13:40:03 +01:00
80f48acb07 Merge remote-tracking branch 'origin/develop' into eggert/acs
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-02-08 13:27:09 +01:00
c1d8693d3c Merge pull request 'ACS Update scheduling' (#366) from acs_update_scheduling into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #366
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-02-08 13:23:33 +01:00
6ae0ee5b26 small update
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-02-08 13:23:05 +01:00
098fcc4f12 Merge branch 'develop' into eggert/acs
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-02-08 13:21:49 +01:00
bfa61632c2 use singular enum name
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-08 13:18:45 +01:00
e25eed7687 now it compiles
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-08 13:17:47 +01:00
4412690652 Merge remote-tracking branch 'origin/develop' into acs_update_scheduling
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-02-08 13:08:00 +01:00
7c53cafbbe Merge pull request 'Some GPS updates' (#369) from some_more_gps_updates into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #369
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-02-08 13:04:45 +01:00
f2629f1b51 Merge pull request 'MGM calibration fix' (#357) from eggert/mgm-calibration-fix into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #357
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2023-02-08 13:02:40 +01:00
6fa1084d21 Merge remote-tracking branch 'origin/develop' into acs_update_scheduling
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-02-08 13:01:21 +01:00
ba5621f4b7 Merge remote-tracking branch 'origin/develop' into some_more_gps_updates
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-08 13:00:07 +01:00
fdb2b52f2f Merge pull request 'Update version handling' (#371) from update_version_handling into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #371
2023-02-08 11:57:49 +01:00
02f0349525 done
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-02-08 11:53:20 +01:00
de95a1ba61 add new events
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-08 11:22:57 +01:00
b7ec4e3b20 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-08 11:21:39 +01:00
37988fbfd4 complete impl
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-08 11:17:08 +01:00
d0c8c2a418 revert some change
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-08 11:12:12 +01:00
953be9cccd Merge remote-tracking branch 'origin/develop' into some_more_gps_updates
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-02-08 11:10:44 +01:00
2a0ba039e6 Merge branch 'develop' into eggert/mgm-calibration-fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-08 11:09:04 +01:00
c170bff720 add release checklist
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-08 11:08:38 +01:00
489c813bcc better fit for acs::OFF with SUBMODE_NONE
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-08 11:05:35 +01:00
d6a4048793 bump FSFW, TMTC and changelog
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-08 01:32:18 +01:00
6a24e1b935 updated MGM calibration values
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-07 20:11:16 +01:00
9373a24413 bump changelog
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-07 19:40:32 +01:00
7514071d79 remove stray printout 2023-02-07 19:39:29 +01:00
2580b7cb20 proper handling for git sha hash
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-07 19:37:23 +01:00
6cda616236 update changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-07 18:10:48 +01:00
4f2853e1b8 adapted new acs submodes for checkModeCommand
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-07 18:07:19 +01:00
835d2277d8 impl variable freq depending on build type
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-07 17:54:56 +01:00
6829c16ced that seems to do the trick
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-07 17:50:44 +01:00
8bc71b268e some tests with subsystem
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-07 17:28:59 +01:00
e8120fcdef allow passsing TM dest names
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-07 17:18:13 +01:00
bc6cecc14a bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-07 17:02:22 +01:00
f5ba859560 comment fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-07 17:01:07 +01:00
b2de4ee08c use full polling for gps_wating, manual delay
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-07 16:57:24 +01:00
540bd63f4c afmt
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-07 14:22:18 +01:00
ecc61d184b remove TODO 2023-02-07 14:22:03 +01:00
36ed787db1 improve SW switch handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
- also add CANT_GET_FIX event
2023-02-07 14:16:43 +01:00
ab0a3bfd45 some fixes and tweaks
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-07 14:02:46 +01:00
36f20d235c this was fun
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-07 13:58:41 +01:00
454d56935c fixed getParameter to match defined structs again
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-07 13:11:57 +01:00
afbaec8e2d removed deprecated struct 2023-02-07 13:10:57 +01:00
e3cc45d7e3 merge aftermath:
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
- fixed missing declarations of functions
- fixed use of deprecated submode definitions
- changed naming of some submodes
2023-02-07 13:09:42 +01:00
d6b60723d9 bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-07 12:53:30 +01:00
b6022d2ff1 should be covered by PST now
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-07 10:34:09 +01:00
b1ea53ef1e Merge remote-tracking branch 'origin/develop' into acs_update_scheduling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-07 10:31:40 +01:00
5f9a445aa2 added bias removal for GYR
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-02-07 10:29:28 +01:00
d6aa6875cc typos and other minor adaptions
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-07 10:22:12 +01:00
5d0a1858cc onboard handling of GYR values changed from deg/s to rad/s 2023-02-07 10:20:36 +01:00
07ca738842 some more tweaks
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-07 10:12:28 +01:00
6567fd1023 Merge branch 'develop' into eggert/acs
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-02-07 10:08:20 +01:00
c8e376a625 add missing pool read guards
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-07 10:03:51 +01:00
b881b57a1b Merge branch 'develop' into eggert/mgm-calibration-fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-07 09:50:26 +01:00
a9fcb6a183 update changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-07 09:46:19 +01:00
18af6228a0 added final calibration matrices
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-07 09:30:20 +01:00
5f81b0866a bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-06 20:22:52 +01:00
7ae2b44806 prep v1.25.0
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-06 20:19:08 +01:00
8ffd10cacc update subsystem mode IDs
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-06 20:15:45 +01:00
d4e8db49d2 Merge pull request 'bugfix for GPS handler' (#368) from gps_bugfix into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #368
2023-02-06 18:25:52 +01:00
86babcf07b important fix
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-02-06 18:23:04 +01:00
9d7291eea2 this works now
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-06 18:12:41 +01:00
5e8eb7151b Merge remote-tracking branch 'origin/develop' into gps_bugfix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-06 15:33:37 +01:00
970e018c27 comment object ID of tmp dev which does not exist anymore
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-06 15:16:14 +01:00
67835dd7f7 one regular cycle before permanent loop
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-06 10:40:09 +01:00
ee01b6253e small logic tweak
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-06 10:39:19 +01:00
1a4dbce350 tweaks and logic fixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-06 10:30:17 +01:00
4d6d4dd44d small tweak
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-02-06 10:24:13 +01:00
c49580ea51 bump changelog
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-02-06 10:22:28 +01:00
4d6215f546 fixes for scheduling
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-02-06 10:20:22 +01:00
fd7709ea81 bump changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-06 09:20:20 +01:00
10378ef1bb bugfix for GPS handler
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-02-05 13:13:09 +01:00
9bcc424d86 prepare for v1.24.0
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-03 16:43:53 +01:00
05d168d6ee bump tmtc to v2.10.0 2023-02-03 16:42:35 +01:00
32042afccd bump minor version
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-03 16:30:38 +01:00
3b8903b2e2 Merge remote-tracking branch 'origin/develop' into acs_update_scheduling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-03 16:13:40 +01:00
47f998b493 Merge pull request 'MTQ Commanding from ACS Ctrl fixes' (#363) from eggert/mtq-cmd-fixes into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #363
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2023-02-03 16:12:31 +01:00
02b52d2b55 Merge remote-tracking branch 'origin/develop' into eggert/mtq-cmd-fixes 2023-02-03 16:12:32 +01:00
9f28f32af9 bump tmtc 2023-02-03 16:12:11 +01:00
a9bd792194 changelog correction 2023-02-03 16:11:28 +01:00
6b36ba8323 Merge remote-tracking branch 'origin/develop' into eggert/mtq-cmd-fixes 2023-02-03 16:10:47 +01:00
d9514e4184 a lot of bugfixes
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-03 16:08:34 +01:00
b9ed485d60 changed calibration matrices for SUS0 and SUS6 due to them being exchanged
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-03 15:44:50 +01:00
b8130265cd afmt
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-03 15:02:30 +01:00
e4a227359b some bugfixes, syrlinks needs to remain in PST cause of some bug
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-02-03 15:02:08 +01:00
f9ae4860d9 typo
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-03 14:31:22 +01:00
3a092fd920 Merge remote-tracking branch 'origin/develop' into acs_update_scheduling
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-02-03 14:31:09 +01:00
129399c40e Merge pull request 'ACS updates' (#365) from acs_updates into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #365
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-02-03 14:28:05 +01:00
777d673465 small fix
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-02-03 14:24:27 +01:00
825365263f update changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-03 14:23:39 +01:00
4ed1e2411a works
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-03 14:21:36 +01:00
76d18a67bc almost done
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-03 11:33:18 +01:00
2c2c73b23f fixes and updates for ACS mode tree
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-03 11:25:03 +01:00
b3a5c94f02 update events
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-03 10:53:16 +01:00
ef0a78dedb afmt
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-03 10:52:39 +01:00
c2100cc782 overhead comment 2023-02-03 10:51:56 +01:00
4615b2fe16 bumpchangelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-03 10:51:08 +01:00
daa7c6652d update changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-03 10:21:17 +01:00
9f829f1c50 Merge remote-tracking branch 'origin/develop' into eggert/mtq-cmd-fixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-03 10:16:17 +01:00
02f7b1ae4a Merge branch 'acs_updates' into acs_update_scheduling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-03 10:15:12 +01:00
d9e142e1a8 Merge remote-tracking branch 'origin/develop' into acs_updates
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-03 10:12:00 +01:00
e6bafd51dc prepare v1.23.1
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-02 18:37:56 +01:00
5a54d4e1ed afmt
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-02 18:22:28 +01:00
7226f02d4b bump tmtc and fsfw
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-02 18:22:07 +01:00
1e0d9561a2 changelog update
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-02 17:16:15 +01:00
12d5422e7f Merge branch 'acs_updates' into acs_update_scheduling 2023-02-02 17:15:04 +01:00
aaac3b24b2 update changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-02 17:14:48 +01:00
a5997c773f host compiles
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-02 17:13:19 +01:00
4590e1d9c9 host compiles
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-02 17:12:22 +01:00
f6abe2b466 remove code
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-02-02 17:09:59 +01:00
c2fb224fea ACS Update scheduling
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-02-02 17:06:26 +01:00
2b00d3a565 ACS updates
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
- Adapt ACS subsystem to handle events from ACS CTRL
- Some fixes and updates for ACS subsystem
2023-02-02 16:27:50 +01:00
b8baca92e2 Merge branch 'develop' into eggert/mgm-calibration-fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-02 11:18:55 +01:00
43deed9dc0 Merge branch 'develop' into eggert/acs
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-02 10:59:12 +01:00
8c03b2ec95 bump changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-02 10:56:14 +01:00
4bed0fd563 scale dipole of controller to by the MTQ expected range
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-02 10:47:58 +01:00
acba821afd fixed uint to int 2023-02-02 10:33:58 +01:00
2d4551d559 Merge pull request 'new structs for pointing parameters' (#348) from marquardt/acsParams into eggert/acs
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #348
2023-02-02 10:29:36 +01:00
07effb628e bump fsfw again
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-01 20:52:16 +01:00
491b378ad3 bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-01 20:47:50 +01:00
8a3fca4605 prepare release
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-01 20:21:04 +01:00
78bc422004 prepare next version 2023-02-01 20:20:08 +01:00
3c9ce040cf update generated files
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-01 19:43:38 +01:00
20df025ccb update fsfw
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-01 18:44:00 +01:00
27f676a725 bump fsfw for Health service update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-02-01 17:44:45 +01:00
9a056e6ad5 run clang formating script
All checks were successful
EIVE/eive-obsw/pipeline/pr-eggert/acs This commit looks good
2023-02-01 15:37:10 +01:00
60e75612fd fixed merge conflict
All checks were successful
EIVE/eive-obsw/pipeline/pr-eggert/acs This commit looks good
2023-02-01 15:27:01 +01:00
048033d264 Merge pull request 'Improvements in TMTC Handlers' (#359) from meier/far-parsing into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #359
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2023-02-01 13:44:31 +01:00
f5c5377a81 move to unreleased section
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-02-01 13:43:29 +01:00
9768541c35 update changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-01 08:40:05 +01:00
bdf397a71e corrections for transmitter timer in ccsds handler
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-02-01 08:27:55 +01:00
a4cd2d1702 changed spacecraft id to 0x3DC
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-31 14:05:40 +01:00
a526bfe972 pdec far now also parsed in irq based operation
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-31 11:27:53 +01:00
45eadb8302 added new calibration matrices
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-31 10:08:28 +01:00
19fc638447 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-30 14:47:49 +01:00
bfc2aaedd8 new minor release
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-30 14:35:31 +01:00
3150847331 bump tmtc, tmtccmd and spacepackets updates and fixes
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-30 14:31:51 +01:00
a6748f8034 fsfw update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-30 14:25:50 +01:00
9beb695aa0 bump fsfw
- Updates TCP server to allow re-using address (SO_REUSEADDR option)
2023-01-30 14:21:46 +01:00
01824f2f66 done
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-28 15:02:35 +01:00
bf5e72af8e Merge pull request 'COM Subsystem' (#358) from com_subsystem into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #358
2023-01-28 14:58:01 +01:00
079228e559 update retvals
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-01-28 14:57:40 +01:00
ddce821295 prepare for v1.22.0
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-01-28 14:55:41 +01:00
c63ca66f68 done
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-28 14:49:28 +01:00
036b388928 do not check transitions in COM SS
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-28 12:52:00 +01:00
13a3f78e56 finally fixed the stupid bug
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-28 12:47:21 +01:00
8f7ff3da7c some dumb bug
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-27 20:23:55 +01:00
7bbf40a5ab update changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-27 19:04:31 +01:00
13f3963f69 Update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
- COM Subsystem now handles datarate config
- torquer config and comCfg moved to mission/config folder
- CCSDS Handler: Added default rate submode
2023-01-27 18:38:36 +01:00
54e6c4826f fix hosted build
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-27 17:40:42 +01:00
8d9eb9ac58 last tweaks, all works now 2023-01-27 17:34:22 +01:00
83ab34dfc3 slightly larger delay
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-01-27 17:13:32 +01:00
4707581c41 update generated files, COM subsystem first tests
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-01-27 15:57:18 +01:00
d9e1a331b2 COM mode tree
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-01-27 15:42:49 +01:00
9ad34aa395 schedule COM subsystem
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-01-27 15:19:09 +01:00
9b211e1de7 do COM SS interconnect
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-01-27 15:10:26 +01:00
438f9f3358 com subsystem
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-01-27 14:44:40 +01:00
d58e79d1ec Merge remote-tracking branch 'origin/develop' into com_subsystem 2023-01-27 13:26:48 +01:00
c9f8d2e219 COM compiles again
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-27 11:29:13 +01:00
4aba46e02c Merge branch 'develop' into eggert/mgm-calibration-fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-27 11:22:04 +01:00
24d2405fc8 added calibration matrices for testing
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-27 11:18:55 +01:00
e2f98778f8 move config constants
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-27 11:02:04 +01:00
1a7b4ded27 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-26 20:53:36 +01:00
0c595c5aeb update changelog
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-26 20:33:16 +01:00
0536522ed3 bump changelog
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-26 20:04:50 +01:00
985c71fa2a afmt
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-26 20:03:33 +01:00
f6bdbe897f bump minor version
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-26 20:03:18 +01:00
5ac549a384 update returnvalues
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-26 20:03:00 +01:00
e387a61278 Merge pull request 'Syrlinks Update' (#353) from refactor_syrlinks into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #353
Reviewed-by: Jakob Meier <meierj@irs.uni-stuttgart.de>
2023-01-26 19:18:31 +01:00
7182d9b8cc start to manually transfer com mode tree from old PR
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-01-26 17:18:05 +01:00
03ec64672b also fixed validity flag
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-26 17:15:04 +01:00
241da2c591 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-26 17:14:05 +01:00
7e25f5012e transformation before calibration
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-26 17:09:34 +01:00
bc2a8cba94 Merge remote-tracking branch 'origin/develop' into refactor_syrlinks
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-26 17:06:42 +01:00
ecc5ec05f3 Merge pull request 'Add CCSDS handler modes' (#352) from add_ccsds_handler_modes into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #352
2023-01-26 17:04:07 +01:00
c07f188542 parameter update seems to work now
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-26 17:01:16 +01:00
fa8a2c7666 add new syrlinks events
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-26 16:45:28 +01:00
693613037a logic tweak
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-26 16:33:11 +01:00
311c2e947a bump changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-26 16:22:15 +01:00
bd1031b92a event update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-26 16:21:37 +01:00
694b885c0f move core subsystem ID 2023-01-26 16:20:46 +01:00
7d1bf3f9ba update retvals
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-26 16:19:10 +01:00
77761ee9e3 try to add shutdown handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-26 16:16:23 +01:00
e1e690d487 submodes seem to work
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-26 15:52:49 +01:00
e234f4c6b0 add some buffer time
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-26 14:58:03 +01:00
4725882ada larger transition delay
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-26 14:57:33 +01:00
d8e191e5c3 i dont think the default mode is required
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-26 14:52:58 +01:00
4ad6584782 afmt and possible bugfix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-26 14:42:13 +01:00
03a3c3a761 changelog correction
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-26 14:39:23 +01:00
4dca9f21d4 add new submode for default datarate handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-26 14:00:39 +01:00
9410902454 go to startup immediately
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-26 13:02:29 +01:00
915f66f248 syrlinks: go to normal mode immdaitely 2023-01-26 13:00:03 +01:00
4deee6b98f Merge branch 'develop' into add_ccsds_handler_modes
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head Build queued...
2023-01-26 12:22:31 +01:00
744f689556 this should be the complete impl for new submodes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-26 12:21:49 +01:00
1128d355bb added some missing mode helper usage
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-26 12:04:58 +01:00
b879533d41 extend syrlinks code a bit
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-25 17:02:46 +01:00
46da8508c3 Merge pull request 'Disable MGM Calibration' (#355) from disable-mgm-calib into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #355
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2023-01-25 16:31:31 +01:00
3319a3fa48 removed calibration settings
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-25 16:12:14 +01:00
a4bf6d9872 Merge remote-tracking branch 'origin/develop' into refactor_syrlinks
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-25 14:05:23 +01:00
eef84f4d09 fixes from PR
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-25 14:03:49 +01:00
fbab1a6aa9 Merge remote-tracking branch 'origin/develop' into add_ccsds_handler_modes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-25 14:02:03 +01:00
bc82073ebb Merge pull request 'MGM4 fix' (#354) from mgm4-fix into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #354
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2023-01-25 13:51:00 +01:00
d71c522891 bump changelog
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-01-25 13:47:29 +01:00
d9b4250dba fix
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-25 13:37:29 +01:00
4611e32200 update changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-24 19:48:20 +01:00
ce12293dcc update changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-24 19:47:30 +01:00
ae6f6538d2 add syrlinks submode handling
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-24 19:40:27 +01:00
1f08d85319 rename syrlinks handler
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-24 19:11:17 +01:00
8f8416c078 add modes
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-24 19:07:37 +01:00
b74db7b087 added EM Only port script
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-24 18:43:00 +01:00
fbe0c35373 make some sets diagnostic
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-24 13:18:29 +01:00
c2fd3b22f3 update changelog
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-24 12:30:23 +01:00
a58beb85e6 bump version
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-24 12:26:20 +01:00
c49bda449f bump changelog
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-24 12:25:16 +01:00
2698c71d27 expose base set of periodic HK for str 2023-01-24 12:24:29 +01:00
c6366f4906 Merge pull request 'some syrlinks tweaks and fixes' (#350) from syrlink_fixes_tweaks into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #350
Reviewed-by: Jakob Meier <meierj@irs.uni-stuttgart.de>
2023-01-23 19:06:51 +01:00
adef468c0b applyed CppStyle Format
All checks were successful
EIVE/eive-obsw/pipeline/pr-eggert/acs This commit looks good
2023-01-23 16:34:52 +01:00
e3726a7078 Merge remote-tracking branch 'origin/develop' into syrlink_fixes_tweaks
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-23 16:18:52 +01:00
c1b9a0f4ff some improvements, docs and smaller stuff
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-23 16:18:06 +01:00
3fe6b19dc0 Merge pull request 'GYR fix' (#346) from eggert/gyr-fix into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #346
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2023-01-23 16:11:37 +01:00
1b0d86620e Merge branch 'develop' into eggert/gyr-fix
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-01-23 16:09:04 +01:00
ee5024f4ce update changelog
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-01-23 16:07:51 +01:00
a3b05fb527 Merge branch 'develop' into eggert/gyr-fix 2023-01-23 16:02:03 +01:00
e5b297a513 removed deprecated code
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-23 15:58:57 +01:00
0419561ff8 some syrlinks tweakd and 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-01-23 15:35:43 +01:00
1926e7f864 Merge pull request 'this fixed the unrequested reply' (#349) from mueller/tcs_subsystem into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #349
2023-01-23 14:18:21 +01:00
72071e467e Merge branch 'mueller/tcs_subsystem' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into mueller/tcs_subsystem 2023-01-23 14:18:19 +01:00
95299cf522 remove duplicate code 2023-01-23 14:18:12 +01:00
3586ce3c31 Merge branch 'develop' into mueller/tcs_subsystem
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-01-23 14:17:13 +01:00
8c9d215672 this fixed the unrequested reply
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-01-23 14:15:32 +01:00
21eacd4c43 Merge pull request 'Add basic TCS mode tree' (#319) from mueller/tcs_subsystem into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #319
Reviewed-by: Jakob Meier <meierj@irs.uni-stuttgart.de>
2023-01-23 13:39:09 +01:00
9ec69bb649 Merge branch 'mueller/tcs_subsystem' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into mueller/tcs_subsystem
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-23 12:45:10 +01:00
3920671dd3 bump changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-23 11:55:49 +01:00
fe80ff4070 move some config and tweak queue sizes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-23 11:52:46 +01:00
588cc16fc5 use helper types + afmt
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-23 11:44:03 +01:00
aa4f0b4eea tested TCS subsystem
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-23 11:31:15 +01:00
eb6f397bb8 Merge remote-tracking branch 'origin/develop' into mueller/tcs_subsystem
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-20 14:26:42 +01:00
6e0f2c0dee changelog
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-20 14:25:21 +01:00
43fa8bf403 Merge pull request 'some fixes, this should work now' (#347) from allow_switch_interval_specification into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #347
2023-01-20 14:23:34 +01:00
c03b6c9268 bump tmtc
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
EIVE/eive-obsw/pipeline/head Build queued...
2023-01-20 14:23:09 +01:00
96525d4aef bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-20 13:55:21 +01:00
45413726e7 update docs
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-20 12:31:42 +01:00
3d0ecadb1f Merge remote-tracking branch 'origin/develop' into allow_switch_interval_specification
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-20 12:30:39 +01:00
fecfa4b1c3 update changelog
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-20 12:29:17 +01:00
d2fe685a74 bump submodules 2023-01-20 12:28:09 +01:00
c9221a2b95 Merge pull request 'RTD Fix' (#345) from meier/rtd-fix into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #345
2023-01-20 12:27:12 +01:00
fee8282cc5 bump changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-20 12:26:45 +01:00
09381ee86b update changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-20 12:25:14 +01:00
f8196de089 update changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-20 12:24:19 +01:00
694d626081 some fixes, this should work now
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-20 11:51:29 +01:00
326b28b43e bump submodules
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-20 11:31:25 +01:00
bd7a38ac2b Merge branch 'develop' into eggert/acs
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-20 10:50:43 +01:00
81cc900b9b bump submodules
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-20 10:45:27 +01:00
c85dd691ae Merge branch 'meier/rtd-fix' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into meier/rtd-fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-20 10:44:51 +01:00
5670af7198 bump changelog 2023-01-20 10:44:44 +01:00
e82a2945e3 Merge branch 'develop' into meier/rtd-fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-20 10:43:08 +01:00
aeddc92cf3 changed ang vel calculation to being sensitivity based instead of range based
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-20 10:33:36 +01:00
e66567eb94 tweaks for PL ss
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-20 10:08:41 +01:00
abee554454 Merge branch 'develop' into eggert/acs
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-20 10:07:25 +01:00
e38044a3d0 Merge branch 'develop' into meier/rtd-fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-19 17:09:34 +01:00
3751646c2b tmtc update
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2023-01-19 17:04:43 +01:00
111a91d98e periodically rewrite config byte
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-19 16:42:47 +01:00
5f377a6c9e Merge pull request 'Swap SUS0 and SUS6' (#344) from sus0-sus6-fix into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #344
2023-01-19 16:42:26 +01:00
47fd6b1add Merge branch 'develop' into sus0-sus6-fix
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
EIVE/eive-obsw/pipeline/head Build queued...
2023-01-19 16:39:39 +01:00
5167f275be Merge pull request 'Gyro Sets and MEKF diagnostic now' (#343) from gyr_sets_diagnostic_now into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #343
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-01-19 16:39:24 +01:00
08a4491a15 Merge remote-tracking branch 'origin/develop' into gyr_sets_diagnostic_now
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2023-01-19 16:35:42 +01:00
17a1d8145c Merge branch 'develop' into sus0-sus6-fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-19 16:34:50 +01:00
b9ba14e395 Merge pull request 'ADIS16505: add handling for correct range setting' (#342) from gyro_adis_fix into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #342
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2023-01-19 16:33:58 +01:00
586cca2f39 tmtc update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-19 13:22:05 +01:00
cc6c25cba6 command to rewrite config of RTDs
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-19 13:20:24 +01:00
879e6fa758 swapped SUS0 and SUS6 in ObjectFactory
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-19 11:54:48 +01:00
638573757b swapped SUS0 and SUS6 in ObjectFactory
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-19 11:39:59 +01:00
f0554311a2 Merge branch 'develop' into meier/rtd-filter 2023-01-19 11:02:33 +01:00
c291caba7d comment 2023-01-19 11:01:59 +01:00
d4e2ff2e71 Merge remote-tracking branch 'origin/develop' into mueller/tcs_subsystem 2023-01-19 09:19:18 +01:00
59a8003ad8 ok this should work
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-18 17:51:54 +01:00
c7c66364dc bump changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-18 16:10:14 +01:00
e31aaf5b97 Merge remote-tracking branch 'origin/develop' into gyro_adis_fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-18 16:09:06 +01:00
11d8b66db2 bump tmtc 2023-01-18 16:08:44 +01:00
7e6ab01528 mekf is now diagnostic as well
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-18 16:02:57 +01:00
a0750210ca gyro sets are diagnostic now 2023-01-18 15:58:38 +01:00
8d4ee96c52 re-run generators
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-18 14:34:35 +01:00
1546062433 update changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-18 14:24:17 +01:00
980009b1cb re-run generators
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-18 14:03:20 +01:00
3682a22021 add handling for correct range setting
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-18 13:43:28 +01:00
a70570f79d always include syrlinks code now
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-18 12:58:45 +01:00
19c8703e15 corrected to actual used devicedef for L3 gyt
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-18 11:38:09 +01:00
44b384cd17 access to different paramset for every pointing mode
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-eggert/acs This commit looks good
2023-01-17 20:11:45 +01:00
9c4b2872e3 fixed susVecTotDerivative valid flag
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-17 11:50:52 +01:00
dbe2c4572b Merge pull request 'SUS PoolIds fix' (#341) from sus-hotfix into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #341
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2023-01-16 17:46:54 +01:00
080ff82531 Merge branch 'develop' into sus-hotfix
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head Build queued...
2023-01-16 17:15:02 +01:00
b78fa73c75 sus PoolIds fix
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-16 17:12:32 +01:00
673c24a34d frmt
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-16 15:43:40 +01:00
8fa1d69db3 removed rotation for sun pointing
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-16 15:23:20 +01:00
588a6572b3 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-16 15:17:47 +01:00
9791c11c99 fix
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-16 10:25:55 +01:00
2120ff8cca Merge branch 'develop' into eggert/acs
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-16 10:10:29 +01:00
153c62337f fixed determinant init 2023-01-16 10:07:14 +01:00
db763e394d corrected MGM raw set size and sus processed pool ids
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-16 09:54:03 +01:00
d144502f1c Merge pull request 'Init Boot Delay OBSW' (#340) from mueller_init_boot_delay_obsw into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #340
Reviewed-by: Jakob Meier <meierj@irs.uni-stuttgart.de>
2023-01-13 17:18:51 +01:00
f6706c4f9b update changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-13 13:16:26 +01:00
9e9aa71e9b this works
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-13 13:14:11 +01:00
3f079b415d small tweaks
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-13 11:59:11 +01:00
4ebf73bd03 include missing type
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-13 11:44:16 +01:00
83361a5e16 add init boot delay handling in OBSW 2023-01-13 11:43:44 +01:00
3ae08a4a57 bump fsfw and tmtc, update changelog
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-13 11:21:02 +01:00
46904ee3f1 Merge pull request 'Added a udp forwarding' (#339) from gaisser/udp_forwarding into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #339
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2023-01-13 09:41:25 +01:00
7ea03106f7 Added a udp forwarding
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head Build queued...
2023-01-12 19:14:47 +01:00
ce3841a23d use std::memcpy
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-12 17:19:35 +01:00
2f0eace822 use std::memcpy
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-12 17:10:40 +01:00
d8c0ba19fd changed pointingParameters struct
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-12 15:19:21 +01:00
5e557d2d46 first version of safe mode solar vector for leop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-12 14:49:37 +01:00
4090941c3e bugfix
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-12 13:33:06 +01:00
27d6e95062 x-axis now points away of equator plane for sunPtgMode
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-01-12 11:48:57 +01:00
66e2d782b2 domainId now points to structs. sunVectorSafeLeop added 2023-01-12 11:47:56 +01:00
25867e76b1 fixed solar panels -> sun vector direction
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-11 16:00:30 +01:00
a2626afebb added gpsPosition to gpsProcessedData
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-11 13:42:48 +01:00
93eac8c6eb update README
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-11 09:26:33 +01:00
2a41b4361c Merge remote-tracking branch 'origin/develop' into mueller/tcs_subsystem
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-11 09:19:06 +01:00
ce9fac6b71 v1.19.0
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-10 16:23:54 +01:00
5910527d5e Merge pull request '5V stack commanding for device handlers' (#335) from mueller_5v_stack_cmd_for_devices into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #335
Reviewed-by: Jakob Meier <meierj@irs.uni-stuttgart.de>
2023-01-10 15:49:08 +01:00
27e2708b7b update changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-10 15:41:09 +01:00
82d4569e79 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-10 15:40:04 +01:00
d52ee5ff38 finally appears to work
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-10 15:16:52 +01:00
635473b687 better naming
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-10 15:08:38 +01:00
557162fe8c some more bugfixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-10 15:04:49 +01:00
6503778cd5 various bugfixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-10 14:17:55 +01:00
7b6e32ff86 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-10 14:03:41 +01:00
eb30696cad Merge remote-tracking branch 'origin/develop' into mueller_5v_stack_cmd_for_devices 2023-01-10 14:02:58 +01:00
ac83e66016 naming and frmt
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-10 13:52:26 +01:00
c79e17514c changed sun and mgm model calc to always be executed 2023-01-10 13:51:55 +01:00
7df1046f71 Merge branch 'develop' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-10 13:26:57 +01:00
e383c90487 bump fsfw and tmtc 2023-01-10 13:26:50 +01:00
93ec49bf8d added 3 axes stabilized target mode for GS contact. renamed tgt coordinates acordingly
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-10 11:20:28 +01:00
39dfed2ab5 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-10 11:17:04 +01:00
fca45014e4 fixes for switchig algorithm
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-10 11:13:34 +01:00
8fde9ee9be small fix for PL PCDU handler shutdown handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-10 11:01:30 +01:00
88dcba7966 Merge branch 'develop' into mueller_5v_stack_cmd_for_devices
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2023-01-10 10:56:19 +01:00
189bba9f45 Merge pull request 'No PCDU for EM' (#338) from no_pcdu_em into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #338
Reviewed-by: Jakob Meier <meierj@irs.uni-stuttgart.de>
2023-01-10 09:44:30 +01:00
0854b1c778 ACS Ctrl getParameter forwarding to ACS Param
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-10 09:16:13 +01:00
887d193526 added ReceiversParameterMessagesIF and ParameterHelper to ACS Ctrl
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-10 09:06:09 +01:00
4e74dc7bee added target mode for GS flyby 2023-01-10 09:05:27 +01:00
98ecbfba61 this is more correct
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-09 17:50:31 +01:00
772fab2b71 no PCDU for EM for now
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2023-01-09 17:48:28 +01:00
4de1495c40 Merge pull request 'Build Hosted SW without proprietary libraries' (#337) from build_host_without_proprietary_libs into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #337
Reviewed-by: Jakob Meier <meierj@irs.uni-stuttgart.de>
2023-01-09 16:07:54 +01:00
cb7608b4e6 bumpchangelog
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
EIVE/eive-obsw/pipeline/head Build queued...
2023-01-09 16:03:04 +01:00
25e7872a6f this is consistent
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-09 15:59:42 +01:00
1d8549f810 this should work better
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2023-01-09 15:55:01 +01:00
663fa0f4ac that should be better
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-01-09 15:47:27 +01:00
217d1b63f2 some tweaks
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-01-09 15:44:29 +01:00
4f01026883 add json clone
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-01-09 15:21:36 +01:00
5303139498 helper script to clone all necessary submodules
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-01-09 15:21:06 +01:00
fb37014b65 make proprietary library
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2023-01-09 15:19:15 +01:00
a704986d74 update README
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-09 14:50:03 +01:00
cce2da5229 yeah, its sequence counter ping-pong..
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-09 13:29:59 +01:00
d51904de2d disabled damaged PL PCDU1 TMP1075
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-09 11:57:48 +01:00
10f1898b98 fixed init of varibales
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-09 09:36:30 +01:00
341966e709 added GS target mode 2023-01-09 09:36:00 +01:00
00d4a7602a Merge branch 'develop' into eggert/acs
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2023-01-09 09:30:37 +01:00
76b162113f add normal to on trnasition
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-12-23 12:50:10 +01:00
0afadc05a4 repoint tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-12-23 12:23:04 +01:00
8d0448341b Merge remote-tracking branch 'origin/develop' into mueller_5v_stack_cmd_for_devices 2022-12-23 12:22:39 +01:00
2531de507a bump changelog
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-12-23 12:18:44 +01:00
8fedaa43e9 important bugfix for PLOC SUPV
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-12-23 12:14:01 +01:00
cfae090de4 improvements for ploc supv SW
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-12-23 11:46:01 +01:00
04b9b03502 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-12-23 11:00:28 +01:00
5e1d0543d7 afmt
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-12-23 10:32:21 +01:00
0163791e26 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-12-23 10:17:54 +01:00
30aa802069 minor udpates for PLOC SUPV code
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-12-23 10:13:26 +01:00
cbf5ca6d93 minor fixes for MPSoC code
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-12-22 17:17:23 +01:00
998c39d564 some minor fixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-12-22 16:30:38 +01:00
3edf429557 Merge remote-tracking branch 'origin/develop' into mueller_5v_stack_cmd_for_devices
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-12-22 16:22:14 +01:00
0f29fd51ce Merge remote-tracking branch 'origin/develop' into mueller_5v_stack_cmd_for_devices
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2022-12-22 16:21:58 +01:00
ac44690966 place that outside of the lock
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-12-22 16:20:32 +01:00
55ecb34665 set swither set entries valid
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-12-22 16:18:30 +01:00
c1b95e8bbd minor bugfix, push tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-12-22 16:14:11 +01:00
39ac8c8422 Merge pull request 'added 5v stack command' (#334) from mueller_pcdu_handler_stack_command into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #334
2022-12-22 16:06:17 +01:00
7f29cf7e58 Merge branch 'develop' into mueller_pcdu_handler_stack_command 2022-12-22 16:06:09 +01:00
099759c5f5 changelog update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-12-22 14:37:25 +01:00
95113179d8 Merge branch 'mueller_5v_stack_cmd_for_devices' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into mueller_5v_stack_cmd_for_devices
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-12-22 14:33:04 +01:00
150073ae8e bump tmtc 2022-12-22 14:32:36 +01:00
a3d1dde455 this should do the job
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-12-22 14:13:41 +01:00
268233551d use stack handler in PL PCDU component
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-12-22 11:10:55 +01:00
c2d2848020 use stack handler in rad sensor handler as well
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-12-22 11:02:33 +01:00
9aedc32527 disable rad sensor auto-on
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-12-22 11:00:04 +01:00
7aae4efd69 added 5v stack status read in PCDU handler
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-12-21 17:30:21 +01:00
b53cc475fe bugfix acs controller
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-12-21 16:11:53 +01:00
dcf6367314 this is annoying
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-12-21 14:43:12 +01:00
164bfc3521 continue stack 5v
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-12-21 14:34:07 +01:00
b75102f670 add 5V stack handler
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-12-21 14:11:31 +01:00
9024460da3 changelog update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-12-21 13:44:48 +01:00
7df7ced43e added 5v stack command
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-12-21 13:40:31 +01:00
b981878c58 Merge pull request 'use memset for zeroing' (#333) from mueller_use_memset_for_zeroing into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #333
2022-12-20 15:14:49 +01:00
0507bf14b1 Merge branch 'develop' into mueller_use_memset_for_zeroing
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-12-20 15:08:10 +01:00
c83a6a44c6 actually use those defines
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-12-20 11:45:46 +01:00
de3b2cefb0 reinitiate reboot file disabled
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-12-20 11:45:21 +01:00
98597b98d7 use memset for zeroing
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-12-20 11:43:02 +01:00
bd52da8afd set stictionSpeed to minimum commandable RW speed
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-12-20 10:01:30 +01:00
d9d7559097 fixed usage of wrong sample time for MEKF
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-12-19 14:34:20 +01:00
c338c4fb58 fixed usage of sunMagAngleMin 2022-12-19 14:24:03 +01:00
e4936b1bed removed deprecated acs parameters and set sunMagAngleMin 2022-12-19 14:23:42 +01:00
b3a2cc4367 fixed booleans in acs Parameters and enabled setting of parameters
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-12-16 13:59:49 +01:00
3f2910c3a7 changed order of submodes and their naming
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-12-14 13:04:41 +01:00
8b415883e9 removed references to deprecated OutputValues and renamed guidance strategies 2022-12-14 11:46:58 +01:00
fa245d3c4a Merge remote-tracking branch 'origin/develop' into mueller/tcs_subsystem
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-12-14 11:02:13 +01:00
c97d319b2a added gpsVelocity to gpsProcessed dataSet
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-12-14 10:39:41 +01:00
b6c5796121 fixed init for SensorProcessing and type of timeDiff
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-12-14 10:31:20 +01:00
12a367f65f fixed detumble merge aftermath 2022-12-14 10:13:28 +01:00
d5677c20f7 fixed gps velocity merge aftermath 2022-12-14 10:04:37 +01:00
b80ecfb600 removed comments 2022-12-14 10:03:57 +01:00
b49d37e15a clang
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-12-13 11:51:03 +01:00
d33ae9ede7 Merge branch 'eggert/acs' into marquardt/ptgCtrl
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
# Conflicts:
#	mission/controller/AcsController.cpp
#	mission/controller/AcsController.h
#	mission/controller/acs/AcsParameters.h
#	mission/controller/acs/ActuatorCmd.h
#	mission/controller/acs/Guidance.cpp
#	mission/controller/acs/Guidance.h
#	mission/controller/acs/MultiplicativeKalmanFilter.cpp
#	mission/controller/acs/OutputValues.h
#	mission/controller/acs/SensorProcessing.cpp
#	mission/controller/acs/SensorProcessing.h
#	mission/controller/acs/control/Detumble.cpp
#	mission/controller/acs/control/Detumble.h
#	mission/controller/acs/control/PtgCtrl.cpp
#	mission/controller/acs/util/MathOperations.h
2022-12-13 11:26:23 +01:00
cf1a1185fc Merge branch 'develop' into eggert/acs
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-12-12 15:07:41 +01:00
c6e8c40b2c added schmidt normalization + cleanup
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-12-12 15:00:49 +01:00
46945a8674 MEKF cleanup 2022-12-12 15:00:29 +01:00
5fe3ac09a5 Igrf13Model cleanup 2022-12-12 15:00:11 +01:00
f35c42aead corrected calculations of Q and Phi 2022-12-12 14:59:45 +01:00
e9dd0f8f6d reverted to initial smidt normalization 2022-12-12 14:59:18 +01:00
fac2fc4971 - fixed IGRF-13 model
- fixed GST calculation
- fixed conversion ECI
- ToDo: remove debug output, check normalization
2022-12-12 14:58:51 +01:00
72b503bb8f fixed calculation of sun vectore model 2022-12-12 14:58:20 +01:00
25873da6c0 afmt
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-12-12 10:06:55 +01:00
87b07384ad bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-12-12 09:00:57 +01:00
bc66a88d74 bump deps
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-12-06 10:34:55 +01:00
2b445369fd acsParameters in kalman filter added
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-12-05 21:31:52 +01:00
ace8900ca4 Merge pull request 'allow consecutive tcp and udp server' (#331) from mueller_consecutive_tmtc_server into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #331
2022-12-02 18:03:38 +01:00
46248a5b69 schedule all dummy components
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-12-02 16:58:21 +01:00
60bf8df9ef update BSP hosted
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-12-02 16:47:28 +01:00
93cc7af5ee bump tmtc
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-12-02 16:39:54 +01:00
1c4e9c8db6 Merge remote-tracking branch 'origin/develop' into mueller_consecutive_tmtc_server 2022-12-02 16:39:45 +01:00
c9697572c3 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-12-02 16:25:04 +01:00
b1f861b59c Merge remote-tracking branch 'origin/develop' into mueller/tcs_subsystem 2022-12-02 16:24:50 +01:00
3c29a4fc55 Merge pull request 'First Version of ACS Controller' (#329) from acs-ctrl-v1 into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #329
2022-12-02 16:21:46 +01:00
c6c2469487 allow consecutive tcp and udp server
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-12-02 13:55:19 +01:00
ee1fc8aa8b Merge branch 'develop' into acs-ctrl-v1
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-12-02 11:57:18 +01:00
d72052fe2a bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-12-02 11:39:30 +01:00
622ce1d4f3 Merge branch 'acs-ctrl-v1' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into acs-ctrl-v1 2022-12-02 11:39:18 +01:00
60418f6fdc small compile fixes 2022-12-02 11:38:51 +01:00
1d0a13a79d update generated files
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-12-01 17:08:03 +01:00
72300f0217 Merge remote-tracking branch 'origin/develop' into acs-ctrl-v1
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-12-01 16:39:54 +01:00
e51670f615 Merge pull request 'v1.18.0' (#330) from develop into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #330
2022-12-01 16:37:32 +01:00
7d99d8e805 bump minor version and changelog
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build queued...
EIVE/eive-obsw/pipeline/head This commit looks good
2022-12-01 16:30:39 +01:00
a726f7535d bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-12-01 16:21:29 +01:00
b38afa5df3 repoint json dependency
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-12-01 16:01:50 +01:00
0bbdd21d81 bump changelog
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-12-01 15:58:39 +01:00
fb2325b9ea Merge remote-tracking branch 'origin/develop' into acs-ctrl-v1 2022-12-01 15:57:09 +01:00
828738ba0e afmt
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-12-01 15:56:55 +01:00
a3a919437e bump submodules 2022-12-01 15:56:40 +01:00
3180602217 Merge branch 'develop' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-12-01 14:47:42 +01:00
d3252434aa bump tmtc 2022-12-01 14:47:21 +01:00
08bdc87505 removed hardcoded modes
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
2022-12-01 14:19:42 +01:00
377a672cd2 detumblecounter init 2022-12-01 14:17:51 +01:00
ce83b64ca2 working versions of inverse calc and determinant calc
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-12-01 13:50:48 +01:00
b2442041f0 gauss-jordan v2 that hopefully noone ever sees 2022-12-01 13:50:18 +01:00
b2e0ef24f3 first version for gauss-jordan matrix inversion 2022-12-01 13:49:44 +01:00
f73d293cdd schedule PL task
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-30 18:08:16 +01:00
5f929f6cf8 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-30 17:26:33 +01:00
2d939a2894 update
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-11-30 10:35:30 +01:00
84a3466b4d fixed array list min len 1
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-29 23:24:45 +01:00
2b327bf3a7 initialize a variable
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-29 23:09:55 +01:00
fbf8f5ef6c bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-29 16:55:55 +01:00
b93a278cbf Merge pull request 'Rename some device files/symlinks' (#328) from mueller/rename_dev_files into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #328
2022-11-29 11:08:53 +01:00
a1c9fece1e bump changelog
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2022-11-29 11:08:34 +01:00
d4acdb67bb bump changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2022-11-29 11:07:02 +01:00
ffbf7df557 rename ploc supv and i2c dev symlinks
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2022-11-29 11:05:19 +01:00
b9191eb9ac Merge remote-tracking branch 'origin/main' into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-28 18:31:57 +01:00
b0f000a42f new PLOC SUPV baudrate 921600 2022-11-28 18:31:44 +01:00
3cdb129870 Merge pull request 'v1.17.0' (#327) from develop into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #327
2022-11-28 18:29:29 +01:00
44ef698c35 bump version
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build queued...
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-28 18:27:59 +01:00
fdef405878 Merge pull request 'TAS PLOC SUPV 3' (#326) from mueller/tas_ploc_supv_3 into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #326
2022-11-28 18:26:43 +01:00
5ba5e69273 re-run generators
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2022-11-28 18:25:08 +01:00
87ab84c649 bump changelog
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2022-11-28 18:23:55 +01:00
0763f11998 revert baud rate
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-28 18:21:53 +01:00
acc7739958 bump changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-28 16:33:50 +01:00
425e7c1e52 increase regular delay to up to 80 ms
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-28 16:27:33 +01:00
2c223712ff various fixes and improvements
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-28 16:24:18 +01:00
003d37c490 bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-28 11:21:46 +01:00
2338d951c7 some more robustness tweaks 2022-11-28 11:21:12 +01:00
bd3350c28a this might be a bug
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-28 09:38:32 +01:00
a20dce5a87 cmakelists fix, bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-28 08:48:19 +01:00
f771fefbc9 rename scheduling file
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-11-25 11:04:33 +01:00
c731418b65 disable PLOC SUPV for host build
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-25 10:28:20 +01:00
a08b695fa5 Merge pull request 'PLOC SUPV update 2' (#324) from mueller/tas_ploc_supv_update_2 into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #324
2022-11-24 14:48:22 +01:00
4786905678 Merge remote-tracking branch 'origin/develop' into mueller/tas_ploc_supv_update_2
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2022-11-24 14:47:25 +01:00
6766395f44 works, but SW updates hangs at 21504 bytes 2022-11-24 14:42:17 +01:00
8d1cbd9f8b changed calculation of quaternion for target and sun pointing
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-24 13:40:55 +01:00
c7b90fb8e0 something hangs up
Some checks are pending
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop Build started...
2022-11-24 11:58:41 +01:00
63a8f31a45 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-24 11:23:21 +01:00
cf80ab01fd create dummy switcher 2022-11-24 11:23:13 +01:00
1b92aa03f3 create dummy switcher
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-24 11:22:55 +01:00
f327bdcd91 Merge remote-tracking branch 'origin/develop' into mueller/tas_ploc_supv_update_2
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-11-24 11:21:05 +01:00
609d429161 added Nadir FLP version
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-22 21:10:05 +01:00
cc79ffc57b some remaining bugfixes
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-21 18:32:23 +01:00
9953a49b09 minor improvements for PLOC SUPV update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-21 17:55:56 +01:00
4dfd97a300 add PCDU for EM permanently
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-11-21 14:17:23 +01:00
697e27f876 scex working
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-11-21 14:16:21 +01:00
0a5b79b8cd extend power switch handling
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-11-21 14:01:31 +01:00
c1e92605d4 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-21 13:38:33 +01:00
3eed1508fd bump tmtc and scex baud
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-21 13:37:05 +01:00
13fe25ff03 added dataPool Output, in case MEKF inverion fails
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-11-21 11:24:42 +01:00
f07b905df5 corrected output direction of sunVectors 2022-11-21 11:23:51 +01:00
902caa3985 double length fixes 2022-11-21 11:23:10 +01:00
281eb3237c fixed susTotVec and mgmTotVec types to dataSet types 2022-11-21 11:22:24 +01:00
f3ac6d4a7e added GPS and RW sensor readings. added RW1..4 dummies to acsTask 2022-11-21 11:18:39 +01:00
c430caadd7 changed SusDummies from ExtendedController to DeviceHandler 2022-11-21 11:14:56 +01:00
98fcf06e31 various improvements and bugfixes
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-18 17:25:52 +01:00
f545928adc some bugfixes 2022-11-18 16:13:55 +01:00
30f020bff3 Merge pull request 'PLOC SUPV Update to newer firmware' (#316) from mueller/tas_ploc_supv_update into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #316
2022-11-18 14:27:10 +01:00
28c662e6a7 update changelog
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2022-11-18 14:26:40 +01:00
4b36cdc3da Merge branch 'develop' into mueller/tas_ploc_supv_update
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2022-11-18 14:25:58 +01:00
6e5a8ffc31 Merge pull request 'v1.16.0' (#323) from develop into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #323
2022-11-18 14:23:22 +01:00
2bbe98a403 bump version and changelog
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build queued...
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-18 14:22:00 +01:00
2a00f5af47 bump deps
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-18 14:20:57 +01:00
02eff4a26f some more bugfixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-18 14:18:45 +01:00
c248cdb876 fix for error handling longer request
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-17 17:46:06 +01:00
0857a480e5 zero init some values
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-17 17:39:16 +01:00
2c00119b47 set SP max size
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-17 17:28:41 +01:00
ae11f73e24 disable debug mode
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-17 16:43:54 +01:00
3ab27f63f2 fix scheduling order
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-17 16:20:13 +01:00
7c821e33f0 somethings wrong
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-17 15:59:31 +01:00
9a3fd51337 tweak do off activity
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-17 15:48:44 +01:00
f08709ef29 switch off debugging spam
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-17 15:24:26 +01:00
114d16224e bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-17 15:22:15 +01:00
cdadb02420 mask corrections ,set sec header flag
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-17 13:58:40 +01:00
9bf6ac7a9a clean up printouts a bit
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-17 13:48:40 +01:00
00dd2e99a8 getting there
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-17 13:39:59 +01:00
ffc4a3456b some better names
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-17 13:26:03 +01:00
72f8e359bb CRC failure
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-17 13:24:39 +01:00
53535b6023 fix bugs in SW
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-17 11:45:09 +01:00
bb66228837 re-test the simpler method
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-17 11:38:45 +01:00
bce8c71e38 crc check now works 2022-11-17 11:33:47 +01:00
612a475eec update event translations
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-16 15:26:47 +01:00
4e3abb92f2 update events
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-16 15:25:29 +01:00
eb371b3024 ctor fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-16 15:05:12 +01:00
3ef0b3ea6d TAS PLOC SUPV
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-11-16 15:03:10 +01:00
03e007fd36 afmt
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-11-16 14:43:22 +01:00
5b770a6407 remove HDLC framing including CRC
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-11-16 14:42:18 +01:00
3510cc85fc a lot of bugfixes
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-11-16 13:26:49 +01:00
32005a2d3a more printouts, switch on debug mode
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-11-16 11:57:29 +01:00
9163db6bcf add debug statements
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-11-15 18:02:17 +01:00
1f6f11ee88 bugfix for start method
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-11-15 17:51:22 +01:00
a55e6a1725 logic fix 2022-11-15 17:48:44 +01:00
3059e196a3 update object list
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-11-15 17:47:24 +01:00
42c52295f7 re-run generators
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-11-15 17:44:47 +01:00
38e0df5d12 increase prio a bit
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-11-15 17:42:53 +01:00
c436a2abda rename helper
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-11-15 17:41:15 +01:00
2b4ec6d274 add start method for uart man
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-11-15 17:40:19 +01:00
38e74e6eaf rename ploc supv uart man
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-11-15 17:24:38 +01:00
7fb689b451 it was not the #pragma once
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-11-15 17:22:28 +01:00
e5ec8a7490 now the linux files are compiling
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-11-15 17:21:12 +01:00
23cfe3aa69 unbelievable
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-11-15 17:15:14 +01:00
9481cc2eb0 rename bsp hosted scheduling file
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-11-15 17:08:10 +01:00
99f92a87da rename scheduling file
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-11-15 17:03:46 +01:00
b9f4a7be0c dumb undefined reference
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-11-15 16:59:33 +01:00
f96d831cc9 simiplify hosted SW
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-11-15 16:46:47 +01:00
7d7efaca42 improve hosted SW
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-11-15 16:44:07 +01:00
9ee969218c add README entry for udevadm usage
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-11-15 16:06:23 +01:00
cf57be14bc assign name for hosted ploc supv
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-11-15 16:00:32 +01:00
2f0f837534 Merge remote-tracking branch 'origin/develop' into mueller/tas_ploc_supv_update
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-11-15 13:42:22 +01:00
7384c5ce16 update changelog
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-15 13:41:39 +01:00
f6fc47671f Merge pull request 'Compile Linux files conditionally for Host' (#322) from mueller/compile_linux_files_conditionally_for_host into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #322
2022-11-15 13:40:16 +01:00
3c469e5c7a uart test class tweak
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop Build started...
2022-11-15 13:35:18 +01:00
478e3b9237 add thirdparty CMakeLists.txt 2022-11-15 13:33:53 +01:00
9da5a55ef3 lets see if that works
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-11-15 13:32:05 +01:00
f6729cb3b4 bump deps
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-15 13:20:12 +01:00
6c56810233 bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-15 09:55:38 +01:00
6b03902465 Merge branch 'develop' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into develop 2022-11-15 09:55:31 +01:00
5690e35a58 bump fsfw 2022-11-15 09:55:23 +01:00
d08546e5fe added TCS subsystem normal sequence
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-14 17:17:34 +01:00
55dec574c5 added inertial pointing
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-14 17:16:47 +01:00
94bf91ab2b Merge remote-tracking branch 'origin/develop' into mueller/tcs_subsystem
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-14 17:12:02 +01:00
89af06a310 update object list
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-14 17:10:41 +01:00
0d08a282b4 fix for set capacity
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-14 17:05:46 +01:00
1dee4e5e0d add off sequence for TCS
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-14 16:58:01 +01:00
24093e13e7 continue TCS mode tree
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-14 13:46:26 +01:00
859855ed31 expect reference
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-14 13:36:51 +01:00
0c681a06c7 Merge remote-tracking branch 'origin/develop' into mueller/tcs_subsystem
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-14 13:27:23 +01:00
37558c0fdc Merge pull request 'add missing TMP1075 devs in TCS ctrl' (#321) from mueller/tcs_ctrl_add_missing_tmp_devs into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #321
2022-11-14 13:01:15 +01:00
876c2b36bf add missing tmp devs in ctrel map as well
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-14 10:11:44 +01:00
012590273f add missing TMP1075 devs in TCS ctrl
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-14 10:04:41 +01:00
d2d13e3de6 Merge pull request 'update TMP1075 dev handlers' (#318) from mueller/tmp_dev_updates into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #318
2022-11-14 09:24:11 +01:00
31f6a865d3 remove unused code
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-14 09:19:34 +01:00
d51c088afd there is only one tmp1075 left
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-14 09:16:17 +01:00
a39ff34a0a re-name enum
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-14 09:13:20 +01:00
a855920fb2 README update, I2C addr update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-14 09:12:15 +01:00
ee6bb4df3b add some informative comments
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-11 18:56:34 +01:00
1a17770bbc all TMP1075 dev except the OBC IF board one working
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-11 18:52:12 +01:00
6261296a0a there is an issue..
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-11 17:01:19 +01:00
d4de445112 update changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-11 16:26:16 +01:00
0815380044 create all available TMP devices
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-11 16:24:44 +01:00
7921acefd4 Merge remote-tracking branch 'origin/develop' into mueller/tmp_dev_updates
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-11 15:50:23 +01:00
a21e938f36 renamed cookie as well
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-11 11:41:40 +01:00
bc32c51460 add basic TCS mode tree framework
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-11 11:23:13 +01:00
7ce24ef392 update TMP1075 dev handlers
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-11 11:12:43 +01:00
4c5515c05c update status code handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-11 11:06:08 +01:00
a07a55eac1 Merge remote-tracking branch 'origin/develop' into mueller/tas_ploc_supv_update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-10 18:14:53 +01:00
ceba3b9dca renaming of fsfw_hal components
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-10 18:07:59 +01:00
a74ddbbb9f small bugfix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-10 17:46:57 +01:00
02df949a48 this seems to work
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-10 17:42:19 +01:00
ec7ce5ddb6 ploc components now compile for hosted (linux)
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-11-10 17:32:11 +01:00
ca9ef28199 dummy stuff
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-11-10 16:31:59 +01:00
5ed0ade358 bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-10 16:23:51 +01:00
e7005c18a4 bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-10 15:58:48 +01:00
63f48c5f45 Merge remote-tracking branch 'origin/develop' into mueller/tas_ploc_supv_update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-10 15:44:49 +01:00
b47d00844a Merge pull request 'Payload Subsystem' (#231) from mueller/pl-ss into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #231
2022-11-10 15:42:53 +01:00
19cf64f5f0 Merge branch 'develop' into mueller/pl-ss
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2022-11-10 15:42:08 +01:00
d690a54005 connect payload children to subsystem
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-10 15:39:08 +01:00
f90120191f pl ss fixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-10 15:12:50 +01:00
4c0bf18268 fix for object IDs
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-10 14:18:58 +01:00
76ca81b997 wrap in preproc defines
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-10 14:12:09 +01:00
07d93b6b67 schedule PL components differently
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-10 14:08:44 +01:00
09ccb5ddf7 re-enable wipe cmd
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-10 13:50:18 +01:00
47b65a1fa3 create cam switcher, create new PL task
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-10 13:09:31 +01:00
a2b0e53301 bugfix SW update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-10 13:08:17 +01:00
3be45b32ef renaming
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-10 11:20:27 +01:00
b88b4cc06d tweaks and fixes for UART man
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-09 19:47:42 +01:00
9e006d93fe move other function to graveyard
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-09 19:27:18 +01:00
c42eae9c17 re-enabled some commands
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-09 19:24:48 +01:00
b6dc81da0e keep old baud for FM
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-09 15:23:40 +01:00
cb49ec1c7e Merge remote-tracking branch 'origin/develop' into mueller/pl-ss
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-09 15:15:57 +01:00
2118c0691c Merge remote-tracking branch 'origin/develop' into mueller/tas_ploc_supv_update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-09 15:15:40 +01:00
7515f88843 Merge pull request 'Smaller fixes and improvements' (#317) from mueller/smaller_fixes_improvements into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #317
2022-11-09 15:00:28 +01:00
4a070f2b7f bump tmtc
Some checks are pending
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2022-11-09 14:53:08 +01:00
ea6fd8c952 smaller fixes and improvements
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-09 13:07:20 +01:00
e2a0db8fcc command and function graveyard
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-08 20:41:20 +01:00
d3da5bd2d8 add factory reset cmd
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-08 20:37:57 +01:00
52f15906d8 kick out more commands
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-08 20:14:42 +01:00
fd5cc19231 remove non-working commands
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-08 20:04:57 +01:00
27e46615b6 repaire exe handling 2022-11-08 19:53:26 +01:00
54523b25d1 fixed ack reply handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-08 17:07:12 +01:00
1d6258d223 start fixing dev handler ack handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-08 16:56:42 +01:00
28cd78db96 implemented the last tricky parts 2022-11-08 16:26:30 +01:00
f564fb5c1a some fixes for thread shutdown code
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-08 14:52:07 +01:00
763bf2d85b remove flush call, belongs in lower layer
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-08 14:29:41 +01:00
9d02322cd7 continue refactoring
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-08 14:26:52 +01:00
20936faec6 added Antistiction, added Nadir Pointing, added performSafe()
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-11-08 13:48:50 +01:00
cfe7599f62 use result namespace instead of interface
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-08 11:18:03 +01:00
4515703efa added tm service IDs
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-08 11:08:21 +01:00
8cc368b131 fixed types for actuatorCmdData
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-11-08 10:56:12 +01:00
4bf22f689a create TM base class
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-08 10:22:57 +01:00
3b575acd55 comment out more code which was removed
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-08 10:10:57 +01:00
8dbb3dcd9b continue refactoring
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-07 17:31:16 +01:00
e46bb42266 continue switch to new packet format 2022-11-07 13:37:51 +01:00
f32f68d0e0 continue switch to new packet format 2022-11-07 11:26:36 +01:00
95a3ea1d23 start using new packet format 2022-11-07 11:19:10 +01:00
23025eec7a no payload packet impl 2022-11-07 10:30:09 +01:00
32865d1834 use on/off semantics and rename handler 2022-11-07 10:00:54 +01:00
bb2f8edc77 add new APID defs 2022-11-07 09:26:36 +01:00
75ab11fc35 updated AcsParameters. change DCM_EJ calc to with precission and nutation
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-04 17:21:17 +01:00
d184f7487e post merge cleanup
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-11-04 14:54:23 +01:00
2b9afbedff important fix and clarification
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-04 14:19:58 +01:00
895d03a35c Merge branch 'develop' into eggert/acs
# Conflicts:
#	dummies/CMakeLists.txt
#	mission/controller/AcsController.cpp
#	mission/controller/AcsController.h
2022-11-04 14:19:43 +01:00
dc024e5385 low level impl complete
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-04 13:40:42 +01:00
5df45f9fa7 start com IF function impl
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-11-04 12:51:01 +01:00
74837753bf add IPC ring buf and buffer
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-04 12:45:20 +01:00
a4735defaa amended gyr sensor fusion
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-04 12:41:35 +01:00
b5cd873f6d completed ring buffer parser
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-04 12:38:30 +01:00
af0853a42b continue HDLC parsing 2022-11-04 12:04:47 +01:00
45c95e559e started HDLC ring buffer decoder
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-04 11:53:07 +01:00
6350dbe0e9 now its getting tricky
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-04 11:38:21 +01:00
d254331b8e add basic manual UART reading 2022-11-04 11:34:33 +01:00
826f4ce29c add lock, use generic sem interface
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-04 11:16:22 +01:00
de66ac66c6 supv helper is a com IF now
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-04 11:08:47 +01:00
048cd89053 use scoped includes
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-04 09:45:32 +01:00
5dc41badc3 bump tmtc
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-11-04 09:37:14 +01:00
1ac9e53b1f add TAS sources
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-11-04 09:35:17 +01:00
e3c245b99f update changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-04 08:37:59 +01:00
c8ddf7472c remove PLOC_SWITCHER and PLOC_SUBSYSTEM usage
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-04 08:30:47 +01:00
fe6b13bb81 start fixing this crap 2022-11-03 22:59:51 +01:00
ba70bde3e9 small fix 2022-11-03 20:57:55 +01:00
9503b2ca93 Merge remote-tracking branch 'origin/develop' into mueller/pl-ss 2022-11-03 20:10:05 +01:00
10611d0415 afmt
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-03 16:14:57 +01:00
42f5f6e943 re-run generators, TCS ctrl adaption
- Scoped TCS controller device temperature copy handling
2022-11-03 16:13:53 +01:00
2b545f67ec Merge pull request 'dhb2normal' (#313) from dhb2normal into develop
Reviewed-on: #313
2022-11-03 15:36:22 +01:00
6069948b4e bump changelog again 2022-11-03 15:35:32 +01:00
60d81fac41 bump changelog 2022-11-03 15:34:07 +01:00
7ce9bbf2e8 bump fsfw 2022-11-03 15:33:29 +01:00
89083cdbc8 important bugfix 2022-11-03 15:29:54 +01:00
b742f91ea8 remove debug dummy 2022-11-03 15:11:19 +01:00
8e26ad2871 simplify max RTD low level handler 2022-11-03 15:10:42 +01:00
c7bfe4002d added event for SAFE to DETUMBLE transition. changed actuator input from double to int
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-11-03 14:24:09 +01:00
4faf00de94 converted MTQ MGM readings from nT to uT 2022-11-03 14:23:06 +01:00
9044a5476c even larger queues 2022-11-03 13:38:41 +01:00
aed2d077af Merge remote-tracking branch 'origin/develop' into dhb2normal 2022-11-03 13:32:44 +01:00
954cd91c93 Merge pull request 'print correction' (#314) from pdec_handler_print_correction into develop
Reviewed-on: #314
Reviewed-by: Jakob Meier <meierj@irs.uni-stuttgart.de>
2022-11-03 12:15:05 +01:00
a13ccb43d2 removed OutputValues
amended sumbode list
inserted writes to output DataPools
2022-11-03 10:43:27 +01:00
1f2c410a5f print correction 2022-11-03 10:40:59 +01:00
caa81e3b8e larger queues 2022-11-03 10:34:19 +01:00
264a34d227 tweak for gomspace to normal function 2022-11-03 10:24:55 +01:00
d5a908ab75 remove stray info printout 2022-11-03 10:15:44 +01:00
23684710e7 bump fsfw again 2022-11-03 10:12:25 +01:00
772e189040 bump fsfw 2022-11-03 10:11:14 +01:00
957d4a61d8 Merge remote-tracking branch 'origin/develop' into dhb2normal 2022-11-02 20:06:07 +01:00
0e3918a3a7 bump tmtc 2022-11-02 20:04:00 +01:00
beb99d53f7 pus test service has higher prio now 2022-11-02 19:35:35 +01:00
1afd34b450 Merge remote-tracking branch 'origin/develop' into dhb2normal 2022-11-02 19:17:42 +01:00
a2c1ca97b8 Merge pull request 'PDEC IRQ Handling' (#310) from mueller/pdec_irq_handling into develop
Reviewed-on: #310
2022-11-02 18:16:18 +01:00
70092b348a pdec handler has higher priority now 2022-11-02 19:15:07 +01:00
2d821ef8df irq working 2022-11-02 18:58:29 +01:00
b2e3bc7e7a some more tests 2022-11-02 16:32:00 +01:00
ddc68669fc bump deps 2022-11-02 16:08:44 +01:00
098f69b1bc dummy fix 2022-11-02 15:56:05 +01:00
3995b15ccf bugfixes for dummies 2022-11-02 15:55:40 +01:00
a45e7d7561 debug printout 2022-11-02 15:33:54 +01:00
8297bca969 small EM fix 2022-11-02 15:22:05 +01:00
964f9dc688 Merge remote-tracking branch 'origin/develop' into mueller/pdec_irq_handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-02 14:16:14 +01:00
ce743e238b Merge branch 'mueller/tm_funnel_improvements' into dhb2normal
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-02 14:07:15 +01:00
53214f0019 hosted build works again
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head Build started...
2022-11-02 14:03:54 +01:00
004e79580e Merge pull request 'refactored TM funnels to allow multiple TM recipients' (#312) from mueller/tm_funnel_improvements into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #312
Reviewed-by: Jakob Meier <meierj@irs.uni-stuttgart.de>
2022-11-02 13:10:42 +01:00
802b851924 bump changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-02 10:59:21 +01:00
e1526f712e bump changelog
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-11-02 10:58:40 +01:00
14b8b00880 small logic fix
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-11-02 10:55:40 +01:00
621966b6f3 Merge remote-tracking branch 'origin/develop' into dhb2normal
Some checks failed
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-11-02 10:47:49 +01:00
b6cde9e8fc Merge remote-tracking branch 'origin/develop' into mueller/pl-ss
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-02 10:39:50 +01:00
b1f7c66066 Merge remote-tracking branch 'origin/develop' into mueller/pdec_irq_handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-11-02 10:37:52 +01:00
39778f9663 Merge remote-tracking branch 'origin/develop' into mueller/tm_funnel_improvements
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-11-02 10:37:15 +01:00
a0c784113b Merge pull request 'ACS Subsystem Init' (#228) from mueller/acs-ss-init into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #228
2022-11-02 10:34:38 +01:00
0c549dd1ce Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init 2022-11-02 10:33:34 +01:00
76283e0e49 refactored TM funnels to allow multiple TM recipients 2022-11-02 10:26:45 +01:00
97fd35fe7b bump fsfw 2022-11-02 10:25:42 +01:00
191d5f1268 refactored TM funnels to allow multiple TM recipients 2022-11-02 10:20:14 +01:00
e5fd62a121 some updates for pdec and EM syrlinks tests 2022-10-31 18:45:39 +01:00
3f3162fb36 Merge remote-tracking branch 'origin/develop' into mueller/pdec_irq_handling 2022-10-31 18:13:34 +01:00
885a7b0c6a bump submodules 2022-10-31 18:13:29 +01:00
ba541300ca updated AcsParams, added class function to get quaternion for sun pointing (guidance)
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-28 18:18:28 +02:00
7dcc00312f bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-28 10:11:42 +02:00
d19ddaa46c Merge branch 'mueller/acs-ss-init' into mueller/pl-ss
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-27 17:00:14 +02:00
51572208a9 Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-27 16:59:32 +02:00
745fad2a19 use baudrate 115200 for SCEX now
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-27 16:37:16 +02:00
655c38a210 Merge remote-tracking branch 'origin/develop' into mueller/pdec_irq_handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-27 15:34:54 +02:00
09642eb6bf fixes for bash script
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-27 14:11:09 +02:00
23da59fec5 bugfixes and improvements
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-27 14:09:55 +02:00
833f7c6885 syrlink sim flag now EM/FM dependent
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-27 14:04:55 +02:00
82af8e00df bufixes for PDEC
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-27 14:02:34 +02:00
e5ccc6473e Merge remote-tracking branch 'origin/main' into mueller/pdec_irq_handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-27 11:32:01 +02:00
59bfa2526e Merge pull request 'v1.15.0' (#311) from develop into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #311
2022-10-27 11:28:45 +02:00
24c050765b countdown to ensure periodic lock checking
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-27 10:51:34 +02:00
95d2bc0887 first IRQ impl
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-27 10:49:52 +02:00
bc277067ed add PDEC IRQ uio file entry
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-10-27 09:20:41 +02:00
890fba18e1 Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-27 09:18:12 +02:00
a3a9bc8b39 Merge remote-tracking branch 'origin/develop' into mueller/pdec_irq_handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-27 09:17:01 +02:00
d6adde92fc add dates to changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-27 09:11:10 +02:00
1d6b5cbda4 add missing changelog entry
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2022-10-27 09:08:26 +02:00
b54c40db11 missing define renaming
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2022-10-27 09:06:34 +02:00
cd1eb02f02 re-run generators
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2022-10-27 09:03:39 +02:00
b059e831c0 complete changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
2022-10-27 09:02:55 +02:00
35f9869861 tab replacements
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
2022-10-27 09:01:09 +02:00
ae16dcc4a7 afmt + changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2022-10-27 09:00:21 +02:00
0f60c7f356 bump minor version
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2022-10-27 08:57:47 +02:00
ffb93dacd7 Merge remote-tracking branch 'origin/develop' into mueller/pdec_irq_handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-27 08:57:24 +02:00
e1c0a451ee update changelog
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-27 08:56:20 +02:00
4e1df940d9 Merge pull request 'New UIO file names' (#309) from mueller/uio-updates into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #309
2022-10-27 08:53:21 +02:00
f24ea413c8 Merge branch 'develop' into mueller/uio-updates
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2022-10-27 08:53:08 +02:00
921f413888 small bugfix
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2022-10-27 08:53:03 +02:00
8dd1d81e0d consistent dev names
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-27 08:51:49 +02:00
23238a1e58 reenable core ctrl + minor fm fix
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-27 08:48:46 +02:00
7799e3477f pdec handler now compiles
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-27 08:34:45 +02:00
115c6a6a57 Merge remote-tracking branch 'origin/develop' into mueller/pdec_irq_handling
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-10-27 08:31:58 +02:00
db47e56474 Merge branch 'mueller/acs-ss-init' into mueller/pl-ss
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-27 08:31:47 +02:00
592cbf6fad Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-27 08:31:21 +02:00
cace1217df Merge remote-tracking branch 'origin/develop' into mueller/uio-updates
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-27 08:29:49 +02:00
e200e2d0df remove boolean which does not exist anymore
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-27 08:28:43 +02:00
2256ffecbe scex speed is now set from cfg
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-10-26 18:32:53 +02:00
e86831fb40 initialize value
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-10-26 17:21:35 +02:00
451581e1aa enable IP core components for both EM and FM
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-10-26 17:18:23 +02:00
44dda9455d SensorProcessing writes to AcsController DataSets now
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-26 17:13:23 +02:00
5173a0c9cb its the rad sensor
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-10-26 17:11:57 +02:00
d7ff74b6bd better configurability for PDEC/PTME usage
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-10-26 16:11:34 +02:00
3475e167ee perform SD card check more often for 2-3 cycles
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-10-26 15:57:07 +02:00
00059251f0 further clean up em and general code
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-10-26 15:47:23 +02:00
c2845aefaf further reduce EM SW
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-26 15:31:04 +02:00
d25e883e65 further reduce EM obj factory 2022-10-26 15:30:04 +02:00
2286451039 split up Pdec Handler
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-10-26 14:35:47 +02:00
278db35ae0 small fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-25 19:19:57 +02:00
b5d3422d90 add some baseline defines and config values
Some checks failed
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-10-25 19:12:04 +02:00
4a8096998d added two todos and new uio file names
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-25 18:21:48 +02:00
1c9c2aba5b Merge pull request 'safety mechanism on reboots' (#308) from mueller/sdc-safety-mechanism-on-reboot into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #308
Reviewed-by: Jakob Meier <meierj@irs.uni-stuttgart.de>
2022-10-25 14:33:58 +02:00
9b8d2f3097 Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-25 13:13:41 +02:00
5204afb9bd Merge pull request 'IMTQ Updates' (#306) from mueller/imtq-updates into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #306
Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de>
2022-10-25 13:12:14 +02:00
4af8c85a84 small fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-25 11:39:57 +02:00
0135bebc70 impl bugfix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-25 11:33:21 +02:00
69099881bd small stuff
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-25 11:31:54 +02:00
b1e8be2ba5 checked FS usage
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-25 11:31:06 +02:00
f198a401f2 this should work as well 2022-10-25 11:22:31 +02:00
a9096a46c0 safety mechanism on reboots
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-25 11:04:24 +02:00
a3ed5aef8e bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-24 14:26:35 +02:00
4bd2a2dac8 added and implemented all ACS related DataPools to AcsController
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-24 10:41:28 +02:00
8b23fd3dd2 fixed int32_t to double warnings. reformats 2022-10-24 10:29:57 +02:00
e87221a8a3 added gyro detumble
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-10-21 16:46:09 +02:00
c54f52eff6 Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-21 15:45:46 +02:00
72d9775de0 re-run generators
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-21 15:42:08 +02:00
f4067abdac Merge branch 'mueller/acs-ss-init' into mueller/pl-ss
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-21 15:37:52 +02:00
dd7521cc4b Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-21 15:37:25 +02:00
83b8cf3198 Merge remote-tracking branch 'origin/develop' into mueller/imtq-updates
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-21 15:33:47 +02:00
eca0cdf99b Merge pull request 'CFDP: Add TM support' (#307) from mueller/cfdp-add-closure-support into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #307
2022-10-21 15:30:51 +02:00
bf5474fd24 repoint submodules
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2022-10-21 15:30:36 +02:00
440bc22a83 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-21 15:25:07 +02:00
917d746d1a small fix (which is not an issue right now)
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-21 15:19:47 +02:00
b9b850f621 object ID corrections
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-21 14:49:54 +02:00
ffc7a55763 added Gps Velocity Calculation
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-10-21 14:23:31 +02:00
c0c83faf64 hosted compiles again
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-21 12:01:07 +02:00
b6a5c8c854 added TODO, remove obsolete code
Some checks failed
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-10-21 11:54:14 +02:00
dc45c53e38 add new CFDP and PUS TM funnel
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-10-21 11:51:44 +02:00
22d4d7085d adaptions so it compiles
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-21 11:31:38 +02:00
e0399a5db3 Merge branch 'mueller/acs-ss-init' into mueller/pl-ss
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-21 11:20:01 +02:00
b2688c5ac0 Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-21 11:18:39 +02:00
f29b578cae do not install watchdog in yocto install script
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-20 18:14:26 +02:00
6effbaa85e EM installer updates
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-20 18:03:37 +02:00
da177f1170 create SA deployment dummy
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-20 17:25:27 +02:00
5abbaeddb0 update EM obj factory
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-20 17:16:37 +02:00
def93d3e59 bump deps
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-20 17:09:38 +02:00
48ed7500d8 Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-20 17:03:50 +02:00
a5f2f3e8ea Merge remote-tracking branch 'origin/develop' into mueller/imtq-updates
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-20 16:26:35 +02:00
bff4f6fa8d reformatinng
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-20 16:09:49 +02:00
75a4cd1b69 awful solution but works
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-20 16:09:18 +02:00
29a34256a7 old code seems to work
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-20 15:08:33 +02:00
0d3509b991 added actuator command values DataSet
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-20 11:09:52 +02:00
62bf792888 removed comment 2022-10-20 11:09:02 +02:00
06941fcf5b fixed int32_t to double warnings 2022-10-20 11:08:21 +02:00
deb7c4e500 added saftCtrl to acsController 2022-10-20 11:07:45 +02:00
ada1111252 removed TODO
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-20 10:52:13 +02:00
07fe2cb122 some tweaks for dipole set handling
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-20 10:51:19 +02:00
2b6334b9dc this works
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-20 10:44:28 +02:00
ab273a8a59 re-use dipole set in IMTQ handler
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-20 10:32:17 +02:00
42bb2f554f added fat TODO
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-19 19:11:21 +02:00
6bdc420d0e bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-19 19:08:36 +02:00
386fc60441 new static variables to make torque status available
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-19 18:52:16 +02:00
a0356a5092 imtq update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-19 15:36:57 +02:00
5c2266e214 added variances for sensors for sensor fusion
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-19 11:01:53 +02:00
c50f8c716f amended GYR sensor fusion. replaced MGM sensor fusion 2022-10-19 11:01:27 +02:00
86450f9d66 Added DataSets for all OutputValues/Sensors 2022-10-19 11:00:46 +02:00
371a11684a cleanr PL PCDU data on off cmd
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-19 10:46:57 +02:00
83362f7a00 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-18 17:51:20 +02:00
c3b2e3ef0f rw fix and higher timeout for tctrl locks
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-18 14:08:26 +02:00
a0f8872ad7 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-18 11:41:27 +02:00
b01217cf16 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-18 11:08:38 +02:00
e781da1be4 simplify power set ID handling 2022-10-18 11:01:33 +02:00
13a6a45d30 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-18 10:22:02 +02:00
2d64892a81 inserted fusion weight optimum 2022-10-17 14:53:49 +02:00
d190165bf3 Merge remote-tracking branch 'origin/mueller/acs-ss-init' into mueller/pl-ss
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-17 10:52:05 +02:00
ed7bba2cf5 renaming
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-17 10:34:57 +02:00
a8e03ab8fe Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-10-17 10:28:53 +02:00
81696b334c Merge pull request 'Solar Array Deployment Update' (#305) from mueller/solar-array-depl-autonomous into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #305
2022-10-17 10:26:08 +02:00
43f25e8002 default time windows
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-14 20:37:02 +02:00
c800ddfa31 basic SD card remount FDIR
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-14 15:33:34 +02:00
e9a4c63127 fix one shot flag
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-14 15:05:44 +02:00
0a5bd6ef73 added sensor fusion logic for GYR
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-14 14:57:22 +02:00
3cff1c48e9 some more testing and bugfixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-14 14:55:37 +02:00
99f703a2eb some more important bugfixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-14 14:34:35 +02:00
7aca487888 Merge branch 'mueller/solar-array-depl-autonomous' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into mueller/solar-array-depl-autonomous
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-14 14:17:28 +02:00
5d721706f3 bugfix for autonomous handling 2022-10-14 14:17:20 +02:00
bcef1f5d33 small delay
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-14 13:30:35 +02:00
19c73167c9 bugfixes for alternation
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-14 13:13:23 +02:00
69f34acbd2 rerun generator script
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-14 11:55:21 +02:00
8f61d14a82 implemented getParameter for AcsParameters 2022-10-14 11:11:23 +02:00
470f0ad7e8 convert some debug output into info output
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-13 18:52:44 +02:00
f939bfc469 remember commander
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-13 18:44:50 +02:00
4714c15d65 some more fixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-13 18:42:47 +02:00
b783e9865e start the FSM properly
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-13 18:39:14 +02:00
d8907d5ccc important fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-13 18:20:17 +02:00
213787d435 start SA depl task
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-13 18:15:28 +02:00
a4bf47499e remove channel param from cmd
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-13 18:11:05 +02:00
0e8a085f97 add debug mode
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-13 17:48:32 +02:00
f9ee01b02d removed TODO
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-13 17:35:57 +02:00
773747dd54 implemented alternating GPIO SA Deployment
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-13 17:34:33 +02:00
d97e0a1a6a update depl handler
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-13 16:04:34 +02:00
0ebd0a0c0b completed impl
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-13 15:59:56 +02:00
18e8827a84 add missing public keyword
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-13 15:13:19 +02:00
db7f7bdae2 continue SA DEPL impl
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-10-13 15:09:47 +02:00
f89f7630c1 removed comment
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-13 10:49:39 +02:00
20b57906b7 added TODO
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-12 19:55:47 +02:00
e1b3688869 finish file handling
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-12 19:55:20 +02:00
22691b6950 add TODO
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-12 17:23:54 +02:00
10da5cd45b action handler init
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-12 17:21:10 +02:00
15fb86ddb7 continue SA DEPL handler
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-12 17:18:57 +02:00
cc35db91cd added calibration of raw MGM values
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-12 17:14:33 +02:00
8edf7fc0de deprecated code removed
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-12 15:22:26 +02:00
2bc7c7b3ae continue autonomous depl handling
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-12 15:19:21 +02:00
43497b399f enabled processGps
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-12 15:18:07 +02:00
84fc44fd5f fixed GPS and STR inputs
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-12 15:06:24 +02:00
2a9dc518a0 added GpsDummy 2022-10-12 15:04:19 +02:00
6a900693f3 continue SA DEPL
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-10-12 14:24:45 +02:00
a2e1ed56c9 pass SDC man to SA DEPL handler
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-12 14:09:07 +02:00
3289a40320 update comment block
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-12 13:58:48 +02:00
09c0afbe7f simplified SA Depl init
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-12 13:56:25 +02:00
ea82748496 new solar array deployment task
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-12 13:29:38 +02:00
b6b258d82c remove gpio pst
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-12 13:21:58 +02:00
214428295b only do time file handling with mounted SD card
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-12 12:01:48 +02:00
4aecd07970 added PtgCtrl code. matched inputs to actual SensorValues inputs
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-12 10:28:44 +02:00
7be6bbc948 removed deprecated SusData input 2022-10-12 10:27:28 +02:00
430646afd0 added STR to SensorValues 2022-10-12 10:27:01 +02:00
d929b27c08 emplaced STR quaternion related dataPool. added STR dummy to acsTask 2022-10-12 10:26:33 +02:00
d3d29a3691 Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-11 23:13:37 +02:00
bcf7fa216a bump changelog
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-11 23:10:09 +02:00
5824b28993 Merge remote-tracking branch 'origin/main' into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-11 23:08:51 +02:00
f196838f6b bump revision
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-11 23:08:37 +02:00
607822b413 fix in SDC manager
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-11 23:07:44 +02:00
21258c2d79 fix core controller
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-11 22:58:31 +02:00
f5adbea923 safe mode is now callback sequence
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-11 15:19:03 +02:00
8536c79445 clean up
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-11 15:01:44 +02:00
46dd2b92e5 renamed RMU related stuff to GYR. added GYR processing 2022-10-11 15:01:32 +02:00
b2a715ef6a added GYR dummies to acsTask. Added complete GYR dataSets to the dummies 2022-10-11 15:00:37 +02:00
0f06219fd3 changed initial Mgm values to arbitrary other than 0 values 2022-10-11 14:57:58 +02:00
c8d91dce7d format fix. added GYR orientation matrices 2022-10-11 14:56:18 +02:00
bb0ce1a329 Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-11 14:04:12 +02:00
cca96f2a96 scoped thermal ctrl locks
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-10 18:29:06 +02:00
73d9bad9e2 Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-10 18:01:16 +02:00
1780a09dc5 bump deps 2022-10-10 18:01:09 +02:00
7f3d827a6e move finish action call
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-10 18:00:43 +02:00
28881b99d1 Merge pull request 'v1.14.0' (#304) from develop into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #304
2022-10-10 17:46:37 +02:00
74f053ae5d bump subversion
Some checks are pending
EIVE/eive-obsw/pipeline/pr-main Build started...
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-10 17:44:58 +02:00
3d1d31c020 update changelog
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-10-10 17:44:28 +02:00
964e0a3d8e re-run afmt
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-10 17:41:52 +02:00
0f57810a9a re-run afmt
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-10-10 17:40:30 +02:00
63d660119e Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-10-10 17:39:47 +02:00
4f7ad7154b Merge pull request 'scex code' (#303) from scex-additions into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #303
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2022-10-10 17:36:36 +02:00
12feb989ae small tweaks
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2022-10-10 17:36:01 +02:00
076e67dd0b switched sensor input from AcsController to SensorValues
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-10 16:02:57 +02:00
82e9c6d092 comments 2022-10-10 16:02:17 +02:00
f0fec11ad7 set channel output valid flag to true 2022-10-10 16:00:31 +02:00
d9f2dfa725 fixed warnings 2022-10-10 15:58:51 +02:00
5b4f97358f bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-10 15:32:03 +02:00
57dff4258a disable parity bit
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-10 15:21:41 +02:00
c82c4cf9d1 Merge remote-tracking branch 'origin/develop' into scex-additions
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-10 11:16:19 +02:00
20b7f8b46b Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-10 11:10:07 +02:00
d8757ede0e bump submodules
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-10 11:09:28 +02:00
bba3ba7944 Merge pull request 'EM SW Update' (#300) from mueller/em-sw-updates into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #300
Reviewed-by: Jakob Meier <meierj@irs.uni-stuttgart.de>
2022-10-10 11:00:18 +02:00
454c2f0ad1 Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-10 10:30:45 +02:00
8e9a91f32a bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-10 10:29:47 +02:00
f4cceeb21e fix one merge conflict
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-10 10:26:26 +02:00
fd1d53aa23 Merge remote-tracking branch 'origin/develop' into scex-additions
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-10 10:18:29 +02:00
50d41215fa Merge remote-tracking branch 'origin/develop' into mueller/em-sw-updates
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-10-10 10:15:55 +02:00
7cf91a8ac3 Merge pull request 'Global Config Handler' (#271) from petri_dev into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #271
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2022-10-10 10:14:21 +02:00
f77b3498ec fixed inputs. removed outputs. minor fixes
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-10 09:54:06 +02:00
bbf4be1cfe removed reduntant parts. fixed integers messing up divisions 2022-10-10 09:53:33 +02:00
5cbbf4ceb2 corrected SUS dummy outputs to match student project 2022-10-10 09:44:28 +02:00
d726ce4e49 permanently activated ACS_CTRL 2022-10-10 09:43:52 +02:00
4d97a82206 Merge remote-tracking branch 'origin/develop' into scex-additions
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-06 18:09:44 +02:00
9173c4d2cb missing commandActive reset
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-06 18:05:06 +02:00
36c9feaf3f parity helps for some reason
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-06 17:01:04 +02:00
f20acf417e some fixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-06 16:58:43 +02:00
3079dabc20 combined SensorProcessing and SusConverter
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-10-06 15:38:23 +02:00
84e960a9ef enabled performSafe 2022-10-06 15:37:41 +02:00
6d9999292c Merge branch 'mueller/scex-em-tests' into scex-additions
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-06 15:36:26 +02:00
1844df2195 SusDummy output matched to student test case 2022-10-06 15:33:01 +02:00
8b35bbd241 use new SCEX uart dev name
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-06 15:08:33 +02:00
0341865e98 this seems to work
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-06 11:15:55 +02:00
adbece25aa add code to get frame, parity and overrun errors
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-05 19:18:25 +02:00
9e81384c5e two stop bits and even parity helps
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-05 18:44:52 +02:00
c5e5df03d9 new Uart16550 for SCEX, try stop bits
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-05 18:13:49 +02:00
3fa2c63a03 add EM code
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-05 14:38:48 +02:00
1a192cd8fb found the bug
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-04 23:04:50 +02:00
a44141c476 something is still wrong
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-04 21:17:54 +02:00
b930af52b0 simplified DLE parser 2022-10-04 20:52:11 +02:00
0c389177e3 refactor DLE parsing and move semaphore release up top
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-04 18:38:53 +02:00
763fc54855 bump changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-04 14:54:39 +02:00
3f12d3500e re-generate csvs
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-04 14:51:15 +02:00
9d0e10eb1e fixed dummies, scheduled dummies as part of acsTask
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-10-04 13:45:13 +02:00
797ed9200f bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-04 13:34:15 +02:00
526ddd0208 Merge branch 'develop' into petri_dev
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-10-04 13:18:34 +02:00
353cda832d unittest fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-30 15:32:46 +02:00
54a3d31c00 TCS ctrl bugfix
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-09-30 15:30:31 +02:00
a562d7e4ca improved retval checker
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-09-30 15:07:20 +02:00
470b236008 fixed some of the acs ss code 2022-09-30 15:05:48 +02:00
66c6f08447 connect acs ctrl to subsystem
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-09-30 14:30:30 +02:00
f0e4d5a61e bump tmtc
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-09-30 14:22:23 +02:00
57d37f14f3 fixed some bugs
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-09-30 14:14:59 +02:00
dcd0a650f0 this should do the job
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-09-30 13:30:22 +02:00
d10ff4efa6 compiles again
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-09-30 12:09:03 +02:00
abe5f43ae9 added performDetumble and implemented ckeckModeCommand
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-09-30 11:06:17 +02:00
16429009b4 added LocalDataPool entries
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-30 10:13:27 +02:00
68fdb68fe6 Merge branch 'irini' into scex-additions
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-29 23:38:59 +02:00
612426ce3b Merge branch 'scex-additions' into irini
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-29 23:36:15 +02:00
9c07a26615 commets removed
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-29 19:50:12 +02:00
6af7ccc6a2 need to fix all of these TODOs
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-09-29 19:40:00 +02:00
43cda300e3 scex directory
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-29 19:38:19 +02:00
9512a7d280 Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-29 17:50:09 +02:00
82cb87abae re-point fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-29 17:47:09 +02:00
08c03520f5 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-29 17:41:50 +02:00
30dd6f1778 bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-29 17:24:58 +02:00
3e5a717845 bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-29 17:22:09 +02:00
f27fccfd29 set DHB parents differently now 2022-09-29 17:06:19 +02:00
0f609fdaba thats a bit tricky
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-09-29 16:47:47 +02:00
ee6d13abcc Merge branch 'develop' into petri_dev
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-29 14:21:08 +02:00
0f081e52bd bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-29 14:20:44 +02:00
660d42f615 Merge remote-tracking branch 'origin/develop' into scex-additions
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-29 14:10:29 +02:00
541b44cea7 re-run afmt
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-29 14:10:21 +02:00
b3f4eaa0f2 Merge remote-tracking branch 'origin/develop' into petri_dev
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-29 14:09:33 +02:00
2ad93f7735 Merge remote-tracking branch 'origin/develop' into mueller/em-sw-updates
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-29 14:09:02 +02:00
865ca46974 Merge remote-tracking branch 'origin/develop' into scex-additions
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-29 14:08:22 +02:00
e161eeb537 re-run generators and bump dependencies
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-29 14:06:46 +02:00
8a5248a46d include fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-29 14:03:09 +02:00
a215657f4e small bugfix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-29 14:01:04 +02:00
92cf4580ca Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-09-29 13:57:39 +02:00
49efbc4725 some bugfixes
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-09-29 13:53:42 +02:00
96497df7ba bump tmtc
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-09-29 13:49:39 +02:00
aa56c26e25 Merge remote-tracking branch 'origin/develop' into petri_dev
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-29 13:45:42 +02:00
151d27985f Merge remote-tracking branch 'origin/develop' into scex-additions
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-09-29 13:43:58 +02:00
a152553d00 Merge remote-tracking branch 'origin/develop' into mueller/em-sw-updates
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-29 13:32:10 +02:00
ffb9e5e03c Merge pull request 'OBSW Update Commands' (#302) from mueller/obsw-update-cmds into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #302
Reviewed-by: Jakob Meier <meierj@irs.uni-stuttgart.de>
2022-09-29 13:24:16 +02:00
fcef7e42a5 some unittest fixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-29 13:23:55 +02:00
1463963532 unittest builds now
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-09-29 13:20:05 +02:00
6bdc0b23de bump fsfw and tmtc
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-09-29 13:13:38 +02:00
b9f48a533a Merge remote-tracking branch 'origin/develop' into scex-additions
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-28 17:02:21 +02:00
97f02401fe bugfix for SCEX code
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-28 17:01:40 +02:00
eb08d8849b added SUS datapool to AcsController
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-28 15:27:51 +02:00
02333d8267 Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-09-28 10:13:53 +02:00
5d0c07467f update changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-28 10:05:36 +02:00
103d53181c Merge remote-tracking branch 'origin/develop' into mueller/obsw-update-cmds
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-28 10:04:22 +02:00
c602d7bb28 clean up the dependency mess
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-28 00:19:29 +02:00
0bae128536 bump fsfw again
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-09-28 00:03:28 +02:00
e2b83f9222 update .cproject file
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-09-28 00:02:03 +02:00
6888df5c44 afmt
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-09-27 23:59:38 +02:00
0c75997ba0 now it compiles for windows again 2022-09-27 23:59:17 +02:00
1aa3cc3595 cant build GW SW of windows 2022-09-27 21:45:22 +02:00
26dc4ba56e fixes for compilation
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-09-27 19:38:35 +02:00
a04372ff55 Merge remote-tracking branch 'origin/develop' into petri_dev
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-09-27 19:31:57 +02:00
f415adccc2 repoint fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-27 19:30:42 +02:00
269de1782a Merge branch 'mueller/obsw-update-cmds' into mueller/acs-ss-init
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-09-27 19:26:23 +02:00
c7e06f8878 changelog update
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-09-27 19:22:06 +02:00
5f2a0e107d Merge branch 'scex-additions' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into scex-additions
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-27 19:18:19 +02:00
3fd8230f03 Merge branch 'irini' into scex-additions 2022-09-27 19:18:12 +02:00
071e00e0ef dog fixed
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-27 19:17:24 +02:00
aab2dc6367 Merge branch 'develop' into scex-additions
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-27 19:14:40 +02:00
3240c843a1 Merge branch 'scex-additions' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into scex-additions
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-27 19:09:31 +02:00
d3c7bae087 Merge branch 'irini' into scex-additions 2022-09-27 19:08:40 +02:00
32c2b2038c constructor correction
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-27 19:06:55 +02:00
308a855d8c bugfix for scex testcode
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-27 18:54:48 +02:00
a1cc5b0ca7 Merge remote-tracking branch 'origin/develop' into irini
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-27 17:36:19 +02:00
5813c5dd43 bump fsfw
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-09-27 14:58:40 +02:00
2b41b3ee26 Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init 2022-09-27 14:57:01 +02:00
24062071c0 bump json dependency to concrete version v3.11.2
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-27 14:56:32 +02:00
3c746e954b updates on same image are problematic..
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-27 14:29:39 +02:00
ff243fa46c some bugfixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-27 12:19:42 +02:00
2c3c3c76af check out explicit json version
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-27 12:14:33 +02:00
4a1cce19c4 fixed minor bugs
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-27 11:57:15 +02:00
51976730aa important bugfix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-27 11:14:54 +02:00
5f17f365e3 fixed local includes
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-09-27 11:06:11 +02:00
caca7f5da8 small bugfix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-27 10:55:00 +02:00
8c0fd8d9e2 some informative docs
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-27 10:51:56 +02:00
90962c9f8e rudimentary SD commanding interface
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-27 10:51:07 +02:00
dca4335329 fixed array assignment after intialization
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-09-27 10:49:46 +02:00
9b6636fe31 rerun generators
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-27 09:33:34 +02:00
2614239fe4 this should work for the same chip/copy as well
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-27 09:27:40 +02:00
d87baa8da9 successfull SW update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-26 23:17:12 +02:00
9d440838e9 set correct owner for SW update procedure
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-26 18:40:31 +02:00
cbb1fdfd5e args not needed but keep them there (commented)
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-26 18:07:23 +02:00
ab919131fb accept rsa keys for q7s-cp.py as well
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-26 16:20:53 +02:00
e7b6ca42bf cleaned up includes
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-09-26 13:23:20 +02:00
8161d1cd88 finished update cmd impl
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-26 12:26:08 +02:00
eb0ace3bc6 continuing SW update impl
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-09-26 12:00:57 +02:00
b3275d015f start update handler impl
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-26 11:50:35 +02:00
05adc91f94 moved definitions
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-26 11:39:17 +02:00
7d824f5448 updated helper scripts
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-26 11:31:29 +02:00
ec91d9977a move shell scripts helpers to root
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-09-26 11:20:03 +02:00
80f0664139 added some more fixed file names
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-09-26 11:15:37 +02:00
65a7d38f54 adaptions for update sequence
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-09-26 11:12:41 +02:00
15641c61ea these commands make more sense
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-26 10:56:57 +02:00
96bbde7bbc removed HasReturnValuesIF
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-09-26 10:39:57 +02:00
2ede1ed27c added CMake files for new directories. amended existing controller Cmake
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-09-26 10:15:03 +02:00
e140ae4063 fixed typo in filename
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-26 10:13:00 +02:00
cd11e08193 removed redundant loop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-23 14:37:48 +02:00
46ec376e4d amended SusConverter for use as OBSW
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-23 14:27:05 +02:00
e70ee1bf9d initial commit of SusConverter
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-23 09:56:32 +02:00
4b96997f6c added SUS transformation matrices to AcsParameters
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-22 14:47:53 +02:00
7986686739 added SUS calibration coefficients to AcsParameters
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-22 13:39:42 +02:00
b2484136b1 further fixes for HasReturnValuesIF
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-20 15:45:49 +02:00
5ebdc9e767 amended includes. removed links to HasParametersIF
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-20 15:06:05 +02:00
7885205a07 added Navitation
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-20 14:15:55 +02:00
858b291f61 added config. added classIds
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-20 13:52:17 +02:00
40917ab988 added SafeCtrl
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-20 13:46:42 +02:00
497149a628 added PtgCtrl
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-20 13:43:26 +02:00
3d123a09f3 added control subfolder. added Detumble
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-20 13:36:17 +02:00
cc82b8aa42 small formatting fixes
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-20 11:20:13 +02:00
28dfcbf0ef added SensorProcessing
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-19 15:44:14 +02:00
295a2e3fdc added SensorValues
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-19 15:37:05 +02:00
84b0856b52 added OutputValues
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-19 15:26:51 +02:00
053c1a7fe8 added Guidance
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-19 15:17:39 +02:00
338c8299e2 added Commanding as ActuatorCmd
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-19 15:03:25 +02:00
a95f7ff8b0 added CholeskyDecomposition
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-19 14:36:08 +02:00
d497dd53c5 added MKF
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-19 14:28:54 +02:00
8b6d3c9835 small formating-fixes
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-19 14:09:14 +02:00
edb64d2ec5 small fixes
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-19 13:24:20 +02:00
b42986dd8a added MathOperations to util folder
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-19 11:10:28 +02:00
4583f0cb86 added Igrf13Model
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-19 10:46:21 +02:00
2ddd95c7fd helper scripts and README section for OBSW update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-16 19:57:19 +02:00
b308a037b4 bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-16 18:56:03 +02:00
afba412fe2 separate script to create obsw version file
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-16 18:53:11 +02:00
0fc639cc11 added action IDs for new commands
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-16 18:48:05 +02:00
d2ca1139a7 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-16 18:29:41 +02:00
cb6366b208 bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-16 18:24:46 +02:00
b48c5d528e larger TC and TM store
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-16 18:16:52 +02:00
8aa412e865 add CFDP APID to TCP parse list
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-16 18:10:23 +02:00
9411b740ae CFDP integration almost complete
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-16 17:28:43 +02:00
cee114af7e bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-16 15:13:22 +02:00
2f18347430 move object ID definition
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-16 15:12:32 +02:00
d9427c6112 added AcsParameters
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-16 14:22:17 +02:00
a827351a75 Merge branch 'mueller/em-sw-updates' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into mueller/em-sw-updates
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-09-16 14:02:11 +02:00
54f73661fc fix init error 2022-09-16 14:01:54 +02:00
65f4daf305 move config define
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-16 12:35:10 +02:00
8dce434746 fix bsp_hosted
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-16 12:34:05 +02:00
68039d5d4a clean up config code
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-09-16 12:28:39 +02:00
0b43c3137f add new constants for CFDP, clean up
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-09-16 12:22:46 +02:00
6b48fb64d8 start integrating cfdp code
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-16 12:14:27 +02:00
547fcf22dd add very basic test in Q7S Test task for FS helpers
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-16 12:05:50 +02:00
26216eca88 new fs helper module
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-16 11:53:33 +02:00
38f435d1ae update for new FSFW code
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-16 11:43:11 +02:00
dac799bb97 Merge branch 'develop' into mueller/em-sw-updates
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-15 18:21:44 +02:00
3673ae8e62 doc correction
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-15 17:46:41 +02:00
2e03cfa116 small update for .cproject file
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-15 13:44:54 +02:00
9ad649e43e ACS controller running in EM SW withour errors now
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-15 13:40:57 +02:00
8a6a69d230 update EM code
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-15 13:15:39 +02:00
8ebc62cbe6 new ACS preproc defines
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-09-15 13:03:22 +02:00
3313604cb5 move some dummy creation into separate function
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-09-15 12:00:58 +02:00
c616720095 update .cproject file again
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-15 11:58:00 +02:00
3230efa4aa new dummy helper functions 2022-09-15 11:54:43 +02:00
2261ccb304 create ACS controller in EM sw
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-15 11:40:10 +02:00
57331380c3 small fix for ACS task
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-15 11:38:29 +02:00
94a70aa2fc update .cproject file
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-15 11:36:04 +02:00
ea60767825 Merge branch 'irini' into scex-additions
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-14 19:05:23 +02:00
3fc97f9ee9 Merge pull request 'updated to new fsfw' (#299) from mohr/updated_fsfw into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #299
2022-09-14 19:03:41 +02:00
92e06352be Merge branch 'develop' into mohr/updated_fsfw
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
2022-09-14 19:03:26 +02:00
63e4448178 run afmt, bump proj files
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-14 16:47:58 +02:00
4d93368b4c fixed for new fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-14 13:44:43 +02:00
ff3bc7da73 fix for new fsfw
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-09-14 13:18:50 +02:00
f7196a4791 updated to new fsfw
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
2022-09-14 12:55:53 +02:00
fb3214fef9 swap order
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-12 17:25:20 +02:00
4649a75d40 update to new API
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-12 17:23:43 +02:00
002f776bef start RPiSdCardManager
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-09-12 17:15:02 +02:00
7bc866a105 add RPI SD card manager
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-12 17:09:27 +02:00
31b3de784b stuff
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-12 17:00:49 +02:00
da739636f3 Merge branch 'develop' into scex-additions
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-09-12 16:23:08 +02:00
e381b00a13 re-point tmtc
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-02 13:19:55 +02:00
a76816f055 update changelog
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-09-02 13:16:56 +02:00
983f073e54 Merge pull request 'GomSpace commands' (#293) from mueller/new-gomspace-commdsn into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #293
Reviewed-by: Jakob Meier <meierj@irs.uni-stuttgart.de>
2022-09-02 12:40:44 +02:00
923adbdb1a bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-09-01 17:40:21 +02:00
6ae0249fdc load table command
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-01 17:31:43 +02:00
87f430fdee some bugfixes for save table feature
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-01 16:58:51 +02:00
4e92fd4421 some simplifications
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-01 15:23:39 +02:00
aecbbfdc7d Merge pull request 'increase number of allowed consecutive commands' (#294) from mueller/allow-more-service-8-consecutive-cmds into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #294
Reviewed-by: Jakob Meier <meierj@irs.uni-stuttgart.de>
2022-09-01 11:29:54 +02:00
27129f3b66 increase number of allowed consecutive commands
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
EIVE/eive-obsw/pipeline/head This commit looks good
for service 8
2022-09-01 11:18:55 +02:00
3d71cce30b bugfix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-09-01 11:04:24 +02:00
7dde1150e8 gom space commands
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-31 22:52:32 +02:00
d295ca905e Merge remote-tracking branch 'origin/irini' into mueller/test-new-cmd-handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-irini This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-08-31 16:39:16 +02:00
079fa04d69 Merge remote-tracking branch 'origin/develop' into irini
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-08-31 16:37:32 +02:00
da7cedc910 perform finish in command builder
All checks were successful
EIVE/eive-obsw/pipeline/pr-irini This commit looks good
2022-08-31 16:37:15 +02:00
c3fb285f35 Merge remote-tracking branch 'origin/develop' into mueller/test-new-cmd-handling 2022-08-31 16:32:18 +02:00
7c15ecbad2 apply afmt
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-irini This commit looks good
2022-08-31 16:12:32 +02:00
839851914a update SCEX code 2022-08-31 16:07:38 +02:00
74d4741380 ScexDeviceHandler: adjusted comments
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-08-31 11:06:37 +02:00
8c0e261f44 ScexDeviceHandler: fileId includes date and time
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-08-31 10:58:21 +02:00
fd674b3d61 Merge pull request 'DHB TM better handling' (#291) from mueller/dhb-tm-even-better into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #291
Reviewed-by: Jakob Meier <meierj@irs.uni-stuttgart.de>
2022-08-31 07:35:48 +02:00
20df16916a bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-08-31 00:03:00 +02:00
822e8eea4a this is better
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-30 23:54:05 +02:00
9319d58137 Merge branch 'develop' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into develop 2022-08-30 23:49:09 +02:00
2c6127d98b Merge pull request 'Use new DHB TM handler' (#290) from mueller/use-new-dhb-tm-handler into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #290
Reviewed-by: Jakob Meier <meierj@irs.uni-stuttgart.de>
2022-08-30 20:22:38 +02:00
0f91800cf8 works but reply handling is annoying
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-08-30 18:52:50 +02:00
a6582313f7 writing file works now
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-08-30 18:36:00 +02:00
4ce48d01c6 Merge remote-tracking branch 'origin/mueller/use-new-dhb-tm-handler' into irini
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-08-30 16:52:19 +02:00
b156d78274 huh 2022-08-30 16:51:30 +02:00
13e89e1342 bump deps
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-08-30 16:34:24 +02:00
4649ae2edb minor tweaks
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-08-30 16:06:17 +02:00
74b45f30a0 move to new DHB TM handler
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-08-30 15:53:20 +02:00
86337d8f47 retval replacements
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-29 16:05:05 +02:00
86d3732f65 retval replacements
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-29 15:57:26 +02:00
aa86bc722f retval corrections
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-29 15:56:18 +02:00
3ad7a35f0e Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-08-29 15:53:57 +02:00
975f202ddb Merge remote-tracking branch 'origin/develop' into mueller/pl-ss
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-08-29 15:50:55 +02:00
aa0da618ca Merge remote-tracking branch 'origin/develop' into irini
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-08-29 15:49:23 +02:00
04fb2b1261 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-08-29 15:44:40 +02:00
a70bfd319c Merge remote-tracking branch 'origin/main' into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-08-29 13:40:16 +02:00
3a80c4cb0c additional nullptr check
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-08-29 13:32:49 +02:00
f308718256 safety check
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-08-29 13:26:13 +02:00
f8ee516d46 bump dependencies
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-08-29 13:21:00 +02:00
34ede28fda Merge pull request 'Update Power Modules' (#287) from mueller/update-p60-module-code into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #287
Reviewed-by: Jakob Meier <meierj@irs.uni-stuttgart.de>
2022-08-29 08:27:35 +02:00
108b7620b8 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-08-27 17:18:00 +02:00
c8c103e5e6 update changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-27 16:04:55 +02:00
3b2794735b disable test
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-27 15:54:52 +02:00
7de26586fb need to link gs sw for hosted now
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-08-27 15:51:45 +02:00
e8208a21a4 config table retrieval works
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
2022-08-27 01:02:08 +02:00
8c110460a6 added test to retrieve pdu config
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-08-26 14:28:06 +02:00
e804d433aa merge conflict
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-08-26 13:46:18 +02:00
0f553e3431 Merge remote-tracking branch 'origin/develop' into mueller/update-p60-module-code
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-08-26 13:45:53 +02:00
a7482b657a changed all table parsing to use gom space API
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-08-26 13:42:58 +02:00
efb0bce718 finally it works
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-08-26 03:20:44 +02:00
d098ed6403 gomspace lib working 2022-08-26 00:39:06 +02:00
774e060def Merge branch 'develop' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into develop 2022-08-25 23:24:08 +02:00
7a1dbf8456 add gom space client code
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-08-25 23:22:17 +02:00
ad783018bd add some more compile options
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-08-25 20:59:35 +02:00
f264b9781b bump gomspace-sw submodule
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-08-25 20:58:07 +02:00
65ec5c35e3 another try 2022-08-25 20:57:04 +02:00
63b8aec894 damn it 2022-08-25 20:55:56 +02:00
7841a5c8c0 more complicated than expected
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-08-25 18:48:07 +02:00
c0a78e6fef start extending p60 module code
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-08-25 18:19:33 +02:00
440fb4d488 Merge pull request 'all returnvalue replacements' (#286) from mueller/update-retval-if into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #286
Reviewed-by: Jakob Meier <meierj@irs.uni-stuttgart.de>
2022-08-25 14:50:07 +02:00
8aa65ebbd6 bump tmtc 2022-08-25 09:55:42 +02:00
86b4747249 apid mask
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-08-24 19:54:16 +02:00
691505ffa9 update changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-08-24 17:35:06 +02:00
447c4d5c88 all retval replacements
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-08-24 17:27:47 +02:00
084ff3c5ca Merge pull request 'ACS IMTQ Update' (#284) from mueller/acs-imtq-update into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #284
2022-08-24 16:56:51 +02:00
5bfe72e430 Merge remote-tracking branch 'origin/develop' into petri_dev
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-08-24 16:55:37 +02:00
bddaf120f4 Merge remote-tracking branch 'origin/develop' into irini
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-24 16:54:39 +02:00
2be35768cc Merge pull request 'TMTC Refactoring' (#276) from mueller/tmtc-stack-refactoring into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #276
2022-08-24 16:52:09 +02:00
790a71974e Merge branch 'mueller/tmtc-stack-refactoring' into mueller/acs-imtq-update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-24 16:51:42 +02:00
28d00b78a3 Merge remote-tracking branch 'origin/develop' into mueller/tmtc-stack-refactoring
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-24 16:48:13 +02:00
0d0f32b751 re-run generators
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-24 16:46:13 +02:00
4d39a1dcc6 Merge branch 'develop'
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-08-24 16:39:31 +02:00
049832d6cc update changelog and cmakelists.txt
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-08-24 16:38:38 +02:00
9873b17ceb Merge pull request 'v1.13.0' (#285) from develop into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #285
2022-08-24 16:36:49 +02:00
e653dbe8ca Merge branch 'main' into develop
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-08-24 16:30:38 +02:00
e7cbcee873 re-run auto-formatter
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-08-24 16:29:24 +02:00
84cc961340 re-run generators
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2022-08-24 16:29:04 +02:00
85172616f8 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-24 16:25:09 +02:00
920545b709 comment typo fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-24 15:24:57 +02:00
6d53a38f9f small update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-24 15:16:46 +02:00
3c23ede9dd Merge branch 'mueller/tmtc-stack-refactoring' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into mueller/tmtc-stack-refactoring
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-24 15:00:13 +02:00
86bfa85e00 bump tmtc 2022-08-24 14:59:52 +02:00
ef92673e4e bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-24 12:07:55 +02:00
b4b9774fde Merge branch 'mueller/tmtc-stack-refactoring' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into mueller/tmtc-stack-refactoring
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-24 12:02:24 +02:00
e561805f3a update ploc supv helper 2022-08-24 12:02:16 +02:00
4cfbd5c88c Merge branch 'develop' into mueller/tmtc-stack-refactoring
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-23 18:26:44 +02:00
1aeebcc0ee important bugfix for update conitnuation
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-23 18:26:14 +02:00
d7bc35ea45 crc check fails on mem 0
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-22 22:25:22 +02:00
e09eaae42f update events
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-22 22:18:14 +02:00
208856ef52 bump tmtc again
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-22 21:44:18 +02:00
84268c6dd6 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-22 17:35:32 +02:00
42e3d92fb9 set hk set valid as well
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-22 17:10:19 +02:00
64b2ceea0a set boot status report set valid
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-22 17:09:39 +02:00
519c7840cc bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-22 15:09:05 +02:00
51463700d5 smaller bugfixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-22 13:52:39 +02:00
663b65f159 memory check always based on file now
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-22 13:50:24 +02:00
b3bb029c47 something wrong with mem check
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-22 12:41:08 +02:00
e71e2e7879 new command to only perform mem check
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-22 12:08:39 +02:00
f98411f421 speed up crc proc significantly 2022-08-22 10:35:23 +02:00
1f3365960d re-run generators
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-21 08:38:21 +02:00
b503836a3d hopefully last bugfix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-21 01:38:45 +02:00
47ebf3d8cc allow starting update in the middle
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-20 22:52:48 +02:00
c094b45fb4 percent progress event
And some changes to allow restarting from the middle
2022-08-20 20:26:25 +02:00
f2190f8aa1 resolve merge conflict
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-20 12:24:24 +02:00
5aa0b3530a bugfixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-20 12:18:12 +02:00
8ea6df273d moved a size check
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-20 12:16:11 +02:00
f9061d5494 fix 2022-08-20 12:14:49 +02:00
c8d38cf852 bugfixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-20 12:11:08 +02:00
c85035c62e bugfixes in tc packaging classes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-20 10:27:43 +02:00
ad3bdbcf96 mode check for commands executed by supervisor helper 2022-08-20 10:26:19 +02:00
83382de330 Merge branch 'mueller/acs-imtq-update' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into mueller/acs-imtq-update 2022-08-20 01:50:24 +02:00
2e2afcd6c5 moved a size check 2022-08-20 01:45:49 +02:00
9eb2107958 fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-19 21:41:24 +02:00
70d9f00372 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-19 16:53:25 +02:00
0ea993e16b some bugfixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-19 15:49:22 +02:00
4aad06469d tmtc bugfix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-19 12:43:35 +02:00
d318ff9781 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-19 12:38:37 +02:00
fd17e299fb Merge branch 'mueller/tmtc-stack-refactoring' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into mueller/tmtc-stack-refactoring 2022-08-19 12:35:49 +02:00
726e448af9 fixes for IMTQ mgm reading
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-18 18:18:44 +02:00
3d0d10dc32 try IMTQ change
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-18 17:27:39 +02:00
48ef6e6a5c bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-18 15:52:59 +02:00
ba56c72d91 simpler way to check crc16 2022-08-18 15:34:26 +02:00
ec47d7eeef important bugfix for CRC calculation
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-18 15:32:24 +02:00
732602a4cc supv ack failure
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-18 15:11:32 +02:00
d9321a83cf retval translation still fails
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-18 11:25:39 +02:00
5de9a812bb use default cross-user path for x-compiler installation
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-08-17 14:44:27 +02:00
2d795c6dd0 add sun sensor set
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-17 09:27:19 +02:00
7455514797 it compiles now
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-08-17 09:05:58 +02:00
a134f3f100 Merge remote-tracking branch 'origin/develop' into irini
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-16 18:52:16 +02:00
b81218e2d4 Merge branch 'mueller/tmtc-stack-refactoring' into petri_dev
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-08-16 18:48:10 +02:00
8ecf04f005 Merge remote-tracking branch 'origin/develop' into petri_dev 2022-08-16 18:48:06 +02:00
79f5077a25 some issues 2022-08-16 18:46:10 +02:00
0c9018c0c9 specify where some info is coming from
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-16 18:41:50 +02:00
e649d45e3e better size checks
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-16 18:37:51 +02:00
5c32114bdb this check is sufficient
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-16 18:13:54 +02:00
800cabb8a1 small bugfix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-16 18:02:32 +02:00
91600bcce9 remove redundant call
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-16 17:51:36 +02:00
6ead94b5f4 this is even better
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-16 17:49:50 +02:00
21903c4443 that works as well.
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-16 17:43:53 +02:00
595d098653 use new API
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-16 17:43:05 +02:00
a669137d5c Merge remote-tracking branch 'origin/develop' into mueller/tmtc-stack-refactoring
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-08-16 17:39:35 +02:00
d8fa3881f6 Merge pull request 'ACS Controller Init' (#275) from mueller/acs-ctrl into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #275
Reviewed-by: Jakob Meier <meierj@irs.uni-stuttgart.de>
2022-08-16 17:34:21 +02:00
17279a6fd0 host compiles
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-16 17:09:46 +02:00
3c03471197 update changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-08-16 16:45:14 +02:00
ffed82575c bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-16 16:43:30 +02:00
30e7636bc9 add periodic HK subscription 2022-08-16 16:37:54 +02:00
80347a0e23 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-16 12:57:43 +02:00
676b94b139 map dataset to sid
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-16 11:56:17 +02:00
ce08695137 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-16 11:44:59 +02:00
b8b6a14e3b some bugfixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-16 11:27:16 +02:00
eb54a384b4 bump fsfw
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-08-15 19:19:23 +02:00
67ab3f981b missing packet checks
Some checks failed
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-08-15 19:03:08 +02:00
e1c06ce1f5 possible bugfix
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-08-15 18:58:56 +02:00
232372fd96 more defensive buffer handling
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-08-15 18:53:25 +02:00
458929957d generic TM checker
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-08-15 18:43:28 +02:00
7e3517d309 it compiles again 2022-08-15 18:34:26 +02:00
0c371623c6 change PLOC/MPSOC code to using new SP code
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-08-15 17:25:16 +02:00
f071b7eba4 thats a lot of rewriting..
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-08-15 13:03:23 +02:00
859ced185d start refactoring of PLOC SUPV packet defs
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-08-15 12:23:54 +02:00
4a28f79e3a updates for new API 2022-08-15 11:57:57 +02:00
751ae6062e finished MGM data copying function
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-15 11:19:08 +02:00
6821a95095 continued ACS controller impl
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-15 10:50:19 +02:00
c99cb4a81e schedule ACS controller
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-15 09:58:18 +02:00
6003c6afb5 Merge remote-tracking branch 'origin/develop' into mueller/acs-ctrl
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-12 13:13:57 +02:00
ed6c90b106 retain old order
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-08-12 13:12:58 +02:00
2eac346e41 re-add arcsec submodule
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-08-12 13:11:34 +02:00
e6da1824df something went wrong here 2022-08-12 13:11:15 +02:00
c0157ca506 remove etl submodule
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-08-12 13:09:58 +02:00
01be3ffc9d Merge branch 'develop' into petri_dev
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-08-12 13:08:09 +02:00
19f75b598a Merge remote-tracking branch 'origin/develop' into irini
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-12 13:06:35 +02:00
12f38aa58c Merge pull request 'Bump dependencies' (#274) from mueller/bump-deps into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #274
2022-08-12 12:59:14 +02:00
eb623e7d7c this should fix the CI/CD error
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-12 12:55:43 +02:00
f8f51c8fd6 include fix
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-08-12 12:35:56 +02:00
44c12a141c Merge branch 'develop' into petri_dev
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-08-12 12:34:33 +02:00
05a10485d9 Merge remote-tracking branch 'origin/develop' into irini
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-12 12:34:10 +02:00
a8b1fe2e8d re-run generator scripts
Some checks failed
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-08-12 12:31:13 +02:00
961e012972 bump fsfw and tmtc dependency 2022-08-12 12:30:08 +02:00
77cfc6e714 ACS controller init
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-08-12 12:29:28 +02:00
6551cbe1b4 using correct retval translation files now
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-08-09 10:38:47 +02:00
80b1c69244 re-point tmtc
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-08-08 17:12:22 +02:00
4649c97205 Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-08 17:12:12 +02:00
22181ec76d Merge remote-tracking branch 'origin/develop' into petri_dev
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-08-08 17:11:36 +02:00
bd40af34c8 Merge branch 'develop' into irini
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-08 17:10:57 +02:00
89b3b2ff42 Merge remote-tracking branch 'origin/develop' into mueller/pl-ss
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-08-08 17:08:56 +02:00
1280b77e95 re-run generators
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-08-08 17:07:55 +02:00
b12cac1e80 install obsw into variant specfiic folders now
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-08-04 12:08:55 +02:00
722d7a67f5 important bugfix for FM SW
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-08-04 01:45:49 +02:00
89c9911be6 fix install script
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-08-02 20:12:25 +02:00
9911f58424 Merge pull request 'update-develop' (#273) from update-develop into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #273
Reviewed-by: Jakob Meier <meierj@irs.uni-stuttgart.de>
2022-07-15 08:55:46 +02:00
3ca11b5894 run auto-formatter
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-07-14 17:35:49 +02:00
2c3c05e2d4 Merge remote-tracking branch 'origin/develop' into petri_dev 2022-07-14 17:31:08 +02:00
5b3927d988 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-07-14 17:27:41 +02:00
035eda9cfd update develop 2022-07-14 15:46:22 +02:00
201ef9cb0c smaller bugfixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-07-13 15:51:21 +02:00
8a23615462 added printout in scex uart reader 2022-07-13 12:02:32 +02:00
8b39f65472 modify oss to append at end 2022-07-13 11:25:53 +02:00
d1bfc512ec update .cproject file 2022-07-13 10:32:41 +02:00
b4bb46726c Changed filesystem include to new version 2022-07-13 09:38:42 +02:00
3bad503694 Fixed submodules file 2022-07-13 09:34:27 +02:00
84c4f47ed1 Removed obsolete stuff 2022-07-13 09:26:22 +02:00
303f538076 countdown based reply handling
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-07-08 17:11:21 +02:00
fc639a3e3f move countdown reset
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-07-08 16:57:40 +02:00
57f97de58e rerun generator scripts
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-07-08 16:46:27 +02:00
a462677ed2 smaller fixes, always download ETL
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-07-08 16:39:07 +02:00
563e13765d Merge remote-tracking branch 'origin/develop' into irini
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-07-08 16:27:50 +02:00
5e4d07bd25 Code refactoring and bug fixes for config file handler. Added new test cases for config file handler
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-07-05 14:56:31 +02:00
d9060734b0 Removed insert function in config handler, not needed. Added more tests for config handler
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-07-05 12:57:50 +02:00
c6f60fbe82 Merge pull request 'v1.12.1' (#270) from develop into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #270
Reviewed-by: Jakob Meier <meierj@irs.uni-stuttgart.de>
2022-07-05 11:39:58 +02:00
269c93a9f3 Merge branch 'main' into develop
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-07-05 11:24:52 +02:00
2e966aba77 repoint tmtc
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-07-05 11:19:42 +02:00
c4b8fa5444 Merged from development, added unit test for config file handler, removed obsolete stuff from handler
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-07-05 10:02:43 +02:00
76a217ffc2 bump changelog and version
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-07-05 02:14:32 +02:00
be7a9af8cd disable TCS ctrl spam 2022-07-05 02:13:07 +02:00
75e71f7dca Merge pull request 'v1.12.0' (#269) from develop into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #269
2022-07-04 11:19:04 +02:00
62f725beea bump changelog and version
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-07-04 11:13:26 +02:00
812c814a30 bump tmtc
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2022-07-04 11:08:05 +02:00
b133a0538c Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-07-04 10:47:23 +02:00
9e89a0689f Merge remote-tracking branch 'origin/develop' into mueller/pl-ss
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-07-04 10:46:47 +02:00
5a92b9e616 tmtc
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-06-30 21:53:02 +02:00
e092d9bf3d Merge pull request 'CCSDS Handler Improvements' (#268) from meier/ccsds into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #268
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2022-06-29 13:53:29 +02:00
bf8ffac624 removed unused event
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-06-27 15:03:37 +02:00
d78155fd79 remove ccsds components from em object factory
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-06-27 14:56:46 +02:00
3a93cdc105 add thermal controller for hosted build
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-06-27 13:53:38 +02:00
a2e7c6cca6 moved ccsds object creation back to core object factory and run auto formatter
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-06-27 10:58:46 +02:00
b5ff0edbc9 fixed merge conflict
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-06-27 09:31:39 +02:00
95da2372c9 run generators
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-06-27 09:15:29 +02:00
70450041e6 removed command action helper form ccsds handler
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-06-27 08:53:14 +02:00
ed0eb4fe9c adaptions for setup with ccsds testbed
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-06-23 20:12:56 +02:00
af039c540a moved TmFunnel 2022-06-23 12:05:56 +02:00
20328f89ae ping cmd working
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-06-21 17:46:59 +02:00
2584e51bb4 tmtc update
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-06-21 16:49:26 +02:00
005e548059 comntinued scex handler 2022-06-21 16:44:14 +02:00
d2a12ea71e Merge pull request 'fsfwgen update' (#267) from mueller/gen-update into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #267
2022-06-21 10:40:15 +02:00
53e556d0b3 improve csv format
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-06-21 01:21:23 +02:00
72ab141b41 use lib logger
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-06-21 01:02:00 +02:00
c6b00e2448 update deps and gen files
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-06-21 00:58:59 +02:00
d4a1cb9f62 fsfwgen update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-06-20 18:05:05 +02:00
83c93a9637 Merge pull request 'Thermal controller and temperature bugfixes' (#266) from meier/thermal-bugfixes into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #266
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2022-06-20 09:43:03 +02:00
89757c447c run auto-formatter
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-06-17 08:31:36 +02:00
61aa57f021 Merge branch 'develop' into meier/thermal-bugfixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-06-16 09:00:56 +02:00
0ee912665e removed mock files from mission directory
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-06-16 08:47:56 +02:00
b53bfb9a6f dummy devices
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-06-16 08:26:40 +02:00
bd11d13b99 dummy devices for hosted build, adaptions to run thermal controller unit test 2022-06-16 07:00:09 +02:00
1133736d48 Merge pull request 'Fixed tmtc and fsfw submodule' (#265) from meier/submodules into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #265
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2022-06-15 11:02:48 +02:00
9918c7c255 tmtc update
Some checks are pending
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop Build started...
2022-06-15 10:49:46 +02:00
b0a175610a fsfw update 2022-06-15 10:49:22 +02:00
d96d3b155b syrlinks carrier wave command
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-06-15 10:37:00 +02:00
eff80a58ee improvements for hosted build
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-06-13 08:58:06 +02:00
5f796ec1e3 init poll variable
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-06-10 14:22:35 +02:00
3825304088 rtd set id
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-06-10 14:13:59 +02:00
66d6b6d707 changed max13865 namespace
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-06-10 14:01:34 +02:00
a787de531b changed namespace
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-06-10 13:56:35 +02:00
772ab430e0 only include core definitions in thermal controller
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-06-10 12:18:23 +02:00
35ea8a50f4 update tmtc submodule
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-06-10 11:26:00 +02:00
63c669bc27 fixed type of imtq self test temperatures
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-06-10 11:06:05 +02:00
17d17dce06 bugfix for some negative temperature conversions
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-06-10 10:39:43 +02:00
61257dfdd2 Minor refactoring config file handler
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-06-08 12:53:41 +02:00
8b6992df6d Added parameter interface to config file handler
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-06-08 11:08:19 +02:00
7cd048b03f Added events for failure of config file handler functions 2022-06-08 09:18:17 +02:00
0fb620b290 Implemented set/get/insert functions for config file handler 2022-06-08 08:27:45 +02:00
1ebae7f938 fixes for te0720 build 2022-06-08 07:16:12 +02:00
74b38a6d06 Worked on config file handler, added all functions
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-06-07 09:54:52 +02:00
8c850614e5 fixed merge conflicts 2022-06-05 10:54:46 +02:00
b8cf825307 rerun generators 2022-06-05 09:13:08 +02:00
f2d5932883 fixes in build config 2022-06-05 09:12:56 +02:00
917090e39d Merge branch 'meier/thermal-controller-fix' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into meier/thermal-controller-fix 2022-06-04 09:42:59 +02:00
67037e2dae use memset to set invalid temperatures of cau 2022-06-04 09:31:34 +02:00
f72dfa255d submodule update
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-06-03 18:05:54 +02:00
b3bb76c75f bugfixes in hk handling
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-06-03 18:03:25 +02:00
6c32ddf864 changed gomspace temperatures to float
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-06-03 09:33:08 +02:00
b1c20b22c8 set temeprature to invalid value when invalid flag is set by owner 2022-06-03 07:51:04 +02:00
678b22438f tmtc update
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-06-02 18:52:09 +02:00
f47712552e hk set fixes 2022-06-02 18:46:08 +02:00
cbb8832fab tmtc update
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-06-01 18:47:52 +02:00
b66dcc0a86 local port forward script 2022-06-01 18:46:53 +02:00
04b7c82501 type fixes in device temperatures sets
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-06-01 18:46:22 +02:00
5051af82c2 tmtc update
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-06-01 15:52:51 +02:00
ba7ac6bab2 variable for number of sus entries 2022-06-01 13:08:34 +02:00
52d94f44d4 device temeprature set
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-06-01 10:48:18 +02:00
87783b01f5 device temperature set wip
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-05-31 16:46:07 +02:00
593cc68b84 rtd dataset
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-05-31 16:44:57 +02:00
521b17a8f8 initmission
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-30 20:52:45 +02:00
0e6d2354fc thermal set fix
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-05-30 14:32:50 +02:00
23cabe4ca6 Merge branch 'develop' into mohr/thermal_controller
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-05-30 12:10:19 +02:00
f5ee21334c formatted
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-29 17:54:17 +02:00
24cb555849 update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-29 17:52:13 +02:00
3d1e104fa4 Merge pull request 'Adaptions for EM' (#264) from meier/q7s-em into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #264
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2022-05-28 12:21:49 +02:00
8106722a08 replaced EM preprocessor define
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-27 16:24:41 +02:00
4632a56346 Merge branch 'develop' into mueller/acs-ss-init
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-27 15:28:41 +02:00
10a82eca25 Merge branch 'develop' into mueller/pl-ss
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-27 15:28:23 +02:00
9e93f1c814 adaptions for EM
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-27 13:44:40 +02:00
1f1e1e8eae Merge pull request 'Bugfix SdCardManager' (#263) from meier/SdCardManager into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #263
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2022-05-26 12:15:32 +02:00
6f9d3c2f63 Merge branch 'develop' into meier/SdCardManager
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2022-05-26 12:15:14 +02:00
25070d9543 Merge pull request 'MPSoC Status Codes' (#262) from meier/ploc into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #262
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2022-05-26 12:14:19 +02:00
bbdfc0427a Merge branch 'develop' into meier/ploc
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/-/pipeline/head Build queued...
2022-05-26 12:14:01 +02:00
1f616a101d add scex preproc define to OBSWConfig.h.in
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-05-26 12:10:56 +02:00
b306116eac remove duplicate declarations
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-26 12:09:36 +02:00
5c91697cf1 removed accidental typed stuff 2022-05-26 12:09:01 +02:00
9f42ac9875 Merge branch 'mueller/scex-additions' into irini
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-05-26 12:08:18 +02:00
a1faa3a73c Merge remote-tracking branch 'origin/develop' into irini
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-05-26 12:08:07 +02:00
1276cc2dc6 scex additions
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-05-26 12:04:27 +02:00
97db44e500 fix raspberry pi build
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-26 11:46:28 +02:00
c588ec4a1a bugfix SdCardManager
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-26 01:56:19 +02:00
09a6707c6c run generator scripts
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-25 18:42:40 +02:00
ee9a13f59b Merge branch 'develop' into meier/ploc 2022-05-25 18:40:39 +02:00
e9ccb2fd4f status code parsing, fix in cam command 2022-05-25 18:38:54 +02:00
e5459bb1f7 re-run generators
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-25 18:15:44 +02:00
5b0f1efefd Merge remote-tracking branch 'origin/develop' into mueller/pl-ss
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-25 15:48:00 +02:00
95121b5120 Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-25 15:47:21 +02:00
335d3ba3b0 bump submodules
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-25 15:45:11 +02:00
f50682b56a Merge pull request 'Split ACU HK' (#256) from mueller/split-acu-hk into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #256
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-05-25 15:23:19 +02:00
ad679a810e Merge pull request 'add and schedule PUS11' (#259) from mueller/add-schedule-pus-11 into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #259
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-05-25 15:21:25 +02:00
686ec4bffa Merge pull request 'GPS Reset Pin Handling Update' (#261) from mueller/gps-reset-pin-update into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #261
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-05-25 15:20:12 +02:00
ae434853aa bump number stored packets
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-25 13:14:36 +02:00
bb1e1d80cc resolve merge conflict
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-25 11:00:18 +02:00
01bac87afb update reset pin handling
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2022-05-25 10:59:20 +02:00
44d36587aa precised printouts
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-25 10:51:22 +02:00
5d2a70b6c6 Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-25 10:28:06 +02:00
96564f890e Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init 2022-05-25 10:28:00 +02:00
ffdd6bbc3c Merge branch 'develop' into mueller/add-schedule-pus-11
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-25 10:27:36 +02:00
d870f5ab10 Merge pull request 'Core Controller Remount SD Handling' (#253) from mueller/core-controller-remount-sd-handling into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #253
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-05-25 10:27:10 +02:00
c86e000f09 Update PL SS
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-25 10:25:40 +02:00
f7d436dc6b Merge remote-tracking branch 'origin/develop' into mueller/pl-ss 2022-05-25 10:23:22 +02:00
0b3fd65c9a Merge remote-tracking branch 'origin/develop' into mueller/add-schedule-pus-11
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-25 10:16:31 +02:00
0ac38e8490 Merge remote-tracking branch 'origin/develop' into mueller/split-acu-hk
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-25 10:16:14 +02:00
d79177e544 Merge remote-tracking branch 'origin/develop' into mueller/core-controller-remount-sd-handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-25 10:15:48 +02:00
addcb2b21f Merge pull request 'IMTQ improvements' (#260) from meier/imtq into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #260
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2022-05-25 10:15:13 +02:00
e537080166 Merge branch 'mueller/acs-ss-init' into mueller/pl-ss
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-05-25 10:14:09 +02:00
83c7ec8067 solve merge conflicts
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-25 10:12:37 +02:00
581423a40e Merge branch 'mueller/acs-ss-init' into mueller/pl-ss
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-05-25 10:09:24 +02:00
e1ed532f91 Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-05-25 10:01:53 +02:00
7646b683b2 Merge remote-tracking branch 'origin/develop' into mueller/split-acu-hk
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-25 09:59:14 +02:00
3eca96fef5 Merge remote-tracking branch 'origin/develop' into mueller/core-controller-remount-sd-handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-25 09:58:06 +02:00
43fc1ab780 Merge remote-tracking branch 'origin/develop' into mueller/add-schedule-pus-11
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-25 09:57:34 +02:00
2bf044422f Merge remote-tracking branch 'origin/develop' into meier/imtq
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-25 09:56:41 +02:00
7f180ebc45 Merge pull request 'Reboot Command' (#242) from mueller/reboot-cmd into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #242
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-05-24 19:11:07 +02:00
1ccd12e2e1 enable hk in imtq
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-24 19:08:00 +02:00
2f4d44433d scexDeviceHandler::interpretDeviceReply
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-24 18:38:34 +02:00
b878508fec Thermal COntroller collecting Sus Temperatures
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-05-24 16:52:21 +02:00
88faf8f87d bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-24 16:23:00 +02:00
c0da8aef2e delete obsolete folder
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-24 15:50:39 +02:00
59d0d880bb bump fsfw
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-05-24 15:45:12 +02:00
3eb8525419 update changelog
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-05-24 15:22:45 +02:00
3fff3ba21e add and schedule PUS11
Some checks failed
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-05-24 15:21:37 +02:00
3e9b337e31 changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-24 01:14:47 +02:00
633fe00cd6 run afmt, minor improvements
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-24 01:14:04 +02:00
23d7b8f2fb repoint tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-24 00:55:17 +02:00
d088d728b1 Merge branch 'mueller/reboot-cmd' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into mueller/reboot-cmd 2022-05-24 00:54:55 +02:00
237dd00216 Merge branch 'develop' into mueller/reboot-cmd
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-24 00:54:49 +02:00
f7075a1397 Merge remote-tracking branch 'origin/develop' into mueller/reboot-cmd 2022-05-24 00:54:39 +02:00
2ebdb5c797 tweak sd card check countdown
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-24 00:53:29 +02:00
1519b13b78 appears to work now
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-24 00:52:08 +02:00
b2c286cd7e improve and optimize SD card handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-24 00:20:23 +02:00
a1d2ec3db4 Merge remote-tracking branch 'origin/develop' into mueller/split-acu-hk
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-23 22:24:28 +02:00
b66a91da2e Merge branch 'develop' into mueller/core-controller-remount-sd-handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-23 21:32:27 +02:00
72305cc4c2 Merge pull request 'rtd bugfixes' (#258) from mueller/rtd-bugfixes into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #258
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-05-23 19:36:13 +02:00
f111001572 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-23 18:59:31 +02:00
5df905182c these brackets are less confusing
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-23 18:40:17 +02:00
2f155d8350 bump changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-23 18:39:13 +02:00
e9908139e7 Merge branch 'develop' into mueller/core-controller-remount-sd-handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-23 18:37:50 +02:00
43269d4add Merge branch 'develop' into mueller/rtd-bugfixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-23 18:37:40 +02:00
40b02aa46b Merge remote-tracking branch 'origin/develop' into mueller/split-acu-hk
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-23 18:37:28 +02:00
7d9ef6f887 run afmt
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-23 18:37:04 +02:00
a2fad6061a repoint tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-23 18:36:38 +02:00
62ef9c7e70 set datapool entries of rad sensor valid
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-23 18:25:39 +02:00
1f62d8284c Merge remote-tracking branch 'origin/develop' into mueller/split-acu-hk
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-23 18:01:37 +02:00
a4de3e9eb1 Merge remote-tracking branch 'origin/develop' into mueller/rtd-bugfixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-23 18:00:45 +02:00
cc008623b6 Merge pull request 'PLOC handler improvements' (#257) from meier/ploc into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #257
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2022-05-23 17:53:55 +02:00
10e075efaf update changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-23 17:52:44 +02:00
8aa664b49f rtd bugfixes
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-23 17:50:54 +02:00
f18507d278 boot image select memory default argument
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-23 17:05:06 +02:00
e365b36ecd tmtc update 2022-05-23 17:04:03 +02:00
990759fbc6 commented in core controller file write
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-23 16:54:18 +02:00
d808a12c31 fixed conflicts
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-23 16:53:20 +02:00
379c5f06ba supervisor command to continue interrupted mpsoc update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-23 16:43:46 +02:00
a2eabdce01 Merge pull request 'RTD Update' (#251) from mueller/rtds-update into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #251
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-05-23 16:20:37 +02:00
01ca80fa30 bump submodules
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-23 16:12:03 +02:00
660f0d2dcd some minor fixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-23 14:19:57 +02:00
e522aadd44 set HKs valid
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-23 14:04:46 +02:00
8ae6fe0be5 moved HK defs
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-23 12:39:10 +02:00
fb5c6c4c17 continuation of failed mpsoc update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-23 12:05:42 +02:00
4e62f3b112 bugfixes for cp script
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-23 11:35:55 +02:00
99e27a5a63 run afmt
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-23 11:25:58 +02:00
3bdad61ac0 split ACU HK set
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-23 10:42:57 +02:00
d960c371b9 bump submodules
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-23 09:37:16 +02:00
c024756540 WIP extending thermal controller
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-05-23 00:37:49 +02:00
dc6fa57c03 Merge branch 'develop' into mueller/core-controller-remount-sd-handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-20 08:20:13 +02:00
49a06772d2 Merge remote-tracking branch 'origin/develop' into mueller/rtds-update
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-05-20 08:18:57 +02:00
0119f3f8a6 Merge remote-tracking branch 'origin/develop' into mohr/thermal_controller
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-05-19 23:15:39 +02:00
93cb07238a fixing task initialization (produced warnings) 2022-05-19 23:13:29 +02:00
2f8f5ce79b thermal controller is reading pt1000 values from datapool 2022-05-19 23:08:54 +02:00
4a0aa6443b dummy faking the PT1000 Temperature Sensors for host build 2022-05-19 23:06:56 +02:00
e9725e3093 gcc 12 complained... 2022-05-19 23:06:18 +02:00
79d3755c16 Merge pull request 'fixed for new SPI HAL API' (#255) from mueller/fixes-for-spi-update into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #255
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-05-19 19:09:54 +02:00
a63e87f5f4 subscribe for periodic core ctrl packet
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-19 18:46:49 +02:00
eb20dda221 small fix for yocto script
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-19 17:52:46 +02:00
ef14fa3789 Merge remote-tracking branch 'origin/mueller/fixes-for-spi-update' into mohr/thermal_controller 2022-05-19 16:29:30 +02:00
e73bfc2c64 dev string for FM/EM
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-19 16:00:26 +02:00
Uli
710bd58ee1 Merge branch 'develop' into mohr/thermal_controller 2022-05-19 15:31:13 +02:00
d274f5647d fix EM cofig
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-19 15:28:02 +02:00
377f762ca5 fixed for new SPI HAL API
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-19 14:54:44 +02:00
847aadc7bf update shell script helper to support EM installation
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-19 14:48:16 +02:00
e8882b11cf ScexDeviceHandler
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-19 11:56:59 +02:00
b4e1451501 ScexDeviceHandler DeviceReply
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-05-19 10:16:46 +02:00
7179d9dec3 deSerialize
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-05-19 09:59:33 +02:00
90a92feee1 some thermal controller code to test TM chain
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-05-19 00:40:42 +02:00
e49a1af9b7 bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-18 14:51:33 +02:00
cf49d98524 bump fsfw
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-05-17 18:15:21 +02:00
28a4f782f9 Merge remote-tracking branch 'origin/develop' into mueller/rtds-update
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-05-17 17:55:25 +02:00
8eaae461b4 Merge pull request 'apply new auto-formatter on all files' (#254) from mueller/update-aformatters into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #254
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-05-17 14:53:20 +02:00
140bbcb7b8 Merge remote-tracking branch 'origin/develop' into mueller/rtds-update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-17 13:43:21 +02:00
d4dd75acae Merge remote-tracking branch 'origin/develop' into mueller/core-controller-remount-sd-handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-17 13:42:08 +02:00
8a5090b8ee apply new auto-formatter on all files
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-17 13:40:19 +02:00
e2cfce634b GenericFactory bugfix
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-17 13:35:21 +02:00
8b875e13c5 repoint fsfw
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-16 15:46:20 +02:00
7080758c67 Merge remote-tracking branch 'origin/develop' into mueller/core-controller-remount-sd-handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-16 15:18:55 +02:00
3713617ea5 Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-16 15:18:13 +02:00
a26b1bb311 Merge remote-tracking branch 'origin/develop' into mueller/rtds-update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-16 15:17:29 +02:00
5f165f666b Merge pull request 'PLOC Handler Improvements' (#252) from meier/ploc into develop
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
Reviewed-on: #252
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2022-05-16 15:12:28 +02:00
2fa1061c65 Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-16 15:11:24 +02:00
a6abeb697f comment
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-16 15:09:02 +02:00
a92024a858 now supports auto mode as well
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-14 17:32:33 +02:00
036024db7e perm loop not necessary anymore
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-14 17:22:57 +02:00
e040f6b218 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-14 17:12:29 +02:00
f20fcd9a72 Merge remote-tracking branch 'origin/develop' into mueller/rtds-update 2022-05-14 17:07:27 +02:00
017cfb9d56 a lot of fixes, but some stuff doesnt work..
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-14 17:04:51 +02:00
2cfd2cc1fc switch to new dev handlers completely
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-14 15:26:08 +02:00
478975db26 spi setup more stable now
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-14 11:34:25 +02:00
1c9f411e75 new RTD handler working
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-14 09:41:28 +02:00
d60e7a706a fixed conflicts
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-13 18:44:52 +02:00
45f34df6b9 Merge branch 'develop' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into develop 2022-05-13 18:38:26 +02:00
4cbe732087 Merge pull request 'Heater Health IF' (#236) from mueller/heater-health-if into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #236
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-05-13 18:38:12 +02:00
54d7392467 improved mpsoc update handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-13 18:37:16 +02:00
8715683d6b enable periodic reply for eie RTD
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-13 17:25:06 +02:00
2c684643b3 some smaller fixed for new rtd handler
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-13 16:29:57 +02:00
b12a634b81 typo
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-13 15:16:48 +02:00
3ae1812c32 some renaming
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-13 15:16:10 +02:00
80eeebfaf5 Merge remote-tracking branch 'origin/develop' into mueller/core-controller-remount-sd-handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-13 11:21:06 +02:00
e6ec6bcfa4 Merge remote-tracking branch 'origin/develop' into mueller/reboot-cmd
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-13 11:15:09 +02:00
bb397a58de event with packet number for which mpsoc update failed
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-13 10:47:10 +02:00
44e7f06c2e shorter debug string
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-13 10:33:35 +02:00
f3b473ea99 some more rtd tweaks
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-13 10:27:26 +02:00
706e3d458b switch to direct handler again
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-13 10:13:16 +02:00
d999f57fef apply afmt
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-13 10:10:56 +02:00
6b54a4dea9 cleaning up, better fault status handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-13 10:10:02 +02:00
fd0de9426f Merge remote-tracking branch 'origin/develop' into mueller/rtds-update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-13 09:51:22 +02:00
bf7acf83ff update .cproject file
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-13 09:51:11 +02:00
23f37e19af bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-13 09:39:49 +02:00
b5821ec6dc changelog update
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-05-13 09:35:47 +02:00
be1c26ddf7 rtd testing
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-13 01:17:23 +02:00
da4d3e4891 update changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-12 20:47:19 +02:00
ac34bcbb3d Merge remote-tracking branch 'origin/develop' into mueller/heater-health-if
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-12 20:46:00 +02:00
e81ddaa1a5 added auto-shutdown for faulty heaters 2022-05-12 20:44:36 +02:00
21ba8c95ff additional parameter to identify cmd source
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-12 20:12:01 +02:00
e25c492aa4 create and schedule health PUS service
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-12 19:22:20 +02:00
82f75bde97 fix for heater creation call 2022-05-12 19:12:12 +02:00
919141ae10 ccsds handler sending command to enable transmitter 2022-05-12 18:32:19 +02:00
e48aa64766 repoint fsfw
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-05-12 17:48:18 +02:00
3c3884476b Merge branch 'develop' into meier/ccsds 2022-05-12 15:57:26 +02:00
569754bdad Merge branch 'develop' into meier/ploc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-12 15:48:56 +02:00
5fe814e972 Merge remote-tracking branch 'origin/develop' into mueller/rtds-update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-12 15:48:26 +02:00
06219744ea Merge branch 'meier/ploc' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into meier/ploc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-12 15:47:16 +02:00
9db58210b8 Merge branch 'develop' into meier/ploc 2022-05-12 15:47:06 +02:00
ee99c3312e Merge pull request 'Update EIVE OBSW' (#250) from mueller/update-eive-obsw into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #250
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-05-12 15:34:07 +02:00
3a6beafae5 commented time file writing in again
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-12 15:31:52 +02:00
d7316eff66 remove merge conflict markers
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-05-12 14:23:10 +02:00
51466e68d7 Merge remote-tracking branch 'origin/develop' into mueller/heater-health-if
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-05-12 14:11:46 +02:00
e6f55ba2c1 increased execution timeout of prepare update command
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-12 14:04:55 +02:00
dd67191044 Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-12 14:02:15 +02:00
c1faf65409 schedule new rtd reader component
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-12 12:35:05 +02:00
382d93863f create and pass correct comIF
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-12 12:21:47 +02:00
a173ef4308 create low level rtd handler in obj factory
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-12 12:12:47 +02:00
6b9e49e632 continued low level MAX31865 handler
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-12 11:27:30 +02:00
0dd0af73a1 change in mpsoc status codes 2022-05-12 10:50:12 +02:00
23f209fb07 added eive specific max31865 handler
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-12 09:48:41 +02:00
e5710784b9 Merge branch 'develop' into meier/ccsds 2022-05-12 07:47:28 +02:00
56f491befb compile fix
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-12 00:48:49 +02:00
93f605bc0a Merge remote-tracking branch 'origin/develop' into mueller/rtds-update
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-05-12 00:45:57 +02:00
d1d365c76d bump tmtc again
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-11 18:00:11 +02:00
38d03dbe57 bump deps, regenerate translation files
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2022-05-11 17:59:08 +02:00
af52b90abe fsfwgen update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-11 17:16:40 +02:00
a315a8b529 fixed conflicts
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-11 17:08:44 +02:00
5f96d157a7 repoint fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-11 17:04:31 +02:00
c1992f59d6 Merge remote-tracking branch 'origin/develop' into mueller/reboot-cmd 2022-05-11 17:04:19 +02:00
658acb0554 Merge pull request 'RW Assembly' (#224) from mueller/rw-ass into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #224
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-05-11 17:03:32 +02:00
5a82fe93d9 core ctrl remount sd handling
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-11 17:02:57 +02:00
8a90f0025b commented in time file write
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-11 17:01:03 +02:00
beba258a77 update fsfw
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-05-11 16:57:23 +02:00
c7e2cc22af init sequence count 2022-05-11 16:49:07 +02:00
835a10e538 sequence count init
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-05-11 16:11:17 +02:00
1d1f04f57b Merge branch 'develop' into mueller/reboot-cmd
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-05-11 15:48:34 +02:00
625abcfd5b important bugfixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-11 15:45:38 +02:00
914acd9925 fixed conflicts
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-05-11 14:37:36 +02:00
c7e4704234 fixed merge conflict 2022-05-11 14:36:23 +02:00
c5bccb661e Merge remote-tracking branch 'origin/develop' into mueller/rw-ass
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-05-11 13:54:04 +02:00
37002b47b3 sequence count init value
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-05-11 12:46:04 +02:00
c043375ae3 RW Refactoring
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
- FSFW update: SPI device is part of ComIF now
- Only set RW mode (speed is set a side effect but not necessary) once
- Release SPI bus in the 70 ms delay duration
2022-05-11 11:13:00 +02:00
62c885e1de re-point tmtc
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-11 10:17:49 +02:00
cf98d446f9 Merge branch 'develop' into mueller/rw-ass
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-11 10:11:55 +02:00
96710159b8 added missing eclipse instructions
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-11 10:09:58 +02:00
17802aaa55 fix images in README
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-11 10:07:19 +02:00
f5b1427c38 fix images in README
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-11 10:06:56 +02:00
543ec5dfff Merge remote-tracking branch 'origin/develop' into mueller/rw-ass
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-11 10:05:23 +02:00
3924430ea7 update .cproject file again
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-11 10:04:25 +02:00
4120befef0 update changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-11 01:50:49 +02:00
91b69eacf6 A lot of stuff
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
- refactored and simplified RW assemblies
- create separate SPI Com IF for RWs
- Update .cproject file: Fixed to decrease indexer parsing times
2022-05-11 01:48:26 +02:00
df7e0007d0 schedule RW ASS
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-11 01:02:29 +02:00
95fd3238e7 another .cproject update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-11 01:00:21 +02:00
8ccd55dd06 update .cproject file
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-11 00:58:19 +02:00
7e87bd713d Merge remote-tracking branch 'origin/develop' into mueller/rw-ass 2022-05-11 00:54:37 +02:00
4e78ee85c8 continued rw ass creation 2022-05-11 00:54:29 +02:00
cb8f0e61be Merge pull request 'Init ACS Test files' (#249) from mueller/acs-test-init into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #249
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-05-11 00:54:00 +02:00
1904cc168d catch exceptions
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-11 00:42:32 +02:00
924f114fb3 sth crashes CI..
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-11 00:36:31 +02:00
604dbea372 Merge remote-tracking branch 'origin/develop' into mueller/rw-ass
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-11 00:28:57 +02:00
ca640ea18f hmm
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-05-11 00:24:58 +02:00
491736335b Merge remote-tracking branch 'origin/develop' into mueller/acs-test-init
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-05-11 00:19:40 +02:00
de0872072f Merge pull request 'Add yocto helper scripts' (#248) from mueller/yocto-helper-scripts into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #248
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-05-10 18:45:54 +02:00
db7dcc7e32 start creating rw ass in obj factory
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-10 18:39:23 +02:00
75d19790b8 another .cproject file update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-10 18:36:00 +02:00
1893e87f5f update .cproject file again
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-10 18:35:44 +02:00
b021590103 update .cproject file
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-10 18:35:03 +02:00
45c1ac0f61 update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-10 18:34:39 +02:00
0bd20ac9fd init acs test files
Some checks failed
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-05-10 17:49:10 +02:00
9d63eb837a added void cast
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-10 17:02:40 +02:00
49d21fef2a Merge branch 'develop' into meier/ccsds 2022-05-10 07:49:05 +02:00
907b8f4a5d ccsds config for te0720-1cfa 2022-05-10 07:48:36 +02:00
50c363fb6f new RTD reader module handling all RTD SPI Communication
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-09 21:29:54 +02:00
4864394590 renamed heaters
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-09 16:13:33 +02:00
71d9553f90 Merge remote-tracking branch 'origin/develop' into mueller/rw-ass
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-08 13:11:56 +02:00
646925c571 removed redundant SUS OBJ ID defs
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-08 13:08:49 +02:00
d9085e81a1 Merge remote-tracking branch 'origin/develop' into mueller/heater-health-if
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-08 13:06:47 +02:00
54a36ac275 added back deleted part
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-08 12:57:24 +02:00
e59026d87c update README
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-08 12:55:17 +02:00
7de968937e repoint tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-08 12:33:49 +02:00
a66632c040 Merge remote-tracking branch 'origin/develop' into mueller/yocto-helper-scripts 2022-05-08 12:33:17 +02:00
9f9fa9b41b Merge pull request 'PLOC Handler Update' (#234) from meier/plocSupv into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #234
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2022-05-08 12:32:47 +02:00
421237bfb7 fixed ploc supervisor build error which was hidden by prerocessor define
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-08 12:01:35 +02:00
37e81d34c9 Merge branch 'develop' into mueller/heater-health-if
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-07 22:50:13 +02:00
1fea619ac0 Merge remote-tracking branch 'origin/develop' into mueller/rw-ass
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-07 22:44:23 +02:00
2bc2325b1f removed unused includes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-07 13:59:53 +02:00
d9024b6c22 adaption in DummyGpioIF due to API change in GpioIF 2022-05-07 13:50:36 +02:00
f8addd9365 preprocessor define fixes 2022-05-07 13:38:09 +02:00
2ff8923c81 fixed reorder warning in imtq handler 2022-05-07 13:19:59 +02:00
a4e36ebdb6 update changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-07 12:55:48 +02:00
9884ea225e update CHANGELOG
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-07 12:54:25 +02:00
3cca73ae9f update other helper scripts as well
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-07 12:51:47 +02:00
631bc61d6c changed set ids
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-07 12:01:05 +02:00
43b0ed4b04 preprocessor define adjustments
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-06 20:33:46 +02:00
d9c7cccf76 run clang format script
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-06 19:53:33 +02:00
322db3d617 removed ploc updater 2022-05-06 19:52:43 +02:00
6dd57a3f5e fixed merge conflicts
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-05-06 19:44:18 +02:00
4ba26f057d Merge branch 'meier/ploc' into meier/plocSupv
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-06 19:36:03 +02:00
97222cafd9 increased mram dump execution timeout
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-06 19:34:12 +02:00
cbb3c92885 tmtc update 2022-05-06 19:31:09 +02:00
132751893b bugfix in missed reply hanling of supervsior MRAM dump 2022-05-06 19:30:20 +02:00
a5a79da723 install non-stripped files now
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-06 16:47:09 +02:00
7ab0a3683c this works better
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-06 16:46:22 +02:00
08dc8630d6 create generic OBSW by default and copy to unique
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-05-06 16:43:12 +02:00
cc25489e75 important bugfix
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-06 15:54:45 +02:00
e4bbdbc532 copy version file as well
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-06 15:53:16 +02:00
2f182a5e21 docs
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-06 15:41:29 +02:00
bacce95881 corrections for install script
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-06 15:38:50 +02:00
9383a6088b build script bugfixes
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-06 15:33:05 +02:00
338cb9d502 Merge remote-tracking branch 'origin/develop' into mueller/yocto-helper-scripts
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-06 15:29:25 +02:00
fe4315666b added helper script for yocto installation
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
- Installs compiled binaries into yocto repo for rootfs rebuild
2022-05-06 15:27:56 +02:00
576f71304c updated eclipse launch files
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-06 10:45:53 +02:00
385d8df466 fix .cproject file
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-06 10:43:04 +02:00
bfd7d9d82d bump fsfw (hotfix)
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-06 10:37:54 +02:00
e6cbe3068d Merge branch 'develop' into mueller/heater-health-if
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-06 10:12:23 +02:00
99a8cd0f2d Merge branch 'develop' into mueller/reboot-cmd
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-06 10:11:58 +02:00
1c2f80f48e Merge branch 'develop' into mueller/rw-ass
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-06 10:11:32 +02:00
9918aae94a Merge pull request 'install Catch2 for CI/CD' (#247) from mueller/install-catch2-docker into develop
Reviewed-on: #247
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-05-06 10:00:12 +02:00
355ca27d31 Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-06 08:58:31 +02:00
22060b9b16 Merge remote-tracking branch 'origin/develop' into mueller/rw-ass
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-06 01:12:07 +02:00
31425877b4 apparently python3 is needed
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-06 01:09:25 +02:00
09f80f63b5 small dockerfile fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-06 01:01:56 +02:00
68938c3b42 remove duplicate object ID
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-05 20:27:20 +02:00
a945b3cae0 Merge remote-tracking branch 'origin/develop' into mueller/install-catch2-docker
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-05 20:19:53 +02:00
81b29cfda6 lets hope this works
Some checks reported errors
EIVE/eive-obsw/pipeline/pr-develop Something is wrong with the build of this commit
2022-05-05 20:16:42 +02:00
a11a8c493d Merge remote-tracking branch 'origin/develop' into mueller/heater-health-if
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-05-05 19:53:18 +02:00
a7b696884c Merge pull request 'Rename sun sensors' (#245) from mueller/rename-sus into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #245
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-05-05 19:52:30 +02:00
e98563d834 update changelog
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-05-05 19:51:25 +02:00
a920f60c61 use newer docker container d5
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2022-05-05 19:50:53 +02:00
b54641a2a1 install catch2 for CI/CD
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-05 19:48:04 +02:00
a2a7313016 Merge remote-tracking branch 'origin/develop' into mueller/rename-sus
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-05 19:47:17 +02:00
6893b895e3 Merge pull request 'Build unittest by default in host build' (#244) from mueller/ci-cd-build-host-and-unittest-by-default into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #244
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-05-05 19:46:04 +02:00
8f9d84c293 Merge remote-tracking branch 'origin/develop' into mueller/ci-cd-build-host-and-unittest-by-default
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-05 19:42:24 +02:00
0c82d06ec4 Merge remote-tracking branch 'origin/develop' into mueller/rename-sus
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-05 19:41:36 +02:00
5c7c5b468a tmtc update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-05 19:21:42 +02:00
fabd81365b supervisor do startup set time 2022-05-05 19:20:14 +02:00
5911ca79b5 nvm enable command 2022-05-05 19:18:39 +02:00
a3419412cc Merge pull request 'Rename RTDs' (#246) from mueller/rename-rtds into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #246
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-05-05 17:13:11 +02:00
cc662738f2 update changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-05 16:55:51 +02:00
b426475ca4 better RTD names 2022-05-05 16:55:08 +02:00
957c8f5298 bump submodules
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2022-05-05 16:50:16 +02:00
4445ac34ca update changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-05 16:49:10 +02:00
b9535f46d9 bump tmtc again
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-05 16:48:30 +02:00
a232b9bf98 assign better sus names
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-05 16:46:04 +02:00
165963ed2d bump submodules 2022-05-05 16:35:53 +02:00
cf4edac604 maybe this fixes the timing issue?
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-05 16:32:09 +02:00
c1dc5846cd bump submodules
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-05 16:24:23 +02:00
4c809e354d better heater obj id names
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-05 16:23:46 +02:00
1f6aab8124 apply afmt, some more renaming
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-05 13:40:43 +02:00
590fe6ca39 Some RW improvements
- Moved Events to definitions file
- Added new event if reset occurs
- Deliver state if there is an error (going to be 0, still deliver it)
2022-05-05 12:48:56 +02:00
9bd5595999 no time command sent during startup of supervisor 2022-05-05 10:50:23 +02:00
e5fdf23dd7 tmtc update
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-05-05 09:15:05 +02:00
8832d06d03 improvements for mram dump
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-05 08:55:45 +02:00
28c9e33d1c separate PST for RWs 2022-05-05 02:00:56 +02:00
95a634ea7f update .cproject file 2022-05-05 01:33:18 +02:00
3a0cf0cb38 Merge branch 'develop' into mueller/rw-ass
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-05 00:51:30 +02:00
e4ebd87875 Merge branch 'develop' into mueller/reboot-cmd
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-05 00:51:11 +02:00
bcb6df87b0 update tmtc, gen files and formatting in config file
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-05 00:47:50 +02:00
5441520369 tmtc update
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-05-04 19:11:01 +02:00
8aacbc2b40 cam cmd reply handling 2022-05-04 19:08:37 +02:00
54a50beacb Merge remote-tracking branch 'origin/main' into mueller/ci-cd-build-host-and-unittest-by-default
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-04 17:46:19 +02:00
c24d5c05f0 Merge branch 'mueller/ci-cd-build-host-and-unittest-by-default' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into mueller/ci-cd-build-host-and-unittest-by-default 2022-05-04 17:46:09 +02:00
a2e22302fb update changelog 2022-05-04 17:46:01 +02:00
1a6fb52e1d Merge branch 'develop' into mueller/ci-cd-build-host-and-unittest-by-default
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-04 17:40:19 +02:00
c83a177061 Build unittest by default in host build
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
- Also update CI/CD to build host build
2022-05-04 17:38:08 +02:00
79d48d9630 Merge remote-tracking branch 'origin/develop' into mueller/rw-ass
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-04 17:25:11 +02:00
9c888e75bc bump tmtc again
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-04 17:23:56 +02:00
0d15694fc3 Merge remote-tracking branch 'origin/develop' into mueller/heater-health-if 2022-05-04 17:23:34 +02:00
be7cab6032 Merge remote-tracking branch 'origin/develop' into mueller/reboot-cmd
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-04 17:22:19 +02:00
4589b3b696 Merge pull request 'v1.11.0' (#243) from develop into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #243
2022-05-04 17:19:56 +02:00
0271b4970c Merge branch 'main' into develop
All checks were successful
EIVE/eive-obsw/pipeline/pr-main This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-04 17:13:09 +02:00
4db35e8641 bump tmtc submodule
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2022-05-04 17:08:25 +02:00
d108f7bbda Merge remote-tracking branch 'origin/develop' into mueller/reboot-cmd
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-04 16:54:39 +02:00
3458c272ad Merge remote-tracking branch 'origin/develop' into mueller/rw-ass
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-04 16:47:49 +02:00
1508a1e147 Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-04 16:43:31 +02:00
a6c6325d41 Merge remote-tracking branch 'origin/develop' into mueller/pl-ss
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-04 16:41:08 +02:00
73e4b0cc81 bump tmtc
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-04 16:38:02 +02:00
4311c5b6a7 Merge remote-tracking branch 'origin/develop' into mueller/heater-health-if 2022-05-04 16:37:53 +02:00
d59e71b056 Merge remote-tracking branch 'origin/develop' into mueller/heater-health-if 2022-05-04 16:37:47 +02:00
8315a03efc Merge pull request 'Building new EM config' (#238) from mueller/refactoring-conf-handling into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #238
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-05-04 15:08:18 +02:00
2cf1da5478 Merge remote-tracking branch 'origin/develop' into mueller/refactoring-conf-handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-04 14:51:55 +02:00
e06f459333 changelog correction
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-04 14:43:27 +02:00
a3e33bb627 Merge remote-tracking branch 'origin/develop' into mueller/heater-health-if
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-04 14:37:36 +02:00
535da53093 Merge remote-tracking branch 'origin/develop' into mueller/refactoring-conf-handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-04 14:34:07 +02:00
b10486052e Merge pull request 'Update GPIO API' (#241) from mueller/update-gpio-api-without-em-split into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #241
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-05-04 14:31:54 +02:00
bb2bd87541 repoint fsfw
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head Build started...
2022-05-04 14:15:26 +02:00
afaeca7cf7 update changelog
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2022-05-04 14:14:24 +02:00
86752417f2 changed for updated FSFW GPIO API 2022-05-04 14:14:17 +02:00
243d38f832 small form fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-04 13:49:55 +02:00
79efc9de39 bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-04 13:48:18 +02:00
92f95b2b97 comment out debug printout
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-04 13:25:42 +02:00
475f6f1687 removed unused ploc commands, fix in logging report reply 2022-05-04 12:49:43 +02:00
d0e18f8b35 add mutex protections for switcher states 2022-05-04 11:11:29 +02:00
86dd67bf06 bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-04 10:36:45 +02:00
50ca378318 update for updated gpio API
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-04 10:34:11 +02:00
5f5c996cfd bump tmtc IF
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-04 09:26:11 +02:00
1536a0f94b named heaters
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-03 18:17:10 +02:00
d79323c6ca small fix for generic factory header
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-03 17:45:39 +02:00
ae0120f3ef Merge branch 'mueller/refactoring-conf-handling' into mueller/heater-health-if
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-03 17:44:02 +02:00
8f9e8fe3fb ignore new build folder name
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-03 17:39:02 +02:00
bc28ae4d1f bump submodules 2022-05-03 17:38:37 +02:00
2470039dfb Merge remote-tracking branch 'origin/develop' into mueller/heater-health-if 2022-05-03 17:38:10 +02:00
0ad13a473e avoid compiler warning
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-03 17:36:15 +02:00
4d13743b7f remove faulty line
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-03 17:30:36 +02:00
79aac89f36 update build instructions
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-05-03 17:27:39 +02:00
6dde823d4c improve dependency handling (same as fsfw)
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-03 17:17:48 +02:00
4a637e79c6 update lauch cfg host
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-03 17:11:17 +02:00
42247620c0 updated host and linux scripts, fix host build
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-03 17:08:48 +02:00
115d2dea88 bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-03 16:43:37 +02:00
47f4aebd15 update auto-generated file
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-03 16:32:57 +02:00
fbd9e65398 Merge remote-tracking branch 'origin/develop' into mueller/refactoring-conf-handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-03 16:18:37 +02:00
f598ac3daf Merge remote-tracking branch 'origin/develop' into mueller/pl-ss
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-03 16:15:45 +02:00
77704b3e79 Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-03 16:15:23 +02:00
f0270b91d9 added system folder here
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-03 16:09:30 +02:00
e8e3138fba Merge remote-tracking branch 'origin/develop' into mueller/pl-ss
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-03 16:05:01 +02:00
b49ed2bacf fsfw update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-03 16:03:57 +02:00
3b40e622fe Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-03 16:02:45 +02:00
06df558be0 Merge remote-tracking branch 'origin/develop' into mueller/rw-ass
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-03 16:01:09 +02:00
88842d4f07 Merge remote-tracking branch 'origin/develop' into mueller/heater-health-if
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-03 15:59:28 +02:00
08046ef621 Merge remote-tracking branch 'origin/develop' into mueller/refactoring-conf-handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-03 15:57:01 +02:00
5380ed216b supervisor do startup fix 2022-05-03 15:36:38 +02:00
70884d3a46 tmtc update 2022-05-03 15:28:11 +02:00
464821cc6f supervisor set time during start up 2022-05-03 14:59:23 +02:00
a9cf5f9ae9 Merge pull request 'update cp script' (#237) from mueller/update-q7s-cp-script into develop
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
Reviewed-on: #237
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-05-03 13:42:08 +02:00
e088bec582 Merge pull request 'GPS controller update' (#239) from mueller/gps-tests into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #239
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-05-03 13:41:30 +02:00
5a52155065 updated win helper scripts
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-03 12:55:05 +02:00
8b4d56cc0d changelog improvements
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-03 12:51:34 +02:00
4fdeccc3a8 update CHANGELOG
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-03 12:48:30 +02:00
0543f6b425 update README and helper scripts 2022-05-03 12:44:15 +02:00
fdf7f03242 moved build helpers to script folder
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-03 12:35:03 +02:00
9a73637b5e update .cproject file again
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-03 12:33:51 +02:00
4035cb1fcb update gitignore 2022-05-03 12:31:43 +02:00
0d37272feb separate EM build folder
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-05-03 12:29:44 +02:00
b2ec1773e4 reworked helper scripts, renamed q7s build dirs 2022-05-03 12:27:34 +02:00
4149b08f3a update CHANGELOG
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-03 11:56:25 +02:00
f435f7217e move RW loading opt to CMakeLists.txt
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-03 11:54:48 +02:00
ac0b2e0dce update object factory files
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-03 11:53:10 +02:00
51bcdafe33 renaming
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-03 11:39:49 +02:00
c131c685a4 fix test task
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2022-05-03 11:39:12 +02:00
08d7b3b859 update changelog
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-03 11:34:47 +02:00
456dac6afd SHM and socket readout working now
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-03 11:33:07 +02:00
c413d90b88 Minor adaption ti filesystem include and removed arcsect submodule to make it work on my local machine 2022-05-03 08:10:07 +02:00
cce0d5448d support both SHM and socket read
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-03 00:55:01 +02:00
ef4f713883 bump submodules
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-05-03 00:02:16 +02:00
0f4fe7694b Merge remote-tracking branch 'origin/develop' into mueller/refactoring-conf-handling 2022-05-03 00:01:55 +02:00
7aa900e6d5 Merge branch 'develop' into mueller/update-q7s-cp-script
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-05-02 23:59:31 +02:00
c1d754d8ff gps improvements
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-02 23:52:53 +02:00
10d0bf1550 mini fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-02 23:51:39 +02:00
0172351e89 additional try catch block
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-02 22:58:06 +02:00
1f8a68dabe re-use existing enum
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-02 22:55:39 +02:00
9449919b2b Heaters are own objects with HealthIF now
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-02 22:45:27 +02:00
b98c691c2b added health helper to heater handler
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-02 17:51:00 +02:00
238afbaa8b add health IF to heater handler
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-02 17:37:00 +02:00
0abb726b30 bump submodules
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-02 16:15:43 +02:00
a54d89c90f Merge branch 'develop' into mueller/rw-ass
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-02 15:55:41 +02:00
9dc382706a Merge pull request 'Bugfix PCDU Handler' (#235) from meier/pcduhandler-bugfix into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #235
2022-05-02 15:51:54 +02:00
7a6b45b102 removed debug print 2022-05-02 14:43:53 +02:00
d1a9924acc tmtc update 2022-05-02 14:43:17 +02:00
2f90c3e937 removed debug print
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-02 13:51:56 +02:00
5f6a8fa37d bugfix pcdu handler command queue reading
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-05-02 13:50:44 +02:00
690b41777b bugfix pcdu handler command queue reading 2022-05-02 13:48:34 +02:00
3c858d26f1 tmtc update 2022-05-02 13:47:59 +02:00
eb6b166662 bump fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-02 12:56:42 +02:00
0e97c4ad9a Merge branch 'mueller/acs-ss-init' into mueller/pl-ss
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-02 12:55:15 +02:00
3a52540d0e bump tmtc
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-05-02 12:53:43 +02:00
aa9acef76a bump tmtc submodule
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-02 12:53:12 +02:00
7db0872ee3 Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-05-02 12:49:53 +02:00
bab8412f10 Merge remote-tracking branch 'origin/develop' into mueller/rw-ass
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-05-02 12:41:45 +02:00
9e2eca3e36 re-generate event list
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-05-02 12:41:20 +02:00
49b0825f63 added doSendReadHook to prevent com if polling when com if is used by helper task 2022-05-02 09:56:15 +02:00
be752997eb fixed merge conflicts
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-30 19:12:21 +02:00
2f3d60e974 Merge pull request 'Syrlinks FDIR' (#232) from mueller/syrlinks-fdir into develop
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
Reviewed-on: #232
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-04-30 19:03:16 +02:00
3ff709a814 removed changes can rx task
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-30 16:52:22 +02:00
c1fb7ce0df update fsfw submodule
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-30 16:38:43 +02:00
e919d3b7ef delete ETL submodule
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-30 16:36:45 +02:00
03b7b802c5 removed ptme test data sending
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-30 16:33:34 +02:00
20138d52b1 decreased stack size of supervisor helper task
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-30 16:23:51 +02:00
6d322c6e78 run clang format script
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-30 16:21:59 +02:00
016ca8cb7e decreased acs handler task stack size
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-30 16:20:33 +02:00
729b8f547c time file writing commended in again
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-30 16:19:00 +02:00
52bfcd7039 tmtc update
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-04-30 15:55:45 +02:00
6636f42dc2 tmtc update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-30 15:34:28 +02:00
cf4305be55 tmtc update
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-30 11:10:56 +02:00
e1ffa97232 improved acknowledgment and execution handling in supervisor handler 2022-04-30 11:08:36 +02:00
6524f924c9 run generator scripts 2022-04-30 09:53:42 +02:00
6f53c39485 fix conflict
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-30 09:28:22 +02:00
8ecbeb058c tmtc update 2022-04-30 09:26:55 +02:00
1635e40c79 tmtc update
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-29 23:36:09 +02:00
816dc43214 restructuring execution report handling
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-29 23:34:28 +02:00
7afb8e9070 execution status codes 2022-04-29 23:22:44 +02:00
cedc6bec23 gpio state sent with execution report 2022-04-29 22:55:01 +02:00
3d817363e6 fixed conflicts
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-04-29 18:26:20 +02:00
7e36edc41c Merge pull request 'GOMSPACE Power components FDIR' (#233) from mueller/gomspace-fdir into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #233
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-04-29 18:24:18 +02:00
cf20d8e94d commented in time file writing again
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-29 18:23:31 +02:00
02f352e51f tmtc update
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-29 18:22:03 +02:00
074e2d8517 update cp script
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-29 16:05:40 +02:00
c1248dd4e1 building new EM config
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-29 15:47:54 +02:00
f2cb43a52f scexDataHandler
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-29 15:46:16 +02:00
9d4cb2ea8d xecution status code parsing 2022-04-29 13:31:58 +02:00
57f3103e52 update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-29 13:31:14 +02:00
7c15eb57bb update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-29 12:48:13 +02:00
be7b141126 update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-29 12:30:52 +02:00
e16e6c2d17 fileId
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-29 12:26:18 +02:00
5888d90fbc continued reboot command
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-29 11:16:53 +02:00
fe28588875 repoint tmtc submodule 2022-04-29 10:56:43 +02:00
bf281343c6 fixed conflicts
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-29 09:04:49 +02:00
73c653d21d execution status code wip 2022-04-29 09:03:13 +02:00
09fc8babc4 fsfw update 2022-04-29 08:35:06 +02:00
f0884c0096 read gpio tm handling 2022-04-29 08:34:23 +02:00
0b64999ce2 added generic GPIO checker
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-28 18:38:38 +02:00
7c770b5aec fixed conflicts
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-28 18:33:27 +02:00
794ed04761 prevent sending boot command when mpsoc booted via jtag 2022-04-28 18:30:40 +02:00
73fbdfeb25 remove etl::pair usage
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-28 18:27:40 +02:00
31fa2f0d8d include fix 2022-04-28 18:27:13 +02:00
1527b60fd6 Merge remote-tracking branch 'origin/develop' into mueller/rw-ass
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-28 18:26:34 +02:00
cb47667d01 Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-28 17:56:33 +02:00
3a03d6ca55 update CHANGELOG
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-28 17:56:06 +02:00
f01f63d8e8 Merge remote-tracking branch 'origin/develop' into mueller/gomspace-fdir 2022-04-28 17:55:40 +02:00
e16f5e68d6 update changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-28 17:54:47 +02:00
517aaf2146 Merge remote-tracking branch 'origin/develop' into mueller/syrlinks-fdir 2022-04-28 17:54:07 +02:00
bbe1e996e6 Merge pull request 'Host Fixes and CMakeLists.txt update' (#229) from mueller/host-fixes-fsfw-update into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #229
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-04-28 17:16:03 +02:00
6d326137fb Merge pull request 'OBSW Config in file update' (#225) from mueller/obsw-config-infile-update into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #225
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-04-28 17:15:37 +02:00
b40ceafbe0 Merge pull request 'disable -Wformat-truncation error' (#223) from mueller/disable-warning-in-csp-lib into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #223
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-04-28 17:15:06 +02:00
a9e106bb71 Merge pull request 'Update README' (#222) from mueller/update-README into develop
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
Reviewed-on: #222
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-04-28 17:14:42 +02:00
199acec3b5 Merge pull request 'Improvement for PCDU Handler' (#221) from mueller/minor-tweaks-pcdu-handler into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #221
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-04-28 17:14:09 +02:00
9c0a89bbdc added all checks, made checker func generic
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-28 16:20:41 +02:00
5de45a7ae7 more readable
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-28 16:05:01 +02:00
d0b7531e48 create and assign gomspace power fdir
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-28 15:58:31 +02:00
b97604d7d2 override event confirmed as well
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-28 15:36:56 +02:00
7e230b64ea create and add syrlinks fdir
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-28 15:29:57 +02:00
7e2a993211 create rudimentary syrlinks fdir
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-28 15:25:03 +02:00
c1fe7563d2 finished first rudimentary pl ss
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-28 15:05:38 +02:00
e18661bb59 update fsfw
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-28 14:30:35 +02:00
582d2db05f fixed conflicts 2022-04-28 14:29:23 +02:00
df73e95d13 Merge remote-tracking branch 'origin/develop' into mueller/hand-written-subsystem
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-28 13:22:41 +02:00
4f72fb355c update fsfwgen
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-28 13:08:44 +02:00
ca1365df5b Merge remote-tracking branch 'origin/develop' into mueller/rw-ass 2022-04-28 13:08:34 +02:00
40b84b0576 update changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-28 13:08:19 +02:00
b4a54804df submodule update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-28 13:07:28 +02:00
636e2d62d8 Merge remote-tracking branch 'origin/develop' into mueller/acs-ss-init 2022-04-28 13:06:48 +02:00
ab85ebf83e update CHANGELOG
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-28 11:37:06 +02:00
b40302210f Merge remote-tracking branch 'origin/develop' into mueller/update-README
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-28 11:33:54 +02:00
713bfbd7dc Merge remote-tracking branch 'origin/develop' into mueller/minor-tweaks-pcdu-handler
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-28 11:33:35 +02:00
40168bcd5f Merge branch 'develop' into mueller/disable-warning-in-csp-lib
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-28 11:33:13 +02:00
9ce7a28cff Merge remote-tracking branch 'origin/develop' into mueller/obsw-config-infile-update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-28 11:32:59 +02:00
9bb6c41134 Merge branch 'mueller/host-fixes-fsfw-update' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into mueller/host-fixes-fsfw-update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-28 11:32:15 +02:00
e836ed8a2d Merge remote-tracking branch 'origin/develop' into mueller/host-fixes-fsfw-update 2022-04-28 11:31:50 +02:00
898753f6e3 supervisor reset pl command 2022-04-28 11:27:28 +02:00
a45f298505 Merge pull request 'GPSD test' (#230) from mueller/gps-test into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #230
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-04-28 11:12:52 +02:00
234a6b7ac3 switch gps ctrl to socket API
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-28 10:50:39 +02:00
584700a2ba do not add ETL lib
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-28 10:21:04 +02:00
a1c3b1786f bump submodules
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-28 10:07:42 +02:00
e11c84a5ed update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-27 18:21:32 +02:00
7682a1d214 fixed conflicts 2022-04-27 16:56:16 +02:00
c5683afe9f fram
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-27 16:46:11 +02:00
7543a92dd9 added test code 2022-04-27 16:44:03 +02:00
20a2aa73ae tmtc update
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-27 16:09:07 +02:00
8610e48b19 countdown based timeout 2022-04-27 16:08:17 +02:00
bed58a45e5 move catch2 load directive to bottom
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-27 09:02:12 +02:00
5b2239cee6 repoint fsfw
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-04-27 08:55:21 +02:00
b3f0d19bb9 CMakeLists.txt order fixes
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-04-26 20:20:56 +02:00
00bbc86d39 update CMakeLists.txt file
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
2022-04-26 20:10:09 +02:00
e2f0c0f1be fram rec
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-26 13:22:56 +02:00
49b3120ada remove etl submodule , want to use the one provided by the fsfw
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-26 11:15:35 +02:00
2b33d8772c fixes most warnings for host build
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-26 10:37:25 +02:00
f5723dc181 continued pl ss
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-25 18:44:38 +02:00
42194abb4a commented in read function again 2022-04-25 13:36:30 +02:00
0697cca88a started acs subsystem
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-25 13:36:11 +02:00
3e8429b34b warning print when memory check command fails 2022-04-25 13:36:06 +02:00
311ec7b194 mpsoc shutdown after running update procedure 2022-04-25 11:03:02 +02:00
f9dd77b8ec create and schedule ACS SS
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-25 10:50:59 +02:00
f014e2d5c7 system folder restructuring
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-25 10:36:03 +02:00
9ba65b04fd add IDLE charge mode
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-25 10:30:47 +02:00
298148eebf bump fsfwgen
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-25 10:08:54 +02:00
bbb4ba2191 baseline acs mode tree done 2022-04-25 10:08:29 +02:00
baa6f05f8e neat
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-25 08:48:22 +02:00
6876952bbd regenerated events 2022-04-24 12:34:08 +02:00
6bdb13b6a0 submodule update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-23 12:37:40 +02:00
9f3a56e5e6 Merge remote-tracking branch 'origin/develop' into mueller/rw-ass 2022-04-23 12:37:25 +02:00
e3783d0941 small fix
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-23 12:37:12 +02:00
ba2589c8d5 submodule updates
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-23 12:30:49 +02:00
f421fd4dde Merge remote-tracking branch 'origin/develop' into mueller/minor-tweaks-pcdu-handler 2022-04-23 12:30:45 +02:00
9ac5d0da67 submodule updates
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-23 12:30:20 +02:00
c5ae12e10b Merge remote-tracking branch 'origin/develop' into mueller/update-README 2022-04-23 12:30:11 +02:00
25570cc631 Merge branch 'develop' into mueller/disable-warning-in-csp-lib
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-23 12:29:51 +02:00
baf2e5fb39 submodule updates
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-23 12:29:29 +02:00
957b067eac Merge remote-tracking branch 'origin/develop' into mueller/obsw-config-infile-update 2022-04-23 12:28:51 +02:00
c262d1ef90 Merge remote-tracking branch 'origin/develop' into mueller/hand-written-subsystem 2022-04-23 12:21:04 +02:00
9fe2de5244 Merge pull request 'CMake git describe support' (#226) from mueller/cmake-git-describe-support into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #226
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-04-22 20:03:34 +02:00
9301206485 fixes identified during tests
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-22 18:05:03 +02:00
874e06baa1 continued acs subsystem
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-22 17:49:28 +02:00
a0db5dcc7c add first mode sequence for acs ss
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-22 17:00:23 +02:00
177b4305bb Merge branch 'mueller/version-fix' into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-22 16:19:04 +02:00
67ab265645 Merge pull request 'Version bump - v1.10.1' (#227) from mueller/version-fix into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #227
2022-04-22 16:17:24 +02:00
ea139d0657 added new revision
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-main Build queued...
2022-04-22 16:16:25 +02:00
8bd7d00ab1 forgot to bump version
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2022-04-22 16:15:04 +02:00
417a6d8ea0 added missing character
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-22 16:06:44 +02:00
17fd273d10 fix for toolchain file handling
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-04-22 16:01:10 +02:00
772a829333 small improvement
Some checks failed
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-04-22 15:58:15 +02:00
bf1f6887be Merge branch 'develop' into mueller/minor-tweaks-pcdu-handler
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-22 15:55:54 +02:00
3c2092926e Merge branch 'develop' into mueller/update-README
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-22 15:55:44 +02:00
f22644697e Merge branch 'develop' into mueller/disable-warning-in-csp-lib
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-22 15:55:35 +02:00
48e0718b76 Merge branch 'develop' into mueller/obsw-config-infile-update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-22 15:55:12 +02:00
6f54129f60 Merge remote-tracking branch 'origin/develop' into mueller/cmake-git-describe-support
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-22 15:54:42 +02:00
32f2cd60bb Merge remote-tracking branch 'origin/main' into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-22 15:54:14 +02:00
0638c87f62 made version handling more robust
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-22 15:47:47 +02:00
0f80501467 rename helpers file 2022-04-22 15:42:13 +02:00
ce41e4c219 tmtc update
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-22 14:21:41 +02:00
4a2ba043cb fixed conflicts 2022-04-22 14:20:17 +02:00
b63c3bb9c3 increased delay cycles of execution report 2022-04-22 14:17:16 +02:00
8b612d9116 include fix 2022-04-22 14:16:40 +02:00
a416ca406b git describe support finished
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-22 14:09:08 +02:00
974ff0a13e make RW handler more generic
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-22 11:29:51 +02:00
aa84175382 pass power switcher for syrlinks handler creation
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-22 11:29:19 +02:00
d29dd48d1e update project file: changed default unix sysroot
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-22 11:18:10 +02:00
1069762903 update config.h.in file
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-22 11:11:04 +02:00
737d18135f test flag for RW
Some checks failed
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-04-22 11:09:06 +02:00
0da74f1bf9 bump submodules, add some more devices by default 2022-04-22 11:08:27 +02:00
88249cd5be update changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-22 11:07:40 +02:00
85d8c2c471 Merge branch 'develop' into mueller/disable-warning-in-csp-lib
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-22 11:01:34 +02:00
4a5ea4450f update changelog
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-22 10:59:43 +02:00
1485b14c7d some more README updates
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-22 10:55:52 +02:00
604d7ab228 Merge remote-tracking branch 'origin/develop' into mueller/minor-tweaks-pcdu-handler
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-22 10:51:06 +02:00
d1814f9a49 submodule update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-22 10:50:40 +02:00
c4b1703b8e update README
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-22 10:48:31 +02:00
165a4ef814 continued RW Assembly
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-22 10:28:29 +02:00
3fbebd6a9f Merge remote-tracking branch 'origin/develop' into mueller/rw-ass 2022-04-22 10:28:14 +02:00
d6532f8181 Merge pull request 'Update for new yocto rootfs' (#217) from mueller/yocto-rootfs into develop
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
Reviewed-on: #217
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-04-22 10:21:52 +02:00
2ee9b09b27 logging command
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-22 08:55:57 +02:00
a24464f13e Merge pull request 'v1.10.0' (#220) from develop into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #220
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-04-22 07:42:18 +02:00
578899b5a5 scexhelper
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-21 19:47:09 +02:00
a8f5a4054f Merge branch 'develop' into meier/plocSupvUpdate 2022-04-21 17:34:26 +02:00
1d9fb354f7 Merge branch 'irini' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into irini
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-21 16:59:26 +02:00
a99b0007db fsfw update 2022-04-21 16:58:43 +02:00
afc0f37e8a rw assembly
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-21 16:56:46 +02:00
23b2d895bb submodule updates
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-21 16:40:28 +02:00
e61fada99e Merge pull request 'MPSoC Handler Update' (#219) from meier/plocMPSoC into develop
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: #219
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2022-04-21 16:36:02 +02:00
836a2327f9 tmtc update
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-21 16:31:14 +02:00
cf37d74728 adc report 2022-04-21 16:30:23 +02:00
333155b1a0 Merge branch 'develop' into meier/plocMPSoC
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-21 14:32:22 +02:00
0bcb332ce9 tmtc update
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-21 14:26:46 +02:00
52c539bc6b fsfw update 2022-04-21 14:26:15 +02:00
2c491b27c0 update CHANGELOG
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-main This commit looks good
2022-04-21 14:21:02 +02:00
ae2cd52087 add changelog
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-21 14:18:41 +02:00
47b9576c24 decreased pst uart frequency again
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-21 14:04:46 +02:00
7ae8138a43 Merge branch 'develop' into meier/plocMPSoC
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2022-04-21 14:03:27 +02:00
438957c466 update shell script to use default SDK sysroot
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-21 13:52:27 +02:00
4f4a8930c8 repoint fsfw
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-21 13:45:37 +02:00
20bb1d73f5 Merge remote-tracking branch 'origin/develop' into mueller/yocto-rootfs 2022-04-21 13:45:13 +02:00
6b08659a69 disable -Wformat-truncation error
Some checks are pending
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2022-04-21 11:50:47 +02:00
4325eaa956 Merge pull request 'bugfix for inverse copying' (#213) from mueller/q7s-cp-bugfix into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #213
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-04-21 11:23:33 +02:00
daf50a83fd Merge pull request 'fix initializer list order' (#215) from mueller/imtq-order-fix into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #215
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-04-21 11:23:09 +02:00
34c0ac3f05 Merge pull request 'fix and improvement for include handling in OBSW watchdog' (#216) from mueller/watchdog-fixes into develop
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
Reviewed-on: #216
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-04-21 11:22:09 +02:00
b68c58fd37 Merge pull request 'fix out-of-bounds read in PCDU Handler' (#218) from mueller/hotfix-pcdu-handler into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #218
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-04-21 11:21:27 +02:00
707c318ab9 repoint fsfw again
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-21 10:41:29 +02:00
9c54696d91 fix out-of-bounds read
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-21 10:25:51 +02:00
e5d5af68c1 Important bugfix and improvement for PCDU Handler
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
- Fixed out of bounds error
- Handle multiple messages in queue handler
- PCDU Handler now only called once in PST
2022-04-21 09:35:02 +02:00
0e9300b51c fsfw update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-21 09:33:49 +02:00
73ba4a39b0 comments 2022-04-21 09:31:52 +02:00
77870468d9 cam commands
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-20 21:34:29 +02:00
38ecb9e055 cam commands
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-20 21:33:39 +02:00
17c440643f Merge branch 'mueller/master' into mueller/yocto-rootfs
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-04-20 13:44:07 +02:00
eb0e7c39e4 update README
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-20 01:27:16 +02:00
f23ba7ab7b always build watchdog for arm q7s now 2022-04-20 01:25:56 +02:00
c4220b37e5 add option for external toolchain file 2022-04-20 00:57:37 +02:00
69f39b765b curl cant use wildcards
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-19 18:30:21 +02:00
fa4ee7a84b this is odd
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-04-19 18:23:38 +02:00
0263d3adb5 newline at end
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-04-19 18:20:07 +02:00
67fbabbd7c update docker file and jenkins file 2022-04-19 18:18:07 +02:00
ec0a38ad25 update win q7s env script
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
2022-04-19 17:54:32 +02:00
5d8e8a9841 delete commented code
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-04-19 17:52:43 +02:00
c3238ab154 update .cproject file
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-04-19 17:51:53 +02:00
4956161701 support both gps versions
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-04-19 17:47:05 +02:00
850722eae5 include improvements
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-19 17:24:04 +02:00
1fb5b48455 fix initializer list order
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-19 17:18:31 +02:00
4895f940f3 tmtc update
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-19 14:26:21 +02:00
ffd64d0463 improvements in supervisor helper
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-19 13:33:37 +02:00
d12b5958b9 update q7s-evn script and generate stripped watchdog bin
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
2022-04-18 21:49:04 +02:00
a4c5d8de45 adaptions for gpsd 3.17
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-18 00:25:33 +02:00
1ce45acba3 merged develop 2022-04-17 14:52:43 +02:00
be2834cb1a linux ctrl only print warning once 2022-04-17 11:48:06 +02:00
07d345183e rename gps dev 2022-04-17 01:07:23 +02:00
d3403d341f if gpssmm cant be opened, return prematurely 2022-04-17 01:06:37 +02:00
a14af7f728 update path setter 2022-04-17 01:04:53 +02:00
aa95aa185b Merge remote-tracking branch 'origin/develop' into mueller/master 2022-04-17 01:01:08 +02:00
2e93d7300a some more fixes 2022-04-17 01:00:06 +02:00
f6f51665a2 fix for script path 2022-04-17 00:56:31 +02:00
7b54855397 supervisor fixes detected during testing 2022-04-16 17:19:32 +02:00
f08eb9b5ae install directive for OBSW 2022-04-16 01:40:03 +02:00
b0006c2272 watchdog fixes and submodule updates 2022-04-16 01:04:06 +02:00
01f812b932 reorder fix
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-15 01:42:00 +02:00
ad12fa6060 repoint fsfw again 2022-04-15 01:40:53 +02:00
f52c2a32b7 repoint fsfw 2022-04-15 01:40:14 +02:00
5c3e91b5aa Merge remote-tracking branch 'origin/develop' into irini 2022-04-15 01:40:00 +02:00
57cc77e197 fixed some tiny bugs 2022-04-15 01:39:47 +02:00
f5d88a4b6a bugfix for inverse copying
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-14 18:27:11 +02:00
23730349b0 repoint fsfw again
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-14 11:26:26 +02:00
500c54e430 Merge pull request 'Extend Power Switch Handling' (#212) from mueller/extend-power-switch-handling into develop
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
Reviewed-on: #212
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-04-14 11:21:34 +02:00
cf575f0d70 repoint fsfw
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop Build queued...
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-14 11:19:31 +02:00
1db5d278f6 switcher handling extension
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop Build started...
2022-04-14 11:17:07 +02:00
9fa745cfb2 update fsfwgen deps 2022-04-14 11:02:29 +02:00
aefd8b696d Merge pull request 'Add Empty Subsystem Impls' (#211) from mueller/add-subsystem-impls into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #211
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-04-14 10:17:07 +02:00
0f7f17b591 Merge branch 'develop' into mueller/add-subsystem-impls
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-14 10:16:34 +02:00
6fdf7f704d Merge pull request 'Assign power switcher to IMTQ and Star Tracker' (#210) from mueller/assign-more-power-switches into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #210
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-04-14 10:13:16 +02:00
17aa70f5e0 Merge pull request 'submodule and obj factory updates' (#209) from mueller/fsfw-update into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #209
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-04-14 10:12:40 +02:00
fd9fbe4543 Merge remote-tracking branch 'origin/mueller/fsfw-update' into mueller/add-subsystem-impls
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-14 09:54:14 +02:00
6c63356edc add subsystem impls 2022-04-14 09:54:07 +02:00
94896c9e74 update submodules
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-14 09:44:25 +02:00
25138d8931 update
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-14 09:42:59 +02:00
285ec9be6a tmtc update
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-14 07:53:44 +02:00
10343a0dab supervisor event buffer request 2022-04-14 07:52:21 +02:00
655497934b apply afmt
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-13 18:55:49 +02:00
fd3313fc62 assign power switcher for imtq and star tracker
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2022-04-13 18:55:07 +02:00
a72c2f7b7d submodule and obj factory updates
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-13 18:51:22 +02:00
3e4d728b10 fsfw update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-13 18:44:35 +02:00
bbdd3c052e mutex
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-13 17:47:24 +02:00
9f3f264eac continued scex uart reader, some bugs
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-13 17:43:16 +02:00
f679461164 tmtc update 2022-04-13 15:31:54 +02:00
5b2cfd2c84 Merge remote-tracking branch 'origin' into irini
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-13 14:47:12 +02:00
9b6f254954 Merge pull request 'Release build warning fixes' (#208) from mueller/release-warning-fixes into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #208
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-04-13 12:15:04 +02:00
42b7b4a7c4 Merge branch 'develop' into mueller/release-warning-fixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-13 12:04:08 +02:00
435f8164a1 Merge pull request 'Split up PDU1 and PDU2 sets' (#205) from mueller/split-pdu1-pdu2-sets into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #205
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-04-13 12:02:07 +02:00
a807aab97e fsfw update
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-13 12:01:39 +02:00
bd8cd49117 event buffer request wip 2022-04-13 11:56:37 +02:00
52885919d0 Merge branch 'develop' into mueller/release-warning-fixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-13 08:43:29 +02:00
b618302db0 Merge pull request 'Development fixes' (#207) from mueller/develop-fixes into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #207
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-04-12 19:30:33 +02:00
7f51ffc8fb use structs instead of classes 2022-04-12 17:42:41 +02:00
a14ca283cc using vector for convert enables
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-12 16:36:04 +02:00
2529ed905c some important bugfixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-12 16:11:04 +02:00
2cd5450333 bugfix for pool ID 2022-04-12 16:00:54 +02:00
604870d1fe split up op divider, assing imtq power switcher
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-12 15:27:48 +02:00
6e33af7a75 repoint fsfw again
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-11 17:17:58 +02:00
e2e85c19e1 repoint fsfw
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2022-04-11 17:16:43 +02:00
df38903fe9 some warning fixes for release build 2022-04-11 17:16:25 +02:00
0fba1b6494 tmtc update
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-11 16:53:38 +02:00
05a85ab8a1 implemeted ICD changes 2022-04-11 16:52:50 +02:00
d96ff72635 bump fsfw and tmtc deps
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-04-11 15:02:04 +02:00
5e8262657f fsfw update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-11 14:57:45 +02:00
8a0999851f update for new fsfw API
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
- Apply auto-formatter
2022-04-11 14:56:20 +02:00
5e0e8232df dev conf update for updated fsfw
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-11 14:54:44 +02:00
456f6ad6af submodule updates
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-11 14:43:24 +02:00
1d98582bbd update tmtc submodule
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-11 08:56:04 +02:00
f05922e19e Merge remote-tracking branch 'origin/develop' into mueller/split-pdu1-pdu2-sets 2022-04-11 08:55:25 +02:00
b440fc3df6 ploc update
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-10 18:46:39 +02:00
d5bdc00abf start bpx batt immediately
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
but defer it until the com mode was set to i2c
2022-04-09 18:56:32 +02:00
a5881a238b store time file with lower frequency 2022-04-09 18:51:46 +02:00
d144f5bd11 Merge remote-tracking branch 'origin/develop' into mueller/master
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-09 18:00:56 +02:00
d00cb6d4a5 updates for new dle parser API
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-09 15:38:09 +02:00
808e01dfd3 DLE FRAM packets can be read now
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-09 14:43:06 +02:00
44c8f5f730 bugfix for SCEX 2022-04-09 01:00:42 +02:00
6071e34771 some refactoring 2022-04-08 21:16:02 +02:00
f6bc884edd Merge remote-tracking branch 'origin/develop' into irini
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-08 20:50:13 +02:00
01d86a0c7b huge progress
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-08 19:12:21 +02:00
6a875d5f0b Merge pull request 'PCDU P60 HK Set Update' (#204) from mueller/pcdu-hk-core-sets into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #204
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-04-08 17:48:50 +02:00
35f2d2cb9c solve merge comflioct
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-08 15:25:07 +02:00
188f8863d0 Merge remote-tracking branch 'origin/develop' into irini
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-08 15:21:31 +02:00
a9419cd328 tmtc update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-08 14:51:47 +02:00
90e8d7ecaf Merge remote-tracking branch 'origin/develop' into mueller/pcdu-hk-core-sets
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-04-08 14:15:58 +02:00
ff5e271f88 Merge pull request 'GPS Time Handling' (#203) from mueller/gps-time-update into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #203
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-04-08 13:33:12 +02:00
c83efd149e small tweak
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-08 11:41:17 +02:00
6ae9e539a6 more useful printout
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-04-08 11:40:35 +02:00
351920aa7b some tweaks
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-08 11:31:29 +02:00
4a6840f098 bugfixes and improvements
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
- Tests finished
2022-04-08 11:22:16 +02:00
a728a6d04b tmtc update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-08 09:59:46 +02:00
26ff40ae0c Merge remote-tracking branch 'origin/develop' into mueller/master 2022-04-08 09:07:38 +02:00
8f0d0917ab Merge remote-tracking branch 'origin/develop' into mueller/split-pdu1-pdu2-sets
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-07 19:53:29 +02:00
59d58da4f2 splitting pdu1 and pdu2 sets done
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-07 19:48:09 +02:00
cb81798c0c Merge branch 'develop' into mueller/pcdu-hk-core-sets
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-07 17:34:08 +02:00
45007d726d update translation files
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-07 17:28:58 +02:00
5801c17509 Merge remote-tracking branch 'origin/develop' into mueller/gps-time-update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-07 17:24:05 +02:00
796b814b49 Add time file handling 2022-04-07 17:23:50 +02:00
0e7cd7de6f add p60 boot count broadcast
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-07 13:11:20 +02:00
d570b5c460 use different severities
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-07 13:08:20 +02:00
64b3afae22 new event for battery mode: broadcast and changed
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-07 13:07:28 +02:00
5e4c3728ed split up p60 hk packets
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-07 12:53:51 +02:00
dbe4f70d8e Merge branch 'meier/plocSupv' into meier/plocSupvUpdate 2022-04-07 12:26:30 +02:00
160df15cbf Merge pull request 'HK Update' (#202) from mueller/hk-check into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #202
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-04-07 12:22:30 +02:00
4e3fa54ae2 split P60 dock HK into core and aux HK
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-07 12:22:08 +02:00
bf849b24e6 Merge remote-tracking branch 'origin/develop' into mueller/hk-check
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-07 11:59:02 +02:00
64dce75e09 hk update for gps
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-07 11:56:01 +02:00
66627741f9 periodic HK definitions for all device handlers 2022-04-07 11:53:21 +02:00
68992e77dc Merge pull request 'GPS Update' (#201) from mueller/gps-update into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #201
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-04-07 11:34:59 +02:00
ca92b85864 enable periodic HK by default
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-07 11:22:29 +02:00
8f4f271331 longer HK intervals
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-07 11:15:28 +02:00
1876bbe449 Merge remote-tracking branch 'origin/develop' into mueller/gps-update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-07 11:12:52 +02:00
b5ce035c09 Merge pull request 'PL PCDU Update Mode Handling' (#200) from mueller/pl-pcdu-update-mode-handling into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #200
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-04-07 11:12:02 +02:00
5c4ae861b1 exclude gps changes
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
EIVE/eive-obsw/pipeline/head Build queued...
2022-04-07 11:11:37 +02:00
b2933f95d7 fsfw update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-07 11:07:51 +02:00
1a5196f9d2 Merge remote-tracking branch 'origin/develop' into mueller/pl-pcdu-update-mode-handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-07 11:03:24 +02:00
e7e810eb20 Merge remote-tracking branch 'origin/develop' into mueller/master
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-07 11:02:01 +02:00
8f391d3a68 Merge branch 'develop' into mueller/gps-update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-07 11:00:22 +02:00
c0fd9aee6f update helper wip 2022-04-07 11:00:07 +02:00
569735474a Merge pull request 'HK handling improvements' (#198) from mueller/improve-pcdu-hk-handling into develop
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
Reviewed-on: #198
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-04-07 10:57:51 +02:00
c3aa9fb908 update for gps
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
- GPSD/NTPD finally seem to work now. Still keep code to set it manually for  now
2022-04-07 10:55:29 +02:00
81e33348bb tmtc update
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-07 10:06:20 +02:00
a6d20de0a5 GPS linux controller update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-07 10:02:56 +02:00
bc47402a6d run auto-formatter
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-07 09:57:52 +02:00
c6e16e0866 resolve merge conflict, ran afmt
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-04-07 09:57:19 +02:00
042a6b2960 Merge remote-tracking branch 'origin/develop' into mueller/pl-pcdu-update-mode-handling
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-04-07 09:50:21 +02:00
06a15ccec1 submodule updates
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
2022-04-07 00:16:15 +02:00
834e935c64 switch handling working now 2022-04-07 00:14:18 +02:00
df2295b430 tmtc update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-06 17:53:23 +02:00
d51a73f15b tmtc update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-06 17:51:31 +02:00
3f6a534db5 fixes identified during tests
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-06 17:27:44 +02:00
d7e899e113 Merge remote-tracking branch 'origin/develop' into mueller/improve-pcdu-hk-handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-06 12:10:50 +02:00
f325d139da p60 dock HK does not need to be diagnostic
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-06 12:10:22 +02:00
1d6ae35465 Merge pull request 'meier/syrlinks' (#199) from meier/syrlinks into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #199
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2022-04-06 12:09:50 +02:00
f058cf5e31 supervisor udpate wip
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-06 08:36:34 +02:00
9837a1b62c changes in supervisor commands
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-06 07:10:20 +02:00
65d504bed1 p60 dock HK is diagnostic again
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-05 19:49:57 +02:00
36db47466f tmtc update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-05 19:43:28 +02:00
3cfd0deb22 set p60 dock HK vars to valid
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-05 19:29:09 +02:00
146868da21 fsfw update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-05 14:43:20 +02:00
d48ec92d09 fixed conflicts
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-05 13:57:16 +02:00
29b7c97892 tmtc update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-05 12:00:12 +02:00
1f4328d9a0 prepared pr
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-05 11:52:01 +02:00
f91efd8c1e prepared pr
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-05 11:50:45 +02:00
40403b81c3 debug flag
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-05 08:38:36 +02:00
6020b20fc9 hk handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-04 18:47:09 +02:00
5031e78365 Merge remote-tracking branch 'origin/develop' into mueller/improve-pcdu-hk-handling
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-04 17:22:33 +02:00
65ce25ec7a improved P60 HK handling
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-04 17:16:52 +02:00
a30e57142a tmtc update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-04 15:05:56 +02:00
d2f54f033f syrlinks
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-04 14:58:35 +02:00
4327fcb92e set internal state properly
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-04 13:55:25 +02:00
d315d6b458 tmtc update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-04 13:53:44 +02:00
734972af07 Merge pull request 'apply auto-formatter' (#197) from mueller/afmt into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #197
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-04-04 13:51:37 +02:00
ec880d4232 apply auto-formatter
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-04 13:40:45 +02:00
b12ffb6f44 PL PCDU switch states like mode bitmask now
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-04 13:39:35 +02:00
99f56a89af tmtc update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-04 12:00:39 +02:00
5e3e152d8e Merge remote-tracking branch 'origin/develop' into mueller/master 2022-04-04 11:58:51 +02:00
50db2fedef Merge pull request 'bugfix in SUS device handler' (#196) from mueller/sus-bugfix into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #196
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-04-04 07:49:53 +02:00
4cb434e750 Merge branch 'mueller/sus-bugfix' into mueller/master
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-03 20:36:10 +02:00
007badc324 bugfix in SUS device handler
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-03 20:35:49 +02:00
36666f214c Merge remote-tracking branch 'origin/develop' into mueller/master
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-03 20:15:41 +02:00
189674a9bb re-enable all suses
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-03 20:12:14 +02:00
a57f3faafb Merge pull request 'update fsfw dependency' (#195) from mueller/update-fsfw into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #195
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-04-01 14:58:22 +02:00
04de6c7136 Merge pull request 'move GNSS NReset handling to assembly' (#194) from mueller/move-gnss-nreset-handling into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #194
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-04-01 14:55:49 +02:00
afb1d22f76 Merge pull request 'activate all suses again' (#193) from mueller/rpi-sus-port into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #193
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-04-01 14:52:10 +02:00
07c242282d syrlinks test
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-01 14:15:42 +02:00
8a4de72713 update header file as well
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-01 14:13:37 +02:00
d3050625bb update fsfw dependency
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-01 14:12:14 +02:00
c55fafee48 fsfw update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-01 14:11:41 +02:00
c231a775b3 Merge remote-tracking branch 'origin/develop' into mueller/move-gnss-nreset-handling
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-04-01 14:05:32 +02:00
2cc14532cd Merge pull request 'meier/deviceHandlerUpdate' (#192) from meier/deviceHandlerUpdate into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #192
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2022-04-01 14:05:04 +02:00
1eb5a428cb move GNSS NReset handling to assembly
Some checks failed
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
- Also update fsfwgen dependency
2022-04-01 14:01:12 +02:00
1a280dd5cf Merge branch 'develop' into mueller/rpi-sus-port
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-01 13:46:14 +02:00
0fba9cbf7e Merge remote-tracking branch 'origin/develop' into mueller/master
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-04-01 13:44:47 +02:00
d769d3ce22 Merge remote-tracking branch 'origin/develop' into meier/deviceHandlerUpdate
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-04-01 13:41:04 +02:00
ca1e8f3dc1 syrlinks fault flag
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-04-01 09:20:35 +02:00
61769de4bf activate all suses again
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-31 19:12:40 +02:00
ff86b9bbb3 Merge pull request 'Port of Sun Sensor and RTD code to Raspberry Pi' (#190) from mueller/rpi-sus-port into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #190
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-03-31 18:58:10 +02:00
487c21f16a fixes
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-31 18:04:55 +02:00
33ec092998 ported RTD code as well
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-31 17:58:16 +02:00
b29a0cd0fb syrlinks temperature set and temperature protection 2022-03-31 17:44:29 +02:00
053c65b6cd Merge remote-tracking branch 'origin/develop' into mueller/rpi-sus-port
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-31 16:42:52 +02:00
413f552639 improvements from sus test
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-31 16:16:01 +02:00
222f17edcc Merge branch 'develop' into meier/deviceHandlerUpdate
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-31 15:48:58 +02:00
f20ad98a52 fsfw update
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
2022-03-31 15:36:48 +02:00
ee497ecf2a Merge pull request 'PL PCDU Refactoring v1' (#189) from mueller/plpcdu-refactoring into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #189
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-03-31 15:31:46 +02:00
0abdf0291e merged develop
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop Build started...
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-31 15:30:58 +02:00
6d807b3959 Merge pull request 'Power Update' (#191) from mueller/power-update into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #191
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-03-31 15:24:06 +02:00
637941e089 important bugfixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-31 14:40:42 +02:00
e9b2def10e mpsoc sending action command during startup to supervisor
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-31 11:50:33 +02:00
387595495e reading temperature value
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-31 09:11:01 +02:00
ac0e1aebba minor bugfix, works now
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-30 23:01:38 +02:00
6052363cdb submodule updates
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-30 18:13:14 +02:00
d01d6d92f8 rad sensor debug flag
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-30 18:11:21 +02:00
9958b37fba afmt
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-30 17:50:36 +02:00
a4f99b3e78 moved spi dev name to definitions file
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-30 17:50:13 +02:00
44bd42ded6 added missing cast
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-30 17:47:49 +02:00
c61a29db12 Merge branch 'mueller/power-update' into mueller/rpi-sus-port 2022-03-30 17:44:26 +02:00
2c8b691ca4 continued rpi sus port 2022-03-30 17:44:07 +02:00
53aca633b8 write lcl config register 2022-03-30 16:29:58 +02:00
f1fe115447 fsfw update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-30 13:12:19 +02:00
f427d372a7 Merge remote-tracking branch 'origin/develop' into mueller/master
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-30 13:11:11 +02:00
dec5dc7c96 changes for FSFW power refactoring
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-30 12:22:49 +02:00
2bb9cdc612 submodule update 2022-03-30 12:18:45 +02:00
f2f350116f tmtc update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-30 12:09:17 +02:00
61a7f71e80 syrlinks writing lcl register 2022-03-30 11:25:03 +02:00
9236486a0f fixed merge conflicts 2022-03-30 10:14:43 +02:00
ea23fda599 tmtc update
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-30 09:22:25 +02:00
cfaba492da fsfw update 2022-03-30 09:21:40 +02:00
2dca9d598d mpsoc startup command 2022-03-30 09:19:30 +02:00
9cfb2bad51 only set time every 60 seconds
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-29 17:47:40 +02:00
a8457d7966 small safety mechanism for time
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-29 16:59:48 +02:00
0ba2caaf61 set the time in the code directly now
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-29 16:53:05 +02:00
9eaa732644 delete code which is not required anymore
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-29 16:08:13 +02:00
69ba11acc1 perform nReset handling in Assembly now
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-29 16:07:13 +02:00
9f937781b7 Merge remote-tracking branch 'origin/develop' into mueller/rpi-sus-port
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-29 15:43:35 +02:00
b5363604bc Merge remote-tracking branch 'origin/develop' into mueller/plpcdu-refactoring
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-29 15:40:02 +02:00
2b8728fcd8 Merge pull request 'meier/plocMPSoC' (#188) from meier/plocMPSoC into develop
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
Reviewed-on: #188
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2022-03-29 15:39:21 +02:00
25c3f39c82 star tracker switch 2022-03-29 07:58:22 +02:00
6b543dc7bb corrected prinout
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-28 17:54:50 +02:00
f8c548659f print out hpa current limit exceeding
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-28 17:46:34 +02:00
618d7a3358 Merge branch 'meier/plocMPSoC' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into meier/plocMPSoC
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-28 17:39:38 +02:00
991f864375 star tracker fixes 2022-03-28 17:38:57 +02:00
876a13ec37 dsiabled switching to normal mode during mode on transition 2022-03-28 17:38:40 +02:00
50b8bca6b7 duplicated id 2022-03-28 17:37:02 +02:00
b18cb0cb64 increased hpa current limit 2022-03-28 17:35:46 +02:00
98ec92a880 rerun generators 2022-03-28 17:33:49 +02:00
6fa975cc74 simplified PL PCDU
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-28 15:29:42 +02:00
e6ad0978de run auto-formatter
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-28 13:54:46 +02:00
d80ef280dd update power API
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-28 13:53:32 +02:00
1f12a249f5 switched to docker_d3
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-28 13:35:51 +02:00
b66c730c49 changed rootfs env variable from q7s to zynq7020 2022-03-28 13:30:26 +02:00
4447a9d4b1 Merge branch 'mueller/rpi-sus-port' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into mueller/rpi-sus-port
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-28 12:31:04 +02:00
39b9ed06c3 submodule updates 2022-03-28 12:30:57 +02:00
01f601e761 Merge branch 'develop' into mueller/rpi-sus-port
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-28 12:30:14 +02:00
66029cb47a implemented switch handling
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-28 12:23:56 +02:00
25fe13a4a4 tmtc update
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-28 11:41:35 +02:00
d6ed952fa9 use power switcher to turn on supervisor
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-28 11:34:06 +02:00
6e25cf912f tmtc update
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-28 10:34:03 +02:00
0c889f9492 Merge remote-tracking branch 'origin/develop' into mueller/plpcdu-refactoring 2022-03-28 10:33:49 +02:00
a9a6bbd948 fixed conflicts
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-28 10:10:01 +02:00
a6f2227490 fsfw update
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-28 09:30:50 +02:00
5db4b9cb86 gpio dummy if 2022-03-28 09:30:37 +02:00
27419f48e3 fsfw update
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-28 09:11:10 +02:00
758c4e6f4f uart isolator switch handling 2022-03-28 09:08:11 +02:00
e2c9bece05 adding uart isolator switches wip 2022-03-27 14:42:20 +02:00
6d04c278c3 run clang formatting script
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-27 13:07:18 +02:00
3fe9599c48 tmtc update
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-27 12:57:26 +02:00
0d8ccd649a return execution finished in executeAction 2022-03-27 12:56:39 +02:00
0f77c606e0 tmtc update
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-27 12:32:24 +02:00
ad9f40d70a created i2c com if fpr tmp1075 handler 2022-03-27 12:32:05 +02:00
1dfc18ae66 regnerated return values 2022-03-27 12:31:35 +02:00
7f9b2a5bd0 tmtc update
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-27 12:21:55 +02:00
d4d1c8106c added missing includes 2022-03-27 12:21:09 +02:00
b41806d6c2 preprocessor define correction 2022-03-27 12:20:49 +02:00
022ae4091d preprocessor define correction 2022-03-27 12:20:25 +02:00
a359afb1c3 renamed win q7s env script
Some checks failed
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-27 11:16:30 +02:00
44a0d4af61 removed te0720 code form q7s files
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-27 10:56:40 +02:00
ceb7f40d35 fixed merge conflicts
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-27 10:44:32 +02:00
af57f02840 Merge pull request 'Various Improvements & Fixes' (#187) from mueller/various-improvements-rpi-tweaks into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #187
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-03-26 21:07:07 +01:00
98795f9529 tmtc update
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-26 20:49:21 +01:00
471a981ccf mpsoc flash write command 2022-03-26 20:47:25 +01:00
2410c6ccc6 added SUS component creation to RPi
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-26 16:38:42 +01:00
7612564a8f apply auto-formatter
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-26 14:10:31 +01:00
83d90f41b0 remove links which change regularly
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-26 14:09:56 +01:00
243af65ca6 fix compile warnings for RPI build
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-26 14:08:34 +01:00
5f8ec0e089 Merge remote-tracking branch 'origin/develop' into mueller/master
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-26 13:54:16 +01:00
ac0326a944 various improvements
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-26 13:54:05 +01:00
9d10af35d8 Merge remote-tracking branch 'origin/mueller/various-smaller-fixes' into mueller/master 2022-03-26 13:39:23 +01:00
043984172c fsfw update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-26 13:35:48 +01:00
47a3804145 fixed conflicts
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-26 10:41:30 +01:00
80fe0bdce6 tmtc update 2022-03-25 19:00:56 +01:00
94dc4eb367 fixed conflicts 2022-03-25 19:00:19 +01:00
9351c8285b rerun generators 2022-03-25 18:53:48 +01:00
2f6d9ab7f1 fixed merge conflicts 2022-03-25 18:49:34 +01:00
0ff84b31ef longer timeout for mode service
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-25 18:39:21 +01:00
df712c7100 scex reader task started
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-25 17:48:38 +01:00
4bf0521a5d increased pl pcdu debug divider
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-25 17:02:21 +01:00
6db4092dc8 tmtc update 2022-03-25 17:01:44 +01:00
15d1da8199 rpi fix
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-25 16:16:42 +01:00
f88a063d83 change to more generic type
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-25 16:01:44 +01:00
74fa98d161 add dual lane power switcher for PL PCDU
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-25 15:56:44 +01:00
0937697637 use transition mode
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-25 15:49:39 +01:00
71639f21e8 tmtc update
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-25 15:40:12 +01:00
184ce2917d Merge remote-tracking branch 'origin/develop' into mueller/plpcdu-refactoring
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-25 15:32:00 +01:00
c47919bb3d Merge pull request 'update fsfw' (#186) from update-fsfw into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #186
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-03-25 15:06:04 +01:00
c4ea13a5f4 update fsfw
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop Build started...
2022-03-25 15:04:53 +01:00
563bf0747a Merge pull request 'correction for transition delay' (#185) from mueller/pl-pcdu-hotfix into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #185
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-03-25 13:14:26 +01:00
c949f9f795 another fix
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build started...
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-25 13:12:27 +01:00
931c53f1a6 corrections during e-band test
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-25 12:57:42 +01:00
c8c2e543a1 update project file, new definitions file 2022-03-25 12:44:43 +01:00
3e3fc20fc6 correction for transition delay
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-25 12:34:03 +01:00
4b6cf3c30a made egse port executable
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-25 12:25:05 +01:00
7f7a756094 README update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-25 12:21:57 +01:00
59dfff9bf8 README update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-25 12:19:53 +01:00
4ccec03e47 changed some error messages to warnings 2022-03-25 09:40:43 +01:00
53a780ed0f update tmtc
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-25 09:14:00 +01:00
3df7a7f896 get status function
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-25 09:08:01 +01:00
1e2df7bf91 replay command
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-24 17:39:50 +01:00
2fb8ca4aaa plpcdu refactoring
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-24 12:48:23 +01:00
6e91462cba better rtd printout
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-23 15:02:48 +01:00
1cd98c5604 Merge remote-tracking branch 'origin/mueller/tcs-subsystem' into mueller/master
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-23 13:39:25 +01:00
c9930c6cc8 update submodules
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-23 13:34:34 +01:00
368b01c081 include fixes
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-23 11:13:59 +01:00
f99e96a20a flash write tc, fix in pus data extraction
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-23 05:28:24 +01:00
8f63e6321e Merge pull request 'TCS Board Assembly' (#184) from mueller/tcs-subsystem into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #184
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-03-23 05:11:38 +01:00
017eaf07f5 added new event
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-22 20:43:34 +01:00
9c6f349a08 add children lost mode event
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-22 20:40:30 +01:00
3e9910b1d2 tcs assembly working for now
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-22 20:35:37 +01:00
5fb4e468ba update object list, bugfix
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-22 19:33:49 +01:00
22154f2851 prevent RTD spam
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-22 19:30:10 +01:00
4afacbe82b new system ctl task
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-22 19:15:13 +01:00
5b7dd7c432 assign rtd fdir , create TCS BOARD ASS
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-22 19:10:28 +01:00
14d9efce1f continued tcs board assembly
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-22 18:48:03 +01:00
e95d25db66 merge develop and apply afmt
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-22 18:00:05 +01:00
c21dae1afc Merge remote-tracking branch 'origin/develop' into mueller/tcs-subsystem 2022-03-22 17:59:55 +01:00
1d712854bf Merge remote-tracking branch 'origin/develop' into mueller/master
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-22 17:59:05 +01:00
1ebd92a17e derive from ASS base instead
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-22 17:58:05 +01:00
27f9cb7469 Merge pull request 'System and Subsystem Init' (#166) from mueller/system-subsystems into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #166
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-03-22 17:41:19 +01:00
c184385e12 hmm this is awkward
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-22 15:55:30 +01:00
ce8253b940 TCS subsystem continued
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-22 15:49:22 +01:00
1c7601aa1c set test flag for rad sensor to 0
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-22 14:31:24 +01:00
73e3d29ed0 added init function
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-22 14:30:42 +01:00
bcd97076e1 started TCS subsystem
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-22 11:57:48 +01:00
78b3f28188 restructured flash write command 2022-03-22 11:35:44 +01:00
5589eb2c7b update fsfwgen deps
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-22 11:11:58 +01:00
e4d1cdafcc various smaller bugfixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-22 11:07:31 +01:00
c95374bfbd refresh events, objects, retvals
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-22 10:15:04 +01:00
05b43d4d72 tmtc update
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-21 16:22:57 +01:00
bbed4a3b6e e-band control commands 2022-03-21 16:21:51 +01:00
664670573a tc replay stop wip
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-21 11:05:41 +01:00
dfca599f6e Merge remote-tracking branch 'origin/develop' into mueller/master
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-21 10:15:20 +01:00
f37c57d0bc fsfw update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-21 10:12:17 +01:00
be45d21486 mpsoc flash delete command
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-21 08:53:55 +01:00
5875868f72 flash delete wip
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-21 08:35:28 +01:00
5763485688 tmtc update
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-18 12:10:35 +01:00
a18a752b8e rerun generators 2022-03-18 11:37:44 +01:00
253e2731bd only include lxiphos when building for q7s
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-18 06:45:40 +01:00
33b250562b fixed conflicts 2022-03-17 20:03:04 +01:00
e5a4065055 add and instantiate SUS ASS + SUS FDIR
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-17 19:59:47 +01:00
8d70560968 fixed conflicts 2022-03-17 19:52:37 +01:00
b8fb5c289c fix in mem write command 2022-03-17 19:51:00 +01:00
acd0307591 continued ACS board + SUS board assemblies
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
- Handling and Testing of basic FDIR
2022-03-17 19:23:39 +01:00
9dc124004d build configuration for trenz te0720-1cfa 2022-03-17 14:28:32 +01:00
e373fe0769 small fixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-17 11:16:03 +01:00
4fef5781a8 small fix in power state machine 2022-03-17 10:48:35 +01:00
dabc3e1fbc tmtc update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-17 10:23:06 +01:00
3c1055f988 .h.in file fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-17 10:22:53 +01:00
ad30b84c83 Merge remote-tracking branch 'origin/develop' into mueller/system-subsystems
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-17 10:21:27 +01:00
e23687dd66 apply auto-formatter
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-17 10:20:39 +01:00
1c5c15bdc7 Merge remote-tracking branch 'origin/mueller/system-subsystems' into mueller/master
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-17 10:20:13 +01:00
03c04aa2e6 tmtc update 2022-03-17 10:19:07 +01:00
72acab599a Merge remote-tracking branch 'origin/develop' into mueller/system-subsystems
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-17 10:17:04 +01:00
4e3562f9fe Merge pull request 'Power Update' (#183) from mueller/power-handling-update into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #183
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-03-17 10:13:38 +01:00
c212f0ad48 Obj Factory fixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-17 10:04:51 +01:00
40d9829700 Major update for power handling
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
and various smaller updates
2022-03-16 20:13:21 +01:00
b0dadf9bb7 Merge remote-tracking branch 'origin/develop' into mueller/master
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-16 19:56:52 +01:00
bbf3a4df91 Merge remote-tracking branch 'origin/develop' into mueller/system-subsystems
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-16 19:56:39 +01:00
1b2060694b pass switch type instead of uint8_t
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-16 19:21:17 +01:00
1edfc48acf small form changes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-16 18:45:11 +01:00
b0b2854d44 added ploc helper objects 2022-03-16 17:00:07 +01:00
8bf91f2645 ploc handler wip
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-16 12:36:05 +01:00
dc7c48d211 tmtc
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-16 09:04:56 +01:00
595b9aff6c flash write wip 2022-03-16 09:01:36 +01:00
38e8c4f035 disable init switches cfg
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-15 19:29:04 +01:00
037d68587b Merge pull request 'Update FSFW version' (#182) from mueller/update-fsfw-version-handling into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #182
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-03-14 18:58:32 +01:00
f8f7848200 run generator scripts 2022-03-14 18:43:16 +01:00
08a1101000 use develop Object Factory
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-14 17:55:02 +01:00
197d1a4ce0 update obsw.cpp file
Some checks are pending
EIVE/eive-obsw/pipeline/head Build started...
2022-03-14 17:53:48 +01:00
0063ce0ccd update FSFW and related version handling 2022-03-14 17:52:31 +01:00
8e3f40a780 Merge remote-tracking branch 'origin/develop' into mueller/system-subsystems
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-14 17:48:20 +01:00
a362e71388 more useful PCDU printout
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-14 17:41:06 +01:00
1a0f9164ef Add Latchup print commands
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-14 14:46:26 +01:00
9fc1e57943 fixed conflicts 2022-03-14 14:35:07 +01:00
79d2ae837c fixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-14 11:04:52 +01:00
f3bf1a6085 tmtc update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-14 10:04:28 +01:00
bfb9985a46 added periodic HK subscription for PDU sets
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-14 09:42:46 +01:00
6cc6870934 enable both boards
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-14 09:39:28 +01:00
819f5f3680 Merge remote-tracking branch 'origin/develop' into mueller/master 2022-03-14 09:39:13 +01:00
4415cb4eda make SW more robust 2022-03-14 09:38:58 +01:00
e8ced3c4c4 Merge pull request 'meier/coreHk' (#181) from meier/coreHk into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #181
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2022-03-14 09:12:55 +01:00
fb162e3332 tmtc update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-13 21:37:06 +01:00
27063f102b initialization of core pool variables
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-13 18:29:14 +01:00
d99825e20e core housekeeping 2022-03-13 16:32:40 +01:00
c3115fc974 fixed em tcf port 2022-03-13 16:31:30 +01:00
a50be52f50 Merge pull request 'update cp script to allow copying multiple files' (#179) from mueller/update-cp-script into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #179
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-03-11 17:35:56 +01:00
b863dfb981 Merge pull request 'q7s-port.sh: Make FM default' (#180) from mueller/q7s-port-make-fm-default into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #180
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-03-11 17:35:09 +01:00
245e3a0ff7 q7s-port.sh: Make FM default
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-11 15:19:52 +01:00
4c7b527735 q7s-port.sh: Make FM default
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-11 15:19:18 +01:00
99fa736947 update cp script to allow copying multiple files
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-11 15:05:30 +01:00
cbb8b6e16b update cp script to allow copying multiple files
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-11 15:04:52 +01:00
3aa641f05c extend q7s-port script
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-11 14:47:48 +01:00
4ca4db621a extend q7s-port script
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-11 14:47:23 +01:00
0587295c1b Merge branch 'mueller/master' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into mueller/master
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-11 14:34:14 +01:00
47beaad58c Merge branch 'mueller/system-subsystems' into mueller/master 2022-03-11 14:34:10 +01:00
dd37f90b47 update for gen scripts, small fixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-11 14:33:09 +01:00
fec6cc3ea9 more docs
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-10 11:10:42 +01:00
8c41669d1f docs
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-10 11:05:43 +01:00
3cfb58d681 started integrating new base obj into sus assembly
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-10 11:02:07 +01:00
1742371c14 created new dual lane assembly base
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-10 10:54:27 +01:00
bf8a76c1f5 Merge branch 'mueller/system-subsystems' into mueller/master
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-10 10:05:56 +01:00
03aba8b080 fixes where FSFW version is used
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-10 10:04:26 +01:00
1dcf34f3ba small fsfw update
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-10 09:59:25 +01:00
662e8cae17 fsfw update
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-10 09:56:31 +01:00
6a59f6338c Merge remote-tracking branch 'origin/develop' into mueller/system-subsystems
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-10 09:48:56 +01:00
3f54a3a5a5 fsfw update
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-10 09:48:01 +01:00
406f44ae26 update for version handling
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-09 19:26:49 +01:00
85372a10c8 fsfw and tmtc update
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-09 19:12:08 +01:00
62348bb37d reworked fsfw version handling
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-09 19:05:54 +01:00
d836f6ea10 small tweaks
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-09 18:21:05 +01:00
636dbda36b Merge pull request 'Catch2 hotfix' (#177) from mueller/suppress-catch2-warning into develop
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #177
Reviewed-by: Jakob.Meier <meierj@irs.uni-stuttgart.de>
2022-03-09 10:47:58 +01:00
bfc8d8a7c4 fixes some issues
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-03-09 10:14:59 +01:00
8cf3220cd0 added status message
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-09 09:36:52 +01:00
39b4393b13 suppress Catch2 warning
Some checks are pending
EIVE/eive-obsw/pipeline/head Build queued...
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-09 09:27:16 +01:00
95e694d01a add quiet flag
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-08 13:08:50 +01:00
29f0c5b8f6 Merge branch 'mueller/hotfixes' into mueller/system-subsystems
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-08 12:03:05 +01:00
3dbf66383a minor fixes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-08 11:57:27 +01:00
ea49e3b8cd Merge branch 'mueller/system-subsystems' into mueller/master
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-08 10:37:12 +01:00
b2ad33a1c6 Merge remote-tracking branch 'origin/develop' into mueller/system-subsystems
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-08 10:35:03 +01:00
b9c1523e81 bump version
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-08 10:28:07 +01:00
45dff6b920 Merge branch 'mueller/system-subsystems' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into mueller/system-subsystems
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-08 10:17:35 +01:00
b66b1e0fff use new version getter function 2022-03-08 10:17:24 +01:00
db1a4267bb Merge branch 'develop' into mueller/system-subsystems
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-08 10:14:47 +01:00
84dead546c name fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-08 09:54:02 +01:00
124703aa99 Merge branch 'mueller/additional-gcc-warnings' into mueller/system-subsystems 2022-03-08 09:53:18 +01:00
e2ad666d07 Merge branch 'mueller/additional-gcc-warnings' into mueller/system-subsystems
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-08 09:49:16 +01:00
39c47a1abf Merge branch 'mueller/additional-gcc-warnings' into mueller/system-subsystems
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-08 09:44:38 +01:00
9ab8188034 Merge branch 'develop' into mueller/system-subsystems
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-08 08:53:10 +01:00
62229cb999 bugfixes for NORMAL to OFF transition
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-07 18:39:33 +01:00
597ab9c74c update event list again
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-07 17:10:30 +01:00
b9139d5c40 update event list 2022-03-07 17:03:08 +01:00
d262b8ab8b reattempt power switching at least once
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-07 16:47:15 +01:00
e678b53452 switch initialization is now optional (default on)
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-07 15:55:26 +01:00
ba5829a070 Merge remote-tracking branch 'origin/develop' into mueller/master
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-07 15:47:01 +01:00
a2fee43c8c Merge remote-tracking branch 'origin/develop' into mueller/system-subsystems
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-07 15:44:18 +01:00
a1ea5db4f0 improved preproc handling in obj factory
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-07 15:27:21 +01:00
b5660d582e update switch initializer
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-07 14:56:21 +01:00
f83153934c command init switch state
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-07 14:46:46 +01:00
b53900071c subsystem ID bugfix
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-07 13:20:17 +01:00
d5c755a331 update events and objects
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-07 11:36:40 +01:00
970b8c33e5 Merge remote-tracking branch 'origin/develop' into mueller/system-subsystems
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-07 11:35:28 +01:00
59b89b730d bump fsfwgen dependency 2022-03-07 11:34:32 +01:00
debc72014a regenerate object and events
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-07 11:08:50 +01:00
32def71502 first version of ACS board ASS working
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
- Testes transition OFF to NORMAL for A side
- Refactored power switching so it can be used by SUS ass as well
- Generate events for sending switch command
- Generate event if switch state changes
- Deny Q7S switch commanding
2022-03-05 03:02:09 +01:00
cbb8103278 some more bugfixes
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-04 18:33:23 +01:00
0904cadde5 continued ACS board assembly 2022-03-04 18:12:16 +01:00
4eb948c5ef start acs task
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-04 16:03:57 +01:00
bb99c195e9 fsfw update
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-04 15:33:18 +01:00
ffe1fd9af4 Merge branch 'mueller/plpcdu' into mueller/master 2022-03-04 15:33:08 +01:00
a0897c3afb Merge remote-tracking branch 'origin/develop' into mueller/master
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-04 14:55:42 +01:00
fe7394bded Merge branch 'develop' into mueller/system-subsystems
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-04 14:53:58 +01:00
c4ed263e6c Merge branch 'develop' into mueller/system-subsystems
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-04 14:52:12 +01:00
12b0ac5847 comment fix
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-04 14:28:44 +01:00
ad3fcbf0f3 regenerated events 2022-03-04 11:03:03 +01:00
a74c606307 moved some archive files
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-04 10:38:39 +01:00
38e5a97015 regenerate returnvalues 2022-03-04 10:29:56 +01:00
bc310c9dfb regenerated events 2022-03-04 10:26:29 +01:00
60f9bf8fe5 Merge branch 'mueller/system-subsystems' into mueller/master
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-04 09:40:53 +01:00
120153e9c7 added some missing acs board ass code
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-04 00:55:51 +01:00
0595e29100 finished most of sus handler
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-03 20:11:12 +01:00
a7c1dafce5 added mutex protection for power switches
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-03 19:39:36 +01:00
90972cf2f5 Merge branch 'mueller/plpcdu' into mueller/master
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-03 19:11:44 +01:00
cc9a2dab50 Merge remote-tracking branch 'origin/develop' into mueller/master
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-03 19:35:15 +01:00
b44442b282 some fixes for pl pcdu 2022-03-03 19:34:52 +01:00
bf10fe4cdb Merge remote-tracking branch 'origin/develop' into mueller/plpcdu
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-03 19:10:00 +01:00
42d3ebe1b0 update .h.in config
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-03 17:19:23 +01:00
63c4095d4d Merge remote-tracking branch 'origin/develop' into mueller/system-subsystems
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-03-03 15:50:31 +01:00
261b4a808d completed switcher switch case
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
2022-03-03 15:43:21 +01:00
ff0da65662 started SUS assembly
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
fixes for PCDU code and switcher list handling
2022-03-03 15:37:36 +01:00
1586c3e69a submodule update 2022-03-03 13:43:52 +01:00
c7183b730e check children state on implementation
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-03 10:28:55 +01:00
5255e7d2ed finished ACS board ASS
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-03 10:12:59 +01:00
5873371d36 continued acs board assembly
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-02 17:56:54 +01:00
0b200cd296 Merge remote-tracking branch 'origin/develop' into mueller/system-subsystems
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-02 15:09:14 +01:00
566c7913c9 update tmtc submodule
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-02 10:33:27 +01:00
d8240881cc catch exception in NVM param base
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-01 19:43:40 +01:00
e1b8debb27 Merge remote-tracking branch 'origin/develop' into mueller/plpcdu
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-01 18:09:48 +01:00
200b92bb15 Merge remote-tracking branch 'origin/develop' into mueller/master
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-01 18:00:51 +01:00
20f1cb4ef9 deleted old str handler
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-01 17:35:20 +01:00
6e0c708a81 Merge remote-tracking branch 'origin/develop' into mueller/master
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-03-01 17:34:35 +01:00
58e4b9f347 smaller fixes and separate pl pcdu adc speed conf
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-01 17:34:07 +01:00
c569900968 added complete parameter handling for PL PCDU
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-01 16:38:56 +01:00
7ab26362f1 Merge remote-tracking branch 'origin/develop' into mueller/master
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-01 15:30:29 +01:00
be9242b975 Merge branch 'mueller/plpcdu-sus-updates' into mueller/master
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
2022-03-01 15:21:02 +01:00
b98a24373e Merge branch 'mueller/reboot-file-handling' into mueller/master
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-01 15:19:00 +01:00
501b35c20c Merge remote-tracking branch 'origin/develop' into mueller/plpcdu-sus-updates
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop Build started...
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-03-01 15:16:20 +01:00
02d092fb23 use more generic preproc define
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-02-28 23:53:58 +01:00
8ecf7dda9e fix for RPi config
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-02-28 23:46:49 +01:00
dc4c721360 fsfw update
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-02-28 15:37:13 +01:00
e250ddc43e resolve merge conflict
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-02-28 15:20:46 +01:00
cffafb6a6b update gpio API
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-02-28 15:19:13 +01:00
af19d40444 Merge branch 'mueller/plpcdu-sus-updates' into mueller/master
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-02-26 14:11:35 +01:00
77042ef297 fixes all generator scripts
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-02-26 14:08:11 +01:00
a3d806a923 lower HPA lower bound
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-02-25 20:19:23 +01:00
30f4beb5f6 first sucessfull full transition
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-02-25 20:14:59 +01:00
49e58b2365 adc check handling done
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-02-25 19:07:47 +01:00
a5e2208e01 param file init success
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-02-25 17:44:21 +01:00
3f3bbfcde4 small changes to NVM JSON api, regenerate events 2022-02-25 17:29:06 +01:00
006e9e2229 Merge branch 'mueller/reboot-file-handling' into mueller/plpcdu-sus-updates
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-02-25 16:34:10 +01:00
a36a6dc847 need to merge core controller changes as well.. 2022-02-25 16:33:22 +01:00
f6e0487558 added processed values to dataset
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-25 15:28:59 +01:00
9597e3868c separate branch for new system components
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-02-25 11:58:02 +01:00
8a0757dcef Merge branch 'mueller/plpcdu-sus-updates' into mueller/master
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-02-25 11:25:07 +01:00
a85aba92f9 Merge remote-tracking branch 'origin/develop' into mueller/plpcdu-sus-updates
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-25 11:24:01 +01:00
fec2d718af include fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-25 11:17:35 +01:00
07da61d8c5 Merge remote-tracking branch 'origin/develop' into mueller/plpcdu-sus-updates 2022-02-25 11:16:04 +01:00
f959ffb6ee Merge remote-tracking branch 'origin/develop' into mueller/plpcdu-sus-updates
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-24 23:48:09 +01:00
203bb8f618 bugfix obj factory
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-02-24 15:21:58 +01:00
11fb5f9e81 added subsystems
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-02-24 15:21:13 +01:00
6955d4a3d9 added new system folder
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-02-24 12:51:22 +01:00
608d45f055 created back transition handler and channel enum
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-24 12:44:50 +01:00
446940f219 Merge branch 'mueller/rad-sensor-update' into mueller/master
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-02-24 11:55:15 +01:00
42da2f2153 Merge branch 'mueller/rad-sensor-update' into mueller/master
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-02-24 11:52:16 +01:00
be8734dd59 move execute action block
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-02-24 11:17:05 +01:00
20074dcbd7 Merge branch 'mueller/move-deply-handler' into mueller/plpcdu-sus-updates
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-23 19:15:29 +01:00
69e36f4667 cleaned up includes a bit
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-02-23 19:08:47 +01:00
c7c2ae0ca3 Merge remote-tracking branch 'origin/develop' into mueller/plpcdu-sus-updates
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-23 19:02:10 +01:00
75563d107b introduced reboot events
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-02-23 18:50:23 +01:00
37cf7ac01b first implementation finished
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-02-23 17:53:23 +01:00
00eb5a2f1e continued reboot handler
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-02-23 17:36:29 +01:00
a3f63e970f continued reboot handler 2022-02-23 16:19:05 +01:00
dbba10185c bugfix and first reboot handler code 2022-02-23 11:37:13 +01:00
fa93ca4dc0 link libxiphos and use it for reboot
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-02-23 00:03:23 +01:00
61b5836acd reduced ctor
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-02-22 20:48:51 +01:00
d54695faeb Merge branch 'mueller/plpcdu-sus-updates' into mueller/master
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-02-22 20:16:43 +01:00
631a4334f9 Merge branch 'mueller/uart-test-task-update' into mueller/master 2022-02-22 20:16:39 +01:00
fcb9d401f0 fsfw updates
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-22 20:08:35 +01:00
f30005cc49 found bug in srv5 ctor 2022-02-22 20:08:04 +01:00
ceb8911403 better printout
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-22 19:43:59 +01:00
db57a52bf6 another small tweak
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-02-22 19:42:55 +01:00
f8c1e337af Merge remote-tracking branch 'origin/develop' into mueller/master
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-02-22 19:38:04 +01:00
9245815f97 smaller tweaks
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-02-22 19:36:58 +01:00
4da0555bfd moved some more code to mission folder
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-02-22 19:28:04 +01:00
e1f9a4bbd9 additional comment
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-02-22 19:09:10 +01:00
5dcc6e2003 finished ext conv callback
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-22 16:51:26 +01:00
3f318afe2c issues with external pl pcdu conversion
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-22 15:27:47 +01:00
9e3d7bccd9 checking other way to get all data at once 2022-02-22 14:57:44 +01:00
66b579a63a Merge remote-tracking branch 'origin/mueller/create-unique-bin-name' into mueller/plpcdu-sus-updates
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-22 14:17:29 +01:00
495badaef6 fsfw updates
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-22 14:06:48 +01:00
9823823742 added back pl pcdu source compilation
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-22 13:55:49 +01:00
d5e978adc6 Merge branch 'mueller/watchdog-tweaks' into mueller/plpcdu-sus-updates
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-02-22 13:49:09 +01:00
121b4ed974 apply clang format 2022-02-22 13:49:01 +01:00
d35ba2c894 update cmakelists.txt
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-02-22 13:41:35 +01:00
1b97dd4968 changes to .h.in file
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-22 13:33:48 +01:00
3e1cefe5a4 pl pcdu bugfixes
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
2022-02-22 13:32:43 +01:00
8abd6c39e7 Merge branch 'mueller/plpcdu-sus-updates' into mueller/master
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-02-22 13:27:41 +01:00
cad967ec56 files 2022-02-22 13:27:21 +01:00
ee2c194aeb Merge branch 'mueller/plpcdu-sus-updates' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into mueller/plpcdu-sus-updates
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-02-22 13:25:55 +01:00
71d257fd12 small fix 2022-02-22 13:23:06 +01:00
eb1b4f1b05 ping working on Pi now
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-02-22 10:49:00 +01:00
4eb5e8acba something is not working yet
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-02-22 10:39:34 +01:00
ee45418f8c fsfw update
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-02-22 10:18:07 +01:00
0964eb85ec fix for Pi
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-02-22 10:09:18 +01:00
03afb7ed2e Merge branch 'mueller/watchdog-update' into mueller/master
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-02-22 09:55:37 +01:00
292cf8f5e4 new defintions file 2022-02-22 00:22:15 +01:00
aaefe9e1ca update .cproject file and README for watchdog 2022-02-22 00:17:07 +01:00
bd0df3493f update object list
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-21 17:31:56 +01:00
c683097635 continued pl pcdu handler
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-21 16:57:16 +01:00
8953f6f60d added adc and temp handling
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-02-21 15:28:33 +01:00
134b0d3822 Merge remote-tracking branch 'origin/develop' into mueller/plpcdu-sus-updates
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-02-21 14:42:14 +01:00
cd2097850e continuing pl pcdu 2022-02-21 14:42:05 +01:00
aee3f7b075 reverted some changes
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-19 17:17:27 +01:00
4b7a4ebe3a set ID fix
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-19 17:16:27 +01:00
68e1208b7f sus printout runtime configurable
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-19 17:15:38 +01:00
f95abfe032 avoid code duplication
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-19 17:07:11 +01:00
b5cb09edb0 Merge remote-tracking branch 'origin/develop' into mueller/master
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
EIVE/eive-obsw/pipeline/head This commit looks good
2022-02-19 16:48:07 +01:00
4fce0fd0e0 cleaned up config flags a bit
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-19 16:42:22 +01:00
fc3fb70025 some more rtd tests
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-18 18:21:42 +01:00
d9ee7e9025 Merge branch 'mueller/master' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into mueller/master
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-02-18 15:00:35 +01:00
1400945d99 fix compilation for rpi 2022-02-18 14:59:41 +01:00
1e3311f635 first mq args test
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-18 14:52:40 +01:00
2bc717caa0 increase tm funnel queue depth
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-18 14:08:31 +01:00
a6f3b6fc83 print event listeners
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-18 13:40:20 +01:00
bbb07dd459 sus dev handler update
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-18 13:10:39 +01:00
9cae806dd9 pass SUS idx to dev handler
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-18 13:10:24 +01:00
a01ddf6a5b updated PST
Some checks are pending
EIVE/eive-obsw/pipeline/pr-develop Build queued...
2022-02-18 13:10:06 +01:00
16680663fd sus handler update 2022-02-18 12:46:58 +01:00
b6f3b838b7 sun sensors working in test class 2022-02-18 12:46:28 +01:00
6326ac71ca this delay seems to do the job
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-18 11:29:51 +01:00
151621b49a added periodic test capability
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-17 21:17:40 +01:00
ec7d624cca added missing gpioID
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-17 20:53:45 +01:00
029ed7de9b small tweak 2022-02-17 20:53:28 +01:00
ce57f0b0f7 update spi test class 2022-02-17 20:53:06 +01:00
64b4ab3249 added rad sensor enable, obj factory fixes
Some checks failed
EIVE/eive-obsw/pipeline/pr-develop There was a failure building this commit
2022-02-17 20:51:20 +01:00
49decb8e9a added new max1227 helper functions 2022-02-17 20:42:53 +01:00
ae4d1e6db3 update spi test task for PL PCDU
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-17 10:17:46 +01:00
effe461380 nothing works
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-16 21:29:37 +01:00
25b4af1921 more test code
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-16 20:08:10 +01:00
c06ef5d6b5 added more max1227 tests
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-16 18:56:38 +01:00
3387a71399 more sus testing
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-16 15:16:36 +01:00
f5879f5867 possible some fixes in decoder logic
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-15 20:40:44 +01:00
ce41b3316c apply clang format
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-15 17:08:57 +01:00
41b029f12b Merge remote-tracking branch 'origin/develop' into mueller/master
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
2022-02-15 16:54:08 +01:00
c6c9a02f09 small fix
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-02-15 16:50:16 +01:00
82f9d9db4b move generic max1227 code to separate source file
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-02-15 16:44:12 +01:00
a2ec4a4828 add temp read for ext clocked mode
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-02-15 16:40:48 +01:00
666188036f Merge branch 'mueller/plpcdu' into mueller/master
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-02-15 16:07:25 +01:00
4a5b201eba added preprocessor guard to avoid hk spam
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-02-15 14:42:59 +01:00
4af119d904 changed default TMTC handler
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-02-15 14:41:41 +01:00
3a6be97c26 Merge remote-tracking branch 'origin/mueller/sus-update' into mueller/master
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-02-15 11:55:06 +01:00
bc88dfd9a4 small fix GPS dev handler
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-02-15 11:54:03 +01:00
35322add7a fsfw update
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-02-15 11:50:42 +01:00
4c60e54fe7 added empty file for common max 1227 code
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-02-14 19:45:21 +01:00
938c361097 some minor fixes
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-02-14 19:41:03 +01:00
1fd7ba18e9 remove some code
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-02-14 18:47:44 +01:00
a38dd52d7b no perform op
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-02-14 18:42:46 +01:00
84f77642d5 sus 0 on now
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-02-14 18:41:46 +01:00
2a4905a1f7 somethings still wrong
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-02-14 18:38:35 +01:00
1981be6e2f debug output
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-02-14 17:19:03 +01:00
a1409fbcdf update SuS code
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-02-14 17:13:06 +01:00
66bd5f8fbf refactoring
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-02-11 17:38:02 +01:00
602a6cd86e branch 'mueller/master' of https://egit.irs.uni-stuttgart.de/eive/eive-obsw into mueller/master 2022-02-11 17:04:36 +01:00
201bfd1b07 merge 2022-02-11 17:03:20 +01:00
d51e2c19f6 auto formatter
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-02-10 18:05:14 +01:00
773242cc8e transition delay 20 minutes
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-02-10 18:04:53 +01:00
ce566b0fa8 implemented core switch on state machine
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-02-10 18:02:49 +01:00
656eaf4dea apply auto format
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-02-10 16:55:18 +01:00
513c907962 pass comn if to handler 2022-02-10 16:55:06 +01:00
00f411eaca added first startup code version
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-02-10 16:05:36 +01:00
9313fa4639 plpcdu stuff
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-02-10 15:39:54 +01:00
77f718bfce added PL PCDU GPIO names 2022-02-10 14:31:33 +01:00
02a8fd124f added empty PL PCDU handler
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-02-10 14:24:34 +01:00
c20acfc9c8 crc fixes
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-01-13 16:32:30 +01:00
5634f15293 fix ack size
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
2022-01-13 14:14:33 +01:00
1133ea08c8 ploc mpsoc handler improved tc mem read
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-01-11 17:58:59 +01:00
f0bf743f88 improved sequence count 2022-01-11 12:56:02 +01:00
0f0f5e2fcb mpsoc sequence count restructured 2022-01-10 16:18:18 +01:00
45c7f9555d flash write wip 2022-01-07 09:50:04 +01:00
f8eebe2e7d flash write wip
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
2022-01-07 09:48:56 +01:00
996a8a226e flash write wip 2022-01-06 18:05:21 +01:00
7fae7afdf6 removed unsued variable 2022-01-06 10:22:18 +01:00
b0df5b9439 flash close command 2022-01-06 10:12:08 +01:00
305e63cf4e mpsoc flash fopen command 2022-01-05 11:26:01 +01:00
ee0d3bb446 Merge branch 'meier/startracker' into meier/plocMPSoC 2022-01-03 09:14:42 +01:00
632759bf8a improvements in ploc mpsoc handler 2022-01-03 08:01:55 +01:00
743 changed files with 49232 additions and 34510 deletions

1
.gitignore vendored
View File

@ -1,4 +1,5 @@
/build*
/cmake-build*
# Eclipse
.settings

11
.gitmodules vendored
View File

@ -1,6 +1,3 @@
[submodule "etl"]
path = thirdparty/etl
url = https://github.com/ETLCPP/etl.git
[submodule "arduino"]
path = arduino
url = https://egit.irs.uni-stuttgart.de/eive/eive_arduino_interface.git
@ -14,7 +11,7 @@
path = thirdparty/lwgps
url = https://github.com/rmspacefish/lwgps.git
[submodule "generators/fsfwgen"]
path = generators/fsfwgen
path = generators/deps/fsfwgen
url = https://egit.irs.uni-stuttgart.de/fsfw/fsfw-gen.git
[submodule "thirdparty/arcsec_star_tracker"]
path = thirdparty/arcsec_star_tracker
@ -22,3 +19,9 @@
[submodule "thirdparty/json"]
path = thirdparty/json
url = https://github.com/nlohmann/json.git
[submodule "thirdparty/rapidcsv"]
path = thirdparty/rapidcsv
url = https://github.com/d99kris/rapidcsv.git
[submodule "thirdparty/gomspace-sw"]
path = thirdparty/gomspace-sw
url = https://egit.irs.uni-stuttgart.de/eive/gomspace-sw.git

474
CHANGELOG.md Normal file
View File

@ -0,0 +1,474 @@
Change Log
=======
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](http://keepachangelog.com/).
The [milestone](https://egit.irs.uni-stuttgart.de/eive/eive-obsw/milestones)
list yields a list of all related PRs for each release.
Starting at v2.0.0, the following changes will consitute of a breaking
change warranting a new major release:
- The TMTC interface changes in any shape of form.
- The behavour of the OBSW changes in a major shape or form relevant
for operations
# [unreleased]
# [v1.26.0] 2023-02-08
eive-tmtc v2.12.1
## Changed
### ACS
- Readded calibration matrices for MGM calibration.
- Added calculation of satellite velocity vector from GPS position data
- Added detumble mode using GYR values
- Added inertial pointing mode
- Added nadir pointing mode
- Added ground station target mode
- Added antistiction for RWs
- Added `sunTargetSafe` differentiation for LEOP
- Added check for existance of `SD_0_SKEWED_PTG_FILE` and `SD_1_SKEWED_PTG_FILE` to determine
which `sunTargetSafe` to use
- Added `gpsVelocity` and `gpsPosition` to `gpsProcessed`
- Removed deprecated `OutputValues`
- Added `HasParametersIF` to `AcsParameters`
- Added `ReceivesParameterMessagesIF` and `ParameterHelper` to `AcsController`
- Updated `AcsParameters` with actual values and changed structure
- Sun vector model and magnetic field vector model calculations are always executed now
- `domainId` is now used as identifier for parameter structs
- Changed onboard GYR value handling from deg/s to rad/s
## Fixed
- Single sourcing the version information into `CMakeLists.txt`. The `git describe` functionality
is only used to retrieve the git SHA hash now. Also removed `OBSWVersion.h` accordingly.
- Build system: Fixed small bug, where the version itself was
stored as the git SHA hash in `commonConfig.h`. This will be
an empty string now for regular versions.
- Bump FSFW for important fix in PUS mode service.
### ACS
- Bugfixes in 'SensorProcessing' where previously MGM values would be calibrated before being
transformed in body RF. However, the calibration values are in the body RF. Also fixed the
validity flag of 'mgmVecTotDerivative'.
- Fixed calculation of model sun vector
- Fixed calculation of model magnetic field vector
- Fixed MEKF algorithm
- Fixed several variable initializations
- Fixed several variable types
- Fixed use of `sunMagAngleMin` for safe mode
- Fixed MEKF not using correct `sampleTime`
- Fixed assignment of `SUS0` and `SUS6` calibration matrices due to wiring being mixed up
- Various smaller bugfixes
# [v1.25.0] 2023-02-06
eive-tmtc version: v2.12.0
## Changed
- Updated Subsystem mode IDs to avoid clashes with regular device handler modes.
## Fixed
- `GpsHyperionLinuxController`: Fix `gpsd` polling by continuously calling `gps_read` in one cycle
until it does not have any data left anymore. Also, the data is now polled in a permanent loop,
where controller handling is done on 0.2 second timeouts.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/368
# [v1.24.0] 2023-02-03
- eive-tmtc v2.10.0
- `AcsSubsystem`: OFF, SAFE and DETUMBLE mode were tested. Auto-transitions SAFE <-> DETUMBLE tested
as well. Other modes still need to be tested.
## Fixed
- `AcsController`: Parameter fix in `DetumbleParameter`.
- Set GPS set entries to invalid on MODE_OFF command.
- Bump FSFW for bugfix in `setNormalDatapoolEntriesInvalid` where the validity was not set to false
properly
- Fixed usage of uint instead of int for commanding MTQ. Also fixed the range in which the ACS Ctrl
commands the MTQ to match the actual commanding range.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/363
- Regression: Revert swap of SUS0 and SUS6. Those devices are on separate power lines. In a
future fix, the calibration matrices of SUS0 and SUS6 will be swapped.
## Changed
- Update ACS scheduling to represent the actual ACS design. There is one ACS PST now for all
timing sensitive ACS operations. In the debug builds, the new ACS polling sequence table
will have a period of 0.6 seconds, but will remain 0.4 seconds for the release build.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/365
- `ACS::SensorValues` is now an ACS controller member to reduce the risk of stack overflow.
- ACS Subsystem Sequence Mode IDs updated.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/365
TMTC PR: https://egit.irs.uni-stuttgart.de/eive/eive-tmtc/pulls/130
- Update and tweak ACS subsystem to represent the actual ACS design
- Event handling in the ACS subsystem for events triggered by the ACS controller.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/365
# [v1.23.1] 2023-02-02
TMTC rev: 15adb9bf2ec68304a4f87b8dd418c1a8353283a3
## Fixed
- Bugfix in FSFW where the sequence flags of the PUS packets were set to continuation segment (0b00)
instead of unsegmented (0b11).
- Bugfix in FSFW where the MGM RM3100 value Z axis data was parse incorrectly.
PR: https://egit.irs.uni-stuttgart.de/eive/fsfw/pulls/123
# [v1.23.0] 2023-02-01
TMTC version: v2.9.0
## Changed
- Bumped FSFW to include improvements and bugfix for Health Service. The health service now
supports the announce all health info command.
PR: https://egit.irs.uni-stuttgart.de/fsfw/fsfw/pulls/725
## Fixed
- Bumped FSFW to include fixes in the time service.
PR: https://egit.irs.uni-stuttgart.de/fsfw/fsfw/pulls/726
- The CCSDS handler starts the transmitter timer each time it is commanded to MODE_ON and times
out the timer when the handler is commanded to MODE_OFF
- If the timer is timed out the CCSDS handler will disable the TX clock which will cause the
syrlinks to got to standby mode
- PDEC handler now parses the FAR register also in interrupt mode
# [v1.22.1] 2023-01-30
## Changed
- Updated FSFW to include addition where the `SO_REUSEADDR` option is set
on the TCP server, which should improve its ergonomics.
# [v1.22.0] 2023-01-28
TMTC version: v2.6.1
## Added
- First COM subsystem implementation. It mirrors the Syrlinks mode/submodes but also takes
care of commanding the CCSDS handler. It expects the Syrlinks submodes as mode commands.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/358
- The CCSDS handler has has a new submode (3) to configure the default datarate.
- Default datarate parameter commanding moved to COM subsystem.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/358
# [v1.21.0] 2023-01-26
TMTC version: v2.5.0
Syrlinks PR: PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/353
## Fixed
- The `OBSW_SYRLINKS_SIMULATED` flag is set to 0 for for both EM and FM.
- MGM4 handling in ACS sensor processing: Bugfix in `mulScalar` operation
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/354
- Subsystem ID clash: CORE subsystem ID was the same as Syrlinks subsystem ID.
## Changed
- Startracker temperature set and PCDU switcher set are diagnostic now
- `SyrlinksHkHandler` renamed to `SyrlinksHandler` to better reflect that it does more than
just HK and is also responsible for setting the TX mode of the device.
- `SyrlinksHandler`: Go to startup immediately because the Syrlinks device should always be on
by default.
- `SyrlinksHandler`: Go to normal mode at startup.
## Added
- The Syrlinks handler has submodes for the TX mode now: RX Only (0), RX and TX default
datarate (1), RX and TX Low Rate (2), RX and TX High Rate (3) and TX Carrier Wave (4).
The submodes apply for both ON and NORMAL mode. The default datarate can be updated using
a parameter command (domain ID 0 and unique ID 0) with value 0 for low rate and 1 for high rate.
- The Syrlinks handler always sets TX to standby when switching off
- The Syrlinks handler triggers a new TX_ON event when the transmitter was switched on successfully
and a TX_OFF event when it was switched off successfully.
- Startracker temperature set and PCDU switcher set are diagnostic now
- The CCSDS handler can accept mode commands now. It accepts ON and OFF commands. Furthermore
it has a submode for low datarate (1) and high datarate (2) for the ON command.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/352
# [v1.20.0] 2023-01-24
## Added
- The Q7S SW now checks for a file named `boot_delay_secs.txt` in the home directory.
If it exists and the file is empty, it will delay for 6 seconds before continuing
with the regular boot. It can also try to read delay seconds from the file.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/340.
- Basic TCS Subsystem component.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/319
- Expose base set of STR periodic housekeeping packets
## Changed
- Moved some PDEC/PTME configuration to `common/config/eive/definitions.h`
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/319
- The ACS Controller Gyro Sets (raw and processed) and the MEKF dataset are diagnostics now.
- Bumped FSFW for Service 11 improvement which includes size and CRC check for contained TC
- Syrlinks module now always included for both EM and FM
- SA Deployment: Allow specifying the switch interval and the initial channel. This allows testing
the new deployment procedure where each channel is burned for half of the whole burn duration.
It also allows burning only one channel for the whole burn duration. The autonomous mechanism
was adapted to burn each channel for half of the burn time by default.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/347
TMTC PR: https://egit.irs.uni-stuttgart.de/eive/eive-tmtc/pulls/127
- `Max31865RtdLowlevelHandler.cpp`: For each RTD device, the config is now re-written before
every read. This seems to fix some issue with invalid temperature sensor readings.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/345
## Fixed
- `GyroADIS1650XHandler`: Updated handler to determine correct dynamic range from `RANG_MDL`
register readout. This is because ADIS16505-3BMLZ devices are used on the ACS board and the
previous range setting was wrong. Also fixed a small error properly set internal state
on shut-down.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/342
- 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
and L3GD20 sensors.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/346
# [v1.19.0] 2023-01-10
## Changed
- 5V stack is now off by default
## Fixed
- PLOC SUPV: Minor adaptions and important bugfix for UART manager
- Allow cloning and building the hosted OBSW version without proprietary libraries,
which also avoids the need to have a Gitea account.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/337
## Added
- First version of ACS controller
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/329
- Allow commanding the 5V stack internally in software
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/334
- Add automatic 5V stack commanding for all connected devices
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/335
# [v1.18.0] 2022-12-01
## Changed
- PLOC Supervisor: Changes baudrate to 921600
- Renamed `/dev/ul-plsv` to `/dev/ploc_supv`, is not a UART lite anymore
- Renamed `/dev/i2c_eive` to `/dev/i2c_pl` and `/dev/i2c-2` to `/dev/i2c_ps`.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/328
# [v1.17.0] 2022-11-28
## Added
- PLOC Supervisor Update: Update SW to use newest PLOC SUPV version by TAS
PR 1: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/316
PR 2: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/324
PR 3: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/326
# [v1.16.0] 2022-11-18
- It is now possible to compile Linux components for the hosted build conditionally
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/322
- ACS Subsystem. PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/231
- Payload Subsystem. PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/231
- Add IRQ mode for PDEC handler. PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/310
- Extended TM funnels to allow multiple TM recipients.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/312
- DHB: Transitions to normal mode now possible directly, which simplifies subsystem implementations
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/313
- MAX3185 Low Level Handler and Device Handler: Simplifications and bugfixes to allow switching
off without triggering unrequested replies
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/313
- Add remaining missing TMP1075 device handlers.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/318
# [v1.15.0] 2022-10-27
- Consistent device file naming
- Remove rad sensor from EM build, lead to weird bugs on EM which
prevented `xsc_boot_copy` from working properly
- CFDP closure handling is now working
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/307
- Safety mechanism for SD card handling on graceful reboots
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/308
- Solar Array Deployment handler update
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/305
- IMTQ updates as preparation for ACS controller expansion
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/306
- P60 Module: Reduce number of set IDs, use same set IDs for core, auxiliary
and config HK set across the three PCDU modules
# [v1.14.1] 11.10.2022
- Various bugfixes and regression fixes
- General file handling at program initialization now works properly again
- Scratch buffer preferred SD card handling works again
- Use scoped locks in TCS controller to avoid deadlocks
# [v1.14.0] 10.10.2022
- Provide full SW update capability for the OBSW.
This includes very basic CFDP integration, a software update
procedure specified in detail in the README and some high level
commands to make this easier for operators.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/302
- Update for FSFW: `HasReturnvaluesIF` class replaced by namespace `returnvalue`
- Add some GomSpace clients as a submodule dependency. Use this dependency to deserialize the
GomSpace TM tables
- Add API to retrieve GomSpace device parameter tables
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/287
- Add API to save and load GomSpace config tables
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/293
- Increase number of allowed consescutive action commands from 3 to 16
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/294
- Fix for EM SW: Always create ACS Task
- Added Scex device handler and Scex uart reader
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/303
- ACS Subsystem. PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/228
# [v1.13.0] 24.08.2022
- Added first version of ACS Controller with gathers MGM data in a set
- Some tweaks for IMTQ handler
# [v1.12.1] 05.07.2022
- Disable periodic TCS controller HK generation by default
# [v1.12.0] 04.07.2022
## Added
- Dummy components to run OBSW without relying on external hardware
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/266
- Basic Thermal Controller
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/266
- PUS11 TC scheduler
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/259
- Regular reboot command
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/242
- Commands for individual RTD devices
PR: https://egit.irs.uni-stuttgart.de/eive/eive-tmtc/pulls/84
- `RwAssembly` added to system components. Assembly works in principle,
issues making 4 consecutives RWs communicate at once..
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/224
- Adds a yocto helper script which is able to install the release build binaries
(OBSW and Watchdog) into the `q7s-yocto` repository as long as the `q7s-package`
or `q7s-yocto` repo was cloned in the same directory the EIVE OBSW repo.
This makes updating the root filesystem a lot easier. It also creates and installs a
version file.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/248
- Create the generic image by default for the Q7S build. The unique binary with the
username appended at the end is created as a side-product now
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/248
## Fixed
- `q7s-cp.py` bugfix
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/256
- Generator scripts output now produce platform-independent artifacts
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/267
### Heater
- Adds `HealthIF` to heaters. Heaters are own system object with queues now which allows to set them faulty.
- SW will attempt to shut down heaters which are on but marked faulty
- Some simplifications for `HeaterHandler`, use `std::vector` instead of `std::unordered_map` for primary container. Using the heater indexes 0 to 7 allows to use natural array indexing
- Some additional input sanity checks in `executeAction`
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/236
## Changed
- CCSDS handler improvements
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/268
- Build unittest as default side product of hosted builds
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/244
- Let CI/CD build host build and run unittest side product in same step
- Catch2 pre-installed in CI/CD docker container, Xiphos SDK installed in CI/CD docker
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/247
- Sun Sensors have names denoting their location and poiting in the satellite now
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/245
- Better RTD names denoting their purpose (and location consequently)
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/246
# [v1.11.0]
## Fixed
- Host build working again
## Added
- Custom Syrlinks FDIR which disabled most of the default FDIR functionality
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/232
- Custom Gomspace FDIR which disabled most of the default FDIR functionality
- Custom Syrlinks FDIR which disabled most of the default FDIR functionality
## Changed
- PCDU handler only called once in PST, but can handle multiple messages now
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/221
Bugfix: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/235
- Update rootfs base of Linux, all related OBSW changes
- Add `/usr/local/bin` to PATH. All shell scripts are there now
- Add Syrlinks and TMP devices to Software by default
- Update GPS Linux Hyperion Handler to use socket interface. Still allows switching
back to SHM interface, but the SHM interface is a possible cause of SW crashes
- Updated code for changed FSFW HAL GPIO API: `readGpio` prototype has changed
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/240 and
https://egit.irs.uni-stuttgart.de/eive/fsfw/pulls/76
### GPS
PRs: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/239
- Rename GPS device to `/dev/gps0`
- Use gpsd version 3.17 now. Includes API changes
### EM and FM splitup & Build Workflow improvements
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/238
- Split up `bsp_q7s` in separate EM and FM build with module loading set to different
default values. The EM object factory is unique which allows building a parallel setup
with dummy components
- All major BSPs have an own `OBSWConfig.h.in` file which simplifies the file significantly
- Renamed Q7S primary build folders:
- `cmake-build-debug-q7s` for primary development build
- `cmake-build-release-q7s` for primary release build
- `cmake-build-debug-q7s-em` for primary development build of the EM software
- `cmake-build-release-q7s-em` for primary release build of the EM software
- Refactored Q7S helper script handling. It is now intended and preferred to copy the environment
script to the same folder level as the `eive-obsw` and source it. This will also
add the path containing the shell helper scripts to `PATH`
- The actual helper shell scripts were renamed as well to `q7s-<buildSystem>-<buildType>.sh`
# [v1.10.1]
Version bump
# [v1.10.0]
For all releases equal or prior to v1.10.0,
see [milestones](https://egit.irs.uni-stuttgart.de/eive/eive-obsw/milestones)

View File

@ -1,53 +1,200 @@
################################################################################
# ##############################################################################
# CMake support for the EIVE OBSW
#
#
# Author: R. Mueller
################################################################################
# ##############################################################################
################################################################################
# ##############################################################################
# Pre-Project preparation
################################################################################
# ##############################################################################
cmake_minimum_required(VERSION 3.13)
set(OBSW_VERSION_MAJOR 1)
set(OBSW_VERSION_MINOR 26)
set(OBSW_VERSION_REVISION 0)
# set(CMAKE_VERBOSE TRUE)
set(CMAKE_SCRIPT_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
option(EIVE_ADD_ETL_LIB "Add ETL library" ON)
option(EIVE_ADD_JSON_LIB "Add JSON library" ON)
option(EIVE_SYSROOT_MAGIC "Perform sysroot magic which might not be necessary" OFF)
option(EIVE_CREATE_UNIQUE_OBSW_BIN "Append username to generated binary name" ON)
option(
EIVE_HARDCODED_TOOLCHAIN_FILE
"\
For Linux Board Target BSPs, a default toolchain file will be set. Should be set to OFF \
if a different toolchain file is set externally"
ON)
if(NOT FSFW_OSAL)
set(FSFW_OSAL linux CACHE STRING "OS for the FSFW.")
set(FSFW_OSAL
linux
CACHE STRING "OS for the FSFW.")
endif()
if(TGT_BSP)
if(TGT_BSP MATCHES "arm/raspberrypi" OR TGT_BSP MATCHES "arm/beagleboneblack")
option(LINUX_CROSS_COMPILE ON)
option(EIVE_BUILD_GPSD_GPS_HANDLER "Build GPSD dependent GPS Handler" OFF)
elseif(TGT_BSP MATCHES "arm/q7s")
option(EIVE_BUILD_GPSD_GPS_HANDLER "Build GPSD dependent GPS Handler" ON)
endif()
if(TGT_BSP MATCHES "arm/q7s"
OR TGT_BSP MATCHES "arm/raspberrypi"
OR TGT_BSP MATCHES "arm/beagleboneblack")
option(LINUX_CROSS_COMPILE ON)
endif()
if(TGT_BSP MATCHES "arm/raspberrypi" OR TGT_BSP MATCHES "arm/beagleboneblack")
option(EIVE_BUILD_GPSD_GPS_HANDLER "Build GPSD dependent GPS Handler" OFF)
elseif(TGT_BSP MATCHES "arm/q7s")
option(EIVE_Q7S_EM "Build configuration for the EM" OFF)
option(EIVE_BUILD_GPSD_GPS_HANDLER "Build GPSD dependent GPS Handler" ON)
endif()
option(EIVE_CREATE_UNIQUE_OBSW_BIN "Append username to generated binary name"
ON)
else()
option(EIVE_CREATE_UNIQUE_OBSW_BIN "Append username to generated binary name"
OFF)
endif()
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
# Perform steps like loading toolchain files where applicable.
include(${CMAKE_SCRIPT_PATH}/PreProjectConfig.cmake)
include(PreProjectConfig)
pre_project_config()
# Project Name
project(eive-obsw ASM C CXX)
################################################################################
# Pre-Sources preparation
################################################################################
project(eive-obsw)
# Specify the C++ standard
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED True)
include(EiveHelpers)
option(EIVE_ADD_ETL_LIB "Add ETL library" ON)
option(EIVE_ADD_JSON_LIB "Add JSON library" ON)
set(OBSW_MAX_SCHEDULED_TCS 500)
if(EIVE_Q7S_EM)
set(OBSW_Q7S_EM
1
CACHE STRING "Q7S EM configuration")
set(INIT_VAL 0)
else()
set(OBSW_Q7S_EM
0
CACHE STRING "Q7S EM configuration")
set(INIT_VAL 1)
endif()
set(OBSW_ADD_MGT
${INIT_VAL}
CACHE STRING "Add MGT module")
set(OBSW_ADD_BPX_BATTERY_HANDLER
${INIT_VAL}
CACHE STRING "Add MGT module")
set(OBSW_ADD_STAR_TRACKER
${INIT_VAL}
CACHE STRING "Add Startracker module")
set(OBSW_ADD_SUN_SENSORS
${INIT_VAL}
CACHE STRING "Add sun sensor module")
set(OBSW_ADD_SUS_BOARD_ASS
${INIT_VAL}
CACHE STRING "Add sun sensor board assembly")
set(OBSW_ADD_ACS_BOARD
${INIT_VAL}
CACHE STRING "Add ACS board module")
set(OBSW_ADD_GPS_CTRL
${INIT_VAL}
CACHE STRING "Add GPS controllers")
set(OBSW_ADD_CCSDS_IP_CORES
1
CACHE STRING "Add CCSDS IP cores")
set(OBSW_TM_TO_PTME
1
CACHE STRING "Send telemetry to PTME IP core")
set(OBSW_TC_FROM_PDEC
1
CACHE STRING "Poll telecommand from PDEC IP core")
set(OBSW_ADD_TCS_CTRL
${INIT_VAL}
CACHE STRING "Add TCS controllers")
set(OBSW_ADD_HEATERS
${INIT_VAL}
CACHE STRING "Add TCS heaters")
set(OBSW_ADD_PLOC_SUPERVISOR
${INIT_VAL}
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}
CACHE STRING "Add MPSoC handler")
set(OBSW_ADD_ACS_CTRL
${INIT_VAL}
CACHE STRING "Add ACS controller")
set(OBSW_ADD_RTD_DEVICES
${INIT_VAL}
CACHE STRING "Add RTD devices")
set(OBSW_ADD_RAD_SENSORS
${INIT_VAL}
CACHE STRING "Add Rad Sensor module")
set(OBSW_ADD_PL_PCDU
${INIT_VAL}
CACHE STRING "Add Payload PCDU modukle")
set(OBSW_ADD_SYRLINKS
1
CACHE STRING "Add Syrlinks module")
set(OBSW_ADD_TMP_DEVICES
${INIT_VAL}
CACHE STRING "Add TMP devices")
set(OBSW_ADD_GOMSPACE_PCDU
${INIT_VAL}
CACHE STRING "Add GomSpace PCDU modules")
set(OBSW_ADD_RW
${INIT_VAL}
CACHE STRING "Add RW modules")
set(OBSW_ADD_SCEX_DEVICE
${INIT_VAL}
CACHE STRING "Add Solar Cell Experiment module")
set(OBSW_SYRLINKS_SIMULATED
0
CACHE STRING "Syrlinks is simulated")
# ##############################################################################
# Pre-Sources preparation
# ##############################################################################
# Version handling
set(GIT_VER_HANDLING_OK FALSE)
if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/.git)
determine_version_with_git("--exclude" "docker_*")
set(GIT_INFO
${GIT_INFO}
CACHE STRING "Version information retrieved with git describe")
if(GIT_INFO)
set(GIT_INFO
${GIT_INFO}
CACHE STRING "Version information retrieved with git describe")
# CMakeLists.txt is now single source of information. list(GET GIT_INFO 1
# OBSW_VERSION_MAJOR) list(GET GIT_INFO 2 OBSW_VERSION_MINOR) list(GET
# GIT_INFO 3 OBSW_VERSION_REVISION)
list(LENGTH GIT_INFO LIST_LEN)
if(LIST_LEN GREATER 4)
list(GET GIT_INFO 4 OBSW_VERSION_CST_GIT_SHA1)
endif()
if(NOT OBSW_VERSION_MAJOR)
set(OBSW_VERSION_MAJOR ${OBSW_VERSION_MAJOR_IF_GIT_FAILS})
endif()
if(NOT OBSW_VERSION_MINOR)
set(FSFW_SUBVERSION ${OBSW_VERSION_MINOR_IF_GIT_FAILS})
endif()
if(NOT OBSW_VERSION_REVISION)
set(FSFW_REVISION ${OBSW_VERSION_REVISION_IF_GIT_FAILS})
endif()
set(GIT_VER_HANDLING_OK TRUE)
else()
set(GIT_VER_HANDLING_OK FALSE)
endif()
endif()
if(NOT GIT_VER_HANDLING_OK)
set(OBSW_VERSION_MAJOR ${OBSW_VERSION_MAJOR_IF_GIT_FAILS})
set(OBSW_VERSION_MINOR ${OBSW_VERSION_MINOR_IF_GIT_FAILS})
set(OBSW_VERSION_REVISION ${OBSW_VERSION_REVISION_IF_GIT_FAILS})
endif()
# Set names and variables
set(OBSW_NAME ${CMAKE_PROJECT_NAME})
set(WATCHDOG_NAME eive-watchdog)
@ -55,28 +202,33 @@ set(SIMPLE_OBSW_NAME eive-simple)
set(UNITTEST_NAME eive-unittest)
set(LIB_FSFW_NAME fsfw)
set(LIB_EIVE_MISSION eive-mission)
set(LIB_ETL_NAME etl)
set(LIB_ETL_TARGET etl::etl)
set(LIB_CSP_NAME libcsp)
set(LIB_LWGPS_NAME lwgps)
set(LIB_ARCSEC wire)
set(LIB_GOMSPACE_CLIENTS gs_clients)
set(LIB_GOMSPACE_CSP gs_csp)
set(THIRD_PARTY_FOLDER thirdparty)
set(LIB_CXX_FS -lstdc++fs)
set(LIB_CATCH2 Catch2)
set(LIB_GPS gps)
set(LIB_JSON_NAME nlohmann_json::nlohmann_json)
set(LIB_DUMMIES dummies)
# Set path names
set(FSFW_PATH fsfw)
set(TEST_PATH test/testtasks)
set(TEST_PATH test)
set(UNITTEST_PATH unittest)
set(LINUX_PATH linux)
set(LIB_GOMSPACE_PATH ${THIRD_PARTY_FOLDER}/gomspace-sw)
set(COMMON_PATH common)
set(DUMMY_PATH dummies)
set(WATCHDOG_PATH watchdog)
set(COMMON_CONFIG_PATH ${COMMON_PATH}/config)
set(UNITTEST_CFG_PATH ${UNITTEST_PATH}/testcfg)
set(LIB_EIVE_MISSION_PATH mission)
set(LIB_CSP_PATH ${THIRD_PARTY_FOLDER}/libcsp)
set(LIB_ETL_PATH ${THIRD_PARTY_FOLDER}/etl)
set(LIB_CATCH2_PATH ${THIRD_PARTY_FOLDER}/Catch2)
set(LIB_LWGPS_PATH ${THIRD_PARTY_FOLDER}/lwgps)
@ -84,314 +236,332 @@ set(LIB_ARCSEC_PATH ${THIRD_PARTY_FOLDER}/arcsec_star_tracker)
set(LIB_JSON_PATH ${THIRD_PARTY_FOLDER}/json)
set(FSFW_WARNING_SHADOW_LOCAL_GCC OFF)
set(EIVE_ADD_LINUX_FILES False)
set(EIVE_ADD_LINUX_FILES OFF)
# Analyse different OS and architecture/target options, determine BSP_PATH,
# display information about compiler etc.
include (${CMAKE_SCRIPT_PATH}/HardwareOsPreConfig.cmake)
pre_source_hw_os_config()
if(TGT_BSP)
if(TGT_BSP MATCHES "arm/q7s" OR TGT_BSP MATCHES "arm/raspberrypi"
OR TGT_BSP MATCHES "arm/beagleboneblack" OR TGT_BSP MATCHES "arm/egse"
)
set(FSFW_CONFIG_PATH "linux/fsfwconfig")
if(NOT BUILD_Q7S_SIMPLE_MODE)
set(EIVE_ADD_LINUX_FILES TRUE)
set(ADD_CSP_LIB TRUE)
set(FSFW_HAL_ADD_LINUX ON)
endif()
endif()
if(TGT_BSP MATCHES "arm/raspberrypi" )
# Used by configure file
set(RASPBERRY_PI ON)
set(FSFW_HAL_ADD_RASPBERRY_PI ON)
set(LIBGPS_VERSION_MAJOR 3)
# I assume a newer version than 3.17 will be installed on other Linux board
# than the Q7S
set(LIBGPS_VERSION_MINOR 20)
if(TGT_BSP MATCHES "arm/q7s"
OR TGT_BSP MATCHES "arm/raspberrypi"
OR TGT_BSP MATCHES "arm/beagleboneblack"
OR TGT_BSP MATCHES "arm/egse"
OR TGT_BSP MATCHES "arm/te0720-1cfa")
find_library(${LIB_GPS} gps)
set(FSFW_CONFIG_PATH "linux/fsfwconfig")
if(NOT BUILD_Q7S_SIMPLE_MODE)
set(EIVE_ADD_LINUX_FILES TRUE)
set(EIVE_ADD_LINUX_FSFWCONFIG TRUE)
set(ADD_GOMSPACE_CSP TRUE)
set(ADD_GOMSPACE_CLIENTS TRUE)
set(FSFW_HAL_ADD_LINUX ON)
set(FSFW_HAL_LINUX_ADD_LIBGPIOD ON)
set(FSFW_HAL_LINUX_ADD_PERIPHERAL_DRIVERS ON)
endif()
elseif(UNIX)
set(EIVE_ADD_LINUX_FILES ON)
endif()
if(TGT_BSP MATCHES "arm/egse")
# Used by configure file
set(EGSE ON)
set(FSFW_HAL_LINUX_ADD_LIBGPIOD OFF)
endif()
if(TGT_BSP MATCHES "arm/beagleboneblack")
# Used by configure file
set(BEAGLEBONEBLACK ON)
endif()
if(TGT_BSP MATCHES "arm/q7s")
# Used by configure file
set(XIPHOS_Q7S ON)
endif()
if(TGT_BSP MATCHES "arm/raspberrypi")
# Used by configure file
set(RASPBERRY_PI ON)
set(FSFW_HAL_ADD_RASPBERRY_PI ON)
endif()
if(TGT_BSP MATCHES "arm/egse")
# Used by configure file
set(EGSE ON)
set(FSFW_HAL_LINUX_ADD_LIBGPIOD OFF)
set(OBSW_ADD_STAR_TRACKER 1)
set(OBSW_DEBUG_STARTRACKER 1)
endif()
if(TGT_BSP MATCHES "arm/beagleboneblack")
# Used by configure file
set(BEAGLEBONEBLACK ON)
endif()
if(TGT_BSP MATCHES "arm/q7s")
# Used by configure file
set(XIPHOS_Q7S ON)
set(LIBGPS_VERSION_MAJOR 3)
set(LIBGPS_VERSION_MINOR 17)
endif()
if(TGT_BSP MATCHES "arm/te0720-1cfa")
set(TE0720_1CFA ON)
endif()
else()
# Required by FSFW library
set(FSFW_CONFIG_PATH "${BSP_PATH}/fsfwconfig")
# Required by FSFW library
set(FSFW_CONFIG_PATH "${BSP_PATH}/fsfwconfig")
if(UNIX)
set(EIVE_ADD_LINUX_FILES ON)
endif()
endif()
include(BuildType)
set_build_type()
# Configuration files
configure_file(${COMMON_CONFIG_PATH}/commonConfig.h.in commonConfig.h)
configure_file(${FSFW_CONFIG_PATH}/FSFWConfig.h.in FSFWConfig.h)
configure_file(${FSFW_CONFIG_PATH}/OBSWConfig.h.in OBSWConfig.h)
configure_file(${BSP_PATH}/OBSWConfig.h.in OBSWConfig.h)
if(TGT_BSP MATCHES "arm/q7s")
configure_file(${BSP_PATH}/boardconfig/q7sConfig.h.in q7sConfig.h)
configure_file(${BSP_PATH}/boardconfig/q7sConfig.h.in q7sConfig.h)
elseif(TGT_BSP MATCHES "arm/raspberrypi" OR TGT_BSP MATCHES "arm/egse")
configure_file(${BSP_PATH}/boardconfig/rpiConfig.h.in rpiConfig.h)
configure_file(${BSP_PATH}/boardconfig/rpiConfig.h.in rpiConfig.h)
endif()
configure_file(${WATCHDOG_PATH}/watchdogConf.h.in watchdogConf.h)
# Set common config path for FSFW
set(FSFW_ADDITIONAL_INC_PATHS
"${COMMON_PATH}/config"
${CMAKE_CURRENT_BINARY_DIR}
)
set(FSFW_ADDITIONAL_INC_PATHS "${COMMON_PATH}/config"
${CMAKE_CURRENT_BINARY_DIR})
# Check whether the user has already installed Catch2 first
find_package(Catch2 3)
################################################################################
# ##############################################################################
# Executable and Sources
################################################################################
# ##############################################################################
#global compiler options need to be set before adding executables
# global compiler options need to be set before adding executables
if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
add_compile_options(
"-Wall"
"-Wextra"
"-Wimplicit-fallthrough=1"
"-Wno-unused-parameter"
"-Wno-psabi"
"-Wduplicated-cond" # check for duplicate conditions
"-Wduplicated-branches" # check for duplicate branches
"-Wlogical-op" # Search for bitwise operations instead of logical
"-Wnull-dereference" # Search for NULL dereference
"-Wundef" # Warn if undefind marcos are used
"-Wformat=2" # Format string problem detection
"-Wformat-overflow=2" # Formatting issues in printf
"-Wformat-truncation=2" # Formatting issues in printf
"-Wformat-security" # Search for dangerous printf operations
"-Wstrict-overflow=3" # Warn if integer overflows might happen
"-Warray-bounds=2" # Some array bounds violations will be found
"-Wshift-overflow=2" # Search for bit left shift overflows (<c++14)
"-Wcast-qual" # Warn if the constness is cast away
"-Wstringop-overflow=4"
# -Wstack-protector # Emits a few false positives for low level access
# -Wconversion # Creates many false positives
# -Warith-conversion # Use with Wconversion to find more implicit conversions
# -fanalyzer # Should be used to look through problems
)
# Remove unused sections.
add_compile_options(
"-ffunction-sections"
"-fdata-sections"
)
# Remove unused sections.
add_compile_options("-ffunction-sections" "-fdata-sections")
# Removed unused sections.
add_link_options(
"-Wl,--gc-sections"
)
# Removed unused sections.
add_link_options("-Wl,--gc-sections")
elseif(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
set(COMPILER_FLAGS "/permissive-")
set(COMPILER_FLAGS "/permissive-")
endif()
# Not installed, so use FetchContent to download and provide Catch2
if(NOT Catch2_FOUND)
include(FetchContent)
FetchContent_Declare(
Catch2
GIT_REPOSITORY https://github.com/catchorg/Catch2.git
GIT_TAG v3.0.0-preview4
)
FetchContent_MakeAvailable(Catch2)
#fixes regression -preview4, to be confirmed in later releases
set_target_properties(Catch2 PROPERTIES DEBUG_POSTFIX "")
set_target_properties(Catch2 PROPERTIES EXCLUDE_FROM_ALL "true")
set_target_properties(Catch2WithMain PROPERTIES EXCLUDE_FROM_ALL "true")
endif()
add_library(${LIB_EIVE_MISSION})
add_library(${LIB_DUMMIES})
# Add main executable
add_executable(${OBSW_NAME})
if(EIVE_CREATE_UNIQUE_OBSW_BIN)
set(OBSW_BIN_NAME ${CMAKE_PROJECT_NAME}-$ENV{USERNAME})
else()
set(OBSW_BIN_NAME ${CMAKE_PROJECT_NAME})
set(OBSW_BIN_NAME ${CMAKE_PROJECT_NAME})
if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
set(WARNING_FLAGS
"-Wall"
"-Wextra"
"-Wimplicit-fallthrough=1"
"-Wno-unused-parameter"
"-Wno-psabi"
"-Wduplicated-cond" # check for duplicate conditions
"-Wduplicated-branches" # check for duplicate branches
"-Wlogical-op" # Search for bitwise operations instead of logical
"-Wnull-dereference" # Search for NULL dereference
"-Wundef" # Warn if undefind marcos are used
"-Wformat=2" # Format string problem detection
"-Wformat-overflow=2" # Formatting issues in printf
"-Wformat-truncation=2" # Formatting issues in printf
"-Wformat-security" # Search for dangerous printf operations
"-Wstrict-overflow=3" # Warn if integer overflows might happen
"-Warray-bounds=2" # Some array bounds violations will be found
"-Wshift-overflow=2" # Search for bit left shift overflows (<c++14)
"-Wcast-qual" # Warn if the constness is cast away
"-Wstringop-overflow=4"
# -Wstack-protector # Emits a few false positives for low level access
# -Wconversion # Creates many false positives -Warith-conversion # Use
# with Wconversion to find more implicit conversions -fanalyzer # Should
# be used to look through problems
)
target_compile_options(${OBSW_NAME} PRIVATE ${WARNING_FLAGS})
target_compile_options(${LIB_EIVE_MISSION} PRIVATE ${WARNING_FLAGS})
target_compile_options(${LIB_DUMMIES} PRIVATE ${WARNING_FLAGS})
endif()
set_target_properties(${OBSW_NAME} PROPERTIES OUTPUT_NAME ${OBSW_BIN_NAME})
#watchdog
add_executable(${WATCHDOG_NAME} EXCLUDE_FROM_ALL)
add_subdirectory(${WATCHDOG_PATH})
target_link_libraries(${WATCHDOG_NAME} PUBLIC
${LIB_CXX_FS}
)
target_include_directories(${WATCHDOG_NAME} PUBLIC
${CMAKE_BINARY_DIR}
)
#unittests
add_executable(${UNITTEST_NAME} EXCLUDE_FROM_ALL)
# Watchdog
if(TGT_BSP MATCHES "arm/q7s")
add_executable(${WATCHDOG_NAME})
else()
add_executable(${WATCHDOG_NAME} EXCLUDE_FROM_ALL)
endif()
add_subdirectory(${WATCHDOG_PATH})
target_link_libraries(${WATCHDOG_NAME} PUBLIC ${LIB_CXX_FS})
target_include_directories(${WATCHDOG_NAME} PUBLIC ${CMAKE_BINARY_DIR})
# unittests
if(NOT TGT_BSP)
add_executable(${UNITTEST_NAME})
else()
add_executable(${UNITTEST_NAME} EXCLUDE_FROM_ALL)
endif()
if(EIVE_ADD_ETL_LIB)
add_subdirectory(${LIB_ETL_PATH})
endif()
if(EIVE_ADD_JSON_LIB)
add_subdirectory(${LIB_JSON_PATH})
add_subdirectory(${LIB_JSON_PATH})
endif()
add_subdirectory(thirdparty)
if(EIVE_ADD_LINUX_FILES)
if(TGT_BSP MATCHES "arm/q7s")
add_subdirectory(${LIB_GOMSPACE_PATH})
add_subdirectory(${LIB_ARCSEC_PATH})
add_subdirectory(${LINUX_PATH})
endif()
add_subdirectory(${LINUX_PATH})
endif()
add_subdirectory(${BSP_PATH})
if(ADD_CSP_LIB)
add_subdirectory(${LIB_CSP_PATH})
endif()
add_subdirectory(${COMMON_PATH})
add_subdirectory(${DUMMY_PATH})
add_subdirectory(${LIB_LWGPS_PATH})
add_subdirectory(${FSFW_PATH})
add_subdirectory(${LIB_EIVE_MISSION_PATH})
add_subdirectory(${TEST_PATH})
add_subdirectory(${UNITTEST_PATH})
# This should have already been downloaded by the FSFW Still include it to be
# safe find_package(etl ${FSFW_ETL_LIB_MAJOR_VERSION} CONFIG QUIET) Not
# installed, so use FetchContent to download and provide etl if(NOT etl_FOUND)
message(
STATUS
"No ETL installation was found with find_package. Installing and providing "
"etl with FindPackage")
include(FetchContent)
FetchContent_Declare(
etl
GIT_REPOSITORY https://github.com/ETLCPP/etl
GIT_TAG ${FSFW_ETL_LIB_VERSION})
list(APPEND FSFW_FETCH_CONTENT_TARGETS etl)
# endif()
################################################################################
# Use same Catch2 version as framework
if(NOT (TGT_BSP MATCHES "arm/te0720-1cfa")
AND NOT (TGT_BSP MATCHES "arm/q7s")
AND NOT (TGT_BSP MATCHES "arm/raspberrypi"))
# Check whether the user has already installed Catch2 first
find_package(Catch2 ${FSFW_CATCH2_LIB_MAJOR_VERSION} CONFIG QUIET)
# Not installed, so use FetchContent to download and provide Catch2
if(NOT Catch2_FOUND)
message(
STATUS
"${MSG_PREFIX} Catch2 installation not found. Downloading Catch2 library with FetchContent"
)
include(FetchContent)
FetchContent_Declare(
Catch2
GIT_REPOSITORY https://github.com/catchorg/Catch2.git
GIT_TAG ${FSFW_CATCH2_LIB_VERSION})
list(APPEND FSFW_FETCH_CONTENT_TARGETS Catch2)
endif()
endif()
# The documentation for FetchContent recommends declaring all the dependencies
# before making them available. We make all declared dependency available here
# after their declaration
if(FSFW_FETCH_CONTENT_TARGETS)
FetchContent_MakeAvailable(${FSFW_FETCH_CONTENT_TARGETS})
if(TARGET etl)
add_library(${LIB_ETL_TARGET} ALIAS etl)
endif()
if(TARGET Catch2)
# Fixes regression -preview4, to be confirmed in later releases Related
# GitHub issue: https://github.com/catchorg/Catch2/issues/2417
set_target_properties(Catch2 PROPERTIES DEBUG_POSTFIX "")
set_target_properties(Catch2 PROPERTIES EXCLUDE_FROM_ALL "true")
set_target_properties(Catch2WithMain PROPERTIES EXCLUDE_FROM_ALL "true")
endif()
endif()
# ##############################################################################
# Post-Sources preparation
################################################################################
# ##############################################################################
# Add libraries
target_link_libraries(${LIB_EIVE_MISSION} PUBLIC
${LIB_FSFW_NAME}
${LIB_LWGPS_NAME}
${LIB_OS_NAME}
)
target_link_libraries(${LIB_EIVE_MISSION}
PUBLIC ${LIB_FSFW_NAME} ${LIB_LWGPS_NAME} ${LIB_OS_NAME})
target_link_libraries(${OBSW_NAME} PRIVATE
${LIB_EIVE_MISSION}
)
target_link_libraries(${LIB_DUMMIES} PUBLIC ${LIB_FSFW_NAME} ${LIB_JSON_NAME})
target_link_libraries(${OBSW_NAME} PRIVATE ${LIB_EIVE_MISSION} ${LIB_DUMMIES})
if(TGT_BSP MATCHES "arm/q7s")
target_link_libraries(${LIB_EIVE_MISSION} PUBLIC
${LIB_ARCSEC}
${LIB_GPS}
)
target_link_libraries(${LIB_EIVE_MISSION} PUBLIC ${LIB_GPS} ${LIB_ARCSEC}
${LIB_GOMSPACE_CLIENTS})
endif()
target_link_libraries(${UNITTEST_NAME} PRIVATE
Catch2
${LIB_EIVE_MISSION}
)
target_link_libraries(${UNITTEST_NAME} PRIVATE Catch2 ${LIB_EIVE_MISSION}
rapidcsv ${LIB_DUMMIES})
if(TGT_BSP MATCHES "arm/egse")
target_link_libraries(${OBSW_NAME} PRIVATE
${LIB_ARCSEC}
)
target_link_libraries(${OBSW_NAME} PRIVATE ${LIB_ARCSEC})
endif()
if(ADD_CSP_LIB)
target_link_libraries(${OBSW_NAME} PRIVATE
${LIB_CSP_NAME}
)
endif()
if(EIVE_ADD_ETL_LIB)
target_link_libraries(${LIB_EIVE_MISSION} PUBLIC
${LIB_ETL_NAME}
)
target_link_libraries(${LIB_EIVE_MISSION} PUBLIC ${LIB_ETL_TARGET})
endif()
if(EIVE_ADD_JSON_LIB)
target_link_libraries(${LIB_EIVE_MISSION} PUBLIC
${LIB_JSON_NAME}
)
target_link_libraries(${LIB_EIVE_MISSION} PUBLIC ${LIB_JSON_NAME})
endif()
target_link_libraries(${LIB_EIVE_MISSION} PUBLIC
${LIB_CXX_FS}
)
target_link_libraries(${LIB_EIVE_MISSION} PUBLIC ${LIB_CXX_FS})
# Add include paths for all sources.
target_include_directories(${LIB_EIVE_MISSION} PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}
${FSFW_CONFIG_PATH}
${CMAKE_CURRENT_BINARY_DIR}
${LIB_ARCSEC_PATH}
)
target_include_directories(
${LIB_EIVE_MISSION} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} ${FSFW_CONFIG_PATH}
${CMAKE_CURRENT_BINARY_DIR} ${LIB_ARCSEC_PATH})
target_include_directories(
${LIB_DUMMIES} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} ${FSFW_CONFIG_PATH}
${CMAKE_CURRENT_BINARY_DIR})
if(TGT_BSP MATCHES "arm/q7s" OR TGT_BSP MATCHES "arm/egse")
target_include_directories(${LIB_EIVE_MISSION} PUBLIC
${ARCSEC_LIB_PATH}
)
target_include_directories(${LIB_EIVE_MISSION} PUBLIC ${ARCSEC_LIB_PATH})
endif()
if(CMAKE_VERBOSE)
message(STATUS "Warning flags: ${WARNING_FLAGS}")
message(STATUS "Warning flags: ${WARNING_FLAGS}")
endif()
if(${CMAKE_CROSSCOMPILING})
include (${CMAKE_SCRIPT_PATH}/HardwareOsPostConfig.cmake)
post_source_hw_os_config()
if(CMAKE_CROSSCOMPILING)
include(HardwareOsPostConfig)
post_source_hw_os_config()
endif()
if(NOT CMAKE_SIZE)
set(CMAKE_SIZE size)
if(WIN32)
set(FILE_SUFFIX ".exe")
endif()
set(CMAKE_SIZE size)
if(WIN32)
set(FILE_SUFFIX ".exe")
endif()
endif()
if(EIVE_BUILD_WATCHDOG)
set(TARGET_STRING "OBSW Watchdog")
set(TARGET_STRING "OBSW Watchdog")
else()
if(TGT_BSP)
set(TARGET_STRING "Target BSP: ${TGT_BSP}")
else()
set(TARGET_STRING "Target BSP: Hosted")
endif()
if(TGT_BSP)
set(TARGET_STRING "Target BSP: ${TGT_BSP}")
else()
set(TARGET_STRING "Target BSP: Hosted")
endif()
endif()
string(CONCAT POST_BUILD_COMMENT
"Build directory: ${CMAKE_BINARY_DIR}\n"
"Target OSAL: ${FSFW_OSAL}\n"
"Target Build Type: ${CMAKE_BUILD_TYPE}\n"
"${TARGET_STRING}"
)
install(TARGETS ${OBSW_NAME} RUNTIME DESTINATION bin)
string(CONCAT POST_BUILD_COMMENT "Build directory: ${CMAKE_BINARY_DIR}\n"
"Target OSAL: ${FSFW_OSAL}\n"
"Target Build Type: ${CMAKE_BUILD_TYPE}\n" "${TARGET_STRING}")
add_custom_command(
TARGET ${OBSW_NAME}
POST_BUILD
COMMAND ${CMAKE_SIZE} ${OBSW_BIN_NAME}${FILE_SUFFIX}
COMMENT ${POST_BUILD_COMMENT}
)
include (${CMAKE_SCRIPT_PATH}/BuildType.cmake)
set_build_type()
TARGET ${OBSW_NAME}
POST_BUILD
COMMAND ${CMAKE_SIZE} ${OBSW_BIN_NAME}${FILE_SUFFIX}
COMMENT ${POST_BUILD_COMMENT})

462
README.md
View File

@ -39,12 +39,14 @@ Target systems:
the [Xiphos Traq Platform](https://trac2.xiphos.ca/eive-q7). Press on index to find all
relevant pages. The most recent datasheet can be found
[here](https://trac2.xiphos.ca/manual/wiki/Q7RevB/UserManual).
* Linux OS built with Yocto 2.5
* Linux OS built with Yocto 2.5. SDK and root filesystem can be rebuilt with
[yocto](https://egit.irs.uni-stuttgart.de/eive/q7s-yocto)
* [Linux Kernel](https://github.com/XiphosSystemsCorp/linux-xlnx.git) . EIVE version can be found
[here](https://github.com/spacefisch/linux-xlnx) . Pre-compiled files can be
found [here](https://eive-cloud.irs.uni-stuttgart.de/index.php/apps/files/?dir=/EIVE_IRS/Software/q7s-linux-components&fileid=777299).
* Q7S base project can be found [here](https://egit.irs.uni-stuttgart.de/eive/q7s-base)
* Minimal base project files can be found [here](https://eive-cloud.irs.uni-stuttgart.de/index.php/apps/files/?dir=/EIVE_IRS/Software/xiphos-q7s-sdk&fileid=510908)
* Minimal base project files and Xiphos SDK can be found
[here](https://eive-cloud.irs.uni-stuttgart.de/index.php/apps/files/?dir=/EIVE_IRS/Software/xiphos-q7s-sdk&fileid=510908)
* Host System
* Generic software components which are not dependant on hardware can also
be run on a host system. All host code is contained in the `bsp_hosted` folder
@ -55,7 +57,8 @@ Target systems:
The steps in the primary README are related to the main OBC target Q7S.
The CMake build system can be used to generate build systems as well (see helper scripts in `cmake/scripts`:
- Linux (Raspberry Pi): See special section below.
- Linux Raspberry Pi: See special section below. Uses the `bsp_linux_board` folder
- Linux Trenz TE7020_1CFA: Uses the `bsp_te0720_1cfa` folder
- Linux Host: Uses the `bsp_hosted` BSP folder and the CMake Unix Makefiles generator.
- Windows Host: Uses the `bsp_hosted` BSP folder, the CMake MinGW Makefiles generator and MSYS2.
@ -67,8 +70,9 @@ prerequisites.
## Building the OBSW and flashing it on the Q7S
1. ARM cross-compiler installed, either as part of [Vivado 2018.2 installation](#vivado) or
as a [separate download](#arm-toolchain)
2. [Q7S sysroot](#q7s-sysroot) on local development machine
as a [separate download](#arm-toolchain). The Xiphos SDK also installs a cross-compiler,
but its version is currently too old to compile the OBSW (7.3.0).
2. [Q7S sysroot](#sysroot) on local development machine. It is installed by the Xiphos SDK
3. Recommended: Eclipse or [Vivado 2018.2 SDK](#vivado) for OBSW development
3. [TCF agent](https://wiki.eclipse.org/TCF) running on Q7S
@ -85,52 +89,186 @@ When using Windows, run theses steps in MSYS2.
1. Clone the repository with
```sh
git clone https://egit.irs.uni-stuttgart.de/eive/eive_obsw.git
git clone https://egit.irs.uni-stuttgart.de/eive/eive-obsw.git
```
2. Update all the submodules
```sh
git submodule init
git submodule sync
git submodule update
git submodule update --init
```
3. Ensure that the cross-compiler is working with `arm-linux-gnueabihf-gcc --version`.
It is recommended to set up a shell script which takes care of setting up the environment
for convenience or to set up the
[PATH and the CROSS_COMPILE variable permanently](https://unix.stackexchange.com/questions/26047/how-to-correctly-add-a-path-to-path)
in the `.profile` file.
3. Ensure that the cross-compiler is working with `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.
Add `-G "MinGW Makefiles` in MinGW64 on Windows.
```sh
mkdir build-Debug-Q7S && cd build-Debug-Q7S
mkdir cmake-build-debug-q7s && cd cmake-build-debug-q7s
cmake -DTGT_BSP="arm/q7s" -DCMAKE_BUILD_TYPE=Debug ..
cmake --build . -j
```
You can also use provided shell scripts to perform these commands
You can also use provided shell scripts to perform these commands.
```sh
cd cmake/scripts/Q7S
./make_debug_cfg.sh
cd ../../..
cp scripts/q7s-env.sh ..
cp scripts/q7s-env-em.sh ..
```
This will invoke a Python script which in turn invokes CMake with the correct
arguments to configure CMake for Q7S cross-compilation.
Adapt these scripts for your needs by editing the `CROSS_COMPILE_BIN_PATH`
and `ZYNQ_7020_SYSROOT`. After that, you can run the following commands to set up
the FM build
```sh
cd ..
./q7s-env.sh
q7s-make-debug.sh
```
You can build the EM setup by running
```sh
export EIVE_Q7S_EM=1
```
or by running the `q7s-env-em.sh` script instead before setting up the build
configuration.
The shell scripts will invoke a Python script which in turn invokes CMake with the correct
arguments to configure CMake for Q7S cross-compilation. You can look into the command
output to see which commands were run exactly.
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
```sh
cd build-Debug-Q7S
cd cmake-build-debug-q7s
cmake --build . -j
```
## Preparing and executing an OBSW update
A OBSW update consists of a `xz` compressed file `eive-sw-update.tar.xz`
which contains the following two files:
1. Stripped OBSW binary `eive-obsw-stripped`
2. OBSW version text file with the name `obsw_version.txt`
These files can be created manually:
1. Build the release image inside `cmake-build-release-q7s`
2. Switch into the build directory
3. Run the following command to create the version file
```sh
git describe --tags --always --exclude docker_* > obsw_version.txt
```
You can also use the `create-version-file.sh` helper shell script
located in the `scripts` folder to do this.
4. Set the Q7S user as the file owner for both files
```sh
sudo chown root:root eive-obsw-stripped
sudo chown root:root obsw_version.txt
```
5. Run the following command to create the compressed archive
```sh
tar -cJvf eive-sw-update.tar.xz eive-obsw-stripped obsw_version.txt
```
You can also use the helper script `create-sw-update.sh` inside the build folder
after sourcing the `q7s-env.sh` helper script to perform all steps including
a rebuild.
After creating these files, they need to be transferred onto the Q7S
to either the `/mnt/sd0/bin` or `/mnt/sd1/bin` folder if the OBSW update
is performed from the SD card. It can also be transferred to the `/tmp` folder
to perform the update from a temporary directory, which does not rely on any
of the SD cards being on and mounted. However, all files in the temporary
directory will be deleted if the Linux OS is rebooted for any reason.
After both files are in place (this is checked by the OBSW), the example command
sequence is used by the OBSW to write the OBSW update to the QSPI chip 0 and
slot 0 using SD card 0:
```sh
tar -xJvf eive-update.tar.xz
xsc_mount_copy 0 0
cp eive-obsw-stripped /tmp/mntupdate-xdi-qspi0-nom-rootfs/usr/bin/eive-obsw
cp obsw_update.txt /tmp/mntupdate-xdi-qspi0-nom-rootfs/usr/share/obsw_update.txt
writeprotect 0 0 1
```
Some context information about the used commands:
1. It mounts the target chip and copy combination into the `/tmp` folder
using the `xsc_mount_copy <chip> <copy>` utility. This also unlocks the
writeprotection for the chip. The mount point name inside `/tmp` depends
on which chip and copy is used
- Chip 0 Copy 0: `/tmp/mntupdate-xdi-qspi0-nom-rootfs`
- Chip 0 Copy 1: `/tmp/mntupdate-xdi-qspi0-gold-rootfs`
- Slot 1 Copy 0: `/tmp/mntupdate-xdi-qspi1-nom-rootfs`
- Slot 1 Copy 1: `/tmp/mntupdate-xdi-qspi1-gold-rootfs`
2. Writing the file with a regular `cp <source> <target>` command
3. Enabling the writeprotection using the `writeprotect <chip> <copy> 1` utility.
## Build for the Q7S target root filesystem with `yocto`
The EIVE root filesystem will contain the EIVE OBSW and the Watchdog component.
It is currently generated with `yocto`, but the tool can not compile the primary
OBSW due to toolchain version incompatibility. Therefore, the OBSW components
are currently compiled using the toolchain specified in this README (e.g. installed by Vivado).
However, it is still possible to install the two components using yocto. A few helper files were
provided to make this process easier. The following steps can be used to install the OBSW
components and a version file to the yocto sources for the generation of the complete EIVE root
file system image. The steps here are shown for Ubuntu, you can use the according Windows
helper scripts as well.
1. Copy the `q7s-env.sh` script to the same layer as the `eive-obsw`.
```sh
cp scripts/q7s-env.sh ..
cd ..
./q7s-env.sh
q7s-make-release.sh
```
2. Compile the OBSW components in release mode
```sh
cd cmake-build-release-q7s
cmake --build . -j
```
3. Make sure the [`q7s-yocto`](https://egit.irs.uni-stuttgart.de/eive/q7s-yocto)
repository or the [`q7s-package`](https://egit.irs.uni-stuttgart.de/eive/q7s-package.git)
repository and its `q7s-yocto` submodule were cloned in the same directory layer as
the `eive-obsw`.
4. Run the install script to install the files into `q7s-yocto`.
```sh
install-obsw-yocto.sh
```
5. Navigate into the `q7s-yocto` repo and review the changes. You can then add and push those
changes.
6. You can now rebuild the root filesystem with the updated OBSW using `yocto`. This probably needs
to be done on another machine or in a VM. The [`q7s-yocto`](https://egit.irs.uni-stuttgart.de/eive/q7s-yocto)
repository contains details on how to best do this.
## Building in Xilinx SDK 2018.2
1. Open Xilinx SDK 2018.2
@ -150,7 +288,7 @@ When using Windows, run theses steps in MSYS2.
4. Run build command by double clicking the created target or by right clicking
the project folder and selecting Build Project.
# <a id="host-commands"></a> Useful and Common Commands (Host)
# <a id="host-commands"></a> Useful and Common Commands
## Build generation
@ -163,41 +301,56 @@ automatically.
The EIVE OBSW is the default target if no target is specified.
**Debug**
```sh
mkdir build-Debug-Q7S && cd build-Debug-Q7S
mkdir cmake-build-debug-q7s && cd cmake-build-debug-q7s
cmake -DTGT_BSP=arm/q7s -DCMAKE_BUILD_TYPE=Debug ..
cmake --build . -j
```
### Q7S Watchdog
To build the EIVE watchdog, the corresponding target must be specified in the build command.
The configure steps do not need to be repeated if the folder has already been configured.
**Release**
```sh
mkdir build-Debug-Watchdog && cd build-Debug-Watchdog
cmake -DTGT_BSP=arm/q7s -DCMAKE_BUILD_TYPE=Debug ..
cmake --build . --target eive-watchdog -j
mkdir cmake-build-release-q7s && cd cmake-build-release-q7s
cmake -DTGT_BSP=arm/q7s -DCMAKE_BUILD_TYPE=Release ..
cmake --build . -j
```
### Hosted
### Hosted OBSW
You can also use the FSFW OSAL `host` to build on Windows or for generic OSes.
Note: Currently this is not supported.
You can use the `clone-submodules-no-privlibs.sh` script to only clone the required (non-private)
submodules required to build the hosted OBSW.
```sh
mkdir build-Debug-Host && cd build-Debug-Host
mkdir cmake-build-debug && cd cmake-build-debug
cmake -DFSFW_OSAL=host -DCMAKE_BUILD_TYPE=Debug ..
cmake --build . -j
```
You can also use the `linux` OSAL:
```sh
mkdir cmake-build-debug && cd cmake-build-debug
cmake -DFSFW_OSAL=linux -DCMAKE_BUILD_TYPE=Debug ..
cmake --build . -j
```
Please note that some additional Linux setup might be necessary.
You can find more information in the [Linux section of the FSFW example](https://egit.irs.uni-stuttgart.de/fsfw/fsfw-example-linux-mcu/src/branch/mueller/master/doc/README-linux.md#raising-message-queue-size-limit)
### Q7S Watchdog
The watchdog will be built along side the primary OBSW binary.
### Unittests
To build the unittests, the corresponding target must be specified in the build command.
The configure steps do not need to be repeated if the folder has already been configured.
```sh
mkdir build-Debug-Unittest && cd build-Debug-Unittest
mkdir cmake-build-debug && cd cmake-build-debug
cmake ..
cmake --build . --target eive-unittests -j
```
@ -227,18 +380,19 @@ A serial console session is up permanently in a `tmux` session
### Serial console
You can check whether the sessions exist with `tmux ls`
You can check whether the sessions exist with `tmux ls`.
This is the command to connect to the serial interface of the FM using the
RS422 interface of the flight preparation panel:
```sh
tmux a -t q7s-serial
tmux a -t q7s-fm-fpp
```
If the session does not exist, you can create it like this
```sh
tmux new -s q7s-serial
/bin/bash
q7s_serial
tmux new -s q7s-fm-fpp -t /bin/bash
launch-q7s-fpp
```
Other useful tmux commands:
@ -258,56 +412,51 @@ Other useful tmux commands:
You can use the following command to connect to the Q7S with `ssh`:
```sh
q7s_ssh
q7s-fm-ssh
```
## Port forwarding for connection to TCF agent
This is a required step to connect to the `tcf-agent` on the Q7S, which is required for convenient
remote debugging. Assuming the IPv6
```sh
ssh -L 1534:192.168.133.10:1534 eive@2001:7c0:2018:1099:babe:0:e1fe:f1a5 -t /bin/bash
```
You then need to connect to `localhost` with port `1534`.
## Port forwarding for file transfers with `scp`
```sh
ssh -L 1535:192.168.133.10:22 eive@2001:7c0:2018:1099:babe:0:e1fe:f1a5 -t /bin/bash
```
You then need to run `scp` with the `-P 1535` flag with `localhost` as the target IP address.
## Port forwarding for TMTC commanding
You can enable port forwarding for TMTC commanding with the following command:
```sh
ssh -L 1536:192.168.133.10:7301 eive@2001:7c0:2018:1099:babe:0:e1fe:f1a5 -t /bin/bash
```
This forwards TMTC packets on port `1536` of localhost to the TMTC reception port of the Q7S.
## Set up all port forwarding at once
Port forwarding is necessary for remote-debugging using the `tcf-agent`, copying files
with `scp` & `q7s-cp.py` and sending TMTC commands.
You can specify the `-L` option multiple times to set up all port forwarding at once.
Example for using the UDP communication interface:
```sh
ssh -L 1534:192.168.133.10:1534 \
-L 1535:192.168.133.10:22 \
-L 1536:192.168.133.10:7301 \
ssh -L 1534:192.168.155.55:1534 \
-L 1535:192.168.155.55:22 \
-L 1536:192.168.155.55:7301 \
-L 1537:127.0.0.1:7100 \
-L 1538:192.168.133.10:1534 \
-L 1539:192.168.133.10:22 \
-L 1540:192.168.133.10:7301 \
eive@2001:7c0:2018:1099:babe:0:e1fe:f1a5 \
-t 'export CONSOLE_PREFIX="[Q7S Tunnel] /bin/bash'
-t 'CONSOLE_PREFIX="[Q7S Tunnel]" /bin/bash'
```
There is also a shell script called `q7s-port.sh` which can be used to achieve the same.
# <a id="set-up-prereq"></a> Setting up prerequisites
## <a id="vivado"></a> Installing Vivado the the Xilinx development tools
## <a id="sysroot"></a> Getting system root for Linux cross-compilation
Cross-compiling any program for an embedded Linux board generally required parts of the target root
file system on the development/host computer. For the Q7S, you can install the cross-compilation
root file system by simply installing the SDK. You can find the most recent SDK
[here](https://eive-cloud.irs.uni-stuttgart.de/index.php/apps/files/?dir=/EIVE_IRS/Software/xiphos-q7s-sdk).
If you are compiling for the Q7S or the TE7020, the `ZYNQ_7020_SYSROOT` environment variable
must be set to the location of the SDK compile sysroot. Here is an example on how to do this
in Ubuntu, assuming the SDK was installed in the default location
```sh
export ZYNQ_7020_SYSROOT="/opt/xiphos/sdk/ark/sysroots/cortexa9hf-neon-xiphos-linux-gnueabi"
```
If you are comiling for the Raspberry Pi, you have to set the `LINUX_ROOTFS` environmental
variable instead. You can find a base root filesystem for the Raspberry Pi
[here](https://eive-cloud.irs.uni-stuttgart.de/index.php/apps/files/?dir=/EIVE_IRS/Software/rootfs).
## <a id="vivado"></a> Installing Vivado and the Xilinx development tools
It's also possible to perform debugging with a normal Eclipse installation by installing
the TCF plugin and downloading the cross-compiler as specified in the section below. However,
@ -323,9 +472,9 @@ installed Vivado with the SDK core tools.
<img src="https://egit.irs.uni-stuttgart.de/eive/eive-obsw/raw/branch/develop/doc/img/vivado-edition.png" width="50%"> <br>
<img src="https://egit.irs.uni-stuttgart.de/eive/eive-obsw/raw/branch/mueller/master/doc/img/vivado-hl-design.png" width="50%"> <br>
<img src="https://egit.irs.uni-stuttgart.de/eive/eive-obsw/raw/branch/develop/doc/img/vivado-hl-design.png" width="50%"> <br>
<img src="https://egit.irs.uni-stuttgart.de/eive/eive-obsw/raw/branch/mueller/master/doc/img/xilinx-install.PNG" width="50%"> <br>
<img src="https://egit.irs.uni-stuttgart.de/eive/eive-obsw/raw/branch/develop/doc/img/xilinx-install.PNG" width="50%"> <br>
* For supported OS refer to https://www.xilinx.com/support/documentation/sw_manuals/xilinx2018_2/ug973-vivado-release-notes-install-license.pdf .
Installation was tested on Windows and Ubuntu 21.04.
@ -345,7 +494,9 @@ twice) and generate this list manually with the following commands, according to
sudo apt install libncurses5
```
2. ```sh
2. Execute the following command
```sh
sudo <installRoot>/Vivado/2018.2/bin/vivado -nolog -nojournal -mode batch -source
<installRoot>/.xinstall/Vivado_2018.2/scripts/xlpartinfo.tcl -tclargs
<installRoot>/Vivado/2018.2/data/parts/installed_devices.txt
@ -385,20 +536,7 @@ more recent disitributions anymore.
## <a id="arm-toolchain"></a> Installing toolchain without Vivado
You can download the toolchains for Windows and Linux
[from the EIVE cloud](https://eive-cloud.irs.uni-stuttgart.de/index.php/apps/files?dir=/EIVE_IRS/Software/tools&fileid=831898).
If `wget` is available (e.g. MinGW64), you can use the following command to download the
toolchain for Windows
```sh
wget https://eive-cloud.irs.uni-stuttgart.de/index.php/s/rfoaistRd67yBbH/download/gcc-arm-linux-gnueabi-win.zip
```
or the following command for Linux (could be useful for CI/CD)
```sh
wget https://eive-cloud.irs.uni-stuttgart.de/index.php/s/MRaeA2XnMXpZ5Pp/download/gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf.tar.xz
```
[from the EIVE cloud](https://eive-cloud.irs.uni-stuttgart.de/index.php/apps/files/?dir=/EIVE_IRS/Software/tools).
## Installing CMake and MSYS2 on Windows
@ -432,21 +570,6 @@ wget https://eive-cloud.irs.uni-stuttgart.de/index.php/s/MRaeA2XnMXpZ5Pp/downloa
```sh
sudo apt-get install cmake
````
## <a id="q7s-sysroot"></a> Getting the Q7S system root
It is necessary to copy the Q7S system root to your local development machine for libraries
like `libgpio`. You can find the system root for the Q7S, the Raspberry Pi and the
Beagle Bone Black for download here
[here](https://eive-cloud.irs.uni-stuttgart.de/index.php/apps/files/?dir=/EIVE_IRS/Software/rootfs&fileid=831849).
Download it and unzip it somewhere in the Xilinx installation folder.
You can use the following command if `wget` can be used or for CI/CD:
```sh
wget https://eive-cloud.irs.uni-stuttgart.de/index.php/s/SyXpdBBQX32xPgE/download/cortexa9hf-neon-xiphos-linux-gnueabi.tar.gz
```
Then, create a new environmental variables `Q7S_SYSROOT` and set it to the local system root path.
### Updating system root for CI
@ -668,35 +791,7 @@ Thus the replies are received with a larger delay compared to a direct TCP conne
3. Make sure the netmask of the ehternet interface of the workstation matches the netmask of the Q7S
* When IP address is set to 192.168.133.10 and the netmask is 255.255.255.0, an example IP address for the workstation
is 192.168.133.2
4. Run tcf-agent on Q7S
* Tcf-agent is not yet integrated in the rootfs of the Q7S. Therefore build tcf-agent manually
```sh
git clone git://git.eclipse.org/gitroot/tcf/org.eclipse.tcf.agent.git
cd org.eclipse.tcf.agent/agent
make CC=arm-linux-gnueabihf-gcc LD=arm-linux-gnueabihf-ld MACHINE=arm NO_SSL=1 NO_UUID=1
```
* Transfer executable agent from org.eclipse.tcf.agent/agent/obj/GNU/Linux/arm/Debug to /tmp of Q7S
```sh
cd obj/GNU/Linux/arm/Debug
scp agent root@192.168.133.10:/tmp
```
* On Q7S
```sh
cd /tmp
chmod +x agent
```
* Run agent
```sh
./agent
```
4. Make sure th `tcf-agent` is running by checking `systemctl status tcf-agent`
5. In Xilinx SDK 2018.2 right click on project &rarr; Debug As &rarr; Debug Configurations
6. Right click Xilinx C/C++ applicaton (System Debugger) &rarr; New &rarr;
7. Set Debug Type to Linux Application Debug and Connectin to Linux Agent
@ -706,8 +801,8 @@ Thus the replies are received with a larger delay compared to a direct TCP conne
11. Test connection (This ensures the TCF Agent is running on the Q7S)
12. Select Application tab
* Project Name: eive_obsw
* Local File Path: Path to eiveobsw-linux.elf (in `_bin\linux\devel`)
* Remote File Path: `/tmp/eive_obsw.elf`
* Local File Path: Path to OBSW application image with debug symbols (non-stripped)
* Remote File Path: `/tmp/<OBSW NAME>`
# <a id="file-transfer"></a> Transfering Files to the Q7S
@ -733,11 +828,15 @@ From a windows machine files can be copied with putty tools (note: use IPv4 addr
pscp -scp -P 22 eive@192.168.199.227:</directory-to-example-file/>/example-file </windows-machine-path/>
````
More detailed information about the used q7s commands can be found in the Q7S user manual.
A helper script named `q7s-cp.py` can be used together with the `q7s-port.sh`
script to make this process easier.
# <a id="q7s"></a> Q7S OBC
## Launching an application at start-up
## Launching an application at start-up - deprecated
This way to enable auto-startup is deprecated. It is instead recommended to tweak the yocto
recipes file for the related `systemd` service to enable auto-startup with `SYSTEMD_AUTO_ENABLE`.
You can also do the steps performed here on a host computer inside the `q7s-rootfs` directory
of the [Q7S base repository](https://egit.irs.uni-stuttgart.de/eive/q7s-base). This might
@ -839,10 +938,9 @@ If a timeout occurs, this special file will be deleted as well.
The watchdog and its configuration will be directly integrated into this repostory, which
makes adaptions easy.
### `tcfagent`
### `tcf-agent`
This starts the `/usr/bin/agent` program to allows remote debugging. Might not be part of
the mission code
This starts the `/usr/bin/tcf-agent` program to allows remote debugging
### `eive-early-config`
@ -967,6 +1065,29 @@ Get fill count:
xsc_scratch read | wc -c
```
## Custom device names in Linux with the `udev` module
You can assign custom device names using the Linux `udev` system.
This works by specifying a rules file inside the `/etc/udev/rules.d` folder
which creates a SYMLINK if certain device properties are true.
Each rule is a new line inside a rules file.
For example, the rule
```txt
SUBSYSTEM=="tty", ATTRS{interface}=="Dual RS232-HS", ATTRS{bInterfaceNumber}=="01", SYMLINK+="ploc_supv
```
Will create a symlink `/dev/ploc_supv` if a connected USB device has the
same `interface` and `bInterfaceNumber` properties as shown above.
You can list the properties for a given connected device using `udevadm`.
For example, you can do this for a connected example device `/dev/ttyUSB0`
by using
```txt
udevadm info -a /dev/ttyUSB0
```
## Using `system` when debugging
@ -1020,11 +1141,19 @@ cat /proc/tty/driver
## I2C
Getting information about I2C device
````
Getting information about some I2C device
```sh
ls /sys/class/i2c-dev/i2c-0/device/device/driver
````
This shows the memory mapping of /dev/i2c-0
```
This shows the memory mapping of `/dev/i2c-0`.
You can use the `i2cdetect` utility to scan for I2C devices.
For example, to do this for bus 0 (`/dev/i2c-0`), you can use
```sh
i2cdetect -r -y 0
```
## CAN
@ -1111,16 +1240,28 @@ Eclipse indexer.
The [TCF agent](https://wiki.eclipse.org/TCF) can be used to perform remote debugging on the Q7S.
1. Install the TCF agent plugin in Eclipse from
1. Copy the `.cproject` file and the `.project` file inside the `misc/eclipse` folder into the
repo root
```sh
cd eive-obsw
cp misc/eclipse/.cproject .
cp misc/eclipse/.project .
```
2. Open the repo in Eclipse as a folder.
3. Install the TCF agent plugin in Eclipse from
the [releases](https://www.eclipse.org/tcf/downloads.php). Go to
Help &rarr; Install New Software and use the download page, for
example https://download.eclipse.org/tools/tcf/releases/1.7/1.7.0/ to search for the plugin and install it. You can find the newest version [here](https://www.eclipse.org/tcf/downloads.php)
example https://download.eclipse.org/tools/tcf/releases/1.7/1.7.0/ to search for the plugin and
install it. You can find the newest version [here](https://www.eclipse.org/tcf/downloads.php)
2. Go to Window &rarr; Perspective &rarr; Open Perspective and open the **Target Explorer Perspective**.
4. Go to Window &rarr; Perspective &rarr; Open Perspective and open the **Target Explorer Perspective**.
Here, the Q7S should show up if the local port forwarding was set up as explained previously.
Please note that you have to connect to `localhost` and port `1534` with port forwaring set up.
3. A launch configuration was provided, but it might be necessary to adapt it for your own needs.
5. A launch configuration was provided, but it might be necessary to adapt it for your own needs.
Alternatively:
- Create a new **TCF Remote Application** by pressing the cogs button at the top or going to
@ -1206,8 +1347,11 @@ Alternatively, changes from other upstreams (forks) and branches can be merged l
in the same way.
# <a id="coding-style"></a> Coding Style
* the formatting is based on the clang-format tools
## Setting up eclipse auto-fromatter with clang-format
## Setting up auto-formatter with clang-format in Xilinx SDK
1. Help &rarr; Install New Software &rarr; Add
2. In location insert the link http://www.cppstyle.com/luna
3. The software package CppStyle should now be available for installation
@ -1216,3 +1360,11 @@ in the same way.
6. Insert the path to the clang-format executable
7. Under C/C++ &rarr; Code Style &rarr; Formatter, change the formatter to CppStyle (clang-format)
8. Code can now be formatted with the clang tool by using the key combination Ctrl + Shift + f
## Setting up auto-fromatter with clang-format in eclipse
1. Help &rarr; Eclipse market place &rarr; Search for "Cppstyle" and install
2. On windows download the clang-formatting tools from https://llvm.org/builds/. On linux clang-format can be installed with the package manager.
3. Navigate to Preferences &rarr; C/C++ &rarr; CppStyle
4. Insert the path to the clang-format executable
5. Under C/C++ &rarr; Code Style &rarr; Formatter, change the formatter to CppStyle (clang-format)
6. Code can now be formatted with the clang tool by using the key combination Ctrl + Shift + f

View File

@ -8,13 +8,13 @@ using gpioId_t = uint16_t;
namespace gpio {
enum Levels { LOW = 0, HIGH = 1 };
enum class Levels : uint8_t { LOW = 0, HIGH = 1 };
enum Direction { IN = 0, OUT = 1 };
enum class Direction : uint8_t { IN = 0, OUT = 1 };
enum GpioOperation { READ, WRITE };
enum class GpioOperation { READ, WRITE };
enum GpioTypes { NONE, GPIOD_REGULAR, CALLBACK };
enum class GpioTypes { NONE, GPIOD_REGULAR, CALLBACK };
static constexpr gpioId_t NO_GPIO = -1;
} // namespace gpio

View File

@ -4,17 +4,24 @@ RUN apt-get update
RUN apt-get --yes upgrade
#tzdata is a dependency, won't install otherwise
ARG DEBIAN_FRONTEND=noninteractive
RUN apt-get --yes install cmake libgpiod-dev xz-utils nano curl git gcc g++ lcov valgrind libgps-dev
RUN apt-get --yes install cmake libgpiod-dev xz-utils nano curl git gcc g++ lcov valgrind libgps-dev python3
# Q7S root filesystem, required for cross-compilation.
RUN mkdir -p /usr/rootfs; \
curl https://buggy.irs.uni-stuttgart.de/eive/tools/cortexa9hf-neon-xiphos-linux-gnueabi.tar.gz \
| tar -xz -C /usr/rootfs
ARG XIPHOS_SDK_NAME=sdk-xiphos-eive-v0.2.0
# Install Xiphos ARK SDK, which also installs Q7S root filesystem, required for cross-compilation.
RUN curl https://buggy.irs.uni-stuttgart.de/eive/tools/${XIPHOS_SDK_NAME}.tar | tar -x && \
cd ${XIPHOS_SDK_NAME} && \
./ark-glibc-x86_64-eive-image-cortexa9hf-neon-toolchain-nodistro.0.sh -y
# Cross compiler
RUN mkdir -p /usr/tools; \
curl https://buggy.irs.uni-stuttgart.de/eive/tools/gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf.tar.gz \
| tar -xz -C /usr/tools
ENV Q7S_SYSROOT="/usr/rootfs/cortexa9hf-neon-xiphos-linux-gnueabi"
ENV PATH=$PATH:"/usr/tools/gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf/bin"
RUN git clone https://github.com/catchorg/Catch2.git && \
cd Catch2 && \
git checkout v3.0.0-preview5 && \
cmake -Bbuild -H. -DBUILD_TESTING=OFF && \
cmake --build build/ --target install
ENV ZYNQ_7020_SYSROOT="/opt/xiphos/sdk/ark/sysroots/cortexa9hf-neon-xiphos-linux-gnueabi"
ENV PATH=$PATH:"/usr/tools/gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf/bin"

View File

@ -5,7 +5,7 @@ pipeline {
}
agent {
docker {
image 'eive-obsw-ci:d2'
image 'eive-obsw-ci:d5'
args '--sysctl fs.mqueue.msg_max=100'
}
}
@ -24,11 +24,11 @@ pipeline {
}
}
}
stage('Unittests') {
stage('Build Host and Tests') {
steps {
dir(BUILDDIR_LINUX) {
sh 'cmake ..'
sh 'cmake --build . -t eive-unittest -j4'
sh 'cmake --build . -j4'
sh './eive-unittest'
}
}

View File

@ -1,7 +1,3 @@
target_sources(${OBSW_NAME} PUBLIC
InitMission.cpp
main.cpp
ObjectFactory.cpp
)
target_sources(${OBSW_NAME} PUBLIC InitMission.cpp main.cpp ObjectFactory.cpp)
add_subdirectory(boardconfig)

View File

@ -2,7 +2,7 @@
#include <fsfw/objectmanager/ObjectManager.h>
#include <fsfw/objectmanager/ObjectManagerIF.h>
#include <fsfw/returnvalues/HasReturnvaluesIF.h>
#include <fsfw/returnvalues/returnvalue.h>
#include <fsfw/serviceinterface/ServiceInterface.h>
#include <fsfw/tasks/FixedTimeslotTaskIF.h>
#include <fsfw/tasks/PeriodicTaskIF.h>
@ -40,7 +40,7 @@ void initmission::initMission() {
void initmission::initTasks() {
TaskFactory* factory = TaskFactory::instance();
ReturnValue_t result = HasReturnvaluesIF::RETURN_OK;
ReturnValue_t result = returnvalue::OK;
if (factory == nullptr) {
/* Should never happen ! */
return;
@ -55,28 +55,28 @@ void initmission::initTasks() {
PeriodicTaskIF* tmtcDistributor = factory->createPeriodicTask(
"DIST", 40, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.2, missedDeadlineFunc);
result = tmtcDistributor->addComponent(objects::CCSDS_PACKET_DISTRIBUTOR);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
sif::error << "Object add component failed" << std::endl;
}
result = tmtcDistributor->addComponent(objects::PUS_PACKET_DISTRIBUTOR);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
sif::error << "Object add component failed" << std::endl;
}
result = tmtcDistributor->addComponent(objects::TM_FUNNEL);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
sif::error << "Object add component failed" << std::endl;
}
PeriodicTaskIF* tmtcBridgeTask = factory->createPeriodicTask(
"TMTC_BRIDGE", 50, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.2, missedDeadlineFunc);
result = tmtcBridgeTask->addComponent(objects::TMTC_BRIDGE);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
sif::error << "Add component TMTC Bridge failed" << std::endl;
}
PeriodicTaskIF* tmtcPollingTask = factory->createPeriodicTask(
"TMTC_POLLING", 80, PeriodicTaskIF::MINIMUM_STACK_SIZE, 2.0, missedDeadlineFunc);
result = tmtcPollingTask->addComponent(objects::TMTC_POLLING_TASK);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
sif::error << "Add component TMTC Polling failed" << std::endl;
}
@ -88,7 +88,7 @@ void initmission::initTasks() {
FixedTimeslotTaskIF* pst = factory->createFixedTimeslotTask(
"STAR_TRACKER_PST", 70, PeriodicTaskIF::MINIMUM_STACK_SIZE * 4, 0.5, missedDeadlineFunc);
result = pst::pstUart(pst);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
sif::error << "InitMission::initTasks: Creating PST failed!" << std::endl;
}
pstTasks.push_back(pst);
@ -96,7 +96,7 @@ void initmission::initTasks() {
PeriodicTaskIF* strHelperTask = factory->createPeriodicTask(
"STR_HELPER", 20, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.2, missedDeadlineFunc);
result = strHelperTask->addComponent(objects::STR_HELPER);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
initmission::printAddObjectError("STR_HELPER", objects::STR_HELPER);
}
pstTasks.push_back(strHelperTask);
@ -125,11 +125,11 @@ void initmission::initTasks() {
void initmission::createPusTasks(TaskFactory& factory,
TaskDeadlineMissedFunction missedDeadlineFunc,
std::vector<PeriodicTaskIF*>& taskVec) {
ReturnValue_t result = HasReturnvaluesIF::RETURN_OK;
ReturnValue_t result = returnvalue::OK;
PeriodicTaskIF* pusVerification = factory.createPeriodicTask(
"PUS_VERIF", 40, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.200, missedDeadlineFunc);
result = pusVerification->addComponent(objects::PUS_SERVICE_1_VERIFICATION);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
sif::error << "Object add component failed" << std::endl;
}
taskVec.push_back(pusVerification);
@ -137,11 +137,11 @@ void initmission::createPusTasks(TaskFactory& factory,
PeriodicTaskIF* pusEvents = factory.createPeriodicTask(
"PUS_EVENTS", 60, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.200, missedDeadlineFunc);
result = pusEvents->addComponent(objects::PUS_SERVICE_5_EVENT_REPORTING);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
initmission::printAddObjectError("PUS_EVENTS", objects::PUS_SERVICE_5_EVENT_REPORTING);
}
result = pusEvents->addComponent(objects::EVENT_MANAGER);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
initmission::printAddObjectError("PUS_MGMT", objects::EVENT_MANAGER);
}
taskVec.push_back(pusEvents);
@ -149,11 +149,11 @@ void initmission::createPusTasks(TaskFactory& factory,
PeriodicTaskIF* pusHighPrio = factory.createPeriodicTask(
"PUS_HIGH_PRIO", 50, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.200, missedDeadlineFunc);
result = pusHighPrio->addComponent(objects::PUS_SERVICE_2_DEVICE_ACCESS);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
initmission::printAddObjectError("PUS2", objects::PUS_SERVICE_2_DEVICE_ACCESS);
}
result = pusHighPrio->addComponent(objects::PUS_SERVICE_9_TIME_MGMT);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
initmission::printAddObjectError("PUS9", objects::PUS_SERVICE_9_TIME_MGMT);
}
taskVec.push_back(pusHighPrio);
@ -161,19 +161,19 @@ void initmission::createPusTasks(TaskFactory& factory,
PeriodicTaskIF* pusMedPrio = factory.createPeriodicTask(
"PUS_MED_PRIO", 40, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.8, missedDeadlineFunc);
result = pusMedPrio->addComponent(objects::PUS_SERVICE_8_FUNCTION_MGMT);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
initmission::printAddObjectError("PUS8", objects::PUS_SERVICE_8_FUNCTION_MGMT);
}
result = pusMedPrio->addComponent(objects::PUS_SERVICE_200_MODE_MGMT);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
initmission::printAddObjectError("PUS200", objects::PUS_SERVICE_200_MODE_MGMT);
}
result = pusMedPrio->addComponent(objects::PUS_SERVICE_20_PARAMETERS);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
initmission::printAddObjectError("PUS20", objects::PUS_SERVICE_20_PARAMETERS);
}
result = pusMedPrio->addComponent(objects::PUS_SERVICE_3_HOUSEKEEPING);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
initmission::printAddObjectError("PUS3", objects::PUS_SERVICE_3_HOUSEKEEPING);
}
taskVec.push_back(pusMedPrio);
@ -181,11 +181,11 @@ void initmission::createPusTasks(TaskFactory& factory,
PeriodicTaskIF* pusLowPrio = factory.createPeriodicTask(
"PUS_LOW_PRIO", 30, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.6, missedDeadlineFunc);
result = pusLowPrio->addComponent(objects::PUS_SERVICE_17_TEST);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
initmission::printAddObjectError("PUS17", objects::PUS_SERVICE_17_TEST);
}
result = pusLowPrio->addComponent(objects::INTERNAL_ERROR_REPORTER);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
initmission::printAddObjectError("INT_ERR_RPRT", objects::INTERNAL_ERROR_REPORTER);
}
taskVec.push_back(pusLowPrio);

View File

@ -1,9 +1,8 @@
#include "ObjectFactory.h"
#include <devConf.h>
#include <fsfw_hal/linux/uart/UartComIF.h>
#include <fsfw_hal/linux/uart/UartCookie.h>
#include <mission/devices/GPSHyperionHandler.h>
#include <fsfw_hal/linux/serial/SerialComIF.h>
#include <fsfw_hal/linux/serial/SerialCookie.h>
#include "OBSWConfig.h"
#include "busConf.h"
@ -40,7 +39,7 @@ void ObjectFactory::produce(void* args) {
UartCookie* starTrackerCookie =
new UartCookie(objects::STAR_TRACKER, egse::STAR_TRACKER_UART, UartModes::NON_CANONICAL,
uart::STAR_TRACKER_BAUD, startracker::MAX_FRAME_SIZE * 2 + 2);
new UartComIF(objects::UART_COM_IF);
newSerialComIF(objects::UART_COM_IF);
starTrackerCookie->setNoFixedSizeReply();
StrHelper* strHelper = new StrHelper(objects::STR_HELPER);
StarTrackerHandler* starTrackerHandler = new StarTrackerHandler(

View File

@ -1,7 +1,3 @@
target_sources(${OBSW_NAME} PRIVATE
print.c
)
target_sources(${OBSW_NAME} PRIVATE print.c)
target_include_directories(${OBSW_NAME} PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}
)
target_include_directories(${OBSW_NAME} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})

View File

@ -3,8 +3,8 @@
#include "InitMission.h"
#include "OBSWConfig.h"
#include "OBSWVersion.h"
#include "fsfw/FSFWVersion.h"
#include "fsfw/tasks/TaskFactory.h"
#include "fsfw/version.h"
/**
* @brief This is the main program entry point for the egse (raspberry pi 4)

View File

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

View File

@ -14,7 +14,7 @@ RUN set -ex; \
rm -rf build-hosted; \
mkdir build-hosted; \
cd build-hosted; \
cmake -DCMAKE_BUILD_TYPE=Release -DOS_FSFW=linux ..;
cmake -DCMAKE_BUILD_TYPE=Release -DOSAL_FSFW=host ..;
ENTRYPOINT ["cmake", "--build", "build-hosted"]
CMD ["-j"]

View File

@ -1,157 +0,0 @@
#include "InitMission.h"
#include <OBSWConfig.h>
#include <fsfw/objectmanager/ObjectManager.h>
#include <fsfw/objectmanager/ObjectManagerIF.h>
#include <fsfw/returnvalues/HasReturnvaluesIF.h>
#include <fsfw/serviceinterface/ServiceInterfaceStream.h>
#include <fsfw/tasks/FixedTimeslotTaskIF.h>
#include <fsfw/tasks/PeriodicTaskIF.h>
#include <fsfw/tasks/TaskFactory.h>
#include <mission/utility/InitMission.h>
#include <iostream>
#include "ObjectFactory.h"
#ifdef LINUX
ServiceInterfaceStream sif::debug("DEBUG");
ServiceInterfaceStream sif::info("INFO");
ServiceInterfaceStream sif::warning("WARNING");
ServiceInterfaceStream sif::error("ERROR", false, false, true);
#else
ServiceInterfaceStream sif::debug("DEBUG", true);
ServiceInterfaceStream sif::info("INFO", true);
ServiceInterfaceStream sif::warning("WARNING", true);
ServiceInterfaceStream sif::error("ERROR", true, false, true);
#endif
ObjectManagerIF* objectManager = nullptr;
void initmission::initMission() {
sif::info << "Building global objects.." << std::endl;
/* Instantiate global object manager and also create all objects */
ObjectManager::instance()->setObjectFactoryFunction(ObjectFactory::produce, nullptr);
sif::info << "Initializing all objects.." << std::endl;
ObjectManager::instance()->initialize();
/* This function creates and starts all tasks */
initTasks();
}
void initmission::initTasks() {
TaskFactory* factory = TaskFactory::instance();
if (factory == nullptr) {
/* Should never happen ! */
return;
}
#if OBSW_PRINT_MISSED_DEADLINES == 1
void (*missedDeadlineFunc)(void) = TaskFactory::printMissedDeadline;
#else
void (*missedDeadlineFunc)(void) = nullptr;
#endif
/* TMTC Distribution */
PeriodicTaskIF* tmTcDistributor = factory->createPeriodicTask(
"DIST", 40, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.2, missedDeadlineFunc);
ReturnValue_t result = tmTcDistributor->addComponent(objects::CCSDS_PACKET_DISTRIBUTOR);
if (result != HasReturnvaluesIF::RETURN_OK) {
sif::error << "Object add component failed" << std::endl;
}
result = tmTcDistributor->addComponent(objects::PUS_PACKET_DISTRIBUTOR);
if (result != HasReturnvaluesIF::RETURN_OK) {
sif::error << "Object add component failed" << std::endl;
}
result = tmTcDistributor->addComponent(objects::TM_FUNNEL);
if (result != HasReturnvaluesIF::RETURN_OK) {
sif::error << "Object add component failed" << std::endl;
}
/* UDP bridge */
PeriodicTaskIF* tmtcBridgeTask = factory->createPeriodicTask(
"TMTC_UNIX_BRIDGE", 50, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.2, missedDeadlineFunc);
result = tmtcBridgeTask->addComponent(objects::TMTC_BRIDGE);
if (result != HasReturnvaluesIF::RETURN_OK) {
sif::error << "Add component UDP Unix Bridge failed" << std::endl;
}
PeriodicTaskIF* tmtcPollingTask = factory->createPeriodicTask(
"UDP_POLLING", 80, PeriodicTaskIF::MINIMUM_STACK_SIZE, 2.0, missedDeadlineFunc);
result = tmtcPollingTask->addComponent(objects::TMTC_POLLING_TASK);
if (result != HasReturnvaluesIF::RETURN_OK) {
sif::error << "Add component UDP Polling failed" << std::endl;
}
/* PUS Services */
PeriodicTaskIF* pusVerification = factory->createPeriodicTask(
"PUS_VERIF", 40, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.200, missedDeadlineFunc);
result = pusVerification->addComponent(objects::PUS_SERVICE_1_VERIFICATION);
if (result != HasReturnvaluesIF::RETURN_OK) {
sif::error << "Object add component failed" << std::endl;
}
PeriodicTaskIF* pusEvents = factory->createPeriodicTask(
"PUS_EVENTS", 60, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.200, missedDeadlineFunc);
result = pusVerification->addComponent(objects::PUS_SERVICE_5_EVENT_REPORTING);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("PUS5", objects::PUS_SERVICE_5_EVENT_REPORTING);
}
PeriodicTaskIF* pusHighPrio = factory->createPeriodicTask(
"PUS_HIGH_PRIO", 50, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.200, missedDeadlineFunc);
result = pusHighPrio->addComponent(objects::PUS_SERVICE_2_DEVICE_ACCESS);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("PUS2", objects::PUS_SERVICE_2_DEVICE_ACCESS);
}
result = pusHighPrio->addComponent(objects::PUS_SERVICE_9_TIME_MGMT);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("PUS9", objects::PUS_SERVICE_9_TIME_MGMT);
}
PeriodicTaskIF* pusMedPrio = factory->createPeriodicTask(
"PUS_MED_PRIO", 40, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.8, missedDeadlineFunc);
result = pusMedPrio->addComponent(objects::PUS_SERVICE_8_FUNCTION_MGMT);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("PUS8", objects::PUS_SERVICE_8_FUNCTION_MGMT);
}
result = pusMedPrio->addComponent(objects::PUS_SERVICE_200_MODE_MGMT);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("PUS200", objects::PUS_SERVICE_200_MODE_MGMT);
}
result = pusMedPrio->addComponent(objects::PUS_SERVICE_20_PARAMETERS);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("PUS20", objects::PUS_SERVICE_20_PARAMETERS);
}
PeriodicTaskIF* pusLowPrio = factory->createPeriodicTask(
"PUS_LOW_PRIO", 30, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.6, missedDeadlineFunc);
result = pusLowPrio->addComponent(objects::PUS_SERVICE_17_TEST);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("PUS17", objects::PUS_SERVICE_17_TEST);
}
PeriodicTaskIF* testTask = factory->createPeriodicTask(
"TEST_TASK", 40, PeriodicTaskIF::MINIMUM_STACK_SIZE, 2.0, missedDeadlineFunc);
#if OBSW_ADD_TEST_CODE == 1
result = testTask->addComponent(objects::TEST_TASK);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("TEST_TASK", objects::TEST_TASK);
}
#endif /* OBSW_ADD_TEST_CODE == 1 */
sif::info << "Starting tasks.." << std::endl;
tmTcDistributor->startTask();
tmtcBridgeTask->startTask();
tmtcPollingTask->startTask();
pusVerification->startTask();
pusEvents->startTask();
pusHighPrio->startTask();
pusMedPrio->startTask();
pusLowPrio->startTask();
#if OBSW_ADD_TEST_CODE == 1
testTask->startTask();
#endif /* OBSW_ADD_TEST_CODE == 1 */
sif::info << "Tasks started.." << std::endl;
}

View File

@ -1,9 +0,0 @@
#ifndef BSP_LINUX_INITMISSION_H_
#define BSP_LINUX_INITMISSION_H_
namespace initmission {
void initMission();
void initTasks();
}; // namespace initmission
#endif /* BSP_LINUX_INITMISSION_H_ */

126
bsp_hosted/OBSWConfig.h.in Normal file
View File

@ -0,0 +1,126 @@
/**
* @brief This file can be used to add preprocessor define for conditional
* code inclusion exclusion or various other project constants and
* properties in one place.
*/
#ifndef FSFWCONFIG_OBSWCONFIG_H_
#define FSFWCONFIG_OBSWCONFIG_H_
#include "commonConfig.h"
/*******************************************************************/
/** All of the following flags should be enabled for mission code */
/*******************************************************************/
#define OBSW_ENABLE_TIMERS 1
#define OBSW_ADD_STAR_TRACKER 0
#define OBSW_ADD_PLOC_SUPERVISOR 0
#define OBSW_ADD_PLOC_MPSOC 0
#define OBSW_ADD_SUN_SENSORS 0
#define OBSW_ADD_MGT 0
#define OBSW_ADD_ACS_BOARD 0
#define OBSW_ADD_ACS_HANDLERS 0
#define OBSW_ADD_GPS_0 0
#define OBSW_ADD_GPS_1 0
#define OBSW_ADD_RW 0
#define OBSW_DEBUG_TMP1075 0
#define OBSW_ADD_BPX_BATTERY_HANDLER 0
#define OBSW_ADD_RTD_DEVICES 0
#define OBSW_ADD_PL_PCDU 0
#define OBSW_ADD_TMP_DEVICES 0
#define OBSW_ADD_RAD_SENSORS 0
#define OBSW_ADD_SYRLINKS 0
#define OBSW_STAR_TRACKER_GROUND_CONFIG 1
// This is a really tricky switch.. It initializes the PCDU switches to their default states
// at powerup. I think it would be better
// to leave it off for now. It makes testing a lot more difficult and it might mess with
// something the operators might want to do by giving the software too much intelligence
// at the wrong place. The system component might command all the Switches accordingly anyway
#define OBSW_INITIALIZE_SWITCHES 0
#define OBSW_ENABLE_PERIODIC_HK 0
/*******************************************************************/
/** All of the following flags should be disabled for mission code */
/*******************************************************************/
// Can be used to switch device to NORMAL mode immediately
#define OBSW_SWITCH_TO_NORMAL_MODE_AFTER_STARTUP 1
#define OBSW_PRINT_MISSED_DEADLINES 1
#define OBSW_SYRLINKS_SIMULATED 1
#define OBSW_ADD_TEST_CODE 0
#define OBSW_ADD_TEST_TASK 0
#define OBSW_ADD_TEST_PST 0
// If this is enabled, all other SPI code should be disabled
#define OBSW_ADD_SPI_TEST_CODE 0
// If this is enabled, all other I2C code should be disabled
#define OBSW_ADD_I2C_TEST_CODE 0
#define OBSW_ADD_UART_TEST_CODE 0
#define OBSW_TEST_ACS 0
#define OBSW_DEBUG_ACS 0
#define OBSW_TEST_SUS 0
#define OBSW_DEBUG_SUS 0
#define OBSW_TEST_RTD 0
#define OBSW_DEBUG_RTD 0
#define OBSW_TEST_RAD_SENSOR 0
#define OBSW_DEBUG_RAD_SENSOR 0
#define OBSW_TEST_PL_PCDU 0
#define OBSW_DEBUG_PL_PCDU 0
#define OBSW_TEST_BPX_BATT 0
#define OBSW_DEBUG_BPX_BATT 0
#define OBSW_TEST_IMTQ 0
#define OBSW_DEBUG_IMTQ 0
#define OBSW_TEST_RW 0
#define OBSW_DEBUG_RW 0
#define OBSW_TEST_LIBGPIOD 0
#define OBSW_TEST_PLOC_HANDLER 0
#define OBSW_TEST_CCSDS_BRIDGE 0
#define OBSW_TEST_CCSDS_PTME 0
#define OBSW_TEST_TE7020_HEATER 0
#define OBSW_TEST_GPIO_OPEN_BY_LABEL 0
#define OBSW_TEST_GPIO_OPEN_BY_LINE_NAME 0
#define OBSW_DEBUG_P60DOCK 0
#define OBSW_PRINT_CORE_HK 0
#define OBSW_DEBUG_PDU1 0
#define OBSW_DEBUG_PDU2 0
#define OBSW_DEBUG_GPS 0
#define OBSW_DEBUG_ACU 0
#define OBSW_DEBUG_SYRLINKS 0
#define OBSW_DEBUG_PDEC_HANDLER 0
#define OBSW_DEBUG_PLOC_SUPERVISOR 0
#define OBSW_DEBUG_PLOC_MPSOC 0
#define OBSW_DEBUG_STARTRACKER 0
#define OBSW_TCP_SERVER_WIRETAPPING 0
/*******************************************************************/
/** CMake Defines */
/*******************************************************************/
#define OBSW_ADD_TMTC_UDP_SERVER 1
#define OBSW_ADD_TMTC_TCP_SERVER 1
#cmakedefine EIVE_BUILD_GPSD_GPS_HANDLER
#cmakedefine LIBGPS_VERSION_MAJOR @LIBGPS_VERSION_MAJOR@
#cmakedefine LIBGPS_VERSION_MINOR @LIBGPS_VERSION_MINOR@
#ifdef RASPBERRY_PI
#include "rpiConfig.h"
#elif defined(XIPHOS_Q7S)
#include "q7sConfig.h"
#endif
#ifdef __cplusplus
#include "objects/systemObjectList.h"
#include "events/subsystemIdRanges.h"
#include "returnvalues/classIds.h"
#endif
#endif /* FSFWCONFIG_OBSWCONFIG_H_ */

View File

@ -1,19 +1,25 @@
#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/utility/TmFunnel.h>
#include <mission/tmtc/TmFunnelHandler.h>
#include <objects/systemObjectList.h>
#include <tmtc/apid.h>
#include <tmtc/pusIds.h>
#include "OBSWConfig.h"
#include "devConf.h"
#include "eive/definitions.h"
#include "fsfw/platform.h"
#include "fsfw_tests/integration/task/TestTask.h"
#include "tmtc/pusIds.h"
#if OBSW_USE_TMTC_TCP_BRIDGE == 0
#if OBSW_ADD_TMTC_UDP_SERVER == 1
#include "fsfw/osal/common/UdpTcPollingTask.h"
#include "fsfw/osal/common/UdpTmTcBridge.h"
#else
#endif
#if OBSW_ADD_TMTC_TCP_SERVER == 1
#include "fsfw/osal/common/TcpTmTcBridge.h"
#include "fsfw/osal/common/TcpTmTcServer.h"
#endif
@ -24,24 +30,86 @@
#include <test/testtasks/TestTask.h>
#endif
#include <dummies/AcuDummy.h>
#include <dummies/BpxDummy.h>
#include <dummies/ComCookieDummy.h>
#include <dummies/ComIFDummy.h>
#include <dummies/CoreControllerDummy.h>
#include <dummies/GyroAdisDummy.h>
#include <dummies/GyroL3GD20Dummy.h>
#include <dummies/ImtqDummy.h>
#include <dummies/MgmLIS3MDLDummy.h>
#include <dummies/P60DockDummy.h>
#include <dummies/PduDummy.h>
#include <dummies/PlPcduDummy.h>
#include <dummies/RwDummy.h>
#include <dummies/StarTrackerDummy.h>
#include <dummies/SusDummy.h>
#include <dummies/SyrlinksDummy.h>
#include <dummies/TemperatureSensorsDummy.h>
#include "dummies/helpers.h"
#include "mission/utility/GlobalConfigHandler.h"
#ifdef PLATFORM_UNIX
#include <fsfw_hal/linux/serial/SerialComIF.h>
#include <fsfw_hal/linux/serial/SerialCookie.h>
#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 "test/gpio/DummyGpioIF.h"
#endif
void Factory::setStaticFrameworkObjectIds() {
PusServiceBase::packetSource = objects::PUS_PACKET_DISTRIBUTOR;
PusServiceBase::packetDestination = objects::TM_FUNNEL;
PusServiceBase::PUS_DISTRIBUTOR = objects::PUS_PACKET_DISTRIBUTOR;
PusServiceBase::PACKET_DESTINATION = objects::PUS_TM_FUNNEL;
CommandingServiceBase::defaultPacketSource = objects::PUS_PACKET_DISTRIBUTOR;
CommandingServiceBase::defaultPacketDestination = objects::TM_FUNNEL;
CommandingServiceBase::defaultPacketDestination = objects::PUS_TM_FUNNEL;
TmFunnel::downlinkDestination = objects::TMTC_BRIDGE;
// No storage object for now.
TmFunnel::storageDestination = objects::NO_OBJECT;
VerificationReporter::messageReceiver = objects::PUS_SERVICE_1_VERIFICATION;
TmPacketBase::timeStamperId = objects::TIME_STAMPER;
VerificationReporter::DEFAULT_RECEIVER = objects::PUS_SERVICE_1_VERIFICATION;
}
void ObjectFactory::produce(void* args) {
Factory::setStaticFrameworkObjectIds();
ObjectFactory::produceGenericObjects();
PusTmFunnel* pusFunnel;
CfdpTmFunnel* cfdpFunnel;
ObjectFactory::produceGenericObjects(nullptr, &pusFunnel, &cfdpFunnel);
DummyGpioIF* dummyGpioIF = new DummyGpioIF();
auto* dummySwitcher = new DummyPowerSwitcher(objects::PCDU_HANDLER, 18, 0);
static_cast<void>(dummyGpioIF);
#ifdef PLATFORM_UNIX
new SerialComIF(objects::UART_COM_IF);
#if OBSW_ADD_PLOC_MPSOC == 1
std::string mpscoDev = "";
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,
plocMpsocHelper, Gpio(gpioIds::ENABLE_MPSOC_UART, dummyGpioIF),
objects::PLOC_SUPERVISOR_HANDLER);
#endif /* OBSW_ADD_PLOC_MPSOC == 1 */
#if OBSW_ADD_PLOC_SUPERVISOR == 1
std::string plocSupvString = "/dev/ploc_supv";
auto supervisorCookie =
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);
#endif /* OBSW_ADD_PLOC_SUPERVISOR == 1 */
#endif
dummy::DummyCfg cfg;
dummy::createDummies(cfg, *dummySwitcher);
new ThermalController(objects::THERMAL_CONTROLLER);
new TestTask(objects::TEST_TASK);
}

View File

@ -1,10 +1,3 @@
target_sources(${OBSW_NAME} PRIVATE
print.c
)
target_include_directories(${OBSW_NAME} PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}
)
target_sources(${OBSW_NAME} PRIVATE print.c)
target_include_directories(${OBSW_NAME} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})

View File

@ -1,11 +0,0 @@
# add main and others
CXXSRC += $(wildcard $(CURRENTPATH)/*.cpp)
CSRC += $(wildcard $(CURRENTPATH)/*.c)
CSRC += $(wildcard $(CURRENTPATH)/boardconfig/*.c)
CXXSRC += $(wildcard $(CURRENTPATH)/comIF/*.cpp)
CSRC += $(wildcard $(CURRENTPATH)/comIF/*.c)
INCLUDES += $(CURRENTPATH)/boardconfig
INCLUDES += $(CURRENTPATH)/fsfwconfig

View File

@ -129,9 +129,7 @@ ArduinoComIF::~ArduinoComIF() {
CloseHandle(hCom);
#endif
}
ReturnValue_t ArduinoComIF::initializeInterface(CookieIF *cookie) {
return HasReturnvaluesIF::RETURN_OK;
}
ReturnValue_t ArduinoComIF::initializeInterface(CookieIF *cookie) { return returnvalue::OK; }
ReturnValue_t ArduinoComIF::sendMessage(CookieIF *cookie, const uint8_t *data, size_t len) {
ArduinoCookie *arduinoCookie = dynamic_cast<ArduinoCookie *>(cookie);
@ -142,10 +140,10 @@ ReturnValue_t ArduinoComIF::sendMessage(CookieIF *cookie, const uint8_t *data, s
return sendMessage(arduinoCookie->command, arduinoCookie->address, data, len);
}
ReturnValue_t ArduinoComIF::getSendSuccess(CookieIF *cookie) { return RETURN_OK; }
ReturnValue_t ArduinoComIF::getSendSuccess(CookieIF *cookie) { return returnvalue::OK; }
ReturnValue_t ArduinoComIF::requestReceiveMessage(CookieIF *cookie, size_t requestLen) {
return RETURN_OK;
return returnvalue::OK;
}
ReturnValue_t ArduinoComIF::readReceivedMessage(CookieIF *cookie, uint8_t **buffer, size_t *size) {
@ -158,7 +156,7 @@ ReturnValue_t ArduinoComIF::readReceivedMessage(CookieIF *cookie, uint8_t **buff
*buffer = arduinoCookie->replyBuffer.data();
*size = arduinoCookie->receivedDataLen;
return HasReturnvaluesIF::RETURN_OK;
return returnvalue::OK;
}
ReturnValue_t ArduinoComIF::sendMessage(uint8_t command, uint8_t address, const uint8_t *data,
@ -178,14 +176,14 @@ ReturnValue_t ArduinoComIF::sendMessage(uint8_t command, uint8_t address, const
ReturnValue_t result =
DleEncoder::encode(&command, 1, currentPosition, remainingLen, &encodedLen, false);
if (result != RETURN_OK) {
if (result != returnvalue::OK) {
return result;
}
currentPosition += encodedLen;
remainingLen -= encodedLen; // DleEncoder will never return encodedLen > remainingLen
result = DleEncoder::encode(&address, 1, currentPosition, remainingLen, &encodedLen, false);
if (result != RETURN_OK) {
if (result != returnvalue::OK) {
return result;
}
currentPosition += encodedLen;
@ -199,7 +197,7 @@ ReturnValue_t ArduinoComIF::sendMessage(uint8_t command, uint8_t address, const
result =
DleEncoder::encode(temporaryBuffer, 2, currentPosition, remainingLen, &encodedLen, false);
if (result != RETURN_OK) {
if (result != returnvalue::OK) {
return result;
}
currentPosition += encodedLen;
@ -207,7 +205,7 @@ ReturnValue_t ArduinoComIF::sendMessage(uint8_t command, uint8_t address, const
// encoding the actual data
result = DleEncoder::encode(data, dataLen, currentPosition, remainingLen, &encodedLen, false);
if (result != RETURN_OK) {
if (result != returnvalue::OK) {
return result;
}
currentPosition += encodedLen;
@ -224,7 +222,7 @@ ReturnValue_t ArduinoComIF::sendMessage(uint8_t command, uint8_t address, const
result =
DleEncoder::encode(temporaryBuffer, 2, currentPosition, remainingLen, &encodedLen, false);
if (result != RETURN_OK) {
if (result != returnvalue::OK) {
return result;
}
currentPosition += encodedLen;
@ -241,16 +239,16 @@ ReturnValue_t ArduinoComIF::sendMessage(uint8_t command, uint8_t address, const
ssize_t writtenlen = ::write(serialPort, sendBuffer, encodedLen);
if (writtenlen < 0) {
// we could try to find out what happened...
return RETURN_FAILED;
return returnvalue::FAILED;
}
if (writtenlen != encodedLen) {
// the OS failed us, we do not try to block until everything is written, as
// we can not block the whole system here
return RETURN_FAILED;
return returnvalue::FAILED;
}
return RETURN_OK;
return returnvalue::OK;
#elif WIN32
return HasReturnvaluesIF::RETURN_OK;
return returnvalue::OK;
#endif
}
@ -297,7 +295,7 @@ void ArduinoComIF::handleSerialPortRx() {
packet, sizeof(packet), &packetLen);
size_t toDelete = firstSTXinRawData;
if (result == HasReturnvaluesIF::RETURN_OK) {
if (result == returnvalue::OK) {
handlePacket(packet, packetLen);
// after handling the packet, we can delete it from the raw stream,

View File

@ -5,7 +5,7 @@
#include <fsfw/container/SimpleRingBuffer.h>
#include <fsfw/devicehandlers/DeviceCommunicationIF.h>
#include <fsfw/objectmanager/SystemObject.h>
#include <fsfw/returnvalues/HasReturnvaluesIF.h>
#include <fsfw/returnvalues/returnvalue.h>
#include <cstdint>
#include <map>

View File

@ -1,8 +1 @@
target_sources(${TARGET_NAME} PUBLIC
ArduinoComIF.cpp
ArduinoCookie.cpp
)
target_sources(${OBSW_NAME} PUBLIC ArduinoComIF.cpp ArduinoCookie.cpp)

View File

@ -1,27 +1,17 @@
target_sources(${OBSW_NAME} PRIVATE
ipc/MissionMessageTypes.cpp
)
target_sources(${OBSW_NAME} PRIVATE ipc/MissionMessageTypes.cpp)
target_include_directories(${OBSW_NAME} PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}
)
target_include_directories(${OBSW_NAME} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
# If a special translation file for object IDs exists, compile it.
if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/objects/translateObjects.cpp")
target_sources(${OBSW_NAME} PRIVATE
objects/translateObjects.cpp
)
target_sources(${UNITTEST_NAME} PRIVATE
objects/translateObjects.cpp
)
target_sources(${OBSW_NAME} PRIVATE objects/translateObjects.cpp)
target_sources(${UNITTEST_NAME} PRIVATE objects/translateObjects.cpp)
endif()
# If a special translation file for events exists, compile it.
if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/objects/translateObjects.cpp")
target_sources(${OBSW_NAME} PRIVATE
events/translateEvents.cpp
)
target_sources(${UNITTEST_NAME} PRIVATE
events/translateEvents.cpp
)
target_sources(${OBSW_NAME} PRIVATE events/translateEvents.cpp)
target_sources(${UNITTEST_NAME} PRIVATE events/translateEvents.cpp)
endif()
add_subdirectory(pollingsequence)

View File

@ -7,41 +7,41 @@
//! Used to determine whether C++ ostreams are used which can increase
//! the binary size significantly. If this is disabled,
//! the C stdio functions can be used alternatively
#define FSFW_CPP_OSTREAM_ENABLED 1
#define FSFW_CPP_OSTREAM_ENABLED 1
//! More FSFW related printouts depending on level. Useful for development.
#define FSFW_VERBOSE_LEVEL 1
#define FSFW_VERBOSE_LEVEL 1
//! Can be used to completely disable printouts, even the C stdio ones.
#if FSFW_CPP_OSTREAM_ENABLED == 0 && FSFW_VERBOSE_LEVEL == 0
#define FSFW_DISABLE_PRINTOUT 0
#define FSFW_DISABLE_PRINTOUT 0
#endif
#define FSFW_USE_PUS_C_TELEMETRY 1
#define FSFW_USE_PUS_C_TELEMETRY 1
#define FSFW_USE_PUS_C_TELECOMMANDS 1
//! Can be used to disable the ANSI color sequences for C stdio.
#define FSFW_COLORED_OUTPUT 1
#define FSFW_COLORED_OUTPUT 1
//! If FSFW_OBJ_EVENT_TRANSLATION is set to one,
//! additional output which requires the translation files translateObjects
//! and translateEvents (and their compiled source files)
#define FSFW_OBJ_EVENT_TRANSLATION 1
#define FSFW_OBJ_EVENT_TRANSLATION 1
#if FSFW_OBJ_EVENT_TRANSLATION == 1
//! Specify whether info events are printed too.
#define FSFW_DEBUG_INFO 1
#include "objects/translateObjects.h"
#define FSFW_DEBUG_INFO 1
#include "events/translateEvents.h"
#include "objects/translateObjects.h"
#else
#endif
//! When using the newlib nano library, C99 support for stdio facilities
//! will not be provided. This define should be set to 1 if this is the case.
#define FSFW_NO_C99_IO 1
#define FSFW_NO_C99_IO 1
//! Specify whether a special mode store is used for Subsystem components.
#define FSFW_USE_MODESTORE 0
#define FSFW_USE_MODESTORE 0
//! Defines if the real time scheduler for linux should be used.
//! If set to 0, this will also disable priority settings for linux
@ -58,7 +58,7 @@ static constexpr uint8_t FSFW_MISSION_TIMESTAMP_SIZE = 7;
//! Configure the allocated pool sizes for the event manager.
static constexpr size_t FSFW_EVENTMGMR_MATCHTREE_NODES = 240;
static constexpr size_t FSFW_EVENTMGMT_EVENTIDMATCHERS = 120;
static constexpr size_t FSFW_EVENTMGMR_RANGEMATCHERS = 120;
static constexpr size_t FSFW_EVENTMGMR_RANGEMATCHERS = 120;
//! Defines the FIFO depth of each commanding service base which
//! also determines how many commands a CSB service can handle in one cycle
@ -70,6 +70,6 @@ static constexpr size_t FSFW_PRINT_BUFFER_SIZE = 124;
static constexpr size_t FSFW_MAX_TM_PACKET_SIZE = 2048;
}
} // namespace fsfwconfig
#endif /* CONFIG_FSFWCONFIG_H_ */

View File

@ -8,18 +8,26 @@
#include "commonConfig.h"
#define OBSW_ADD_TEST_CODE 1
#define OBSW_PRINT_MISSED_DEADLINES 1
#define OBSW_ADD_TEST_CODE 1
/* These defines should be disabled for mission code but are useful for
debugging. */
#define OBSW_VEBOSE_LEVEL 1
#define OBSW_VEBOSE_LEVEL 1
#define OBSW_USE_CCSDS_IP_CORE 0
#define OBSW_ADD_CCSDS_IP_CORES 0
// Set to 1 if all telemetry should be sent to the PTME IP Core
#define OBSW_TM_TO_PTME 0
// Set to 1 if telecommands are received via the PDEC IP Core
#define OBSW_TC_FROM_PDEC 0
#define OBSW_SYRLINKS_SIMULATED 0
#define OBSW_INITIALIZE_SWITCHES 0
#define OBSW_TCP_SERVER_WIRETAPPING 0
#ifdef __cplusplus
#include "objects/systemObjectList.h"

View File

@ -1,57 +0,0 @@
#ifndef FSFWCONFIG_DEVICES_POWERSWITCHERLIST_H_
#define FSFWCONFIG_DEVICES_POWERSWITCHERLIST_H_
#include <OBSWConfig.h>
namespace pcduSwitches {
/* Switches are uint8_t datatype and go from 0 to 255 */
enum SwitcherList {
Q7S,
PAYLOAD_PCDU_CH1,
RW,
TCS_BOARD_8V_HEATER_IN,
SUS_REDUNDANT,
DEPLOYMENT_MECHANISM,
PAYLOAD_PCDU_CH6,
ACS_BOARD_SIDE_B,
PAYLOAD_CAMERA,
TCS_BOARD_3V3,
SYRLINKS,
STAR_TRACKER,
MGT,
SUS_NOMINAL,
SOLAR_CELL_EXP,
PLOC,
ACS_BOARD_SIDE_A,
NUMBER_OF_SWITCHES
};
static const uint8_t ON = 1;
static const uint8_t OFF = 0;
/* Output states after reboot of the PDUs */
static const uint8_t INIT_STATE_Q7S = ON;
static const uint8_t INIT_STATE_PAYLOAD_PCDU_CH1 = OFF;
static const uint8_t INIT_STATE_RW = OFF;
#if BOARD_TE0720 == 1
/* Because the TE0720 is not connected to the PCDU, this switch is always on */
static const uint8_t INIT_STATE_TCS_BOARD_8V_HEATER_IN = ON;
#else
static const uint8_t INIT_STATE_TCS_BOARD_8V_HEATER_IN = OFF;
#endif
static const uint8_t INIT_STATE_SUS_REDUNDANT = OFF;
static const uint8_t INIT_STATE_DEPLOYMENT_MECHANISM = OFF;
static const uint8_t INIT_STATE_PAYLOAD_PCDU_CH6 = OFF;
static const uint8_t INIT_STATE_ACS_BOARD_SIDE_B = OFF;
static const uint8_t INIT_STATE_PAYLOAD_CAMERA = OFF;
static const uint8_t INIT_STATE_TCS_BOARD_3V3 = OFF;
static const uint8_t INIT_STATE_SYRLINKS = OFF;
static const uint8_t INIT_STATE_STAR_TRACKER = OFF;
static const uint8_t INIT_STATE_MGT = OFF;
static const uint8_t INIT_STATE_SUS_NOMINAL = OFF;
static const uint8_t INIT_STATE_SOLAR_CELL_EXP = OFF;
static const uint8_t INIT_STATE_PLOC = OFF;
static const uint8_t INIT_STATE_ACS_BOARD_SIDE_A = OFF;
} // namespace pcduSwitches
#endif /* FSFWCONFIG_DEVICES_POWERSWITCHERLIST_H_ */

View File

@ -1,10 +1,10 @@
#ifndef CONFIG_EVENTS_SUBSYSTEMIDRANGES_H_
#define CONFIG_EVENTS_SUBSYSTEMIDRANGES_H_
#include <common/config/commonSubsystemIds.h>
#include <cstdint>
#include "eive/eventSubsystemIds.h"
/**
* These IDs are part of the ID for an event thrown by a subsystem.
* Numbers 0-80 are reserved for FSFW Subsystem IDs (framework/events/)

View File

@ -1,7 +1,7 @@
/**
* @brief Auto-generated event translation file. Contains 83 translations.
* @brief Auto-generated event translation file. Contains 239 translations.
* @details
* Generated on: 2021-05-17 19:49:55
* Generated on: 2022-11-16 15:25:08
*/
#include "translateEvents.h"
@ -34,6 +34,7 @@ const char *DEVICE_UNREQUESTED_REPLY_STRING = "DEVICE_UNREQUESTED_REPLY";
const char *INVALID_DEVICE_COMMAND_STRING = "INVALID_DEVICE_COMMAND";
const char *MONITORING_LIMIT_EXCEEDED_STRING = "MONITORING_LIMIT_EXCEEDED";
const char *MONITORING_AMBIGUOUS_STRING = "MONITORING_AMBIGUOUS";
const char *DEVICE_WANTS_HARD_REBOOT_STRING = "DEVICE_WANTS_HARD_REBOOT";
const char *FUSE_CURRENT_HIGH_STRING = "FUSE_CURRENT_HIGH";
const char *FUSE_WENT_OFF_STRING = "FUSE_WENT_OFF";
const char *POWER_ABOVE_HIGH_LIMIT_STRING = "POWER_ABOVE_HIGH_LIMIT";
@ -59,7 +60,6 @@ const char *MONITOR_CHANGED_STATE_STRING = "MONITOR_CHANGED_STATE";
const char *VALUE_BELOW_LOW_LIMIT_STRING = "VALUE_BELOW_LOW_LIMIT";
const char *VALUE_ABOVE_HIGH_LIMIT_STRING = "VALUE_ABOVE_HIGH_LIMIT";
const char *VALUE_OUT_OF_RANGE_STRING = "VALUE_OUT_OF_RANGE";
const char *SWITCHING_TM_FAILED_STRING = "SWITCHING_TM_FAILED";
const char *CHANGING_MODE_STRING = "CHANGING_MODE";
const char *MODE_INFO_STRING = "MODE_INFO";
const char *FALLBACK_FAILED_STRING = "FALLBACK_FAILED";
@ -75,6 +75,7 @@ const char *OVERWRITING_HEALTH_STRING = "OVERWRITING_HEALTH";
const char *TRYING_RECOVERY_STRING = "TRYING_RECOVERY";
const char *RECOVERY_STEP_STRING = "RECOVERY_STEP";
const char *RECOVERY_DONE_STRING = "RECOVERY_DONE";
const char *HANDLE_PACKET_FAILED_STRING = "HANDLE_PACKET_FAILED";
const char *RF_AVAILABLE_STRING = "RF_AVAILABLE";
const char *RF_LOST_STRING = "RF_LOST";
const char *BIT_LOCK_STRING = "BIT_LOCK";
@ -82,15 +83,166 @@ const char *BIT_LOCK_LOST_STRING = "BIT_LOCK_LOST";
const char *FRAME_PROCESSING_FAILED_STRING = "FRAME_PROCESSING_FAILED";
const char *CLOCK_SET_STRING = "CLOCK_SET";
const char *CLOCK_SET_FAILURE_STRING = "CLOCK_SET_FAILURE";
const char *TC_DELETION_FAILED_STRING = "TC_DELETION_FAILED";
const char *TEST_STRING = "TEST";
const char *CHANGE_OF_SETUP_PARAMETER_STRING = "CHANGE_OF_SETUP_PARAMETER";
const char *STORE_ERROR_STRING = "STORE_ERROR";
const char *MSG_QUEUE_ERROR_STRING = "MSG_QUEUE_ERROR";
const char *SERIALIZATION_ERROR_STRING = "SERIALIZATION_ERROR";
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 *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";
const char *HEATER_WENT_OFF_STRING = "HEATER_WENT_OFF";
const char *SWITCH_ALREADY_ON_STRING = "SWITCH_ALREADY_ON";
const char *SWITCH_ALREADY_OFF_STRING = "SWITCH_ALREADY_OFF";
const char *MAIN_SWITCH_TIMEOUT_STRING = "MAIN_SWITCH_TIMEOUT";
const char *FAULTY_HEATER_WAS_ON_STRING = "FAULTY_HEATER_WAS_ON";
const char *BURN_PHASE_START_STRING = "BURN_PHASE_START";
const char *BURN_PHASE_DONE_STRING = "BURN_PHASE_DONE";
const char *MAIN_SWITCH_ON_TIMEOUT_STRING = "MAIN_SWITCH_ON_TIMEOUT";
const char *MAIN_SWITCH_OFF_TIMEOUT_STRING = "MAIN_SWITCH_OFF_TIMEOUT";
const char *DEPL_SA1_GPIO_SWTICH_ON_FAILED_STRING = "DEPL_SA1_GPIO_SWTICH_ON_FAILED";
const char *DEPL_SA2_GPIO_SWTICH_ON_FAILED_STRING = "DEPL_SA2_GPIO_SWTICH_ON_FAILED";
const char *DEPL_SA1_GPIO_SWTICH_OFF_FAILED_STRING = "DEPL_SA1_GPIO_SWTICH_OFF_FAILED";
const char *DEPL_SA2_GPIO_SWTICH_OFF_FAILED_STRING = "DEPL_SA2_GPIO_SWTICH_OFF_FAILED";
const char *AUTONOMOUS_DEPLOYMENT_COMPLETED_STRING = "AUTONOMOUS_DEPLOYMENT_COMPLETED";
const char *MEMORY_READ_RPT_CRC_FAILURE_STRING = "MEMORY_READ_RPT_CRC_FAILURE";
const char *ACK_FAILURE_STRING = "ACK_FAILURE";
const char *EXE_FAILURE_STRING = "EXE_FAILURE";
const char *CRC_FAILURE_EVENT_STRING = "CRC_FAILURE_EVENT";
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 *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";
const char *SELF_TEST_PWM_FAILURE_STRING = "SELF_TEST_PWM_FAILURE";
const char *SELF_TEST_TC_FAILURE_STRING = "SELF_TEST_TC_FAILURE";
const char *SELF_TEST_MTM_RANGE_FAILURE_STRING = "SELF_TEST_MTM_RANGE_FAILURE";
const char *SELF_TEST_COIL_CURRENT_FAILURE_STRING = "SELF_TEST_COIL_CURRENT_FAILURE";
const char *INVALID_ERROR_BYTE_STRING = "INVALID_ERROR_BYTE";
const char *ERROR_STATE_STRING = "ERROR_STATE";
const char *RESET_OCCURED_STRING = "RESET_OCCURED";
const char *BOOTING_FIRMWARE_FAILED_STRING = "BOOTING_FIRMWARE_FAILED";
const char *BOOTING_BOOTLOADER_FAILED_STRING = "BOOTING_BOOTLOADER_FAILED";
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";
const char *SUPV_ACK_FAILURE_STRING = "SUPV_ACK_FAILURE";
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_SHUWDOWN_BUILD_FAILED_STRING = "SUPV_MPSOC_SHUWDOWN_BUILD_FAILED";
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";
const char *MRAM_DUMP_FAILED_STRING = "MRAM_DUMP_FAILED";
const char *MRAM_DUMP_FINISHED_STRING = "MRAM_DUMP_FINISHED";
const char *INVALID_TC_FRAME_STRING = "INVALID_TC_FRAME";
const char *INVALID_FAR_STRING = "INVALID_FAR";
const char *CARRIER_LOCK_STRING = "CARRIER_LOCK";
const char *BIT_LOCK_PDEC_STRING = "BIT_LOCK_PDEC";
const char *LOST_CARRIER_LOCK_PDEC_STRING = "LOST_CARRIER_LOCK_PDEC";
const char *LOST_BIT_LOCK_PDEC_STRING = "LOST_BIT_LOCK_PDEC";
const char *POLL_ERROR_PDEC_STRING = "POLL_ERROR_PDEC";
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";
const char *IMAGE_DOWNLOAD_SUCCESSFUL_STRING = "IMAGE_DOWNLOAD_SUCCESSFUL";
const char *FLASH_WRITE_SUCCESSFUL_STRING = "FLASH_WRITE_SUCCESSFUL";
const char *FLASH_READ_SUCCESSFUL_STRING = "FLASH_READ_SUCCESSFUL";
const char *FLASH_READ_FAILED_STRING = "FLASH_READ_FAILED";
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_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";
const char *STR_HELPER_SENDING_PACKET_FAILED_STRING = "STR_HELPER_SENDING_PACKET_FAILED";
const char *STR_HELPER_REQUESTING_MSG_FAILED_STRING = "STR_HELPER_REQUESTING_MSG_FAILED";
const char *MPSOC_FLASH_WRITE_FAILED_STRING = "MPSOC_FLASH_WRITE_FAILED";
const char *MPSOC_FLASH_WRITE_SUCCESSFUL_STRING = "MPSOC_FLASH_WRITE_SUCCESSFUL";
const char *MPSOC_SENDING_COMMAND_FAILED_STRING = "MPSOC_SENDING_COMMAND_FAILED";
const char *MPSOC_HELPER_REQUESTING_REPLY_FAILED_STRING = "MPSOC_HELPER_REQUESTING_REPLY_FAILED";
const char *MPSOC_HELPER_READING_REPLY_FAILED_STRING = "MPSOC_HELPER_READING_REPLY_FAILED";
const char *MPSOC_MISSING_ACK_STRING = "MPSOC_MISSING_ACK";
const char *MPSOC_MISSING_EXE_STRING = "MPSOC_MISSING_EXE";
const char *MPSOC_ACK_FAILURE_REPORT_STRING = "MPSOC_ACK_FAILURE_REPORT";
const char *MPSOC_EXE_FAILURE_REPORT_STRING = "MPSOC_EXE_FAILURE_REPORT";
const char *MPSOC_ACK_INVALID_APID_STRING = "MPSOC_ACK_INVALID_APID";
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 *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";
const char *I_DRO_OUT_OF_BOUNDS_STRING = "I_DRO_OUT_OF_BOUNDS";
const char *U_X8_OUT_OF_BOUNDS_STRING = "U_X8_OUT_OF_BOUNDS";
const char *I_X8_OUT_OF_BOUNDS_STRING = "I_X8_OUT_OF_BOUNDS";
const char *U_TX_OUT_OF_BOUNDS_STRING = "U_TX_OUT_OF_BOUNDS";
const char *I_TX_OUT_OF_BOUNDS_STRING = "I_TX_OUT_OF_BOUNDS";
const char *U_MPA_OUT_OF_BOUNDS_STRING = "U_MPA_OUT_OF_BOUNDS";
const char *I_MPA_OUT_OF_BOUNDS_STRING = "I_MPA_OUT_OF_BOUNDS";
const char *U_HPA_OUT_OF_BOUNDS_STRING = "U_HPA_OUT_OF_BOUNDS";
const char *I_HPA_OUT_OF_BOUNDS_STRING = "I_HPA_OUT_OF_BOUNDS";
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 *CHILDREN_LOST_MODE_STRING = "CHILDREN_LOST_MODE";
const char *GPS_FIX_CHANGE_STRING = "GPS_FIX_CHANGE";
const char *P60_BOOT_COUNT_STRING = "P60_BOOT_COUNT";
const char *BATT_MODE_STRING = "BATT_MODE";
const char *BATT_MODE_CHANGED_STRING = "BATT_MODE_CHANGED";
const char *SUPV_UPDATE_FAILED_STRING = "SUPV_UPDATE_FAILED";
const char *SUPV_UPDATE_SUCCESSFUL_STRING = "SUPV_UPDATE_SUCCESSFUL";
const char *SUPV_CONTINUE_UPDATE_FAILED_STRING = "SUPV_CONTINUE_UPDATE_FAILED";
const char *SUPV_CONTINUE_UPDATE_SUCCESSFUL_STRING = "SUPV_CONTINUE_UPDATE_SUCCESSFUL";
const char *TERMINATED_UPDATE_PROCEDURE_STRING = "TERMINATED_UPDATE_PROCEDURE";
const char *SUPV_EVENT_BUFFER_REQUEST_SUCCESSFUL_STRING = "SUPV_EVENT_BUFFER_REQUEST_SUCCESSFUL";
const char *SUPV_EVENT_BUFFER_REQUEST_FAILED_STRING = "SUPV_EVENT_BUFFER_REQUEST_FAILED";
const char *SUPV_EVENT_BUFFER_REQUEST_TERMINATED_STRING = "SUPV_EVENT_BUFFER_REQUEST_TERMINATED";
const char *SUPV_MEM_CHECK_OK_STRING = "SUPV_MEM_CHECK_OK";
const char *SUPV_MEM_CHECK_FAIL_STRING = "SUPV_MEM_CHECK_FAIL";
const char *SUPV_SENDING_COMMAND_FAILED_STRING = "SUPV_SENDING_COMMAND_FAILED";
const char *SUPV_HELPER_REQUESTING_REPLY_FAILED_STRING = "SUPV_HELPER_REQUESTING_REPLY_FAILED";
const char *SUPV_HELPER_READING_REPLY_FAILED_STRING = "SUPV_HELPER_READING_REPLY_FAILED";
const char *SUPV_MISSING_ACK_STRING = "SUPV_MISSING_ACK";
const char *SUPV_MISSING_EXE_STRING = "SUPV_MISSING_EXE";
const char *SUPV_ACK_FAILURE_REPORT_STRING = "SUPV_ACK_FAILURE_REPORT";
const char *SUPV_EXE_FAILURE_REPORT_STRING = "SUPV_EXE_FAILURE_REPORT";
const char *SUPV_ACK_INVALID_APID_STRING = "SUPV_ACK_INVALID_APID";
const char *SUPV_EXE_INVALID_APID_STRING = "SUPV_EXE_INVALID_APID";
const char *ACK_RECEPTION_FAILURE_STRING = "ACK_RECEPTION_FAILURE";
const char *EXE_RECEPTION_FAILURE_STRING = "EXE_RECEPTION_FAILURE";
const char *WRITE_MEMORY_FAILED_STRING = "WRITE_MEMORY_FAILED";
const char *SUPV_REPLY_SIZE_MISSMATCH_STRING = "SUPV_REPLY_SIZE_MISSMATCH";
const char *SUPV_REPLY_CRC_MISSMATCH_STRING = "SUPV_REPLY_CRC_MISSMATCH";
const char *SUPV_UPDATE_PROGRESS_STRING = "SUPV_UPDATE_PROGRESS";
const char *HDLC_FRAME_REMOVAL_ERROR_STRING = "HDLC_FRAME_REMOVAL_ERROR";
const char *HDLC_CRC_ERROR_STRING = "HDLC_CRC_ERROR";
const char *ALLOC_FAILURE_STRING = "ALLOC_FAILURE";
const char *REBOOT_SW_STRING = "REBOOT_SW";
const char *REBOOT_MECHANISM_TRIGGERED_STRING = "REBOOT_MECHANISM_TRIGGERED";
const char *REBOOT_HW_STRING = "REBOOT_HW";
const char *NO_SD_CARD_ACTIVE_STRING = "NO_SD_CARD_ACTIVE";
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 *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";
const char *WRITE_CONFIGFILE_FAILED_STRING = "WRITE_CONFIGFILE_FAILED";
const char *READ_CONFIGFILE_FAILED_STRING = "READ_CONFIGFILE_FAILED";
const char *translateEvents(Event event) {
switch ((event & 0xffff)) {
switch ((event & 0xFFFF)) {
case (2200):
return STORE_SEND_WRITE_FAILED_STRING;
case (2201):
@ -149,6 +301,8 @@ const char *translateEvents(Event event) {
return MONITORING_LIMIT_EXCEEDED_STRING;
case (2810):
return MONITORING_AMBIGUOUS_STRING;
case (2811):
return DEVICE_WANTS_HARD_REBOOT_STRING;
case (4201):
return FUSE_CURRENT_HIGH_STRING;
case (4202):
@ -199,8 +353,6 @@ const char *translateEvents(Event event) {
return VALUE_ABOVE_HIGH_LIMIT_STRING;
case (7204):
return VALUE_OUT_OF_RANGE_STRING;
case (7301):
return SWITCHING_TM_FAILED_STRING;
case (7400):
return CHANGING_MODE_STRING;
case (7401):
@ -231,6 +383,8 @@ const char *translateEvents(Event event) {
return RECOVERY_STEP_STRING;
case (7512):
return RECOVERY_DONE_STRING;
case (7600):
return HANDLE_PACKET_FAILED_STRING;
case (7900):
return RF_AVAILABLE_STRING;
case (7901):
@ -245,18 +399,320 @@ const char *translateEvents(Event event) {
return CLOCK_SET_STRING;
case (8901):
return CLOCK_SET_FAILURE_STRING;
case (9100):
return TC_DELETION_FAILED_STRING;
case (9700):
return TEST_STRING;
case (10600):
return CHANGE_OF_SETUP_PARAMETER_STRING;
case (11101):
case (10800):
return STORE_ERROR_STRING;
case (10801):
return MSG_QUEUE_ERROR_STRING;
case (10802):
return SERIALIZATION_ERROR_STRING;
case (11300):
return SWITCH_CMD_SENT_STRING;
case (11301):
return SWITCH_HAS_CHANGED_STRING;
case (11302):
return SWITCHING_Q7S_DENIED_STRING;
case (11303):
return FDIR_REACTION_IGNORED_STRING;
case (11400):
return GPIO_PULL_HIGH_FAILED_STRING;
case (11401):
return GPIO_PULL_LOW_FAILED_STRING;
case (11402):
return HEATER_WENT_ON_STRING;
case (11403):
return HEATER_WENT_OFF_STRING;
case (11404):
return SWITCH_ALREADY_ON_STRING;
case (11405):
return SWITCH_ALREADY_OFF_STRING;
case (11406):
return MAIN_SWITCH_TIMEOUT_STRING;
case (11407):
return FAULTY_HEATER_WAS_ON_STRING;
case (11500):
return BURN_PHASE_START_STRING;
case (11501):
return BURN_PHASE_DONE_STRING;
case (11502):
return MAIN_SWITCH_ON_TIMEOUT_STRING;
case (11503):
return MAIN_SWITCH_OFF_TIMEOUT_STRING;
case (11504):
return DEPL_SA1_GPIO_SWTICH_ON_FAILED_STRING;
case (11505):
return DEPL_SA2_GPIO_SWTICH_ON_FAILED_STRING;
case (11506):
return DEPL_SA1_GPIO_SWTICH_OFF_FAILED_STRING;
case (11507):
return DEPL_SA2_GPIO_SWTICH_OFF_FAILED_STRING;
case (11508):
return AUTONOMOUS_DEPLOYMENT_COMPLETED_STRING;
case (11601):
return MEMORY_READ_RPT_CRC_FAILURE_STRING;
case (11102):
case (11602):
return ACK_FAILURE_STRING;
case (11103):
case (11603):
return EXE_FAILURE_STRING;
case (11104):
return CRC_FAILURE_EVENT_STRING;
case (11604):
return MPSOC_HANDLER_CRC_FAILURE_STRING;
case (11605):
return MPSOC_HANDLER_SEQUENCE_COUNT_MISMATCH_STRING;
case (11606):
return MPSOC_SHUTDOWN_FAILED_STRING;
case (11701):
return SELF_TEST_I2C_FAILURE_STRING;
case (11702):
return SELF_TEST_SPI_FAILURE_STRING;
case (11703):
return SELF_TEST_ADC_FAILURE_STRING;
case (11704):
return SELF_TEST_PWM_FAILURE_STRING;
case (11705):
return SELF_TEST_TC_FAILURE_STRING;
case (11706):
return SELF_TEST_MTM_RANGE_FAILURE_STRING;
case (11707):
return SELF_TEST_COIL_CURRENT_FAILURE_STRING;
case (11708):
return INVALID_ERROR_BYTE_STRING;
case (11801):
return ERROR_STATE_STRING;
case (11802):
return RESET_OCCURED_STRING;
case (11901):
return BOOTING_FIRMWARE_FAILED_STRING;
case (11902):
return BOOTING_BOOTLOADER_FAILED_STRING;
case (12001):
return SUPV_MEMORY_READ_RPT_CRC_FAILURE_STRING;
case (12002):
return SUPV_UNKNOWN_TM_STRING;
case (12003):
return SUPV_UNINIMPLEMENTED_TM_STRING;
case (12004):
return SUPV_ACK_FAILURE_STRING;
case (12005):
return SUPV_EXE_FAILURE_STRING;
case (12006):
return SUPV_CRC_FAILURE_EVENT_STRING;
case (12007):
return SUPV_HELPER_EXECUTING_STRING;
case (12008):
return SUPV_MPSOC_SHUWDOWN_BUILD_FAILED_STRING;
case (12100):
return SANITIZATION_FAILED_STRING;
case (12101):
return MOUNTED_SD_CARD_STRING;
case (12300):
return SEND_MRAM_DUMP_FAILED_STRING;
case (12301):
return MRAM_DUMP_FAILED_STRING;
case (12302):
return MRAM_DUMP_FINISHED_STRING;
case (12401):
return INVALID_TC_FRAME_STRING;
case (12402):
return INVALID_FAR_STRING;
case (12403):
return CARRIER_LOCK_STRING;
case (12404):
return BIT_LOCK_PDEC_STRING;
case (12405):
return LOST_CARRIER_LOCK_PDEC_STRING;
case (12406):
return LOST_BIT_LOCK_PDEC_STRING;
case (12407):
return POLL_ERROR_PDEC_STRING;
case (12500):
return IMAGE_UPLOAD_FAILED_STRING;
case (12501):
return IMAGE_DOWNLOAD_FAILED_STRING;
case (12502):
return IMAGE_UPLOAD_SUCCESSFUL_STRING;
case (12503):
return IMAGE_DOWNLOAD_SUCCESSFUL_STRING;
case (12504):
return FLASH_WRITE_SUCCESSFUL_STRING;
case (12505):
return FLASH_READ_SUCCESSFUL_STRING;
case (12506):
return FLASH_READ_FAILED_STRING;
case (12507):
return FIRMWARE_UPDATE_SUCCESSFUL_STRING;
case (12508):
return FIRMWARE_UPDATE_FAILED_STRING;
case (12509):
return STR_HELPER_READING_REPLY_FAILED_STRING;
case (12510):
return STR_HELPER_COM_ERROR_STRING;
case (12511):
return STR_HELPER_NO_REPLY_STRING;
case (12512):
return STR_HELPER_DEC_ERROR_STRING;
case (12513):
return POSITION_MISMATCH_STRING;
case (12514):
return STR_HELPER_FILE_NOT_EXISTS_STRING;
case (12515):
return STR_HELPER_SENDING_PACKET_FAILED_STRING;
case (12516):
return STR_HELPER_REQUESTING_MSG_FAILED_STRING;
case (12600):
return MPSOC_FLASH_WRITE_FAILED_STRING;
case (12601):
return MPSOC_FLASH_WRITE_SUCCESSFUL_STRING;
case (12602):
return MPSOC_SENDING_COMMAND_FAILED_STRING;
case (12603):
return MPSOC_HELPER_REQUESTING_REPLY_FAILED_STRING;
case (12604):
return MPSOC_HELPER_READING_REPLY_FAILED_STRING;
case (12605):
return MPSOC_MISSING_ACK_STRING;
case (12606):
return MPSOC_MISSING_EXE_STRING;
case (12607):
return MPSOC_ACK_FAILURE_REPORT_STRING;
case (12608):
return MPSOC_EXE_FAILURE_REPORT_STRING;
case (12609):
return MPSOC_ACK_INVALID_APID_STRING;
case (12610):
return MPSOC_EXE_INVALID_APID_STRING;
case (12611):
return MPSOC_HELPER_SEQ_CNT_MISMATCH_STRING;
case (12612):
return MPSOC_TM_SIZE_ERROR_STRING;
case (12613):
return MPSOC_TM_CRC_MISSMATCH_STRING;
case (12700):
return TRANSITION_BACK_TO_OFF_STRING;
case (12701):
return NEG_V_OUT_OF_BOUNDS_STRING;
case (12702):
return U_DRO_OUT_OF_BOUNDS_STRING;
case (12703):
return I_DRO_OUT_OF_BOUNDS_STRING;
case (12704):
return U_X8_OUT_OF_BOUNDS_STRING;
case (12705):
return I_X8_OUT_OF_BOUNDS_STRING;
case (12706):
return U_TX_OUT_OF_BOUNDS_STRING;
case (12707):
return I_TX_OUT_OF_BOUNDS_STRING;
case (12708):
return U_MPA_OUT_OF_BOUNDS_STRING;
case (12709):
return I_MPA_OUT_OF_BOUNDS_STRING;
case (12710):
return U_HPA_OUT_OF_BOUNDS_STRING;
case (12711):
return I_HPA_OUT_OF_BOUNDS_STRING;
case (12800):
return TRANSITION_OTHER_SIDE_FAILED_STRING;
case (12801):
return NOT_ENOUGH_DEVICES_DUAL_MODE_STRING;
case (12802):
return POWER_STATE_MACHINE_TIMEOUT_STRING;
case (12803):
return SIDE_SWITCH_TRANSITION_NOT_ALLOWED_STRING;
case (13000):
return CHILDREN_LOST_MODE_STRING;
case (13100):
return GPS_FIX_CHANGE_STRING;
case (13200):
return P60_BOOT_COUNT_STRING;
case (13201):
return BATT_MODE_STRING;
case (13202):
return BATT_MODE_CHANGED_STRING;
case (13600):
return SUPV_UPDATE_FAILED_STRING;
case (13601):
return SUPV_UPDATE_SUCCESSFUL_STRING;
case (13602):
return SUPV_CONTINUE_UPDATE_FAILED_STRING;
case (13603):
return SUPV_CONTINUE_UPDATE_SUCCESSFUL_STRING;
case (13604):
return TERMINATED_UPDATE_PROCEDURE_STRING;
case (13605):
return SUPV_EVENT_BUFFER_REQUEST_SUCCESSFUL_STRING;
case (13606):
return SUPV_EVENT_BUFFER_REQUEST_FAILED_STRING;
case (13607):
return SUPV_EVENT_BUFFER_REQUEST_TERMINATED_STRING;
case (13608):
return SUPV_MEM_CHECK_OK_STRING;
case (13609):
return SUPV_MEM_CHECK_FAIL_STRING;
case (13616):
return SUPV_SENDING_COMMAND_FAILED_STRING;
case (13617):
return SUPV_HELPER_REQUESTING_REPLY_FAILED_STRING;
case (13618):
return SUPV_HELPER_READING_REPLY_FAILED_STRING;
case (13619):
return SUPV_MISSING_ACK_STRING;
case (13620):
return SUPV_MISSING_EXE_STRING;
case (13621):
return SUPV_ACK_FAILURE_REPORT_STRING;
case (13622):
return SUPV_EXE_FAILURE_REPORT_STRING;
case (13623):
return SUPV_ACK_INVALID_APID_STRING;
case (13624):
return SUPV_EXE_INVALID_APID_STRING;
case (13625):
return ACK_RECEPTION_FAILURE_STRING;
case (13626):
return EXE_RECEPTION_FAILURE_STRING;
case (13627):
return WRITE_MEMORY_FAILED_STRING;
case (13628):
return SUPV_REPLY_SIZE_MISSMATCH_STRING;
case (13629):
return SUPV_REPLY_CRC_MISSMATCH_STRING;
case (13630):
return SUPV_UPDATE_PROGRESS_STRING;
case (13631):
return HDLC_FRAME_REMOVAL_ERROR_STRING;
case (13632):
return HDLC_CRC_ERROR_STRING;
case (13700):
return ALLOC_FAILURE_STRING;
case (13701):
return REBOOT_SW_STRING;
case (13702):
return REBOOT_MECHANISM_TRIGGERED_STRING;
case (13703):
return REBOOT_HW_STRING;
case (13704):
return NO_SD_CARD_ACTIVE_STRING;
case (13800):
return MISSING_PACKET_STRING;
case (13801):
return EXPERIMENT_TIMEDOUT_STRING;
case (13802):
return MULTI_PACKET_COMMAND_DONE_STRING;
case (13901):
return SET_CONFIGFILEVALUE_FAILED_STRING;
case (13902):
return GET_CONFIGFILEVALUE_FAILED_STRING;
case (13903):
return INSERT_CONFIGFILEVALUE_FAILED_STRING;
case (13904):
return WRITE_CONFIGFILE_FAILED_STRING;
case (13905):
return READ_CONFIGFILE_FAILED_STRING;
default:
return "UNKNOWN_EVENT";
}

View File

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

View File

@ -1,10 +1,10 @@
#ifndef HOSTED_CONFIG_OBJECTS_SYSTEMOBJECTLIST_H_
#define HOSTED_CONFIG_OBJECTS_SYSTEMOBJECTLIST_H_
#include <commonObjects.h>
#include <cstdint>
#include "eive/objects.h"
// The objects will be instantiated in the ID order
namespace objects {
enum sourceObjects : uint32_t {
@ -16,16 +16,15 @@ enum sourceObjects : uint32_t {
PUS_SERVICE_23 = 0x51002300,
PUS_SERVICE_201 = 0x51020100,
TM_FUNNEL = 0x52000002,
/* Test Task */
TEST_TASK = 0x42694269,
DUMMY_INTERFACE = 0xCAFECAFE,
DUMMY_HANDLER = 0x4400AFFE,
DUMMY_HANDLER = 0x44000001,
/* 0x49 ('I') for Communication Interfaces **/
ARDUINO_COM_IF = 0x49000001
ARDUINO_COM_IF = 0x49000001,
DUMMY_COM_IF = 0x49000002
};
}

View File

@ -1,21 +1,105 @@
/**
* @brief Auto-generated object translation file.
* @brief Auto-generated object translation file.
* @details
* Contains 31 translations.
* Generated on: 2021-05-17 19:12:49
* Contains 148 translations.
* Generated on: 2022-11-15 17:44:20
*/
#include "translateObjects.h"
const char *TEST_TASK_STRING = "TEST_TASK";
const char *DUMMY_HANDLER_STRING = "DUMMY_HANDLER";
const char *P60DOCK_TEST_TASK_STRING = "P60DOCK_TEST_TASK";
const char *ACS_CONTROLLER_STRING = "ACS_CONTROLLER";
const char *CORE_CONTROLLER_STRING = "CORE_CONTROLLER";
const char *GLOBAL_JSON_CFG_STRING = "GLOBAL_JSON_CFG";
const char *THERMAL_CONTROLLER_STRING = "THERMAL_CONTROLLER";
const char *MGM_0_LIS3_HANDLER_STRING = "MGM_0_LIS3_HANDLER";
const char *GYRO_0_ADIS_HANDLER_STRING = "GYRO_0_ADIS_HANDLER";
const char *SUS_0_N_LOC_XFYFZM_PT_XF_STRING = "SUS_0_N_LOC_XFYFZM_PT_XF";
const char *SUS_1_N_LOC_XBYFZM_PT_XB_STRING = "SUS_1_N_LOC_XBYFZM_PT_XB";
const char *SUS_2_N_LOC_XFYBZB_PT_YB_STRING = "SUS_2_N_LOC_XFYBZB_PT_YB";
const char *SUS_3_N_LOC_XFYBZF_PT_YF_STRING = "SUS_3_N_LOC_XFYBZF_PT_YF";
const char *SUS_4_N_LOC_XMYFZF_PT_ZF_STRING = "SUS_4_N_LOC_XMYFZF_PT_ZF";
const char *SUS_5_N_LOC_XFYMZB_PT_ZB_STRING = "SUS_5_N_LOC_XFYMZB_PT_ZB";
const char *SUS_6_R_LOC_XFYBZM_PT_XF_STRING = "SUS_6_R_LOC_XFYBZM_PT_XF";
const char *SUS_7_R_LOC_XBYBZM_PT_XB_STRING = "SUS_7_R_LOC_XBYBZM_PT_XB";
const char *SUS_8_R_LOC_XBYBZB_PT_YB_STRING = "SUS_8_R_LOC_XBYBZB_PT_YB";
const char *SUS_9_R_LOC_XBYBZB_PT_YF_STRING = "SUS_9_R_LOC_XBYBZB_PT_YF";
const char *SUS_10_N_LOC_XMYBZF_PT_ZF_STRING = "SUS_10_N_LOC_XMYBZF_PT_ZF";
const char *SUS_11_R_LOC_XBYMZB_PT_ZB_STRING = "SUS_11_R_LOC_XBYMZB_PT_ZB";
const char *RW1_STRING = "RW1";
const char *MGM_1_RM3100_HANDLER_STRING = "MGM_1_RM3100_HANDLER";
const char *GYRO_1_L3G_HANDLER_STRING = "GYRO_1_L3G_HANDLER";
const char *RW2_STRING = "RW2";
const char *MGM_2_LIS3_HANDLER_STRING = "MGM_2_LIS3_HANDLER";
const char *GYRO_2_ADIS_HANDLER_STRING = "GYRO_2_ADIS_HANDLER";
const char *RW3_STRING = "RW3";
const char *MGM_3_RM3100_HANDLER_STRING = "MGM_3_RM3100_HANDLER";
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 *IMTQ_HANDLER_STRING = "IMTQ_HANDLER";
const char *PCDU_HANDLER_STRING = "PCDU_HANDLER";
const char *P60DOCK_HANDLER_STRING = "P60DOCK_HANDLER";
const char *PDU1_HANDLER_STRING = "PDU1_HANDLER";
const char *PDU2_HANDLER_STRING = "PDU2_HANDLER";
const char *ACU_HANDLER_STRING = "ACU_HANDLER";
const char *BPX_BATT_HANDLER_STRING = "BPX_BATT_HANDLER";
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 *PLOC_MPSOC_HELPER_STRING = "PLOC_MPSOC_HELPER";
const char *AXI_PTME_CONFIG_STRING = "AXI_PTME_CONFIG";
const char *PTME_CONFIG_STRING = "PTME_CONFIG";
const char *PLOC_MPSOC_HANDLER_STRING = "PLOC_MPSOC_HANDLER";
const char *PLOC_SUPERVISOR_HANDLER_STRING = "PLOC_SUPERVISOR_HANDLER";
const char *PLOC_SUPERVISOR_HELPER_STRING = "PLOC_SUPERVISOR_HELPER";
const char *SCEX_STRING = "SCEX";
const char *SOLAR_ARRAY_DEPL_HANDLER_STRING = "SOLAR_ARRAY_DEPL_HANDLER";
const char *HEATER_HANDLER_STRING = "HEATER_HANDLER";
const char *TMP1075_HANDLER_TCS_0_STRING = "TMP1075_HANDLER_TCS_0";
const char *TMP1075_HANDLER_TCS_1_STRING = "TMP1075_HANDLER_TCS_1";
const char *TMP1075_HANDLER_PLPCDU_0_STRING = "TMP1075_HANDLER_PLPCDU_0";
const char *TMP1075_HANDLER_PLPCDU_1_STRING = "TMP1075_HANDLER_PLPCDU_1";
const char *TMP1075_HANDLER_IF_BOARD_STRING = "TMP1075_HANDLER_IF_BOARD";
const char *TMP1075_HANDLER_OBC_IF_BOARD_STRING = "TMP1075_HANDLER_OBC_IF_BOARD";
const char *RTD_0_IC3_PLOC_HEATSPREADER_STRING = "RTD_0_IC3_PLOC_HEATSPREADER";
const char *RTD_1_IC4_PLOC_MISSIONBOARD_STRING = "RTD_1_IC4_PLOC_MISSIONBOARD";
const char *RTD_2_IC5_4K_CAMERA_STRING = "RTD_2_IC5_4K_CAMERA";
const char *RTD_3_IC6_DAC_HEATSPREADER_STRING = "RTD_3_IC6_DAC_HEATSPREADER";
const char *RTD_4_IC7_STARTRACKER_STRING = "RTD_4_IC7_STARTRACKER";
const char *RTD_5_IC8_RW1_MX_MY_STRING = "RTD_5_IC8_RW1_MX_MY";
const char *RTD_6_IC9_DRO_STRING = "RTD_6_IC9_DRO";
const char *RTD_7_IC10_SCEX_STRING = "RTD_7_IC10_SCEX";
const char *RTD_8_IC11_X8_STRING = "RTD_8_IC11_X8";
const char *RTD_9_IC12_HPA_STRING = "RTD_9_IC12_HPA";
const char *RTD_10_IC13_PL_TX_STRING = "RTD_10_IC13_PL_TX";
const char *RTD_11_IC14_MPA_STRING = "RTD_11_IC14_MPA";
const char *RTD_12_IC15_ACU_STRING = "RTD_12_IC15_ACU";
const char *RTD_13_IC16_PLPCDU_HEATSPREADER_STRING = "RTD_13_IC16_PLPCDU_HEATSPREADER";
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_HK_HANDLER_STRING = "SYRLINKS_HK_HANDLER";
const char *ARDUINO_COM_IF_STRING = "ARDUINO_COM_IF";
const char *PUS_SERVICE_3_STRING = "PUS_SERVICE_3";
const char *PUS_SERVICE_5_STRING = "PUS_SERVICE_5";
const char *GPIO_IF_STRING = "GPIO_IF";
const char *SCEX_UART_READER_STRING = "SCEX_UART_READER";
const char *SPI_MAIN_COM_IF_STRING = "SPI_MAIN_COM_IF";
const char *SPI_RW_COM_IF_STRING = "SPI_RW_COM_IF";
const char *SPI_RTD_COM_IF_STRING = "SPI_RTD_COM_IF";
const char *UART_COM_IF_STRING = "UART_COM_IF";
const char *I2C_COM_IF_STRING = "I2C_COM_IF";
const char *CSP_COM_IF_STRING = "CSP_COM_IF";
const char *CCSDS_PACKET_DISTRIBUTOR_STRING = "CCSDS_PACKET_DISTRIBUTOR";
const char *PUS_PACKET_DISTRIBUTOR_STRING = "PUS_PACKET_DISTRIBUTOR";
const char *TMTC_BRIDGE_STRING = "TMTC_BRIDGE";
const char *TMTC_POLLING_TASK_STRING = "TMTC_POLLING_TASK";
const char *FILE_SYSTEM_HANDLER_STRING = "FILE_SYSTEM_HANDLER";
const char *SDC_MANAGER_STRING = "SDC_MANAGER";
const char *PTME_STRING = "PTME";
const char *PDEC_HANDLER_STRING = "PDEC_HANDLER";
const char *CCSDS_HANDLER_STRING = "CCSDS_HANDLER";
const char *PUS_SERVICE_6_STRING = "PUS_SERVICE_6";
const char *PUS_SERVICE_8_STRING = "PUS_SERVICE_8";
const char *PUS_SERVICE_23_STRING = "PUS_SERVICE_23";
const char *PUS_SERVICE_201_STRING = "PUS_SERVICE_201";
const char *TM_FUNNEL_STRING = "TM_FUNNEL";
const char *FSFW_OBJECTS_START_STRING = "FSFW_OBJECTS_START";
const char *PUS_SERVICE_1_VERIFICATION_STRING = "PUS_SERVICE_1_VERIFICATION";
const char *PUS_SERVICE_2_DEVICE_ACCESS_STRING = "PUS_SERVICE_2_DEVICE_ACCESS";
@ -23,9 +107,12 @@ const char *PUS_SERVICE_3_HOUSEKEEPING_STRING = "PUS_SERVICE_3_HOUSEKEEPING";
const char *PUS_SERVICE_5_EVENT_REPORTING_STRING = "PUS_SERVICE_5_EVENT_REPORTING";
const char *PUS_SERVICE_8_FUNCTION_MGMT_STRING = "PUS_SERVICE_8_FUNCTION_MGMT";
const char *PUS_SERVICE_9_TIME_MGMT_STRING = "PUS_SERVICE_9_TIME_MGMT";
const char *PUS_SERVICE_11_TC_SCHEDULER_STRING = "PUS_SERVICE_11_TC_SCHEDULER";
const char *PUS_SERVICE_17_TEST_STRING = "PUS_SERVICE_17_TEST";
const char *PUS_SERVICE_20_PARAMETERS_STRING = "PUS_SERVICE_20_PARAMETERS";
const char *PUS_SERVICE_200_MODE_MGMT_STRING = "PUS_SERVICE_200_MODE_MGMT";
const char *PUS_SERVICE_201_HEALTH_STRING = "PUS_SERVICE_201_HEALTH";
const char *CFDP_PACKET_DISTRIBUTOR_STRING = "CFDP_PACKET_DISTRIBUTOR";
const char *HEALTH_TABLE_STRING = "HEALTH_TABLE";
const char *MODE_STORE_STRING = "MODE_STORE";
const char *EVENT_MANAGER_STRING = "EVENT_MANAGER";
@ -34,32 +121,230 @@ const char *TC_STORE_STRING = "TC_STORE";
const char *TM_STORE_STRING = "TM_STORE";
const char *IPC_STORE_STRING = "IPC_STORE";
const char *TIME_STAMPER_STRING = "TIME_STAMPER";
const char *VERIFICATION_REPORTER_STRING = "VERIFICATION_REPORTER";
const char *FSFW_OBJECTS_END_STRING = "FSFW_OBJECTS_END";
const char *SPI_TEST_STRING = "SPI_TEST";
const char *UART_TEST_STRING = "UART_TEST";
const char *I2C_TEST_STRING = "I2C_TEST";
const char *DUMMY_COM_IF_STRING = "DUMMY_COM_IF";
const char *DUMMY_HANDLER_STRING = "DUMMY_HANDLER";
const char *DUMMY_INTERFACE_STRING = "DUMMY_INTERFACE";
const char *LIBGPIOD_TEST_STRING = "LIBGPIOD_TEST";
const char *TEST_TASK_STRING = "TEST_TASK";
const char *HEATER_0_PLOC_PROC_BRD_STRING = "HEATER_0_PLOC_PROC_BRD";
const char *HEATER_1_PCDU_BRD_STRING = "HEATER_1_PCDU_BRD";
const char *HEATER_2_ACS_BRD_STRING = "HEATER_2_ACS_BRD";
const char *HEATER_3_OBC_BRD_STRING = "HEATER_3_OBC_BRD";
const char *HEATER_4_CAMERA_STRING = "HEATER_4_CAMERA";
const char *HEATER_5_STR_STRING = "HEATER_5_STR";
const char *HEATER_6_DRO_STRING = "HEATER_6_DRO";
const char *HEATER_7_HPA_STRING = "HEATER_7_HPA";
const char *ACS_BOARD_ASS_STRING = "ACS_BOARD_ASS";
const char *SUS_BOARD_ASS_STRING = "SUS_BOARD_ASS";
const char *TCS_BOARD_ASS_STRING = "TCS_BOARD_ASS";
const char *RW_ASS_STRING = "RW_ASS";
const char *CAM_SWITCHER_STRING = "CAM_SWITCHER";
const char *TM_FUNNEL_STRING = "TM_FUNNEL";
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 *EIVE_SYSTEM_STRING = "EIVE_SYSTEM";
const char *ACS_SUBSYSTEM_STRING = "ACS_SUBSYSTEM";
const char *PL_SUBSYSTEM_STRING = "PL_SUBSYSTEM";
const char *CCSDS_IP_CORE_BRIDGE_STRING = "CCSDS_IP_CORE_BRIDGE";
const char *NO_OBJECT_STRING = "NO_OBJECT";
const char *translateObject(object_id_t object) {
switch ((object & 0xFFFFFFFF)) {
case 0x42694269:
return TEST_TASK_STRING;
case 0x4400AFFE:
return DUMMY_HANDLER_STRING;
case 0x49000001:
case 0x00005060:
return P60DOCK_TEST_TASK_STRING;
case 0x43000002:
return ACS_CONTROLLER_STRING;
case 0x43000003:
return CORE_CONTROLLER_STRING;
case 0x43000006:
return GLOBAL_JSON_CFG_STRING;
case 0x43400001:
return THERMAL_CONTROLLER_STRING;
case 0x44120006:
return MGM_0_LIS3_HANDLER_STRING;
case 0x44120010:
return GYRO_0_ADIS_HANDLER_STRING;
case 0x44120032:
return SUS_0_N_LOC_XFYFZM_PT_XF_STRING;
case 0x44120033:
return SUS_1_N_LOC_XBYFZM_PT_XB_STRING;
case 0x44120034:
return SUS_2_N_LOC_XFYBZB_PT_YB_STRING;
case 0x44120035:
return SUS_3_N_LOC_XFYBZF_PT_YF_STRING;
case 0x44120036:
return SUS_4_N_LOC_XMYFZF_PT_ZF_STRING;
case 0x44120037:
return SUS_5_N_LOC_XFYMZB_PT_ZB_STRING;
case 0x44120038:
return SUS_6_R_LOC_XFYBZM_PT_XF_STRING;
case 0x44120039:
return SUS_7_R_LOC_XBYBZM_PT_XB_STRING;
case 0x44120040:
return SUS_8_R_LOC_XBYBZB_PT_YB_STRING;
case 0x44120041:
return SUS_9_R_LOC_XBYBZB_PT_YF_STRING;
case 0x44120042:
return SUS_10_N_LOC_XMYBZF_PT_ZF_STRING;
case 0x44120043:
return SUS_11_R_LOC_XBYMZB_PT_ZB_STRING;
case 0x44120047:
return RW1_STRING;
case 0x44120107:
return MGM_1_RM3100_HANDLER_STRING;
case 0x44120111:
return GYRO_1_L3G_HANDLER_STRING;
case 0x44120148:
return RW2_STRING;
case 0x44120208:
return MGM_2_LIS3_HANDLER_STRING;
case 0x44120212:
return GYRO_2_ADIS_HANDLER_STRING;
case 0x44120249:
return RW3_STRING;
case 0x44120309:
return MGM_3_RM3100_HANDLER_STRING;
case 0x44120313:
return GYRO_3_L3G_HANDLER_STRING;
case 0x44120350:
return RW4_STRING;
case 0x44130001:
return STAR_TRACKER_STRING;
case 0x44130045:
return GPS_CONTROLLER_STRING;
case 0x44140014:
return IMTQ_HANDLER_STRING;
case 0x442000A1:
return PCDU_HANDLER_STRING;
case 0x44250000:
return P60DOCK_HANDLER_STRING;
case 0x44250001:
return PDU1_HANDLER_STRING;
case 0x44250002:
return PDU2_HANDLER_STRING;
case 0x44250003:
return ACU_HANDLER_STRING;
case 0x44260000:
return BPX_BATT_HANDLER_STRING;
case 0x44300000:
return PLPCDU_HANDLER_STRING;
case 0x443200A5:
return RAD_SENSOR_STRING;
case 0x44330000:
return PLOC_UPDATER_STRING;
case 0x44330001:
return PLOC_MEMORY_DUMPER_STRING;
case 0x44330002:
return STR_HELPER_STRING;
case 0x44330003:
return PLOC_MPSOC_HELPER_STRING;
case 0x44330004:
return AXI_PTME_CONFIG_STRING;
case 0x44330005:
return PTME_CONFIG_STRING;
case 0x44330015:
return PLOC_MPSOC_HANDLER_STRING;
case 0x44330016:
return PLOC_SUPERVISOR_HANDLER_STRING;
case 0x44330017:
return PLOC_SUPERVISOR_HELPER_STRING;
case 0x44330032:
return SCEX_STRING;
case 0x444100A2:
return SOLAR_ARRAY_DEPL_HANDLER_STRING;
case 0x444100A4:
return HEATER_HANDLER_STRING;
case 0x44420004:
return TMP1075_HANDLER_TCS_0_STRING;
case 0x44420005:
return TMP1075_HANDLER_TCS_1_STRING;
case 0x44420006:
return TMP1075_HANDLER_PLPCDU_0_STRING;
case 0x44420007:
return TMP1075_HANDLER_PLPCDU_1_STRING;
case 0x44420008:
return TMP1075_HANDLER_IF_BOARD_STRING;
case 0x44420009:
return TMP1075_HANDLER_OBC_IF_BOARD_STRING;
case 0x44420016:
return RTD_0_IC3_PLOC_HEATSPREADER_STRING;
case 0x44420017:
return RTD_1_IC4_PLOC_MISSIONBOARD_STRING;
case 0x44420018:
return RTD_2_IC5_4K_CAMERA_STRING;
case 0x44420019:
return RTD_3_IC6_DAC_HEATSPREADER_STRING;
case 0x44420020:
return RTD_4_IC7_STARTRACKER_STRING;
case 0x44420021:
return RTD_5_IC8_RW1_MX_MY_STRING;
case 0x44420022:
return RTD_6_IC9_DRO_STRING;
case 0x44420023:
return RTD_7_IC10_SCEX_STRING;
case 0x44420024:
return RTD_8_IC11_X8_STRING;
case 0x44420025:
return RTD_9_IC12_HPA_STRING;
case 0x44420026:
return RTD_10_IC13_PL_TX_STRING;
case 0x44420027:
return RTD_11_IC14_MPA_STRING;
case 0x44420028:
return RTD_12_IC15_ACU_STRING;
case 0x44420029:
return RTD_13_IC16_PLPCDU_HEATSPREADER_STRING;
case 0x44420030:
return RTD_14_IC17_TCS_BOARD_STRING;
case 0x44420031:
return RTD_15_IC18_IMTQ_STRING;
case 0x445300A3:
return SYRLINKS_HK_HANDLER_STRING;
case 0x49000000:
return ARDUINO_COM_IF_STRING;
case 0x51000300:
return PUS_SERVICE_3_STRING;
case 0x51000400:
return PUS_SERVICE_5_STRING;
case 0x49010005:
return GPIO_IF_STRING;
case 0x49010006:
return SCEX_UART_READER_STRING;
case 0x49020004:
return SPI_MAIN_COM_IF_STRING;
case 0x49020005:
return SPI_RW_COM_IF_STRING;
case 0x49020006:
return SPI_RTD_COM_IF_STRING;
case 0x49030003:
return UART_COM_IF_STRING;
case 0x49040002:
return I2C_COM_IF_STRING;
case 0x49050001:
return CSP_COM_IF_STRING;
case 0x50000100:
return CCSDS_PACKET_DISTRIBUTOR_STRING;
case 0x50000200:
return PUS_PACKET_DISTRIBUTOR_STRING;
case 0x50000300:
return TMTC_BRIDGE_STRING;
case 0x50000400:
return TMTC_POLLING_TASK_STRING;
case 0x50000500:
return FILE_SYSTEM_HANDLER_STRING;
case 0x50000550:
return SDC_MANAGER_STRING;
case 0x50000600:
return PTME_STRING;
case 0x50000700:
return PDEC_HANDLER_STRING;
case 0x50000800:
return CCSDS_HANDLER_STRING;
case 0x51000500:
return PUS_SERVICE_6_STRING;
case 0x51000800:
return PUS_SERVICE_8_STRING;
case 0x51002300:
return PUS_SERVICE_23_STRING;
case 0x51020100:
return PUS_SERVICE_201_STRING;
case 0x52000002:
return TM_FUNNEL_STRING;
case 0x53000000:
return FSFW_OBJECTS_START_STRING;
case 0x53000001:
@ -74,12 +359,18 @@ const char *translateObject(object_id_t object) {
return PUS_SERVICE_8_FUNCTION_MGMT_STRING;
case 0x53000009:
return PUS_SERVICE_9_TIME_MGMT_STRING;
case 0x53000011:
return PUS_SERVICE_11_TC_SCHEDULER_STRING;
case 0x53000017:
return PUS_SERVICE_17_TEST_STRING;
case 0x53000020:
return PUS_SERVICE_20_PARAMETERS_STRING;
case 0x53000200:
return PUS_SERVICE_200_MODE_MGMT_STRING;
case 0x53000201:
return PUS_SERVICE_201_HEALTH_STRING;
case 0x53001000:
return CFDP_PACKET_DISTRIBUTOR_STRING;
case 0x53010000:
return HEALTH_TABLE_STRING;
case 0x53010100:
@ -96,10 +387,70 @@ const char *translateObject(object_id_t object) {
return IPC_STORE_STRING;
case 0x53500010:
return TIME_STAMPER_STRING;
case 0x53500020:
return VERIFICATION_REPORTER_STRING;
case 0x53ffffff:
return FSFW_OBJECTS_END_STRING;
case 0xCAFECAFE:
case 0x54000010:
return SPI_TEST_STRING;
case 0x54000020:
return UART_TEST_STRING;
case 0x54000030:
return I2C_TEST_STRING;
case 0x54000040:
return DUMMY_COM_IF_STRING;
case 0x5400AFFE:
return DUMMY_HANDLER_STRING;
case 0x5400CAFE:
return DUMMY_INTERFACE_STRING;
case 0x54123456:
return LIBGPIOD_TEST_STRING;
case 0x54694269:
return TEST_TASK_STRING;
case 0x60000000:
return HEATER_0_PLOC_PROC_BRD_STRING;
case 0x60000001:
return HEATER_1_PCDU_BRD_STRING;
case 0x60000002:
return HEATER_2_ACS_BRD_STRING;
case 0x60000003:
return HEATER_3_OBC_BRD_STRING;
case 0x60000004:
return HEATER_4_CAMERA_STRING;
case 0x60000005:
return HEATER_5_STR_STRING;
case 0x60000006:
return HEATER_6_DRO_STRING;
case 0x60000007:
return HEATER_7_HPA_STRING;
case 0x73000001:
return ACS_BOARD_ASS_STRING;
case 0x73000002:
return SUS_BOARD_ASS_STRING;
case 0x73000003:
return TCS_BOARD_ASS_STRING;
case 0x73000004:
return RW_ASS_STRING;
case 0x73000006:
return CAM_SWITCHER_STRING;
case 0x73000100:
return TM_FUNNEL_STRING;
case 0x73000101:
return PUS_TM_FUNNEL_STRING;
case 0x73000102:
return CFDP_TM_FUNNEL_STRING;
case 0x73000205:
return CFDP_HANDLER_STRING;
case 0x73000206:
return CFDP_DISTRIBUTOR_STRING;
case 0x73010000:
return EIVE_SYSTEM_STRING;
case 0x73010001:
return ACS_SUBSYSTEM_STRING;
case 0x73010002:
return PL_SUBSYSTEM_STRING;
case 0x73500000:
return CCSDS_IP_CORE_BRIDGE_STRING;
case 0xFFFFFFFF:
return NO_OBJECT_STRING;
default:

View File

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

View File

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

View File

@ -0,0 +1,139 @@
#include "DummyPst.h"
#include <fsfw/devicehandlers/DeviceHandlerIF.h>
#include <fsfw/serviceinterface/ServiceInterfaceStream.h>
#include <fsfw/tasks/FixedTimeslotTaskIF.h>
#include <objects/systemObjectList.h>
ReturnValue_t dummy_pst::pst(FixedTimeslotTaskIF *thisSequence) {
uint32_t length = thisSequence->getPeriodMs();
thisSequence->addSlot(objects::BPX_BATT_HANDLER, length * 0, DeviceHandlerIF::PERFORM_OPERATION);
thisSequence->addSlot(objects::BPX_BATT_HANDLER, length * 0, DeviceHandlerIF::SEND_WRITE);
thisSequence->addSlot(objects::BPX_BATT_HANDLER, length * 0, DeviceHandlerIF::GET_WRITE);
thisSequence->addSlot(objects::BPX_BATT_HANDLER, length * 0, DeviceHandlerIF::SEND_READ);
thisSequence->addSlot(objects::BPX_BATT_HANDLER, length * 0, DeviceHandlerIF::GET_READ);
thisSequence->addSlot(objects::RW1, length * 0, DeviceHandlerIF::PERFORM_OPERATION);
thisSequence->addSlot(objects::RW1, length * 0, DeviceHandlerIF::SEND_WRITE);
thisSequence->addSlot(objects::RW1, length * 0, DeviceHandlerIF::GET_WRITE);
thisSequence->addSlot(objects::RW1, length * 0, DeviceHandlerIF::SEND_READ);
thisSequence->addSlot(objects::RW1, length * 0, DeviceHandlerIF::GET_READ);
thisSequence->addSlot(objects::RW2, length * 0, DeviceHandlerIF::PERFORM_OPERATION);
thisSequence->addSlot(objects::RW2, length * 0, DeviceHandlerIF::SEND_WRITE);
thisSequence->addSlot(objects::RW2, length * 0, DeviceHandlerIF::GET_WRITE);
thisSequence->addSlot(objects::RW2, length * 0, DeviceHandlerIF::SEND_READ);
thisSequence->addSlot(objects::RW2, length * 0, DeviceHandlerIF::GET_READ);
thisSequence->addSlot(objects::RW3, length * 0, DeviceHandlerIF::PERFORM_OPERATION);
thisSequence->addSlot(objects::RW3, length * 0, DeviceHandlerIF::SEND_WRITE);
thisSequence->addSlot(objects::RW3, length * 0, DeviceHandlerIF::GET_WRITE);
thisSequence->addSlot(objects::RW3, length * 0, DeviceHandlerIF::SEND_READ);
thisSequence->addSlot(objects::RW3, length * 0, DeviceHandlerIF::GET_READ);
thisSequence->addSlot(objects::RW4, length * 0, DeviceHandlerIF::PERFORM_OPERATION);
thisSequence->addSlot(objects::RW4, length * 0, DeviceHandlerIF::SEND_WRITE);
thisSequence->addSlot(objects::RW4, length * 0, DeviceHandlerIF::GET_WRITE);
thisSequence->addSlot(objects::RW4, length * 0, DeviceHandlerIF::SEND_READ);
thisSequence->addSlot(objects::RW4, length * 0, DeviceHandlerIF::GET_READ);
thisSequence->addSlot(objects::STAR_TRACKER, length * 0, DeviceHandlerIF::PERFORM_OPERATION);
thisSequence->addSlot(objects::STAR_TRACKER, length * 0, DeviceHandlerIF::SEND_WRITE);
thisSequence->addSlot(objects::STAR_TRACKER, length * 0, DeviceHandlerIF::GET_WRITE);
thisSequence->addSlot(objects::STAR_TRACKER, length * 0, DeviceHandlerIF::SEND_READ);
thisSequence->addSlot(objects::STAR_TRACKER, length * 0, DeviceHandlerIF::GET_READ);
thisSequence->addSlot(objects::SYRLINKS_HANDLER, length * 0, DeviceHandlerIF::PERFORM_OPERATION);
thisSequence->addSlot(objects::SYRLINKS_HANDLER, length * 0, DeviceHandlerIF::SEND_WRITE);
thisSequence->addSlot(objects::SYRLINKS_HANDLER, length * 0, DeviceHandlerIF::GET_WRITE);
thisSequence->addSlot(objects::SYRLINKS_HANDLER, length * 0, DeviceHandlerIF::SEND_READ);
thisSequence->addSlot(objects::SYRLINKS_HANDLER, length * 0, DeviceHandlerIF::GET_READ);
thisSequence->addSlot(objects::IMTQ_HANDLER, length * 0, DeviceHandlerIF::PERFORM_OPERATION);
thisSequence->addSlot(objects::IMTQ_HANDLER, length * 0, DeviceHandlerIF::SEND_WRITE);
thisSequence->addSlot(objects::IMTQ_HANDLER, length * 0, DeviceHandlerIF::GET_WRITE);
thisSequence->addSlot(objects::IMTQ_HANDLER, length * 0, DeviceHandlerIF::SEND_READ);
thisSequence->addSlot(objects::IMTQ_HANDLER, length * 0, DeviceHandlerIF::GET_READ);
thisSequence->addSlot(objects::ACU_HANDLER, length * 0, DeviceHandlerIF::PERFORM_OPERATION);
thisSequence->addSlot(objects::ACU_HANDLER, length * 0, DeviceHandlerIF::SEND_WRITE);
thisSequence->addSlot(objects::ACU_HANDLER, length * 0, DeviceHandlerIF::GET_WRITE);
thisSequence->addSlot(objects::ACU_HANDLER, length * 0, DeviceHandlerIF::SEND_READ);
thisSequence->addSlot(objects::ACU_HANDLER, length * 0, DeviceHandlerIF::GET_READ);
thisSequence->addSlot(objects::PDU1_HANDLER, length * 0, DeviceHandlerIF::PERFORM_OPERATION);
thisSequence->addSlot(objects::PDU1_HANDLER, length * 0, DeviceHandlerIF::SEND_WRITE);
thisSequence->addSlot(objects::PDU1_HANDLER, length * 0, DeviceHandlerIF::GET_WRITE);
thisSequence->addSlot(objects::PDU1_HANDLER, length * 0, DeviceHandlerIF::SEND_READ);
thisSequence->addSlot(objects::PDU1_HANDLER, length * 0, DeviceHandlerIF::GET_READ);
thisSequence->addSlot(objects::PDU2_HANDLER, length * 0, DeviceHandlerIF::PERFORM_OPERATION);
thisSequence->addSlot(objects::PDU2_HANDLER, length * 0, DeviceHandlerIF::SEND_WRITE);
thisSequence->addSlot(objects::PDU2_HANDLER, length * 0, DeviceHandlerIF::GET_WRITE);
thisSequence->addSlot(objects::PDU2_HANDLER, length * 0, DeviceHandlerIF::SEND_READ);
thisSequence->addSlot(objects::PDU2_HANDLER, length * 0, DeviceHandlerIF::GET_READ);
thisSequence->addSlot(objects::P60DOCK_HANDLER, length * 0, DeviceHandlerIF::PERFORM_OPERATION);
thisSequence->addSlot(objects::P60DOCK_HANDLER, length * 0, DeviceHandlerIF::SEND_WRITE);
thisSequence->addSlot(objects::P60DOCK_HANDLER, length * 0, DeviceHandlerIF::GET_WRITE);
thisSequence->addSlot(objects::P60DOCK_HANDLER, length * 0, DeviceHandlerIF::SEND_READ);
thisSequence->addSlot(objects::P60DOCK_HANDLER, length * 0, DeviceHandlerIF::GET_READ);
thisSequence->addSlot(objects::GYRO_0_ADIS_HANDLER, length * 0,
DeviceHandlerIF::PERFORM_OPERATION);
thisSequence->addSlot(objects::GYRO_0_ADIS_HANDLER, length * 0, DeviceHandlerIF::SEND_WRITE);
thisSequence->addSlot(objects::GYRO_0_ADIS_HANDLER, length * 0, DeviceHandlerIF::GET_WRITE);
thisSequence->addSlot(objects::GYRO_0_ADIS_HANDLER, length * 0, DeviceHandlerIF::SEND_READ);
thisSequence->addSlot(objects::GYRO_0_ADIS_HANDLER, length * 0, DeviceHandlerIF::GET_READ);
thisSequence->addSlot(objects::GYRO_1_L3G_HANDLER, length * 0,
DeviceHandlerIF::PERFORM_OPERATION);
thisSequence->addSlot(objects::GYRO_1_L3G_HANDLER, length * 0, DeviceHandlerIF::SEND_WRITE);
thisSequence->addSlot(objects::GYRO_1_L3G_HANDLER, length * 0, DeviceHandlerIF::GET_WRITE);
thisSequence->addSlot(objects::GYRO_1_L3G_HANDLER, length * 0, DeviceHandlerIF::SEND_READ);
thisSequence->addSlot(objects::GYRO_1_L3G_HANDLER, length * 0, DeviceHandlerIF::GET_READ);
thisSequence->addSlot(objects::GYRO_2_ADIS_HANDLER, length * 0,
DeviceHandlerIF::PERFORM_OPERATION);
thisSequence->addSlot(objects::GYRO_2_ADIS_HANDLER, length * 0, DeviceHandlerIF::SEND_WRITE);
thisSequence->addSlot(objects::GYRO_2_ADIS_HANDLER, length * 0, DeviceHandlerIF::GET_WRITE);
thisSequence->addSlot(objects::GYRO_2_ADIS_HANDLER, length * 0, DeviceHandlerIF::SEND_READ);
thisSequence->addSlot(objects::GYRO_2_ADIS_HANDLER, length * 0, DeviceHandlerIF::GET_READ);
thisSequence->addSlot(objects::GYRO_3_L3G_HANDLER, length * 0,
DeviceHandlerIF::PERFORM_OPERATION);
thisSequence->addSlot(objects::GYRO_3_L3G_HANDLER, length * 0, DeviceHandlerIF::SEND_WRITE);
thisSequence->addSlot(objects::GYRO_3_L3G_HANDLER, length * 0, DeviceHandlerIF::GET_WRITE);
thisSequence->addSlot(objects::GYRO_3_L3G_HANDLER, length * 0, DeviceHandlerIF::SEND_READ);
thisSequence->addSlot(objects::GYRO_3_L3G_HANDLER, length * 0, DeviceHandlerIF::GET_READ);
thisSequence->addSlot(objects::MGM_0_LIS3_HANDLER, length * 0,
DeviceHandlerIF::PERFORM_OPERATION);
thisSequence->addSlot(objects::MGM_0_LIS3_HANDLER, length * 0, DeviceHandlerIF::SEND_WRITE);
thisSequence->addSlot(objects::MGM_0_LIS3_HANDLER, length * 0, DeviceHandlerIF::GET_WRITE);
thisSequence->addSlot(objects::MGM_0_LIS3_HANDLER, length * 0, DeviceHandlerIF::SEND_READ);
thisSequence->addSlot(objects::MGM_0_LIS3_HANDLER, length * 0, DeviceHandlerIF::GET_READ);
thisSequence->addSlot(objects::MGM_2_LIS3_HANDLER, length * 0,
DeviceHandlerIF::PERFORM_OPERATION);
thisSequence->addSlot(objects::MGM_2_LIS3_HANDLER, length * 0, DeviceHandlerIF::SEND_WRITE);
thisSequence->addSlot(objects::MGM_2_LIS3_HANDLER, length * 0, DeviceHandlerIF::GET_WRITE);
thisSequence->addSlot(objects::MGM_2_LIS3_HANDLER, length * 0, DeviceHandlerIF::SEND_READ);
thisSequence->addSlot(objects::MGM_2_LIS3_HANDLER, length * 0, DeviceHandlerIF::GET_READ);
thisSequence->addSlot(objects::PLPCDU_HANDLER, length * 0, DeviceHandlerIF::PERFORM_OPERATION);
thisSequence->addSlot(objects::PLPCDU_HANDLER, length * 0, DeviceHandlerIF::SEND_WRITE);
thisSequence->addSlot(objects::PLPCDU_HANDLER, length * 0, DeviceHandlerIF::GET_WRITE);
thisSequence->addSlot(objects::PLPCDU_HANDLER, length * 0, DeviceHandlerIF::SEND_READ);
thisSequence->addSlot(objects::PLPCDU_HANDLER, length * 0, DeviceHandlerIF::GET_READ);
if (thisSequence->checkSequence() == returnvalue::OK) {
return returnvalue::OK;
} else {
#if FSFW_CPP_OSTREAM_ENABLED == 1
sif::error << "pst::pollingSequenceInitDefault: Sequence invalid!" << std::endl;
#endif
return returnvalue::FAILED;
}
}

View File

@ -0,0 +1,14 @@
#ifndef POLLINGSEQUENCEFACTORY_H_
#define POLLINGSEQUENCEFACTORY_H_
#include <fsfw/returnvalues/returnvalue.h>
class FixedTimeslotTaskIF;
namespace dummy_pst {
ReturnValue_t pst(FixedTimeslotTaskIF *thisSequence);
}
#endif /* POLLINGSEQUENCEINIT_H_ */

View File

@ -3,7 +3,7 @@
#include <fsfw/returnvalues/FwClassIds.h>
#include "commonClassIds.h"
#include "eive/resultClassIds.h"
/**
* Source IDs starts at 73 for now

View File

@ -1,18 +0,0 @@
#ifndef FSFWCONFIG_TMTC_APID_H_
#define FSFWCONFIG_TMTC_APID_H_
#include <stdint.h>
/**
* Application Process Definition: entity, uniquely identified by an
* application process ID (APID), capable of generating telemetry source
* packets and receiving telecommand packets
*
* SOURCE APID: 0x73 / 115 / s
* APID is a 11 bit number
*/
namespace apid {
static const uint16_t EIVE_OBSW = 0x65;
}
#endif /* FSFWCONFIG_TMTC_APID_H_ */

View File

@ -1,9 +1,17 @@
#include <objects/systemObjectList.h>
#include <iostream>
#include "InitMission.h"
#include "OBSWVersion.h"
#include "commonConfig.h"
#include "fsfw/FSFWVersion.h"
#include "fsfw/controller/ControllerBase.h"
#include "fsfw/ipc/QueueFactory.h"
#include "fsfw/modes/HasModesIF.h"
#include "fsfw/modes/ModeMessage.h"
#include "fsfw/objectmanager/ObjectManager.h"
#include "fsfw/tasks/TaskFactory.h"
#include "scheduling.h"
#ifdef WIN32
static const char* COMPILE_PRINTOUT = "Windows";
#elif LINUX
@ -19,12 +27,15 @@ static const char* COMPILE_PRINTOUT = "unknown OS";
int main(void) {
std::cout << "-- EIVE OBSW --" << std::endl;
std::cout << "-- Compiled for " << COMPILE_PRINTOUT << " --" << std::endl;
std::cout << "-- OBSW " << SW_NAME << " v" << SW_VERSION << "." << SW_SUBVERSION << "."
<< SW_REVISION << ", FSFW v" << FSFW_VERSION << "." << FSFW_SUBVERSION << "."
<< FSFW_REVISION << "--" << std::endl;
std::cout << "-- OBSW "
<< "v" << common::OBSW_VERSION << " | FSFW v" << fsfw::FSFW_VERSION << " --"
<< std::endl;
std::cout << "-- " << __DATE__ << " " << __TIME__ << " --" << std::endl;
std::cout << "-- "
<< " BSP HOSTED"
<< " --" << std::endl;
initmission::initMission();
scheduling::initMission();
for (;;) {
// suspend main thread by sleeping it.

244
bsp_hosted/scheduling.cpp Normal file
View File

@ -0,0 +1,244 @@
#include "linux/scheduling.h"
#include <bsp_hosted/fsfwconfig/pollingsequence/DummyPst.h>
#include <fsfw/objectmanager/ObjectManager.h>
#include <fsfw/objectmanager/ObjectManagerIF.h>
#include <fsfw/returnvalues/returnvalue.h>
#include <fsfw/serviceinterface/ServiceInterfaceStream.h>
#include <fsfw/tasks/FixedTimeslotTaskIF.h>
#include <fsfw/tasks/PeriodicTaskIF.h>
#include <fsfw/tasks/TaskFactory.h>
#include <mission/utility/InitMission.h>
#include <iostream>
#include "OBSWConfig.h"
#include "ObjectFactory.h"
#include "scheduling.h"
#ifdef LINUX
ServiceInterfaceStream sif::debug("DEBUG");
ServiceInterfaceStream sif::info("INFO");
ServiceInterfaceStream sif::warning("WARNING");
ServiceInterfaceStream sif::error("ERROR", false, false, true);
#else
ServiceInterfaceStream sif::debug("DEBUG", true);
ServiceInterfaceStream sif::info("INFO", true);
ServiceInterfaceStream sif::warning("WARNING", true);
ServiceInterfaceStream sif::error("ERROR", true, false, true);
#endif
ObjectManagerIF* objectManager = nullptr;
void scheduling::initMission() {
sif::info << "Building global objects.." << std::endl;
/* Instantiate global object manager and also create all objects */
ObjectManager::instance()->setObjectFactoryFunction(ObjectFactory::produce, nullptr);
sif::info << "Initializing all objects.." << std::endl;
ObjectManager::instance()->initialize();
/* This function creates and starts all tasks */
initTasks();
}
void scheduling::initTasks() {
TaskFactory* factory = TaskFactory::instance();
if (factory == nullptr) {
/* Should never happen ! */
return;
}
#if OBSW_PRINT_MISSED_DEADLINES == 1
void (*missedDeadlineFunc)(void) = TaskFactory::printMissedDeadline;
#else
void (*missedDeadlineFunc)(void) = nullptr;
#endif
/* TMTC Distribution */
PeriodicTaskIF* tmtcDistributor = factory->createPeriodicTask(
"DIST", 45, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.2, missedDeadlineFunc);
ReturnValue_t result = tmtcDistributor->addComponent(objects::CCSDS_PACKET_DISTRIBUTOR);
if (result != returnvalue::OK) {
sif::error << "Object add component failed" << std::endl;
}
result = tmtcDistributor->addComponent(objects::PUS_PACKET_DISTRIBUTOR);
if (result != returnvalue::OK) {
sif::error << "Object add component failed" << std::endl;
}
result = tmtcDistributor->addComponent(objects::TM_FUNNEL);
if (result != returnvalue::OK) {
sif::error << "Object add component failed" << std::endl;
}
result = tmtcDistributor->addComponent(objects::UDP_TMTC_SERVER);
if (result != returnvalue::OK) {
sif::error << "Add component UDP Unix Bridge failed" << std::endl;
}
result = tmtcDistributor->addComponent(objects::TCP_TMTC_SERVER);
if (result != returnvalue::OK) {
sif::error << "Add component UDP Unix Bridge failed" << std::endl;
}
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;
}
PeriodicTaskIF* tcpPollingTask = factory->createPeriodicTask(
"TCP_POLLING", 70, PeriodicTaskIF::MINIMUM_STACK_SIZE, 2.0, missedDeadlineFunc);
result = tcpPollingTask->addComponent(objects::TCP_TMTC_POLLING_TASK);
if (result != returnvalue::OK) {
sif::error << "Add component UDP Polling failed" << std::endl;
}
/* PUS Services */
PeriodicTaskIF* pusVerification = factory->createPeriodicTask(
"PUS_VERIF", 40, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.200, missedDeadlineFunc);
result = pusVerification->addComponent(objects::PUS_SERVICE_1_VERIFICATION);
if (result != returnvalue::OK) {
sif::error << "Object add component failed" << std::endl;
}
PeriodicTaskIF* eventHandling = factory->createPeriodicTask(
"EVENTS", 60, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.200, missedDeadlineFunc);
result = eventHandling->addComponent(objects::EVENT_MANAGER);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("EVENT_MNGR", objects::EVENT_MANAGER);
}
result = eventHandling->addComponent(objects::PUS_SERVICE_5_EVENT_REPORTING);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("PUS5", objects::PUS_SERVICE_5_EVENT_REPORTING);
}
PeriodicTaskIF* pusHighPrio = factory->createPeriodicTask(
"PUS_HIGH_PRIO", 50, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.200, missedDeadlineFunc);
result = pusHighPrio->addComponent(objects::PUS_SERVICE_2_DEVICE_ACCESS);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("PUS2", objects::PUS_SERVICE_2_DEVICE_ACCESS);
}
result = pusHighPrio->addComponent(objects::PUS_SERVICE_9_TIME_MGMT);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("PUS9", objects::PUS_SERVICE_9_TIME_MGMT);
}
result = pusHighPrio->addComponent(objects::PUS_SERVICE_3_HOUSEKEEPING);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("PUS3", objects::PUS_SERVICE_3_HOUSEKEEPING);
}
PeriodicTaskIF* pusMedPrio = factory->createPeriodicTask(
"PUS_MED_PRIO", 40, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.8, missedDeadlineFunc);
result = pusMedPrio->addComponent(objects::PUS_SERVICE_8_FUNCTION_MGMT);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("PUS8", objects::PUS_SERVICE_8_FUNCTION_MGMT);
}
result = pusMedPrio->addComponent(objects::PUS_SERVICE_200_MODE_MGMT);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("PUS200", objects::PUS_SERVICE_200_MODE_MGMT);
}
result = pusMedPrio->addComponent(objects::PUS_SERVICE_20_PARAMETERS);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("PUS20", objects::PUS_SERVICE_20_PARAMETERS);
}
PeriodicTaskIF* pusLowPrio = factory->createPeriodicTask(
"PUS_LOW_PRIO", 30, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.6, missedDeadlineFunc);
result = pusLowPrio->addComponent(objects::PUS_SERVICE_17_TEST);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("PUS17", objects::PUS_SERVICE_17_TEST);
}
PeriodicTaskIF* thermalTask = factory->createPeriodicTask(
"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);
}
result = thermalTask->addComponent(objects::THERMAL_CONTROLLER);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("THERMAL_CONTROLLER", objects::THERMAL_CONTROLLER);
}
FixedTimeslotTaskIF* pstTask = factory->createFixedTimeslotTask(
"DUMMY_PST", 75, PeriodicTaskIF::MINIMUM_STACK_SIZE * 4, 0.5, missedDeadlineFunc);
result = dummy_pst::pst(pstTask);
if (result != returnvalue::OK) {
sif::error << "Failed to add dummy pst to fixed timeslot task" << std::endl;
}
#if OBSW_ADD_PLOC_SUPERVISOR == 1
PeriodicTaskIF* supvHelperTask = factory->createPeriodicTask(
"PLOC_SUPV_HELPER", 20, 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", 25, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.0, missedDeadlineFunc);
scheduling::addMpsocSupvHandlers(plTask);
#if OBSW_ADD_TEST_CODE == 1
result = testTask->addComponent(objects::TEST_TASK);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("TEST_TASK", objects::TEST_TASK);
}
#endif /* OBSW_ADD_TEST_CODE == 1 */
PeriodicTaskIF* dummyTask = factory->createPeriodicTask(
"DUMMY_TASK", 30, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.0, missedDeadlineFunc);
dummyTask->addComponent(objects::SUS_0_N_LOC_XFYFZM_PT_XF);
dummyTask->addComponent(objects::SUS_1_N_LOC_XBYFZM_PT_XB);
dummyTask->addComponent(objects::SUS_2_N_LOC_XFYBZB_PT_YB);
dummyTask->addComponent(objects::SUS_3_N_LOC_XFYBZF_PT_YF);
dummyTask->addComponent(objects::SUS_4_N_LOC_XMYFZF_PT_ZF);
dummyTask->addComponent(objects::SUS_5_N_LOC_XFYMZB_PT_ZB);
dummyTask->addComponent(objects::SUS_6_R_LOC_XFYBZM_PT_XF);
dummyTask->addComponent(objects::SUS_7_R_LOC_XBYBZM_PT_XB);
dummyTask->addComponent(objects::SUS_8_R_LOC_XBYBZB_PT_YB);
dummyTask->addComponent(objects::SUS_9_R_LOC_XBYBZB_PT_YF);
dummyTask->addComponent(objects::SUS_10_N_LOC_XMYBZF_PT_ZF);
dummyTask->addComponent(objects::SUS_11_R_LOC_XBYMZB_PT_ZB);
dummyTask->addComponent(objects::RTD_0_IC3_PLOC_HEATSPREADER);
dummyTask->addComponent(objects::RTD_1_IC4_PLOC_MISSIONBOARD);
dummyTask->addComponent(objects::RTD_2_IC5_4K_CAMERA);
dummyTask->addComponent(objects::RTD_3_IC6_DAC_HEATSPREADER);
dummyTask->addComponent(objects::RTD_4_IC7_STARTRACKER);
dummyTask->addComponent(objects::RTD_5_IC8_RW1_MX_MY);
dummyTask->addComponent(objects::RTD_6_IC9_DRO);
dummyTask->addComponent(objects::RTD_7_IC10_SCEX);
dummyTask->addComponent(objects::RTD_8_IC11_X8);
dummyTask->addComponent(objects::RTD_9_IC12_HPA);
dummyTask->addComponent(objects::RTD_10_IC13_PL_TX);
dummyTask->addComponent(objects::RTD_11_IC14_MPA);
dummyTask->addComponent(objects::RTD_12_IC15_ACU);
dummyTask->addComponent(objects::RTD_13_IC16_PLPCDU_HEATSPREADER);
dummyTask->addComponent(objects::RTD_14_IC17_TCS_BOARD);
dummyTask->addComponent(objects::RTD_15_IC18_IMTQ);
sif::info << "Starting tasks.." << std::endl;
tmtcDistributor->startTask();
udpPollingTask->startTask();
tcpPollingTask->startTask();
pusVerification->startTask();
eventHandling->startTask();
pusHighPrio->startTask();
pusMedPrio->startTask();
pusLowPrio->startTask();
pstTask->startTask();
thermalTask->startTask();
dummyTask->startTask();
#if OBSW_ADD_PLOC_SUPERVISOR == 1
supvHelperTask->startTask();
#endif
#if OBSW_ADD_PLOC_SUPERVISOR == 1 || OBSW_ADD_PLOC_MPSOC == 1
plTask->startTask();
#endif
#if OBSW_ADD_TEST_CODE == 1
testTask->startTask();
#endif /* OBSW_ADD_TEST_CODE == 1 */
sif::info << "Tasks started.." << std::endl;
}

6
bsp_hosted/scheduling.h Normal file
View File

@ -0,0 +1,6 @@
#pragma once
namespace scheduling {
void initMission();
void initTasks();
}; // namespace scheduling

View File

@ -1,8 +1,6 @@
target_sources(${OBSW_NAME} PUBLIC
InitMission.cpp
main.cpp
ObjectFactory.cpp
)
target_sources(${OBSW_NAME} PUBLIC InitMission.cpp main.cpp gpioInit.cpp
ObjectFactory.cpp RPiSdCardManager.cpp)
add_subdirectory(boardconfig)
add_subdirectory(boardtest)
add_subdirectory(fsfwconfig)

View File

@ -1,12 +1,14 @@
#include "InitMission.h"
#include <fsfw/devicehandlers/DeviceHandlerIF.h>
#include <fsfw/objectmanager/ObjectManager.h>
#include <fsfw/objectmanager/ObjectManagerIF.h>
#include <fsfw/returnvalues/HasReturnvaluesIF.h>
#include <fsfw/returnvalues/returnvalue.h>
#include <fsfw/serviceinterface/ServiceInterface.h>
#include <fsfw/tasks/FixedTimeslotTaskIF.h>
#include <fsfw/tasks/PeriodicTaskIF.h>
#include <fsfw/tasks/TaskFactory.h>
#include <linux/InitMission.h>
#include <mission/utility/InitMission.h>
#include <iostream>
@ -36,7 +38,7 @@ void initmission::initMission() {
void initmission::initTasks() {
TaskFactory* factory = TaskFactory::instance();
ReturnValue_t result = HasReturnvaluesIF::RETURN_OK;
ReturnValue_t result = returnvalue::OK;
if (factory == nullptr) {
/* Should never happen ! */
return;
@ -51,15 +53,15 @@ void initmission::initTasks() {
PeriodicTaskIF* tmTcDistributor = factory->createPeriodicTask(
"DIST", 40, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.2, missedDeadlineFunc);
result = tmTcDistributor->addComponent(objects::CCSDS_PACKET_DISTRIBUTOR);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
sif::error << "Object add component failed" << std::endl;
}
result = tmTcDistributor->addComponent(objects::PUS_PACKET_DISTRIBUTOR);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
sif::error << "Object add component failed" << std::endl;
}
result = tmTcDistributor->addComponent(objects::TM_FUNNEL);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
sif::error << "Object add component failed" << std::endl;
}
@ -67,16 +69,22 @@ void initmission::initTasks() {
PeriodicTaskIF* tmtcBridgeTask = factory->createPeriodicTask(
"TMTC_BRIDGE", 50, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.2, missedDeadlineFunc);
result = tmtcBridgeTask->addComponent(objects::TMTC_BRIDGE);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
sif::error << "Add component TMTC Bridge failed" << std::endl;
}
PeriodicTaskIF* tmtcPollingTask = factory->createPeriodicTask(
"TMTC_POLLING", 80, PeriodicTaskIF::MINIMUM_STACK_SIZE, 2.0, missedDeadlineFunc);
result = tmtcPollingTask->addComponent(objects::TMTC_POLLING_TASK);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
sif::error << "Add component TMTC Polling failed" << std::endl;
}
#if OBSW_ADD_SCEX_DEVICE == 1
PeriodicTaskIF* scexDevHandler;
PeriodicTaskIF* scexReaderTask;
scheduling::schedulingScex(*factory, scexDevHandler, scexReaderTask);
#endif
/* PUS Services */
std::vector<PeriodicTaskIF*> pusTasks;
createPusTasks(*factory, missedDeadlineFunc, pusTasks);
@ -109,6 +117,10 @@ void initmission::initTasks() {
#endif /* OBSW_ADD_TEST_CODE == 1 */
taskStarter(pstTasks, "PST Tasks");
#if OBSW_ADD_SCEX_DEVICE == 1
scexDevHandler->startTask();
scexReaderTask->startTask();
#endif
#if OBSW_ADD_TEST_PST == 1
if (startTestPst) {
pstTestTask->startTask();
@ -120,11 +132,11 @@ void initmission::initTasks() {
void initmission::createPusTasks(TaskFactory& factory,
TaskDeadlineMissedFunction missedDeadlineFunc,
std::vector<PeriodicTaskIF*>& taskVec) {
ReturnValue_t result = HasReturnvaluesIF::RETURN_OK;
ReturnValue_t result = returnvalue::OK;
PeriodicTaskIF* pusVerification = factory.createPeriodicTask(
"PUS_VERIF", 40, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.200, missedDeadlineFunc);
result = pusVerification->addComponent(objects::PUS_SERVICE_1_VERIFICATION);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
sif::error << "Object add component failed" << std::endl;
}
taskVec.push_back(pusVerification);
@ -132,11 +144,11 @@ void initmission::createPusTasks(TaskFactory& factory,
PeriodicTaskIF* pusEvents = factory.createPeriodicTask(
"PUS_EVENTS", 60, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.200, missedDeadlineFunc);
result = pusEvents->addComponent(objects::PUS_SERVICE_5_EVENT_REPORTING);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
initmission::printAddObjectError("PUS_EVENTS", objects::PUS_SERVICE_5_EVENT_REPORTING);
}
result = pusEvents->addComponent(objects::EVENT_MANAGER);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
initmission::printAddObjectError("PUS_MGMT", objects::EVENT_MANAGER);
}
taskVec.push_back(pusEvents);
@ -144,11 +156,11 @@ void initmission::createPusTasks(TaskFactory& factory,
PeriodicTaskIF* pusHighPrio = factory.createPeriodicTask(
"PUS_HIGH_PRIO", 50, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.200, missedDeadlineFunc);
result = pusHighPrio->addComponent(objects::PUS_SERVICE_2_DEVICE_ACCESS);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
initmission::printAddObjectError("PUS2", objects::PUS_SERVICE_2_DEVICE_ACCESS);
}
result = pusHighPrio->addComponent(objects::PUS_SERVICE_9_TIME_MGMT);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
initmission::printAddObjectError("PUS9", objects::PUS_SERVICE_9_TIME_MGMT);
}
taskVec.push_back(pusHighPrio);
@ -156,19 +168,19 @@ void initmission::createPusTasks(TaskFactory& factory,
PeriodicTaskIF* pusMedPrio = factory.createPeriodicTask(
"PUS_MED_PRIO", 40, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.8, missedDeadlineFunc);
result = pusMedPrio->addComponent(objects::PUS_SERVICE_8_FUNCTION_MGMT);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
initmission::printAddObjectError("PUS8", objects::PUS_SERVICE_8_FUNCTION_MGMT);
}
result = pusMedPrio->addComponent(objects::PUS_SERVICE_200_MODE_MGMT);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
initmission::printAddObjectError("PUS200", objects::PUS_SERVICE_200_MODE_MGMT);
}
result = pusMedPrio->addComponent(objects::PUS_SERVICE_20_PARAMETERS);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
initmission::printAddObjectError("PUS20", objects::PUS_SERVICE_20_PARAMETERS);
}
result = pusMedPrio->addComponent(objects::PUS_SERVICE_3_HOUSEKEEPING);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
initmission::printAddObjectError("PUS3", objects::PUS_SERVICE_3_HOUSEKEEPING);
}
taskVec.push_back(pusMedPrio);
@ -176,11 +188,11 @@ void initmission::createPusTasks(TaskFactory& factory,
PeriodicTaskIF* pusLowPrio = factory.createPeriodicTask(
"PUS_LOW_PRIO", 30, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.6, missedDeadlineFunc);
result = pusLowPrio->addComponent(objects::PUS_SERVICE_17_TEST);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
initmission::printAddObjectError("PUS17", objects::PUS_SERVICE_17_TEST);
}
result = pusLowPrio->addComponent(objects::INTERNAL_ERROR_REPORTER);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
initmission::printAddObjectError("INT_ERR_RPRT", objects::INTERNAL_ERROR_REPORTER);
}
taskVec.push_back(pusLowPrio);
@ -189,45 +201,55 @@ void initmission::createPusTasks(TaskFactory& factory,
void initmission::createPstTasks(TaskFactory& factory,
TaskDeadlineMissedFunction missedDeadlineFunc,
std::vector<PeriodicTaskIF*>& taskVec) {
ReturnValue_t result = HasReturnvaluesIF::RETURN_OK;
ReturnValue_t result = returnvalue::OK;
#if OBSW_ADD_SPI_TEST_CODE == 0
FixedTimeslotTaskIF* spiPst = factory.createFixedTimeslotTask(
"SPI_PST", 70, PeriodicTaskIF::MINIMUM_STACK_SIZE * 4, 3.0, missedDeadlineFunc);
"SPI_PST", 70, PeriodicTaskIF::MINIMUM_STACK_SIZE * 4, 1.0, missedDeadlineFunc);
result = pst::pstSpi(spiPst);
if (result != HasReturnvaluesIF::RETURN_OK) {
sif::error << "InitMission::initTasks: Creating PST failed!" << std::endl;
if (result != returnvalue::OK) {
if (result != FixedTimeslotTaskIF::SLOT_LIST_EMPTY) {
sif::error << "InitMission::createPstTasks: Creating PST failed!" << std::endl;
}
} else {
taskVec.push_back(spiPst);
}
taskVec.push_back(spiPst);
#endif
}
void initmission::createTestTasks(TaskFactory& factory,
TaskDeadlineMissedFunction missedDeadlineFunc,
std::vector<PeriodicTaskIF*>& taskVec) {
ReturnValue_t result = HasReturnvaluesIF::RETURN_OK;
ReturnValue_t result = returnvalue::OK;
PeriodicTaskIF* testTask = factory.createPeriodicTask(
"TEST_TASK", 40, PeriodicTaskIF::MINIMUM_STACK_SIZE, 2.0, missedDeadlineFunc);
result = testTask->addComponent(objects::TEST_TASK);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
initmission::printAddObjectError("TEST_TASK", objects::TEST_TASK);
}
#if OBSW_ADD_SPI_TEST_CODE == 1
result = testTask->addComponent(objects::SPI_TEST);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
initmission::printAddObjectError("SPI_TEST", objects::SPI_TEST);
}
#endif /* RPI_ADD_SPI_TEST == 1 */
#if RPI_ADD_GPIO_TEST == 1
result = testTask->addComponent(objects::LIBGPIOD_TEST);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
initmission::printAddObjectError("GPIOD_TEST", objects::LIBGPIOD_TEST);
}
#endif /* RPI_ADD_GPIO_TEST == 1 */
#if OBSW_ADD_UART_TEST_CODE == 1
result = testTask->addComponent(objects::UART_TEST);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
initmission::printAddObjectError("UART_TEST", objects::UART_TEST);
}
PeriodicTaskIF* scexReaderTask = factory.createPeriodicTask(
"SCEX_UART_READER", 20, PeriodicTaskIF::MINIMUM_STACK_SIZE, 2.0, missedDeadlineFunc);
result = scexReaderTask->addComponent(objects::SCEX_UART_READER);
if (result != returnvalue::OK) {
initmission::printAddObjectError("SCEX_UART_READER", objects::SCEX_UART_READER);
}
taskVec.push_back(scexReaderTask);
#endif /* RPI_ADD_GPIO_TEST == 1 */
taskVec.push_back(testTask);
@ -237,7 +259,7 @@ void initmission::createTestTasks(TaskFactory& factory,
FixedTimeslotTaskIF* pstTestTask = factory->createFixedTimeslotTask(
"TEST_PST", 50, PeriodicTaskIF::MINIMUM_STACK_SIZE * 2, 2.0, missedDeadlineFunc);
result = pst::pstTest(pstTestTask);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
sif::info << "initmission::initTasks: ACS PST empty or invalid" << std::endl;
startTestPst = false;
}

View File

@ -3,7 +3,7 @@
#include <vector>
#include "fsfw/tasks/Typedef.h"
#include "fsfw/tasks/definitions.h"
class PeriodicTaskIF;
class TaskFactory;

View File

@ -6,66 +6,41 @@
#ifndef FSFWCONFIG_OBSWCONFIG_H_
#define FSFWCONFIG_OBSWCONFIG_H_
#cmakedefine RASPBERRY_PI
#cmakedefine XIPHOS_Q7S
#cmakedefine BEAGLEBONEBLACK
#cmakedefine EGSE
#ifdef RASPBERRY_PI
#include "rpiConfig.h"
#elif defined(XIPHOS_Q7S)
#include "q7sConfig.h"
#endif
#include "commonConfig.h"
#include "OBSWVersion.h"
/* These defines should be disabled for mission code but are useful for
debugging. */
#define OBSW_VERBOSE_LEVEL 1
//! Board defines
#define BOARD_TE0720 0
/*******************************************************************/
/** All of the following flags should be enabled for mission code */
/*******************************************************************/
//! Timers can mess up the code when debugging
//! All of this should be enabled for mission code!
#if defined XIPHOS_Q7S
#define OBSW_USE_CCSDS_IP_CORE 1
// Set to 1 if all telemetry should be sent to the PTME IP Core
#define OBSW_TM_TO_PTME 0
// Set to 1 if telecommands are received via the PDEC IP Core
#define OBSW_TC_FROM_PDEC 0
#define OBSW_ENABLE_TIMERS 1
#define OBSW_ADD_MGT 1
#define OBSW_ADD_BPX_BATTERY_HANDLER 1
#define OBSW_ADD_STAR_TRACKER 0
#define OBSW_ADD_PLOC_SUPERVISOR 0
#define OBSW_ADD_PLOC_MPSOC 0
#define OBSW_ADD_SUN_SENSORS 0
#define OBSW_ADD_ACS_BOARD 1
#define OBSW_ADD_MGT 0
#define OBSW_ADD_ACS_BOARD 0
#define OBSW_ADD_ACS_HANDLERS 0
#define OBSW_ADD_GPS_0 0
#define OBSW_ADD_GPS_1 0
#define OBSW_ADD_RW 0
#define OBSW_ADD_BPX_BATTERY_HANDLER 0
#define OBSW_ADD_RTD_DEVICES 0
#define OBSW_ADD_TMP_DEVICES 0
#define OBSW_ADD_RAD_SENSORS 0
#define OBSW_ADD_PL_PCDU 0
#define OBSW_ADD_TMP_DEVICES 0
#define OBSW_ADD_SCEX_DEVICE 1
#define OBSW_ADD_RAD_SENSORS 0
#define OBSW_ADD_SYRLINKS 0
#define OBSW_ENABLE_SYRLINKS_TRANSMIT_TIMEOUT 0
#define OBSW_SYRLINKS_SIMULATED 1
#define OBSW_STAR_TRACKER_GROUND_CONFIG 1
// This is a really tricky switch.. It initializes the PCDU switches to their default states
// at powerup. I think it would be better
// to leave it off for now. It makes testing a lot more difficult and it might mess with
// something the operators might want to do by giving the software too much intelligence
// at the wrong place. The system component might command all the Switches accordingly anyway
#define OBSW_INITIALIZE_SWITCHES 0
#define OBSW_ENABLE_PERIODIC_HK 0
#endif
#ifdef EGSE
#define OBSW_ADD_STAR_TRACKER 1
#endif
/*******************************************************************/
/** All of the following flags should be disabled for mission code */
/*******************************************************************/
@ -94,57 +69,54 @@ debugging. */
#define OBSW_DEBUG_RAD_SENSOR 0
#define OBSW_TEST_PL_PCDU 0
#define OBSW_DEBUG_PL_PCDU 0
#define OBSW_TEST_BPX_BATT 0
#define OBSW_DEBUG_BPX_BATT 0
#define OBSW_TEST_IMTQ 0
#define OBSW_DEBUG_IMTQ 0
#define OBSW_TEST_RW 0
#define OBSW_DEBUG_RW 0
#define OBSW_TEST_LIBGPIOD 0
#define OBSW_TEST_PLOC_HANDLER 0
#define OBSW_TEST_BPX_BATT 0
#define OBSW_TEST_CCSDS_BRIDGE 0
#define OBSW_TEST_CCSDS_PTME 0
#define OBSW_TEST_TE7020_HEATER 0
#define OBSW_TEST_GPIO_OPEN_BY_LABEL 0
#define OBSW_TEST_GPIO_OPEN_BY_LINE_NAME 0
#define OBSW_DEBUG_P60DOCK 0
#define OBSW_DEBUG_BPX_BATT 0
#define OBSW_PRINT_CORE_HK 0
#define OBSW_DEBUG_PDU1 0
#define OBSW_DEBUG_PDU2 0
#define OBSW_DEBUG_GPS 0
#define OBSW_DEBUG_ACU 0
#define OBSW_DEBUG_SYRLINKS 0
#define OBSW_DEBUG_IMTQ 0
#define OBSW_DEBUG_RW 0
#define OBSW_DEBUG_PLOC_MPSOC 0
#define OBSW_DEBUG_PDEC_HANDLER 0
#define OBSW_DEBUG_PLOC_SUPERVISOR 0
#define OBSW_DEBUG_PDEC_HANDLER 0
#ifdef EGSE
#define OBSW_DEBUG_STARTRACKER 1
#else
#define OBSW_DEBUG_PLOC_MPSOC 0
#define OBSW_DEBUG_STARTRACKER 0
#endif
#ifdef RASPBERRY_PI
#define OBSW_ENABLE_TIMERS 1
#define OBSW_ADD_STAR_TRACKER 0
#define OBSW_ADD_PLOC_SUPERVISOR 0
#define OBSW_ADD_PLOC_MPSOC 0
#define OBSW_ADD_SUN_SENSORS 0
#define OBSW_ADD_ACS_BOARD 0
#define OBSW_ADD_GPS_0 0
#define OBSW_ADD_GPS_1 0
#define OBSW_ADD_RW 0
#define OBSW_ADD_RTD_DEVICES 0
#define OBSW_ADD_TMP_DEVICES 0
#define OBSW_ADD_RAD_SENSORS 0
#define OBSW_ADD_SYRLINKS 0
#endif
#define OBSW_TCP_SERVER_WIRETAPPING 0
/*******************************************************************/
/** CMake Defines */
/*******************************************************************/
#cmakedefine EIVE_BUILD_GPSD_GPS_HANDLER
#include "OBSWVersion.h"
#define OBSW_ADD_CCSDS_IP_CORES 0
// Set to 1 if all telemetry should be sent to the PTME IP Core
#define OBSW_TM_TO_PTME 0
// Set to 1 if telecommands are received via the PDEC IP Core
#define OBSW_TC_FROM_PDEC 0
#cmakedefine LIBGPS_VERSION_MAJOR @LIBGPS_VERSION_MAJOR@
#cmakedefine LIBGPS_VERSION_MINOR @LIBGPS_VERSION_MINOR@
#ifdef RASPBERRY_PI
#include "rpiConfig.h"
#elif defined(XIPHOS_Q7S)
#include "q7sConfig.h"
#endif
#ifdef __cplusplus
@ -152,18 +124,6 @@ debugging. */
#include "events/subsystemIdRanges.h"
#include "returnvalues/classIds.h"
namespace config {
#endif
/* Add mission configuration flags here */
static constexpr uint32_t OBSW_FILESYSTEM_HANDLER_QUEUE_SIZE = 50;
static constexpr uint32_t PLOC_UPDATER_QUEUE_SIZE = 50;
static constexpr uint32_t STR_IMG_HELPER_QUEUE_SIZE = 50;
static constexpr uint8_t LIVE_TM = 0;
#ifdef __cplusplus
}
#endif
#endif /* FSFWCONFIG_OBSWCONFIG_H_ */

View File

@ -1,23 +1,28 @@
#include "ObjectFactory.h"
#include <bsp_linux_board/RPiSdCardManager.h>
#include <linux/devices/ScexUartReader.h>
#include "OBSWConfig.h"
#include "devConf.h"
#include "devices/addresses.h"
#include "devices/gpioIds.h"
#include "fsfw/datapoollocal/LocalDataPoolManager.h"
#include "fsfw/power/DummyPowerSwitcher.h"
#include "fsfw/tasks/TaskFactory.h"
#include "fsfw/tmtcpacket/pus/tm.h"
#include "fsfw/tmtcservices/CommandingServiceBase.h"
#include "fsfw/tmtcservices/PusServiceBase.h"
#include "gpioInit.h"
#include "linux/ObjectFactory.h"
#include "linux/boardtest/LibgpiodTest.h"
#include "linux/boardtest/SpiTestClass.h"
#include "linux/boardtest/UartTestClass.h"
#include "mission/core/GenericFactory.h"
#include "mission/devices/GPSHyperionHandler.h"
#include "mission/devices/GyroADIS1650XHandler.h"
#include "mission/utility/TmFunnel.h"
#include "mission/tmtc/TmFunnel.h"
#include "objects/systemObjectList.h"
#include "tmtc/apid.h"
#include "tmtc/pusIds.h"
/* UDP server includes */
@ -29,8 +34,8 @@
#include "fsfw/osal/common/UdpTmTcBridge.h"
#endif
#include <fsfw_hal/linux/uart/UartComIF.h>
#include <fsfw_hal/linux/uart/UartCookie.h>
#include <fsfw_hal/linux/serial/SerialComIF.h>
#include <fsfw_hal/linux/serial/SerialCookie.h>
#include "fsfw_hal/common/gpio/GpioCookie.h"
#include "fsfw_hal/devicehandlers/GyroL3GD20Handler.h"
@ -42,8 +47,8 @@
#include "fsfw_hal/linux/spi/SpiCookie.h"
void Factory::setStaticFrameworkObjectIds() {
PusServiceBase::packetSource = objects::PUS_PACKET_DISTRIBUTOR;
PusServiceBase::packetDestination = objects::TM_FUNNEL;
PusServiceBase::PUS_DISTRIBUTOR = objects::PUS_PACKET_DISTRIBUTOR;
PusServiceBase::PACKET_DESTINATION = objects::TM_FUNNEL;
CommandingServiceBase::defaultPacketSource = objects::PUS_PACKET_DISTRIBUTOR;
CommandingServiceBase::defaultPacketDestination = objects::TM_FUNNEL;
@ -51,9 +56,6 @@ void Factory::setStaticFrameworkObjectIds() {
TmFunnel::downlinkDestination = objects::TMTC_BRIDGE;
// No storage object for now.
TmFunnel::storageDestination = objects::NO_OBJECT;
VerificationReporter::messageReceiver = objects::PUS_SERVICE_1_VERIFICATION;
TmPacketBase::timeStamperId = objects::TIME_STAMPER;
}
void ObjectFactory::produce(void* args) {
@ -64,116 +66,132 @@ void ObjectFactory::produce(void* args) {
GpioCookie* gpioCookie = nullptr;
static_cast<void>(gpioCookie);
new SpiComIF(objects::SPI_COM_IF, gpioIF);
SpiComIF* spiComIF = new SpiComIF(objects::SPI_MAIN_COM_IF, spi::DEV, gpioIF);
static_cast<void>(spiComIF);
auto pwrSwitcher = new DummyPowerSwitcher(objects::PCDU_HANDLER, 18, 0);
static_cast<void>(pwrSwitcher);
std::string spiDev;
SpiCookie* spiCookie = nullptr;
static_cast<void>(spiCookie);
#if OBSW_ADD_ACS_BOARD == 1
if (gpioCookie == nullptr) {
gpioCookie = new GpioCookie();
}
// TODO: Missing pin for Gyro 2
gpio::createRpiGpioConfig(gpioCookie, gpioIds::MGM_0_LIS3_CS, gpio::MGM_0_BCM_PIN, "MGM_0_LIS3",
gpio::Direction::OUT, 1);
gpio::createRpiGpioConfig(gpioCookie, gpioIds::MGM_1_RM3100_CS, gpio::MGM_1_BCM_PIN,
"MGM_1_RM3100", gpio::Direction::OUT, 1);
gpio::createRpiGpioConfig(gpioCookie, gpioIds::MGM_2_LIS3_CS, gpio::MGM_2_BCM_PIN, "MGM_2_LIS3",
gpio::Direction::OUT, 1);
gpio::createRpiGpioConfig(gpioCookie, gpioIds::MGM_3_RM3100_CS, gpio::MGM_3_BCM_PIN,
"MGM_3_RM3100", gpio::Direction::OUT, 1);
gpio::createRpiGpioConfig(gpioCookie, gpioIds::GYRO_0_ADIS_CS, gpio::GYRO_0_BCM_PIN,
"GYRO_0_ADIS", gpio::Direction::OUT, 1);
gpio::createRpiGpioConfig(gpioCookie, gpioIds::GYRO_1_L3G_CS, gpio::GYRO_1_BCM_PIN, "GYRO_1_L3G",
gpio::Direction::OUT, 1);
gpio::createRpiGpioConfig(gpioCookie, gpioIds::GYRO_2_ADIS_CS, gpio::GYRO_2_BCM_PIN,
"GYRO_2_ADIS", gpio::Direction::OUT, 1);
gpio::createRpiGpioConfig(gpioCookie, gpioIds::GYRO_3_L3G_CS, gpio::GYRO_3_BCM_PIN, "GYRO_3_L3G",
gpio::Direction::OUT, 1);
gpioIF->addGpios(gpioCookie);
spiDev = "/dev/spidev0.1";
spiCookie =
new SpiCookie(addresses::MGM_0_LIS3, gpioIds::MGM_0_LIS3_CS, spiDev,
MGMLIS3MDL::MAX_BUFFER_SIZE, spi::DEFAULT_LIS3_MODE, spi::DEFAULT_LIS3_SPEED);
auto mgmLis3Handler =
new MgmLIS3MDLHandler(objects::MGM_0_LIS3_HANDLER, objects::SPI_COM_IF, spiCookie, 0);
mgmLis3Handler->setStartUpImmediately();
#if FSFW_HAL_LIS3MDL_MGM_DEBUG == 1
mgmLis3Handler->setToGoToNormalMode(true);
#if OBSW_ADD_ACS_BOARD == 1 && defined(RASPBERRY_PI)
createRpiAcsBoard(gpioIF, spiDev);
#endif
spiCookie =
new SpiCookie(addresses::MGM_1_RM3100, gpioIds::MGM_1_RM3100_CS, spiDev,
RM3100::MAX_BUFFER_SIZE, spi::DEFAULT_RM3100_MODE, spi::DEFAULT_RM3100_SPEED);
auto mgmRm3100Handler =
new MgmRM3100Handler(objects::MGM_1_RM3100_HANDLER, objects::SPI_COM_IF, spiCookie, 0);
mgmRm3100Handler->setStartUpImmediately();
#if FSFW_HAL_RM3100_MGM_DEBUG == 1
mgmRm3100Handler->setToGoToNormalMode(true);
#if OBSW_ADD_SUN_SENSORS == 1 || OBSW_ADD_RTD_DEVICES == 1
#ifdef RASPBERRY_PI
rpi::gpio::initSpiCsDecoder(gpioIF);
#endif
#endif
spiCookie =
new SpiCookie(addresses::MGM_2_LIS3, gpioIds::MGM_2_LIS3_CS, spiDev,
MGMLIS3MDL::MAX_BUFFER_SIZE, spi::DEFAULT_LIS3_MODE, spi::DEFAULT_LIS3_SPEED);
mgmLis3Handler =
new MgmLIS3MDLHandler(objects::MGM_2_LIS3_HANDLER, objects::SPI_COM_IF, spiCookie, 0);
mgmLis3Handler->setStartUpImmediately();
#if FSFW_HAL_LIS3MDL_MGM_DEBUG == 1
mgmLis3Handler->setToGoToNormalMode(true);
#if OBSW_ADD_SCEX_DEVICE == 1
auto* sdcMan = new RPiSdCardManager("/tmp");
createScexComponents(uart::DEV, pwrSwitcher, *sdcMan, true, std::nullopt);
#endif
spiCookie =
new SpiCookie(addresses::MGM_3_RM3100, gpioIds::MGM_3_RM3100_CS, spiDev,
RM3100::MAX_BUFFER_SIZE, spi::DEFAULT_RM3100_MODE, spi::DEFAULT_RM3100_SPEED);
mgmRm3100Handler =
new MgmRM3100Handler(objects::MGM_3_RM3100_HANDLER, objects::SPI_COM_IF, spiCookie, 0);
mgmRm3100Handler->setStartUpImmediately();
#if FSFW_HAL_RM3100_MGM_DEBUG == 1
mgmRm3100Handler->setToGoToNormalMode(true);
#if OBSW_ADD_SUN_SENSORS == 1
createSunSensorComponents(gpioIF, spiComIF, pwrSwitcher, spi::DEV);
#endif
spiCookie =
new SpiCookie(addresses::GYRO_0_ADIS, gpioIds::GYRO_0_ADIS_CS, spiDev,
ADIS16507::MAXIMUM_REPLY_SIZE, spi::DEFAULT_L3G_MODE, spi::DEFAULT_L3G_SPEED);
auto adisHandler =
new GyroADIS16507Handler(objects::GYRO_0_ADIS_HANDLER, objects::SPI_COM_IF, spiCookie);
adisHandler->setStartUpImmediately();
spiCookie =
new SpiCookie(addresses::GYRO_1_L3G, gpioIds::GYRO_1_L3G_CS, spiDev, L3GD20H::MAX_BUFFER_SIZE,
spi::DEFAULT_L3G_MODE, spi::DEFAULT_L3G_SPEED);
auto gyroL3gHandler =
new GyroHandlerL3GD20H(objects::GYRO_1_L3G_HANDLER, objects::SPI_COM_IF, spiCookie, 0);
gyroL3gHandler->setStartUpImmediately();
#if FSFW_HAL_L3GD20_GYRO_DEBUG == 1
gyroL3gHandler->setToGoToNormalMode(true);
#if OBSW_ADD_RTD_DEVICES == 1
createRtdComponents(spi::DEV, gpioIF, pwrSwitcher);
#endif
spiCookie =
new SpiCookie(addresses::GYRO_2_ADIS, gpioIds::GYRO_2_ADIS_CS, spiDev,
ADIS16507::MAXIMUM_REPLY_SIZE, spi::DEFAULT_L3G_MODE, spi::DEFAULT_L3G_SPEED);
adisHandler =
new GyroADIS16507Handler(objects::GYRO_2_ADIS_HANDLER, objects::SPI_COM_IF, spiCookie);
adisHandler->setStartUpImmediately();
spiCookie =
new SpiCookie(addresses::GYRO_3_L3G, gpioIds::GYRO_3_L3G_CS, spiDev, L3GD20H::MAX_BUFFER_SIZE,
spi::DEFAULT_L3G_MODE, spi::DEFAULT_L3G_SPEED);
gyroL3gHandler =
new GyroHandlerL3GD20H(objects::GYRO_3_L3G_HANDLER, objects::SPI_COM_IF, spiCookie, 0);
gyroL3gHandler->setStartUpImmediately();
#if FSFW_HAL_L3GD20_GYRO_DEBUG == 1
gyroL3gHandler->setToGoToNormalMode(true);
#endif
#endif /* RPI_TEST_ACS_BOARD == 1 */
#if OBSW_ADD_TEST_CODE == 1
createTestTasks();
#endif /* OBSW_ADD_TEST_CODE == 1 */
}
void ObjectFactory::createRpiAcsBoard(GpioIF* gpioIF, std::string spiDev) {
GpioCookie* gpioCookie = new GpioCookie();
// TODO: Missing pin for Gyro 2
gpio::createRpiGpioConfig(gpioCookie, gpioIds::MGM_0_LIS3_CS, gpio::MGM_0_BCM_PIN, "MGM_0_LIS3",
gpio::Direction::OUT, gpio::Levels::HIGH);
gpio::createRpiGpioConfig(gpioCookie, gpioIds::MGM_1_RM3100_CS, gpio::MGM_1_BCM_PIN,
"MGM_1_RM3100", gpio::Direction::OUT, gpio::Levels::HIGH);
gpio::createRpiGpioConfig(gpioCookie, gpioIds::MGM_2_LIS3_CS, gpio::MGM_2_BCM_PIN, "MGM_2_LIS3",
gpio::Direction::OUT, gpio::Levels::HIGH);
gpio::createRpiGpioConfig(gpioCookie, gpioIds::MGM_3_RM3100_CS, gpio::MGM_3_BCM_PIN,
"MGM_3_RM3100", gpio::Direction::OUT, gpio::Levels::HIGH);
gpio::createRpiGpioConfig(gpioCookie, gpioIds::GYRO_0_ADIS_CS, gpio::GYRO_0_BCM_PIN,
"GYRO_0_ADIS", gpio::Direction::OUT, gpio::Levels::HIGH);
gpio::createRpiGpioConfig(gpioCookie, gpioIds::GYRO_1_L3G_CS, gpio::GYRO_1_BCM_PIN, "GYRO_1_L3G",
gpio::Direction::OUT, gpio::Levels::HIGH);
gpio::createRpiGpioConfig(gpioCookie, gpioIds::GYRO_2_ADIS_CS, gpio::GYRO_2_BCM_PIN,
"GYRO_2_ADIS", gpio::Direction::OUT, gpio::Levels::HIGH);
gpio::createRpiGpioConfig(gpioCookie, gpioIds::GYRO_3_L3G_CS, gpio::GYRO_3_BCM_PIN, "GYRO_3_L3G",
gpio::Direction::OUT, gpio::Levels::HIGH);
gpioIF->addGpios(gpioCookie);
SpiCookie* spiCookie =
new SpiCookie(addresses::MGM_0_LIS3, gpioIds::MGM_0_LIS3_CS, MGMLIS3MDL::MAX_BUFFER_SIZE,
spi::DEFAULT_LIS3_MODE, spi::DEFAULT_LIS3_SPEED);
auto mgmLis3Handler =
new MgmLIS3MDLHandler(objects::MGM_0_LIS3_HANDLER, objects::SPI_MAIN_COM_IF, spiCookie, 0);
mgmLis3Handler->setStartUpImmediately();
#if OBSW_TEST_ACS == 1
mgmLis3Handler->setToGoToNormalMode(true);
#endif
spiCookie =
new SpiCookie(addresses::MGM_1_RM3100, gpioIds::MGM_1_RM3100_CS, RM3100::MAX_BUFFER_SIZE,
spi::DEFAULT_RM3100_MODE, spi::DEFAULT_RM3100_SPEED);
auto mgmRm3100Handler =
new MgmRM3100Handler(objects::MGM_1_RM3100_HANDLER, objects::SPI_MAIN_COM_IF, spiCookie, 0);
mgmRm3100Handler->setStartUpImmediately();
#if OBSW_TEST_ACS == 1
mgmRm3100Handler->setToGoToNormalMode(true);
#endif
spiCookie =
new SpiCookie(addresses::MGM_2_LIS3, gpioIds::MGM_2_LIS3_CS, MGMLIS3MDL::MAX_BUFFER_SIZE,
spi::DEFAULT_LIS3_MODE, spi::DEFAULT_LIS3_SPEED);
mgmLis3Handler =
new MgmLIS3MDLHandler(objects::MGM_2_LIS3_HANDLER, objects::SPI_MAIN_COM_IF, spiCookie, 0);
mgmLis3Handler->setStartUpImmediately();
#if OBSW_TEST_ACS == 1
mgmLis3Handler->setToGoToNormalMode(true);
#endif
spiCookie =
new SpiCookie(addresses::MGM_3_RM3100, gpioIds::MGM_3_RM3100_CS, RM3100::MAX_BUFFER_SIZE,
spi::DEFAULT_RM3100_MODE, spi::DEFAULT_RM3100_SPEED);
mgmRm3100Handler =
new MgmRM3100Handler(objects::MGM_3_RM3100_HANDLER, objects::SPI_MAIN_COM_IF, spiCookie, 0);
mgmRm3100Handler->setStartUpImmediately();
#if OBSW_TEST_ACS == 1
mgmRm3100Handler->setToGoToNormalMode(true);
#endif
spiCookie =
new SpiCookie(addresses::GYRO_0_ADIS, gpioIds::GYRO_0_ADIS_CS, ADIS1650X::MAXIMUM_REPLY_SIZE,
spi::DEFAULT_L3G_MODE, spi::DEFAULT_L3G_SPEED);
auto adisHandler =
new GyroADIS1650XHandler(objects::GYRO_0_ADIS_HANDLER, objects::SPI_MAIN_COM_IF, spiCookie,
ADIS1650X::Type::ADIS16505);
adisHandler->setStartUpImmediately();
spiCookie = new SpiCookie(addresses::GYRO_1_L3G, gpioIds::GYRO_1_L3G_CS, L3GD20H::MAX_BUFFER_SIZE,
spi::DEFAULT_L3G_MODE, spi::DEFAULT_L3G_SPEED);
auto gyroL3gHandler =
new GyroHandlerL3GD20H(objects::GYRO_1_L3G_HANDLER, objects::SPI_MAIN_COM_IF, spiCookie, 0);
gyroL3gHandler->setStartUpImmediately();
#if OBSW_TEST_ACS == 1
gyroL3gHandler->setToGoToNormalMode(true);
#endif
spiCookie =
new SpiCookie(addresses::GYRO_2_ADIS, gpioIds::GYRO_2_ADIS_CS, ADIS1650X::MAXIMUM_REPLY_SIZE,
spi::DEFAULT_L3G_MODE, spi::DEFAULT_L3G_SPEED);
adisHandler = new GyroADIS1650XHandler(objects::GYRO_2_ADIS_HANDLER, objects::SPI_MAIN_COM_IF,
spiCookie, ADIS1650X::Type::ADIS16505);
adisHandler->setStartUpImmediately();
spiCookie = new SpiCookie(addresses::GYRO_3_L3G, gpioIds::GYRO_3_L3G_CS, L3GD20H::MAX_BUFFER_SIZE,
spi::DEFAULT_L3G_MODE, spi::DEFAULT_L3G_SPEED);
gyroL3gHandler =
new GyroHandlerL3GD20H(objects::GYRO_3_L3G_HANDLER, objects::SPI_MAIN_COM_IF, spiCookie, 0);
gyroL3gHandler->setStartUpImmediately();
#if OBSW_TEST_ACS == 1
gyroL3gHandler->setToGoToNormalMode(true);
#endif
}
void ObjectFactory::createTestTasks() {
new TestTask(objects::TEST_TASK);
@ -184,7 +202,7 @@ void ObjectFactory::createTestTasks() {
#if OBSW_ADD_UART_TEST_CODE == 1
new UartTestClass(objects::UART_TEST);
#else
new UartComIF(objects::UART_COM_IF);
newSerialComIF(objects::UART_COM_IF);
#endif
#if RPI_LOOPBACK_TEST_GPIO == 1

View File

@ -1,10 +1,15 @@
#ifndef BSP_LINUX_OBJECTFACTORY_H_
#define BSP_LINUX_OBJECTFACTORY_H_
#include <string>
class GpioIF;
namespace ObjectFactory {
void setStatics();
void produce(void* args);
void createRpiAcsBoard(GpioIF* gpioIF, std::string spiDev);
void createTestTasks();
}; // namespace ObjectFactory

View File

@ -0,0 +1,13 @@
#include "RPiSdCardManager.h"
RPiSdCardManager::RPiSdCardManager(std::string prefix) : prefix(std::move(prefix)) {}
const std::string& RPiSdCardManager::getCurrentMountPrefix() const { return prefix; }
bool RPiSdCardManager::isSdCardUsable(sd::SdCard sdCard) { return true; }
std::optional<sd::SdCard> RPiSdCardManager::getPreferredSdCard() const { return std::nullopt; }
void RPiSdCardManager::setActiveSdCard(sd::SdCard sdCard) {}
std::optional<sd::SdCard> RPiSdCardManager::getActiveSdCard() const { return std::nullopt; }

View File

@ -0,0 +1,18 @@
#ifndef BSP_LINUX_BOARD_RPISDCARDMANAGER_H_
#define BSP_LINUX_BOARD_RPISDCARDMANAGER_H_
#include <mission/memory/SdCardMountedIF.h>
class RPiSdCardManager : public SdCardMountedIF {
public:
RPiSdCardManager(std::string prefix);
const std::string& getCurrentMountPrefix() const override;
bool isSdCardUsable(sd::SdCard sdCard) override;
std::optional<sd::SdCard> getPreferredSdCard() const override;
void setActiveSdCard(sd::SdCard sdCard) override;
std::optional<sd::SdCard> getActiveSdCard() const override;
private:
std::string prefix;
};
#endif /* BSP_LINUX_BOARD_RPISDCARDMANAGER_H_ */

View File

@ -1,7 +1,3 @@
target_sources(${OBSW_NAME} PRIVATE
print.c
)
target_sources(${OBSW_NAME} PRIVATE print.c)
target_include_directories(${OBSW_NAME} PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}
)
target_include_directories(${OBSW_NAME} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})

View File

@ -17,16 +17,4 @@
#define RPI_ADD_UART_TEST 0
/* Adapt these values accordingly */
namespace gpio {
static constexpr uint8_t MGM_0_BCM_PIN = 17;
static constexpr uint8_t MGM_1_BCM_PIN = 27;
static constexpr uint8_t MGM_2_BCM_PIN = 22;
static constexpr uint8_t MGM_3_BCM_PIN = 23;
static constexpr uint8_t GYRO_0_BCM_PIN = 5;
static constexpr uint8_t GYRO_1_BCM_PIN = 6;
static constexpr uint8_t GYRO_2_BCM_PIN = 13;
static constexpr uint8_t GYRO_3_BCM_PIN = 19;
}
#endif /* BSP_RPI_BOARDCONFIG_RPI_CONFIG_H_ */

View File

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

View File

@ -0,0 +1,43 @@
#ifndef BSP_LINUX_BOARD_DEFINITIONS_H_
#define BSP_LINUX_BOARD_DEFINITIONS_H_
#include <cstdint>
#include "OBSWConfig.h"
#ifdef RASPBERRY_PI
namespace spi {
static constexpr char DEV[] = "/dev/spidev0.1";
}
namespace uart {
static constexpr char DEV[] = "/dev/serial0";
}
/* Adapt these values accordingly */
namespace gpio {
static constexpr uint8_t MGM_0_BCM_PIN = 17;
static constexpr uint8_t MGM_1_BCM_PIN = 27;
static constexpr uint8_t MGM_2_BCM_PIN = 22;
static constexpr uint8_t MGM_3_BCM_PIN = 23;
static constexpr uint8_t GYRO_0_BCM_PIN = 5;
static constexpr uint8_t GYRO_1_BCM_PIN = 6;
static constexpr uint8_t GYRO_2_BCM_PIN = 13;
static constexpr uint8_t GYRO_3_BCM_PIN = 19;
static constexpr uint8_t SPI_MUX_0_BCM = 17;
static constexpr uint8_t SPI_MUX_1_BCM = 27;
static constexpr uint8_t SPI_MUX_2_BCM = 22;
static constexpr uint8_t SPI_MUX_3_BCM = 23;
static constexpr uint8_t SPI_MUX_4_BCM = 5;
static constexpr uint8_t SPI_MUX_5_BCM = 6;
} // namespace gpio
#endif
#endif /* BSP_LINUX_BOARD_DEFINITIONS_H_ */

View File

@ -0,0 +1,56 @@
#include "gpioInit.h"
#include <devices/gpioIds.h>
#include <fsfw/serviceinterface/ServiceInterface.h>
#include <fsfw_hal/common/gpio/GpioCookie.h>
#include <fsfw_hal/common/gpio/GpioIF.h>
#include "definitions.h"
#include "fsfw_hal/linux/rpi/GpioRPi.h"
#ifdef RASPBERRY_PI
struct MuxInfo {
MuxInfo(gpioId_t gpioId, int bcmNum, std::string consumer)
: gpioId(gpioId), bcmNum(bcmNum), consumer(consumer) {}
gpioId_t gpioId;
int bcmNum;
std::string consumer;
};
void rpi::gpio::initSpiCsDecoder(GpioIF* gpioComIF) {
using namespace ::gpio;
ReturnValue_t result;
if (gpioComIF == nullptr) {
sif::debug << "initSpiCsDecoder: Invalid gpioComIF" << std::endl;
return;
}
std::array<::MuxInfo, 6> muxInfo{
MuxInfo(gpioIds::SPI_MUX_BIT_0, SPI_MUX_0_BCM, "SPI_MUX_0"),
MuxInfo(gpioIds::SPI_MUX_BIT_1, SPI_MUX_1_BCM, "SPI_MUX_1"),
MuxInfo(gpioIds::SPI_MUX_BIT_2, SPI_MUX_2_BCM, "SPI_MUX_2"),
MuxInfo(gpioIds::SPI_MUX_BIT_3, SPI_MUX_3_BCM, "SPI_MUX_3"),
MuxInfo(gpioIds::SPI_MUX_BIT_4, SPI_MUX_4_BCM, "SPI_MUX_4"),
MuxInfo(gpioIds::SPI_MUX_BIT_5, SPI_MUX_5_BCM, "SPI_MUX_5"),
};
GpioCookie* spiMuxGpios = new GpioCookie;
for (const auto& info : muxInfo) {
result = createRpiGpioConfig(spiMuxGpios, info.gpioId, info.bcmNum, info.consumer,
Direction::OUT, Levels::LOW);
if (result != returnvalue::OK) {
sif::error << "Creating Raspberry Pi SPI Mux GPIO failed with code " << result << std::endl;
return;
}
}
result = gpioComIF->addGpios(spiMuxGpios);
if (result != returnvalue::OK) {
sif::error << "initSpiCsDecoder: Failed to add mux bit gpios to gpioComIF" << std::endl;
return;
}
}
#endif

View File

@ -0,0 +1,20 @@
#pragma once
#include "OBSWConfig.h"
class GpioIF;
#ifdef RASPBERRY_PI
namespace rpi {
namespace gpio {
/**
* @brief This function initializes the GPIOs used to control the SN74LVC138APWR decoders on
* the TCS Board and the interface board.
*/
void initSpiCsDecoder(GpioIF* gpioComIF);
} // namespace gpio
} // namespace rpi
#endif

View File

@ -3,8 +3,8 @@
#include "InitMission.h"
#include "OBSWConfig.h"
#include "OBSWVersion.h"
#include "fsfw/FSFWVersion.h"
#include "fsfw/tasks/TaskFactory.h"
#include "fsfw/version.h"
#ifdef RASPBERRY_PI
static const char* const BOARD_NAME = "Raspberry Pi";
@ -22,8 +22,7 @@ int main(void) {
std::cout << "-- EIVE OBSW --" << std::endl;
std::cout << "-- Compiled for Linux board " << BOARD_NAME << " --" << std::endl;
std::cout << "-- OBSW " << SW_NAME << " v" << SW_VERSION << "." << SW_SUBVERSION << "."
<< SW_REVISION << ", FSFW v" << FSFW_VERSION << "." << FSFW_SUBVERSION << FSFW_REVISION
<< "--" << std::endl;
<< SW_REVISION << ", FSFW v" << fsfw::FSFW_VERSION << " --" << std::endl;
std::cout << "-- " << __DATE__ << " " << __TIME__ << " --" << std::endl;
initmission::initMission();

View File

@ -1,25 +1,27 @@
#simple mode
# simple mode
add_executable(${SIMPLE_OBSW_NAME} EXCLUDE_FROM_ALL)
target_compile_definitions(${SIMPLE_OBSW_NAME} PRIVATE "Q7S_SIMPLE_MODE")
target_sources(${SIMPLE_OBSW_NAME} PUBLIC
main.cpp
)
#I think this is unintentional? (produces linker errors for stuff in /linux)
target_link_libraries(${SIMPLE_OBSW_NAME} PUBLIC
${LIB_FSFW_NAME}
)
target_sources(${SIMPLE_OBSW_NAME} PUBLIC main.cpp)
# I think this is unintentional? (produces linker errors for stuff in /linux)
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
)
target_sources(${OBSW_NAME} PUBLIC main.cpp obsw.cpp)
add_subdirectory(boardtest)
add_subdirectory(boardconfig)
add_subdirectory(comIF)
add_subdirectory(core)
if(EIVE_Q7S_EM)
add_subdirectory(em)
else()
target_sources(${OBSW_NAME} PUBLIC fmObjectFactory.cpp)
endif()
add_subdirectory(memory)
add_subdirectory(callbacks)
add_subdirectory(devices)
add_subdirectory(xadc)
add_subdirectory(fs)

144
bsp_q7s/OBSWConfig.h.in Normal file
View File

@ -0,0 +1,144 @@
/**
* @brief This file can be used to add preprocessor define for conditional
* code inclusion exclusion or various other project constants and
* properties in one place.
*/
#ifndef FSFWCONFIG_OBSWCONFIG_H_
#define FSFWCONFIG_OBSWCONFIG_H_
#include "commonConfig.h"
#include "q7sConfig.h"
#cmakedefine RELEASE_BUILD
/*******************************************************************/
/** All of the following flags should be enabled for mission code */
/*******************************************************************/
#define OBSW_ADD_GOMSPACE_PCDU @OBSW_ADD_GOMSPACE_PCDU@
#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@
#define OBSW_ADD_PLOC_SUPERVISOR @OBSW_ADD_PLOC_SUPERVISOR@
#define OBSW_ADD_PLOC_MPSOC @OBSW_ADD_PLOC_MPSOC@
#define OBSW_ADD_SUN_SENSORS @OBSW_ADD_SUN_SENSORS@
#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_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@
#define OBSW_ADD_SCEX_DEVICE @OBSW_ADD_SCEX_DEVICE@
#define OBSW_ADD_HEATERS @OBSW_ADD_HEATERS@
#define OBSW_ADD_TMP_DEVICES @OBSW_ADD_TMP_DEVICES@
#define OBSW_ADD_RAD_SENSORS @OBSW_ADD_RAD_SENSORS@
#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@
// 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
#define OBSW_TC_FROM_PDEC @OBSW_TC_FROM_PDEC@
#define OBSW_ENABLE_SYRLINKS_TRANSMIT_TIMEOUT 0
// Configuration parameter which causes the core controller to try to keep at least one SD card
// working
#define OBSW_SD_CARD_MUST_BE_ON 1
#define OBSW_ENABLE_TIMERS 1
// This is a really tricky switch.. It initializes the PCDU switches to their default states
// at powerup. I think it would be better
// to leave it off for now. It makes testing a lot more difficult and it might mess with
// something the operators might want to do by giving the software too much intelligence
// at the wrong place. The system component might command all the Switches accordingly anyway
#define OBSW_INITIALIZE_SWITCHES 0
#define OBSW_ENABLE_PERIODIC_HK 0
/*******************************************************************/
/** All of the following flags should be disabled for mission code */
/*******************************************************************/
// 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_MPSOC_JTAG_BOOT 0
#define OBSW_STAR_TRACKER_GROUND_CONFIG 1
#define OBSW_SYRLINKS_SIMULATED @OBSW_SYRLINKS_SIMULATED@
#define OBSW_ADD_TEST_CODE 0
#define OBSW_ADD_TEST_TASK 0
#define OBSW_ADD_TEST_PST 0
// If this is enabled, all other SPI code should be disabled
#define OBSW_ADD_SPI_TEST_CODE 0
// If this is enabled, all other I2C code should be disabled
#define OBSW_ADD_I2C_TEST_CODE 0
#define OBSW_ADD_UART_TEST_CODE 0
#define OBSW_TEST_ACS 0
#define OBSW_DEBUG_ACS 0
#define OBSW_TEST_SUS 0
#define OBSW_DEBUG_SUS 0
#define OBSW_TEST_RTD 0
#define OBSW_DEBUG_RTD 0
#define OBSW_TEST_RAD_SENSOR 0
#define OBSW_DEBUG_RAD_SENSOR 0
#define OBSW_TEST_PL_PCDU 0
#define OBSW_DEBUG_PL_PCDU 0
#define OBSW_TEST_BPX_BATT 0
#define OBSW_DEBUG_BPX_BATT 0
#define OBSW_TEST_IMTQ 0
#define OBSW_DEBUG_IMTQ 0
#define OBSW_TEST_RW 0
#define OBSW_DEBUG_RW 0
#define OBSW_TEST_LIBGPIOD 0
#define OBSW_TEST_PLOC_HANDLER 0
#define OBSW_TEST_CCSDS_BRIDGE 0
#define OBSW_TEST_CCSDS_PTME 0
#define OBSW_TEST_TE7020_HEATER 0
#define OBSW_TEST_GPIO_OPEN_BY_LABEL 0
#define OBSW_TEST_GPIO_OPEN_BY_LINE_NAME 0
#define OBSW_DEBUG_P60DOCK 0
#define OBSW_PRINT_CORE_HK 0
#define OBSW_DEBUG_PDU1 0
#define OBSW_DEBUG_PDU2 0
#define OBSW_DEBUG_TMP1075 0
#define OBSW_DEBUG_GPS 0
#define OBSW_DEBUG_ACU 0
#define OBSW_DEBUG_SYRLINKS 0
#define OBSW_DEBUG_PDEC_HANDLER 0
#define OBSW_DEBUG_PLOC_SUPERVISOR 0
#define OBSW_DEBUG_PLOC_MPSOC 0
#define OBSW_DEBUG_STARTRACKER 0
#define OBSW_TCP_SERVER_WIRETAPPING 0
/*******************************************************************/
/** CMake Defines */
/*******************************************************************/
// Use TCP instead of UDP for the TMTC bridge. This allows using the TMTC client locally
// because UDP packets are not allowed in the VPN
// 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
#cmakedefine EIVE_BUILD_GPSD_GPS_HANDLER
#cmakedefine LIBGPS_VERSION_MAJOR @LIBGPS_VERSION_MAJOR@
#cmakedefine LIBGPS_VERSION_MINOR @LIBGPS_VERSION_MINOR@
#ifdef __cplusplus
#include "objects/systemObjectList.h"
#include "events/subsystemIdRanges.h"
#include "returnvalues/classIds.h"
#endif
#endif /* FSFWCONFIG_OBSWCONFIG_H_ */

View File

@ -1,12 +1,5 @@
target_sources(${OBSW_NAME} PRIVATE
print.c
)
target_sources(${OBSW_NAME} PRIVATE print.c)
target_sources(${SIMPLE_OBSW_NAME} PRIVATE
print.c
)
target_sources(${SIMPLE_OBSW_NAME} PRIVATE print.c)
target_include_directories(${OBSW_NAME} PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}
)
target_include_directories(${OBSW_NAME} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})

View File

@ -3,21 +3,28 @@
namespace q7s {
static constexpr char SPI_DEFAULT_DEV[] = "/dev/spi-main";
static constexpr char SPI_RW_DEV[] = "/dev/spi-rw";
static constexpr char SPI_DEFAULT_DEV[] = "/dev/spi_main";
static constexpr uint32_t SPI_MAIN_BUS_LOCK_TIMEOUT = 50;
static constexpr char I2C_DEFAULT_DEV[] = "/dev/i2c-eive";
static constexpr char SPI_RW_DEV[] = "/dev/spi_rw";
static constexpr char UART_GNSS_DEV[] = "/dev/ul-gps";
static constexpr char UART_PLOC_MPSOC_DEV[] = "/dev/ul-plmpsoc";
static constexpr char UART_PLOC_SUPERVSIOR_DEV[] = "/dev/ul-plsv";
static constexpr char UART_SYRLINKS_DEV[] = "/dev/ul-syrlinks";
static constexpr char UART_STAR_TRACKER_DEV[] = "/dev/ul-str";
//! I2C bus using an I2C IP core in the programmable logic (PL)
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";
static constexpr char UIO_PDEC_REGISTERS[] = "/dev/uio0";
static constexpr char UIO_PDEC_CONFIG_MEMORY[] = "/dev/uio2";
static constexpr char UIO_PDEC_RAM[] = "/dev/uio3";
static constexpr char UIO_PTME[] = "/dev/uio1";
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_SYRLINKS_DEV[] = "/dev/ul_syrlinks";
static constexpr char UART_STAR_TRACKER_DEV[] = "/dev/ul_str";
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_PDEC_RAM[] = "/dev/uio_pdec_ram";
static constexpr char UIO_PDEC_IRQ[] = "/dev/uio_pdec_irq";
static constexpr int MAP_ID_PTME_CONFIG = 3;
namespace uiomapids {
@ -84,6 +91,7 @@ static constexpr char RS485_EN_TX_DATA[] = "tx_data_enable_ltc2872";
static constexpr char RS485_EN_RX_CLOCK[] = "rx_clock_enable_ltc2872";
static constexpr char RS485_EN_RX_DATA[] = "rx_data_enable_ltc2872";
static constexpr char PDEC_RESET[] = "pdec_reset";
static constexpr char SYRLINKS_FAULT[] = "syrlinks_fault";
static constexpr char PL_PCDU_ENABLE_VBAT0[] = "enable_plpcdu_vbat0";
static constexpr char PL_PCDU_ENABLE_VBAT1[] = "enable_plpcdu_vbat1";
@ -94,6 +102,9 @@ static constexpr char PL_PCDU_ENABLE_HPA[] = "enable_plpcdu_hpa";
static constexpr char PL_PCDU_ENABLE_MPA[] = "enable_plpcdu_mpa";
static constexpr char PL_PCDU_ADC_CS[] = "plpcdu_adc_chip_select";
static constexpr char ENABLE_SUPV_UART[] = "enable_supv_uart";
static constexpr char ENABLE_MPSOC_UART[] = "enable_mpsoc_uart";
} // namespace gpioNames
} // namespace q7s

View File

@ -34,5 +34,6 @@ SOFTWARE.
#define ETL_CPP11_SUPPORTED 1
#define ETL_NO_NULLPTR_SUPPORT 0
#define ETL_HAS_ERROR_ON_STRING_TRUNCATION 1
#endif

View File

@ -3,6 +3,8 @@
#include <cstdint>
#define OBSW_Q7S_EM @OBSW_Q7S_EM@
/*******************************************************************/
/** All of the following flags should be enabled for mission code */
/*******************************************************************/
@ -14,16 +16,6 @@
/** Other flags */
/*******************************************************************/
#define Q7S_SD_NONE 0
#define Q7S_SD_COLD_REDUNDANT 1
#define Q7S_SD_HOT_REDUNDANT 2
// The OBSW will perform different actions to set up the SD cards depending on the flag set here
// Set to Q7S_SD_NONE: Don't do anything
// Set to Q7S_COLD_REDUNDANT: On startup, get the prefered SD card, turn it on and mount it, and
// turn off the second SD card if it is on
// Set to Q7S_HOT_REDUNDANT: On startup, turn on both SD cards and mount them
#define Q7S_SD_CARD_CONFIG Q7S_SD_COLD_REDUNDANT
// Probably better if this is disabled for mission code. Convenient for development
#define Q7S_CHECK_FOR_ALREADY_RUNNING_IMG 1

View File

@ -1,10 +1,5 @@
target_sources(${OBSW_NAME} PRIVATE
FileSystemTest.cpp
Q7STestTask.cpp
)
target_sources(${OBSW_NAME} PRIVATE FileSystemTest.cpp Q7STestTask.cpp)
if(EIVE_BUILD_Q7S_SIMPLE_MODE)
target_sources(${SIMPLE_OBSW_NAME} PRIVATE
FileSystemTest.cpp
)
endif()
target_sources(${SIMPLE_OBSW_NAME} PRIVATE FileSystemTest.cpp)
endif()

View File

@ -1,10 +1,14 @@
#include "Q7STestTask.h"
#include <bsp_q7s/core/CoreController.h>
#include <bsp_q7s/memory/FileSystemHandler.h>
#include <bsp_q7s/xadc/Xadc.h>
#include <fsfw/globalfunctions/arrayprinter.h>
#include <fsfw/objectmanager/ObjectManager.h>
#include <fsfw_hal/host/HostFilesystem.h>
#include <gps.h>
#include <libgpsmm.h>
#include <param/param_string.h>
#include <param/rparam_client.h>
#include <cstdio>
#include <ctime>
@ -13,16 +17,23 @@
#include <iostream>
#include <nlohmann/json.hpp>
#include "bsp_q7s/memory/SdCardManager.h"
#include "OBSWConfig.h"
#include "bsp_q7s/fs/SdCardManager.h"
#include "bsp_q7s/fs/helpers.h"
#include "bsp_q7s/memory/scratchApi.h"
#include "fsfw/tasks/TaskFactory.h"
#include "fsfw/timemanager/Stopwatch.h"
#include "p60pdu.h"
#include "test/DummyParameter.h"
using namespace returnvalue;
Q7STestTask::Q7STestTask(object_id_t objectId) : TestTask(objectId) {
doTestSdCard = false;
doTestScratchApi = false;
doTestGps = false;
doTestGpsShm = false;
doTestGpsSocket = false;
doTestXadc = false;
}
ReturnValue_t Q7STestTask::performOneShotAction() {
@ -32,17 +43,54 @@ ReturnValue_t Q7STestTask::performOneShotAction() {
if (doTestScratchApi) {
testScratchApi();
}
if (DO_TEST_GOMSPACE_API) {
uint8_t p60pdu_node = 3;
uint8_t hk_mem[P60PDU_HK_SIZE];
param_index_t p60pdu_hk{};
p60pdu_hk.physaddr = hk_mem;
if (!p60pdu_get_hk(&p60pdu_hk, p60pdu_node, 1000)) {
printf("Error getting p60pdu hk\n");
} else {
param_list(&p60pdu_hk, 1);
}
}
if (DO_TEST_GOMSPACE_GET_CONFIG) {
uint8_t p60pdu_node = 3;
param_index_t requestStruct{};
requestStruct.table = p60pdu_config;
requestStruct.mem_id = P60PDU_PARAM;
uint8_t hk_mem[P60PDU_PARAM_SIZE];
requestStruct.count = p60pdu_config_count;
requestStruct.size = P60PDU_PARAM_SIZE;
requestStruct.physaddr = hk_mem;
int result = rparam_get_full_table(&requestStruct, p60pdu_node, P60_PORT_RPARAM,
requestStruct.mem_id, 1000);
param_list(&requestStruct, 1);
return (result == 0);
}
// testJsonLibDirect();
// testDummyParams();
// testProtHandler();
FsOpCodes opCode = FsOpCodes::APPEND_TO_FILE;
testFileSystemHandlerDirect(opCode);
if (doTestProtHandler) {
testProtHandler();
}
if (DO_TEST_FS_HANDLER) {
FsOpCodes opCode = FsOpCodes::CREATE_EMPTY_FILE_IN_TMP;
testFileSystemHandlerDirect(opCode);
}
return TestTask::performOneShotAction();
}
ReturnValue_t Q7STestTask::performPeriodicAction() {
if (doTestGps) {
testGpsDaemon();
if (doTestGpsShm) {
testGpsDaemonShm();
}
if (doTestGpsSocket) {
testGpsDaemonSocket();
}
if (doTestXadc) {
xadcTest();
}
return TestTask::performPeriodicAction();
}
@ -84,23 +132,23 @@ void Q7STestTask::fileTests() {
void Q7STestTask::testScratchApi() {
ReturnValue_t result = scratch::writeNumber("TEST", 1);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
sif::debug << "Q7STestTask::scratchApiTest: Writing number failed" << std::endl;
}
int number = 0;
result = scratch::readNumber("TEST", number);
sif::info << "Q7STestTask::testScratchApi: Value for key \"TEST\": " << number << std::endl;
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
sif::debug << "Q7STestTask::scratchApiTest: Reading number failed" << std::endl;
}
result = scratch::writeString("TEST2", "halloWelt");
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
sif::debug << "Q7STestTask::scratchApiTest: Writing string failed" << std::endl;
}
std::string string;
result = scratch::readString("TEST2", string);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
sif::debug << "Q7STestTask::scratchApiTest: Reading number failed" << std::endl;
}
sif::info << "Q7STestTask::testScratchApi: Value for key \"TEST2\": " << string << std::endl;
@ -132,7 +180,7 @@ void Q7STestTask::testDummyParams() {
}
ReturnValue_t result = param.readJsonFile();
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
}
param.setValue(DummyParameter::DUMMY_KEY_PARAM_1, 3);
@ -143,13 +191,13 @@ void Q7STestTask::testDummyParams() {
int test = 0;
result = param.getValue<int>(DummyParameter::DUMMY_KEY_PARAM_1, test);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
sif::warning << "Q7STestTask::testDummyParams: Key " << DummyParameter::DUMMY_KEY_PARAM_1
<< " does not exist" << std::endl;
}
std::string test2;
result = param.getValue<std::string>(DummyParameter::DUMMY_KEY_PARAM_2, test2);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
sif::warning << "Q7STestTask::testDummyParams: Key " << DummyParameter::DUMMY_KEY_PARAM_1
<< " does not exist" << std::endl;
}
@ -168,18 +216,18 @@ ReturnValue_t Q7STestTask::initialize() {
void Q7STestTask::testProtHandler() {
bool opPerformed = false;
ReturnValue_t result = HasReturnvaluesIF::RETURN_OK;
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);
if (result != HasReturnvaluesIF::RETURN_OK) {
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);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
sif::warning << "Q7STestTask::testProtHandler: Op failed" << std::endl;
}
if (not opPerformed) {
@ -193,7 +241,7 @@ void Q7STestTask::testProtHandler() {
// lock own copy
result = coreController->setBootCopyProtection(xsc::Chip::SELF_CHIP, xsc::Copy::SELF_COPY, true,
opPerformed, true);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
sif::warning << "Q7STestTask::testProtHandler: Op failed" << std::endl;
}
if (not opPerformed) {
@ -207,7 +255,7 @@ void Q7STestTask::testProtHandler() {
// unlock specific copy
result = coreController->setBootCopyProtection(xsc::Chip::CHIP_1, xsc::Copy::COPY_1, false,
opPerformed, true);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
sif::warning << "Q7STestTask::testProtHandler: Op failed" << std::endl;
}
if (not opPerformed) {
@ -221,7 +269,7 @@ void Q7STestTask::testProtHandler() {
// lock specific copy
result = coreController->setBootCopyProtection(xsc::Chip::CHIP_1, xsc::Copy::COPY_1, true,
opPerformed, true);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
sif::warning << "Q7STestTask::testProtHandler: Op failed" << std::endl;
}
if (not opPerformed) {
@ -233,15 +281,19 @@ void Q7STestTask::testProtHandler() {
}
}
void Q7STestTask::testGpsDaemon() {
gpsmm gpsmm(GPSD_SHARED_MEMORY, 0);
void Q7STestTask::testGpsDaemonShm() {
gpsmm gpsmm(GPSD_SHARED_MEMORY, "");
gps_data_t* gps;
gps = gpsmm.read();
if (gps == nullptr) {
sif::warning << "Q7STestTask: Reading GPS data failed" << std::endl;
}
sif::info << "-- Q7STestTask: GPS shared memory read test --" << std::endl;
#if LIBGPS_VERSION_MINOR <= 17
time_t timeRaw = gps->fix.time;
#else
time_t timeRaw = gps->fix.time.tv_sec;
#endif
std::tm* time = gmtime(&timeRaw);
sif::info << "Time: " << std::put_time(time, "%c %Z") << std::endl;
sif::info << "Visible satellites: " << gps->satellites_visible << std::endl;
@ -249,149 +301,143 @@ void Q7STestTask::testGpsDaemon() {
sif::info << "Fix (0:Not Seen|1:No Fix|2:2D|3:3D): " << gps->fix.mode << std::endl;
sif::info << "Latitude: " << gps->fix.latitude << std::endl;
sif::info << "Longitude: " << gps->fix.longitude << std::endl;
#if LIBGPS_VERSION_MINOR <= 17
sif::info << "Altitude(MSL): " << gps->fix.altitude << std::endl;
#else
sif::info << "Altitude(MSL): " << gps->fix.altMSL << std::endl;
#endif
sif::info << "Speed(m/s): " << gps->fix.speed << std::endl;
}
void Q7STestTask::testFileSystemHandlerDirect(FsOpCodes opCode) {
auto fsHandler = ObjectManager::instance()->get<FileSystemHandler>(objects::FILE_SYSTEM_HANDLER);
if (fsHandler == nullptr) {
sif::warning << "Q7STestTask::testFileSystemHandlerDirect: No FS handler running.."
<< std::endl;
void Q7STestTask::testGpsDaemonSocket() {
if (gpsmmShmPtr == nullptr) {
gpsmmShmPtr = new gpsmm("localhost", DEFAULT_GPSD_PORT);
}
FileSystemHandler::FsCommandCfg cfg = {};
ReturnValue_t result = HasReturnvaluesIF::RETURN_OK;
// The data from the device will generally be read all at once. Therefore, we
// can set all field here
if (not gpsmmShmPtr->is_open()) {
if (gpsNotOpenSwitch) {
// Opening failed
#if FSFW_VERBOSE_LEVEL >= 1
sif::warning << "Q7STestTask::testGpsDaemonSocket: Opening GPSMM failed | "
<< "Error " << errno << " | " << gps_errstr(errno) << std::endl;
#endif
// Lambda for common code
auto createNonEmptyTmpDir = [&]() {
if (not std::filesystem::exists("/tmp/test")) {
result = fsHandler->createDirectory("/tmp", "test", false, &cfg);
if (result != HasReturnvaluesIF::RETURN_OK) {
return result;
}
gpsNotOpenSwitch = false;
}
// Creating sample files
sif::info << "Creating sample files in directory" << std::endl;
result = fsHandler->createFile("/tmp/test", "test1.txt", nullptr, 0, &cfg);
if (result != HasReturnvaluesIF::RETURN_OK) {
return result;
return;
}
// Stopwatch watch;
gps_data_t* gps = nullptr;
gpsmmShmPtr->stream(WATCH_ENABLE | WATCH_JSON);
if (not gpsmmShmPtr->waiting(50000000)) {
return;
}
gps = gpsmmShmPtr->read();
if (gps == nullptr) {
if (gpsReadFailedSwitch) {
gpsReadFailedSwitch = false;
sif::warning << "Q7STestTask::testGpsDaemonSocket: Reading GPS data failed" << std::endl;
}
result = fsHandler->createFile("/tmp/test", "test2.txt", nullptr, 0, &cfg);
if (result != HasReturnvaluesIF::RETURN_OK) {
return result;
return;
}
if (MODE_SET != (MODE_SET & gps->set)) {
if (noModeSetCntr >= 0) {
noModeSetCntr++;
}
return result;
};
if (noModeSetCntr == 10) {
// TODO: Trigger event here
sif::warning << "Q7STestTask::testGpsDaemonSocket: No mode could be "
"read for 10 consecutive reads"
<< std::endl;
noModeSetCntr = -1;
}
return;
} else {
noModeSetCntr = 0;
}
sif::info << "-- Q7STestTask: GPS socket read test --" << std::endl;
#if LIBGPS_VERSION_MINOR <= 17
time_t timeRaw = gps->fix.time;
#else
time_t timeRaw = gps->fix.time.tv_sec;
#endif
std::tm* time = gmtime(&timeRaw);
sif::info << "Time: " << std::put_time(time, "%c %Z") << std::endl;
sif::info << "Visible satellites: " << gps->satellites_visible << std::endl;
sif::info << "Satellites used: " << gps->satellites_used << std::endl;
sif::info << "Fix (0:Not Seen|1:No Fix|2:2D|3:3D): " << gps->fix.mode << std::endl;
sif::info << "Latitude: " << gps->fix.latitude << std::endl;
sif::info << "Longitude: " << gps->fix.longitude << std::endl;
}
switch (opCode) {
case (FsOpCodes::CREATE_EMPTY_FILE_IN_TMP): {
// No mount prefix, cause file is created in tmp
cfg.useMountPrefix = false;
sif::info << "Creating empty file in /tmp folder" << std::endl;
// Do not delete file, user can check existence in shell
fsHandler->createFile("/tmp/", "test.txt", nullptr, 0, &cfg);
break;
void Q7STestTask::testFileSystemHandlerDirect(FsOpCodes opCode) {
HostFilesystem hostFs;
auto* sdcMan = SdCardManager::instance();
std::string mountPrefix = sdcMan->getCurrentMountPrefix();
sif::info << "Current mount prefix: " << mountPrefix << std::endl;
auto prefixedPath = fshelpers::getPrefixedPath(*sdcMan, "conf/test.txt");
sif::info << "Prefixed path: " << prefixedPath << std::endl;
if (opCode == FsOpCodes::CREATE_EMPTY_FILE_IN_TMP) {
FilesystemParams params("/tmp/hello.txt");
auto res = hostFs.createFile(params);
if (res != OK) {
sif::warning << "Creating empty file in /tmp failed" << std::endl;
}
case (FsOpCodes::REMOVE_TMP_FILE): {
sif::info << "Deleting /tmp/test.txt sample file" << std::endl;
// No mount prefix, cause file is created in tmp
cfg.useMountPrefix = false;
if (not std::filesystem::exists("/tmp/test.txt")) {
// Creating sample file
sif::info << "Creating sample file /tmp/test.txt to delete" << std::endl;
fsHandler->createFile("/tmp/", "test.txt", nullptr, 0, &cfg);
}
result = fsHandler->removeFile("/tmp", "test.txt", &cfg);
if (result == HasReturnvaluesIF::RETURN_OK) {
sif::info << "File removed successfully" << std::endl;
} else {
sif::warning << "File removal failed!" << std::endl;
}
break;
}
case (FsOpCodes::CREATE_DIR_IN_TMP): {
// No mount prefix, cause file is created in tmp
cfg.useMountPrefix = false;
sif::info << "Creating empty file in /tmp folder" << std::endl;
// Do not delete file, user can check existence in shell
ReturnValue_t result = fsHandler->createDirectory("/tmp/", "test", false, &cfg);
if (result == HasReturnvaluesIF::RETURN_OK) {
sif::info << "Directory created successfully" << std::endl;
} else {
sif::warning << "Directory creation failed!" << std::endl;
}
break;
}
case (FsOpCodes::REMOVE_EMPTY_DIR_IN_TMP): {
// No mount prefix, cause file is created in tmp
cfg.useMountPrefix = false;
if (not std::filesystem::exists("/tmp/test")) {
result = fsHandler->createDirectory("/tmp", "test", false, &cfg);
} else {
// Delete any leftover files to regular dir removal works
std::remove("/tmp/test/*");
}
result = fsHandler->removeDirectory("/tmp/", "test", false, &cfg);
if (result == HasReturnvaluesIF::RETURN_OK) {
sif::info << "Directory removed successfully" << std::endl;
} else {
sif::warning << "Directory removal failed!" << std::endl;
}
break;
}
case (FsOpCodes::REMOVE_FILLED_DIR_IN_TMP): {
result = createNonEmptyTmpDir();
if (result != HasReturnvaluesIF::RETURN_OK) {
return;
}
result = fsHandler->removeDirectory("/tmp/", "test", true, &cfg);
if (result == HasReturnvaluesIF::RETURN_OK) {
sif::info << "Directory removed recursively successfully" << std::endl;
} else {
sif::warning << "Recursive directory removal failed!" << std::endl;
}
break;
}
case (FsOpCodes::ATTEMPT_DIR_REMOVAL_NON_EMPTY): {
result = createNonEmptyTmpDir();
if (result != HasReturnvaluesIF::RETURN_OK) {
return;
}
result = fsHandler->removeDirectory("/tmp/", "test", false, &cfg);
if (result != HasReturnvaluesIF::RETURN_OK) {
sif::info << "Directory removal attempt failed as expected" << std::endl;
} else {
sif::warning << "Directory removal worked when it should not have!" << std::endl;
}
break;
}
case (FsOpCodes::RENAME_FILE): {
// No mount prefix, cause file is created in tmp
cfg.useMountPrefix = false;
if (std::filesystem::exists("/tmp/test.txt")) {
fsHandler->removeDirectory("/tmp/", "test", false, &cfg);
}
sif::info << "Creating empty file /tmp/test.txt and rename to /tmp/test2.txt" << std::endl;
// Do not delete file, user can check existence in shell
fsHandler->createFile("/tmp/", "test.txt", nullptr, 0, &cfg);
fsHandler->renameFile("/tmp/", "test.txt", "test2.txt", &cfg);
break;
}
case (FsOpCodes::APPEND_TO_FILE): {
// No mount prefix, cause file is created in tmp
cfg.useMountPrefix = false;
if (std::filesystem::exists("/tmp/test.txt")) {
fsHandler->removeDirectory("/tmp/", "test", false, &cfg);
}
if (std::filesystem::exists("/tmp/test.txt")) {
fsHandler->removeDirectory("/tmp/", "test", false, &cfg);
}
sif::info << "Creating empty file /tmp/test.txt and adding content" << std::endl;
std::string content = "Hello World\n";
// Do not delete file, user can check existence in shell
fsHandler->createFile("/tmp/", "test.txt", nullptr, 0, &cfg);
fsHandler->appendToFile("/tmp/", "test.txt", reinterpret_cast<const uint8_t*>(content.data()),
content.size(), 0, &cfg);
bool fileExists = std::filesystem::exists("/tmp/hello.txt");
if (not fileExists) {
sif::warning << "File was not created!" << std::endl;
}
hostFs.removeFile("/tmp/hello.txt");
}
}
void Q7STestTask::xadcTest() {
ReturnValue_t result = returnvalue::OK;
float temperature = 0;
float vccPint = 0;
float vccPaux = 0;
float vccInt = 0;
float vccAux = 0;
float vccBram = 0;
float vccOddr = 0;
float vrefp = 0;
float vrefn = 0;
Xadc xadc;
result = xadc.getTemperature(temperature);
if (result == returnvalue::OK) {
sif::info << "Q7STestTask::xadcTest: Chip Temperature: " << temperature << " °C" << std::endl;
}
result = xadc.getVccPint(vccPint);
if (result == returnvalue::OK) {
sif::info << "Q7STestTask::xadcTest: VCC PS internal: " << vccPint << " mV" << std::endl;
}
result = xadc.getVccPaux(vccPaux);
if (result == returnvalue::OK) {
sif::info << "Q7STestTask::xadcTest: VCC PS auxilliary: " << vccPaux << " mV" << std::endl;
}
result = xadc.getVccInt(vccInt);
if (result == returnvalue::OK) {
sif::info << "Q7STestTask::xadcTest: VCC PL internal: " << vccInt << " mV" << std::endl;
}
result = xadc.getVccAux(vccAux);
if (result == returnvalue::OK) {
sif::info << "Q7STestTask::xadcTest: VCC PL auxilliary: " << vccAux << " mV" << std::endl;
}
result = xadc.getVccBram(vccBram);
if (result == returnvalue::OK) {
sif::info << "Q7STestTask::xadcTest: VCC BRAM: " << vccBram << " mV" << std::endl;
}
result = xadc.getVccOddr(vccOddr);
if (result == returnvalue::OK) {
sif::info << "Q7STestTask::xadcTest: VCC PS I/O DDR : " << vccOddr << " mV" << std::endl;
}
result = xadc.getVrefp(vrefp);
if (result == returnvalue::OK) {
sif::info << "Q7STestTask::xadcTest: Vrefp : " << vrefp << " mV" << std::endl;
}
result = xadc.getVrefn(vrefn);
if (result == returnvalue::OK) {
sif::info << "Q7STestTask::xadcTest: Vrefn : " << vrefn << " mV" << std::endl;
}
}

View File

@ -1,6 +1,8 @@
#ifndef BSP_Q7S_BOARDTEST_Q7STESTTASK_H_
#define BSP_Q7S_BOARDTEST_Q7STESTTASK_H_
#include <libgpsmm.h>
#include "test/testtasks/TestTask.h"
class CoreController;
@ -14,16 +16,29 @@ class Q7STestTask : public TestTask {
private:
bool doTestSdCard = false;
bool doTestScratchApi = false;
bool doTestGps = false;
static constexpr bool DO_TEST_GOMSPACE_API = false;
static constexpr bool DO_TEST_GOMSPACE_GET_CONFIG = false;
static constexpr bool DO_TEST_FS_HANDLER = false;
bool doTestGpsShm = false;
bool doTestGpsSocket = false;
bool doTestProtHandler = false;
bool doTestXadc = false;
bool gpsNotOpenSwitch = false;
bool gpsReadFailedSwitch = false;
int32_t noModeSetCntr = 0;
gpsmm* gpsmmShmPtr = nullptr;
CoreController* coreController = nullptr;
ReturnValue_t performOneShotAction() override;
ReturnValue_t performPeriodicAction() override;
void testGpsDaemon();
void testGpsDaemonShm();
void testGpsDaemonSocket();
void testSdCard();
void fileTests();
void xadcTest();
void testScratchApi();
void testJsonLibDirect();

View File

@ -1,6 +1,2 @@
target_sources(${OBSW_NAME} PRIVATE
rwSpiCallback.cpp
gnssCallback.cpp
pcduSwitchCb.cpp
gpioCallbacks.cpp
)
target_sources(${OBSW_NAME} PRIVATE rwSpiCallback.cpp gnssCallback.cpp
pcduSwitchCb.cpp q7sGpioCallbacks.cpp)

View File

@ -1,25 +1,29 @@
#include "gnssCallback.h"
#include "devices/gpioIds.h"
#include "fsfw/action/HasActionsIF.h"
#include "fsfw/tasks/TaskFactory.h"
ReturnValue_t gps::triggerGpioResetPin(void* args) {
ReturnValue_t gps::triggerGpioResetPin(const uint8_t* actionData, size_t len, void* args) {
// At least one byte which denotes which GPS to reset is required
if (len < 1 or actionData == nullptr) {
return HasActionsIF::INVALID_PARAMETERS;
}
ResetArgs* resetArgs = reinterpret_cast<ResetArgs*>(args);
if (args == nullptr) {
return HasReturnvaluesIF::RETURN_FAILED;
return returnvalue::FAILED;
}
if (resetArgs->gpioComIF == nullptr) {
return HasReturnvaluesIF::RETURN_FAILED;
return returnvalue::FAILED;
}
gpioId_t gpioId;
if (resetArgs->gnss1) {
gpioId = gpioIds::GNSS_1_NRESET;
} else {
if (actionData[0] == 0) {
gpioId = gpioIds::GNSS_0_NRESET;
} else {
gpioId = gpioIds::GNSS_1_NRESET;
}
resetArgs->gpioComIF->pullLow(gpioId);
TaskFactory::delayTask(resetArgs->waitPeriodMs);
resetArgs->gpioComIF->pullHigh(gpioId);
return HasReturnvaluesIF::RETURN_OK;
return returnvalue::OK;
}

View File

@ -1,18 +1,17 @@
#ifndef BSP_Q7S_CALLBACKS_GNSSCALLBACK_H_
#define BSP_Q7S_CALLBACKS_GNSSCALLBACK_H_
#include "fsfw/returnvalues/HasReturnvaluesIF.h"
#include "fsfw/returnvalues/returnvalue.h"
#include "fsfw_hal/linux/gpio/LinuxLibgpioIF.h"
struct ResetArgs {
bool gnss1 = false;
LinuxLibgpioIF* gpioComIF = nullptr;
uint32_t waitPeriodMs = 100;
};
namespace gps {
ReturnValue_t triggerGpioResetPin(void* args);
ReturnValue_t triggerGpioResetPin(const uint8_t* actionData, size_t len, void* args);
}

View File

@ -1,487 +0,0 @@
#include "gpioCallbacks.h"
#include <devices/gpioIds.h>
#include <fsfw/serviceinterface/ServiceInterface.h>
#include <fsfw_hal/common/gpio/GpioCookie.h>
#include <fsfw_hal/linux/gpio/LinuxLibgpioIF.h>
#include "busConf.h"
namespace gpioCallbacks {
GpioIF* gpioComInterface;
void initSpiCsDecoder(GpioIF* gpioComIF) {
using namespace gpio;
ReturnValue_t result;
if (gpioComIF == nullptr) {
sif::debug << "initSpiCsDecoder: Invalid gpioComIF" << std::endl;
return;
}
gpioComInterface = gpioComIF;
GpioCookie* spiMuxGpios = new GpioCookie;
GpiodRegularByLineName* spiMuxBit = nullptr;
/** Setting mux bit 1 to low will disable IC21 on the interface board */
spiMuxBit = new GpiodRegularByLineName(q7s::gpioNames::SPI_MUX_BIT_0_PIN, "SPI Mux Bit 1",
Direction::OUT, Levels::HIGH);
spiMuxGpios->addGpio(gpioIds::SPI_MUX_BIT_0, spiMuxBit);
/** Setting mux bit 2 to low disables IC1 on the TCS board */
spiMuxBit = new GpiodRegularByLineName(q7s::gpioNames::SPI_MUX_BIT_1_PIN, "SPI Mux Bit 2",
Direction::OUT, Levels::HIGH);
spiMuxGpios->addGpio(gpioIds::SPI_MUX_BIT_1, spiMuxBit);
/** Setting mux bit 3 to low disables IC2 on the TCS board and IC22 on the interface board */
spiMuxBit = new GpiodRegularByLineName(q7s::gpioNames::SPI_MUX_BIT_2_PIN, "SPI Mux Bit 3",
Direction::OUT, Levels::LOW);
spiMuxGpios->addGpio(gpioIds::SPI_MUX_BIT_2, spiMuxBit);
/** The following gpios can take arbitrary initial values */
spiMuxBit = new GpiodRegularByLineName(q7s::gpioNames::SPI_MUX_BIT_3_PIN, "SPI Mux Bit 4",
Direction::OUT, Levels::LOW);
spiMuxGpios->addGpio(gpioIds::SPI_MUX_BIT_3, spiMuxBit);
spiMuxBit = new GpiodRegularByLineName(q7s::gpioNames::SPI_MUX_BIT_4_PIN, "SPI Mux Bit 5",
Direction::OUT, Levels::LOW);
spiMuxGpios->addGpio(gpioIds::SPI_MUX_BIT_4, spiMuxBit);
spiMuxBit = new GpiodRegularByLineName(q7s::gpioNames::SPI_MUX_BIT_5_PIN, "SPI Mux Bit 6",
Direction::OUT, Levels::LOW);
spiMuxGpios->addGpio(gpioIds::SPI_MUX_BIT_5, spiMuxBit);
GpiodRegularByLineName* enRwDecoder = new GpiodRegularByLineName(
q7s::gpioNames::EN_RW_CS, "EN_RW_CS", Direction::OUT, Levels::HIGH);
spiMuxGpios->addGpio(gpioIds::EN_RW_CS, enRwDecoder);
result = gpioComInterface->addGpios(spiMuxGpios);
if (result != HasReturnvaluesIF::RETURN_OK) {
sif::error << "initSpiCsDecoder: Failed to add mux bit gpios to gpioComIF" << std::endl;
return;
}
}
void spiCsDecoderCallback(gpioId_t gpioId, gpio::GpioOperation gpioOp, gpio::Levels value,
void* args) {
using namespace gpio;
if (gpioComInterface == nullptr) {
sif::debug << "spiCsDecoderCallback: No gpioComIF specified. Call initSpiCsDecoder "
<< "to specify gpioComIF" << std::endl;
return;
}
/* Reading is not supported by the callback function */
if (gpioOp == gpio::GpioOperation::READ) {
return;
}
if (value == Levels::HIGH) {
switch (gpioId) {
case (gpioIds::RTD_IC_3): {
disableDecoderTcsIc1();
break;
}
case (gpioIds::RTD_IC_4): {
disableDecoderTcsIc1();
break;
}
case (gpioIds::RTD_IC_5): {
disableDecoderTcsIc1();
break;
}
case (gpioIds::RTD_IC_6): {
disableDecoderTcsIc1();
break;
}
case (gpioIds::RTD_IC_7): {
disableDecoderTcsIc1();
break;
}
case (gpioIds::RTD_IC_8): {
disableDecoderTcsIc1();
break;
}
case (gpioIds::RTD_IC_9): {
disableDecoderTcsIc1();
break;
}
case (gpioIds::RTD_IC_10): {
disableDecoderTcsIc1();
break;
}
case (gpioIds::RTD_IC_11): {
disableDecoderTcsIc2();
break;
}
case (gpioIds::RTD_IC_12): {
disableDecoderTcsIc2();
break;
}
case (gpioIds::RTD_IC_13): {
disableDecoderTcsIc2();
break;
}
case (gpioIds::RTD_IC_14): {
disableDecoderTcsIc2();
break;
}
case (gpioIds::RTD_IC_15): {
disableDecoderTcsIc2();
break;
}
case (gpioIds::RTD_IC_16): {
disableDecoderTcsIc2();
break;
}
case (gpioIds::RTD_IC_17): {
disableDecoderTcsIc2();
break;
}
case (gpioIds::RTD_IC_18): {
disableDecoderTcsIc2();
break;
}
case (gpioIds::CS_SUS_0): {
disableDecoderInterfaceBoardIc1();
break;
}
case (gpioIds::CS_SUS_1): {
disableDecoderInterfaceBoardIc1();
break;
}
case (gpioIds::CS_SUS_2): {
disableDecoderInterfaceBoardIc1();
break;
}
case (gpioIds::CS_SUS_3): {
disableDecoderInterfaceBoardIc1();
break;
}
case (gpioIds::CS_SUS_4): {
disableDecoderInterfaceBoardIc1();
break;
}
case (gpioIds::CS_SUS_5): {
disableDecoderInterfaceBoardIc1();
break;
}
case (gpioIds::CS_SUS_6): {
disableDecoderInterfaceBoardIc2();
break;
}
case (gpioIds::CS_SUS_7): {
disableDecoderInterfaceBoardIc2();
break;
}
case (gpioIds::CS_SUS_8): {
disableDecoderInterfaceBoardIc2();
break;
}
case (gpioIds::CS_SUS_9): {
disableDecoderInterfaceBoardIc2();
break;
}
case (gpioIds::CS_SUS_10): {
disableDecoderInterfaceBoardIc2();
break;
}
case (gpioIds::CS_SUS_11): {
disableDecoderInterfaceBoardIc2();
break;
}
case (gpioIds::CS_RW1): {
disableRwDecoder();
break;
}
case (gpioIds::CS_RW2): {
disableRwDecoder();
break;
}
case (gpioIds::CS_RW3): {
disableRwDecoder();
break;
}
case (gpioIds::CS_RW4): {
disableRwDecoder();
break;
}
default:
sif::debug << "spiCsDecoderCallback: Invalid gpio id " << gpioId << std::endl;
}
} else if (value == Levels::LOW) {
switch (gpioId) {
case (gpioIds::RTD_IC_3): {
selectY7();
enableDecoderTcsIc1();
break;
}
case (gpioIds::RTD_IC_4): {
selectY6();
enableDecoderTcsIc1();
break;
}
case (gpioIds::RTD_IC_5): {
selectY5();
enableDecoderTcsIc1();
break;
}
case (gpioIds::RTD_IC_6): {
selectY4();
enableDecoderTcsIc1();
break;
}
case (gpioIds::RTD_IC_7): {
selectY3();
enableDecoderTcsIc1();
break;
}
case (gpioIds::RTD_IC_8): {
selectY2();
enableDecoderTcsIc1();
break;
}
case (gpioIds::RTD_IC_9): {
selectY1();
enableDecoderTcsIc1();
break;
}
case (gpioIds::RTD_IC_10): {
selectY0();
enableDecoderTcsIc1();
break;
}
case (gpioIds::RTD_IC_11): {
selectY7();
enableDecoderTcsIc2();
break;
}
case (gpioIds::RTD_IC_12): {
selectY6();
enableDecoderTcsIc2();
break;
}
case (gpioIds::RTD_IC_13): {
selectY5();
enableDecoderTcsIc2();
break;
}
case (gpioIds::RTD_IC_14): {
selectY4();
enableDecoderTcsIc2();
break;
}
case (gpioIds::RTD_IC_15): {
selectY3();
enableDecoderTcsIc2();
break;
}
case (gpioIds::RTD_IC_16): {
selectY2();
enableDecoderTcsIc2();
break;
}
case (gpioIds::RTD_IC_17): {
selectY1();
enableDecoderTcsIc2();
break;
}
case (gpioIds::RTD_IC_18): {
selectY0();
enableDecoderTcsIc2();
break;
}
case (gpioIds::CS_SUS_0): {
selectY0();
enableDecoderInterfaceBoardIc1();
break;
}
case (gpioIds::CS_SUS_1): {
selectY1();
enableDecoderInterfaceBoardIc1();
break;
}
case (gpioIds::CS_SUS_2): {
selectY2();
enableDecoderInterfaceBoardIc1();
break;
}
case (gpioIds::CS_SUS_3): {
selectY3();
enableDecoderInterfaceBoardIc1();
break;
}
case (gpioIds::CS_SUS_4): {
selectY4();
enableDecoderInterfaceBoardIc1();
break;
}
case (gpioIds::CS_SUS_5): {
selectY5();
enableDecoderInterfaceBoardIc1();
break;
}
case (gpioIds::CS_SUS_6): {
selectY0();
enableDecoderInterfaceBoardIc2();
break;
}
case (gpioIds::CS_SUS_7): {
selectY1();
enableDecoderInterfaceBoardIc2();
break;
}
case (gpioIds::CS_SUS_8): {
selectY2();
enableDecoderInterfaceBoardIc2();
break;
}
case (gpioIds::CS_SUS_9): {
selectY3();
enableDecoderInterfaceBoardIc2();
break;
}
case (gpioIds::CS_SUS_10): {
selectY4();
enableDecoderInterfaceBoardIc2();
break;
}
case (gpioIds::CS_SUS_11): {
selectY5();
enableDecoderInterfaceBoardIc2();
break;
}
case (gpioIds::CS_RW1): {
selectY0();
enableRwDecoder();
break;
}
case (gpioIds::CS_RW2): {
selectY1();
enableRwDecoder();
break;
}
case (gpioIds::CS_RW3): {
selectY2();
enableRwDecoder();
break;
}
case (gpioIds::CS_RW4): {
selectY3();
enableRwDecoder();
break;
}
default:
sif::debug << "spiCsDecoderCallback: Invalid gpio id " << gpioId << std::endl;
}
} else {
sif::debug << "spiCsDecoderCallback: Invalid value. Must be 0 or 1" << std::endl;
}
}
void enableDecoderTcsIc1() {
gpioComInterface->pullLow(gpioIds::SPI_MUX_BIT_0);
gpioComInterface->pullHigh(gpioIds::SPI_MUX_BIT_1);
gpioComInterface->pullLow(gpioIds::SPI_MUX_BIT_2);
}
void enableDecoderTcsIc2() {
gpioComInterface->pullHigh(gpioIds::SPI_MUX_BIT_2);
gpioComInterface->pullLow(gpioIds::SPI_MUX_BIT_0);
gpioComInterface->pullHigh(gpioIds::SPI_MUX_BIT_1);
}
void enableDecoderInterfaceBoardIc1() {
gpioComInterface->pullHigh(gpioIds::SPI_MUX_BIT_0);
gpioComInterface->pullLow(gpioIds::SPI_MUX_BIT_1);
gpioComInterface->pullLow(gpioIds::SPI_MUX_BIT_2);
}
void enableDecoderInterfaceBoardIc2() {
gpioComInterface->pullHigh(gpioIds::SPI_MUX_BIT_0);
gpioComInterface->pullLow(gpioIds::SPI_MUX_BIT_1);
gpioComInterface->pullHigh(gpioIds::SPI_MUX_BIT_2);
}
void disableDecoderTcsIc1() {
gpioComInterface->pullHigh(gpioIds::SPI_MUX_BIT_0);
gpioComInterface->pullHigh(gpioIds::SPI_MUX_BIT_1);
gpioComInterface->pullLow(gpioIds::SPI_MUX_BIT_2);
}
void disableDecoderTcsIc2() {
// DO NOT CHANGE THE ORDER HERE
gpioComInterface->pullHigh(gpioIds::SPI_MUX_BIT_0);
gpioComInterface->pullLow(gpioIds::SPI_MUX_BIT_2);
gpioComInterface->pullHigh(gpioIds::SPI_MUX_BIT_1);
}
void disableDecoderInterfaceBoardIc1() {
gpioComInterface->pullHigh(gpioIds::SPI_MUX_BIT_0);
gpioComInterface->pullHigh(gpioIds::SPI_MUX_BIT_1);
gpioComInterface->pullLow(gpioIds::SPI_MUX_BIT_2);
}
void disableDecoderInterfaceBoardIc2() {
gpioComInterface->pullHigh(gpioIds::SPI_MUX_BIT_0);
gpioComInterface->pullHigh(gpioIds::SPI_MUX_BIT_1);
gpioComInterface->pullLow(gpioIds::SPI_MUX_BIT_2);
}
void enableRwDecoder() { gpioComInterface->pullHigh(gpioIds::EN_RW_CS); }
void disableRwDecoder() { gpioComInterface->pullLow(gpioIds::EN_RW_CS); }
void selectY0() {
gpioComInterface->pullLow(gpioIds::SPI_MUX_BIT_3);
gpioComInterface->pullLow(gpioIds::SPI_MUX_BIT_4);
gpioComInterface->pullLow(gpioIds::SPI_MUX_BIT_5);
}
void selectY1() {
gpioComInterface->pullHigh(gpioIds::SPI_MUX_BIT_3);
gpioComInterface->pullLow(gpioIds::SPI_MUX_BIT_4);
gpioComInterface->pullLow(gpioIds::SPI_MUX_BIT_5);
}
void selectY2() {
gpioComInterface->pullLow(gpioIds::SPI_MUX_BIT_3);
gpioComInterface->pullHigh(gpioIds::SPI_MUX_BIT_4);
gpioComInterface->pullLow(gpioIds::SPI_MUX_BIT_5);
}
void selectY3() {
gpioComInterface->pullHigh(gpioIds::SPI_MUX_BIT_3);
gpioComInterface->pullHigh(gpioIds::SPI_MUX_BIT_4);
gpioComInterface->pullLow(gpioIds::SPI_MUX_BIT_5);
}
void selectY4() {
gpioComInterface->pullLow(gpioIds::SPI_MUX_BIT_3);
gpioComInterface->pullLow(gpioIds::SPI_MUX_BIT_4);
gpioComInterface->pullHigh(gpioIds::SPI_MUX_BIT_5);
}
void selectY5() {
gpioComInterface->pullHigh(gpioIds::SPI_MUX_BIT_3);
gpioComInterface->pullLow(gpioIds::SPI_MUX_BIT_4);
gpioComInterface->pullHigh(gpioIds::SPI_MUX_BIT_5);
}
void selectY6() {
gpioComInterface->pullLow(gpioIds::SPI_MUX_BIT_3);
gpioComInterface->pullHigh(gpioIds::SPI_MUX_BIT_4);
gpioComInterface->pullHigh(gpioIds::SPI_MUX_BIT_5);
}
void selectY7() {
gpioComInterface->pullHigh(gpioIds::SPI_MUX_BIT_3);
gpioComInterface->pullHigh(gpioIds::SPI_MUX_BIT_4);
gpioComInterface->pullHigh(gpioIds::SPI_MUX_BIT_5);
}
void disableAllDecoder() {
gpioComInterface->pullLow(gpioIds::SPI_MUX_BIT_2);
gpioComInterface->pullLow(gpioIds::SPI_MUX_BIT_0);
gpioComInterface->pullLow(gpioIds::SPI_MUX_BIT_1);
gpioComInterface->pullLow(gpioIds::EN_RW_CS);
}
} // namespace gpioCallbacks

View File

@ -10,8 +10,8 @@ void pcdu::switchCallback(GOMSPACE::Pdu pdu, uint8_t channel, bool state, void*
return;
}
if (pdu == GOMSPACE::Pdu::PDU1) {
PDU1::SwitchChannels typedChannel = static_cast<PDU1::SwitchChannels>(channel);
if (typedChannel == PDU1::SwitchChannels::ACS_A_SIDE) {
PDU1::Channels typedChannel = static_cast<PDU1::Channels>(channel);
if (typedChannel == PDU1::Channels::ACS_A_SIDE) {
if (state) {
gpioComIF->pullHigh(gpioIds::GNSS_0_NRESET);
} else {
@ -20,8 +20,8 @@ void pcdu::switchCallback(GOMSPACE::Pdu pdu, uint8_t channel, bool state, void*
}
} else if (pdu == GOMSPACE::Pdu::PDU2) {
PDU2::SwitchChannels typedChannel = static_cast<PDU2::SwitchChannels>(channel);
if (typedChannel == PDU2::SwitchChannels::ACS_B_SIDE) {
PDU2::Channels typedChannel = static_cast<PDU2::Channels>(channel);
if (typedChannel == PDU2::Channels::ACS_B_SIDE) {
if (state) {
gpioComIF->pullHigh(gpioIds::GNSS_1_NRESET);
} else {

View File

@ -0,0 +1,54 @@
#include "q7sGpioCallbacks.h"
#include <devices/gpioIds.h>
#include <fsfw/serviceinterface/ServiceInterface.h>
#include <fsfw_hal/common/gpio/GpioCookie.h>
#include <fsfw_hal/common/gpio/GpioIF.h>
#include "busConf.h"
void q7s::gpioCallbacks::initSpiCsDecoder(GpioIF* gpioComIF) {
using namespace gpio;
ReturnValue_t result;
if (gpioComIF == nullptr) {
sif::debug << "initSpiCsDecoder: Invalid gpioComIF" << std::endl;
return;
}
GpioCookie* spiMuxGpios = new GpioCookie;
GpiodRegularByLineName* spiMuxBit = nullptr;
/** Setting mux bit 1 to low will disable IC21 on the interface board */
spiMuxBit = new GpiodRegularByLineName(q7s::gpioNames::SPI_MUX_BIT_0_PIN, "SPI Mux Bit 1",
Direction::OUT, Levels::HIGH);
spiMuxGpios->addGpio(gpioIds::SPI_MUX_BIT_0, spiMuxBit);
/** Setting mux bit 2 to low disables IC1 on the TCS board */
spiMuxBit = new GpiodRegularByLineName(q7s::gpioNames::SPI_MUX_BIT_1_PIN, "SPI Mux Bit 2",
Direction::OUT, Levels::HIGH);
spiMuxGpios->addGpio(gpioIds::SPI_MUX_BIT_1, spiMuxBit);
/** Setting mux bit 3 to low disables IC2 on the TCS board and IC22 on the interface board */
spiMuxBit = new GpiodRegularByLineName(q7s::gpioNames::SPI_MUX_BIT_2_PIN, "SPI Mux Bit 3",
Direction::OUT, Levels::LOW);
spiMuxGpios->addGpio(gpioIds::SPI_MUX_BIT_2, spiMuxBit);
/** The following gpios can take arbitrary initial values */
spiMuxBit = new GpiodRegularByLineName(q7s::gpioNames::SPI_MUX_BIT_3_PIN, "SPI Mux Bit 4",
Direction::OUT, Levels::LOW);
spiMuxGpios->addGpio(gpioIds::SPI_MUX_BIT_3, spiMuxBit);
spiMuxBit = new GpiodRegularByLineName(q7s::gpioNames::SPI_MUX_BIT_4_PIN, "SPI Mux Bit 5",
Direction::OUT, Levels::LOW);
spiMuxGpios->addGpio(gpioIds::SPI_MUX_BIT_4, spiMuxBit);
spiMuxBit = new GpiodRegularByLineName(q7s::gpioNames::SPI_MUX_BIT_5_PIN, "SPI Mux Bit 6",
Direction::OUT, Levels::LOW);
spiMuxGpios->addGpio(gpioIds::SPI_MUX_BIT_5, spiMuxBit);
GpiodRegularByLineName* enRwDecoder = new GpiodRegularByLineName(
q7s::gpioNames::EN_RW_CS, "EN_RW_CS", Direction::OUT, Levels::HIGH);
spiMuxGpios->addGpio(gpioIds::EN_RW_CS, enRwDecoder);
result = gpioComIF->addGpios(spiMuxGpios);
if (result != returnvalue::OK) {
sif::error << "initSpiCsDecoder: Failed to add SPI MUX bit GPIOs" << std::endl;
return;
}
}

View File

@ -0,0 +1,15 @@
#pragma once
class GpioIF;
namespace q7s {
namespace gpioCallbacks {
/**
* @brief This function initializes the GPIOs used to control the SN74LVC138APWR decoders on
* the TCS Board and the interface board.
*/
void initSpiCsDecoder(GpioIF* gpioComIF);
} // namespace gpioCallbacks
} // namespace q7s

View File

@ -1,5 +1,7 @@
#include "rwSpiCallback.h"
#include <fsfw/timemanager/Stopwatch.h>
#include "devices/gpioIds.h"
#include "fsfw/serviceinterface/ServiceInterface.h"
#include "fsfw_hal/linux/UnixFileGuard.h"
@ -8,61 +10,72 @@
namespace rwSpiCallback {
namespace {
static bool MODE_SET = false;
ReturnValue_t openSpi(const std::string& devname, int flags, GpioIF* gpioIF, gpioId_t gpioId,
MutexIF* mutex, MutexIF::TimeoutType timeoutType, uint32_t timeoutMs,
int& fd);
/**
* @brief This function closes a spi session. Pulls the chip select to high an releases the
* mutex.
* @param gpioId Gpio ID of chip select
* @param gpioIF Pointer to gpio interface to drive the chip select
* @param mutex The spi mutex
*/
void closeSpi(int fd, gpioId_t gpioId, GpioIF* gpioIF, MutexIF* mutex);
} // namespace
ReturnValue_t spiCallback(SpiComIF* comIf, SpiCookie* cookie, const uint8_t* sendData,
size_t sendLen, void* args) {
ReturnValue_t result = HasReturnvaluesIF::RETURN_OK;
// Stopwatch watch;
ReturnValue_t result = returnvalue::OK;
RwHandler* handler = reinterpret_cast<RwHandler*>(args);
if (handler == nullptr) {
sif::error << "rwSpiCallback::spiCallback: Pointer to handler is invalid" << std::endl;
return HasReturnvaluesIF::RETURN_FAILED;
return returnvalue::FAILED;
}
uint8_t writeBuffer[2];
uint8_t writeBuffer[2] = {};
uint8_t writeSize = 0;
gpioId_t gpioId = cookie->getChipSelectPin();
GpioIF* gpioIF = comIf->getGpioInterface();
GpioIF& gpioIF = comIf->getGpioInterface();
MutexIF::TimeoutType timeoutType = MutexIF::TimeoutType::WAITING;
uint32_t timeoutMs = 0;
MutexIF* mutex = comIf->getMutex(&timeoutType, &timeoutMs);
if (mutex == nullptr or gpioIF == nullptr) {
MutexIF* mutex = comIf->getCsMutex();
cookie->getMutexParams(timeoutType, timeoutMs);
if (mutex == nullptr) {
sif::debug << "rwSpiCallback::spiCallback: Mutex or GPIO interface invalid" << std::endl;
return HasReturnvaluesIF::RETURN_FAILED;
return returnvalue::FAILED;
}
int fileDescriptor = 0;
std::string device = cookie->getSpiDevice();
UnixFileGuard fileHelper(device, &fileDescriptor, O_RDWR, "rwSpiCallback::spiCallback");
if (fileHelper.getOpenResult() != HasReturnvaluesIF::RETURN_OK) {
sif::error << "rwSpiCallback::spiCallback: Failed to open device file" << std::endl;
return SpiComIF::OPENING_FILE_FAILED;
}
spi::SpiModes spiMode = spi::SpiModes::MODE_0;
uint32_t spiSpeed = 0;
cookie->getSpiParameters(spiMode, spiSpeed, nullptr);
comIf->setSpiSpeedAndMode(fileDescriptor, spiMode, spiSpeed);
result = mutex->lockMutex(timeoutType, timeoutMs);
if (result != HasReturnvaluesIF::RETURN_OK) {
sif::debug << "rwSpiCallback::spiCallback: Failed to lock mutex" << std::endl;
const std::string& dev = comIf->getSpiDev();
result = openSpi(dev, O_RDWR, &gpioIF, gpioId, mutex, timeoutType, timeoutMs, fileDescriptor);
if (result != returnvalue::OK) {
return result;
}
/** Sending frame start sign */
writeBuffer[0] = 0x7E;
writeSize = 1;
// Pull SPI CS low. For now, no support for active high given
if (gpioId != gpio::NO_GPIO) {
if (gpioIF->pullLow(gpioId) != HasReturnvaluesIF::RETURN_OK) {
sif::error << "rwSpiCallback::spiCallback: Failed to pull chip select low" << std::endl;
}
spi::SpiModes spiMode = spi::SpiModes::MODE_0;
uint32_t spiSpeed = 0;
cookie->getSpiParameters(spiMode, spiSpeed, nullptr);
// We are in protected section, so we can use the static variable here without issues.
// We don't need to set the speed because a SPI core is used, but the mode has to be set once
// correctly for all RWs
if (not MODE_SET) {
comIf->setSpiSpeedAndMode(fileDescriptor, spiMode, spiSpeed);
MODE_SET = true;
}
/** Sending frame start sign */
writeBuffer[0] = FLAG_BYTE;
writeSize = 1;
if (write(fileDescriptor, writeBuffer, writeSize) != static_cast<ssize_t>(writeSize)) {
sif::error << "rwSpiCallback::spiCallback: Write failed!" << std::endl;
closeSpi(gpioId, gpioIF, mutex);
closeSpi(fileDescriptor, gpioId, &gpioIF, mutex);
return RwHandler::SPI_WRITE_FAILURE;
}
@ -87,33 +100,39 @@ ReturnValue_t spiCallback(SpiComIF* comIf, SpiCookie* cookie, const uint8_t* sen
}
if (write(fileDescriptor, writeBuffer, writeSize) != static_cast<ssize_t>(writeSize)) {
sif::error << "rwSpiCallback::spiCallback: Write failed!" << std::endl;
closeSpi(gpioId, gpioIF, mutex);
closeSpi(fileDescriptor, gpioId, &gpioIF, mutex);
return RwHandler::SPI_WRITE_FAILURE;
}
idx++;
}
/** Sending frame end sign */
writeBuffer[0] = 0x7E;
writeBuffer[0] = FLAG_BYTE;
writeSize = 1;
if (write(fileDescriptor, writeBuffer, writeSize) != static_cast<ssize_t>(writeSize)) {
sif::error << "rwSpiCallback::spiCallback: Write failed!" << std::endl;
closeSpi(gpioId, gpioIF, mutex);
closeSpi(fileDescriptor, gpioId, &gpioIF, mutex);
return RwHandler::SPI_WRITE_FAILURE;
}
uint8_t* rxBuf = nullptr;
result = comIf->getReadBuffer(cookie->getSpiAddress(), &rxBuf);
if (result != HasReturnvaluesIF::RETURN_OK) {
closeSpi(gpioId, gpioIF, mutex);
if (result != returnvalue::OK) {
closeSpi(fileDescriptor, gpioId, &gpioIF, mutex);
return result;
}
size_t replyBufferSize = cookie->getMaxBufferSize();
/** There must be a delay of at least 20 ms after sending the command */
// There must be a delay of at least 20 ms after sending the command.
// Delay for 70 ms here and release the SPI bus for that duration.
closeSpi(fileDescriptor, gpioId, &gpioIF, mutex);
usleep(RwDefinitions::SPI_REPLY_DELAY);
result = openSpi(dev, O_RDWR, &gpioIF, gpioId, mutex, timeoutType, timeoutMs, fileDescriptor);
if (result != returnvalue::OK) {
return result;
}
/**
* The reaction wheel responds with empty frames while preparing the reply data.
@ -123,13 +142,13 @@ ReturnValue_t spiCallback(SpiComIF* comIf, SpiCookie* cookie, const uint8_t* sen
for (int idx = 0; idx < 10; idx++) {
if (read(fileDescriptor, &byteRead, 1) != 1) {
sif::error << "rwSpiCallback::spiCallback: Read failed" << std::endl;
closeSpi(gpioId, gpioIF, mutex);
closeSpi(fileDescriptor, gpioId, &gpioIF, mutex);
return RwHandler::SPI_READ_FAILURE;
}
if (idx == 0) {
if (byteRead != FLAG_BYTE) {
sif::error << "Invalid data, expected start marker" << std::endl;
closeSpi(gpioId, gpioIF, mutex);
closeSpi(fileDescriptor, gpioId, &gpioIF, mutex);
return RwHandler::NO_START_MARKER;
}
}
@ -140,7 +159,7 @@ ReturnValue_t spiCallback(SpiComIF* comIf, SpiCookie* cookie, const uint8_t* sen
if (idx == 9) {
sif::error << "rwSpiCallback::spiCallback: Empty frame timeout" << std::endl;
closeSpi(gpioId, gpioIF, mutex);
closeSpi(fileDescriptor, gpioId, &gpioIF, mutex);
return RwHandler::NO_REPLY;
}
}
@ -180,7 +199,7 @@ ReturnValue_t spiCallback(SpiComIF* comIf, SpiCookie* cookie, const uint8_t* sen
continue;
} else {
sif::error << "rwSpiCallback::spiCallback: Invalid substitute" << std::endl;
closeSpi(gpioId, gpioIF, mutex);
closeSpi(fileDescriptor, gpioId, &gpioIF, mutex);
result = RwHandler::INVALID_SUBSTITUTE;
break;
}
@ -201,32 +220,64 @@ ReturnValue_t spiCallback(SpiComIF* comIf, SpiCookie* cookie, const uint8_t* sen
result = RwHandler::SPI_READ_FAILURE;
break;
}
if (byteRead != 0x7E) {
sif::error << "rwSpiCallback::spiCallback: Missing end sign 0x7E" << std::endl;
if (byteRead != FLAG_BYTE) {
sif::error << "rwSpiCallback::spiCallback: Missing end sign " << static_cast<int>(FLAG_BYTE)
<< std::endl;
decodedFrameLen--;
result = RwHandler::MISSING_END_SIGN;
break;
}
}
result = HasReturnvaluesIF::RETURN_OK;
result = returnvalue::OK;
}
cookie->setTransferSize(decodedFrameLen);
closeSpi(gpioId, gpioIF, mutex);
closeSpi(fileDescriptor, gpioId, &gpioIF, mutex);
return result;
}
void closeSpi(gpioId_t gpioId, GpioIF* gpioIF, MutexIF* mutex) {
namespace {
ReturnValue_t openSpi(const std::string& devname, int flags, GpioIF* gpioIF, gpioId_t gpioId,
MutexIF* mutex, MutexIF::TimeoutType timeoutType, uint32_t timeoutMs,
int& fd) {
ReturnValue_t result = mutex->lockMutex(timeoutType, timeoutMs);
if (result != returnvalue::OK) {
sif::debug << "rwSpiCallback::spiCallback: Failed to lock mutex" << std::endl;
return result;
}
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;
}
// Pull SPI CS low. For now, no support for active high given
if (gpioId != gpio::NO_GPIO) {
if (gpioIF->pullHigh(gpioId) != HasReturnvaluesIF::RETURN_OK) {
result = gpioIF->pullLow(gpioId);
if (result != returnvalue::OK) {
sif::error << "rwSpiCallback::spiCallback: Failed to pull chip select low" << std::endl;
return result;
}
}
return returnvalue::OK;
}
void closeSpi(int fd, gpioId_t gpioId, GpioIF* gpioIF, MutexIF* mutex) {
close(fd);
if (gpioId != gpio::NO_GPIO) {
if (gpioIF->pullHigh(gpioId) != returnvalue::OK) {
sif::error << "closeSpi: Failed to pull chip select high" << std::endl;
}
}
if (mutex->unlockMutex() != HasReturnvaluesIF::RETURN_OK) {
if (mutex->unlockMutex() != returnvalue::OK) {
sif::error << "rwSpiCallback::closeSpi: Failed to unlock mutex" << std::endl;
;
}
}
} // namespace
} // namespace rwSpiCallback

View File

@ -1,7 +1,7 @@
#ifndef BSP_Q7S_RW_SPI_CALLBACK_H_
#define BSP_Q7S_RW_SPI_CALLBACK_H_
#include "fsfw/returnvalues/HasReturnvaluesIF.h"
#include "fsfw/returnvalues/returnvalue.h"
#include "fsfw_hal/common/gpio/GpioCookie.h"
#include "fsfw_hal/linux/spi/SpiComIF.h"
@ -33,14 +33,5 @@ static constexpr uint8_t FLAG_BYTE = 0x7E;
ReturnValue_t spiCallback(SpiComIF* comIf, SpiCookie* cookie, const uint8_t* sendData,
size_t sendLen, void* args);
/**
* @brief This function closes a spi session. Pulls the chip select to high an releases the
* mutex.
* @param gpioId Gpio ID of chip select
* @param gpioIF Pointer to gpio interface to drive the chip select
* @param mutex The spi mutex
*/
void closeSpi(gpioId_t gpioId, GpioIF* gpioIF, MutexIF* mutex);
} // namespace rwSpiCallback
#endif /* BSP_Q7S_RW_SPI_CALLBACK_H_ */

View File

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

View File

@ -1,10 +1,4 @@
target_sources(${OBSW_NAME} PRIVATE
CoreController.cpp
obsw.cpp
InitMission.cpp
ObjectFactory.cpp
)
target_sources(${OBSW_NAME} PRIVATE CoreController.cpp scheduling.cpp
ObjectFactory.cpp)
target_sources(${SIMPLE_OBSW_NAME} PRIVATE
InitMission.cpp
)
target_sources(${SIMPLE_OBSW_NAME} PRIVATE scheduling.cpp)

File diff suppressed because it is too large Load Diff

View File

@ -6,9 +6,12 @@
#include <cstddef>
#include "bsp_q7s/memory/SdCardManager.h"
#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"
class Timer;
class SdCardManager;
@ -46,30 +49,56 @@ class CoreController : public ExtendedControllerBase {
static xsc::Chip CURRENT_CHIP;
static xsc::Copy CURRENT_COPY;
static constexpr char CHIP_PROT_SCRIPT[] = "/home/root/scripts/get-chip-prot-status.sh";
static constexpr char CHIP_PROT_SCRIPT[] = "get-chip-prot-status.sh";
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.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);
const std::string TIME_FILE = "/" + std::string(CONF_FOLDER) + "/" + std::string(TIME_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 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 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 REBOOT_OBC = 32;
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 uint8_t SUBSYSTEM_ID = SUBSYSTEM_ID::CORE;
static constexpr Event ALLOC_FAILURE = event::makeEvent(SUBSYSTEM_ID, 0, severity::MEDIUM);
//! [EXPORT] : [COMMENT] Software reboot occured. Can also be a systemd reboot.
//! [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::MEDIUM);
//! [EXPORT] : [COMMENT] The reboot mechanism was triggered.
@ -79,6 +108,15 @@ class CoreController : public ExtendedControllerBase {
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);
CoreController(object_id_t objectId);
virtual ~CoreController();
@ -100,6 +138,7 @@ class CoreController : public ExtendedControllerBase {
static ReturnValue_t generateChipStateFile();
static ReturnValue_t incrementAllocationFailureCount();
static void getCurrentBootCopy(xsc::Chip& chip, xsc::Copy& copy);
static const char* getXscMountDir(xsc::Chip chip, xsc::Copy copy);
ReturnValue_t updateProtInfo(bool regenerateChipStateFile = true);
@ -120,9 +159,12 @@ class CoreController : public ExtendedControllerBase {
bool sdInitFinished() const;
private:
static constexpr MutexIF::TimeoutType TIMEOUT_TYPE = MutexIF::TimeoutType::WAITING;
static constexpr uint32_t MUTEX_TIMEOUT = 20;
// Designated value for rechecking FIFO open
static constexpr int RETRY_FIFO_OPEN = -2;
int watchdogFifoFd = 0;
GpsHyperion::FixMode gpsFix = GpsHyperion::FixMode::UNKNOWN;
// States for SD state machine, which is used in non-blocking mode
enum class SdStates {
@ -141,36 +183,46 @@ class CoreController : public ExtendedControllerBase {
SKIP_CYCLE_BEFORE_INFO_UPDATE,
UPDATE_INFO,
// SD initialization done
IDLE,
// Used if SD switches or mount commands are issued via telecommand
SET_STATE_FROM_COMMAND,
IDLE
};
enum class SwUpdateSources { SD_0, SD_1, TMP_DIR };
static constexpr bool BLOCKING_SD_INIT = false;
SdCardManager* sdcMan = nullptr;
MessageQueueIF* eventQueue = nullptr;
struct SdInfo {
sd::SdCard pref = sd::SdCard::NONE;
sd::SdState prefState = sd::SdState::OFF;
SdStates sdFsmState = SdStates::START;
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 prefChar = "0";
std::string activeChar = "0";
std::string otherChar = "1";
SdStates state = SdStates::START;
std::pair<bool, bool> mountSwitch = {true, true};
// Used to track whether a command was executed
bool commandExecuted = true;
bool initFinished = false;
SdCardManager::SdStatePair currentState;
uint16_t cycleCount = 0;
// These two flags are related to external commanding
bool commandIssued = false;
bool commandFinished = false;
sd::SdState currentlyCommandedState = sd::SdState::OFF;
sd::SdCard commandedCard = sd::SdCard::NONE;
sd::SdState commandedState = sd::SdState::OFF;
} sdInfo;
struct SdCommanding {
bool cmdPending = false;
MessageQueueId_t commander = MessageQueueIF::NO_QUEUE;
DeviceCommandId_t actionId;
} sdCommandingInfo;
RebootFile rebootFile = {};
bool doPerformMountedSdCardOps = true;
std::string currMntPrefix;
bool performOneShotSdCardOpsSwitch = false;
uint8_t shortSdCardCdCounter = 0;
Countdown sdCardCheckCd = Countdown(INIT_SD_CARD_CHECK_TIMEOUT);
/**
* Index 0: Chip 0 Copy 0
@ -179,34 +231,55 @@ class CoreController : public ExtendedControllerBase {
* Index 3: Chip 1 Copy 1
*/
std::array<bool, 4> protArray;
PeriodicOperationDivider opDivider;
PeriodicOperationDivider opDivider5;
PeriodicOperationDivider opDivider10;
PoolEntry<float> tempPoolEntry = PoolEntry<float>(0.0);
PoolEntry<float> psVoltageEntry = PoolEntry<float>(0.0);
PoolEntry<float> plVoltageEntry = PoolEntry<float>(0.0);
core::HkSet hkSet;
#if OBSW_SD_CARD_MUST_BE_ON == 1
bool remountAttemptFlag = true;
#endif
ReturnValue_t initializeLocalDataPool(localpool::DataPool& localDataPoolMap,
LocalDataPoolManager& poolManager) override;
LocalPoolDataSetBase* getDataSetHandle(sid_t sid) override;
ReturnValue_t checkModeCommand(Mode_t mode, Submode_t submode, uint32_t* msToReachTheMode);
void performMountedSdCardOperations();
ReturnValue_t initVersionFile();
ReturnValue_t initBootCopy();
ReturnValue_t initClockFromTimeFile();
ReturnValue_t performSdCardCheck();
ReturnValue_t timeFileHandler();
ReturnValue_t initBootCopyFile();
ReturnValue_t initWatchdogFifo();
ReturnValue_t initSdCardBlocking();
bool startSdStateMachine(sd::SdCard targetActiveSd, SdCfgMode mode, MessageQueueId_t commander,
DeviceCommandId_t actionId);
void initPrint();
ReturnValue_t sdStateMachine();
void updateSdInfoOther();
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);
ReturnValue_t sdColdRedundantBlockingInit();
void currentStateSetter(sd::SdCard sdCard, sd::SdState newState);
void determinePreferredSdCard();
void executeNextExternalSdCommand();
void checkExternalSdCommandStatus();
void performRebootFileHandling(bool recreateFile);
ReturnValue_t actionListDirectoryIntoFile(ActionId_t actionId, MessageQueueId_t commandedBy,
const uint8_t* data, size_t size);
ReturnValue_t actionPerformReboot(const uint8_t* data, size_t size);
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);
void performWatchdogControlOperation();
@ -220,6 +293,8 @@ class CoreController : public ExtendedControllerBase {
void setRebootMechanismLock(bool lock, xsc::Chip tgtChip, xsc::Copy tgtCopy);
bool parseRebootFile(std::string path, RebootFile& file);
void rewriteRebootFile(RebootFile file);
void readHkData();
bool isNumber(const std::string& s);
};
#endif /* BSP_Q7S_CORE_CORECONTROLLER_H_ */

View File

@ -0,0 +1,39 @@
#ifndef BSP_Q7S_CORE_COREDEFINITIONS_H_
#define BSP_Q7S_CORE_COREDEFINITIONS_H_
#include <fsfw/datapoollocal/StaticLocalDataSet.h>
namespace core {
static const uint8_t HK_SET_ENTRIES = 3;
static const uint32_t HK_SET_ID = 5;
enum PoolIds { TEMPERATURE, PS_VOLTAGE, PL_VOLTAGE };
/**
* @brief Set storing OBC internal housekeeping data
*/
class HkSet : public StaticLocalDataSet<HK_SET_ENTRIES> {
public:
HkSet(HasLocalDataPoolIF* owner) : StaticLocalDataSet(owner, HK_SET_ID) {}
HkSet(object_id_t objectId) : StaticLocalDataSet(sid_t(objectId, HK_SET_ID)) {}
// On-chip temperature
lp_var_t<float> temperature = lp_var_t<float>(sid.objectId, PoolIds::TEMPERATURE, this);
// Processing system VCC
lp_var_t<float> psVoltage = lp_var_t<float>(sid.objectId, PoolIds::PS_VOLTAGE, this);
// Programmable logic VCC
lp_var_t<float> plVoltage = lp_var_t<float>(sid.objectId, PoolIds::PL_VOLTAGE, this);
void printSet() {
sif::info << "HkSet::printSet: On-chip temperature: " << this->temperature << " °C"
<< std::endl;
sif::info << "HkSet::printSet: PS voltage: " << this->psVoltage << " mV" << std::endl;
sif::info << "HkSet::printSet: PL voltage: " << this->plVoltage << " mV" << std::endl;
}
};
} // namespace core
#endif /* BSP_Q7S_CORE_COREDEFINITIONS_H_ */

View File

@ -1,415 +0,0 @@
#include "InitMission.h"
#include <iostream>
#include <vector>
#include "OBSWConfig.h"
#include "ObjectFactory.h"
#include "fsfw/objectmanager/ObjectManager.h"
#include "fsfw/objectmanager/ObjectManagerIF.h"
#include "fsfw/platform.h"
#include "fsfw/returnvalues/HasReturnvaluesIF.h"
#include "fsfw/serviceinterface/ServiceInterfaceStream.h"
#include "fsfw/tasks/FixedTimeslotTaskIF.h"
#include "fsfw/tasks/PeriodicTaskIF.h"
#include "fsfw/tasks/TaskFactory.h"
#include "mission/utility/InitMission.h"
#include "pollingsequence/pollingSequenceFactory.h"
/* This is configured for linux without CR */
#ifdef PLATFORM_UNIX
ServiceInterfaceStream sif::debug("DEBUG");
ServiceInterfaceStream sif::info("INFO");
ServiceInterfaceStream sif::warning("WARNING");
ServiceInterfaceStream sif::error("ERROR");
#else
ServiceInterfaceStream sif::debug("DEBUG", true);
ServiceInterfaceStream sif::info("INFO", true);
ServiceInterfaceStream sif::warning("WARNING", true);
ServiceInterfaceStream sif::error("ERROR", true, false, true);
#endif
ObjectManagerIF* objectManager = nullptr;
void initmission::initMission() {
sif::info << "Building global objects.." << std::endl;
/* Instantiate global object manager and also create all objects */
ObjectManager::instance()->setObjectFactoryFunction(ObjectFactory::produce, nullptr);
sif::info << "Initializing all objects.." << std::endl;
ObjectManager::instance()->initialize();
/* This function creates and starts all tasks */
initTasks();
}
void initmission::initTasks() {
TaskFactory* factory = TaskFactory::instance();
ReturnValue_t result = HasReturnvaluesIF::RETURN_OK;
if (factory == nullptr) {
/* Should never happen ! */
return;
}
#if OBSW_PRINT_MISSED_DEADLINES == 1
void (*missedDeadlineFunc)(void) = TaskFactory::printMissedDeadline;
#else
void (*missedDeadlineFunc)(void) = nullptr;
#endif
#if BOARD_TE0720 == 0
PeriodicTaskIF* coreController = factory->createPeriodicTask(
"CORE_CTRL", 60, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.4, missedDeadlineFunc);
result = coreController->addComponent(objects::CORE_CONTROLLER);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("CORE_CTRL", objects::CORE_CONTROLLER);
}
#endif
/* TMTC Distribution */
PeriodicTaskIF* tmTcDistributor = factory->createPeriodicTask(
"DIST", 40, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.2, missedDeadlineFunc);
result = tmTcDistributor->addComponent(objects::CCSDS_PACKET_DISTRIBUTOR);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("CCSDS_DISTRIB", objects::CCSDS_PACKET_DISTRIBUTOR);
}
result = tmTcDistributor->addComponent(objects::PUS_PACKET_DISTRIBUTOR);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("PUS_PACKET_DISTRIB", objects::PUS_PACKET_DISTRIBUTOR);
}
result = tmTcDistributor->addComponent(objects::TM_FUNNEL);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("TM_FUNNEL", objects::TM_FUNNEL);
}
#if OBSW_ADD_TCPIP_BRIDGE == 1
// TMTC bridge
PeriodicTaskIF* tmtcBridgeTask = factory->createPeriodicTask(
"TCPIP_TMTC_BRIDGE", 50, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.2, missedDeadlineFunc);
result = tmtcBridgeTask->addComponent(objects::TMTC_BRIDGE);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("TMTC_BRIDGE", objects::TMTC_BRIDGE);
}
PeriodicTaskIF* tmtcPollingTask = factory->createPeriodicTask(
"TMTC_POLLING", 80, PeriodicTaskIF::MINIMUM_STACK_SIZE, 2.0, missedDeadlineFunc);
result = tmtcPollingTask->addComponent(objects::TMTC_POLLING_TASK);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("UDP_POLLING", objects::TMTC_POLLING_TASK);
}
#endif
#if OBSW_USE_CCSDS_IP_CORE == 1
PeriodicTaskIF* ccsdsHandlerTask = factory->createPeriodicTask(
"CCSDS_HANDLER", 50, PeriodicTaskIF::MINIMUM_STACK_SIZE, 2.0, missedDeadlineFunc);
result = ccsdsHandlerTask->addComponent(objects::CCSDS_HANDLER);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("CCSDS Handler", objects::CCSDS_HANDLER);
}
// Minimal distance between two received TCs amounts to 0.6 seconds
// If a command has not been read before the next one arrives, the old command will be
// overwritten by the PDEC.
PeriodicTaskIF* pdecHandlerTask = factory->createPeriodicTask(
"PDEC_HANDLER", 50, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.0, missedDeadlineFunc);
result = pdecHandlerTask->addComponent(objects::PDEC_HANDLER);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("PDEC Handler", objects::PDEC_HANDLER);
}
#endif /* OBSW_USE_CCSDS_IP_CORE == 1 */
#if OBSW_ADD_ACS_HANDLERS == 1
PeriodicTaskIF* acsCtrl = factory->createPeriodicTask(
"ACS_CTRL", 40, PeriodicTaskIF::MINIMUM_STACK_SIZE * 2, 0.4, missedDeadlineFunc);
result = acsCtrl->addComponent(objects::GPS_CONTROLLER);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("ACS_CTRL", objects::GPS_CONTROLLER);
}
#endif /* OBSW_ADD_ACS_HANDLERS */
#if BOARD_TE0720 == 0
// FS task, task interval does not matter because it runs in permanent loop, priority low
// because it is a non-essential background task
PeriodicTaskIF* fsTask = factory->createPeriodicTask(
"FILE_SYSTEM_TASK", 25, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.4, missedDeadlineFunc);
result = fsTask->addComponent(objects::FILE_SYSTEM_HANDLER);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("FILE_SYSTEM_TASK", objects::FILE_SYSTEM_HANDLER);
}
#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);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("STR_HELPER", objects::STR_HELPER);
}
#endif /* OBSW_ADD_STAR_TRACKER == 1 */
#endif /* BOARD_TE0720 */
#if OBSW_TEST_CCSDS_BRIDGE == 1
PeriodicTaskIF* ptmeTestTask = factory->createPeriodicTask(
"PTME_TEST", 80, PeriodicTaskIF::MINIMUM_STACK_SIZE, 2.0, missedDeadlineFunc);
result = ptmeTestTask->addComponent(objects::CCSDS_IP_CORE_BRIDGE);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("PTME_TEST", objects::CCSDS_IP_CORE_BRIDGE);
}
#endif
std::vector<PeriodicTaskIF*> pusTasks;
createPusTasks(*factory, missedDeadlineFunc, pusTasks);
std::vector<PeriodicTaskIF*> pstTasks;
createPstTasks(*factory, missedDeadlineFunc, pstTasks);
#if OBSW_ADD_TEST_CODE == 1
std::vector<PeriodicTaskIF*> testTasks;
createTestTasks(*factory, missedDeadlineFunc, testTasks);
#endif
auto taskStarter = [](std::vector<PeriodicTaskIF*>& taskVector, std::string name) {
for (const auto& task : taskVector) {
if (task != nullptr) {
task->startTask();
} else {
sif::error << "Task in vector " << name << " is invalid!" << std::endl;
}
}
};
sif::info << "Starting tasks.." << std::endl;
tmTcDistributor->startTask();
#if OBSW_ADD_TCPIP_BRIDGE == 1
tmtcBridgeTask->startTask();
tmtcPollingTask->startTask();
#endif
#if OBSW_USE_CCSDS_IP_CORE == 1
ccsdsHandlerTask->startTask();
pdecHandlerTask->startTask();
#endif /* OBSW_USE_CCSDS_IP_CORE == 1 */
#if BOARD_TE0720 == 0
coreController->startTask();
#endif
taskStarter(pstTasks, "PST task vector");
taskStarter(pusTasks, "PUS task vector");
#if OBSW_ADD_TEST_CODE == 1
taskStarter(testTasks, "Test task vector");
#endif
#if OBSW_TEST_CCSDS_BRIDGE == 1
ptmeTestTask->startTask();
#endif
#if BOARD_TE0720 == 0
fsTask->startTask();
#if OBSW_ADD_STAR_TRACKER == 1
strHelperTask > startTask();
#endif /* OBSW_ADD_STAR_TRACKER == 1 */
#endif
#if OBSW_ADD_ACS_HANDLERS == 1
acsCtrl->startTask();
#endif
sif::info << "Tasks started.." << std::endl;
}
void initmission::createPstTasks(TaskFactory& factory,
TaskDeadlineMissedFunction missedDeadlineFunc,
std::vector<PeriodicTaskIF*>& taskVec) {
ReturnValue_t result = HasReturnvaluesIF::RETURN_OK;
#if BOARD_TE0720 == 0
/* Polling Sequence Table Default */
#if OBSW_ADD_SPI_TEST_CODE == 0
FixedTimeslotTaskIF* spiPst = factory.createFixedTimeslotTask(
"PST_TASK_DEFAULT", 70, PeriodicTaskIF::MINIMUM_STACK_SIZE * 4, 0.5, missedDeadlineFunc);
result = pst::pstSpi(spiPst);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != FixedTimeslotTaskIF::SLOT_LIST_EMPTY) {
sif::error << "InitMission::initTasks: Creating PST failed!" << std::endl;
}
} else {
taskVec.push_back(spiPst);
}
#endif
FixedTimeslotTaskIF* uartPst = factory.createFixedTimeslotTask(
"UART_PST", 70, PeriodicTaskIF::MINIMUM_STACK_SIZE * 4, 0.2, missedDeadlineFunc);
result = pst::pstUart(uartPst);
if (result != HasReturnvaluesIF::RETURN_OK) {
sif::error << "InitMission::initTasks: Creating PST failed!" << std::endl;
}
taskVec.push_back(uartPst);
FixedTimeslotTaskIF* gpioPst = factory.createFixedTimeslotTask(
"GPIO_PST", 70, PeriodicTaskIF::MINIMUM_STACK_SIZE * 4, 0.2, missedDeadlineFunc);
result = pst::pstGpio(gpioPst);
if (result != HasReturnvaluesIF::RETURN_OK) {
sif::error << "InitMission::initTasks: Creating PST failed!" << std::endl;
}
taskVec.push_back(gpioPst);
#if OBSW_ADD_I2C_TEST_CODE == 0
FixedTimeslotTaskIF* i2cPst = factory.createFixedTimeslotTask(
"I2C_PST", 70, PeriodicTaskIF::MINIMUM_STACK_SIZE * 4, 0.2, missedDeadlineFunc);
result = pst::pstI2c(i2cPst);
if (result != HasReturnvaluesIF::RETURN_OK) {
sif::error << "InitMission::initTasks: Creating PST failed!" << std::endl;
}
taskVec.push_back(i2cPst);
#endif
FixedTimeslotTaskIF* gomSpacePstTask = factory.createFixedTimeslotTask(
"GS_PST_TASK", 70, PeriodicTaskIF::MINIMUM_STACK_SIZE * 4, 1.0, missedDeadlineFunc);
result = pst::pstGompaceCan(gomSpacePstTask);
if (result != HasReturnvaluesIF::RETURN_OK) {
sif::error << "InitMission::initTasks: GomSpace PST initialization failed!" << std::endl;
}
taskVec.push_back(gomSpacePstTask);
#else /* BOARD_TE7020 == 0 */
FixedTimeslotTaskIF* pollingSequenceTaskTE0720 = factory.createFixedTimeslotTask(
"PST_TASK_TE0720", 30, PeriodicTaskIF::MINIMUM_STACK_SIZE * 8, 3.0, missedDeadlineFunc);
result = pst::pollingSequenceTE0720(pollingSequenceTaskTE0720);
if (result != HasReturnvaluesIF::RETURN_OK) {
sif::error << "InitMission::initTasks: Creating TE0720 PST failed!" << std::endl;
}
taskVec.push_back(pollingSequenceTaskTE0720);
#endif /* BOARD_TE7020 == 1 */
}
void initmission::createPusTasks(TaskFactory& factory,
TaskDeadlineMissedFunction missedDeadlineFunc,
std::vector<PeriodicTaskIF*>& taskVec) {
ReturnValue_t result = HasReturnvaluesIF::RETURN_OK;
/* PUS Services */
PeriodicTaskIF* pusVerification = factory.createPeriodicTask(
"PUS_VERIF", 40, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.200, missedDeadlineFunc);
result = pusVerification->addComponent(objects::PUS_SERVICE_1_VERIFICATION);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("PUS_VERIF", objects::PUS_SERVICE_1_VERIFICATION);
}
taskVec.push_back(pusVerification);
PeriodicTaskIF* pusEvents = factory.createPeriodicTask(
"PUS_EVENTS", 60, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.200, missedDeadlineFunc);
result = pusEvents->addComponent(objects::PUS_SERVICE_5_EVENT_REPORTING);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("PUS_EVENTS", objects::PUS_SERVICE_5_EVENT_REPORTING);
}
result = pusEvents->addComponent(objects::EVENT_MANAGER);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("PUS_MGMT", objects::EVENT_MANAGER);
}
taskVec.push_back(pusEvents);
PeriodicTaskIF* pusHighPrio = factory.createPeriodicTask(
"PUS_HIGH_PRIO", 50, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.200, missedDeadlineFunc);
result = pusHighPrio->addComponent(objects::PUS_SERVICE_2_DEVICE_ACCESS);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("PUS_2", objects::PUS_SERVICE_2_DEVICE_ACCESS);
}
result = pusHighPrio->addComponent(objects::PUS_SERVICE_9_TIME_MGMT);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("PUS_9", 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);
result = pusMedPrio->addComponent(objects::PUS_SERVICE_8_FUNCTION_MGMT);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("PUS_8", objects::PUS_SERVICE_8_FUNCTION_MGMT);
}
result = pusMedPrio->addComponent(objects::PUS_SERVICE_3_HOUSEKEEPING);
if (result != HasReturnvaluesIF::RETURN_OK) {
sif::error << "Object add component failed" << std::endl;
}
result = pusMedPrio->addComponent(objects::PUS_SERVICE_200_MODE_MGMT);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("PUS_200", objects::PUS_SERVICE_200_MODE_MGMT);
}
result = pusMedPrio->addComponent(objects::PUS_SERVICE_20_PARAMETERS);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("PUS_20", objects::PUS_SERVICE_20_PARAMETERS);
}
taskVec.push_back(pusMedPrio);
PeriodicTaskIF* pusLowPrio = factory.createPeriodicTask(
"PUS_LOW_PRIO", 30, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.6, missedDeadlineFunc);
result = pusLowPrio->addComponent(objects::PUS_SERVICE_17_TEST);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("PUS_17", objects::PUS_SERVICE_17_TEST);
}
result = pusLowPrio->addComponent(objects::INTERNAL_ERROR_REPORTER);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("ERROR_REPORTER", objects::INTERNAL_ERROR_REPORTER);
}
taskVec.push_back(pusLowPrio);
}
void initmission::createTestTasks(TaskFactory& factory,
TaskDeadlineMissedFunction missedDeadlineFunc,
std::vector<PeriodicTaskIF*>& taskVec) {
#if OBSW_ADD_TEST_TASK == 1 && OBSW_ADD_TEST_CODE == 1
ReturnValue_t result = HasReturnvaluesIF::RETURN_OK;
static_cast<void>(result); // supress warning in case it is not used
PeriodicTaskIF* testTask = factory.createPeriodicTask(
"TEST_TASK", 60, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1, missedDeadlineFunc);
result = testTask->addComponent(objects::TEST_TASK);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("TEST_TASK", objects::TEST_TASK);
}
#if OBSW_ADD_SPI_TEST_CODE == 1
result = testTask->addComponent(objects::SPI_TEST);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("SPI_TEST", objects::SPI_TEST);
}
#endif
#if OBSW_ADD_I2C_TEST_CODE == 1
result = testTask->addComponent(objects::I2C_TEST);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("I2C_TEST", objects::I2C_TEST);
}
#endif
#if OBSW_ADD_UART_TEST_CODE == 1
result = testTask->addComponent(objects::UART_TEST);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("UART_TEST", objects::UART_TEST);
}
#endif
#if BOARD_TE0720 == 1 && OBSW_TEST_LIBGPIOD == 1
result = testTask->addComponent(objects::LIBGPIOD_TEST);
if (result != HasReturnvaluesIF::RETURN_OK) {
initmission::printAddObjectError("GPIOD_TEST", objects::LIBGPIOD_TEST);
}
#endif /* BOARD_TE0720 == 1 && OBSW_TEST_LIBGPIOD == 1 */
taskVec.push_back(testTask);
#endif // OBSW_ADD_TEST_TASK == 1 && OBSW_ADD_TEST_CODE == 1
}
/**
▄ ▄
▌▒█ ▄▀▒▌
▌▒▒█ ▄▀▒▒▒▐
▐▄▀▒▒▀▀▀▀▄▄▄▀▒▒▒▒▒▐
▄▄▀▒░▒▒▒▒▒▒▒▒▒█▒▒▄█▒▐
▄▀▒▒▒░░░▒▒▒░░░▒▒▒▀██▀▒▌
▐▒▒▒▄▄▒▒▒▒░░░▒▒▒▒▒▒▒▀▄▒▒▌
▌░░▌█▀▒▒▒▒▒▄▀█▄▒▒▒▒▒▒▒█▒▐
▐░░░▒▒▒▒▒▒▒▒▌██▀▒▒░░░▒▒▒▀▄▌
▌░▒▄██▄▒▒▒▒▒▒▒▒▒░░░░░░▒▒▒▒▌
▌▒▀▐▄█▄█▌▄░▀▒▒░░░░░░░░░░▒▒▒▐
▐▒▒▐▀▐▀▒░▄▄▒▄▒▒▒▒▒▒░▒░▒░▒▒▒▒▌
▐▒▒▒▀▀▄▄▒▒▒▄▒▒▒▒▒▒▒▒░▒░▒░▒▒▐
▌▒▒▒▒▒▒▀▀▀▒▒▒▒▒▒░▒░▒░▒░▒▒▒▌
▐▒▒▒▒▒▒▒▒▒▒▒▒▒▒░▒░▒░▒▒▄▒▒▐
▀▄▒▒▒▒▒▒▒▒▒▒▒░▒░▒░▒▄▒▒▒▒▌
▀▄▒▒▒▒▒▒▒▒▒▒▄▄▄▀▒▒▒▒▄▀
▀▄▄▄▄▄▄▀▀▀▒▒▒▒▒▄▄▀
▒▒▒▒▒▒▒▒▒▒▀▀
**/

File diff suppressed because it is too large Load Diff

View File

@ -1,33 +1,53 @@
#ifndef BSP_Q7S_OBJECTFACTORY_H_
#define BSP_Q7S_OBJECTFACTORY_H_
#include <fsfw/returnvalues/returnvalue.h>
#include <mission/system/objects/Stack5VHandler.h>
#include <mission/tmtc/CcsdsIpCoreHandler.h>
#include <mission/tmtc/CfdpTmFunnel.h>
#include <mission/tmtc/PusTmFunnel.h>
#include <string>
class LinuxLibgpioIF;
class UartComIF;
class SerialComIF;
class SpiComIF;
class I2cComIF;
class PowerSwitchIF;
class HealthTableIF;
class AcsBoardAssembly;
class GpioIF;
namespace ObjectFactory {
void setStatics();
void produce(void* args);
void createCommunicationInterfaces(LinuxLibgpioIF** gpioComIF, UartComIF** uartComIF,
SpiComIF** spiComIF, I2cComIF** i2cComIF);
void createPlPcduComponents(LinuxLibgpioIF* gpioComIF, SpiComIF* spiComIF);
void createCommunicationInterfaces(LinuxLibgpioIF** gpioComIF, SerialComIF** uartComIF,
SpiComIF** spiMainComIF, I2cComIF** i2cComIF,
SpiComIF** spiRwComIF);
void createPcduComponents(LinuxLibgpioIF* gpioComIF, PowerSwitchIF** pwrSwitcher);
void createPlPcduComponents(LinuxLibgpioIF* gpioComIF, SpiComIF* spiComIF,
PowerSwitchIF* pwrSwitcher, Stack5VHandler& stackHandler);
void createTmpComponents();
void createPcduComponents(LinuxLibgpioIF* gpioComIF);
void createRadSensorComponent(LinuxLibgpioIF* gpioComIF);
void createSunSensorComponents(LinuxLibgpioIF* gpioComIF, SpiComIF* spiComIF);
void createAcsBoardComponents(LinuxLibgpioIF* gpioComIF, UartComIF* uartComIF);
void createHeaterComponents();
void createSolarArrayDeploymentComponents();
void createSyrlinksComponents();
void createRtdComponents(LinuxLibgpioIF* gpioComIF);
void createReactionWheelComponents(LinuxLibgpioIF* gpioComIF);
void createCcsdsComponents(LinuxLibgpioIF* gpioComIF);
ReturnValue_t createRadSensorComponent(LinuxLibgpioIF* gpioComIF, Stack5VHandler& handler);
void createAcsBoardComponents(LinuxLibgpioIF* gpioComIF, SerialComIF* uartComIF,
PowerSwitchIF* pwrSwitcher);
void createHeaterComponents(GpioIF* gpioIF, PowerSwitchIF* pwrSwitcher, HealthTableIF* healthTable);
void createImtqComponents(PowerSwitchIF* pwrSwitcher);
void createBpxBatteryComponent();
void createStrComponents(PowerSwitchIF* pwrSwitcher);
void createSolarArrayDeploymentComponents(PowerSwitchIF& pwrSwitcher, GpioIF& gpioIF);
void createSyrlinksComponents(PowerSwitchIF* pwrSwitcher);
void createPayloadComponents(LinuxLibgpioIF* gpioComIF, PowerSwitchIF& pwrSwitcher);
void createReactionWheelComponents(LinuxLibgpioIF* gpioComIF, PowerSwitchIF* pwrSwitcher);
ReturnValue_t createCcsdsComponents(LinuxLibgpioIF* gpioComIF, CcsdsIpCoreHandler** ipCoreHandler);
void createMiscComponents();
void createTestComponents(LinuxLibgpioIF* gpioComIF);
void testAcsBrdAss(AcsBoardAssembly* assAss);
}; // namespace ObjectFactory
#endif /* BSP_Q7S_OBJECTFACTORY_H_ */

View File

@ -1,5 +0,0 @@
#include "ParameterHandler.h"
ParameterHandler::ParameterHandler(std::string mountPrefix) : mountPrefix(mountPrefix) {}
void ParameterHandler::setMountPrefix(std::string prefix) { mountPrefix = prefix; }

View File

@ -1,20 +0,0 @@
#ifndef BSP_Q7S_CORE_PARAMETERHANDLER_H_
#define BSP_Q7S_CORE_PARAMETERHANDLER_H_
#include <nlohmann/json.hpp>
#include <string>
class ParameterHandler {
public:
ParameterHandler(std::string mountPrefix);
void setMountPrefix(std::string prefix);
void setUpDummyParameter();
private:
std::string mountPrefix;
DummyParameter dummyParam;
};
#endif /* BSP_Q7S_CORE_PARAMETERHANDLER_H_ */

View File

@ -1,44 +0,0 @@
#include "obsw.h"
#include <filesystem>
#include <iostream>
#include "InitMission.h"
#include "OBSWConfig.h"
#include "OBSWVersion.h"
#include "fsfw/FSFWVersion.h"
#include "fsfw/tasks/TaskFactory.h"
#include "watchdogConf.h"
static int OBSW_ALREADY_RUNNING = -2;
int obsw::obsw() {
std::cout << "-- EIVE OBSW --" << std::endl;
#if BOARD_TE0720 == 0
std::cout << "-- Compiled for Linux (Xiphos Q7S) --" << std::endl;
#else
std::cout << "-- Compiled for Linux (TE0720) --" << std::endl;
#endif
std::cout << "-- OBSW v" << SW_VERSION << "." << SW_SUBVERSION << "." << SW_REVISION << ", FSFW v"
<< FSFW_VERSION << "." << FSFW_SUBVERSION << "." << FSFW_REVISION << "--" << std::endl;
std::cout << "-- " << __DATE__ << " " << __TIME__ << " --" << std::endl;
#if Q7S_CHECK_FOR_ALREADY_RUNNING_IMG == 1
// Check special file here. This file is created or deleted by the eive-watchdog application
// or systemd service!
if (std::filesystem::exists(watchdog::RUNNING_FILE_NAME)) {
sif::warning << "File " << watchdog::RUNNING_FILE_NAME
<< " exists so the software might "
"already be running. Check if obsw systemd service has been stopped."
<< std::endl;
return OBSW_ALREADY_RUNNING;
}
#endif
initmission::initMission();
for (;;) {
/* Suspend main thread by sleeping it. */
TaskFactory::delayTask(5000);
}
return 0;
}

610
bsp_q7s/core/scheduling.cpp Normal file
View File

@ -0,0 +1,610 @@
#include "scheduling.h"
#include <fsfw/devicehandlers/DeviceCommunicationIF.h>
#include <fsfw/subsystem/Subsystem.h>
#include <linux/scheduling.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"
#include "fsfw/returnvalues/returnvalue.h"
#include "fsfw/serviceinterface/ServiceInterfaceStream.h"
#include "fsfw/tasks/FixedTimeslotTaskIF.h"
#include "fsfw/tasks/PeriodicTaskIF.h"
#include "fsfw/tasks/TaskFactory.h"
#include "mission/devices/devicedefinitions/Max31865Definitions.h"
#include "mission/utility/InitMission.h"
#include "pollingsequence/pollingSequenceFactory.h"
/* This is configured for linux without CR */
#ifdef PLATFORM_UNIX
ServiceInterfaceStream sif::debug("DEBUG");
ServiceInterfaceStream sif::info("INFO");
ServiceInterfaceStream sif::warning("WARNING");
ServiceInterfaceStream sif::error("ERROR");
#else
ServiceInterfaceStream sif::debug("DEBUG", true);
ServiceInterfaceStream sif::info("INFO", true);
ServiceInterfaceStream sif::warning("WARNING", true);
ServiceInterfaceStream sif::error("ERROR", true, false, true);
#endif
ObjectManagerIF* objectManager = nullptr;
void scheduling::initMission() {
sif::info << "Building global objects.." << std::endl;
try {
/* Instantiate global object manager and also create all objects */
ObjectManager::instance()->setObjectFactoryFunction(ObjectFactory::produce, nullptr);
} catch (const std::invalid_argument& e) {
sif::error << "scheduling::initMission: Object Construction failed with an "
"invalid argument: "
<< e.what();
std::exit(1);
}
sif::info << "Initializing all objects.." << std::endl;
ObjectManager::instance()->initialize();
/* This function creates and starts all tasks */
initTasks();
}
void scheduling::initTasks() {
TaskFactory* factory = TaskFactory::instance();
ReturnValue_t result = returnvalue::OK;
if (factory == nullptr) {
/* Should never happen ! */
return;
}
#if OBSW_PRINT_MISSED_DEADLINES == 1
void (*missedDeadlineFunc)(void) = TaskFactory::printMissedDeadline;
#else
void (*missedDeadlineFunc)(void) = nullptr;
#endif
#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);
result = solarArrayDeplTask->addComponent(objects::SOLAR_ARRAY_DEPL_HANDLER);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("SOLAR_ARRAY_DEPL", objects::SOLAR_ARRAY_DEPL_HANDLER);
}
#endif
PeriodicTaskIF* sysTask = factory->createPeriodicTask(
"CORE_CTRL", 60, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.4, missedDeadlineFunc);
result = sysTask->addComponent(objects::CORE_CONTROLLER);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("CORE_CTRL", objects::CORE_CONTROLLER);
}
result = sysTask->addComponent(objects::PL_SUBSYSTEM);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("PL_SUBSYSTEM", objects::PL_SUBSYSTEM);
}
/* TMTC Distribution */
PeriodicTaskIF* tmTcDistributor = factory->createPeriodicTask(
"DIST", 45, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.2, missedDeadlineFunc);
#if OBSW_ADD_TCPIP_SERVERS == 1
#if OBSW_ADD_TMTC_UDP_SERVER == 1
result = tmTcDistributor->addComponent(objects::UDP_TMTC_SERVER);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("UDP_TMTC_SERVER", objects::UDP_TMTC_SERVER);
}
#endif
#if OBSW_ADD_TMTC_TCP_SERVER == 1
result = tmTcDistributor->addComponent(objects::TCP_TMTC_SERVER);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("TCP_TMTC_SERVER", objects::TCP_TMTC_SERVER);
}
#endif
#endif
result = tmTcDistributor->addComponent(objects::CCSDS_PACKET_DISTRIBUTOR);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("CCSDS_DISTRIB", objects::CCSDS_PACKET_DISTRIBUTOR);
}
result = tmTcDistributor->addComponent(objects::PUS_PACKET_DISTRIBUTOR);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("PUS_PACKET_DISTRIB", objects::PUS_PACKET_DISTRIBUTOR);
}
result = tmTcDistributor->addComponent(objects::CFDP_DISTRIBUTOR);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("CFDP_DISTRIBUTOR", objects::CFDP_DISTRIBUTOR);
}
result = tmTcDistributor->addComponent(objects::TM_FUNNEL);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("TM_FUNNEL", objects::TM_FUNNEL);
}
#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);
result = udpPollingTask->addComponent(objects::UDP_TMTC_POLLING_TASK);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("UDP_POLLING", objects::UDP_TMTC_POLLING_TASK);
}
#endif
#if OBSW_ADD_TMTC_TCP_SERVER == 1
PeriodicTaskIF* tcpPollingTask = factory->createPeriodicTask(
"TCP_TMTC_POLLING", 65, 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);
}
#endif
#endif
PeriodicTaskIF* comTask = factory->createPeriodicTask(
"COM_TASK", 50, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.0, missedDeadlineFunc);
result = comTask->addComponent(objects::COM_SUBSYSTEM);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("COM subsystem", objects::COM_SUBSYSTEM);
}
#if OBSW_ADD_CCSDS_IP_CORES == 1
result = comTask->addComponent(objects::CCSDS_HANDLER);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("CCSDS Handler", objects::CCSDS_HANDLER);
}
// Runs in IRQ mode, frequency does not really matter
PeriodicTaskIF* pdecHandlerTask = factory->createPeriodicTask(
"PDEC_HANDLER", 75, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.0, missedDeadlineFunc);
result = pdecHandlerTask->addComponent(objects::PDEC_HANDLER);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("PDEC Handler", objects::PDEC_HANDLER);
}
#endif /* OBSW_ADD_CCSDS_IP_CORE == 1 */
#if OBSW_ADD_CFDP_COMPONENTS == 1
PeriodicTaskIF* cfdpTask = factory->createPeriodicTask(
"CFDP Handler", 45, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.4, missedDeadlineFunc);
result = cfdpTask->addComponent(objects::CFDP_HANDLER);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("CFDP Handler", objects::CFDP_HANDLER);
}
#endif
#if OBSW_ADD_GPS_CTRL == 1
PeriodicTaskIF* gpsTask = factory->createPeriodicTask(
"GPS_TASK", 50, PeriodicTaskIF::MINIMUM_STACK_SIZE * 2, 0.4, missedDeadlineFunc);
result = gpsTask->addComponent(objects::GPS_CONTROLLER);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("GPS_CTRL", objects::GPS_CONTROLLER);
}
#endif /* OBSW_ADD_GPS_CTRL */
PeriodicTaskIF* acsSysTask = factory->createPeriodicTask(
"SYS_TASK", 55, PeriodicTaskIF::MINIMUM_STACK_SIZE * 2, 0.4, missedDeadlineFunc);
static_cast<void>(acsSysTask);
#if OBSW_ADD_ACS_BOARD == 1
result = acsSysTask->addComponent(objects::ACS_BOARD_ASS);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("ACS_BOARD_ASS", objects::ACS_BOARD_ASS);
}
#endif /* OBSW_ADD_ACS_HANDLERS */
#if OBSW_ADD_RW == 1
result = acsSysTask->addComponent(objects::RW_ASS);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("RW_ASS", objects::RW_ASS);
}
#endif
#if OBSW_ADD_SUS_BOARD_ASS == 1
result = acsSysTask->addComponent(objects::SUS_BOARD_ASS);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("SUS_BOARD_ASS", objects::SUS_BOARD_ASS);
}
#endif
result = acsSysTask->addComponent(objects::ACS_SUBSYSTEM);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("ACS_SUBSYSTEM", objects::ACS_SUBSYSTEM);
}
#if OBSW_ADD_RTD_DEVICES == 1
PeriodicTaskIF* tcsPollingTask = factory->createPeriodicTask(
"TCS_POLLING_TASK", 70, PeriodicTaskIF::MINIMUM_STACK_SIZE * 2, 0.5, missedDeadlineFunc);
result = tcsPollingTask->addComponent(objects::SPI_RTD_COM_IF);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("SPI_RTD_POLLING", objects::SPI_RTD_COM_IF);
}
PeriodicTaskIF* tcsTask = factory->createPeriodicTask(
"TCS_TASK", 45, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.8, missedDeadlineFunc);
std::array<object_id_t, EiveMax31855::NUM_RTDS> rtdIds = {
objects::RTD_0_IC3_PLOC_HEATSPREADER,
objects::RTD_1_IC4_PLOC_MISSIONBOARD,
objects::RTD_2_IC5_4K_CAMERA,
objects::RTD_3_IC6_DAC_HEATSPREADER,
objects::RTD_4_IC7_STARTRACKER,
objects::RTD_5_IC8_RW1_MX_MY,
objects::RTD_6_IC9_DRO,
objects::RTD_7_IC10_SCEX,
objects::RTD_8_IC11_X8,
objects::RTD_9_IC12_HPA,
objects::RTD_10_IC13_PL_TX,
objects::RTD_11_IC14_MPA,
objects::RTD_12_IC15_ACU,
objects::RTD_13_IC16_PLPCDU_HEATSPREADER,
objects::RTD_14_IC17_TCS_BOARD,
objects::RTD_15_IC18_IMTQ,
};
for (const auto& rtd : rtdIds) {
tcsTask->addComponent(rtd, DeviceHandlerIF::PERFORM_OPERATION);
tcsTask->addComponent(rtd, DeviceHandlerIF::SEND_WRITE);
tcsTask->addComponent(rtd, DeviceHandlerIF::GET_WRITE);
tcsTask->addComponent(rtd, DeviceHandlerIF::SEND_READ);
tcsTask->addComponent(rtd, DeviceHandlerIF::GET_READ);
}
#endif
PeriodicTaskIF* tcsSystemTask = factory->createPeriodicTask(
"TCS_TASK", 45, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.5, missedDeadlineFunc);
result = tcsSystemTask->addComponent(objects::TCS_SUBSYSTEM);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("TCS_SUBSYSTEM", objects::TCS_SUBSYSTEM);
}
#if OBSW_ADD_RTD_DEVICES == 1
result = tcsSystemTask->addComponent(objects::TCS_BOARD_ASS);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("TCS_BOARD_ASS", objects::TCS_BOARD_ASS);
}
#endif /* OBSW_ADD_RTD_DEVICES */
#if OBSW_ADD_TCS_CTRL == 1
result = tcsSystemTask->addComponent(objects::THERMAL_CONTROLLER);
if (result != returnvalue::OK) {
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);
}
#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);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("STR_HELPER", objects::STR_HELPER);
}
#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);
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 */
#if OBSW_ADD_PLOC_SUPERVISOR == 1
PeriodicTaskIF* supvHelperTask = factory->createPeriodicTask(
"PLOC_SUPV_HELPER", 10, 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", 25, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.0, missedDeadlineFunc);
scheduling::addMpsocSupvHandlers(plTask);
plTask->addComponent(objects::CAM_SWITCHER);
#if OBSW_ADD_SCEX_DEVICE == 1
PeriodicTaskIF* scexDevHandler;
PeriodicTaskIF* scexReaderTask;
scheduling::schedulingScex(*factory, scexDevHandler, scexReaderTask);
#endif
std::vector<PeriodicTaskIF*> pusTasks;
createPusTasks(*factory, missedDeadlineFunc, pusTasks);
std::vector<PeriodicTaskIF*> pstTasks;
createPstTasks(*factory, missedDeadlineFunc, pstTasks);
#if OBSW_ADD_TEST_CODE == 1
#if OBSW_TEST_CCSDS_BRIDGE == 1
PeriodicTaskIF* ptmeTestTask = factory->createPeriodicTask(
"PTME_TEST", 80, PeriodicTaskIF::MINIMUM_STACK_SIZE, 2.0, missedDeadlineFunc);
result = ptmeTestTask->addComponent(objects::CCSDS_IP_CORE_BRIDGE);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("PTME_TEST", objects::CCSDS_IP_CORE_BRIDGE);
}
#endif
std::vector<PeriodicTaskIF*> testTasks;
createTestTasks(*factory, missedDeadlineFunc, testTasks);
#endif
auto taskStarter = [](std::vector<PeriodicTaskIF*>& taskVector, std::string name) {
for (const auto& task : taskVector) {
if (task != nullptr) {
task->startTask();
} else {
sif::error << "Task in vector " << name << " is invalid!" << std::endl;
}
}
};
sif::info << "Starting tasks.." << std::endl;
tmTcDistributor->startTask();
#if OBSW_ADD_TCPIP_SERVERS == 1
#if OBSW_ADD_TMTC_UDP_SERVER == 1
udpPollingTask->startTask();
#endif
#if OBSW_ADD_TMTC_TCP_SERVER == 1
tcpPollingTask->startTask();
#endif
#endif
comTask->startTask();
#if OBSW_ADD_CCSDS_IP_CORES == 1
pdecHandlerTask->startTask();
#endif /* OBSW_ADD_CCSDS_IP_CORES == 1 */
sysTask->startTask();
#if OBSW_ADD_SA_DEPL == 1
solarArrayDeplTask->startTask();
#endif
taskStarter(pstTasks, "PST task vector");
taskStarter(pusTasks, "PUS task vector");
#if OBSW_ADD_SCEX_DEVICE == 1
scexDevHandler->startTask();
scexReaderTask->startTask();
#endif
#if OBSW_TEST_CCSDS_BRIDGE == 1
ptmeTestTask->startTask();
#endif
#if OBSW_ADD_CFDP_COMPONENTS == 1
cfdpTask->startTask();
#endif
#if OBSW_ADD_STAR_TRACKER == 1
strHelperTask->startTask();
#endif /* OBSW_ADD_STAR_TRACKER == 1 */
#if OBSW_ADD_GPS_CTRL == 1
gpsTask->startTask();
#endif
acsSysTask->startTask();
#if OBSW_ADD_RTD_DEVICES == 1
tcsPollingTask->startTask();
tcsTask->startTask();
#endif /* OBSW_ADD_RTD_DEVICES == 1 */
if (not tcsSystemTask->isEmpty()) {
tcsSystemTask->startTask();
}
#if OBSW_ADD_PLOC_SUPERVISOR == 1
supvHelperTask->startTask();
#endif /* OBSW_ADD_PLOC_SUPERVISOR == 1 */
plTask->startTask();
#if OBSW_ADD_TEST_CODE == 1
taskStarter(testTasks, "Test task vector");
#endif
sif::info << "Tasks started.." << std::endl;
}
void scheduling::createPstTasks(TaskFactory& factory, TaskDeadlineMissedFunction missedDeadlineFunc,
std::vector<PeriodicTaskIF*>& taskVec) {
ReturnValue_t result = returnvalue::OK;
#ifdef RELEASE_BUILD
static constexpr float acsPstPeriod = 0.4;
#else
static constexpr float acsPstPeriod = 0.6;
#endif
FixedTimeslotTaskIF* acsPst = factory.createFixedTimeslotTask(
"ACS_PST", 85, PeriodicTaskIF::MINIMUM_STACK_SIZE * 2, acsPstPeriod, missedDeadlineFunc);
result = pst::pstAcs(acsPst);
if (result != returnvalue::OK) {
if (result == FixedTimeslotTaskIF::SLOT_LIST_EMPTY) {
sif::warning << "scheduling::initTasks: ACS PST is empty" << std::endl;
} else {
sif::error << "scheduling::initTasks: Creating ACS PST failed!" << std::endl;
}
} else {
taskVec.push_back(acsPst);
}
/* Polling Sequence Table Default */
#if OBSW_ADD_SPI_TEST_CODE == 0
FixedTimeslotTaskIF* spiPst = factory.createFixedTimeslotTask(
"MAIN_SPI", 45, PeriodicTaskIF::MINIMUM_STACK_SIZE * 4, 0.5, missedDeadlineFunc);
result = pst::pstSpiAndSyrlinks(spiPst);
if (result != returnvalue::OK) {
if (result == FixedTimeslotTaskIF::SLOT_LIST_EMPTY) {
sif::warning << "scheduling::initTasks: SPI PST is empty" << std::endl;
} else {
sif::error << "scheduling::initTasks: Creating SPI PST failed!" << std::endl;
}
} else {
taskVec.push_back(spiPst);
}
#endif
#if OBSW_ADD_I2C_TEST_CODE == 0
FixedTimeslotTaskIF* i2cPst = factory.createFixedTimeslotTask(
"I2C_PST", 50, PeriodicTaskIF::MINIMUM_STACK_SIZE * 4, 0.2, missedDeadlineFunc);
result = pst::pstI2c(i2cPst);
if (result != returnvalue::OK) {
if (result == FixedTimeslotTaskIF::SLOT_LIST_EMPTY) {
sif::warning << "scheduling::initTasks: I2C PST is empty" << std::endl;
} else {
sif::error << "scheduling::initTasks: Creating I2C PST failed!" << std::endl;
}
} else {
taskVec.push_back(i2cPst);
}
#endif
#if OBSW_ADD_GOMSPACE_PCDU == 1
FixedTimeslotTaskIF* gomSpacePstTask = factory.createFixedTimeslotTask(
"GS_PST_TASK", 65, PeriodicTaskIF::MINIMUM_STACK_SIZE * 4, 1.0, missedDeadlineFunc);
result = pst::pstGompaceCan(gomSpacePstTask);
if (result != returnvalue::OK) {
if (result != FixedTimeslotTaskIF::SLOT_LIST_EMPTY) {
sif::error << "scheduling::initTasks: GomSpace PST initialization failed!" << std::endl;
}
}
taskVec.push_back(gomSpacePstTask);
#endif
}
void scheduling::createPusTasks(TaskFactory& factory, TaskDeadlineMissedFunction missedDeadlineFunc,
std::vector<PeriodicTaskIF*>& taskVec) {
ReturnValue_t result = returnvalue::OK;
/* PUS Services */
PeriodicTaskIF* pusVerification = factory.createPeriodicTask(
"PUS_VERIF", 40, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.200, missedDeadlineFunc);
result = pusVerification->addComponent(objects::PUS_SERVICE_1_VERIFICATION);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("PUS_VERIF", objects::PUS_SERVICE_1_VERIFICATION);
}
taskVec.push_back(pusVerification);
PeriodicTaskIF* pusEvents = factory.createPeriodicTask(
"PUS_EVENTS", 60, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.200, missedDeadlineFunc);
result = pusEvents->addComponent(objects::PUS_SERVICE_5_EVENT_REPORTING);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("PUS_EVENTS", objects::PUS_SERVICE_5_EVENT_REPORTING);
}
result = pusEvents->addComponent(objects::EVENT_MANAGER);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("PUS_MGMT", objects::EVENT_MANAGER);
}
taskVec.push_back(pusEvents);
PeriodicTaskIF* pusHighPrio = factory.createPeriodicTask(
"PUS_HIGH_PRIO", 50, PeriodicTaskIF::MINIMUM_STACK_SIZE, 0.2, missedDeadlineFunc);
result = pusHighPrio->addComponent(objects::PUS_SERVICE_2_DEVICE_ACCESS);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("PUS_2", objects::PUS_SERVICE_2_DEVICE_ACCESS);
}
result = pusHighPrio->addComponent(objects::PUS_SERVICE_9_TIME_MGMT);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("PUS_9", 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);
result = pusMedPrio->addComponent(objects::PUS_SERVICE_3_HOUSEKEEPING);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("PUS_3", objects::PUS_SERVICE_3_HOUSEKEEPING);
}
result = pusMedPrio->addComponent(objects::PUS_SERVICE_8_FUNCTION_MGMT);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("PUS_8", objects::PUS_SERVICE_8_FUNCTION_MGMT);
}
result = pusMedPrio->addComponent(objects::PUS_SERVICE_11_TC_SCHEDULER);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("PUS_11", objects::PUS_SERVICE_11_TC_SCHEDULER);
}
result = pusMedPrio->addComponent(objects::PUS_SERVICE_20_PARAMETERS);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("PUS_20", objects::PUS_SERVICE_20_PARAMETERS);
}
result = pusMedPrio->addComponent(objects::PUS_SERVICE_200_MODE_MGMT);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("PUS_200", objects::PUS_SERVICE_200_MODE_MGMT);
}
result = pusMedPrio->addComponent(objects::PUS_SERVICE_201_HEALTH);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("PUS_201", objects::PUS_SERVICE_201_HEALTH);
}
// Used for connection tests, therefore use higher priority
result = pusMedPrio->addComponent(objects::PUS_SERVICE_17_TEST);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("PUS_17", objects::PUS_SERVICE_17_TEST);
}
taskVec.push_back(pusMedPrio);
PeriodicTaskIF* pusLowPrio = factory.createPeriodicTask(
"PUS_LOW_PRIO", 30, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1.6, missedDeadlineFunc);
result = pusLowPrio->addComponent(objects::INTERNAL_ERROR_REPORTER);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("ERROR_REPORTER", objects::INTERNAL_ERROR_REPORTER);
}
taskVec.push_back(pusLowPrio);
}
void scheduling::createTestTasks(TaskFactory& factory,
TaskDeadlineMissedFunction missedDeadlineFunc,
std::vector<PeriodicTaskIF*>& taskVec) {
#if OBSW_ADD_TEST_TASK == 1 && OBSW_ADD_TEST_CODE == 1
ReturnValue_t result = returnvalue::OK;
static_cast<void>(result); // supress warning in case it is not used
PeriodicTaskIF* testTask = factory.createPeriodicTask(
"TEST_TASK", 60, PeriodicTaskIF::MINIMUM_STACK_SIZE, 1, missedDeadlineFunc);
result = testTask->addComponent(objects::TEST_TASK);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("TEST_TASK", objects::TEST_TASK);
}
#if OBSW_ADD_SPI_TEST_CODE == 1
result = testTask->addComponent(objects::SPI_TEST);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("SPI_TEST", objects::SPI_TEST);
}
#endif
#if OBSW_ADD_I2C_TEST_CODE == 1
result = testTask->addComponent(objects::I2C_TEST);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("I2C_TEST", objects::I2C_TEST);
}
#endif
#if OBSW_ADD_UART_TEST_CODE == 1
result = testTask->addComponent(objects::UART_TEST);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("UART_TEST", objects::UART_TEST);
}
#endif
taskVec.push_back(testTask);
#endif // OBSW_ADD_TEST_TASK == 1 && OBSW_ADD_TEST_CODE == 1
}
/**
▄ ▄
▌▒█ ▄▀▒▌
▌▒▒█ ▄▀▒▒▒▐
▐▄▀▒▒▀▀▀▀▄▄▄▀▒▒▒▒▒▐
▄▄▀▒░▒▒▒▒▒▒▒▒▒█▒▒▄█▒▐
▄▀▒▒▒░░░▒▒▒░░░▒▒▒▀██▀▒▌
▐▒▒▒▄▄▒▒▒▒░░░▒▒▒▒▒▒▒▀▄▒▒▌
▌░░▌█▀▒▒▒▒▒▄▀█▄▒▒▒▒▒▒▒█▒▐
▐░░░▒▒▒▒▒▒▒▒▌██▀▒▒░░░▒▒▒▀▄▌
▌░▒▄██▄▒▒▒▒▒▒▒▒▒░░░░░░▒▒▒▒▌
▌▒▀▐▄█▄█▌▄░▀▒▒░░░░░░░░░░▒▒▒▐
▐▒▒▐▀▐▀▒░▄▄▒▄▒▒▒▒▒▒░▒░▒░▒▒▒▒▌
▐▒▒▒▀▀▄▄▒▒▒▄▒▒▒▒▒▒▒▒░▒░▒░▒▒▐
▌▒▒▒▒▒▒▀▀▀▒▒▒▒▒▒░▒░▒░▒░▒▒▒▌
▐▒▒▒▒▒▒▒▒▒▒▒▒▒▒░▒░▒░▒▒▄▒▒▐
▀▄▒▒▒▒▒▒▒▒▒▒▒░▒░▒░▒▄▒▒▒▒▌
▀▄▒▒▒▒▒▒▒▒▒▒▄▄▄▀▒▒▒▒▄▀
▀▄▄▄▄▄▄▀▀▀▒▒▒▒▒▄▄▀
▒▒▒▒▒▒▒▒▒▒▀▀
**/

View File

@ -3,12 +3,12 @@
#include <vector>
#include "fsfw/tasks/Typedef.h"
#include "fsfw/tasks/definitions.h"
class PeriodicTaskIF;
class TaskFactory;
namespace initmission {
namespace scheduling {
void initMission();
void initTasks();
@ -18,6 +18,6 @@ void createPusTasks(TaskFactory& factory, TaskDeadlineMissedFunction missedDeadl
std::vector<PeriodicTaskIF*>& taskVec);
void createTestTasks(TaskFactory& factory, TaskDeadlineMissedFunction missedDeadlineFunc,
std::vector<PeriodicTaskIF*>& taskVec);
}; // namespace initmission
}; // namespace scheduling
#endif /* BSP_Q7S_INITMISSION_H_ */

View File

@ -1,5 +0,0 @@
target_sources(${OBSW_NAME} PRIVATE
PlocSupervisorHandler.cpp
PlocUpdater.cpp
PlocMemoryDumper.cpp
)

File diff suppressed because it is too large Load Diff

View File

@ -1,395 +0,0 @@
#include "PlocUpdater.h"
#include <filesystem>
#include <fstream>
#include <string>
#include "fsfw/ipc/QueueFactory.h"
PlocUpdater::PlocUpdater(object_id_t objectId)
: SystemObject(objectId), commandActionHelper(this), actionHelper(this, nullptr) {
auto mqArgs = MqArgs(this->getObjectId());
commandQueue = QueueFactory::instance()->createMessageQueue(
QUEUE_SIZE, MessageQueueMessage::MAX_MESSAGE_SIZE, &mqArgs);
}
PlocUpdater::~PlocUpdater() {}
ReturnValue_t PlocUpdater::initialize() {
#if BOARD_TE0720 == 0
sdcMan = SdCardManager::instance();
#endif
ReturnValue_t result = SystemObject::initialize();
if (result != HasReturnvaluesIF::RETURN_OK) {
return result;
}
result = commandActionHelper.initialize();
if (result != HasReturnvaluesIF::RETURN_OK) {
return result;
}
result = actionHelper.initialize(commandQueue);
if (result != HasReturnvaluesIF::RETURN_OK) {
return result;
}
return HasReturnvaluesIF::RETURN_OK;
}
ReturnValue_t PlocUpdater::performOperation(uint8_t operationCode) {
readCommandQueue();
doStateMachine();
return HasReturnvaluesIF::RETURN_OK;
}
ReturnValue_t PlocUpdater::executeAction(ActionId_t actionId, MessageQueueId_t commandedBy,
const uint8_t* data, size_t size) {
ReturnValue_t result = RETURN_FAILED;
if (state != State::IDLE) {
return IS_BUSY;
}
if (size > MAX_PLOC_UPDATE_PATH) {
return NAME_TOO_LONG;
}
switch (actionId) {
case UPDATE_A_UBOOT:
image = Image::A;
partition = Partition::UBOOT;
break;
case UPDATE_A_BITSTREAM:
image = Image::A;
partition = Partition::BITSTREAM;
break;
case UPDATE_A_LINUX:
image = Image::A;
partition = Partition::LINUX_OS;
break;
case UPDATE_A_APP_SW:
image = Image::A;
partition = Partition::APP_SW;
break;
case UPDATE_B_UBOOT:
image = Image::B;
partition = Partition::UBOOT;
break;
case UPDATE_B_BITSTREAM:
image = Image::B;
partition = Partition::BITSTREAM;
break;
case UPDATE_B_LINUX:
image = Image::B;
partition = Partition::LINUX_OS;
break;
case UPDATE_B_APP_SW:
image = Image::B;
partition = Partition::APP_SW;
break;
default:
return INVALID_ACTION_ID;
}
result = getImageLocation(data, size);
if (result != RETURN_OK) {
return result;
}
state = State::UPDATE_AVAILABLE;
return EXECUTION_FINISHED;
}
MessageQueueId_t PlocUpdater::getCommandQueue() const { return commandQueue->getId(); }
MessageQueueIF* PlocUpdater::getCommandQueuePtr() { return commandQueue; }
void PlocUpdater::readCommandQueue() {
CommandMessage message;
ReturnValue_t result;
for (result = commandQueue->receiveMessage(&message); result == HasReturnvaluesIF::RETURN_OK;
result = commandQueue->receiveMessage(&message)) {
if (result != RETURN_OK) {
continue;
}
result = actionHelper.handleActionMessage(&message);
if (result == HasReturnvaluesIF::RETURN_OK) {
continue;
}
result = commandActionHelper.handleReply(&message);
if (result == HasReturnvaluesIF::RETURN_OK) {
continue;
}
sif::debug << "PlocUpdater::readCommandQueue: Received message with invalid format"
<< std::endl;
}
}
void PlocUpdater::doStateMachine() {
switch (state) {
case State::IDLE:
break;
case State::UPDATE_AVAILABLE:
commandUpdateAvailable();
break;
case State::UPDATE_TRANSFER:
commandUpdatePacket();
break;
case State::UPDATE_VERIFY:
commandUpdateVerify();
break;
case State::COMMAND_EXECUTING:
break;
default:
sif::debug << "PlocUpdater::doStateMachine: Invalid state" << std::endl;
break;
}
}
ReturnValue_t PlocUpdater::checkNameLength(size_t size) {
if (size > MAX_PLOC_UPDATE_PATH) {
return NAME_TOO_LONG;
}
return RETURN_OK;
}
ReturnValue_t PlocUpdater::getImageLocation(const uint8_t* data, size_t size) {
ReturnValue_t result = checkNameLength(size);
if (result != RETURN_OK) {
return result;
}
#if BOARD_TE0720 == 0
// Check if file is stored on SD card and if associated SD card is mounted
if (std::string(reinterpret_cast<const char*>(data), SD_PREFIX_LENGTH) ==
std::string(SdCardManager::SD_0_MOUNT_POINT)) {
if (!sdcMan->isSdCardMounted(sd::SLOT_0)) {
sif::warning << "PlocUpdater::getImageLocation: SD card 0 not mounted" << std::endl;
return SD_NOT_MOUNTED;
}
} else if (std::string(reinterpret_cast<const char*>(data), SD_PREFIX_LENGTH) ==
std::string(SdCardManager::SD_1_MOUNT_POINT)) {
if (!sdcMan->isSdCardMounted(sd::SLOT_0)) {
sif::warning << "PlocUpdater::getImageLocation: SD card 1 not mounted" << std::endl;
return SD_NOT_MOUNTED;
}
} else {
// update image not stored on SD card
}
#endif /* BOARD_TE0720 == 0 */
updateFile = std::string(reinterpret_cast<const char*>(data), size);
// Check if file exists
if (not std::filesystem::exists(updateFile)) {
return FILE_NOT_EXISTS;
}
return RETURN_OK;
}
void PlocUpdater::stepSuccessfulReceived(ActionId_t actionId, uint8_t step) {}
void PlocUpdater::stepFailedReceived(ActionId_t actionId, uint8_t step, ReturnValue_t returnCode) {}
void PlocUpdater::dataReceived(ActionId_t actionId, const uint8_t* data, uint32_t size) {}
void PlocUpdater::completionSuccessfulReceived(ActionId_t actionId) {
switch (pendingCommand) {
case (PLOC_SPV::UPDATE_AVAILABLE):
state = State::UPDATE_TRANSFER;
break;
case (PLOC_SPV::UPDATE_IMAGE_DATA):
if (remainingPackets == 0) {
packetsSent = 0; // Reset packets sent variable for next update sequence
state = State::UPDATE_VERIFY;
} else {
state = State::UPDATE_TRANSFER;
}
break;
case (PLOC_SPV::UPDATE_VERIFY):
triggerEvent(UPDATE_FINISHED);
state = State::IDLE;
pendingCommand = PLOC_SPV::NONE;
break;
default:
sif::debug << "PlocUpdater::completionSuccessfulReceived: Invalid pending command"
<< std::endl;
state = State::IDLE;
break;
}
}
void PlocUpdater::completionFailedReceived(ActionId_t actionId, ReturnValue_t returnCode) {
switch (pendingCommand) {
case (PLOC_SPV::UPDATE_AVAILABLE): {
triggerEvent(UPDATE_AVAILABLE_FAILED);
break;
}
case (PLOC_SPV::UPDATE_IMAGE_DATA): {
triggerEvent(UPDATE_TRANSFER_FAILED, packetsSent);
break;
}
case (PLOC_SPV::UPDATE_VERIFY): {
triggerEvent(UPDATE_VERIFY_FAILED);
break;
}
default:
sif::debug << "PlocUpdater::completionFailedReceived: Invalid pending command " << std::endl;
break;
}
state = State::IDLE;
}
void PlocUpdater::commandUpdateAvailable() {
ReturnValue_t result = RETURN_OK;
if (not std::filesystem::exists(updateFile)) {
triggerEvent(UPDATE_FILE_NOT_EXISTS, static_cast<uint8_t>(state));
state = State::IDLE;
return;
}
std::ifstream file(updateFile, std::ifstream::binary);
file.seekg(0, file.end);
imageSize = static_cast<size_t>(file.tellg());
file.close();
numOfUpdatePackets = imageSize / MAX_SP_DATA;
if (imageSize % MAX_SP_DATA) {
numOfUpdatePackets++;
}
remainingPackets = numOfUpdatePackets;
packetsSent = 0;
calcImageCrc();
PLOC_SPV::UpdateInfo packet(PLOC_SPV::APID_UPDATE_AVAILABLE, static_cast<uint8_t>(image),
static_cast<uint8_t>(partition), imageSize, imageCrc,
numOfUpdatePackets);
result = commandActionHelper.commandAction(objects::PLOC_SUPERVISOR_HANDLER,
PLOC_SPV::UPDATE_AVAILABLE, packet.getWholeData(),
packet.getFullSize());
if (result != RETURN_OK) {
sif::warning << "PlocUpdater::commandUpdateAvailable: Failed to send update available"
<< " packet to supervisor handler" << std::endl;
triggerEvent(ACTION_COMMANDING_FAILED, result, PLOC_SPV::UPDATE_AVAILABLE);
state = State::IDLE;
pendingCommand = PLOC_SPV::NONE;
return;
}
pendingCommand = PLOC_SPV::UPDATE_AVAILABLE;
state = State::COMMAND_EXECUTING;
return;
}
void PlocUpdater::commandUpdatePacket() {
ReturnValue_t result = RETURN_OK;
uint16_t payloadLength = 0;
if (not std::filesystem::exists(updateFile)) {
triggerEvent(UPDATE_FILE_NOT_EXISTS, static_cast<uint8_t>(state), packetsSent);
state = State::IDLE;
return;
}
std::ifstream file(updateFile, std::ifstream::binary);
file.seekg(packetsSent * MAX_SP_DATA, file.beg);
if (remainingPackets == 1) {
payloadLength = imageSize - static_cast<uint16_t>(file.tellg());
} else {
payloadLength = MAX_SP_DATA;
}
PLOC_SPV::UpdatePacket packet(payloadLength);
file.read(reinterpret_cast<char*>(packet.getDataFieldPointer()), payloadLength);
file.close();
// sequence count of first packet is 1
packet.setPacketSequenceCount((packetsSent + 1) & PLOC_SPV::SEQUENCE_COUNT_MASK);
if (numOfUpdatePackets > 1) {
adjustSequenceFlags(packet);
}
packet.makeCrc();
result = commandActionHelper.commandAction(objects::PLOC_SUPERVISOR_HANDLER,
PLOC_SPV::UPDATE_IMAGE_DATA, packet.getWholeData(),
packet.getFullSize());
if (result != RETURN_OK) {
sif::warning << "PlocUpdater::commandUpdateAvailable: Failed to send update"
<< " packet to supervisor handler" << std::endl;
triggerEvent(ACTION_COMMANDING_FAILED, result, PLOC_SPV::UPDATE_IMAGE_DATA);
state = State::IDLE;
pendingCommand = PLOC_SPV::NONE;
return;
}
remainingPackets--;
packetsSent++;
pendingCommand = PLOC_SPV::UPDATE_IMAGE_DATA;
state = State::COMMAND_EXECUTING;
}
void PlocUpdater::commandUpdateVerify() {
ReturnValue_t result = RETURN_OK;
PLOC_SPV::UpdateInfo packet(PLOC_SPV::APID_UPDATE_VERIFY, static_cast<uint8_t>(image),
static_cast<uint8_t>(partition), imageSize, imageCrc,
numOfUpdatePackets);
result =
commandActionHelper.commandAction(objects::PLOC_SUPERVISOR_HANDLER, PLOC_SPV::UPDATE_VERIFY,
packet.getWholeData(), packet.getFullSize());
if (result != RETURN_OK) {
sif::warning << "PlocUpdater::commandUpdateAvailable: Failed to send update available"
<< " packet to supervisor handler" << std::endl;
triggerEvent(ACTION_COMMANDING_FAILED, result, PLOC_SPV::UPDATE_VERIFY);
state = State::IDLE;
pendingCommand = PLOC_SPV::NONE;
return;
}
state = State::COMMAND_EXECUTING;
pendingCommand = PLOC_SPV::UPDATE_VERIFY;
return;
}
void PlocUpdater::calcImageCrc() {
std::ifstream file(updateFile, std::ifstream::binary);
file.seekg(0, file.end);
uint32_t count;
uint32_t bit;
uint32_t remainder = INITIAL_REMAINDER_32;
char input;
for (count = 0; count < imageSize; count++) {
file.seekg(count, file.beg);
file.read(&input, 1);
remainder ^= (input << 16);
for (bit = 8; bit > 0; --bit) {
if (remainder & TOPBIT_32) {
remainder = (remainder << 1) ^ POLYNOMIAL_32;
} else {
remainder = (remainder << 1);
}
}
}
file.close();
imageCrc = (remainder ^ FINAL_XOR_VALUE_32);
}
void PlocUpdater::adjustSequenceFlags(PLOC_SPV::UpdatePacket& packet) {
if (packetsSent == 0) {
packet.setSequenceFlags(static_cast<uint8_t>(PLOC_SPV::SequenceFlags::FIRST_PKT));
} else if (remainingPackets == 1) {
packet.setSequenceFlags(static_cast<uint8_t>(PLOC_SPV::SequenceFlags::LAST_PKT));
} else {
packet.setSequenceFlags(static_cast<uint8_t>(PLOC_SPV::SequenceFlags::CONTINUED_PKT));
}
}

View File

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

File diff suppressed because it is too large Load Diff

View File

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

View File

@ -0,0 +1,113 @@
#include <bsp_q7s/callbacks/q7sGpioCallbacks.h>
#include <fsfw/health/HealthTableIF.h>
#include <fsfw/power/DummyPowerSwitcher.h>
#include <mission/devices/devicedefinitions/GomspaceDefinitions.h>
#include "OBSWConfig.h"
#include "bsp_q7s/core/CoreController.h"
#include "bsp_q7s/core/ObjectFactory.h"
#include "busConf.h"
#include "devConf.h"
#include "dummies/helpers.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"
void ObjectFactory::produce(void* args) {
ObjectFactory::setStatics();
HealthTableIF* healthTable = nullptr;
PusTmFunnel* pusFunnel = nullptr;
CfdpTmFunnel* cfdpFunnel = nullptr;
ObjectFactory::produceGenericObjects(&healthTable, &pusFunnel, &cfdpFunnel);
LinuxLibgpioIF* gpioComIF = nullptr;
SerialComIF* uartComIF = nullptr;
SpiComIF* spiMainComIF = nullptr;
I2cComIF* i2cComIF = nullptr;
SpiComIF* spiRwComIF = nullptr;
createCommunicationInterfaces(&gpioComIF, &uartComIF, &spiMainComIF, &i2cComIF, &spiRwComIF);
/* Adding gpios for chip select decoding to the gpioComIf */
q7s::gpioCallbacks::initSpiCsDecoder(gpioComIF);
gpioCallbacks::disableAllDecoder(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;
#if OBSW_ADD_SYRLINKS == 1
dummyCfg.addSyrlinksDummies = false;
#endif
#if OBSW_ADD_GOMSPACE_PCDU == 1
dummyCfg.addPowerDummies = false;
#endif
PowerSwitchIF* pwrSwitcher = nullptr;
#if OBSW_ADD_GOMSPACE_PCDU == 0
pwrSwitcher = new DummyPowerSwitcher(objects::PCDU_HANDLER, 18, 0);
#else
createPcduComponents(gpioComIF, &pwrSwitcher);
#endif
dummy::createDummies(dummyCfg, *pwrSwitcher);
new CoreController(objects::CORE_CONTROLLER);
// 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);
// 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);
#if OBSW_ADD_ACS_BOARD == 1
createAcsBoardComponents(gpioComIF, uartComIF, pwrSwitcher);
#endif
#if OBSW_ADD_MGT == 1
createImtqComponents(pwrSwitcher);
#endif
#if OBSW_ADD_SYRLINKS == 1
createSyrlinksComponents(pwrSwitcher);
#endif /* OBSW_ADD_SYRLINKS == 1 */
#if OBSW_ADD_RW == 1
createReactionWheelComponents(gpioComIF, pwrSwitcher);
#endif
#if OBSW_ADD_BPX_BATTERY_HANDLER == 1
createBpxBatteryComponent();
#endif
#if OBSW_ADD_STAR_TRACKER == 1
createStrComponents(pwrSwitcher);
#endif /* OBSW_ADD_STAR_TRACKER == 1 */
#if OBSW_ADD_CCSDS_IP_CORES == 1
CcsdsIpCoreHandler* ipCoreHandler = nullptr;
createCcsdsComponents(gpioComIF, &ipCoreHandler);
#if OBSW_TM_TO_PTME == 1
ObjectFactory::addTmtcIpCoresToFunnels(*ipCoreHandler, *pusFunnel, *cfdpFunnel);
#endif
#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);
#endif
createAcsController(true);
satsystem::com::init();
}

View File

@ -0,0 +1,93 @@
#include <bsp_q7s/callbacks/q7sGpioCallbacks.h>
#include <mission/devices/devicedefinitions/GomspaceDefinitions.h>
#include "OBSWConfig.h"
#include "bsp_q7s/core/CoreController.h"
#include "bsp_q7s/core/ObjectFactory.h"
#include "busConf.h"
#include "devConf.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"
void ObjectFactory::produce(void* args) {
ObjectFactory::setStatics();
HealthTableIF* healthTable = nullptr;
PusTmFunnel* pusFunnel = nullptr;
CfdpTmFunnel* cfdpFunnel = nullptr;
ObjectFactory::produceGenericObjects(&healthTable, &pusFunnel, &cfdpFunnel);
LinuxLibgpioIF* gpioComIF = nullptr;
SerialComIF* uartComIF = nullptr;
SpiComIF* spiMainComIF = nullptr;
I2cComIF* i2cComIF = nullptr;
PowerSwitchIF* pwrSwitcher = nullptr;
SpiComIF* spiRwComIF = nullptr;
createCommunicationInterfaces(&gpioComIF, &uartComIF, &spiMainComIF, &i2cComIF, &spiRwComIF);
/* Adding gpios for chip select decoding to the gpioComIf */
q7s::gpioCallbacks::initSpiCsDecoder(gpioComIF);
gpioCallbacks::disableAllDecoder(gpioComIF);
new CoreController(objects::CORE_CONTROLLER);
createPcduComponents(gpioComIF, &pwrSwitcher);
auto* stackHandler = new Stack5VHandler(*pwrSwitcher);
#if OBSW_ADD_RAD_SENSORS == 1
createRadSensorComponent(gpioComIF, *stackHandler);
#endif
#if OBSW_ADD_SUN_SENSORS == 1
createSunSensorComponents(gpioComIF, spiMainComIF, pwrSwitcher, q7s::SPI_DEFAULT_DEV, true);
#endif
#if OBSW_ADD_ACS_BOARD == 1
createAcsBoardComponents(gpioComIF, uartComIF, pwrSwitcher);
#endif
createHeaterComponents(gpioComIF, pwrSwitcher, healthTable);
#if OBSW_ADD_TMP_DEVICES == 1
createTmpComponents();
#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);
#if OBSW_ADD_MGT == 1
createImtqComponents(pwrSwitcher);
#endif
createReactionWheelComponents(gpioComIF, pwrSwitcher);
#if OBSW_ADD_BPX_BATTERY_HANDLER == 1
createBpxBatteryComponent();
#endif
#if OBSW_ADD_STAR_TRACKER == 1
createStrComponents(pwrSwitcher);
#endif /* OBSW_ADD_STAR_TRACKER == 1 */
#if OBSW_ADD_CCSDS_IP_CORES == 1
CcsdsIpCoreHandler* ipCoreHandler = nullptr;
createCcsdsComponents(gpioComIF, &ipCoreHandler);
#if OBSW_TM_TO_PTME == 1
addTmtcIpCoresToFunnels(*ipCoreHandler, *pusFunnel, *cfdpFunnel);
#endif
#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);
#endif
/* Test Task */
#if OBSW_ADD_TEST_CODE == 1
createTestComponents(gpioComIF);
#endif /* OBSW_ADD_TEST_CODE == 1 */
createMiscComponents();
createThermalController();
createAcsController(true);
satsystem::init();
}

View File

@ -0,0 +1,2 @@
target_sources(${OBSW_NAME} PRIVATE helpers.cpp SdCardManager.cpp
FilesystemHelper.cpp)

View File

@ -0,0 +1,38 @@
#include "FilesystemHelper.h"
#include <filesystem>
#include <fstream>
#include "SdCardManager.h"
#include "eive/definitions.h"
#include "fsfw/serviceinterface.h"
FilesystemHelper::FilesystemHelper() {}
ReturnValue_t FilesystemHelper::checkPath(std::string path) {
SdCardManager* sdcMan = SdCardManager::instance();
if (sdcMan == nullptr) {
sif::warning << "FilesystemHelper::checkPath: Invalid SD card manager" << std::endl;
return returnvalue::FAILED;
}
if (path.substr(0, sizeof(config::SD_0_MOUNT_POINT)) == std::string(config::SD_0_MOUNT_POINT)) {
if (!sdcMan->isSdCardUsable(sd::SLOT_0)) {
sif::warning << "FilesystemHelper::checkPath: SD card 0 not mounted" << std::endl;
return SD_NOT_MOUNTED;
}
} else if (path.substr(0, sizeof(config::SD_1_MOUNT_POINT)) ==
std::string(config::SD_1_MOUNT_POINT)) {
if (!sdcMan->isSdCardUsable(sd::SLOT_0)) {
sif::warning << "FilesystemHelper::checkPath: SD card 1 not mounted" << std::endl;
return SD_NOT_MOUNTED;
}
}
return returnvalue::OK;
}
ReturnValue_t FilesystemHelper::fileExists(std::string file) {
if (not std::filesystem::exists(file)) {
return FILE_NOT_EXISTS;
}
return returnvalue::OK;
}

View File

@ -0,0 +1,49 @@
#ifndef BSP_Q7S_MEMORY_FILESYSTEMHELPER_H_
#define BSP_Q7S_MEMORY_FILESYSTEMHELPER_H_
#include <string>
#include "eive/resultClassIds.h"
#include "fsfw/returnvalues/returnvalue.h"
/**
* @brief This class implements often used functions related to the file system management.
*
* @author J. Meier
*/
class FilesystemHelper {
public:
static const uint8_t INTERFACE_ID = CLASS_ID::FILE_SYSTEM_HELPER;
//! [EXPORT] : [COMMENT] SD card specified with path string not mounted
static const ReturnValue_t SD_NOT_MOUNTED = MAKE_RETURN_CODE(0xA0);
//! [EXPORT] : [COMMENT] Specified file does not exist on filesystem
static const ReturnValue_t FILE_NOT_EXISTS = MAKE_RETURN_CODE(0xA1);
/**
* @brief In case the path points to a directory on the sd card, the function checks if the
* appropriate SD card is mounted.
*
* @param path Path to check
*
* @return returnvalue::OK if path points to SD card and the appropriate SD card is mounted or if
* path does not point to SD card.
* Return error code if path points to SD card and the corresponding SD card is not
* mounted.
*/
static ReturnValue_t checkPath(std::string path);
/**
* @brief Checks if the file exists on the filesystem.
*
* @param file File to check
*
* @return returnvalue::OK if file exists, otherwise return error code.
*/
static ReturnValue_t fileExists(std::string file);
private:
FilesystemHelper();
};
#endif /* BSP_Q7S_MEMORY_FILESYSTEMHELPER_H_ */

View File

@ -1,6 +1,5 @@
#include "SdCardManager.h"
#include "OBSWConfig.h"
#include <fsfw/ipc/MutexGuard.h>
#include <fsfw/timemanager/Countdown.h>
#include <unistd.h>
@ -10,34 +9,63 @@
#include <fstream>
#include <memory>
#include "common/config/commonObjects.h"
#include "OBSWConfig.h"
#include "bsp_q7s/memory/scratchApi.h"
#include "eive/definitions.h"
#include "eive/objects.h"
#include "fsfw/ipc/MutexFactory.h"
#include "fsfw/serviceinterface/ServiceInterface.h"
#include "linux/utility/utility.h"
#include "scratchApi.h"
SdCardManager* SdCardManager::factoryInstance = nullptr;
SdCardManager* SdCardManager::INSTANCE = nullptr;
SdCardManager::SdCardManager() : SystemObject(objects::SDC_MANAGER), cmdExecutor(256) {
mutex = MutexFactory::instance()->createMutex();
ReturnValue_t result = mutex->lockMutex();
if (result != returnvalue::OK) {
sif::error << "SdCardManager::SdCardManager: Mutex lock failed" << std::endl;
}
uint8_t prefSdRaw = 0;
result = scratch::readNumber(scratch::PREFERED_SDC_KEY, prefSdRaw);
if (mutex->unlockMutex() != returnvalue::OK) {
sif::error << "SdCardManager::SdCardManager: Mutex unlock failed" << std::endl;
}
if (result != returnvalue::OK) {
if (result == scratch::KEY_NOT_FOUND) {
sif::warning << "CoreController::sdCardInit: "
"Preferred SD card not set. Setting to 0"
<< std::endl;
setPreferredSdCard(sd::SdCard::SLOT_0);
sdInfo.pref = sd::SdCard::SLOT_0;
} else {
// Should not happen.
// TODO: Maybe trigger event?
sif::error << "SdCardManager::SdCardManager: Reading preferred SD card from scratch"
"buffer failed"
<< std::endl;
sdInfo.pref = sd::SdCard::SLOT_0;
}
}
sdInfo.pref = static_cast<sd::SdCard>(prefSdRaw);
}
SdCardManager::~SdCardManager() {}
void SdCardManager::create() {
if (factoryInstance == nullptr) {
factoryInstance = new SdCardManager();
if (INSTANCE == nullptr) {
INSTANCE = new SdCardManager();
}
}
SdCardManager* SdCardManager::instance() {
SdCardManager::create();
return SdCardManager::factoryInstance;
return SdCardManager::INSTANCE;
}
ReturnValue_t SdCardManager::switchOnSdCard(sd::SdCard sdCard, bool doMountSdCard,
SdStatePair* statusPair) {
ReturnValue_t result = HasReturnvaluesIF::RETURN_OK;
ReturnValue_t result = returnvalue::OK;
if (doMountSdCard) {
if (not blocking) {
sif::warning << "SdCardManager::switchOnSdCard: Two-step command but manager is"
@ -51,8 +79,8 @@ ReturnValue_t SdCardManager::switchOnSdCard(sd::SdCard sdCard, bool doMountSdCar
if (statusPair == nullptr) {
sdStatusPtr = std::make_unique<SdStatePair>();
statusPair = sdStatusPtr.get();
result = getSdCardActiveStatus(*statusPair);
if (result != HasReturnvaluesIF::RETURN_OK) {
result = getSdCardsStatus(*statusPair);
if (result != returnvalue::OK) {
return result;
}
}
@ -61,7 +89,7 @@ ReturnValue_t SdCardManager::switchOnSdCard(sd::SdCard sdCard, bool doMountSdCar
if (sdCard == sd::SdCard::BOTH) {
sif::warning << "SdCardManager::switchOffSdCard: API does not allow sd::SdStatus::BOTH"
<< std::endl;
return HasReturnvaluesIF::RETURN_FAILED;
return returnvalue::FAILED;
}
sd::SdState currentState;
@ -85,10 +113,10 @@ ReturnValue_t SdCardManager::switchOnSdCard(sd::SdCard sdCard, bool doMountSdCar
} else if (currentState == sd::SdState::OFF) {
result = setSdCardState(sdCard, true);
} else {
result = HasReturnvaluesIF::RETURN_FAILED;
result = returnvalue::FAILED;
}
if (result != HasReturnvaluesIF::RETURN_OK or not doMountSdCard) {
if (result != returnvalue::OK or not doMountSdCard) {
return result;
}
@ -98,8 +126,8 @@ ReturnValue_t SdCardManager::switchOnSdCard(sd::SdCard sdCard, bool doMountSdCar
ReturnValue_t SdCardManager::switchOffSdCard(sd::SdCard sdCard, bool doUnmountSdCard,
SdStatePair* statusPair) {
std::pair<sd::SdState, sd::SdState> active;
ReturnValue_t result = getSdCardActiveStatus(active);
if (result != HasReturnvaluesIF::RETURN_OK) {
ReturnValue_t result = getSdCardsStatus(active);
if (result != returnvalue::OK) {
return result;
}
if (doUnmountSdCard) {
@ -114,7 +142,7 @@ ReturnValue_t SdCardManager::switchOffSdCard(sd::SdCard sdCard, bool doUnmountSd
if (sdCard == sd::SdCard::BOTH) {
sif::warning << "SdCardManager::switchOffSdCard: API does not allow sd::SdStatus::BOTH"
<< std::endl;
return HasReturnvaluesIF::RETURN_FAILED;
return returnvalue::FAILED;
}
if (sdCard == sd::SdCard::SLOT_0) {
if (active.first == sd::SdState::OFF) {
@ -128,7 +156,7 @@ ReturnValue_t SdCardManager::switchOffSdCard(sd::SdCard sdCard, bool doUnmountSd
if (doUnmountSdCard) {
result = unmountSdCard(sdCard);
if (result != HasReturnvaluesIF::RETURN_OK) {
if (result != returnvalue::OK) {
return result;
}
}
@ -159,13 +187,13 @@ 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 != HasReturnvaluesIF::RETURN_OK) {
if (blocking and result != returnvalue::OK) {
utility::handleSystemError(cmdExecutor.getLastError(), "SdCardManager::setSdCardState");
}
return result;
}
ReturnValue_t SdCardManager::getSdCardActiveStatus(SdStatePair& active) {
ReturnValue_t SdCardManager::getSdCardsStatus(SdStatePair& active) {
using namespace std;
MutexGuard mg(mutex);
if (not filesystem::exists(SD_STATE_FILE)) {
@ -184,7 +212,10 @@ ReturnValue_t SdCardManager::getSdCardActiveStatus(SdStatePair& active) {
while (std::getline(sdStatus, line)) {
processSdStatusLine(active, line, idx, currentSd);
}
return HasReturnvaluesIF::RETURN_OK;
if (active.first != sd::SdState::MOUNTED && active.second != sd::SdState::MOUNTED) {
sdCardActive = false;
}
return returnvalue::OK;
}
ReturnValue_t SdCardManager::mountSdCard(sd::SdCard sdCard) {
@ -195,16 +226,16 @@ ReturnValue_t SdCardManager::mountSdCard(sd::SdCard sdCard) {
if (sdCard == sd::SdCard::BOTH) {
sif::warning << "SdCardManager::mountSdCard: API does not allow sd::SdStatus::BOTH"
<< std::endl;
return HasReturnvaluesIF::RETURN_FAILED;
return returnvalue::FAILED;
}
string mountDev;
string mountPoint;
if (sdCard == sd::SdCard::SLOT_0) {
mountDev = SD_0_DEV_NAME;
mountPoint = SD_0_MOUNT_POINT;
mountPoint = config::SD_0_MOUNT_POINT;
} else if (sdCard == sd::SdCard::SLOT_1) {
mountDev = SD_1_DEV_NAME;
mountPoint = SD_1_MOUNT_POINT;
mountPoint = config::SD_1_MOUNT_POINT;
}
if (not filesystem::exists(mountDev)) {
sif::warning << "SdCardManager::mountSdCard: Device file does not exists. Make sure to"
@ -219,7 +250,7 @@ ReturnValue_t SdCardManager::mountSdCard(sd::SdCard sdCard) {
string sdMountCommand = "mount " + mountDev + " " + mountPoint;
cmdExecutor.load(sdMountCommand, blocking, printCmdOutput);
ReturnValue_t result = cmdExecutor.execute();
if (blocking and result != HasReturnvaluesIF::RETURN_OK) {
if (blocking and result != returnvalue::OK) {
utility::handleSystemError(cmdExecutor.getLastError(), "SdCardManager::mountSdCard");
}
return result;
@ -233,13 +264,13 @@ ReturnValue_t SdCardManager::unmountSdCard(sd::SdCard sdCard) {
if (sdCard == sd::SdCard::BOTH) {
sif::warning << "SdCardManager::unmountSdCard: API does not allow sd::SdStatus::BOTH"
<< std::endl;
return HasReturnvaluesIF::RETURN_FAILED;
return returnvalue::FAILED;
}
string mountPoint;
if (sdCard == sd::SdCard::SLOT_0) {
mountPoint = SD_0_MOUNT_POINT;
mountPoint = config::SD_0_MOUNT_POINT;
} else if (sdCard == sd::SdCard::SLOT_1) {
mountPoint = SD_1_MOUNT_POINT;
mountPoint = config::SD_1_MOUNT_POINT;
}
if (not filesystem::exists(mountPoint)) {
sif::error << "SdCardManager::unmountSdCard: Default mount point " << mountPoint
@ -257,7 +288,7 @@ ReturnValue_t SdCardManager::unmountSdCard(sd::SdCard sdCard) {
}
cmdExecutor.load(sdUnmountCommand, blocking, printCmdOutput);
ReturnValue_t result = cmdExecutor.execute();
if (blocking and result != HasReturnvaluesIF::RETURN_OK) {
if (blocking and result != returnvalue::OK) {
utility::handleSystemError(cmdExecutor.getLastError(), "SdCardManager::unmountSdCard");
}
return result;
@ -265,22 +296,17 @@ ReturnValue_t SdCardManager::unmountSdCard(sd::SdCard sdCard) {
ReturnValue_t SdCardManager::sanitizeState(SdStatePair* statusPair, sd::SdCard prefSdCard) {
std::unique_ptr<SdStatePair> sdStatusPtr;
ReturnValue_t result = HasReturnvaluesIF::RETURN_OK;
ReturnValue_t result = returnvalue::OK;
// Enforce blocking operation for now. Be careful to reset it when returning prematurely!
bool resetNonBlockingState = false;
if (not this->blocking) {
blocking = true;
resetNonBlockingState = true;
}
if (prefSdCard == sd::SdCard::NONE) {
result = getPreferredSdCard(prefSdCard);
if (result != HasReturnvaluesIF::RETURN_OK) {
}
}
if (statusPair == nullptr) {
sdStatusPtr = std::make_unique<SdStatePair>();
statusPair = sdStatusPtr.get();
getSdCardActiveStatus(*statusPair);
getSdCardsStatus(*statusPair);
}
if (statusPair->first == sd::SdState::ON) {
@ -351,20 +377,21 @@ void SdCardManager::processSdStatusLine(std::pair<sd::SdState, sd::SdState>& act
idx++;
}
ReturnValue_t SdCardManager::getPreferredSdCard(sd::SdCard& sdCard) const {
uint8_t prefSdCard = 0;
ReturnValue_t result = scratch::readNumber(scratch::PREFERED_SDC_KEY, prefSdCard);
if (result != HasReturnvaluesIF::RETURN_OK) {
return result;
std::optional<sd::SdCard> SdCardManager::getPreferredSdCard() const {
MutexGuard mg(mutex);
auto res = mg.getLockResult();
if (res != returnvalue::OK) {
sif::error << "SdCardManager::getPreferredSdCard: Lock error" << std::endl;
}
sdCard = static_cast<sd::SdCard>(prefSdCard);
return HasReturnvaluesIF::RETURN_OK;
return sdInfo.pref;
}
ReturnValue_t SdCardManager::setPreferredSdCard(sd::SdCard sdCard) {
MutexGuard mg(mutex);
if (sdCard == sd::SdCard::BOTH) {
return HasReturnvaluesIF::RETURN_FAILED;
return returnvalue::FAILED;
}
sdInfo.pref = sdCard;
return scratch::writeNumber(scratch::PREFERED_SDC_KEY, static_cast<uint8_t>(sdCard));
}
@ -377,24 +404,15 @@ ReturnValue_t SdCardManager::updateSdCardStateFile() {
std::string updateCmd = "q7hw sd info all > " + std::string(SD_STATE_FILE);
cmdExecutor.load(updateCmd, blocking, printCmdOutput);
ReturnValue_t result = cmdExecutor.execute();
if (blocking and result != HasReturnvaluesIF::RETURN_OK) {
if (blocking and result != returnvalue::OK) {
utility::handleSystemError(cmdExecutor.getLastError(), "SdCardManager::mountSdCard");
}
return result;
}
std::string SdCardManager::getCurrentMountPrefix(sd::SdCard prefSdCard) {
if (prefSdCard == sd::SdCard::NONE) {
ReturnValue_t result = getPreferredSdCard(prefSdCard);
if (result != HasReturnvaluesIF::RETURN_OK) {
return SD_0_MOUNT_POINT;
}
}
if (prefSdCard == sd::SdCard::SLOT_0) {
return SD_0_MOUNT_POINT;
} else {
return SD_1_MOUNT_POINT;
}
const std::string& SdCardManager::getCurrentMountPrefix() const {
MutexGuard mg(mutex);
return currentPrefix;
}
SdCardManager::OpStatus SdCardManager::checkCurrentOp(Operations& currentOp) {
@ -424,10 +442,10 @@ SdCardManager::OpStatus SdCardManager::checkCurrentOp(Operations& currentOp) {
case (CommandExecutor::EXECUTION_FINISHED): {
return OpStatus::SUCCESS;
}
case (HasReturnvaluesIF::RETURN_OK): {
case (returnvalue::OK): {
return OpStatus::ONGOING;
}
case (HasReturnvaluesIF::RETURN_FAILED): {
case (returnvalue::FAILED): {
return OpStatus::FAIL;
}
default: {
@ -441,28 +459,131 @@ void SdCardManager::setBlocking(bool blocking) { this->blocking = blocking; }
void SdCardManager::setPrintCommandOutput(bool print) { this->printCmdOutput = print; }
bool SdCardManager::isSdCardMounted(sd::SdCard sdCard) {
SdCardManager::SdStatePair active;
ReturnValue_t result = this->getSdCardActiveStatus(active);
bool SdCardManager::isSdCardUsable(std::optional<sd::SdCard> sdCard) {
{
MutexGuard mg(mutex);
if (markedUnusable) {
return false;
}
}
if (result != HasReturnvaluesIF::RETURN_OK) {
SdCardManager::SdStatePair active;
ReturnValue_t result = this->getSdCardsStatus(active);
if (result != returnvalue::OK) {
sif::debug << "SdCardManager::isSdCardMounted: Failed to get SD card active state";
return false;
}
if (not sdCard) {
if (active.first == sd::MOUNTED or active.second == sd::MOUNTED) {
return true;
}
return false;
}
if (sdCard == sd::SLOT_0) {
if (active.first == sd::MOUNTED) {
return true;
} else {
return false;
}
} else if (sdCard == sd::SLOT_1) {
}
if (sdCard == sd::SLOT_1) {
if (active.second == sd::MOUNTED) {
return true;
} else {
return false;
}
} else {
sif::debug << "SdCardManager::isSdCardMounted: Unknown SD card specified" << std::endl;
}
if (sdCard == sd::BOTH) {
if (active.first == sd::MOUNTED && active.second == sd::MOUNTED) {
return true;
}
}
return false;
}
ReturnValue_t SdCardManager::isSdCardMountedReadOnly(sd::SdCard sdcard, bool& readOnly) {
std::ostringstream command;
if (sdcard == sd::SdCard::SLOT_0) {
command << "grep -q '" << config::SD_0_MOUNT_POINT << " vfat ro,' /proc/mounts";
} else if (sdcard == sd::SdCard::SLOT_1) {
command << "grep -q '" << config::SD_1_MOUNT_POINT << " vfat ro,' /proc/mounts";
} else {
return returnvalue::FAILED;
}
ReturnValue_t result = cmdExecutor.load(command.str(), true, false);
if (result != returnvalue::OK) {
return result;
}
result = cmdExecutor.execute();
if (result != returnvalue::OK) {
int exitStatus = cmdExecutor.getLastError();
if (exitStatus == 1) {
readOnly = false;
return returnvalue::OK;
}
return result;
}
auto& readVec = cmdExecutor.getReadVector();
size_t readLen = strnlen(readVec.data(), readVec.size());
if (readLen == 0) {
readOnly = false;
}
readOnly = true;
return returnvalue::OK;
}
ReturnValue_t SdCardManager::remountReadWrite(sd::SdCard sdcard) {
std::ostringstream command;
if (sdcard == sd::SdCard::SLOT_0) {
command << "mount -o remount,rw " << SD_0_DEV_NAME << " " << config::SD_0_MOUNT_POINT;
} else {
command << "mount -o remount,rw " << SD_1_DEV_NAME << " " << config::SD_1_MOUNT_POINT;
}
ReturnValue_t result = cmdExecutor.load(command.str(), true, false);
if (result != returnvalue::OK) {
return result;
}
return cmdExecutor.execute();
}
ReturnValue_t SdCardManager::performFsck(sd::SdCard sdcard, bool printOutput, int& linuxError) {
std::ostringstream command;
if (sdcard == sd::SdCard::SLOT_0) {
command << "fsck -y " << SD_0_DEV_NAME;
} else {
command << "fsck -y " << SD_1_DEV_NAME;
}
ReturnValue_t result = cmdExecutor.load(command.str(), true, printOutput);
if (result != returnvalue::OK) {
return result;
}
result = cmdExecutor.execute();
if (result != returnvalue::OK) {
linuxError = cmdExecutor.getLastError();
}
return result;
}
void SdCardManager::setActiveSdCard(sd::SdCard sdCard) {
MutexGuard mg(mutex);
sdInfo.active = sdCard;
if (sdInfo.active == sd::SdCard::SLOT_0) {
currentPrefix = config::SD_0_MOUNT_POINT;
} else {
currentPrefix = config::SD_1_MOUNT_POINT;
}
}
std::optional<sd::SdCard> SdCardManager::getActiveSdCard() const {
MutexGuard mg(mutex);
if (markedUnusable) {
return std::nullopt;
}
return sdInfo.active;
}
void SdCardManager::markUnusable() {
MutexGuard mg(mutex);
markedUnusable = true;
}

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