diff --git a/CHANGELOG.md b/CHANGELOG.md index d2981d89..fe42fb59 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -43,6 +43,11 @@ will consitute of a breaking change warranting a new major release: - Custom FDIR for TMP1075 sensors. The device handlers reject `NEEDS_RECOVERY` health commands anyway, so it does not really make sense to use the default FDIR. - Reject `NEEDS_RECOVERY` health commands for the heater health devices. +- Adapted some queue sizes so that EM startup works without queue errors + - Event Manager: 120 -> 160 + - UDP TMTC Bridge: 50 -> 120 + - TCP TMTC Bridge: 50 -> 120 + - Service 5: 120 -> 160, number of events handled in one cycle increased to 80 ## Added diff --git a/dummies/ImtqDummy.cpp b/dummies/ImtqDummy.cpp index fc99d321..b2f61bb3 100644 --- a/dummies/ImtqDummy.cpp +++ b/dummies/ImtqDummy.cpp @@ -43,5 +43,7 @@ ReturnValue_t ImtqDummy::initializeLocalDataPool(localpool::DataPool &localDataP localDataPoolMap.emplace(imtq::ACTUATION_CAL_STATUS, new PoolEntry({0})); localDataPoolMap.emplace(imtq::MTM_RAW, new PoolEntry({0.12, 0.76, -0.45}, true)); localDataPoolMap.emplace(imtq::ACTUATION_RAW_STATUS, new PoolEntry({0})); + localDataPoolMap.emplace(imtq::DIPOLES_ID, new PoolEntry({0, 0, 0})); + localDataPoolMap.emplace(imtq::CURRENT_TORQUE_DURATION, new PoolEntry({0})); return DeviceHandlerBase::initializeLocalDataPool(localDataPoolMap, poolManager); } diff --git a/dummies/StarTrackerDummy.cpp b/dummies/StarTrackerDummy.cpp index 4ee26c7d..6e21b762 100644 --- a/dummies/StarTrackerDummy.cpp +++ b/dummies/StarTrackerDummy.cpp @@ -64,7 +64,7 @@ ReturnValue_t StarTrackerDummy::initializeLocalDataPool(localpool::DataPool &loc localDataPoolMap.emplace(startracker::LISA_NR_CLOSE, new PoolEntry({0})); localDataPoolMap.emplace(startracker::TRUST_WORTHY, new PoolEntry({0})); localDataPoolMap.emplace(startracker::STABLE_COUNT, new PoolEntry({0})); - localDataPoolMap.emplace(startracker::STR_MODE, new PoolEntry({0})); + localDataPoolMap.emplace(startracker::STR_MODE, new PoolEntry({0})); localDataPoolMap.emplace(startracker::SOLUTION_STRATEGY, new PoolEntry({0})); return returnvalue::OK; } diff --git a/dummies/TemperatureSensorInserter.cpp b/dummies/TemperatureSensorInserter.cpp index b6f46fb8..cfba0ef9 100644 --- a/dummies/TemperatureSensorInserter.cpp +++ b/dummies/TemperatureSensorInserter.cpp @@ -15,7 +15,7 @@ TemperatureSensorInserter::TemperatureSensorInserter(object_id_t objectId, tmp1075DummyMap(std::move(tempTmpSensorDummies_)) {} ReturnValue_t TemperatureSensorInserter::initialize() { - testCase = TestCase::COLD_STR_CONSECUTIVE; + testCase = TestCase::NONE; return returnvalue::OK; } diff --git a/mission/genericFactory.cpp b/mission/genericFactory.cpp index 08d14f45..06f1220e 100644 --- a/mission/genericFactory.cpp +++ b/mission/genericFactory.cpp @@ -98,7 +98,7 @@ void ObjectFactory::produceGenericObjects(HealthTableIF** healthTable_, PusTmFun StorageManagerIF** ipcStore, StorageManagerIF** tmStore, PersistentTmStores& stores) { // Framework objects - new EventManager(objects::EVENT_MANAGER, 120); + new EventManager(objects::EVENT_MANAGER, 160); auto healthTable = new HealthTable(objects::HEALTH_TABLE); if (healthTable_ != nullptr) { *healthTable_ = healthTable; @@ -131,7 +131,7 @@ void ObjectFactory::produceGenericObjects(HealthTableIF** healthTable_, PusTmFun #if OBSW_ADD_TCPIP_SERVERS == 1 #if OBSW_ADD_TMTC_UDP_SERVER == 1 auto udpBridge = - new UdpTmTcBridge(objects::UDP_TMTC_SERVER, objects::CCSDS_PACKET_DISTRIBUTOR, 50); + new UdpTmTcBridge(objects::UDP_TMTC_SERVER, objects::CCSDS_PACKET_DISTRIBUTOR, 120); new UdpTcPollingTask(objects::UDP_TMTC_POLLING_TASK, objects::UDP_TMTC_SERVER); sif::info << "Created UDP server for TMTC commanding with listener port " << udpBridge->getUdpPort() << std::endl; @@ -139,7 +139,7 @@ void ObjectFactory::produceGenericObjects(HealthTableIF** healthTable_, PusTmFun #endif #if OBSW_ADD_TMTC_TCP_SERVER == 1 auto tcpBridge = - new TcpTmTcBridge(objects::TCP_TMTC_SERVER, objects::CCSDS_PACKET_DISTRIBUTOR, 50); + new TcpTmTcBridge(objects::TCP_TMTC_SERVER, objects::CCSDS_PACKET_DISTRIBUTOR, 120); TcpTmTcServer::TcpConfig cfg(true, true); auto tcpServer = new TcpTmTcServer(objects::TCP_TMTC_POLLING_TASK, objects::TCP_TMTC_SERVER, cfg); // TCP is stream based. Use packet ID as start marker when parsing for space packets @@ -240,7 +240,7 @@ void ObjectFactory::produceGenericObjects(HealthTableIF** healthTable_, PusTmFun pus::PUS_SERVICE_3, config::HK_SERVICE_QUEUE_DEPTH); new Service5EventReporting( PsbParams(objects::PUS_SERVICE_5_EVENT_REPORTING, config::EIVE_PUS_APID, pus::PUS_SERVICE_5), - 40, 120); + 80, 160); new Service8FunctionManagement(objects::PUS_SERVICE_8_FUNCTION_MGMT, config::EIVE_PUS_APID, pus::PUS_SERVICE_8, 16, 60); new Service9TimeManagement( diff --git a/mission/tmtc/PusLiveDemux.cpp b/mission/tmtc/PusLiveDemux.cpp index d8ae1126..bbe1be4f 100644 --- a/mission/tmtc/PusLiveDemux.cpp +++ b/mission/tmtc/PusLiveDemux.cpp @@ -33,6 +33,7 @@ ReturnValue_t PusLiveDemux::demultiplexPackets(StorageManagerIF& tmStore, if (result != returnvalue::OK) { #if FSFW_CPP_OSTREAM_ENABLED == 1 sif::error << "PusLiveDemux::handlePacket: Error sending TM to downlink handler " << dest.name + << ", failed with code 0x" << std::hex << std::setw(4) << result << std::dec << std::endl; #endif tmStore.deleteData(message.getStorageId());