|
@@ -262,7 +262,7 @@ void GcodeSuite::G28() {
|
262
|
262
|
reset_stepper_timeout();
|
263
|
263
|
|
264
|
264
|
#define HAS_CURRENT_HOME(N) (defined(N##_CURRENT_HOME) && N##_CURRENT_HOME != N##_CURRENT)
|
265
|
|
- #if HAS_CURRENT_HOME(X) || HAS_CURRENT_HOME(X2) || HAS_CURRENT_HOME(Y) || HAS_CURRENT_HOME(Y2) || (ENABLED(DELTA) && HAS_CURRENT_HOME(Z))
|
|
265
|
+ #if HAS_CURRENT_HOME(X) || HAS_CURRENT_HOME(X2) || HAS_CURRENT_HOME(Y) || HAS_CURRENT_HOME(Y2) || HAS_CURRENT_HOME(I) || HAS_CURRENT_HOME(J) || HAS_CURRENT_HOME(K) || (ENABLED(DELTA) && HAS_CURRENT_HOME(Z))
|
266
|
266
|
#define HAS_HOMING_CURRENT 1
|
267
|
267
|
#endif
|
268
|
268
|
|
|
@@ -290,6 +290,21 @@ void GcodeSuite::G28() {
|
290
|
290
|
stepperY2.rms_current(Y2_CURRENT_HOME);
|
291
|
291
|
if (DEBUGGING(LEVELING)) debug_current(F("Y2"), tmc_save_current_Y2, Y2_CURRENT_HOME);
|
292
|
292
|
#endif
|
|
293
|
+ #if HAS_CURRENT_HOME(I)
|
|
294
|
+ const int16_t tmc_save_current_I = stepperI.getMilliamps();
|
|
295
|
+ stepperI.rms_current(I_CURRENT_HOME);
|
|
296
|
+ if (DEBUGGING(LEVELING)) debug_current(F(AXIS4_STR), tmc_save_current_I, I_CURRENT_HOME);
|
|
297
|
+ #endif
|
|
298
|
+ #if HAS_CURRENT_HOME(J)
|
|
299
|
+ const int16_t tmc_save_current_J = stepperJ.getMilliamps();
|
|
300
|
+ stepperJ.rms_current(J_CURRENT_HOME);
|
|
301
|
+ if (DEBUGGING(LEVELING)) debug_current(F(AXIS5_STR), tmc_save_current_J, J_CURRENT_HOME);
|
|
302
|
+ #endif
|
|
303
|
+ #if HAS_CURRENT_HOME(K)
|
|
304
|
+ const int16_t tmc_save_current_K = stepperK.getMilliamps();
|
|
305
|
+ stepperK.rms_current(K_CURRENT_HOME);
|
|
306
|
+ if (DEBUGGING(LEVELING)) debug_current(F(AXIS6_STR), tmc_save_current_K, K_CURRENT_HOME);
|
|
307
|
+ #endif
|
293
|
308
|
#if HAS_CURRENT_HOME(Z) && ENABLED(DELTA)
|
294
|
309
|
const int16_t tmc_save_current_Z = stepperZ.getMilliamps();
|
295
|
310
|
stepperZ.rms_current(Z_CURRENT_HOME);
|