Skip to content

Commit 2e45944

Browse files
committed
few fixes
1 parent 2a35c64 commit 2e45944

File tree

4 files changed

+15
-6
lines changed

4 files changed

+15
-6
lines changed

FprimeZephyrReference/Components/DetumbleManager/DetumbleManager.cpp

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,12 @@ bool DetumbleManager::executeControlStep() {
3737
this->prevMgField = mgField;
3838
}
3939

40-
Drv::DipoleMoment dpMoment = this->dipoleMomentGet_handler(0, mgField, this->prevMgField);
41-
// Then check if its null/empty whatever here, need to figure that out.
40+
Drv::DipoleMoment dpMoment = this->dipoleMomentGet_out(0, mgField, this->prevMgField);
41+
if (dpMoment == this->EMPTY_DP_MOMENT) {
42+
// Log some kinda error
43+
return false;
44+
}
45+
4246
this->prevMgField = mgField;
4347

4448
// Then apply the dipole moment here, gonna have to figure that out.

FprimeZephyrReference/Components/DetumbleManager/DetumbleManager.fpp

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
module Components {
2-
@ IMU Manager Component for F Prime FSW framework.
2+
@ Detumble Manager Component for F Prime FSW framework.
33
passive component DetumbleManager {
44
sync input port run: Svc.Sched
55

@@ -15,6 +15,9 @@ module Components {
1515
@ Port for sending temperatureGet calls to the LSM6DSO Driver
1616
output port temperatureGet: Drv.TemperatureGet
1717

18+
@ Port for sending dipoleMomentGet calls to the BDotDetumble Component
19+
output port dipoleMomentGet: Drv.DipoleMomentGet
20+
1821
###############################################################################
1922
# Standard AC Ports: Required for Channels, Events, Commands, and Parameters #
2023
###############################################################################

FprimeZephyrReference/Components/DetumbleManager/DetumbleManager.hpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,10 @@ class DetumbleManager final : public DetumbleManagerComponentBase {
3333
) override;
3434

3535
// Variables
36-
Drv::MagneticField EMPTY_MG_FIELD = Drv::MagneticField{0.0, 0.0, 0.0};
37-
Drv::MagneticField prevMgField = Drv::MagneticField{0.0, 0.0, 0.0};
36+
Drv::MagneticField EMPTY_MG_FIELD = Drv::MagneticField(0.0, 0.0, 0.0, -1);
37+
Drv::MagneticField prevMgField = Drv::MagneticField(0.0, 0.0, 0.0, -1);
38+
39+
Drv::DipoleMoment EMPTY_DP_MOMENT = Drv::DipoleMoment(0.0, 0.0, 0.0);
3840

3941
// Functions
4042
bool executeControlStep();

FprimeZephyrReference/Components/Drv/Lis2mdlManager/Lis2mdlManager.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ Lis2mdlManager ::~Lis2mdlManager() {}
2727
Drv::MagneticField Lis2mdlManager ::magneticFieldGet_handler(FwIndexType portNum) {
2828
if (!device_is_ready(dev)) {
2929
this->log_WARNING_HI_DeviceNotReady();
30-
return Drv::MagneticField(0.0, 0.0, 0.0, k_uptime_get());
30+
return Drv::MagneticField(0.0, 0.0, 0.0, -1);
3131
}
3232
this->log_WARNING_HI_DeviceNotReady_ThrottleClear();
3333

0 commit comments

Comments
 (0)