From c57f715d003ea2aac8ae13acf237dac9b7bff91f Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 25 Nov 2024 23:29:49 -0600 Subject: [PATCH] =?UTF-8?q?=F0=9F=8E=A8=20Trinamic=20cleanup?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/MarlinCore.cpp | 2 +- Marlin/src/feature/tmc_util.cpp | 6 +- Marlin/src/feature/tmc_util.h | 2 +- Marlin/src/module/stepper/trinamic.cpp | 3 +- Marlin/src/module/stepper/trinamic.h | 2 +- Marlin/src/pins/esp32/pins_FYSETC_E4.h | 2 +- .../pins/esp32/pins_GODI_CONTROLLER_V1_0.h | 2 +- Marlin/src/pins/lpc1768/pins_MKS_SBASE.h | 2 +- Marlin/src/pins/ramps/pins_ZRIB_V53.h | 2 +- Marlin/src/pins/stm32f1/pins_BTT_SKR_CR6.h | 2 +- Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h | 4 +- .../pins/stm32f1/pins_KEDI_CONTROLLER_V1_2.h | 62 +++++++------------ Marlin/src/pins/stm32f1/pins_MKS_ROBIN.h | 2 +- 13 files changed, 39 insertions(+), 54 deletions(-) diff --git a/Marlin/src/MarlinCore.cpp b/Marlin/src/MarlinCore.cpp index 5e4539e65e..140423f25c 100644 --- a/Marlin/src/MarlinCore.cpp +++ b/Marlin/src/MarlinCore.cpp @@ -1258,7 +1258,7 @@ void setup() { SETUP_RUN(runout.setup()); #endif - #if HAS_TMC220x + #if HAS_TMC_UART SETUP_RUN(tmc_serial_begin()); #endif diff --git a/Marlin/src/feature/tmc_util.cpp b/Marlin/src/feature/tmc_util.cpp index 63fefeb7d2..6afbf4a0ce 100644 --- a/Marlin/src/feature/tmc_util.cpp +++ b/Marlin/src/feature/tmc_util.cpp @@ -614,9 +614,10 @@ default: break; } } - #endif + #endif // TMC2160 || TMC5160 #if HAS_TMC220x + static void _tmc_status(TMC2208Stepper &st, const TMC_debug_enum i) { switch (i) { case TMC_PWM_SCALE_SUM: SERIAL_ECHO(st.pwm_scale_sum()); break; @@ -664,7 +665,8 @@ } } #endif - #endif + + #endif // HAS_TMC220x #if HAS_DRIVER(TMC2660) static void _tmc_parse_drv_status(TMC2660Stepper, const TMC_drv_status_enum) { } diff --git a/Marlin/src/feature/tmc_util.h b/Marlin/src/feature/tmc_util.h index 0c4b78e435..27aae23f89 100644 --- a/Marlin/src/feature/tmc_util.h +++ b/Marlin/src/feature/tmc_util.h @@ -29,7 +29,7 @@ #include #include "../module/planner.h" -#define CHOPPER_DEFAULT_12V { 3, -1, 1 } +#define CHOPPER_DEFAULT_12V { 3, -1, 1 } // { toff, hend, hstrt } #define CHOPPER_DEFAULT_19V { 4, 1, 1 } #define CHOPPER_DEFAULT_24V { 4, 2, 1 } #define CHOPPER_DEFAULT_36V { 5, 2, 4 } diff --git a/Marlin/src/module/stepper/trinamic.cpp b/Marlin/src/module/stepper/trinamic.cpp index ce99d87f09..c0fb083d61 100644 --- a/Marlin/src/module/stepper/trinamic.cpp +++ b/Marlin/src/module/stepper/trinamic.cpp @@ -56,6 +56,7 @@ enum StealthIndex : uint8_t { #else #define TMC_UART_HW_DEFINE(IC, ST, L, AI) TMCMarlin stepper##ST(&ST##_HARDWARE_SERIAL, float(ST##_RSENSE), ST##_SLAVE_ADDRESS) #endif + #define TMC_UART_SW_DEFINE(IC, ST, L, AI) TMCMarlin stepper##ST(ST##_SERIAL_RX_PIN, ST##_SERIAL_TX_PIN, float(ST##_RSENSE), ST##_SLAVE_ADDRESS) #define _TMC_SPI_DEFINE(IC, ST, AI) __TMC_SPI_DEFINE(IC, ST, TMC_##ST##_LABEL, AI) @@ -292,7 +293,7 @@ enum StealthIndex : uint8_t { // // TMC2208/2209 Driver objects and inits // -#if HAS_TMC220x +#if HAS_TMC_UART #if AXIS_HAS_UART(X) #ifdef X_HARDWARE_SERIAL TMC_UART_DEFINE(HW, X, X); diff --git a/Marlin/src/module/stepper/trinamic.h b/Marlin/src/module/stepper/trinamic.h index 3ae784be97..bf7eaf7f95 100644 --- a/Marlin/src/module/stepper/trinamic.h +++ b/Marlin/src/module/stepper/trinamic.h @@ -108,7 +108,7 @@ #define CHOPPER_TIMING_E CHOPPER_TIMING #endif -#if HAS_TMC220x +#if HAS_TMC_UART void tmc_serial_begin(); #endif diff --git a/Marlin/src/pins/esp32/pins_FYSETC_E4.h b/Marlin/src/pins/esp32/pins_FYSETC_E4.h index 4c31dfc1ce..d2a516d6e7 100644 --- a/Marlin/src/pins/esp32/pins_FYSETC_E4.h +++ b/Marlin/src/pins/esp32/pins_FYSETC_E4.h @@ -40,7 +40,7 @@ #if HAS_TMC_UART // - // TMC2209 stepper drivers + // TMC2208/TMC2209 stepper drivers // #define X_HARDWARE_SERIAL Serial1 #define Y_HARDWARE_SERIAL Serial1 diff --git a/Marlin/src/pins/esp32/pins_GODI_CONTROLLER_V1_0.h b/Marlin/src/pins/esp32/pins_GODI_CONTROLLER_V1_0.h index 6f8046988e..3099b492e3 100644 --- a/Marlin/src/pins/esp32/pins_GODI_CONTROLLER_V1_0.h +++ b/Marlin/src/pins/esp32/pins_GODI_CONTROLLER_V1_0.h @@ -96,7 +96,7 @@ #if HAS_TMC_UART // - // TMC2209 stepper drivers + // TMC2208/TMC2209 stepper drivers // // diff --git a/Marlin/src/pins/lpc1768/pins_MKS_SBASE.h b/Marlin/src/pins/lpc1768/pins_MKS_SBASE.h index dbacb0fa26..6bfc4c3c64 100644 --- a/Marlin/src/pins/lpc1768/pins_MKS_SBASE.h +++ b/Marlin/src/pins/lpc1768/pins_MKS_SBASE.h @@ -294,7 +294,7 @@ #endif // HAS_WIRED_LCD /** - * Example for trinamic drivers using the J8 connector on MKs Sbase. + * Example for Trinamic drivers using the J8 connector on MKS Sbase. * 2130s need 1 pin for each driver. 2208/2209s need 2 pins for serial control. * This board does not have enough pins to use hardware serial. */ diff --git a/Marlin/src/pins/ramps/pins_ZRIB_V53.h b/Marlin/src/pins/ramps/pins_ZRIB_V53.h index 85420bdec3..f2d3b83fc9 100644 --- a/Marlin/src/pins/ramps/pins_ZRIB_V53.h +++ b/Marlin/src/pins/ramps/pins_ZRIB_V53.h @@ -187,7 +187,7 @@ #if HAS_TMC_UART /** - * TMC2209 stepper drivers + * TMC2208/TMC2209 stepper drivers * * Hardware serial communication ports. * If undefined software serial is used according to the pins below diff --git a/Marlin/src/pins/stm32f1/pins_BTT_SKR_CR6.h b/Marlin/src/pins/stm32f1/pins_BTT_SKR_CR6.h index 725a3f9914..7693aa6902 100644 --- a/Marlin/src/pins/stm32f1/pins_BTT_SKR_CR6.h +++ b/Marlin/src/pins/stm32f1/pins_BTT_SKR_CR6.h @@ -136,7 +136,7 @@ #if HAS_TMC_UART /** - * TMC2209 stepper drivers + * TMC2208/TMC2209 stepper drivers * Hardware serial communication ports. */ #define X_HARDWARE_SERIAL MSerial4 diff --git a/Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h b/Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h index 3372ae3aba..fa757d2d52 100644 --- a/Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h +++ b/Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h @@ -125,7 +125,7 @@ */ #if HAS_TMC_UART // SoftwareSerial with one pin per driver - // Compatible with TMC2208 and TMC2209 drivers + // Compatible with TMC2208/TMC2209 drivers #define X_SERIAL_TX_PIN PA10 // RXD1 #define Y_SERIAL_TX_PIN PA9 // TXD1 #define Z_SERIAL_TX_PIN PC7 // IO1 @@ -169,7 +169,7 @@ // // EXTRUDER // -#if AXIS_DRIVER_TYPE_E0(TMC2208) || AXIS_DRIVER_TYPE_E0(TMC2209) +#if AXIS_HAS_UART(E0) #define E0_SERIAL_TX_PIN PA8 // IO0 #else // Motor current PWM pins diff --git a/Marlin/src/pins/stm32f1/pins_KEDI_CONTROLLER_V1_2.h b/Marlin/src/pins/stm32f1/pins_KEDI_CONTROLLER_V1_2.h index 000548ee53..b136ef72c5 100644 --- a/Marlin/src/pins/stm32f1/pins_KEDI_CONTROLLER_V1_2.h +++ b/Marlin/src/pins/stm32f1/pins_KEDI_CONTROLLER_V1_2.h @@ -94,47 +94,29 @@ #endif // CS Pins (One pin for each driver) -#if HAS_DRIVER(TMC2130) || HAS_DRIVER(TMC2160) || HAS_DRIVER(TMC2660) || HAS_DRIVER(TMC5130) || HAS_DRIVER(TMC5160) - #ifndef X_CS_PIN - #define X_CS_PIN PC10 - #endif - #ifndef Y_CS_PIN - #define Y_CS_PIN PC11 - #endif - #ifndef Z_CS_PIN - #define Z_CS_PIN PC12 - #endif - #ifndef E0_CS_PIN - #define E0_CS_PIN PC14 - #endif +#if HAS_TMC_SPI + #ifndef X_CS_PIN + #define X_CS_PIN PC10 + #endif + #ifndef Y_CS_PIN + #define Y_CS_PIN PC11 + #endif + #ifndef Z_CS_PIN + #define Z_CS_PIN PC12 + #endif + #ifndef E0_CS_PIN + #define E0_CS_PIN PC14 + #endif #endif -// TMC2208 or TMC2209 on UART -#if HAS_DRIVER(TMC2208) || HAS_DRIVER(TMC2209) - -// UART Pins (Single pin for both RX & TX) - #ifndef X_PIN_UART - #define X_PIN_UART PC10 - #endif - #ifndef Y_PIN_UART - #define Y_PIN_UART PC11 - #endif - #ifndef Z_PIN_UART - #define Z_PIN_UART PC12 - #endif - #ifndef E0_PIN_UART - #define E0_PIN_UART PC14 - #endif - -// Configurating Pins -#define X_SERIAL_TX_PIN X_PIN_UART -#define X_SERIAL_RX_PIN X_PIN_UART -#define Y_SERIAL_TX_PIN Y_PIN_UART -#define Y_SERIAL_RX_PIN Y_PIN_UART -#define Z_SERIAL_TX_PIN Z_PIN_UART -#define Z_SERIAL_RX_PIN Z_PIN_UART -#define E0_SERIAL_TX_PIN E0_PIN_UART -#define E0_SERIAL_RX_PIN E0_PIN_UART +/** + * TMC2208/TMC2209 stepper drivers + */ +#if HAS_TMC_UART + #define X_SERIAL_TX_PIN PC10 + #define Y_SERIAL_TX_PIN PC11 + #define Z_SERIAL_TX_PIN PC12 + #define E0_SERIAL_TX_PIN PC14 #endif // @@ -225,7 +207,7 @@ #define FORCE_SOFT_SPI // SPI MODE3 - #define LED_PIN EXP1_05_PIN // red pwm + #define LED_PIN EXP1_05_PIN // red pwm //#define LED_PIN EXP1_04_PIN // green //#define LED_PIN EXP1_03_PIN // blue diff --git a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN.h index b3fc52c894..4e9a06f7da 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN.h @@ -232,7 +232,7 @@ #endif // -// Trinamic TMC2208/2209 UART +// Trinamic TMC2208/TMC2209 UART // #if HAS_TMC_UART /**