123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218 |
- /**
- * 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/>.
- *
- */
-
- /**
- * IMPORTANT NOTE:
- * Rambo users should be sure to compile Marlin using either the RAMBo
- * board type if using the Arduino IDE - available via the link below - or
- * the 'rambo' environment if using platformio, by specifying '-e rambo' on
- * the command line or by changing the value of the 'env_default' variable to
- * 'rambo' in the supplied platformio.ini.
- *
- * If you don't compile using the proper board type, the RAMBo's extended
- * pins will likely be unavailable and accessories/addons may not work.
- *
- * Instructions for installing the Arduino RAMBo board type for the
- * Arduino IDE are available at:
- * http://reprap.org/wiki/Rambo_firmware
- */
-
- /**
- * Rambo pin assignments
- */
-
- #ifndef __AVR_ATmega2560__
- #error "Oops! Make sure you have 'Arduino Mega 2560' selected from the 'Tools -> Boards' menu."
- #endif
-
- #define BOARD_NAME "Rambo"
-
- #define LARGE_FLASH true
-
- //
- // Servos
- //
- #define SERVO0_PIN 22 // Motor header MX1
- #define SERVO1_PIN 23 // Motor header MX2
- #define SERVO2_PIN 24 // Motor header MX3
- #define SERVO3_PIN 5 // PWM header pin 5
-
- //
- // Z Probe (when not Z_MIN_PIN)
- //
- #ifndef Z_MIN_PROBE_PIN
- #define Z_MIN_PROBE_PIN 30
- #endif
-
- //
- // Limit Switches
- //
- #define X_MIN_PIN 12
- #define X_MAX_PIN 24
- #define Y_MIN_PIN 11
- #define Y_MAX_PIN 23
- #define Z_MIN_PIN 10
- #define Z_MAX_PIN 30
-
- //
- // Steppers
- //
- #define X_STEP_PIN 37
- #define X_DIR_PIN 48
- #define X_ENABLE_PIN 29
-
- #define Y_STEP_PIN 36
- #define Y_DIR_PIN 49
- #define Y_ENABLE_PIN 28
-
- #define Z_STEP_PIN 35
- #define Z_DIR_PIN 47
- #define Z_ENABLE_PIN 27
-
- #define E0_STEP_PIN 34
- #define E0_DIR_PIN 43
- #define E0_ENABLE_PIN 26
-
- #define E1_STEP_PIN 33
- #define E1_DIR_PIN 42
- #define E1_ENABLE_PIN 25
-
- // Microstepping pins - Mapping not from fastio.h (?)
- #define X_MS1_PIN 40
- #define X_MS2_PIN 41
- #define Y_MS1_PIN 69
- #define Y_MS2_PIN 39
- #define Z_MS1_PIN 68
- #define Z_MS2_PIN 67
- #define E0_MS1_PIN 65
- #define E0_MS2_PIN 66
- #define E1_MS1_PIN 63
- #define E1_MS2_PIN 64
-
- #define DIGIPOTSS_PIN 38
- #define DIGIPOT_CHANNELS {4,5,3,0,1} // X Y Z E0 E1 digipot channels to stepper driver mapping
-
- //
- // 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 9
- #define HEATER_1_PIN 7
- #define HEATER_2_PIN 6
- #define HEATER_BED_PIN 3
-
- #define FAN_PIN 8
- #define FAN1_PIN 6
- #define FAN2_PIN 2
-
- //
- // Misc. Functions
- //
- #define SDSS 53
- #define LED_PIN 13
- #define FILWIDTH_PIN 3 // Analog Input
- #define PS_ON_PIN 4
- #define CASE_LIGHT_PIN 46
-
- //
- // LCD / Controller
- //
- #if ENABLED(ULTRA_LCD)
-
- #define KILL_PIN 80
-
- #if ENABLED(NEWPANEL)
-
- #define LCD_PINS_RS 70
- #define LCD_PINS_ENABLE 71
- #define LCD_PINS_D4 72
- #define LCD_PINS_D5 73
- #define LCD_PINS_D6 74
- #define LCD_PINS_D7 75
-
- #if ENABLED(VIKI2) || ENABLED(miniVIKI)
- #define BEEPER_PIN 44
- // NB: Panucatt's Viki 2.0 wiring diagram (v1.2) indicates that the
- // beeper/buzzer is connected to pin 33; however, the pin used in the
- // diagram is actually pin 44, so this is correct.
-
- #define DOGLCD_A0 70
- #define DOGLCD_CS 71
- #define LCD_SCREEN_ROT_180
-
- #define BTN_EN1 85
- #define BTN_EN2 84
- #define BTN_ENC 83
-
- #define SD_DETECT_PIN -1 // Pin 72 if using easy adapter board
-
- #define STAT_LED_RED_PIN 22
- #define STAT_LED_BLUE_PIN 32
-
- #else
-
- #define BEEPER_PIN 79 // AUX-4
-
- // AUX-2
- #define BTN_EN1 76
- #define BTN_EN2 77
- #define BTN_ENC 78
-
- #define SD_DETECT_PIN 81
-
- #endif // VIKI2/miniVIKI
-
- #else // !NEWPANEL - old style panel with shift register
-
- // No Beeper added
- #define BEEPER_PIN 33
-
- // buttons are attached to a shift register
- // Not wired yet
- //#define SHIFT_CLK 38
- //#define SHIFT_LD 42
- //#define SHIFT_OUT 40
- //#define SHIFT_EN 17
-
- #define LCD_PINS_RS 75
- #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
-
- #endif // !NEWPANEL
-
- #endif // ULTRA_LCD
-
- //
- // M3/M4/M5 - Spindle/Laser Control
- //
- #define SPINDLE_LASER_PWM_PIN 45 // MUST BE HARDWARE PWM
- #define SPINDLE_LASER_ENABLE_PIN 31 // Pin should have a pullup!
- #define SPINDLE_DIR_PIN 32
|