From 82d102d7409e83d7ce3efbc7387528a3da5479cd Mon Sep 17 00:00:00 2001 From: 3d-gussner <3d.gussner@gmail.com> Date: Mon, 19 Feb 2024 17:12:38 +0100 Subject: [PATCH 1/3] Enable M913 --- Firmware/Marlin_main.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Firmware/Marlin_main.cpp b/Firmware/Marlin_main.cpp index 07490a5df..3a92be44c 100644 --- a/Firmware/Marlin_main.cpp +++ b/Firmware/Marlin_main.cpp @@ -8387,6 +8387,7 @@ Sigma_Exit: } } break; +#endif // TMC2130_SERVICE_CODES_M910_M918 /*! ### M913 - Print TMC2130 currents M913: Print TMC2130 currents @@ -8399,7 +8400,6 @@ Sigma_Exit: } break; -#endif // TMC2130_SERVICE_CODES_M910_M918 /*! ### M914 - Set TMC2130 normal mode M914: Set TMC2130 normal mode Updates EEPROM only if "P" is given, otherwise temporary (lasts until reset or motor idle timeout) From 2df8a18fde4904e6865ee676f9b83c60d2d97f0a Mon Sep 17 00:00:00 2001 From: 3d-gussner <3d.gussner@gmail.com> Date: Mon, 19 Feb 2024 18:04:23 +0100 Subject: [PATCH 2/3] Fix MK2.5/S builds --- Firmware/Marlin_main.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Firmware/Marlin_main.cpp b/Firmware/Marlin_main.cpp index 3a92be44c..96a2836c3 100644 --- a/Firmware/Marlin_main.cpp +++ b/Firmware/Marlin_main.cpp @@ -8327,6 +8327,7 @@ Sigma_Exit: } break; +#ifdef TMC2130 #ifdef TMC2130_SERVICE_CODES_M910_M918 /*! @@ -8426,7 +8427,6 @@ Sigma_Exit: - `R` - Revert to EEPROM value - `Q` - Print effective silent/normal status. (Does not report override) */ -#ifdef TMC2130 case 914: case 915: { @@ -8465,7 +8465,6 @@ Sigma_Exit: } break; -#endif // TMC2130 #ifdef TMC2130_SERVICE_CODES_M910_M918 /*! ### M916 - Set TMC2130 Stallguard sensitivity threshold M916: Set TMC2130 Stallguard sensitivity threshold @@ -8538,6 +8537,7 @@ Sigma_Exit: break; #endif //TMC2130_SERVICE_CODES_M910_M918 +#endif // TMC2130 /*! ### M350 - Set microstepping mode M350: Set microstepping mode From b6e2a8875b69e167ed8a696f2cbd996d71b162c6 Mon Sep 17 00:00:00 2001 From: Alex Voinea Date: Wed, 21 Feb 2024 23:03:20 +0100 Subject: [PATCH 3/3] M913 report rescaled currents --- Firmware/tmc2130.cpp | 8 ++++---- Firmware/tmc2130.h | 2 ++ 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/Firmware/tmc2130.cpp b/Firmware/tmc2130.cpp index 30f4724bc..05340622d 100755 --- a/Firmware/tmc2130.cpp +++ b/Firmware/tmc2130.cpp @@ -580,10 +580,10 @@ void tmc2130_setup_chopper(uint8_t axis, uint8_t mres, const MotorCurrents *curr void tmc2130_print_currents() { printf_P(_n("tmc2130_print_currents()\n\tH\tR\nX\t%d\t%d\nY\t%d\t%d\nZ\t%d\t%d\nE\t%d\t%d\n"), - currents[0].getiHold(), currents[0].getiRun(), - currents[1].getiHold(), currents[1].getiRun(), - currents[2].getiHold(), currents[2].getiRun(), - currents[3].getiHold(), currents[3].getiRun() + currents[0].getOriginaliHold(), currents[0].getOriginaliRun(), + currents[1].getOriginaliHold(), currents[1].getOriginaliRun(), + currents[2].getOriginaliHold(), currents[2].getOriginaliRun(), + currents[3].getOriginaliHold(), currents[3].getOriginaliRun() ); } diff --git a/Firmware/tmc2130.h b/Firmware/tmc2130.h index 6cf48f04e..6c1308113 100644 --- a/Firmware/tmc2130.h +++ b/Firmware/tmc2130.h @@ -105,6 +105,8 @@ struct MotorCurrents { inline uint8_t getiRun() const { return iRun; } inline uint8_t getiHold() const { return min(iHold, iRun); } + inline uint8_t getOriginaliRun() const { return vSense ? iRun : iRun << 1; } + inline uint8_t getOriginaliHold() const { return min(vSense ? iHold : iHold << 1, getOriginaliRun()); } inline bool iHoldIsClamped() const { return iHold > iRun; } inline uint8_t getvSense() const { return vSense; }