Marlin_Firmware/Marlin/src/pins/ramps/pins_FORMBOT_TREX2PLUS.h

206 lines
6.2 KiB
C
Raw Normal View History

2018-09-06 09:45:29 -05:00
/**
* Marlin 3D Printer Firmware
2020-02-03 08:00:57 -06:00
* Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
2018-09-06 09:45:29 -05:00
*
* Based on Sprinter and grbl.
2019-06-27 23:57:50 -05:00
* Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm
2018-09-06 09:45:29 -05:00
*
* 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/>.
*
*/
2019-07-04 22:44:12 -05:00
#pragma once
2018-09-06 09:45:29 -05:00
/**
* Override default LCD timing for Formbot T-Rex 2+ machines.
* The long LCD cables and the routing near electrically noisy stepper motors
* requires a slightly longer setup and hold time on the signals.
*/
#define BOARD_ST7920_DELAY_1 DELAY_NS(200)
#define BOARD_ST7920_DELAY_2 DELAY_NS(200)
#define BOARD_ST7920_DELAY_3 DELAY_NS(200)
2018-09-06 09:45:29 -05:00
/**
* Formbot pin assignments
*/
#ifndef __AVR_ATmega2560__
#error "Oops! Select 'Arduino/Genuino Mega or Mega 2560' in 'Tools > Board.'"
2019-07-14 15:34:01 -05:00
#elif HOTENDS > 2 || E_STEPPERS > 2
2019-07-14 15:18:58 -05:00
#error "Formbot supports up to 2 hotends / E-steppers. Comment out this line to continue."
2018-09-06 09:45:29 -05:00
#endif
2019-08-20 19:08:58 -05:00
#define BOARD_INFO_NAME "Formbot"
#define DEFAULT_MACHINE_NAME BOARD_INFO_NAME
2018-09-06 09:45:29 -05:00
//
// Servos
//
2020-03-21 21:13:19 -05:00
#define SERVO0_PIN 11
#define SERVO1_PIN -1 // was 6
#define SERVO2_PIN -1 // was 5
#define SERVO3_PIN -1
2018-09-06 09:45:29 -05:00
//
// Limit Switches
//
2020-03-21 21:13:19 -05:00
#define X_MIN_PIN 3
2018-09-06 09:45:29 -05:00
#ifndef X_MAX_PIN
2020-03-21 21:13:19 -05:00
#define X_MAX_PIN 2
2018-09-06 09:45:29 -05:00
#endif
2020-03-21 21:13:19 -05:00
#define Y_MIN_PIN 14
#define Y_MAX_PIN 15
#define Z_MIN_PIN 18
#define Z_MAX_PIN 19
2018-09-06 09:45:29 -05:00
//
// Z Probe (when not Z_MIN_PIN)
//
#ifndef Z_MIN_PROBE_PIN
2020-03-21 21:13:19 -05:00
#define Z_MIN_PROBE_PIN 32
2018-09-06 09:45:29 -05:00
#endif
//
// Steppers
//
2020-03-21 21:13:19 -05:00
#define X_STEP_PIN 54
#define X_DIR_PIN 55
#define X_ENABLE_PIN 38
2018-09-06 09:45:29 -05:00
#ifndef X_CS_PIN
2020-03-21 21:13:19 -05:00
#define X_CS_PIN 53
2018-09-06 09:45:29 -05:00
#endif
2020-03-21 21:13:19 -05:00
#define Y_STEP_PIN 60
#define Y_DIR_PIN 61
#define Y_ENABLE_PIN 56
2018-09-06 09:45:29 -05:00
#ifndef Y_CS_PIN
2020-03-21 21:13:19 -05:00
#define Y_CS_PIN 49
2018-09-06 09:45:29 -05:00
#endif
2020-03-21 21:13:19 -05:00
#define Z_STEP_PIN 46
#define Z_DIR_PIN 48
#define Z_ENABLE_PIN 62
2018-09-06 09:45:29 -05:00
#ifndef Z_CS_PIN
2020-03-21 21:13:19 -05:00
#define Z_CS_PIN 40
2018-09-06 09:45:29 -05:00
#endif
2020-03-21 21:13:19 -05:00
#define E0_STEP_PIN 26
#define E0_DIR_PIN 28
#define E0_ENABLE_PIN 24
2018-09-06 09:45:29 -05:00
#ifndef E0_CS_PIN
2020-03-21 21:13:19 -05:00
#define E0_CS_PIN 42
2018-09-06 09:45:29 -05:00
#endif
2020-03-21 21:13:19 -05:00
#define E1_STEP_PIN 36
#define E1_DIR_PIN 34
#define E1_ENABLE_PIN 30
2018-09-06 09:45:29 -05:00
#ifndef E1_CS_PIN
2020-03-21 21:13:19 -05:00
#define E1_CS_PIN 44
2018-09-06 09:45:29 -05:00
#endif
2020-03-21 21:13:19 -05:00
#define E2_STEP_PIN 42
#define E2_DIR_PIN 43
#define E2_ENABLE_PIN 44
2018-09-06 09:45:29 -05:00
//
// Temperature Sensors
//
2020-03-21 21:13:19 -05:00
#define TEMP_0_PIN 13 // Analog Input
#define TEMP_1_PIN 15 // Analog Input
#define TEMP_BED_PIN 3 // Analog Input
2018-09-06 09:45:29 -05:00
// SPI for Max6675 or Max31855 Thermocouple
#if DISABLED(SDSUPPORT)
2020-03-21 21:13:19 -05:00
#define MAX6675_SS_PIN 66 // Don't use 53 if using Display/SD card
2018-09-06 09:45:29 -05:00
#else
2020-03-21 21:13:19 -05:00
#define MAX6675_SS_PIN 66 // Don't use 49 (SD_DETECT_PIN)
2018-09-06 09:45:29 -05:00
#endif
//
// Augmentation for auto-assigning RAMPS plugs
//
2019-07-05 18:20:15 -05:00
#if NONE(IS_RAMPS_EEB, IS_RAMPS_EEF, IS_RAMPS_EFB, IS_RAMPS_EFF, IS_RAMPS_SF) && !PIN_EXISTS(MOSFET_D)
2018-09-06 09:45:29 -05:00
#if HOTENDS > 1
#if TEMP_SENSOR_BED
#define IS_RAMPS_EEB
#else
#define IS_RAMPS_EEF
#endif
#elif TEMP_SENSOR_BED
#define IS_RAMPS_EFB
#else
#define IS_RAMPS_EFF
#endif
#endif
//
// Heaters / Fans
//
2020-03-21 21:13:19 -05:00
#define HEATER_0_PIN 10
#define HEATER_1_PIN 7
#define HEATER_BED_PIN 58
2018-09-06 09:45:29 -05:00
2020-03-21 21:13:19 -05:00
#define FAN_PIN 9
2018-09-27 14:13:15 -05:00
2019-02-12 20:08:34 -06:00
#if HAS_FILAMENT_SENSOR
2020-03-21 21:13:19 -05:00
#define FIL_RUNOUT_PIN 4
//#define FIL_RUNOUT2_PIN -1
#else
// Though defined as a fan pin, it is utilized as a dedicated laser pin by Formbot.
2020-03-21 21:13:19 -05:00
#define FAN1_PIN 4
2018-09-06 09:45:29 -05:00
#endif
//
// Misc. Functions
//
2020-03-21 21:13:19 -05:00
#define SDSS 53
#ifndef LED_PIN
2020-03-21 21:13:19 -05:00
#define LED_PIN 13 // The Formbot v 1 board has almost no unassigned pins on it. The Board's LED
2018-09-17 01:06:22 -05:00
#endif // is a good place to get a signal to control the Max7219 LED Matrix.
2018-09-06 09:45:29 -05:00
// Use the RAMPS 1.4 Analog input 5 on the AUX2 connector
2020-03-21 21:13:19 -05:00
#define FILWIDTH_PIN 5 // Analog Input
2018-09-06 09:45:29 -05:00
#ifndef PS_ON_PIN
2020-03-21 21:13:19 -05:00
#define PS_ON_PIN 12
2018-09-06 09:45:29 -05:00
#endif
2020-03-21 21:13:19 -05:00
#define CASE_LIGHT_PIN 8
2018-09-06 09:45:29 -05:00
//
// LCD / Controller
//
// Formbot only supports REPRAP_DISCOUNT_SMART_CONTROLLER
//
#if ENABLED(REPRAP_DISCOUNT_SMART_CONTROLLER)
#ifndef BEEPER_PIN
2020-03-21 21:13:19 -05:00
#define BEEPER_PIN 37
#endif
2020-03-21 21:13:19 -05:00
#define BTN_EN1 31
#define BTN_EN2 33
#define BTN_ENC 35
#define SD_DETECT_PIN 49
// Allow MAX7219 to steal the KILL pin
#if !defined(KILL_PIN) && MAX7219_CLK_PIN != 41 && MAX7219_DIN_PIN != 41 && MAX7219_LOAD_PIN != 41
2020-03-21 21:13:19 -05:00
#define KILL_PIN 41
2018-09-06 09:45:29 -05:00
#endif
2020-03-21 21:13:19 -05:00
#define LCD_PINS_RS 16
#define LCD_PINS_ENABLE 17
#define LCD_PINS_D4 23
#define LCD_PINS_D5 25
#define LCD_PINS_D6 27
#define LCD_PINS_D7 29
2018-09-06 09:45:29 -05:00
#endif