diff --git a/bsp_q7s/core/ObjectFactory.cpp b/bsp_q7s/core/ObjectFactory.cpp index 59388646..b33df028 100644 --- a/bsp_q7s/core/ObjectFactory.cpp +++ b/bsp_q7s/core/ObjectFactory.cpp @@ -474,7 +474,6 @@ void ObjectFactory::createAcsBoardComponents(LinuxLibgpioIF* gpioComIF, UartComI objects::GYRO_2_ADIS_HANDLER, objects::GYRO_3_L3G_HANDLER, objects::GPS_CONTROLLER); auto acsAss = new AcsBoardAssembly(objects::ACS_BOARD_ASS, pwrSwitcher, acsBoardHelper, gpioComIF); - acsAss->connectModeTreeParent(satsystem::ACS_SUBSYSTEM); static_cast(acsAss); for (auto& assChild : assemblyChildren) { ReturnValue_t result = assChild.get().connectModeTreeParent(*acsAss); @@ -483,6 +482,8 @@ void ObjectFactory::createAcsBoardComponents(LinuxLibgpioIF* gpioComIF, UartComI assChild.get().getObjectId() << " failed" << std::endl; } } + gpsCtrl->connectModeTreeParent(*acsAss); + acsAss->connectModeTreeParent(satsystem::ACS_SUBSYSTEM); #endif /* OBSW_ADD_ACS_HANDLERS == 1 */ } @@ -692,7 +693,7 @@ void ObjectFactory::createReactionWheelComponents(LinuxLibgpioIF* gpioComIF, } RwHelper rwHelper(rwIds); - auto* rwAss = new RwAssembly(objects::RW_ASS, objects::NO_OBJECT, pwrSwitcher, + auto* rwAss = new RwAssembly(objects::RW_ASS, pwrSwitcher, pcdu::Switches::PDU2_CH2_RW_5V, rwHelper); for (uint8_t idx = 0; idx < rws.size(); idx++) { ReturnValue_t result = rws[idx]->connectModeTreeParent(*rwAss); diff --git a/fsfw b/fsfw index 10dd8552..acab5f6b 160000 --- a/fsfw +++ b/fsfw @@ -1 +1 @@ -Subproject commit 10dd8552446e409e40d830e25fb0eed927995764 +Subproject commit acab5f6bceef581fae64d1c16af19482ec72abcb diff --git a/linux/devices/GPSHyperionLinuxController.cpp b/linux/devices/GPSHyperionLinuxController.cpp index 84200baf..a72f671c 100644 --- a/linux/devices/GPSHyperionLinuxController.cpp +++ b/linux/devices/GPSHyperionLinuxController.cpp @@ -18,7 +18,7 @@ GPSHyperionLinuxController::GPSHyperionLinuxController(object_id_t objectId, object_id_t parentId, bool debugHyperionGps) - : ExtendedControllerBase(objectId, objects::NO_OBJECT), + : ExtendedControllerBase(objectId), gpsSet(this), debugHyperionGps(debugHyperionGps) { timeUpdateCd.resetTimer(); diff --git a/mission/system/objects/RwAssembly.cpp b/mission/system/objects/RwAssembly.cpp index 0438ff03..8d86bed8 100644 --- a/mission/system/objects/RwAssembly.cpp +++ b/mission/system/objects/RwAssembly.cpp @@ -1,8 +1,8 @@ #include "RwAssembly.h" -RwAssembly::RwAssembly(object_id_t objectId, object_id_t parentId, PowerSwitchIF* pwrSwitcher, +RwAssembly::RwAssembly(object_id_t objectId, PowerSwitchIF* pwrSwitcher, power::Switch_t switcher, RwHelper helper) - : AssemblyBase(objectId, parentId), helper(helper), switcher(pwrSwitcher, switcher) { + : AssemblyBase(objectId), helper(helper), switcher(pwrSwitcher, switcher) { ModeListEntry entry; for (uint8_t idx = 0; idx < NUMBER_RWS; idx++) { entry.setObject(helper.rwIds[idx]); diff --git a/mission/system/objects/RwAssembly.h b/mission/system/objects/RwAssembly.h index 482a18a3..5db6b7d6 100644 --- a/mission/system/objects/RwAssembly.h +++ b/mission/system/objects/RwAssembly.h @@ -12,7 +12,7 @@ struct RwHelper { class RwAssembly : public AssemblyBase { public: - RwAssembly(object_id_t objectId, object_id_t parentId, PowerSwitchIF* pwrSwitcher, + RwAssembly(object_id_t objectId, PowerSwitchIF* pwrSwitcher, power::Switch_t switcher, RwHelper helper); private: diff --git a/mission/system/objects/TcsBoardAssembly.cpp b/mission/system/objects/TcsBoardAssembly.cpp index 23a202be..5c419390 100644 --- a/mission/system/objects/TcsBoardAssembly.cpp +++ b/mission/system/objects/TcsBoardAssembly.cpp @@ -90,15 +90,7 @@ ReturnValue_t TcsBoardAssembly::isModeCombinationValid(Mode_t mode, Submode_t su } ReturnValue_t TcsBoardAssembly::initialize() { - ReturnValue_t result = returnvalue::OK; - // TODO: Fix this - // for (const auto& obj : helper.rtdInfos) { - // result = registerChild(obj.first); - // if (result != returnvalue::OK) { - // return result; - // } - // } - return SubsystemBase::initialize(); + return AssemblyBase::initialize(); } void TcsBoardAssembly::startTransition(Mode_t mode, Submode_t submode) { diff --git a/tmtc b/tmtc index c8eaf180..8c48255e 160000 --- a/tmtc +++ b/tmtc @@ -1 +1 @@ -Subproject commit c8eaf180dc724ccd8eab54a66109d861ce14a2d1 +Subproject commit 8c48255eb34bb26f7626b53474a1af7e71717c5d