From 8c80e9f7c039ef5476b7865109d41c930d86afe2 Mon Sep 17 00:00:00 2001 From: mmode Date: Tue, 14 Sep 2021 13:16:26 +0200 Subject: [PATCH] Errors fixed. --- bsp_linux/core/InitMission.cpp | 4 +- fsfw/devicehandlers/DeviceHandlerBase.cpp | 12 ++++- mission/DeviceHandler/ArduinoComIF.cpp | 1 + .../DeviceHandler/ArduinoDeviceHandler.cpp | 49 ++++++++++--------- 4 files changed, 39 insertions(+), 27 deletions(-) diff --git a/bsp_linux/core/InitMission.cpp b/bsp_linux/core/InitMission.cpp index 2656103..dfc1c17 100644 --- a/bsp_linux/core/InitMission.cpp +++ b/bsp_linux/core/InitMission.cpp @@ -120,7 +120,7 @@ void InitMission::createTasks(){ PeriodicTaskIF* controllerTask = TaskFactory::instance()-> createPeriodicTask("CONTROLLER_TASK",40, - PeriodicTaskIF::MINIMUM_STACK_SIZE, 1, nullptr); + PeriodicTaskIF::MINIMUM_STACK_SIZE, 2, nullptr); //result = pollingSequenceControllerFunction(controllerTask); result = controllerTask->addComponent(objects::THERMAL_CONTROLLER); if(result != HasReturnvaluesIF::RETURN_OK) { @@ -156,7 +156,7 @@ void InitMission::createTasks(){ udpBridgeTask->startTask(); udpPollingTask->startTask(); //serializeTask->startTask(); - //arduinoTask->startTask(); + arduinoTask->startTask(); controllerTask->startTask(); //payloadTask->startTask(); diff --git a/fsfw/devicehandlers/DeviceHandlerBase.cpp b/fsfw/devicehandlers/DeviceHandlerBase.cpp index 0199eb5..2bc62d2 100644 --- a/fsfw/devicehandlers/DeviceHandlerBase.cpp +++ b/fsfw/devicehandlers/DeviceHandlerBase.cpp @@ -67,6 +67,7 @@ ReturnValue_t DeviceHandlerBase::performOperation(uint8_t counter) { this->pstStep = counter; if (getComAction() == SEND_WRITE) { + sif::debug<<" DH_base: performOp1"< foundLen) { remainingLength -= foundLen; + sif::debug<<" DH_base: debug3"<Serial_port_number); return RETURN_OK; } diff --git a/mission/DeviceHandler/ArduinoDeviceHandler.cpp b/mission/DeviceHandler/ArduinoDeviceHandler.cpp index 9b623e4..45c9c63 100644 --- a/mission/DeviceHandler/ArduinoDeviceHandler.cpp +++ b/mission/DeviceHandler/ArduinoDeviceHandler.cpp @@ -52,7 +52,7 @@ void ArduinoDH::doTransition(Mode_t modeFrom, Submode_t submodeFrom) { if (mode == _MODE_TO_NORMAL) { std::cout<<"Arduino device -> Transition to Normal mode"< TempValueVec(datapool::Temperature_value, &ArduinoDataSet, PoolVariableIF::VAR_WRITE); for (int i = 0; i < 36; i++) { - memcpy(&TempValueVec[i], &vecTemp[27 * i + 11], 4); + memcpy(&TempValueVec[i], &vecTemp[i].temperature, 4); } ArduinoDataSet.commit(PoolVariableIF::VALID); - /* - PoolVector TempTimeVec(datapool::Temperature_Timestamp, &ArduinoDataSet, PoolVariableIF::VAR_WRITE); + + /*PoolVector TempTimeVec(datapool::Temperature_Timestamp, &ArduinoDataSet, PoolVariableIF::VAR_WRITE); for (int i = 0; i < 36; i++) { - memcpy(&TempTimeVec[i], &vecTemp[27 * i + 15], 4); + memcpy(&TempTimeVec[i], &vecTemp[i].Timestamp, 4); } ArduinoDataSet.commit(PoolVariableIF::VALID); @@ -285,13 +289,13 @@ ReturnValue_t ArduinoDH::interpretDeviceReply(DeviceCommandId_t id, PoolVector EnvValueVec(datapool::Environmental_value, &ArduinoDataSet, PoolVariableIF::VAR_WRITE); for (int j = 0; j < 9; j++) { - memcpy(&EnvValueVec[j], &vecEnv[27 * (36 + j) + 11], 4); + memcpy(&EnvValueVec[j], &vecEnv[j].Value, 4); } ArduinoDataSet.commit(PoolVariableIF::VALID); PoolVector EnvTimeVec(datapool::Environmental_Timestamp, &ArduinoDataSet, PoolVariableIF::VAR_WRITE); for (int j = 0; j < 9; j++) { - memcpy(&EnvTimeVec[j], &vecEnv[27 * (36 + j) + 15], 4); + memcpy(&EnvTimeVec[j], &vecEnv[j].Timestamp, 4); } ArduinoDataSet.commit(PoolVariableIF::VALID); @@ -299,19 +303,18 @@ ReturnValue_t ArduinoDH::interpretDeviceReply(DeviceCommandId_t id, PoolVector AccValueVec(datapool::Accelerometer_value, &ArduinoDataSet, PoolVariableIF::VAR_WRITE); for (int k = 0; k < 15; k++) { - memcpy(&AccValueVec[k], &vecAcc[27 * (36 + 9) + 91 * k + 11], 36); - sif::debug<<"\nDEBUG_DHk1: End of copy to datapool"< AccTimeVec(datapool::Accelerometer_Timestamp, &ArduinoDataSet, PoolVariableIF::VAR_WRITE); for (int k = 0; k < 15; k++) { - memcpy(&AccTimeVec[k], &vecAcc[27 * (36 + 9) + 91 * k + 47], 36); - sif::debug<<"\nDEBUG_DHk2: End of copy to datapool"<