From 9c324bfedaff97d8555d4118f92413105fb3821d Mon Sep 17 00:00:00 2001 From: Robert Pelnar Date: Fri, 8 Sep 2017 21:58:39 +0200 Subject: [PATCH] Stealth chop mode creek fix - TCOOLTHRS must be set to zero, Y-axis current increased. --- Firmware/tmc2130.cpp | 1 + Firmware/variants/1_75mm_MK3-EINY03-E3Dv6full.h | 4 ++-- Firmware/variants/1_75mm_MK3-EINY04-E3Dv6full.h | 4 ++-- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/Firmware/tmc2130.cpp b/Firmware/tmc2130.cpp index d111ab94..8dcc225b 100644 --- a/Firmware/tmc2130.cpp +++ b/Firmware/tmc2130.cpp @@ -121,6 +121,7 @@ void tmc2130_init() tmc2130_wr(tmc2130_cs[i], TMC2130_REG_IHOLD_IRUN, 0x000f0000 | ((tmc2130_current_r[i] & 0x1f) << 8) | (tmc2130_current_h[i] & 0x1f)); tmc2130_wr(tmc2130_cs[i], TMC2130_REG_TPOWERDOWN, 0x00000000); tmc2130_wr(tmc2130_cs[i], TMC2130_REG_GCONF, (tmc2130_mode == TMC2130_MODE_SILENT)?TMC2130_GCONF_SILENT:TMC2130_GCONF_SGSENS); + tmc2130_wr(tmc2130_cs[i], TMC2130_REG_TCOOLTHRS, (tmc2130_mode == TMC2130_MODE_SILENT)?0:TMC2130_TCOOLTHRS); tmc2130_wr_PWMCONF(tmc2130_cs[i], tmc2130_pwm_ampl[i], tmc2130_pwm_grad[i], tmc2130_pwm_freq[i], tmc2130_pwm_auto[i], 0, 0); tmc2130_wr_TPWMTHRS(tmc2130_cs[i], TMC2130_TPWMTHRS); //tmc2130_wr_THIGH(tmc2130_cs[i], TMC2130_THIGH); diff --git a/Firmware/variants/1_75mm_MK3-EINY03-E3Dv6full.h b/Firmware/variants/1_75mm_MK3-EINY03-E3Dv6full.h index 952cae50..07ae20e5 100644 --- a/Firmware/variants/1_75mm_MK3-EINY03-E3Dv6full.h +++ b/Firmware/variants/1_75mm_MK3-EINY03-E3Dv6full.h @@ -109,7 +109,7 @@ const bool Z_MIN_ENDSTOP_INVERTING = false; // set to true to invert the logic o #define TMC2130_INTPOL_Z 1 // extrapolate 256 for Z axis #define TMC2130_INTPOL_E 1 // extrapolate 256 for E axis -#define TMC2130_PWM_GRAD_XY 15 // PWMCONF +#define TMC2130_PWM_GRAD_XY 4 // PWMCONF #define TMC2130_PWM_AMPL_XY 200 // PWMCONF #define TMC2130_PWM_AUTO_XY 1 // PWMCONF #define TMC2130_PWM_FREQ_XY 2 // PWMCONF @@ -144,7 +144,7 @@ const bool Z_MIN_ENDSTOP_INVERTING = false; // set to true to invert the logic o //new settings is possible for vsense = 1, running current value > 31 set vsense to zero and shift both currents by 1 bit right (Z axis only) #define TMC2130_CURRENTS_H {3, 3, 5, 8} // default holding currents for all axes -#define TMC2130_CURRENTS_R {13, 13, 20, 22} // default running currents for all axes +#define TMC2130_CURRENTS_R {13, 18, 20, 22} // default running currents for all axes //#define TMC2130_DEBUG //#define TMC2130_DEBUG_WR diff --git a/Firmware/variants/1_75mm_MK3-EINY04-E3Dv6full.h b/Firmware/variants/1_75mm_MK3-EINY04-E3Dv6full.h index 3d8f174c..f3d53d14 100644 --- a/Firmware/variants/1_75mm_MK3-EINY04-E3Dv6full.h +++ b/Firmware/variants/1_75mm_MK3-EINY04-E3Dv6full.h @@ -109,7 +109,7 @@ const bool Z_MIN_ENDSTOP_INVERTING = false; // set to true to invert the logic o #define TMC2130_INTPOL_Z 1 // extrapolate 256 for Z axis #define TMC2130_INTPOL_E 1 // extrapolate 256 for E axis -#define TMC2130_PWM_GRAD_XY 15 // PWMCONF +#define TMC2130_PWM_GRAD_XY 4 // PWMCONF #define TMC2130_PWM_AMPL_XY 200 // PWMCONF #define TMC2130_PWM_AUTO_XY 1 // PWMCONF #define TMC2130_PWM_FREQ_XY 2 // PWMCONF @@ -144,7 +144,7 @@ const bool Z_MIN_ENDSTOP_INVERTING = false; // set to true to invert the logic o //new settings is possible for vsense = 1, running current value > 31 set vsense to zero and shift both currents by 1 bit right (Z axis only) #define TMC2130_CURRENTS_H {3, 3, 5, 8} // default holding currents for all axes -#define TMC2130_CURRENTS_R {13, 13, 20, 22} // default running currents for all axes +#define TMC2130_CURRENTS_R {13, 18, 20, 22} // default running currents for all axes //#define TMC2130_DEBUG //#define TMC2130_DEBUG_WR