Request MGM measurement twice #453

Merged
meggert merged 4 commits from smaller_tweaks into develop 2023-03-10 11:18:39 +01:00
4 changed files with 16 additions and 1 deletions

View File

@ -20,6 +20,11 @@ will consitute of a breaking change warranting a new major release:
- Fix for heater names: HPA heater (index 7) is now the Syrlinks heater.
## Changed
- Request raw MTM measurement twice for IMTQ, might reduce number of times measurement could not
be retrieved.
# [v1.36.0] 2023-03-08
eive-tmtc: v2.17.2

View File

@ -235,7 +235,6 @@ void scheduling::initTasks() {
PeriodicTaskIF* acsSysTask = factory->createPeriodicTask(
"ACS_SYS_TASK", 55, PeriodicTaskIF::MINIMUM_STACK_SIZE * 2, 0.4, missedDeadlineFunc);
static_cast<void>(acsSysTask);
result = acsSysTask->addComponent(objects::ACS_SUBSYSTEM);
if (result != returnvalue::OK) {
scheduling::printAddObjectError("ACS_SUBSYSTEM", objects::ACS_SUBSYSTEM);

View File

@ -120,6 +120,11 @@ void ImtqPollingTask::handleMeasureStep() {
}
}
// The I2C IP core on EIVE sometimes glitches out. Send start MTM measurement twice.
cmdBuf[0] = imtq::CC::START_MTM_MEASUREMENT;
if (i2cCmdExecMeasure(imtq::CC::START_MTM_MEASUREMENT) != returnvalue::OK) {
return;
}
cmdBuf[0] = imtq::CC::START_MTM_MEASUREMENT;
if (i2cCmdExecMeasure(imtq::CC::START_MTM_MEASUREMENT) != returnvalue::OK) {
return;
@ -177,6 +182,11 @@ void ImtqPollingTask::handleActuateStep() {
TaskFactory::delayTask(10);
cmdLen = 1;
// The I2C IP core on EIVE sometimes glitches out. Send start MTM measurement twice.
cmdBuf[0] = imtq::CC::START_MTM_MEASUREMENT;
if (i2cCmdExecActuate(imtq::CC::START_MTM_MEASUREMENT) != returnvalue::OK) {
return;
}
cmdBuf[0] = imtq::CC::START_MTM_MEASUREMENT;
if (i2cCmdExecActuate(imtq::CC::START_MTM_MEASUREMENT) != returnvalue::OK) {
return;

View File

@ -56,6 +56,7 @@ ReturnValue_t AcsSubsystem::initialize() {
}
void AcsSubsystem::performChildOperation() {
// sif::debug << "ACS system thread running" << std::endl;
handleEventMessages();
return Subsystem::performChildOperation();
}