From 7337e977657b380e4aefacb85e1657fd4584b050 Mon Sep 17 00:00:00 2001 From: Yuri D'Elia Date: Sun, 11 Jul 2021 21:38:01 +0200 Subject: [PATCH] Rename Motion::DisableAxis to Disable Implement Motion::SetEnabled (for symmetry with TMC2130::SetEnabled). Rename DisableAxis to Disable and use the new SetEnabled. This makes the member names more consistent. --- src/logic/eject_filament.cpp | 2 +- src/logic/load_filament.cpp | 2 +- src/logic/unload_filament.cpp | 2 +- src/modules/idler.cpp | 2 +- src/modules/motion.cpp | 5 ++++- src/modules/motion.h | 6 +++++- src/modules/selector.cpp | 2 +- tests/unit/logic/stubs/stub_motion.cpp | 4 ++-- 8 files changed, 16 insertions(+), 9 deletions(-) diff --git a/src/logic/eject_filament.cpp b/src/logic/eject_filament.cpp index 67e64d4..82e7dbd 100644 --- a/src/logic/eject_filament.cpp +++ b/src/logic/eject_filament.cpp @@ -61,7 +61,7 @@ bool EjectFilament::Step() { break; case ProgressCode::DisengagingIdler: if (!mi::idler.Engaged()) { // idler disengaged - mm::motion.DisableAxis(mm::Pulley); + mm::motion.Disable(mm::Pulley); state = ProgressCode::OK; } break; diff --git a/src/logic/load_filament.cpp b/src/logic/load_filament.cpp index c5b3331..121bde9 100644 --- a/src/logic/load_filament.cpp +++ b/src/logic/load_filament.cpp @@ -59,7 +59,7 @@ bool LoadFilament::Step() { case FeedToBondtech::Failed: case FeedToBondtech::OK: - mm::motion.DisableAxis(mm::Pulley); + mm::motion.Disable(mm::Pulley); mi::idler.Disengage(); state = ProgressCode::DisengagingIdler; } diff --git a/src/logic/unload_filament.cpp b/src/logic/unload_filament.cpp index 7be6110..3e32394 100644 --- a/src/logic/unload_filament.cpp +++ b/src/logic/unload_filament.cpp @@ -63,7 +63,7 @@ bool UnloadFilament::Step() { case ProgressCode::FinishingMoves: if (mm::motion.QueueEmpty()) { state = ProgressCode::OK; - mm::motion.DisableAxis(mm::Pulley); + mm::motion.Disable(mm::Pulley); mg::globals.SetFilamentLoaded(false); // filament unloaded ml::leds.SetMode(mg::globals.ActiveSlot(), ml::green, ml::on); } diff --git a/src/modules/idler.cpp b/src/modules/idler.cpp index a23e1fa..6be1be4 100644 --- a/src/modules/idler.cpp +++ b/src/modules/idler.cpp @@ -66,7 +66,7 @@ bool Idler::Step() { currentSlot = plannedSlot; if (!Engaged()) // turn off power into the Idler motor when disengaged (no force necessary) - mm::motion.DisableAxis(mm::Idler); + mm::motion.Disable(mm::Idler); return true; case Failed: diff --git a/src/modules/motion.cpp b/src/modules/motion.cpp index 98bc703..e590e0a 100644 --- a/src/modules/motion.cpp +++ b/src/modules/motion.cpp @@ -7,7 +7,10 @@ Motion motion; void Motion::InitAxis(Axis axis) {} -void Motion::DisableAxis(Axis axis) {} +void Motion::SetEnabled(Axis axis, bool enabled) { + axisData[axis].drv.SetEnabled(axisParams[axis].params, enabled); + axisData[axis].enabled = enabled; +} bool Motion::StallGuard(Axis axis) { return false; } diff --git a/src/modules/motion.h b/src/modules/motion.h index 0c7f0e5..8b0ef1a 100644 --- a/src/modules/motion.h +++ b/src/modules/motion.h @@ -77,8 +77,11 @@ public: /// state especially when the TMC may get randomly reset (deinited) void InitAxis(Axis axis); + /// Set axis power status + void SetEnabled(Axis axis, bool enabled); + /// Disable axis motor - void DisableAxis(Axis axis); + void Disable(Axis axis) { SetEnabled(axis, false); } /// @returns true if a stall guard event occurred recently on the axis bool StallGuard(Axis axis); @@ -148,6 +151,7 @@ private: struct AxisData { TMC2130 drv; ///< Motor driver pulse_gen::PulseGen ctrl; ///< Motor controller + bool enabled; ///< Axis enabled }; /// Helper to initialize AxisData members diff --git a/src/modules/selector.cpp b/src/modules/selector.cpp index fe07788..ed0f8a6 100644 --- a/src/modules/selector.cpp +++ b/src/modules/selector.cpp @@ -44,7 +44,7 @@ bool Selector::Step() { return false; case Ready: currentSlot = plannedSlot; - mm::motion.DisableAxis(mm::Selector); // turn off selector motor's power every time + mm::motion.Disable(mm::Selector); // turn off selector motor's power every time return true; case Failed: default: diff --git a/tests/unit/logic/stubs/stub_motion.cpp b/tests/unit/logic/stubs/stub_motion.cpp index bad3a51..f7cd8e3 100644 --- a/tests/unit/logic/stubs/stub_motion.cpp +++ b/tests/unit/logic/stubs/stub_motion.cpp @@ -18,8 +18,8 @@ void Motion::InitAxis(Axis axis) { axes[axis].enabled = true; } -void Motion::DisableAxis(Axis axis) { - axes[axis].enabled = false; +void Motion::SetEnabled(Axis axis, bool enabled) { + axes[axis].enabled = enabled; } bool Motion::StallGuard(Axis axis) {