From 43cca9ed0c408e7dacd76f31f7c763edd4c7f282 Mon Sep 17 00:00:00 2001 From: Robin Mueller Date: Wed, 14 Feb 2024 10:36:53 +0100 Subject: [PATCH] PSB update --- CHANGELOG.md | 5 +++++ fsfw | 2 +- mission/genericFactory.cpp | 26 ++++++++++++++++++-------- 3 files changed, 24 insertions(+), 9 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0705dae2..4710538c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -24,6 +24,11 @@ will consitute of a breaking change warranting a new major release: - Bugfix in PLOC SUPV latchup report parsing. - Bugfix in PLOC MPSoC HK set: Set and variables were not set valid. +## Changed + +- Increased message queue depth and maximum number of handled messages per cycle for + `PusServiceBase` based classes (especially PUS scheduler). + # [v7.6.1] 2024-02-05 ## Changed diff --git a/fsfw b/fsfw index b5e7179a..cd2cd61b 160000 --- a/fsfw +++ b/fsfw @@ -1 +1 @@ -Subproject commit b5e7179af1da085b9be598b4897f2664012781af +Subproject commit cd2cd61ba575603f53178d649a3fe344ddbcaa55 diff --git a/mission/genericFactory.cpp b/mission/genericFactory.cpp index 47cb1a5f..daaf59cc 100644 --- a/mission/genericFactory.cpp +++ b/mission/genericFactory.cpp @@ -250,20 +250,30 @@ void ObjectFactory::produceGenericObjects(HealthTableIF** healthTable_, PusTmFun pus::PUS_SERVICE_2, 3, 10); new Service3Housekeeping(objects::PUS_SERVICE_3_HOUSEKEEPING, config::EIVE_PUS_APID, pus::PUS_SERVICE_3, config::HK_SERVICE_QUEUE_DEPTH, 16); - new Service5EventReporting( - PsbParams(objects::PUS_SERVICE_5_EVENT_REPORTING, config::EIVE_PUS_APID, pus::PUS_SERVICE_5), - 80, 160); + + auto psbParamsService5 = + PsbParams(objects::PUS_SERVICE_5_EVENT_REPORTING, config::EIVE_PUS_APID, pus::PUS_SERVICE_5); + psbParamsService5.requestQueueDepth = 50; + psbParamsService5.maxPacketsPerCycle = 50; + new Service5EventReporting(psbParamsService5, 80, 160); new Service8FunctionManagement(objects::PUS_SERVICE_8_FUNCTION_MGMT, config::EIVE_PUS_APID, pus::PUS_SERVICE_8, config::ACTION_SERVICE_QUEUE_DEPTH, 16, 60); new Service9TimeManagement( PsbParams(objects::PUS_SERVICE_9_TIME_MGMT, config::EIVE_PUS_APID, pus::PUS_SERVICE_9)); - new Service11TelecommandScheduling( - PsbParams(objects::PUS_SERVICE_11_TC_SCHEDULER, config::EIVE_PUS_APID, pus::PUS_SERVICE_11), - ccsdsDistrib); + auto psbParamsService11 = + PsbParams(objects::PUS_SERVICE_11_TC_SCHEDULER, config::EIVE_PUS_APID, pus::PUS_SERVICE_11); + psbParamsService11.requestQueueDepth = 100; + psbParamsService11.maxPacketsPerCycle = 100; + new Service11TelecommandScheduling(psbParamsService11, + ccsdsDistrib); + new Service15TmStorage(objects::PUS_SERVICE_15_TM_STORAGE, config::EIVE_PUS_APID, 10); - new Service17Test( - PsbParams(objects::PUS_SERVICE_17_TEST, config::EIVE_PUS_APID, pus::PUS_SERVICE_17)); + auto psbParamsService17 = + PsbParams(objects::PUS_SERVICE_17_TEST, config::EIVE_PUS_APID, pus::PUS_SERVICE_17); + psbParamsService17.requestQueueDepth = 50; + psbParamsService17.maxPacketsPerCycle = 50; + new Service17Test(psbParamsService17); new Service20ParameterManagement(objects::PUS_SERVICE_20_PARAMETERS, config::EIVE_PUS_APID, pus::PUS_SERVICE_20); new CService200ModeCommanding(objects::PUS_SERVICE_200_MODE_MGMT, config::EIVE_PUS_APID,