Merge pull request #10318 from marcio-ao/pr-einsy-retro-tmc2130
[2.0.x] Fix TMC2130 DIAG1 active high, Einsy Retro
This commit is contained in:
		| @@ -277,6 +277,9 @@ MCU              ?= atmega2560 | ||||
| else ifeq  ($(HARDWARE_MOTHERBOARD),304) | ||||
| HARDWARE_VARIANT ?= arduino | ||||
| MCU              ?= atmega2560 | ||||
| else ifeq  ($(HARDWARE_MOTHERBOARD),305) | ||||
| HARDWARE_VARIANT ?= arduino | ||||
| MCU              ?= atmega2560 | ||||
| else ifeq  ($(HARDWARE_MOTHERBOARD),21) | ||||
| HARDWARE_VARIANT ?= arduino | ||||
| MCU              ?= atmega2560 | ||||
|   | ||||
| @@ -95,6 +95,7 @@ | ||||
| #define BOARD_MINIRAMBO         302   // Mini-Rambo | ||||
| #define BOARD_MINIRAMBO_10A     303   // Mini-Rambo 1.0a | ||||
| #define BOARD_EINSY_RAMBO       304   // Einsy Rambo | ||||
| #define BOARD_EINSY_RETRO       305   // Einsy Retro | ||||
| #define BOARD_ELEFU_3           21    // Elefu Ra Board (v3) | ||||
| #define BOARD_LEAPFROG          999   // Leapfrog | ||||
| #define BOARD_MEGACONTROLLER    310   // Mega controller | ||||
|   | ||||
| @@ -1457,12 +1457,22 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE && Y_MAX_LENGTH >= Y_BED_SIZE, | ||||
|     #error "E4_CS_PIN is required for E4_IS_TMC2130. Define E4_CS_PIN in Configuration_adv.h." | ||||
|   #endif | ||||
|  | ||||
|   // Require STEALTHCHOP for SENSORLESS_HOMING on DELTA as the transition from spreadCycle to stealthChop | ||||
|   // is necessary in order to reset the stallGuard indication between the initial movement of all three | ||||
|   // towers to +Z and the individual homing of each tower. This restriction can be removed once a means of | ||||
|   // clearing the stallGuard activated status is found. | ||||
|   #if ENABLED(SENSORLESS_HOMING) && ENABLED(DELTA) && !ENABLED(STEALTHCHOP) | ||||
|     #error "SENSORLESS_HOMING on DELTA currently requires STEALTHCHOP." | ||||
|   #if ENABLED(SENSORLESS_HOMING) | ||||
|     // Require STEALTHCHOP for SENSORLESS_HOMING on DELTA as the transition from spreadCycle to stealthChop | ||||
|     // is necessary in order to reset the stallGuard indication between the initial movement of all three | ||||
|     // towers to +Z and the individual homing of each tower. This restriction can be removed once a means of | ||||
|     // clearing the stallGuard activated status is found. | ||||
|     #if ENABLED(DELTA) && !ENABLED(STEALTHCHOP) | ||||
|       #error "SENSORLESS_HOMING on DELTA currently requires STEALTHCHOP." | ||||
|     #elif X_HOME_DIR == -1 && DISABLED(X_MIN_ENDSTOP_INVERTING) | ||||
|       #error "SENSORLESS_HOMING requires X_MIN_ENDSTOP_INVERTING when homing to X_MIN." | ||||
|     #elif X_HOME_DIR ==  1 && DISABLED(X_MAX_ENDSTOP_INVERTING) | ||||
|       #error "SENSORLESS_HOMING requires X_MAX_ENDSTOP_INVERTING when homing to X_MAX." | ||||
|     #elif Y_HOME_DIR == -1 && DISABLED(Y_MIN_ENDSTOP_INVERTING) | ||||
|       #error "SENSORLESS_HOMING requires Y_MIN_ENDSTOP_INVERTING when homing to Y_MIN." | ||||
|     #elif Y_HOME_DIR ==  1 && DISABLED(Y_MAX_ENDSTOP_INVERTING) | ||||
|       #error "SENSORLESS_HOMING requires Y_MAX_ENDSTOP_INVERTING when homing to Y_MAX." | ||||
|     #endif | ||||
|   #endif | ||||
|  | ||||
|   // Sensorless homing is required for both combined steppers in an H-bot | ||||
|   | ||||
| @@ -193,7 +193,6 @@ | ||||
|     st.power_down_delay(128); // ~2s until driver lowers to hold current | ||||
|     st.hysteresis_start(3); | ||||
|     st.hysteresis_end(2); | ||||
|     st.diag1_active_high(1); // For sensorless homing | ||||
|     #if ENABLED(STEALTHCHOP) | ||||
|       st.stealth_freq(1); // f_pwm = 2/683 f_clk | ||||
|       st.stealth_autoscale(1); | ||||
|   | ||||
| @@ -163,6 +163,8 @@ | ||||
|   #include "pins_MINIRAMBO.h"         // ATmega2560 | ||||
| #elif MB(EINSY_RAMBO) | ||||
|   #include "pins_EINSY_RAMBO.h"       // ATmega2560 | ||||
| #elif MB(EINSY_RETRO) | ||||
|   #include "pins_EINSY_RETRO.h"       // ATmega2560 | ||||
| #elif MB(ELEFU_3) | ||||
|   #include "pins_ELEFU_3.h"           // ATmega2560 | ||||
| #elif MB(LEAPFROG) | ||||
|   | ||||
| @@ -28,8 +28,7 @@ | ||||
|   #error "Oops!  Make sure you have 'Arduino Mega 2560 or Rambo' selected from the 'Tools -> Boards' menu." | ||||
| #endif | ||||
|  | ||||
| #define BOARD_NAME          "Einsy Rambo" | ||||
| #define LARGE_FLASH         true | ||||
| #define BOARD_NAME         "Einsy Rambo" | ||||
|  | ||||
| // | ||||
| // TMC2130 Configuration_adv defaults for EinsyRambo | ||||
| @@ -41,10 +40,10 @@ | ||||
| #endif | ||||
|  | ||||
| // TMC2130 Diag Pins (currently just for reference) | ||||
| #define X_DIAG_PIN      64 | ||||
| #define Y_DIAG_PIN      69 | ||||
| #define Z_DIAG_PIN      68 | ||||
| #define E0_DIAG_PIN     65 | ||||
| #define X_DIAG_PIN         64 | ||||
| #define Y_DIAG_PIN         69 | ||||
| #define Z_DIAG_PIN         68 | ||||
| #define E0_DIAG_PIN        65 | ||||
|  | ||||
| // | ||||
| // Limit Switches | ||||
| @@ -55,26 +54,22 @@ | ||||
| // SERVO0_PIN and Z_MIN_PIN configuration for BLTOUCH sensor when combined with SENSORLESS_HOMING. | ||||
| // | ||||
|  | ||||
| #define X_MAX_PIN          -1 | ||||
| #define Y_MAX_PIN          -1 | ||||
| #define Z_MAX_PIN          -1 | ||||
|  | ||||
| #if DISABLED(SENSORLESS_HOMING) | ||||
|  | ||||
|   #define X_MIN_PIN          12 | ||||
|   #define Y_MIN_PIN          11 | ||||
|   #define Z_MIN_PIN          10 | ||||
|   #define X_STOP_PIN       12 | ||||
|   #define Y_STOP_PIN       11 | ||||
|   #define Z_STOP_PIN       10 | ||||
|  | ||||
| #else | ||||
|  | ||||
|   #define X_MIN_PIN          X_DIAG_PIN | ||||
|   #define Y_MIN_PIN          Y_DIAG_PIN | ||||
|   #define X_STOP_PIN       X_DIAG_PIN | ||||
|   #define Y_STOP_PIN       Y_DIAG_PIN | ||||
|  | ||||
|   #if ENABLED(BLTOUCH) | ||||
|     #define Z_MIN_PIN        11   // Y-MIN | ||||
|     #define SERVO0_PIN       10   // Z-MIN | ||||
|     #define Z_STOP_PIN     11   // Y-MIN | ||||
|     #define SERVO0_PIN     10   // Z-MIN | ||||
|   #else | ||||
|     #define Z_MIN_PIN        10 | ||||
|     #define Z_STOP_PIN     10 | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
| @@ -109,20 +104,6 @@ | ||||
| #define E0_ENABLE_PIN      26 | ||||
| #define E0_CS_PIN          66 | ||||
|  | ||||
| #define E1_STEP_PIN        -1 | ||||
| #define E1_DIR_PIN         -1 | ||||
| #define E1_ENABLE_PIN      -1 | ||||
|  | ||||
| // Microstepping pins - uses SPI instead | ||||
| #define X_MS1_PIN          -1 | ||||
| #define X_MS2_PIN          -1 | ||||
| #define Y_MS1_PIN          -1 | ||||
| #define Y_MS2_PIN          -1 | ||||
| #define Z_MS1_PIN          -1 | ||||
| #define Z_MS2_PIN          -1 | ||||
| #define E0_MS1_PIN         -1 | ||||
| #define E0_MS2_PIN         -1 | ||||
|  | ||||
| // | ||||
| // Temperature Sensors | ||||
| // | ||||
| @@ -134,8 +115,6 @@ | ||||
| // Heaters / Fans | ||||
| // | ||||
| #define HEATER_0_PIN        3 | ||||
| #define HEATER_1_PIN       -1 | ||||
| #define HEATER_2_PIN       -1 | ||||
| #define HEATER_BED_PIN      4 | ||||
|  | ||||
| #define FAN_PIN             8 | ||||
| @@ -168,7 +147,7 @@ | ||||
| // | ||||
| #if ENABLED(ULTRA_LCD) | ||||
|  | ||||
|   #define KILL_PIN 32 | ||||
|   #define KILL_PIN         32 | ||||
|  | ||||
|   #if ENABLED(NEWPANEL) | ||||
|  | ||||
|   | ||||
							
								
								
									
										193
									
								
								Marlin/src/pins/pins_EINSY_RETRO.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										193
									
								
								Marlin/src/pins/pins_EINSY_RETRO.h
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,193 @@ | ||||
| /** | ||||
|  * Marlin 3D Printer Firmware | ||||
|  * Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] | ||||
|  * | ||||
|  * Based on Sprinter and grbl. | ||||
|  * Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm | ||||
|  * | ||||
|  * This program is free software: you can redistribute it and/or modify | ||||
|  * it under the terms of the GNU General Public License as published by | ||||
|  * the Free Software Foundation, either version 3 of the License, or | ||||
|  * (at your option) any later version. | ||||
|  * | ||||
|  * This program is distributed in the hope that it will be useful, | ||||
|  * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
|  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||
|  * GNU General Public License for more details. | ||||
|  * | ||||
|  * You should have received a copy of the GNU General Public License | ||||
|  * along with this program.  If not, see <http://www.gnu.org/licenses/>. | ||||
|  * | ||||
|  */ | ||||
|  | ||||
| /** | ||||
|  * Einsy-Retro pin assignments | ||||
|  */ | ||||
|  | ||||
| #ifndef __AVR_ATmega2560__ | ||||
|   #error "Oops!  Make sure you have 'Arduino Mega 2560 or Rambo' selected from the 'Tools -> Boards' menu." | ||||
| #endif | ||||
|  | ||||
| #define BOARD_NAME         "Einsy Retro" | ||||
|  | ||||
| // | ||||
| // TMC2130 Configuration_adv defaults for EinsyRetro | ||||
| // | ||||
| #if DISABLED(HAVE_TMC2130) | ||||
|   #error "You must enable TMC2130 support in Configuration_adv.h for EinsyRetro." | ||||
| #elif DISABLED(X_IS_TMC2130) || DISABLED(Y_IS_TMC2130) || DISABLED(Z_IS_TMC2130) || DISABLED(E0_IS_TMC2130) | ||||
|   #error "You must enable ([XYZ]|E0)_IS_TMC2130 in Configuration_adv.h for EinsyRetro." | ||||
| #endif | ||||
|  | ||||
| // TMC2130 Diag Pins (currently just for reference) | ||||
| #define X_DIAG_PIN         64 | ||||
| #define Y_DIAG_PIN         69 | ||||
| #define Z_DIAG_PIN         68 | ||||
| #define E0_DIAG_PIN        65 | ||||
|  | ||||
| // | ||||
| // Limit Switches | ||||
| // | ||||
| // Only use Diag Pins when SENSORLESS_HOMING is enabled for the TMC2130 drivers. | ||||
| // Otherwise use a physical endstop based configuration. | ||||
| // | ||||
| // SERVO0_PIN and Z_MIN_PIN configuration for BLTOUCH sensor when combined with SENSORLESS_HOMING. | ||||
| // | ||||
|  | ||||
| #if DISABLED(SENSORLESS_HOMING) | ||||
|  | ||||
|   #define X_MIN_PIN        12 | ||||
|   #define Y_MIN_PIN        11 | ||||
|   #define Z_MIN_PIN        10 | ||||
|   #define X_MAX_PIN        81 | ||||
|   #define Y_MAX_PIN        57 | ||||
|  | ||||
| #else | ||||
|  | ||||
|   #if X_HOME_DIR == -1 | ||||
|     #define X_MIN_PIN      X_DIAG_PIN | ||||
|     #define X_MAX_PIN      81 | ||||
|   #else | ||||
|     #define X_MIN_PIN      12 | ||||
|     #define X_MAX_PIN      X_DIAG_PIN | ||||
|   #endif | ||||
|  | ||||
|   #if Y_HOME_DIR == -1 | ||||
|     #define Y_MIN_PIN      Y_DIAG_PIN | ||||
|     #define Y_MAX_PIN      57 | ||||
|   #else | ||||
|     #define Y_MIN_PIN      11 | ||||
|     #define Y_MAX_PIN      Y_DIAG_PIN | ||||
|   #endif | ||||
|  | ||||
|   #if ENABLED(BLTOUCH) | ||||
|     #define Z_MIN_PIN      11   // Y-MIN | ||||
|     #define SERVO0_PIN     10   // Z-MIN | ||||
|   #else | ||||
|     #define Z_MIN_PIN      10 | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| #define Z_MAX_PIN           7 | ||||
|  | ||||
| // | ||||
| // Z Probe (when not Z_MIN_PIN) | ||||
| // | ||||
| #ifndef Z_MIN_PROBE_PIN | ||||
|   #define Z_MIN_PROBE_PIN  10 | ||||
| #endif | ||||
|  | ||||
| // | ||||
| // Steppers | ||||
| // | ||||
| #define X_STEP_PIN         37 | ||||
| #define X_DIR_PIN          49 | ||||
| #define X_ENABLE_PIN       29 | ||||
| #define X_CS_PIN           41 | ||||
|  | ||||
| #define Y_STEP_PIN         36 | ||||
| #define Y_DIR_PIN          48 | ||||
| #define Y_ENABLE_PIN       28 | ||||
| #define Y_CS_PIN           39 | ||||
|  | ||||
| #define Z_STEP_PIN         35 | ||||
| #define Z_DIR_PIN          47 | ||||
| #define Z_ENABLE_PIN       27 | ||||
| #define Z_CS_PIN           67 | ||||
|  | ||||
| #define E0_STEP_PIN        34 | ||||
| #define E0_DIR_PIN         43 | ||||
| #define E0_ENABLE_PIN      26 | ||||
| #define E0_CS_PIN          66 | ||||
|  | ||||
| // | ||||
| // Temperature Sensors | ||||
| // | ||||
| #define TEMP_0_PIN          0   // Analog Input | ||||
| #define TEMP_1_PIN          1   // Analog Input | ||||
| #define TEMP_BED_PIN        2   // Analog Input | ||||
|  | ||||
| // | ||||
| // Heaters / Fans | ||||
| // | ||||
| #define HEATER_0_PIN        3 | ||||
| #define HEATER_BED_PIN      4 | ||||
|  | ||||
| #define FAN_PIN             8 | ||||
| #define FAN1_PIN            6 | ||||
|  | ||||
| // | ||||
| // Misc. Functions | ||||
| // | ||||
| #define SDSS               53 | ||||
| #define LED_PIN            13 | ||||
| #define CASE_LIGHT_PIN      9 | ||||
|  | ||||
| // | ||||
| // M3/M4/M5 - Spindle/Laser Control | ||||
| // | ||||
| // use P1 connector for spindle pins | ||||
| #define SPINDLE_LASER_PWM_PIN     9   // MUST BE HARDWARE PWM | ||||
| #define SPINDLE_LASER_ENABLE_PIN 18   // Pin should have a pullup! | ||||
| #define SPINDLE_DIR_PIN          19 | ||||
|  | ||||
| // | ||||
| // Průša i3 MK2 Multiplexer Support | ||||
| // | ||||
| #define E_MUX0_PIN         17 | ||||
| #define E_MUX1_PIN         16 | ||||
| #define E_MUX2_PIN         78   // 84 in MK2 Firmware, with BEEPER as 78 | ||||
|  | ||||
| // | ||||
| // LCD / Controller | ||||
| // | ||||
| #if ENABLED(ULTRA_LCD) | ||||
|  | ||||
|   #define KILL_PIN         32 | ||||
|  | ||||
|   #if ENABLED(NEWPANEL) | ||||
|  | ||||
|     #if ENABLED(CR10_STOCKDISPLAY) | ||||
|       #define LCD_PINS_RS     85 | ||||
|       #define LCD_PINS_ENABLE 71 | ||||
|       #define LCD_PINS_D4     70 | ||||
|       #define BTN_EN1         18 | ||||
|       #define BTN_EN2         19 | ||||
|     #else | ||||
|       #define LCD_PINS_RS     82 | ||||
|       #define LCD_PINS_ENABLE 18 | ||||
|       #define LCD_PINS_D4     19 | ||||
|       #define LCD_PINS_D5     70 | ||||
|       #define LCD_PINS_D6     85 | ||||
|       #define LCD_PINS_D7     71 | ||||
|       #define BTN_EN1         14 | ||||
|       #define BTN_EN2         72 | ||||
|     #endif | ||||
|  | ||||
|     #define BTN_ENC            9   // AUX-2 | ||||
|     #define BEEPER_PIN        84   // AUX-4 | ||||
|     #define SD_DETECT_PIN     15 | ||||
|  | ||||
|   #endif // NEWPANEL | ||||
| #endif // ULTRA_LCD | ||||
		Reference in New Issue
	
	Block a user