|
@@ -87,6 +87,9 @@
|
87
|
87
|
#if AXIS_DRIVER_TYPE(E4, TMC26X)
|
88
|
88
|
_TMC26X_DEFINE(E4);
|
89
|
89
|
#endif
|
|
90
|
+ #if AXIS_DRIVER_TYPE(E5, TMC26X)
|
|
91
|
+ _TMC26X_DEFINE(E5);
|
|
92
|
+ #endif
|
90
|
93
|
|
91
|
94
|
#define _TMC26X_INIT(A) do{ \
|
92
|
95
|
stepper##A.setMicrosteps(A##_MICROSTEPS); \
|
|
@@ -130,6 +133,9 @@
|
130
|
133
|
#if AXIS_DRIVER_TYPE(E4, TMC26X)
|
131
|
134
|
_TMC26X_INIT(E4);
|
132
|
135
|
#endif
|
|
136
|
+ #if AXIS_DRIVER_TYPE(E5, TMC26X)
|
|
137
|
+ _TMC26X_INIT(E5);
|
|
138
|
+ #endif
|
133
|
139
|
}
|
134
|
140
|
#endif // TMC26X
|
135
|
141
|
|
|
@@ -190,6 +196,9 @@
|
190
|
196
|
#if AXIS_DRIVER_TYPE(E4, TMC2130)
|
191
|
197
|
_TMC2130_DEFINE(E4);
|
192
|
198
|
#endif
|
|
199
|
+ #if AXIS_DRIVER_TYPE(E5, TMC2130)
|
|
200
|
+ _TMC2130_DEFINE(E5);
|
|
201
|
+ #endif
|
193
|
202
|
|
194
|
203
|
// Use internal reference voltage for current calculations. This is the default.
|
195
|
204
|
// Following values from Trinamic's spreadsheet with values for a NEMA17 (42BYGHW609)
|
|
@@ -394,6 +403,13 @@
|
394
|
403
|
_TMC2208_DEFINE_SOFTWARE(E4);
|
395
|
404
|
#endif
|
396
|
405
|
#endif
|
|
406
|
+ #if AXIS_DRIVER_TYPE(E5, TMC2208)
|
|
407
|
+ #ifdef E5_HARDWARE_SERIAL
|
|
408
|
+ _TMC2208_DEFINE_HARDWARE(E5);
|
|
409
|
+ #else
|
|
410
|
+ _TMC2208_DEFINE_SOFTWARE(E5);
|
|
411
|
+ #endif
|
|
412
|
+ #endif
|
397
|
413
|
|
398
|
414
|
void tmc2208_serial_begin() {
|
399
|
415
|
#if AXIS_DRIVER_TYPE(X, TMC2208)
|
|
@@ -480,6 +496,13 @@
|
480
|
496
|
stepperE4.beginSerial(115200);
|
481
|
497
|
#endif
|
482
|
498
|
#endif
|
|
499
|
+ #if AXIS_DRIVER_TYPE(E5, TMC2208)
|
|
500
|
+ #ifdef E5_HARDWARE_SERIAL
|
|
501
|
+ E5_HARDWARE_SERIAL.begin(115200);
|
|
502
|
+ #else
|
|
503
|
+ stepperE5.beginSerial(115200);
|
|
504
|
+ #endif
|
|
505
|
+ #endif
|
483
|
506
|
}
|
484
|
507
|
|
485
|
508
|
// Use internal reference voltage for current calculations. This is the default.
|
|
@@ -597,6 +620,9 @@ void restore_stepper_drivers() {
|
597
|
620
|
#if AXIS_IS_TMC(E4)
|
598
|
621
|
stepperE4.push();
|
599
|
622
|
#endif
|
|
623
|
+ #if AXIS_IS_TMC(E5)
|
|
624
|
+ stepperE5.push();
|
|
625
|
+ #endif
|
600
|
626
|
}
|
601
|
627
|
|
602
|
628
|
void reset_stepper_drivers() {
|
|
@@ -667,6 +693,9 @@ void reset_stepper_drivers() {
|
667
|
693
|
#if AXIS_DRIVER_TYPE(E4, L6470)
|
668
|
694
|
_L6470_DEFINE(E4);
|
669
|
695
|
#endif
|
|
696
|
+ #if AXIS_DRIVER_TYPE(E5, L6470)
|
|
697
|
+ _L6470_DEFINE(E5);
|
|
698
|
+ #endif
|
670
|
699
|
|
671
|
700
|
#define _L6470_INIT(A) do{ \
|
672
|
701
|
stepper##A.init(); \
|
|
@@ -713,6 +742,9 @@ void reset_stepper_drivers() {
|
713
|
742
|
#if AXIS_DRIVER_TYPE(E4, L6470)
|
714
|
743
|
_L6470_INIT(E4);
|
715
|
744
|
#endif
|
|
745
|
+ #if AXIS_DRIVER_TYPE(E5, L6470)
|
|
746
|
+ _L6470_INIT(E5);
|
|
747
|
+ #endif
|
716
|
748
|
}
|
717
|
749
|
|
718
|
750
|
#endif // L6470
|