2011-12-12 19:34:37 +01:00
# ifndef PINS_H
# define PINS_H
2014-12-18 21:02:36 +01:00
# include "boards.h"
# if !MB(5DPRINT)
2012-08-30 09:16:57 +02:00
# 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
# define E1_MS1_PIN -1
# define E1_MS2_PIN -1
# define DIGIPOTSS_PIN -1
2014-04-24 06:55:00 +02:00
# endif
/****************************************************************************************
* 5 DPrint D8 Driver board
* https : //bitbucket.org/makible/5dprint-d8-controller-board
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2014-12-18 21:02:36 +01:00
# if MB(5DPRINT)
2014-04-24 06:55:00 +02:00
# define KNOWN_BOARD 1
# define AT90USB 1286 // Disable MarlinSerial etc.
# ifndef __AVR_AT90USB1286__
# error Oops! Make sure you have 'Teensy++ 2.0' selected from the 'Tools -> Boards' menu.
# endif
# define LARGE_FLASH true
# define X_STEP_PIN 0
# define X_DIR_PIN 1
# define X_ENABLE_PIN 23
# define X_STOP_PIN 37
# define Y_STEP_PIN 2
# define Y_DIR_PIN 3
# define Y_ENABLE_PIN 19
# define Y_STOP_PIN 36
# define Z_STEP_PIN 4
# define Z_DIR_PIN 5
# define Z_ENABLE_PIN 18
# define Z_STOP_PIN 39
# define E0_STEP_PIN 6
# define E0_DIR_PIN 7
# define E0_ENABLE_PIN 17
# define HEATER_0_PIN 21 // Extruder
# define HEATER_1_PIN -1
# define HEATER_2_PIN -1
# define HEATER_BED_PIN 20 // Bed
// You may need to change FAN_PIN to 16 because Marlin isn't using fastio.h
// for the fan and Teensyduino uses a different pin mapping.
2014-04-25 06:57:47 +02:00
# define FAN_PIN 16 // Fan
2014-04-24 06:55:00 +02:00
# define TEMP_0_PIN 1 // Extruder / Analog pin numbering
# define TEMP_BED_PIN 0 // Bed / Analog pin numbering
# define TEMP_1_PIN -1
# define TEMP_2_PIN -1
# define SDPOWER -1
# define LED_PIN -1
# define PS_ON_PIN -1
# define KILL_PIN -1
# define ALARM_PIN -1
2014-04-25 06:57:47 +02:00
// The SDSS pin uses a different pin mapping from file Sd2PinMap.h
# define SDSS 20
2014-04-24 06:55:00 +02:00
# ifndef SDSUPPORT
// these pins are defined in the SD library if building with SD support
# define SCK_PIN 9
# define MISO_PIN 11
# define MOSI_PIN 10
# endif
// Microstepping pins
2014-04-25 06:57:11 +02:00
// Note that the pin mapping is not from fastio.h
// See Sd2PinMap.h for the pin configurations
# define X_MS1_PIN 25
# define X_MS2_PIN 26
# define Y_MS1_PIN 9
# define Y_MS2_PIN 8
# define Z_MS1_PIN 7
# define Z_MS2_PIN 6
# define E0_MS1_PIN 5
# define E0_MS2_PIN 4
2014-04-24 06:55:00 +02:00
2014-12-18 21:02:36 +01:00
# endif // 5DPRINT
2014-04-24 06:55:00 +02:00
2014-07-03 21:01:41 +02:00
/****************************************************************************************
* Leapfrog Driver board
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2014-12-18 21:02:36 +01:00
# if MB(LEAPFROG) // Leapfrog board
2014-07-03 21:01:41 +02:00
# define KNOWN_BOARD 1
# ifndef __AVR_ATmega1280__
# ifndef __AVR_ATmega2560__
# error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
# endif
# endif
# define X_STEP_PIN 28
# define X_DIR_PIN 63
# define X_ENABLE_PIN 29
# define X_MIN_PIN 47
# define X_MAX_PIN -1 //2 //Max endstops default to disabled "-1", set to commented value to enable.
# define Y_STEP_PIN 14 // A6
# define Y_DIR_PIN 15 // A0
# define Y_ENABLE_PIN 39
# define Y_MIN_PIN 48
# define Y_MAX_PIN -1 //15
# define Z_STEP_PIN 31 // A2
# define Z_DIR_PIN 32 // A6
# define Z_ENABLE_PIN 30 // A1
# define Z_MIN_PIN 49
# define Z_MAX_PIN -1
# define E0_STEP_PIN 34 //34
# define E0_DIR_PIN 35 //35
# define E0_ENABLE_PIN 33 //33
# define E1_STEP_PIN 37 //37
# define E1_DIR_PIN 40 //40
# define E1_ENABLE_PIN 36 //36
# define Y2_STEP_PIN 37
# define Y2_DIR_PIN 40
# define Y2_ENABLE_PIN 36
2014-07-03 21:15:03 +02:00
# define Z2_STEP_PIN 37
# define Z2_DIR_PIN 40
# define Z2_ENABLE_PIN 36
2014-07-03 21:01:41 +02:00
# define SDPOWER -1
# define SDSS 11
# define SDCARDDETECT -1 // 10 optional also used as mode pin
# define LED_PIN 13
# define FAN_PIN 7
# define PS_ON_PIN -1
# define KILL_PIN -1
# define SOL1_PIN 16
# define SOL2_PIN 17
# define HEATER_0_PIN 9
# define HEATER_1_PIN 8 // 12
# define HEATER_2_PIN 11 //-1 // 13
# define TEMP_0_PIN 13 //D27 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!!
# define TEMP_1_PIN 15 // 1
# define TEMP_2_PIN -1 // 2
# define HEATER_BED_PIN 10 // 14/15
# define TEMP_BED_PIN 14 // 1,2 or I2C
/* Unused (1) (2) (3) 4 5 6 7 8 9 10 11 12 13 (14) (15) (16) 17 (18) (19) (20) (21) (22) (23) 24 (25) (26) (27) 28 (29) (30) (31) */
2014-12-18 21:02:36 +01:00
# endif // LEAPFROG
2014-07-03 21:01:41 +02:00
2014-04-24 06:55:00 +02:00
/****************************************************************************************
*
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2012-08-30 09:16:57 +02:00
2014-12-18 21:02:36 +01:00
# if MB(99)
2013-06-07 00:49:25 +02:00
# define KNOWN_BOARD 1
2012-01-24 03:19:37 +01:00
# define X_STEP_PIN 2
# define X_DIR_PIN 3
# define X_ENABLE_PIN -1
2012-12-16 21:08:55 +01:00
# define X_STOP_PIN 16
2012-01-24 03:19:37 +01:00
# define Y_STEP_PIN 5
# define Y_DIR_PIN 6
# define Y_ENABLE_PIN -1
2012-12-16 21:08:55 +01:00
# define Y_STOP_PIN 67
2012-01-24 03:19:37 +01:00
# define Z_STEP_PIN 62
# define Z_DIR_PIN 63
# define Z_ENABLE_PIN -1
2012-12-16 21:08:55 +01:00
# define Z_STOP_PIN 59
2012-01-24 03:19:37 +01:00
# define E0_STEP_PIN 65
# define E0_DIR_PIN 66
# define E0_ENABLE_PIN -1
# define SDPOWER -1
# define SDSS 53
# define LED_PIN -1
# define FAN_PIN -1
# define PS_ON_PIN 9
# define KILL_PIN -1
# define HEATER_0_PIN 13
# define HEATER_1_PIN -1
# define HEATER_2_PIN -1
# define TEMP_0_PIN 6 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!!
# define TEMP_1_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!!
# define TEMP_2_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!!
# define HEATER_BED_PIN 4
# define TEMP_BED_PIN 10
2014-12-18 21:02:36 +01:00
# endif // 99
2012-01-24 03:19:37 +01:00
2013-09-26 16:40:54 +02:00
/****************************************************************************************
* Sethi 3 D_1 pin assignment - www . sethi3d . com . br
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2014-12-18 21:02:36 +01:00
# if MB(SETHI)
2013-09-26 16:40:54 +02:00
# define KNOWN_BOARD
# if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega644__) && !defined(__AVR_ATmega1284P__)
# error Oops! Make sure you have 'Sethi 3D' selected from the 'Tools -> Boards' menu.
# endif
# ifndef GEN7_VERSION
# define GEN7_VERSION 12 // v1.x
# endif
//x axis pins
# define X_STEP_PIN 19
# define X_DIR_PIN 18
# define X_ENABLE_PIN 24
# define X_STOP_PIN 2
//y axis pins
# define Y_STEP_PIN 23
# define Y_DIR_PIN 22
# define Y_ENABLE_PIN 24
# define Y_STOP_PIN 0
//z axis pins
# define Z_STEP_PIN 26
# define Z_DIR_PIN 25
# define Z_ENABLE_PIN 24
# define Z_MIN_PIN 1
# define Z_MAX_PIN 0
//extruder pins
# define E0_STEP_PIN 28
# define E0_DIR_PIN 27
# define E0_ENABLE_PIN 24
# define TEMP_0_PIN 1
# define TEMP_1_PIN -1
# define TEMP_2_PIN -1
# define TEMP_BED_PIN 2
# define HEATER_0_PIN 4
# define HEATER_1_PIN -1
# define HEATER_2_PIN -1
# define HEATER_BED_PIN 3
# define KILL_PIN -1
# define SDPOWER -1
# define SDSS -1 // SCL pin of I2C header
# define LED_PIN -1
# if (GEN7_VERSION >= 13)
// Gen7 v1.3 removed the fan pin
# define FAN_PIN -1
# else
# define FAN_PIN 31
# endif
# define PS_ON_PIN 15
//All these generations of Gen7 supply thermistor power
//via PS_ON, so ignore bad thermistor readings
# define BOGUS_TEMPERATURE_FAILSAFE_OVERRIDE
//our pin for debugging.
# define DEBUG_PIN 0
//our RS485 pins
# define TX_ENABLE_PIN 12
# define RX_ENABLE_PIN 13
2014-12-18 21:02:36 +01:00
# endif // SETHI
2013-05-06 16:44:38 +02:00
2011-12-12 19:34:37 +01:00
/****************************************************************************************
2012-08-23 00:15:46 +02:00
* Gen7 v1 .1 , v1 .2 , v1 .3 pin assignment
2011-12-12 19:34:37 +01:00
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2012-02-27 02:39:49 +01:00
2014-12-18 21:02:36 +01:00
# if MB(GEN7_13)
# define MOTHERBOARD BOARD_GEN7_12
2012-02-27 02:39:49 +01:00
# define GEN7_VERSION 13 // v1.3
2011-12-12 19:34:37 +01:00
# endif
2014-12-18 21:02:36 +01:00
# if MB(GEN7_12)
2012-02-24 23:34:41 +01:00
# define KNOWN_BOARD
2011-12-12 19:34:37 +01:00
2012-02-24 23:34:41 +01:00
# if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega644__) && !defined(__AVR_ATmega1284P__)
# error Oops! Make sure you have 'Gen7' selected from the 'Tools -> Boards' menu.
2011-12-12 19:34:37 +01:00
2012-02-24 23:34:41 +01:00
# endif
2011-12-12 19:34:37 +01:00
2012-02-27 02:39:49 +01:00
# ifndef GEN7_VERSION
# define GEN7_VERSION 12 // v1.x
# endif
2012-02-24 23:34:41 +01:00
//x axis pins
# define X_STEP_PIN 19
# define X_DIR_PIN 18
# define X_ENABLE_PIN 24
2012-12-16 21:08:55 +01:00
# define X_STOP_PIN 7
2011-12-12 19:34:37 +01:00
2012-02-24 23:34:41 +01:00
//y axis pins
# define Y_STEP_PIN 23
# define Y_DIR_PIN 22
# define Y_ENABLE_PIN 24
2012-12-16 21:08:55 +01:00
# define Y_STOP_PIN 5
2011-12-12 19:34:37 +01:00
2012-02-24 23:34:41 +01:00
//z axis pins
# define Z_STEP_PIN 26
# define Z_DIR_PIN 25
# define Z_ENABLE_PIN 24
# define Z_MIN_PIN 1
2012-02-27 02:15:40 +01:00
# define Z_MAX_PIN 0
2011-12-12 19:34:37 +01:00
2012-02-24 23:34:41 +01:00
//extruder pins
# define E0_STEP_PIN 28
# define E0_DIR_PIN 27
# define E0_ENABLE_PIN 24
2011-12-12 19:34:37 +01:00
2012-02-24 23:34:41 +01:00
# define TEMP_0_PIN 1
# define TEMP_1_PIN -1
# define TEMP_2_PIN -1
# define TEMP_BED_PIN 2
2011-12-12 19:34:37 +01:00
2012-02-24 23:34:41 +01:00
# define HEATER_0_PIN 4
# define HEATER_1_PIN -1
# define HEATER_2_PIN -1
# define HEATER_BED_PIN 3
2011-12-12 19:34:37 +01:00
2012-09-04 08:20:27 +02:00
# define KILL_PIN -1
2011-12-12 19:34:37 +01:00
2012-02-24 23:34:41 +01:00
# define SDPOWER -1
# define SDSS -1 // SCL pin of I2C header
# define LED_PIN -1
2011-12-12 19:34:37 +01:00
2012-02-27 02:39:49 +01:00
# if (GEN7_VERSION >= 13)
2012-02-24 23:34:41 +01:00
// Gen7 v1.3 removed the fan pin
# define FAN_PIN -1
# else
# define FAN_PIN 31
# endif
# define PS_ON_PIN 15
2011-12-12 19:34:37 +01:00
2012-10-26 23:17:26 +02:00
//All these generations of Gen7 supply thermistor power
//via PS_ON, so ignore bad thermistor readings
# define BOGUS_TEMPERATURE_FAILSAFE_OVERRIDE
2012-08-23 00:15:46 +02:00
//our pin for debugging.
# define DEBUG_PIN 0
//our RS485 pins
# define TX_ENABLE_PIN 12
# define RX_ENABLE_PIN 13
# endif
/****************************************************************************************
* Gen7 v1 .4 pin assignment
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2014-12-18 21:02:36 +01:00
# if MB(GEN7_14)
2012-08-23 00:15:46 +02:00
# define GEN7_VERSION 14 // v1.4
# endif
2014-12-18 21:02:36 +01:00
# if MB(GEN7_14)
2012-08-23 00:15:46 +02:00
# define KNOWN_BOARD
# if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega644__) && !defined(__AVR_ATmega1284P__)
# error Oops! Make sure you have 'Gen7' selected from the 'Tools -> Boards' menu.
# endif
# ifndef GEN7_VERSION
# define GEN7_VERSION 14 // v1.x
2012-02-27 02:39:49 +01:00
# endif
2012-08-23 00:15:46 +02:00
//x axis pins
# define X_STEP_PIN 29
# define X_DIR_PIN 28
# define X_ENABLE_PIN 25
2012-12-16 21:08:55 +01:00
# define X_STOP_PIN 0
2012-08-23 00:15:46 +02:00
//y axis pins
# define Y_STEP_PIN 27
# define Y_DIR_PIN 26
# define Y_ENABLE_PIN 25
2012-12-16 21:08:55 +01:00
# define Y_STOP_PIN 1
2012-08-23 00:15:46 +02:00
//z axis pins
# define Z_STEP_PIN 23
# define Z_DIR_PIN 22
# define Z_ENABLE_PIN 25
2012-12-16 21:08:55 +01:00
# define Z_STOP_PIN 2
2012-08-23 00:15:46 +02:00
//extruder pins
# define E0_STEP_PIN 19
# define E0_DIR_PIN 18
# define E0_ENABLE_PIN 25
2013-04-16 18:37:38 +02:00
# define TEMP_0_PIN 1
2012-08-23 00:15:46 +02:00
# define TEMP_1_PIN -1
# define TEMP_2_PIN -1
2013-04-16 18:37:38 +02:00
# define TEMP_BED_PIN 0
2012-08-23 00:15:46 +02:00
# define HEATER_0_PIN 4
# define HEATER_1_PIN -1
# define HEATER_2_PIN -1
# define HEATER_BED_PIN 3
2012-10-26 23:28:37 +02:00
# define KILL_PIN -1
2012-08-23 00:15:46 +02:00
# define SDPOWER -1
# define SDSS -1 // SCL pin of I2C header
# define LED_PIN -1
# define FAN_PIN -1
# define PS_ON_PIN 15
2012-02-24 23:34:41 +01:00
//our pin for debugging.
# define DEBUG_PIN 0
2011-12-12 19:34:37 +01:00
2012-02-24 23:34:41 +01:00
//our RS485 pins
# define TX_ENABLE_PIN 12
# define RX_ENABLE_PIN 13
2011-12-12 19:34:37 +01:00
2014-12-18 21:02:36 +01:00
# endif // GEN7
2011-12-12 19:34:37 +01:00
2014-12-18 21:02:36 +01:00
/******************************************************************************
2012-02-24 23:34:41 +01:00
* Gen7 Alfons3 pin assignment
2011-12-12 19:34:37 +01:00
*
2014-12-18 21:02:36 +01:00
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2012-02-24 23:34:41 +01:00
/* These Pins are assigned for the modified GEN7 Board from Alfons3 Please review the pins and adjust it for your needs*/
2011-12-12 19:34:37 +01:00
2014-12-18 21:02:36 +01:00
# if MB(GEN7_CUSTOM)
2012-02-24 23:34:41 +01:00
# define KNOWN_BOARD
2011-12-12 19:34:37 +01:00
2012-02-24 23:34:41 +01:00
# if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega644__) && !defined(__AVR_ATmega1284P__)
# error Oops! Make sure you have 'Gen7' selected from the 'Tools -> Boards' menu.
# endif
2011-12-12 19:34:37 +01:00
2012-02-24 23:34:41 +01:00
//x axis pins
2013-06-07 00:49:25 +02:00
# define X_STEP_PIN 21 // different from standard GEN7
# define X_DIR_PIN 20 // different from standard GEN7
2012-02-24 23:34:41 +01:00
# define X_ENABLE_PIN 24
2012-12-16 21:08:55 +01:00
# define X_STOP_PIN 0
2011-12-12 19:34:37 +01:00
2012-02-24 23:34:41 +01:00
//y axis pins
# define Y_STEP_PIN 23
# define Y_DIR_PIN 22
# define Y_ENABLE_PIN 24
2012-12-16 21:08:55 +01:00
# define Y_STOP_PIN 1
2011-12-12 19:34:37 +01:00
2012-02-24 23:34:41 +01:00
//z axis pins
# define Z_STEP_PIN 26
# define Z_DIR_PIN 25
# define Z_ENABLE_PIN 24
2012-12-16 21:08:55 +01:00
# define Z_STOP_PIN 2
2011-12-12 19:34:37 +01:00
2012-02-24 23:34:41 +01:00
//extruder pins
# define E0_STEP_PIN 28
# define E0_DIR_PIN 27
# define E0_ENABLE_PIN 24
2013-06-07 00:49:25 +02:00
2012-02-24 23:34:41 +01:00
# define TEMP_0_PIN 2
# define TEMP_1_PIN -1
# define TEMP_2_PIN -1
# define TEMP_BED_PIN 1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 34 bed)
2013-06-07 00:49:25 +02:00
2012-02-24 23:34:41 +01:00
# define HEATER_0_PIN 4
2013-06-07 00:49:25 +02:00
# define HEATER_1_PIN -1
2012-02-24 23:34:41 +01:00
# define HEATER_2_PIN -1
# define HEATER_BED_PIN 3 // (bed)
2011-12-12 19:34:37 +01:00
2012-02-24 23:34:41 +01:00
# define SDPOWER -1
# define SDSS 31 // SCL pin of I2C header || CS Pin for SD Card support
# define LED_PIN -1
2011-12-12 19:34:37 +01:00
2012-02-24 23:34:41 +01:00
# define FAN_PIN -1
# define PS_ON_PIN 19
//our pin for debugging.
2011-12-12 19:34:37 +01:00
2012-02-24 23:34:41 +01:00
# define DEBUG_PIN -1
2011-12-12 19:34:37 +01:00
2012-02-24 23:34:41 +01:00
//our RS485 pins
//#define TX_ENABLE_PIN 12
//#define RX_ENABLE_PIN 13
2013-06-07 00:49:25 +02:00
# define BEEPER -1
# define SDCARDDETECT -1
# define SUICIDE_PIN -1 //has to be defined; otherwise Power_off doesn't work
2012-09-04 08:20:27 +02:00
# define KILL_PIN -1
2013-06-07 00:49:25 +02:00
//Pins for 4bit LCD Support
# define LCD_PINS_RS 18
2012-02-24 23:34:41 +01:00
# define LCD_PINS_ENABLE 17
# define LCD_PINS_D4 16
2013-06-07 00:49:25 +02:00
# define LCD_PINS_D5 15
2012-02-24 23:34:41 +01:00
# define LCD_PINS_D6 13
# define LCD_PINS_D7 14
2013-06-07 00:49:25 +02:00
2012-02-24 23:34:41 +01:00
//buttons are directly attached
# define BTN_EN1 11
# define BTN_EN2 10
# define BTN_ENC 12 //the click
2011-12-12 19:34:37 +01:00
2014-12-18 21:02:36 +01:00
# endif // GEN7_CUSTOM
2011-12-12 19:34:37 +01:00
/****************************************************************************************
* Arduino Mega pin assignment
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2015-01-20 20:46:20 +01:00
# if IS_RAMPS || MB(3DRAG) || MB(K8200) || MB(AZTEEG_X3) || MB(AZTEEG_X3_PRO)
2011-12-12 19:34:37 +01:00
# define KNOWN_BOARD 1
//////////////////FIX THIS//////////////
# ifndef __AVR_ATmega1280__
# ifndef __AVR_ATmega2560__
# error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
# endif
# endif
2013-06-09 22:57:40 +02:00
2011-12-12 19:34:37 +01:00
// uncomment one of the following lines for RAMPS v1.3 or v1.0, comment both for v1.2 or 1.1
// #define RAMPS_V_1_3
// #define RAMPS_V_1_0
2015-01-20 20:46:20 +01:00
# if (IS_RAMPS && !MB(RAMPS_OLD)) || MB(3DRAG) || MB(K8200) || MB(AZTEEG_X3) || MB(AZTEEG_X3_PRO)
2011-12-12 19:34:37 +01:00
2013-06-09 22:57:40 +02:00
# define LARGE_FLASH true
2014-02-05 10:47:12 +01:00
2015-01-20 20:46:20 +01:00
# if MB(3DRAG) || MB(K8200)
2013-06-09 22:57:40 +02:00
# define X_STEP_PIN 54
# define X_DIR_PIN 55
# define X_ENABLE_PIN 38
# define X_MIN_PIN 3
# define X_MAX_PIN -1 //2 //Max endstops default to disabled "-1", set to commented value to enable.
2011-12-12 19:34:37 +01:00
2013-06-09 22:57:40 +02:00
# define Y_STEP_PIN 60
# define Y_DIR_PIN 61
# define Y_ENABLE_PIN 56
# define Y_MIN_PIN 14
# define Y_MAX_PIN -1 //15
2011-12-12 19:34:37 +01:00
2013-06-09 22:57:40 +02:00
# define Z_STEP_PIN 46
# define Z_DIR_PIN 48
# define Z_ENABLE_PIN 63
# define Z_MIN_PIN 18
# define Z_MAX_PIN -1
2012-08-04 08:32:26 +02:00
2013-10-31 03:44:20 +01:00
# define Y2_STEP_PIN 36
# define Y2_DIR_PIN 34
# define Y2_ENABLE_PIN 30
2013-06-09 22:57:40 +02:00
# define Z2_STEP_PIN 36
# define Z2_DIR_PIN 34
# define Z2_ENABLE_PIN 30
2011-12-12 19:34:37 +01:00
2013-06-09 22:57:40 +02:00
# define E0_STEP_PIN 26
# define E0_DIR_PIN 28
# define E0_ENABLE_PIN 24
2011-12-12 19:34:37 +01:00
2013-06-09 22:57:40 +02:00
# define E1_STEP_PIN 36
# define E1_DIR_PIN 34
# define E1_ENABLE_PIN 30
2012-02-24 23:34:41 +01:00
2013-06-09 22:57:40 +02:00
# define SDPOWER -1
# define SDSS 25 //53
# define LED_PIN 13
2012-11-07 22:04:28 +01:00
2014-02-05 10:47:12 +01:00
# define BEEPER 33
2011-12-12 19:34:37 +01:00
2013-06-09 22:57:40 +02:00
# else
2011-12-12 19:34:37 +01:00
2013-06-09 22:57:40 +02:00
# define X_STEP_PIN 54
# define X_DIR_PIN 55
# define X_ENABLE_PIN 38
# define X_MIN_PIN 3
# define X_MAX_PIN 2
# define Y_STEP_PIN 60
# define Y_DIR_PIN 61
# define Y_ENABLE_PIN 56
# define Y_MIN_PIN 14
# define Y_MAX_PIN 15
# define Z_STEP_PIN 46
# define Z_DIR_PIN 48
# define Z_ENABLE_PIN 62
# define Z_MIN_PIN 18
# define Z_MAX_PIN 19
2013-10-31 03:44:20 +01:00
# define Y2_STEP_PIN 36
# define Y2_DIR_PIN 34
# define Y2_ENABLE_PIN 30
2013-06-09 22:57:40 +02:00
# define Z2_STEP_PIN 36
# define Z2_DIR_PIN 34
# define Z2_ENABLE_PIN 30
# define E0_STEP_PIN 26
# define E0_DIR_PIN 28
# define E0_ENABLE_PIN 24
# define E1_STEP_PIN 36
# define E1_DIR_PIN 34
# define E1_ENABLE_PIN 30
2014-12-18 21:02:36 +01:00
# if MB(RAMPS_13_EEB) //FMM added for Filament Extruder
2014-08-07 02:30:57 +02:00
# ifdef FILAMENT_SENSOR
2014-12-18 21:02:36 +01:00
//define analog pin for the filament width sensor input
//Use the RAMPS 1.4 Analog input 5 on the AUX2 connector
2014-08-07 02:30:57 +02:00
# define FILWIDTH_PIN 5
# endif
# endif
2014-12-18 21:02:36 +01:00
# if MB(AZTEEG_X3_PRO)
2014-02-05 23:25:42 +01:00
# define E2_STEP_PIN 23
# define E2_DIR_PIN 25
# define E2_ENABLE_PIN 40
# define E3_STEP_PIN 27
# define E3_DIR_PIN 29
# define E3_ENABLE_PIN 41
# define E4_STEP_PIN 43
# define E4_DIR_PIN 37
# define E4_ENABLE_PIN 42
# endif
2013-06-09 22:57:40 +02:00
# define SDPOWER -1
# define SDSS 53
# define LED_PIN 13
# endif
2012-02-18 19:25:04 +01:00
2014-12-18 21:02:36 +01:00
# if MB(RAMPS_13_EFB) || MB(RAMPS_13_EFF) || MB(AZTEEG_X3) || MB(AZTEEG_X3_PRO)
2013-06-07 00:49:25 +02:00
# define FAN_PIN 9 // (Sprinter config)
# else
# define FAN_PIN 4 // IO pin. Buffer needed
# endif
2012-11-07 22:04:28 +01:00
2015-01-20 20:46:20 +01:00
# if MB(3DRAG) || MB(K8200) || MB(RAMPS_13_EEF)
2014-02-05 10:47:12 +01:00
# define FAN_PIN 8
2013-06-09 22:57:40 +02:00
# endif
2014-02-05 10:47:12 +01:00
2014-12-18 21:02:36 +01:00
# if MB(RAMPS_13_EFF)
2014-04-03 19:05:48 +02:00
# define CONTROLLERFAN_PIN -1 //Pin used for the fan to cool controller
2013-06-20 23:59:56 +02:00
# endif
2012-02-18 19:25:04 +01:00
2013-06-07 00:49:25 +02:00
# define PS_ON_PIN 12
2011-12-12 19:34:37 +01:00
2013-06-07 00:49:25 +02:00
# if defined(REPRAP_DISCOUNT_SMART_CONTROLLER) || defined(G3D_PANEL)
# define KILL_PIN 41
# else
# define KILL_PIN -1
# endif
2011-12-12 19:34:37 +01:00
2014-12-18 21:02:36 +01:00
# if MB(RAMPS_13_EFF)
2013-06-20 23:59:56 +02:00
# define HEATER_0_PIN 8
# else
# define HEATER_0_PIN 10 // EXTRUDER 1
# endif
2014-12-18 21:02:36 +01:00
# if MB(RAMPS_13_EFB) || MB(AZTEEG_X3)
2013-06-07 00:49:25 +02:00
# define HEATER_1_PIN -1
# else
# define HEATER_1_PIN 9 // EXTRUDER 2 (FAN On Sprinter)
# endif
2012-11-07 02:32:13 +01:00
2012-11-07 22:04:28 +01:00
2015-01-20 20:46:20 +01:00
# if MB(3DRAG) || MB(K8200)
2014-02-05 10:47:12 +01:00
# define HEATER_0_PIN 10
# define HEATER_1_PIN 12
# define HEATER_2_PIN 6
2014-12-18 21:02:36 +01:00
# elif MB(AZTEEG_X3_PRO)
2014-02-05 23:25:42 +01:00
# define HEATER_2_PIN 16
# define HEATER_3_PIN 17
# define HEATER_4_PIN 4
# define HEATER_5_PIN 5
# define HEATER_6_PIN 6
# define HEATER_7_PIN 11
# else
# define HEATER_2_PIN -1
2013-06-09 22:57:40 +02:00
# endif
2012-11-07 22:04:28 +01:00
2013-06-07 00:49:25 +02:00
# define TEMP_0_PIN 13 // ANALOG NUMBERING
# define TEMP_1_PIN 15 // ANALOG NUMBERING
2014-12-18 21:02:36 +01:00
# if MB(AZTEEG_X3_PRO)
2014-02-05 23:25:42 +01:00
# define TEMP_2_PIN 12 // ANALOG NUMBERING
# define TEMP_3_PIN 11 // ANALOG NUMBERING
# define TEMP_4_PIN 10 // ANALOG NUMBERING
# define TC1 4 // ANALOG NUMBERING Thermo couple on Azteeg X3Pro
# define TC2 5 // ANALOG NUMBERING Thermo couple on Azteeg X3Pro
# else
# define TEMP_2_PIN -1 // ANALOG NUMBERING
# endif
2013-06-20 23:59:56 +02:00
2014-12-18 21:02:36 +01:00
# if MB(RAMPS_13_EFF) || MB(RAMPS_13_EEF)
2013-06-20 23:59:56 +02:00
# define HEATER_BED_PIN -1 // NO BED
2013-06-09 22:57:40 +02:00
# else
2015-01-20 20:46:20 +01:00
# if MB(3DRAG) || MB(K8200)
2013-06-20 23:59:56 +02:00
# define HEATER_BED_PIN 9 // BED
2012-11-07 22:04:28 +01:00
# else
2013-06-20 23:59:56 +02:00
# define HEATER_BED_PIN 8 // BED
# endif
2013-06-09 22:57:40 +02:00
# endif
2014-02-05 23:25:42 +01:00
2013-06-07 00:49:25 +02:00
# define TEMP_BED_PIN 14 // ANALOG NUMBERING
2012-11-07 22:04:28 +01:00
2013-06-07 00:49:25 +02:00
# ifdef NUM_SERVOS
# define SERVO0_PIN 11
2012-11-07 22:04:28 +01:00
2013-06-07 00:49:25 +02:00
# if NUM_SERVOS > 1
# define SERVO1_PIN 6
2012-11-07 02:32:13 +01:00
# endif
2013-06-07 00:49:25 +02:00
# if NUM_SERVOS > 2
# define SERVO2_PIN 5
2012-11-07 02:32:13 +01:00
# endif
2012-02-18 19:25:04 +01:00
2013-06-06 18:18:03 +02:00
# if NUM_SERVOS > 3
2013-06-07 00:49:25 +02:00
# define SERVO3_PIN 4
# endif
# endif
2012-02-18 19:25:04 +01:00
2014-12-18 21:02:36 +01:00
# if MB(AZTEEG_X3_PRO)
2014-02-05 10:47:12 +01:00
# define BEEPER 33
# endif
2013-10-20 12:12:35 +02:00
# ifdef TEMP_STAT_LEDS
2014-12-18 21:02:36 +01:00
# if MB(AZTEEG_X3)
2013-10-20 12:12:35 +02:00
# define STAT_LED_RED 6
# define STAT_LED_BLUE 11
# endif
# endif
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
# ifdef ULTRA_LCD
2012-02-18 19:25:04 +01:00
2013-06-07 00:49:25 +02:00
# ifdef NEWPANEL
2014-02-05 10:47:12 +01:00
# define LCD_PINS_RS 16
2013-06-07 00:49:25 +02:00
# define LCD_PINS_ENABLE 17
# define LCD_PINS_D4 23
2014-02-05 10:47:12 +01:00
# define LCD_PINS_D5 25
2013-06-07 00:49:25 +02:00
# define LCD_PINS_D6 27
# define LCD_PINS_D7 29
# ifdef REPRAP_DISCOUNT_SMART_CONTROLLER
# define BEEPER 37
# define BTN_EN1 31
# define BTN_EN2 33
# define BTN_ENC 35
# define SDCARDDETECT 49
2013-07-28 19:19:57 +02:00
# elif defined(LCD_I2C_PANELOLU2)
# define BTN_EN1 47 //reverse if the encoder turns the wrong way.
# define BTN_EN2 43
# define BTN_ENC 32
2014-03-27 18:02:17 +01:00
# define LCD_SDSS 53
2013-07-28 19:19:57 +02:00
# define SDCARDDETECT -1
# define KILL_PIN 41
2013-09-24 17:31:16 +02:00
# elif defined(LCD_I2C_VIKI)
# define BTN_EN1 22 //reverse if the encoder turns the wrong way.
# define BTN_EN2 7
# define BTN_ENC -1
2014-03-27 18:02:17 +01:00
# define LCD_SDSS 53
2013-09-24 17:31:16 +02:00
# define SDCARDDETECT 49
2013-06-07 00:49:25 +02:00
# else
//arduino pin which triggers an piezzo beeper
# define BEEPER 33 // Beeper on AUX-4
//buttons are directly attached using AUX-2
# ifdef REPRAPWORLD_KEYPAD
# define BTN_EN1 64 // encoder
# define BTN_EN2 59 // encoder
# define BTN_ENC 63 // enter button
# define SHIFT_OUT 40 // shift register
# define SHIFT_CLK 44 // shift register
# define SHIFT_LD 42 // shift register
# else
# define BTN_EN1 37
# define BTN_EN2 35
# define BTN_ENC 31 //the click
# endif
# ifdef G3D_PANEL
# define SDCARDDETECT 49
# else
# define SDCARDDETECT -1 // Ramps does not use this port
# endif
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
# endif
2014-02-05 10:47:12 +01:00
2015-01-20 20:46:20 +01:00
# if MB(3DRAG) || MB(K8200)
2014-02-05 10:47:12 +01:00
# define BEEPER -1
# define LCD_PINS_RS 27
# define LCD_PINS_ENABLE 29
# define LCD_PINS_D4 37
# define LCD_PINS_D5 35
# define LCD_PINS_D6 33
# define LCD_PINS_D7 31
//buttons
# define BTN_EN1 16
# define BTN_EN2 17
# define BTN_ENC 23 //the click
# endif
2013-06-07 00:49:25 +02:00
# else //old style panel with shift register
//arduino pin witch triggers an piezzo beeper
2014-12-18 21:02:36 +01:00
# define BEEPER 33 //No Beeper added
2013-06-07 00:49:25 +02:00
//buttons are attached to a shift register
2014-12-18 21:02:36 +01:00
// Not wired this yet
2013-06-07 00:49:25 +02:00
//#define SHIFT_CLK 38
//#define SHIFT_LD 42
//#define SHIFT_OUT 40
//#define SHIFT_EN 17
2014-02-05 10:47:12 +01:00
# define LCD_PINS_RS 16
2013-06-07 00:49:25 +02:00
# define LCD_PINS_ENABLE 17
# define LCD_PINS_D4 23
2014-02-05 10:47:12 +01:00
# define LCD_PINS_D5 25
2013-06-07 00:49:25 +02:00
# define LCD_PINS_D6 27
# define LCD_PINS_D7 29
2014-02-05 10:47:12 +01:00
# endif
2013-06-07 00:49:25 +02:00
# endif //ULTRA_LCD
2011-12-12 19:34:37 +01:00
2014-12-18 21:02:36 +01:00
# else // RAMPS_V_1_1 or RAMPS_V_1_2 as default (BOARD_RAMPS_OLD)
2011-12-12 19:34:37 +01:00
# define X_STEP_PIN 26
# define X_DIR_PIN 28
# define X_ENABLE_PIN 24
# define X_MIN_PIN 3
# define X_MAX_PIN -1 //2
# define Y_STEP_PIN 38
# define Y_DIR_PIN 40
# define Y_ENABLE_PIN 36
# define Y_MIN_PIN 16
# define Y_MAX_PIN -1 //17
# define Z_STEP_PIN 44
# define Z_DIR_PIN 46
# define Z_ENABLE_PIN 42
# define Z_MIN_PIN 18
# define Z_MAX_PIN -1 //19
# define E0_STEP_PIN 32
# define E0_DIR_PIN 34
# define E0_ENABLE_PIN 30
# define SDPOWER 48
# define SDSS 53
# define LED_PIN 13
# define PS_ON_PIN -1
# define KILL_PIN -1
# ifdef RAMPS_V_1_0 // RAMPS_V_1_0
# define HEATER_0_PIN 12 // RAMPS 1.0
# define HEATER_BED_PIN -1 // RAMPS 1.0
# define FAN_PIN 11 // RAMPS 1.0
# else // RAMPS_V_1_1 or RAMPS_V_1_2
# define HEATER_0_PIN 10 // RAMPS 1.1
# define HEATER_BED_PIN 8 // RAMPS 1.1
# define FAN_PIN 9 // RAMPS 1.1
# endif
# define HEATER_1_PIN -1
# define HEATER_2_PIN -1
# define TEMP_0_PIN 2 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!!
2014-02-05 10:47:12 +01:00
# define TEMP_1_PIN -1
# define TEMP_2_PIN -1
2011-12-12 19:34:37 +01:00
# define TEMP_BED_PIN 1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!!
2015-01-20 20:46:20 +01:00
# endif // RAMPS_13_EFB || RAMPS_13_EEB || RAMPS_13_EFF || 3DRAG || K8200
2011-12-12 19:34:37 +01:00
2014-02-05 10:47:12 +01:00
// SPI for Max6675 Thermocouple
2011-12-12 19:34:37 +01:00
# ifndef SDSUPPORT
2014-02-05 10:47:12 +01:00
// these pins are defined in the SD library if building with SD support
2014-07-05 07:55:03 +02:00
# define SCK_PIN 52
# define MISO_PIN 50
# define MOSI_PIN 51
2015-01-23 19:37:39 +01:00
# define MAX6675_SS 66 // Do not use pin 53 if there is even the remote possibility of using Display/SD card
2011-12-12 19:34:37 +01:00
# else
2014-12-31 01:04:16 +01:00
# define MAX6675_SS 66 // Do not use pin 49 as this is tied to the switch inside the SD card socket to detect if there is an SD card present
2011-12-12 19:34:37 +01:00
# endif
2015-01-20 20:46:20 +01:00
# endif // RAMPS_OLD || RAMPS_13_EFB || RAMPS_13_EEB || RAMPS_13_EFF || 3DRAG || K8200
2012-02-05 13:05:07 +01:00
2011-12-12 19:34:37 +01:00
/****************************************************************************************
* Duemilanove w / ATMega328P pin assignment
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2014-12-18 21:02:36 +01:00
# if MB(DUEMILANOVE_328P)
2011-12-12 19:34:37 +01:00
# define KNOWN_BOARD 1
# ifndef __AVR_ATmega328P__
# error Oops! Make sure you have 'Arduino Duemilanove w / ATMega328' selected from the 'Tools -> Boards' menu.
# endif
# define X_STEP_PIN 19
# define X_DIR_PIN 18
# define X_ENABLE_PIN -1
2012-12-16 21:08:55 +01:00
# define X_STOP_PIN 17
2011-12-12 19:34:37 +01:00
# define Y_STEP_PIN 10
# define Y_DIR_PIN 7
# define Y_ENABLE_PIN -1
2012-12-16 21:08:55 +01:00
# define Y_STOP_PIN 8
2011-12-12 19:34:37 +01:00
# define Z_STEP_PIN 13
# define Z_DIR_PIN 3
# define Z_ENABLE_PIN 2
2012-12-16 21:08:55 +01:00
# define Z_STOP_PIN 4
2011-12-12 19:34:37 +01:00
# define E0_STEP_PIN 11
# define E0_DIR_PIN 12
# define E0_ENABLE_PIN -1
# define SDPOWER -1
# define SDSS -1
# define LED_PIN -1
# define FAN_PIN 5
# define PS_ON_PIN -1
# define KILL_PIN -1
# define HEATER_0_PIN 6
# define HEATER_1_PIN -1
# define HEATER_2_PIN -1
# define TEMP_0_PIN 0 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!!
2013-06-07 00:49:25 +02:00
# define TEMP_1_PIN -1
# define TEMP_2_PIN -1
2011-12-12 19:34:37 +01:00
# define HEATER_BED_PIN -1
# define TEMP_BED_PIN -1
2014-12-18 21:02:36 +01:00
# endif // DUEMILANOVE_328P
2011-12-12 19:34:37 +01:00
2013-05-06 16:44:38 +02:00
/****************************************************************************************
* Elefu RA Board Pin Assignments
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2014-12-18 21:02:36 +01:00
# if MB(ELEFU_3)
# define KNOWN_BOARD 1
2013-05-06 16:44:38 +02:00
# ifndef __AVR_ATmega2560__
# error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
# endif
2014-12-18 21:02:36 +01:00
# define X_STEP_PIN 49
# define X_DIR_PIN 13
# define X_ENABLE_PIN 48
# define X_MIN_PIN 35
# define X_MAX_PIN -1 //34
2013-05-06 16:44:38 +02:00
# define Y_STEP_PIN 11
# define Y_DIR_PIN 9
# define Y_ENABLE_PIN 12
# define Y_MIN_PIN 33
# define Y_MAX_PIN -1 //32
# define Z_STEP_PIN 7
# define Z_DIR_PIN 6
# define Z_ENABLE_PIN 8
# define Z_MIN_PIN 31
# define Z_MAX_PIN -1 //30
# define E2_STEP_PIN 43
# define E2_DIR_PIN 47
# define E2_ENABLE_PIN 42
# define E1_STEP_PIN 18
# define E1_DIR_PIN 19
# define E1_ENABLE_PIN 38
# define E0_STEP_PIN 40
# define E0_DIR_PIN 41
# define E0_ENABLE_PIN 37
# define SDPOWER -1
# define LED_PIN -1 //Use +12V Aux port for LED Ring
# define FAN_PIN 16 //5V PWM
# define PS_ON_PIN 10 //Set to -1 if using a manual switch on the PWRSW Connector
2014-12-18 21:02:36 +01:00
# define SLEEP_WAKE_PIN 26 //This feature still needs work
2013-05-06 16:44:38 +02:00
2014-12-18 21:02:36 +01:00
# define HEATER_0_PIN 45 //12V PWM1
# define HEATER_1_PIN 46 //12V PWM2
# define HEATER_2_PIN 17 //12V PWM3
# define HEATER_BED_PIN 44 //DOUBLE 12V PWM
# define TEMP_0_PIN 3 //ANALOG NUMBERING
# define TEMP_1_PIN 2 //ANALOG NUMBERING
# define TEMP_2_PIN 1 //ANALOG NUMBERING
# define TEMP_BED_PIN 0 //ANALOG NUMBERING
2013-05-06 16:44:38 +02:00
2014-12-18 21:02:36 +01:00
# define BEEPER 36
2013-05-06 16:44:38 +02:00
# define KILL_PIN -1
// M240 Triggers a camera by emulating a Canon RC-1 Remote
// Data from: http://www.doc-diy.net/photo/rc-1_hacked/
# define PHOTOGRAPH_PIN 29
# ifdef RA_CONTROL_PANEL
# define SDSS 53
# define SDCARDDETECT 28
# define BTN_EN1 14
# define BTN_EN2 39
# define BTN_ENC 15 //the click
2014-02-05 10:47:12 +01:00
2013-05-06 16:44:38 +02:00
# define BLEN_C 2
# define BLEN_B 1
# define BLEN_A 0
2014-02-05 10:47:12 +01:00
2013-05-06 16:44:38 +02:00
//encoder rotation values
# define encrot0 0
# define encrot1 2
# define encrot2 3
# define encrot3 1
2014-02-05 10:47:12 +01:00
2013-05-06 16:44:38 +02:00
# endif //RA_CONTROL_PANEL
# ifdef RA_DISCO
//variables for which pins the TLC5947 is using
# define TLC_CLOCK_PIN 25
# define TLC_BLANK_PIN 23
# define TLC_XLAT_PIN 22
# define TLC_DATA_PIN 24
//We also need to define pin to port number mapping for the 2560 to match the pins listed above. If you change the TLC pins, update this as well per the 2560 datasheet!
//This currently only works with the RA Board.
# define TLC_CLOCK_BIT 3 //bit 3 on port A
# define TLC_CLOCK_PORT &PORTA //bit 3 on port A
2014-02-05 10:47:12 +01:00
2013-05-06 16:44:38 +02:00
# define TLC_BLANK_BIT 1 //bit 1 on port A
# define TLC_BLANK_PORT &PORTA //bit 1 on port A
# define TLC_DATA_BIT 2 //bit 2 on port A
# define TLC_DATA_PORT &PORTA //bit 2 on port A
# define TLC_XLAT_BIT 0 //bit 0 on port A
# define TLC_XLAT_PORT &PORTA //bit 0 on port A
2014-02-05 10:47:12 +01:00
//change this to match your situation. Lots of TLCs takes up the arduino SRAM very quickly, so be careful
2013-05-06 16:44:38 +02:00
//Leave it at at least 1 if you have enabled RA_LIGHTING
//The number of TLC5947 boards chained together for use with the animation, additional ones will repeat the animation on them, but are not individually addressable and mimic those before them. You can leave the default at 2 even if you only have 1 TLC5947 module.
2014-02-05 10:47:12 +01:00
# define NUM_TLCS 2
2013-05-06 16:44:38 +02:00
2014-02-05 10:47:12 +01:00
//These TRANS_ARRAY values let you change the order the LEDs on the lighting modules will animate for chase functions.
2013-05-06 16:44:38 +02:00
//Modify them according to your specific situation.
//NOTE: the array should be 8 long for every TLC you have. These defaults assume (2) TLCs.
# define TRANS_ARRAY {0, 1, 2, 3, 4, 5, 6, 7, 15, 14, 13, 12, 11, 10, 9, 8} //forwards
//#define TRANS_ARRAY {7, 6, 5, 4, 3, 2, 1, 0, 8, 9, 10, 11, 12, 13, 14, 15} //backwards
# endif //RA_LIGHTING
2014-12-18 21:02:36 +01:00
# endif // ELEFU_3
2013-05-06 16:44:38 +02:00
2011-12-12 19:34:37 +01:00
/****************************************************************************************
* Gen6 pin assignment
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2014-12-18 21:02:36 +01:00
# if MB(GEN6) || MB(GEN6_DELUXE)
2011-12-12 19:34:37 +01:00
# define KNOWN_BOARD 1
# ifndef __AVR_ATmega644P__
2012-02-26 20:05:33 +01:00
# ifndef __AVR_ATmega1284P__
# error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu.
# endif
2011-12-12 19:34:37 +01:00
# endif
//x axis pins
# define X_STEP_PIN 15
# define X_DIR_PIN 18
# define X_ENABLE_PIN 19
2012-12-16 21:08:55 +01:00
# define X_STOP_PIN 20
2011-12-12 19:34:37 +01:00
//y axis pins
# define Y_STEP_PIN 23
# define Y_DIR_PIN 22
# define Y_ENABLE_PIN 24
2012-12-16 21:08:55 +01:00
# define Y_STOP_PIN 25
2011-12-12 19:34:37 +01:00
//z axis pins
# define Z_STEP_PIN 27
# define Z_DIR_PIN 28
# define Z_ENABLE_PIN 29
2012-12-16 21:08:55 +01:00
# define Z_STOP_PIN 30
2011-12-12 19:34:37 +01:00
//extruder pins
# define E0_STEP_PIN 4 //Edited @ EJE Electronics 20100715
# define E0_DIR_PIN 2 //Edited @ EJE Electronics 20100715
# define E0_ENABLE_PIN 3 //Added @ EJE Electronics 20100715
# define TEMP_0_PIN 5 //changed @ rkoeppl 20110410
# define TEMP_1_PIN -1 //changed @ rkoeppl 20110410
2012-02-25 17:44:45 +01:00
2011-12-12 19:34:37 +01:00
# define TEMP_2_PIN -1 //changed @ rkoeppl 20110410
# define HEATER_0_PIN 14 //changed @ rkoeppl 20110410
# define HEATER_1_PIN -1
# define HEATER_2_PIN -1
2014-12-18 21:02:36 +01:00
# if MB(GEN6)
2011-12-12 19:34:37 +01:00
# define HEATER_BED_PIN -1 //changed @ rkoeppl 20110410
# define TEMP_BED_PIN -1 //changed @ rkoeppl 20110410
2012-02-25 17:44:45 +01:00
# else
# define HEATER_BED_PIN 1 //changed @ rkoeppl 20110410
# define TEMP_BED_PIN 0 //changed @ rkoeppl 20110410
# endif
2011-12-12 19:34:37 +01:00
# define SDPOWER -1
# define SDSS 17
# define LED_PIN -1 //changed @ rkoeppl 20110410
# define FAN_PIN -1 //changed @ rkoeppl 20110410
# define PS_ON_PIN -1 //changed @ rkoeppl 20110410
2012-08-30 22:36:49 +02:00
# define KILL_PIN -1 //changed @ drakelive 20120830
2011-12-12 19:34:37 +01:00
//our pin for debugging.
2013-06-07 00:49:25 +02:00
2011-12-12 19:34:37 +01:00
# define DEBUG_PIN 0
2013-06-07 00:49:25 +02:00
2011-12-12 19:34:37 +01:00
//our RS485 pins
2013-06-07 00:49:25 +02:00
# define TX_ENABLE_PIN 12
# define RX_ENABLE_PIN 13
2014-12-18 21:02:36 +01:00
# endif // GEN6 || GEN6_DELUXE
2011-12-12 19:34:37 +01:00
/****************************************************************************************
* Sanguinololu pin assignment
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2014-12-18 21:02:36 +01:00
# if MB(STB_11)
2013-03-01 17:47:32 +01:00
# define STB
# endif
2014-12-18 21:02:36 +01:00
# if MB(MELZI) || MB(MELZI_1284)
2012-04-27 17:28:10 +02:00
# define MELZI
# endif
2014-12-18 21:02:36 +01:00
# if MB(AZTEEG_X1)
2013-06-15 22:58:17 +02:00
# define AZTEEG_X1
# endif
2014-12-18 21:02:36 +01:00
# if MB(SANGUINOLOLU_12) || MB(MELZI) || MB(STB_11) || MB(AZTEEG_X1) || MB(MELZI_1284)
2012-02-26 17:35:01 +01:00
# undef MOTHERBOARD
2014-12-18 21:02:36 +01:00
# define MOTHERBOARD BOARD_SANGUINOLOLU_11
2013-06-07 00:49:25 +02:00
# define SANGUINOLOLU_V_1_2
2014-02-03 08:45:03 +01:00
# if defined(__AVR_ATmega1284P__)
2014-12-18 21:02:36 +01:00
# define LARGE_FLASH true
2014-02-03 08:45:03 +01:00
# endif
2011-12-12 19:34:37 +01:00
# endif
2014-12-18 21:02:36 +01:00
# if MB(SANGUINOLOLU_11)
2011-12-12 19:34:37 +01:00
# define KNOWN_BOARD 1
# ifndef __AVR_ATmega644P__
2012-02-26 20:05:33 +01:00
# ifndef __AVR_ATmega1284P__
2011-12-12 19:34:37 +01:00
# error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu.
# endif
2012-02-26 20:05:33 +01:00
# endif
2011-12-12 19:34:37 +01:00
# define X_STEP_PIN 15
# define X_DIR_PIN 21
2012-12-16 21:08:55 +01:00
# define X_STOP_PIN 18
2011-12-12 19:34:37 +01:00
# define Y_STEP_PIN 22
# define Y_DIR_PIN 23
2012-12-16 21:08:55 +01:00
# define Y_STOP_PIN 19
2011-12-12 19:34:37 +01:00
# define Z_STEP_PIN 3
# define Z_DIR_PIN 2
2012-12-16 21:08:55 +01:00
# define Z_STOP_PIN 20
2011-12-12 19:34:37 +01:00
# define E0_STEP_PIN 1
# define E0_DIR_PIN 0
# define LED_PIN -1
2013-06-07 00:49:25 +02:00
# define FAN_PIN -1
2013-09-10 23:10:58 +02:00
# if FAN_PIN == 12 || FAN_PIN ==13
# define FAN_SOFT_PWM
2012-12-16 01:36:57 +01:00
# endif
2011-12-12 19:34:37 +01:00
2012-04-27 17:28:10 +02:00
# ifdef MELZI
2013-09-10 23:10:58 +02:00
# define LED_PIN 27 /* On some broken versions of the Sanguino libraries the pin definitions are wrong, which then needs LED_PIN as pin 28. But you better upgrade your Sanguino libraries! See #368. */
# define FAN_PIN 4 // Works for Panelolu2 too
2012-04-27 17:28:10 +02:00
# endif
2013-03-01 17:47:32 +01:00
# ifdef STB
2013-09-10 23:10:58 +02:00
# define FAN_PIN 4
2014-12-18 21:02:36 +01:00
// Uncomment this if you have the first generation (V1.10) of STBs board
2013-09-10 23:10:58 +02:00
# define LCD_PIN_BL 17 // LCD backlight LED
2013-03-01 17:47:32 +01:00
# endif
2013-06-15 22:58:17 +02:00
# ifdef AZTEEG_X1
2013-09-10 23:10:58 +02:00
# define FAN_PIN 4
2013-06-15 22:58:17 +02:00
# endif
2014-03-17 15:45:13 +01:00
# ifdef NUM_SERVOS
2014-03-18 08:25:20 +01:00
# define SERVO0_PIN -1
2014-03-17 15:45:13 +01:00
# if NUM_SERVOS > 1
2014-03-18 08:25:20 +01:00
# define SERVO1_PIN -1
2014-03-17 15:45:13 +01:00
# endif
# if NUM_SERVOS > 2
2014-03-18 08:25:20 +01:00
# define SERVO2_PIN -1
2014-03-17 15:45:13 +01:00
# endif
# if NUM_SERVOS > 3
2014-03-18 08:25:20 +01:00
# define SERVO3_PIN -1
2014-03-17 15:45:13 +01:00
# endif
# endif
2011-12-12 19:34:37 +01:00
# define PS_ON_PIN -1
# define KILL_PIN -1
# define HEATER_0_PIN 13 // (extruder)
# define HEATER_1_PIN -1
# define HEATER_2_PIN -1
# ifdef SANGUINOLOLU_V_1_2
2013-09-10 23:10:58 +02:00
# define HEATER_BED_PIN 12 // (bed)
# define X_ENABLE_PIN 14
# define Y_ENABLE_PIN 14
# define Z_ENABLE_PIN 26
# define E0_ENABLE_PIN 14
# ifdef LCD_I2C_PANELOLU2
# define FAN_PIN 4 // Uses Transistor1 (PWM) on Panelolu2's Sanguino Adapter Board to drive the fan
# endif
2011-12-12 19:34:37 +01:00
# else
2013-09-10 23:10:58 +02:00
# define HEATER_BED_PIN 14 // (bed)
2011-12-12 19:34:37 +01:00
# define X_ENABLE_PIN -1
# define Y_ENABLE_PIN -1
# define Z_ENABLE_PIN -1
2013-09-10 23:10:58 +02:00
# define E0_ENABLE_PIN -1
2011-12-12 19:34:37 +01:00
# endif
# define TEMP_0_PIN 7 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 33 extruder)
# define TEMP_1_PIN -1
# define TEMP_2_PIN -1
# define TEMP_BED_PIN 6 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 34 bed)
# define SDPOWER -1
# define SDSS 31
2013-01-21 15:46:17 +01:00
/* On some broken versions of the Sanguino libraries the pin definitions are wrong, which then needs SDSS as pin 24. But you better upgrade your Sanguino libraries! See #368. */
//#define SDSS 24
2012-04-27 17:28:10 +02:00
2013-01-10 12:23:20 +01:00
# ifdef ULTRA_LCD
# ifdef NEWPANEL
//we have no buzzer installed
# define BEEPER -1
//LCD Pins
2013-06-07 00:49:25 +02:00
# ifdef DOGLCD
2015-01-19 10:43:26 +01:00
# ifdef U8GLIB_ST7920 //SPI GLCD 12864 ST7920 ( like [www.digole.com] ) For Melzi V2.0
# define LCD_PINS_RS 30 //CS chip select /SS chip slave select
# define LCD_PINS_ENABLE 29 //SID (MOSI)
# define LCD_PINS_D4 17 //SCK (CLK) clock
# define BEEPER 27 // Pin 27 is take by LED_Pin, but Melzi LED do nothing with Marlin and I take this pin for BEEPER.... See here > [github.com] , If you want use this pin with Gcode M42 instead BEEPER
# else
// Pins for DOGM SPI LCD Support
# define DOGLCD_A0 30
# define DOGLCD_CS 29
# define LCD_CONTRAST 1
# endif
2013-06-07 00:49:25 +02:00
// Uncomment screen orientation
2015-01-19 10:43:26 +01:00
# define LCD_SCREEN_ROT_0
2013-06-07 00:49:25 +02:00
// #define LCD_SCREEN_ROT_90
2015-01-19 10:43:26 +01:00
// #define LCD_SCREEN_ROT_180
2013-06-07 00:49:25 +02:00
// #define LCD_SCREEN_ROT_270
# else // standard Hitachi LCD controller
# define LCD_PINS_RS 4
# define LCD_PINS_ENABLE 17
# define LCD_PINS_D4 30
# define LCD_PINS_D5 29
# define LCD_PINS_D6 28
# define LCD_PINS_D7 27
# endif
2013-01-10 12:23:20 +01:00
//The encoder and click button
2014-02-05 10:47:12 +01:00
# define BTN_EN1 11
# define BTN_EN2 10
2013-06-07 00:49:25 +02:00
# ifdef LCD_I2C_PANELOLU2
# ifdef MELZI
# define BTN_ENC 29 //the click switch
2014-03-27 18:02:17 +01:00
# define LCD_SDSS 30 //to use the SD card reader on the Panelolu2 rather than the melzi board
2013-06-07 00:49:25 +02:00
# else
# define BTN_ENC 30 //the click switch
# endif
# else
# define BTN_ENC 16 //the click switch
2015-01-19 10:43:26 +01:00
# define LCD_SDSS 28 //to use the SD card reader on the smart controller rather than the melzi board
2013-06-07 00:49:25 +02:00
# endif //Panelolu2
2013-01-10 12:23:20 +01:00
//not connected to a pin
2014-02-05 10:47:12 +01:00
# define SDCARDDETECT -1
2013-01-10 12:23:20 +01:00
# endif //Newpanel
# endif //Ultipanel
2013-06-07 00:49:25 +02:00
2013-07-14 10:17:55 +02:00
# ifdef MAKRPANEL
# define BEEPER 29
// Pins for DOGM SPI LCD Support
# define DOGLCD_A0 30
# define DOGLCD_CS 17
2014-12-18 21:02:36 +01:00
# define LCD_PIN_BL 28 // backlight LED on PA3
2013-07-14 10:17:55 +02:00
// GLCD features
# define LCD_CONTRAST 1
// Uncomment screen orientation
# define LCD_SCREEN_ROT_0
// #define LCD_SCREEN_ROT_90
// #define LCD_SCREEN_ROT_180
// #define LCD_SCREEN_ROT_270
//The encoder and click button
# define BTN_EN1 11
# define BTN_EN2 10
# define BTN_ENC 16 //the click switch
//not connected to a pin
2014-02-05 10:47:12 +01:00
# define SDCARDDETECT -1
2013-07-14 10:17:55 +02:00
# endif //Makrpanel
2014-12-18 21:02:36 +01:00
# endif // SANGUINOLOLU_11
2011-12-12 19:34:37 +01:00
/*****************************************************************
* Ultimaker pin assignment
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2014-12-18 21:02:36 +01:00
# if MB(ULTIMAKER)
# define KNOWN_BOARD
2011-12-12 19:34:37 +01:00
# ifndef __AVR_ATmega1280__
# ifndef __AVR_ATmega2560__
# error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
# endif
# endif
2013-03-25 16:42:27 +01:00
# define LARGE_FLASH true
2011-12-12 19:34:37 +01:00
# define X_STEP_PIN 25
# define X_DIR_PIN 23
# define X_MIN_PIN 22
# define X_MAX_PIN 24
# define X_ENABLE_PIN 27
# define Y_STEP_PIN 31
# define Y_DIR_PIN 33
# define Y_MIN_PIN 26
# define Y_MAX_PIN 28
# define Y_ENABLE_PIN 29
2013-06-07 00:49:25 +02:00
# define Z_STEP_PIN 37
2011-12-12 19:34:37 +01:00
# define Z_DIR_PIN 39
# define Z_MIN_PIN 30
# define Z_MAX_PIN 32
# define Z_ENABLE_PIN 35
2013-06-07 00:49:25 +02:00
# define HEATER_BED_PIN 4
# define TEMP_BED_PIN 10
2011-12-12 19:34:37 +01:00
# define HEATER_0_PIN 2
2013-06-07 00:49:25 +02:00
# define TEMP_0_PIN 8
2011-12-12 19:34:37 +01:00
2012-02-09 17:19:45 +01:00
# define HEATER_1_PIN 3
# define TEMP_1_PIN 9
2011-12-12 19:34:37 +01:00
# define HEATER_2_PIN -1
# define TEMP_2_PIN -1
# define E0_STEP_PIN 43
# define E0_DIR_PIN 45
# define E0_ENABLE_PIN 41
# define E1_STEP_PIN 49
# define E1_DIR_PIN 47
2012-05-24 18:36:55 +02:00
# define E1_ENABLE_PIN 48
2011-12-12 19:34:37 +01:00
# define SDPOWER -1
# define SDSS 53
# define LED_PIN 13
# define FAN_PIN 7
# define PS_ON_PIN 12
# define KILL_PIN -1
2012-01-15 17:06:10 +01:00
# define SUICIDE_PIN 54 //PIN that has to be turned on right after start, to keep power flowing.
2014-12-29 17:27:14 +01:00
# define SERVO0_PIN 13 // untested
2011-12-12 19:34:37 +01:00
# ifdef ULTRA_LCD
# ifdef NEWPANEL
//arduino pin witch triggers an piezzo beeper
# define BEEPER 18
2013-06-07 00:49:25 +02:00
# define LCD_PINS_RS 20
2011-12-12 19:34:37 +01:00
# define LCD_PINS_ENABLE 17
# define LCD_PINS_D4 16
2013-06-07 00:49:25 +02:00
# define LCD_PINS_D5 21
2011-12-12 19:34:37 +01:00
# define LCD_PINS_D6 5
# define LCD_PINS_D7 6
2013-06-07 00:49:25 +02:00
2011-12-12 19:34:37 +01:00
//buttons are directly attached
# define BTN_EN1 40
# define BTN_EN2 42
# define BTN_ENC 19 //the click
2014-02-05 10:47:12 +01:00
2011-12-12 19:34:37 +01:00
# define SDCARDDETECT 38
2014-02-05 10:47:12 +01:00
2011-12-12 19:34:37 +01:00
# else //old style panel with shift register
//arduino pin witch triggers an piezzo beeper
# define BEEPER 18
//buttons are attached to a shift register
# define SHIFT_CLK 38
# define SHIFT_LD 42
# define SHIFT_OUT 40
# define SHIFT_EN 17
2013-06-07 00:49:25 +02:00
# define LCD_PINS_RS 16
2011-12-12 19:34:37 +01:00
# define LCD_PINS_ENABLE 5
# define LCD_PINS_D4 6
2013-06-07 00:49:25 +02:00
# define LCD_PINS_D5 21
2011-12-12 19:34:37 +01:00
# define LCD_PINS_D6 20
# define LCD_PINS_D7 19
2014-02-05 10:47:12 +01:00
2012-03-08 21:43:21 +01:00
# define SDCARDDETECT -1
2014-02-05 10:47:12 +01:00
# endif
2011-12-12 19:34:37 +01:00
# endif //ULTRA_LCD
2014-12-18 21:02:36 +01:00
# endif // ULTIMAKER
2011-12-12 19:34:37 +01:00
2014-12-18 21:02:36 +01:00
# if MB(ULTIMAKER_OLD)
2012-02-05 12:42:15 +01:00
# define KNOWN_BOARD
/*****************************************************************
* Ultimaker pin assignment ( Old electronics )
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
# ifndef __AVR_ATmega1280__
# ifndef __AVR_ATmega2560__
# error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
# endif
# endif
2013-03-25 16:42:27 +01:00
# define LARGE_FLASH true
2012-02-05 12:42:15 +01:00
# define X_STEP_PIN 25
# define X_DIR_PIN 23
# define X_MIN_PIN 15
# define X_MAX_PIN 14
# define X_ENABLE_PIN 27
# define Y_STEP_PIN 31
# define Y_DIR_PIN 33
# define Y_MIN_PIN 17
# define Y_MAX_PIN 16
# define Y_ENABLE_PIN 29
2013-06-07 00:49:25 +02:00
# define Z_STEP_PIN 37
2012-02-05 12:42:15 +01:00
# define Z_DIR_PIN 39
# define Z_MIN_PIN 19
# define Z_MAX_PIN 18
# define Z_ENABLE_PIN 35
2013-06-07 00:49:25 +02:00
# define HEATER_BED_PIN -1
# define TEMP_BED_PIN -1
2012-02-05 12:42:15 +01:00
# define HEATER_0_PIN 2
2013-06-07 00:49:25 +02:00
# define TEMP_0_PIN 8
2012-02-05 12:42:15 +01:00
# define HEATER_1_PIN 1
# define TEMP_1_PIN 1
# define HEATER_2_PIN -1
# define TEMP_2_PIN -1
# define E0_STEP_PIN 43
# define E0_DIR_PIN 45
# define E0_ENABLE_PIN 41
# define E1_STEP_PIN -1
# define E1_DIR_PIN -1
# define E1_ENABLE_PIN -1
# define SDPOWER -1
# define SDSS -1
# define LED_PIN -1
# define FAN_PIN -1
# define PS_ON_PIN -1
# define KILL_PIN -1
# define SUICIDE_PIN -1 //PIN that has to be turned on right after start, to keep power flowing.
2013-06-07 00:49:25 +02:00
# define LCD_PINS_RS 24
2012-02-05 12:42:15 +01:00
# define LCD_PINS_ENABLE 22
# define LCD_PINS_D4 36
2013-06-07 00:49:25 +02:00
# define LCD_PINS_D5 34
2012-02-05 12:42:15 +01:00
# define LCD_PINS_D6 32
# define LCD_PINS_D7 30
2014-12-18 21:02:36 +01:00
# endif // ULTIMAKER_OLD
2012-02-05 12:42:15 +01:00
2014-12-18 21:02:36 +01:00
# if MB(ULTIMAIN_2)
2014-01-06 11:05:02 +01:00
# define KNOWN_BOARD
/*****************************************************************
* Ultiboard v2 .0 pin assignment
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
# ifndef __AVR_ATmega2560__
# error Oops! Make sure you have 'Arduino Mega 2560' selected from the 'Tools -> Boards' menu.
# endif
# define X_STEP_PIN 25
# define X_DIR_PIN 23
# define X_STOP_PIN 22
# define X_ENABLE_PIN 27
# define Y_STEP_PIN 32
# define Y_DIR_PIN 33
# define Y_STOP_PIN 26
# define Y_ENABLE_PIN 31
# define Z_STEP_PIN 35
# define Z_DIR_PIN 36
# define Z_STOP_PIN 29
# define Z_ENABLE_PIN 34
# define HEATER_BED_PIN 4
# define TEMP_BED_PIN 10
# define HEATER_0_PIN 2
# define TEMP_0_PIN 8
# define HEATER_1_PIN 3
# define TEMP_1_PIN 9
# define HEATER_2_PIN -1
# define TEMP_2_PIN -1
# define E0_STEP_PIN 42
# define E0_DIR_PIN 43
# define E0_ENABLE_PIN 37
# define E1_STEP_PIN 49
# define E1_DIR_PIN 47
# define E1_ENABLE_PIN 48
# define SDPOWER -1
# define SDSS 53
# define LED_PIN 8
# define FAN_PIN 7
2014-02-13 10:57:03 +01:00
# define PS_ON_PIN -1
2014-01-06 11:05:02 +01:00
# define KILL_PIN -1
# define SUICIDE_PIN -1 //PIN that has to be turned on right after start, to keep power flowing.
# define SAFETY_TRIGGERED_PIN 28 //PIN to detect the safety circuit has triggered
# define MAIN_VOLTAGE_MEASURE_PIN 14 //Analogue PIN to measure the main voltage, with a 100k - 4k7 resitor divider.
# define MOTOR_CURRENT_PWM_XY_PIN 44
# define MOTOR_CURRENT_PWM_Z_PIN 45
# define MOTOR_CURRENT_PWM_E_PIN 46
//Motor current PWM conversion, PWM value = MotorCurrentSetting * 255 / range
2014-02-05 10:47:12 +01:00
# define MOTOR_CURRENT_PWM_RANGE 2000
2014-01-06 11:20:03 +01:00
# define DEFAULT_PWM_MOTOR_CURRENT {1300, 1300, 1250}
2014-01-06 11:05:02 +01:00
//arduino pin witch triggers an piezzo beeper
# define BEEPER 18
# define LCD_PINS_RS 20
# define LCD_PINS_ENABLE 15
# define LCD_PINS_D4 14
# define LCD_PINS_D5 21
# define LCD_PINS_D6 5
# define LCD_PINS_D7 6
//buttons are directly attached
# define BTN_EN1 40
# define BTN_EN2 41
# define BTN_ENC 19 //the click
# define BLEN_C 2
# define BLEN_B 1
# define BLEN_A 0
# define SDCARDDETECT 39
2014-12-18 21:02:36 +01:00
# endif // ULTIMAIN_2
2013-03-22 18:29:47 +01:00
/****************************************************************************************
* RUMBA pin assignment
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2014-12-18 21:02:36 +01:00
# if MB(RUMBA)
2013-03-22 18:29:47 +01:00
# define KNOWN_BOARD 1
# ifndef __AVR_ATmega2560__
# error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
# endif
# define X_STEP_PIN 17
# define X_DIR_PIN 16
# define X_ENABLE_PIN 48
# define X_MIN_PIN 37
2013-06-07 00:49:25 +02:00
# define X_MAX_PIN 36
2013-03-22 18:29:47 +01:00
# define Y_STEP_PIN 54
2013-06-07 00:49:25 +02:00
# define Y_DIR_PIN 47
2013-03-22 18:29:47 +01:00
# define Y_ENABLE_PIN 55
# define Y_MIN_PIN 35
2013-06-07 00:49:25 +02:00
# define Y_MAX_PIN 34
2013-03-22 18:29:47 +01:00
2013-06-07 00:49:25 +02:00
# define Z_STEP_PIN 57
2013-03-22 18:29:47 +01:00
# define Z_DIR_PIN 56
2013-06-07 00:49:25 +02:00
# define Z_ENABLE_PIN 62
2013-03-22 18:29:47 +01:00
# define Z_MIN_PIN 33
# define Z_MAX_PIN 32
# define E0_STEP_PIN 23
# define E0_DIR_PIN 22
# define E0_ENABLE_PIN 24
# define E1_STEP_PIN 26
# define E1_DIR_PIN 25
# define E1_ENABLE_PIN 27
# define E2_STEP_PIN 29
# define E2_DIR_PIN 28
# define E2_ENABLE_PIN 39
# define LED_PIN 13
2013-06-07 00:49:25 +02:00
# define FAN_PIN 7
2013-03-22 18:29:47 +01:00
//additional FAN1 PIN (e.g. useful for electronics fan or light on/off) on PIN 8
# define PS_ON_PIN 45
# define KILL_PIN 46
2013-06-07 00:49:25 +02:00
# if (TEMP_SENSOR_0==0)
# define TEMP_0_PIN -1
# define HEATER_0_PIN -1
# else
# define HEATER_0_PIN 2 // EXTRUDER 1
# if (TEMP_SENSOR_0==-1)
# define TEMP_0_PIN 6 // ANALOG NUMBERING - connector *K1* on RUMBA thermocouple ADD ON is used
# else
# define TEMP_0_PIN 15 // ANALOG NUMBERING - default connector for thermistor *T0* on rumba board is used
# endif
2014-02-05 10:47:12 +01:00
# endif
2013-06-07 00:49:25 +02:00
# if (TEMP_SENSOR_1==0)
# define TEMP_1_PIN -1
# define HEATER_1_PIN -1
# else
# define HEATER_1_PIN 3 // EXTRUDER 2
# if (TEMP_SENSOR_1==-1)
# define TEMP_1_PIN 5 // ANALOG NUMBERING - connector *K2* on RUMBA thermocouple ADD ON is used
# else
# define TEMP_1_PIN 14 // ANALOG NUMBERING - default connector for thermistor *T1* on rumba board is used
# endif
# endif
# if (TEMP_SENSOR_2==0)
# define TEMP_2_PIN -1
# define HEATER_2_PIN -1
# else
# define HEATER_2_PIN 6 // EXTRUDER 3
# if (TEMP_SENSOR_2==-1)
# define TEMP_2_PIN 7 // ANALOG NUMBERING - connector *K3* on RUMBA thermocouple ADD ON is used <-- this can not be used when TEMP_SENSOR_BED is defined as thermocouple
# else
# define TEMP_2_PIN 13 // ANALOG NUMBERING - default connector for thermistor *T2* on rumba board is used
# endif
# endif
//optional for extruder 4 or chamber: #define TEMP_X_PIN 12 // ANALOG NUMBERING - default connector for thermistor *T3* on rumba board is used
2013-03-22 18:29:47 +01:00
//optional FAN1 can be used as 4th heater output: #define HEATER_3_PIN 8 // EXTRUDER 4
2013-06-07 00:49:25 +02:00
# if (TEMP_SENSOR_BED==0)
# define TEMP_BED_PIN -1
# define HEATER_BED_PIN -1
# else
# define HEATER_BED_PIN 9 // BED
# if (TEMP_SENSOR_BED==-1)
# define TEMP_BED_PIN 7 // ANALOG NUMBERING - connector *K3* on RUMBA thermocouple ADD ON is used <-- this can not be used when TEMP_SENSOR_2 is defined as thermocouple
# else
# define TEMP_BED_PIN 11 // ANALOG NUMBERING - default connector for thermistor *THB* on rumba board is used
# endif
# endif
2013-03-22 18:29:47 +01:00
# define SDPOWER -1
# define SDSS 53
# define SDCARDDETECT 49
# define BEEPER 44
2013-06-07 00:49:25 +02:00
# define LCD_PINS_RS 19
2013-03-22 18:29:47 +01:00
# define LCD_PINS_ENABLE 42
# define LCD_PINS_D4 18
2013-06-07 00:49:25 +02:00
# define LCD_PINS_D5 38
2013-03-22 18:29:47 +01:00
# define LCD_PINS_D6 41
# define LCD_PINS_D7 40
# define BTN_EN1 11
# define BTN_EN2 12
# define BTN_ENC 43
2014-12-18 21:02:36 +01:00
# endif // RUMBA
2013-03-22 18:29:47 +01:00
2011-12-12 19:34:37 +01:00
/****************************************************************************************
2012-12-09 04:46:42 +01:00
* Teensylu 0.7 / Printrboard pin assignments ( AT90USB1286 )
* Requires the Teensyduino software with Teensy + + 2.0 selected in Arduino IDE !
2012-12-08 19:49:01 +01:00
http : //www.pjrc.com/teensy/teensyduino.html
* See http : //reprap.org/wiki/Printrboard for more info
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2014-12-18 21:02:36 +01:00
# if MB(TEENSYLU) || MB(PRINTRBOARD)
2012-12-08 19:49:01 +01:00
# define KNOWN_BOARD 1
2012-12-09 10:32:09 +01:00
# define AT90USB 1286 // Disable MarlinSerial etc.
2012-12-08 19:49:01 +01:00
# ifndef __AVR_AT90USB1286__
# error Oops! Make sure you have 'Teensy++ 2.0' selected from the 'Tools -> Boards' menu.
# endif
2014-01-10 21:23:30 +01:00
# ifdef AT90USBxx_TEENSYPP_ASSIGNMENTS // use Teensyduino Teensy++2.0 pin assignments instead of Marlin traditional.
# error These Teensylu / Printrboard assignments depend on traditional Marlin assignments, not AT90USBxx_TEENSYPP_ASSIGNMENTS in fastio.h
# endif
2013-03-25 16:42:27 +01:00
# define LARGE_FLASH true
2012-12-09 04:46:42 +01:00
# define X_STEP_PIN 0
# define X_DIR_PIN 1
# define X_ENABLE_PIN 39
2012-12-08 19:49:01 +01:00
2012-12-09 04:46:42 +01:00
# define Y_STEP_PIN 2
# define Y_DIR_PIN 3
# define Y_ENABLE_PIN 38
2012-12-08 19:49:01 +01:00
2012-12-09 04:46:42 +01:00
# define Z_STEP_PIN 4
# define Z_DIR_PIN 5
# define Z_ENABLE_PIN 23
2012-12-08 19:49:01 +01:00
2012-12-09 04:46:42 +01:00
# define E0_STEP_PIN 6
# define E0_DIR_PIN 7
# define E0_ENABLE_PIN 19
2012-12-08 19:49:01 +01:00
2012-12-09 04:46:42 +01:00
# define HEATER_0_PIN 21 // Extruder
2015-01-16 04:48:40 +01:00
# define HEATER_1_PIN 46
# define HEATER_2_PIN 47
2012-12-09 04:46:42 +01:00
# define HEATER_BED_PIN 20 // Bed
2015-01-16 04:48:40 +01:00
// If soft or fast PWM is off then use Teensyduino pin numbering, Marlin
// fastio pin numbering otherwise
# ifdef FAN_SOFT_PWM || FAST_PWM_FAN
# define FAN_PIN 22 // Fan
# else
# define FAN_PIN 16 // Fan
# endif
2012-12-08 19:49:01 +01:00
2014-12-18 21:02:36 +01:00
# if MB(TEENSYLU) // Teensylu
2012-12-16 21:08:55 +01:00
# define X_STOP_PIN 13
# define Y_STOP_PIN 14
# define Z_STOP_PIN 15
2012-12-09 11:19:13 +01:00
# define TEMP_0_PIN 7 // Extruder / Analog pin numbering
# define TEMP_BED_PIN 6 // Bed / Analog pin numbering
2012-12-11 10:59:48 +01:00
# else // Printrboard
2012-12-16 21:08:55 +01:00
# define X_STOP_PIN 35
# define Y_STOP_PIN 8
# define Z_STOP_PIN 36
2012-12-09 11:19:13 +01:00
# define TEMP_0_PIN 1 // Extruder / Analog pin numbering
# define TEMP_BED_PIN 0 // Bed / Analog pin numbering
2014-08-07 02:30:57 +02:00
# ifdef FILAMENT_SENSOR
# define FILWIDTH_PIN 2
# endif //FILAMENT_SENSOR
2012-12-09 11:19:13 +01:00
# endif
2015-01-24 14:10:48 +01:00
# define TEMP_1_PIN -1
# define TEMP_2_PIN -1
2012-12-08 19:49:01 +01:00
# define SDPOWER -1
2012-12-09 04:46:42 +01:00
# define SDSS 8
2012-12-08 19:49:01 +01:00
# define LED_PIN -1
# define PS_ON_PIN -1
# define KILL_PIN -1
2012-12-09 04:46:42 +01:00
# define ALARM_PIN -1
2012-12-08 19:49:01 +01:00
# ifndef SDSUPPORT
// these pins are defined in the SD library if building with SD support
2012-12-09 04:46:42 +01:00
# define SCK_PIN 9
# define MISO_PIN 11
# define MOSI_PIN 10
2012-12-08 19:49:01 +01:00
# endif
2015-01-23 16:42:26 +01:00
# if defined(ULTRA_LCD) && defined(NEWPANEL)
//we have no buzzer installed
# define BEEPER -1
//LCD Pins
# ifdef LCD_I2C_PANELOLU2
# define BTN_EN1 27 //RX1 - fastio.h pin mapping 27
# define BTN_EN2 26 //TX1 - fastio.h pin mapping 26
# define BTN_ENC 43 //A3 - fastio.h pin mapping 43
# define SDSS 40 //use SD card on Panelolu2 (Teensyduino pin mapping)
# endif //LCD_I2C_PANELOLU2
//not connected to a pin
# define SDCARDDETECT -1
# endif //Ultipanel && Newpanel
2014-12-18 21:02:36 +01:00
# endif // TEENSYLU || PRINTRBOARD
2012-12-08 19:49:01 +01:00
/****************************************************************************************
* Brainwave 1.0 pin assignments ( AT90USB646 )
* Requires hardware bundle for Arduino :
https : //github.com/unrepentantgeek/brainwave-arduino
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2014-12-18 21:02:36 +01:00
# if MB(BRAINWAVE)
2012-12-08 19:49:01 +01:00
# define KNOWN_BOARD 1
2012-12-09 10:32:09 +01:00
# define AT90USB 646 // Disable MarlinSerial etc.
2012-12-08 19:49:01 +01:00
# ifndef __AVR_AT90USB646__
# error Oops! Make sure you have 'Brainwave' selected from the 'Tools -> Boards' menu.
# endif
# define X_STEP_PIN 27
# define X_DIR_PIN 29
# define X_ENABLE_PIN 28
2012-12-16 21:08:55 +01:00
# define X_STOP_PIN 7
2012-12-08 19:49:01 +01:00
# define X_ATT_PIN 26
# define Y_STEP_PIN 31
# define Y_DIR_PIN 33
# define Y_ENABLE_PIN 32
2012-12-16 21:08:55 +01:00
# define Y_STOP_PIN 6
2012-12-08 19:49:01 +01:00
# define Y_ATT_PIN 30
# define Z_STEP_PIN 17
# define Z_DIR_PIN 19
# define Z_ENABLE_PIN 18
2012-12-16 21:08:55 +01:00
# define Z_STOP_PIN 5
2012-12-08 19:49:01 +01:00
# define Z_ATT_PIN 16
2012-12-09 04:46:42 +01:00
# define E0_STEP_PIN 21
# define E0_DIR_PIN 23
# define E0_ENABLE_PIN 22
# define E0_ATT_PIN 20
2012-12-08 19:49:01 +01:00
# define HEATER_0_PIN 4 // Extruder
# define HEATER_1_PIN -1
# define HEATER_2_PIN -1
# define HEATER_BED_PIN 38 // Bed
# define FAN_PIN 3 // Fan
# define TEMP_0_PIN 7 // Extruder / Analog pin numbering
# define TEMP_1_PIN -1
# define TEMP_2_PIN -1
# define TEMP_BED_PIN 6 // Bed / Analog pin numbering
# define SDPOWER -1
# define SDSS -1
# define LED_PIN 39
# define PS_ON_PIN -1
# define KILL_PIN -1
# define ALARM_PIN -1
# ifndef SDSUPPORT
// these pins are defined in the SD library if building with SD support
2012-12-09 04:46:42 +01:00
# define SCK_PIN 9
# define MISO_PIN 11
# define MOSI_PIN 10
2012-12-08 19:49:01 +01:00
# endif
2014-12-18 21:02:36 +01:00
# endif // BRAINWAVE
2012-12-08 19:49:01 +01:00
2013-10-30 11:45:32 +01:00
//
// SAV Mk-I
// -----------------------------------------------------------------------------------
/****************************************************************************************
* SAV MkI pin assignments ( AT90USB1286 )
* Requires the Teensyduino software with Teensy + + 2.0 selected in Arduino IDE !
http : //www.pjrc.com/teensy/teensyduino.html
RepRap Clone Wars project board .
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2014-12-18 21:02:36 +01:00
# if MB(SAV_MKI) // SAV Mk-I
2013-10-30 11:45:32 +01:00
# define KNOWN_BOARD 1
# define AT90USB 1286 // Disable MarlinSerial etc.
# ifndef __AVR_AT90USB1286__
# error Oops! Make sure you have 'Teensy++ 2.0' selected from the 'Tools -> Boards' menu.
# endif
# define LARGE_FLASH true
# define X_STEP_PIN 0
# define X_DIR_PIN 1
# define X_ENABLE_PIN 39
# define Y_STEP_PIN 2
# define Y_DIR_PIN 3
# define Y_ENABLE_PIN 38
# define Z_STEP_PIN 4
# define Z_DIR_PIN 5
# define Z_ENABLE_PIN 23
# define E0_STEP_PIN 6
# define E0_DIR_PIN 7
# define E0_ENABLE_PIN 19
# define HEATER_0_PIN 21 // Extruder
# define HEATER_1_PIN -1
# define HEATER_2_PIN -1
# define HEATER_BED_PIN 20 // Bed
# define FAN_PIN 16 // Fan -- from Teensyduino environment.
// For the fan and Teensyduino uses a different pin mapping.
# define X_STOP_PIN 13
# define Y_STOP_PIN 14
# define Z_STOP_PIN 15
2014-12-28 19:54:06 +01:00
// #define Z_STOP_PIN 36 // For inductive sensor.
2013-10-30 11:45:32 +01:00
# define TEMP_0_PIN 7 // Extruder / Analog pin numbering
# define TEMP_BED_PIN 6 // Bed / Analog pin numbering
# define TEMP_1_PIN -1
# define TEMP_2_PIN -1
# define SDPOWER -1
# define SDSS 20 // PB0 - 8 in marlin env.
# define LED_PIN -1
# define PS_ON_PIN -1
# define ALARM_PIN -1
# define SDCARDDETECT -1
# ifndef SDSUPPORT
// these pins are defined in the SD library if building with SD support
# define SCK_PIN 9
# define MISO_PIN 11
# define MOSI_PIN 10
# endif
# define BEEPER -1
# define LCD_PINS_RS -1
# define LCD_PINS_ENABLE -1
# define LCD_PINS_D4 -1
# define LCD_PINS_D5 -1
# define LCD_PINS_D6 -1
# define LCD_PINS_D7 -1
2014-12-28 19:54:06 +01:00
# ifdef SAV_3DLCD
2013-10-30 11:45:32 +01:00
// For LCD SHIFT register LCD
2014-12-28 19:54:06 +01:00
# define SR_DATA_PIN 1
# define SR_CLK_PIN 0
# define BTN_EN1 41
# define BTN_EN2 40
# define BTN_ENC 12
# define KILL_PIN 42 // A2 = 42 - teensy = 40
# define HOME_PIN -1 // A4 = marlin 44 - teensy = 42
# ifdef NUM_SERVOS
# define SERVO0_PIN 41 // In teensy's pin definition for pinMode (in Servo.cpp)
# endif
# endif
2013-10-30 11:45:32 +01:00
2014-12-18 21:02:36 +01:00
# endif // SAV_MKI
2013-10-30 11:45:32 +01:00
2014-01-10 21:23:30 +01:00
/****************************************************************************************
* Teensy + + 2.0 Breadboard pin assignments ( AT90USB1286 )
* Requires the Teensyduino software with Teensy + + 2.0 selected in Arduino IDE !
http : //www.pjrc.com/teensy/teensyduino.html
* See http : //reprap.org/wiki/Printrboard for more info
* CLI build : DEFINES = AT90USBxx_TEENSYPP_ASSIGNMENTS HARDWARE_MOTHERBOARD = 84 make
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2014-12-18 21:02:36 +01:00
# if MB(TEENSY2)
2014-01-10 21:23:30 +01:00
# define KNOWN_BOARD 1
# define AT90USB 1286 // Disable MarlinSerial etc.
# ifndef __AVR_AT90USB1286__
# error Oops! Make sure you have 'Teensy++ 2.0' selected from the 'Tools -> Boards' menu.
# endif
# define LARGE_FLASH true
/*
DaveX plan for Teensylu / printrboard - type pinouts ( ref teensylu & sprinter ) for a TeensyBreadboard :
USB
GND GND | - - - - - # # # # # - - - - - | + 5 V ATX + 5 SB
ATX PS_ON PWM 27 | b7 # # # # # b6 | 26 PWM * Stepper Enable
PWM 0 | d0 b5 | 25 PWM *
PWM 1 | d1 b4 | 24 PWM
X_MIN 2 | d2 b3 | 23 MISO_PIN
Y_MIN 3 | d3 b2 | 22 MOSI_PIN
Z_MIN 4 | d4 * * b1 | 21 SCK_PIN
5 | d5 e e b0 | 20 SDSS
LED 6 | d6 5 4 e7 | 19
7 | d7 e6 | 18
LCD RS 8 | e0 | GND
LCD EN 9 | e1 a4 a0 R | AREF
LCD D4 10 | c0 a5 a1 f0 | 38 A0 ENC_1
LCD D5 11 | c1 a6 a2 f1 | 39 A1 ENC_2
LCD D6 12 | c2 a7 a3 f2 | 40 A2 ENC_CLK
LCD D6 13 | c3 f3 | 41 A3
Bed Heat PWM 14 | c4 V G R f4 | 42 A4
Extruder Heat PWM 15 | c5 c n S f5 | 43 A5
Fan PWM 16 | c6 c d T f6 | 44 A6 Bed TC
17 | c7 * * * f7 | 45 A7 Extruder TC * 4.7 k * + 5
- - - - - - - - - - - - - - - - -
Interior E4 : 36 , INT4
Interior E5 : 37 , INT5
Interior PA0 - 7 : 28 - 35 - - Printrboard and Teensylu use these pins for step & direction :
T + + PA Signal Marlin
Z STEP 32 a4 a0 28 X STEP
Z DIR 33 a5 a1 29 X DIR
E STEP 34 a6 a2 30 Y STEP
E DIR 35 a7 a3 31 Y DIR
*/
# ifndef AT90USBxx_TEENSYPP_ASSIGNMENTS // use Teensyduino Teensy++2.0 pin assignments instead of Marlin alphabetical.
# error Uncomment #define AT90USBxx_TEENSYPP_ASSIGNMENTS in fastio.h for this config
// or build from command line with: DEFINES=AT90USBxx_TEENSYPP_ASSIGNMENTS HARDWARE_MOTHERBOARD=84 make
# endif
# define X_STEP_PIN 28 // 0 Marlin
# define X_DIR_PIN 29 // 1 Marlin
# define X_ENABLE_PIN 26
# define Y_STEP_PIN 30 // 2 Marlin
# define Y_DIR_PIN 31 // 3
# define Y_ENABLE_PIN 26 // Shared w/x
# define Z_STEP_PIN 32 // 4
# define Z_DIR_PIN 33 // 5
# define Z_ENABLE_PIN 26 // Shared w/x
# define E0_STEP_PIN 34 // 6
# define E0_DIR_PIN 35 // 7
# define E0_ENABLE_PIN 26 // Shared w/x
# define HEATER_0_PIN 15 // 21 // Extruder
# define HEATER_1_PIN -1
# define HEATER_2_PIN -1
# define HEATER_BED_PIN 14 // 20 // Bed
# define FAN_PIN 16 // 22 // Fan
# define X_STOP_PIN 2
# define Y_STOP_PIN 3
# define Z_STOP_PIN 4
# define TEMP_0_PIN 7 // Extruder / Analog pin numbering
# define TEMP_BED_PIN 6 // Bed / Analog pin numbering
# define TEMP_1_PIN -1
# define TEMP_2_PIN -1
# define SDPOWER -1
2014-12-18 21:02:36 +01:00
# define SDCARDDETECT -1
2014-01-10 21:23:30 +01:00
# define SDSS 20 // 8
# define LED_PIN 6
# define PS_ON_PIN 27
# define KILL_PIN -1
# define ALARM_PIN -1
# ifndef SDSUPPORT
// these pins are defined in the SD library if building with SD support
# define SCK_PIN 21 // 9
# define MISO_PIN 23 // 11
# define MOSI_PIN 22 // 10
# endif
# ifdef ULTIPANEL
# define LCD_PINS_RS 8
# define LCD_PINS_ENABLE 9
# define LCD_PINS_D4 10
# define LCD_PINS_D5 11
# define LCD_PINS_D6 12
# define LCD_PINS_D7 13
# define BTN_EN1 38
# define BTN_EN2 39
# define BTN_ENC 40
# endif
2014-12-18 21:02:36 +01:00
# endif // TEENSY2
2014-01-10 21:23:30 +01:00
2013-10-30 11:45:32 +01:00
2012-02-05 12:42:15 +01:00
/****************************************************************************************
* Gen3 + pin assignment
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2014-12-18 21:02:36 +01:00
# if MB(GEN3_PLUS)
# define MOTHERBOARD BOARD_SANGUINOLOLU_11 /*TODO: Figure out, Why is this done?*/
2012-02-05 12:42:15 +01:00
# define KNOWN_BOARD 1
# ifndef __AVR_ATmega644P__
2012-02-26 20:05:33 +01:00
# ifndef __AVR_ATmega1284P__
2012-02-05 12:42:15 +01:00
# error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu.
# endif
2012-02-26 20:05:33 +01:00
# endif
2012-02-05 12:42:15 +01:00
# define X_STEP_PIN 15
# define X_DIR_PIN 18
2012-12-16 21:08:55 +01:00
# define X_STOP_PIN 20
2012-02-05 12:42:15 +01:00
# define Y_STEP_PIN 23
# define Y_DIR_PIN 22
2012-12-16 21:08:55 +01:00
# define Y_STOP_PIN 25
2012-02-05 12:42:15 +01:00
# define Z_STEP_PIN 27
# define Z_DIR_PIN 28
2012-12-16 21:08:55 +01:00
# define Z_STOP_PIN 30
2012-02-05 12:42:15 +01:00
2014-10-05 22:20:53 +02:00
# define E0_STEP_PIN 17
# define E0_DIR_PIN 21
2012-02-05 12:42:15 +01:00
# define LED_PIN -1
2013-06-07 00:49:25 +02:00
# define FAN_PIN -1
2012-02-05 12:42:15 +01:00
# define PS_ON_PIN 14
# define KILL_PIN -1
# define HEATER_0_PIN 12 // (extruder)
2014-02-15 12:47:06 +01:00
# define HEATER_BED_PIN 16 // (bed)
2012-02-05 12:42:15 +01:00
# define X_ENABLE_PIN 19
# define Y_ENABLE_PIN 24
# define Z_ENABLE_PIN 29
2014-02-15 12:47:06 +01:00
# define E0_ENABLE_PIN 13
2012-02-05 12:42:15 +01:00
# define TEMP_0_PIN 0 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 33 extruder)
2014-02-15 12:47:06 +01:00
# define TEMP_1_PIN -1
2012-02-05 12:42:15 +01:00
# define TEMP_2_PIN -1
2014-02-15 12:47:06 +01:00
# define TEMP_BED_PIN 5 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 34 bed)
2012-02-05 12:42:15 +01:00
# define SDPOWER -1
# define SDSS 4
# define HEATER_2_PIN -1
2014-12-18 21:02:36 +01:00
# endif // GEN3_PLUS
2012-02-05 12:42:15 +01:00
2014-05-07 02:24:20 +02:00
/****************************************************************************************
* Gen3 Monolithic Electronics
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2014-12-18 21:02:36 +01:00
# if MB(GEN3_MONOLITHIC)
2014-05-07 02:24:20 +02:00
# define KNOWN_BOARD 1
# ifndef __AVR_ATmega644P__
# error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu.
# endif
# define DEBUG_PIN 0
// x axis
# define X_STEP_PIN 15
# define X_DIR_PIN 18
# define X_MIN_PIN 20
//Alex Checar #define X_STOP_PIN 20
# define X_ENABLE_PIN 24 //actually uses Y_enable_pin
# define X_MAX_PIN -1
// y axes
# define Y_STEP_PIN 23
# define Y_DIR_PIN 22
# define Y_MIN_PIN 25
//Alex Checar #define Y_STOP_PIN 25
# define Y_ENABLE_PIN 24 //shared with X_enable_pin
# define Y_MAX_PIN -1
// z axes
# define Z_STEP_PIN 27
# define Z_DIR_PIN 28
# define Z_MIN_PIN 30
//Alex Checar #define Z_STOP_PIN 30
# define Z_ENABLE_PIN 29
# define Z_MAX_PIN -1
//extruder pins
# define E0_STEP_PIN 12
# define E0_DIR_PIN 17
# define E0_ENABLE_PIN 3
2012-02-05 12:42:15 +01:00
2014-05-07 02:24:20 +02:00
# define HEATER_0_PIN 16
# define TEMP_0_PIN 0
# define FAN_PIN -1
//bed pins
# define HEATER_BED_PIN -1
# define TEMP_BED_PIN -1
2014-12-18 21:02:36 +01:00
# define SDSS -1
2014-05-07 02:24:20 +02:00
# define SDPOWER -1
# define LED_PIN -1
//pin for controlling the PSU.
2014-12-18 21:02:36 +01:00
# define PS_ON_PIN 14 //Alex, Do this work on the card?
2014-05-07 02:24:20 +02:00
//Alex extras from Gen3+
# define KILL_PIN -1
# define TEMP_1_PIN -1
# define TEMP_2_PIN -1
# define HEATER_2_PIN -1
2014-12-18 21:02:36 +01:00
# endif // GEN3_MONOLITHIC
2012-02-05 12:42:15 +01:00
2012-03-22 14:51:21 +01:00
/****************************************************************************************
* Open Motion controller with enable based extruders
*
* ATMega644
*
* + - - - \ / - - - +
* ( D 0 ) PB0 1 | | 40 PA0 ( AI 0 / D31 )
* ( D 1 ) PB1 2 | | 39 PA1 ( AI 1 / D30 )
* INT2 ( D 2 ) PB2 3 | | 38 PA2 ( AI 2 / D29 )
* PWM ( D 3 ) PB3 4 | | 37 PA3 ( AI 3 / D28 )
* PWM ( D 4 ) PB4 5 | | 36 PA4 ( AI 4 / D27 )
* MOSI ( D 5 ) PB5 6 | | 35 PA5 ( AI 5 / D26 )
* MISO ( D 6 ) PB6 7 | | 34 PA6 ( AI 6 / D25 )
* SCK ( D 7 ) PB7 8 | | 33 PA7 ( AI 7 / D24 )
* RST 9 | | 32 AREF
2013-06-07 00:49:25 +02:00
* VCC 10 | | 31 GND
2012-03-22 14:51:21 +01:00
* GND 11 | | 30 AVCC
* XTAL2 12 | | 29 PC7 ( D 23 )
* XTAL1 13 | | 28 PC6 ( D 22 )
* RX0 ( D 8 ) PD0 14 | | 27 PC5 ( D 21 ) TDI
* TX0 ( D 9 ) PD1 15 | | 26 PC4 ( D 20 ) TDO
* INT0 RX1 ( D 10 ) PD2 16 | | 25 PC3 ( D 19 ) TMS
* INT1 TX1 ( D 11 ) PD3 17 | | 24 PC2 ( D 18 ) TCK
* PWM ( D 12 ) PD4 18 | | 23 PC1 ( D 17 ) SDA
* PWM ( D 13 ) PD5 19 | | 22 PC0 ( D 16 ) SCL
* PWM ( D 14 ) PD6 20 | | 21 PD7 ( D 15 ) PWM
* + - - - - - - - - +
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2014-12-18 21:02:36 +01:00
# if MB(OMCA_A) //Alpha OMCA board
2012-03-22 14:51:21 +01:00
# define KNOWN_BOARD 1
# ifndef __AVR_ATmega644__
# error Oops! Make sure you have 'SanguinoA' selected from the 'Tools -> Boards' menu.
# endif
# define X_STEP_PIN 21
# define X_DIR_PIN 20
# define X_ENABLE_PIN 24
2012-12-16 21:08:55 +01:00
# define X_STOP_PIN 0
2012-03-22 14:51:21 +01:00
# define Y_STEP_PIN 23
# define Y_DIR_PIN 22
# define Y_ENABLE_PIN 24
2012-12-16 21:08:55 +01:00
# define Y_STOP_PIN 1
2012-03-22 14:51:21 +01:00
# define Z_STEP_PIN 26
# define Z_DIR_PIN 25
# define Z_ENABLE_PIN 24
2012-12-16 21:08:55 +01:00
# define Z_STOP_PIN 2
2012-03-22 14:51:21 +01:00
# define E0_STEP_PIN 28
# define E0_DIR_PIN 27
# define E0_ENABLE_PIN 24
# define E1_STEP_PIN -1 // 19
# define E1_DIR_PIN -1 // 18
# define E1_ENABLE_PIN 24
# define E2_STEP_PIN -1 // 17
# define E2_DIR_PIN -1 // 16
# define E2_ENABLE_PIN 24
# define SDPOWER -1
# define SDSS 11
# define SDCARDDETECT -1 // 10 optional also used as mode pin
# define LED_PIN -1
# define FAN_PIN 3
# define PS_ON_PIN -1
# define KILL_PIN -1
# define HEATER_0_PIN 4
2013-06-07 00:49:25 +02:00
# define HEATER_1_PIN -1 // 12
2012-03-22 14:51:21 +01:00
# define HEATER_2_PIN -1 // 13
# define TEMP_0_PIN 0 //D27 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!!
# define TEMP_1_PIN -1 // 1
# define TEMP_2_PIN -1 // 2
# define HEATER_BED_PIN -1 // 14/15
# define TEMP_BED_PIN -1 // 1,2 or I2C
/* Unused (1) (2) (3) 4 5 6 7 8 9 10 11 12 13 (14) (15) (16) 17 (18) (19) (20) (21) (22) (23) 24 (25) (26) (27) 28 (29) (30) (31) */
2014-12-18 21:02:36 +01:00
# endif // OMCA_A
2012-03-22 14:51:21 +01:00
2014-12-18 21:02:36 +01:00
# if MB(OMCA) // Final OMCA board -- REF http://sanguino.cc/hardware
2012-03-22 14:51:21 +01:00
# define KNOWN_BOARD 1
# if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega644__)
# error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. (Final OMCA board)
# endif
# define X_STEP_PIN 26
# define X_DIR_PIN 25
# define X_ENABLE_PIN 10
2012-12-16 21:08:55 +01:00
# define X_STOP_PIN 0
2012-03-22 14:51:21 +01:00
# define Y_STEP_PIN 28
# define Y_DIR_PIN 27
# define Y_ENABLE_PIN 10
2012-12-16 21:08:55 +01:00
# define Y_STOP_PIN 1
2012-03-22 14:51:21 +01:00
# define Z_STEP_PIN 23
# define Z_DIR_PIN 22
# define Z_ENABLE_PIN 10
2012-12-16 21:08:55 +01:00
# define Z_STOP_PIN 2
2012-03-22 14:51:21 +01:00
# define E0_STEP_PIN 24
# define E0_DIR_PIN 21
# define E0_ENABLE_PIN 10
/* future proofing */
2013-06-07 00:49:25 +02:00
# define __FS 20
# define __FD 19
# define __GS 18
# define __GD 13
2012-03-22 14:51:21 +01:00
2013-06-07 00:49:25 +02:00
# define UNUSED_PWM 14 /* PWM on LEFT connector */
2012-03-22 14:51:21 +01:00
# define E1_STEP_PIN -1 // 21
# define E1_DIR_PIN -1 // 20
# define E1_ENABLE_PIN -1 // 19
# define E2_STEP_PIN -1 // 21
# define E2_DIR_PIN -1 // 20
# define E2_ENABLE_PIN -1 // 18
# define SDPOWER -1
# define SDSS 11
# define SDCARDDETECT -1 // 10 optional also used as mode pin
# define LED_PIN -1
# define FAN_PIN 14 /* PWM on MIDDLE connector */
# define PS_ON_PIN -1
# define KILL_PIN -1
# define HEATER_0_PIN 3 /*DONE PWM on RIGHT connector */
2013-06-07 00:49:25 +02:00
# define HEATER_1_PIN -1
2012-03-22 14:51:21 +01:00
# define HEATER_2_PIN -1
2013-06-07 00:49:25 +02:00
# define HEATER_1_PIN -1
2012-03-22 14:51:21 +01:00
# define HEATER_2_PIN -1
2013-06-07 00:49:25 +02:00
# define TEMP_0_PIN 0 // ANALOG INPUT NUMBERING
2012-03-22 14:51:21 +01:00
# define TEMP_1_PIN 1 // ANALOG
# define TEMP_2_PIN -1 // 2
# define HEATER_BED_PIN 4
# define TEMP_BED_PIN 2 // 1,2 or I2C
2013-06-07 00:49:25 +02:00
# define I2C_SCL 16
# define I2C_SDA 17
2012-03-22 14:51:21 +01:00
2014-12-18 21:02:36 +01:00
# endif // OMCA
2012-03-22 14:51:21 +01:00
2012-08-30 09:16:57 +02:00
/*****************************************************************
* Rambo Pin Assignments
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2014-12-18 21:02:36 +01:00
# if MB(RAMBO)
# define KNOWN_BOARD
2012-08-30 09:16:57 +02:00
# ifndef __AVR_ATmega2560__
# error Oops! Make sure you have 'Arduino Mega 2560' selected from the 'Tools -> Boards' menu.
# endif
2013-03-25 16:42:27 +01:00
# define LARGE_FLASH true
2015-01-07 18:02:05 +01:00
// servo support
# ifdef NUM_SERVOS
# define SERVO0_PIN 22 //motor header MX1
# if NUM_SERVOS > 1
# define SERVO1_PIN 23 //Motor header MX2
# endif
# if NUM_SERVOS > 2
# define SERVO2_PIN 24 //Motor header MX3
# endif
# if NUM_SERVOS > 3
# define SERVO2_PIN 5 //pwm header pin 5
# endif
# endif
2012-08-30 09:16:57 +02:00
# define X_STEP_PIN 37
# define X_DIR_PIN 48
# define X_MIN_PIN 12
2012-09-19 20:15:17 +02:00
# define X_MAX_PIN 24
2012-08-30 09:16:57 +02:00
# define X_ENABLE_PIN 29
# define X_MS1_PIN 40
# define X_MS2_PIN 41
# define Y_STEP_PIN 36
# define Y_DIR_PIN 49
# define Y_MIN_PIN 11
2012-09-19 20:15:17 +02:00
# define Y_MAX_PIN 23
2012-08-30 09:16:57 +02:00
# define Y_ENABLE_PIN 28
# define Y_MS1_PIN 69
# define Y_MS2_PIN 39
# define Z_STEP_PIN 35
# define Z_DIR_PIN 47
# define Z_MIN_PIN 10
2012-09-19 20:15:17 +02:00
# define Z_MAX_PIN 30
2012-08-30 09:16:57 +02:00
# define Z_ENABLE_PIN 27
# define Z_MS1_PIN 68
# define Z_MS2_PIN 67
# define HEATER_BED_PIN 3
2013-06-07 00:49:25 +02:00
# define TEMP_BED_PIN 2
2012-08-30 09:16:57 +02:00
# define HEATER_0_PIN 9
# define TEMP_0_PIN 0
# define HEATER_1_PIN 7
# define TEMP_1_PIN 1
2013-06-07 00:49:25 +02:00
# ifdef BARICUDA
# define HEATER_2_PIN 6
# else
2012-08-30 09:16:57 +02:00
# define HEATER_2_PIN -1
2013-06-07 00:49:25 +02:00
# endif
2012-08-30 09:16:57 +02:00
# define TEMP_2_PIN -1
# define E0_STEP_PIN 34
# define E0_DIR_PIN 43
# define E0_ENABLE_PIN 26
# define E0_MS1_PIN 65
# define E0_MS2_PIN 66
# define E1_STEP_PIN 33
# define E1_DIR_PIN 42
# define E1_ENABLE_PIN 25
# 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
# define SDPOWER -1
# define SDSS 53
# define LED_PIN 13
2015-01-07 18:02:05 +01:00
# define FAN_PIN 8
/**********************************************************
Fan Pins
Fan_0 8
Fan_1 6
Fan_2 2
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2012-08-30 09:16:57 +02:00
# define PS_ON_PIN 4
2013-08-03 18:45:53 +02:00
# define KILL_PIN -1 //80 with Smart Controller LCD
2012-08-30 09:16:57 +02:00
# define SUICIDE_PIN -1 //PIN that has to be turned on right after start, to keep power flowing.
2013-08-03 18:45:53 +02:00
# ifdef ULTRA_LCD
# define KILL_PIN 80
# ifdef NEWPANEL
//arduino pin which triggers an piezzo beeper
# define BEEPER 79 // Beeper on AUX-4
# 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
//buttons are directly attached using AUX-2
# define BTN_EN1 76
# define BTN_EN2 77
# define BTN_ENC 78 //the click
# define BLEN_C 2
# define BLEN_B 1
# define BLEN_A 0
# define SDCARDDETECT 81 // Ramps does not use this port
//encoder rotation values
# define encrot0 0
# define encrot1 2
# define encrot2 3
# define encrot3 1
# else //old style panel with shift register
//arduino pin witch triggers an piezzo beeper
# define BEEPER 33 No Beeper added
//buttons are attached to a shift register
// Not wired this 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
//encoder rotation values
# define encrot0 0
# define encrot1 2
# define encrot2 3
# define encrot3 1
//bits in the shift register that carry the buttons for:
// left up center down right red
# define BL_LE 7
# define BL_UP 6
# define BL_MI 5
# define BL_DW 4
# define BL_RI 3
# define BL_ST 2
# define BLEN_B 1
# define BLEN_A 0
# endif
# endif //ULTRA_LCD
2014-08-07 02:30:57 +02:00
# ifdef FILAMENT_SENSOR
//Filip added pin for Filament sensor analog input
# define FILWIDTH_PIN 3
# endif //FILAMENT_SENSOR
2013-08-03 18:45:53 +02:00
2014-12-18 21:02:36 +01:00
# endif // RAMBO
2012-02-05 12:42:15 +01:00
2012-10-14 13:05:12 +02:00
/****************************************************************************************
* MegaTronics
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2014-12-18 21:02:36 +01:00
# if MB(MEGATRONICS)
2012-10-14 13:05:12 +02:00
# define KNOWN_BOARD 1
# ifndef __AVR_ATmega2560__
# error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
# endif
2013-03-25 16:42:27 +01:00
# define LARGE_FLASH true
2012-10-14 13:05:12 +02:00
# define X_STEP_PIN 26
# define X_DIR_PIN 28
# define X_ENABLE_PIN 24
# define X_MIN_PIN 41
2012-12-16 21:08:55 +01:00
# define X_MAX_PIN 37
2012-10-14 13:05:12 +02:00
# define Y_STEP_PIN 60 // A6
# define Y_DIR_PIN 61 // A7
# define Y_ENABLE_PIN 22
# define Y_MIN_PIN 14
2012-12-16 21:08:55 +01:00
# define Y_MAX_PIN 15
2012-10-14 13:05:12 +02:00
# define Z_STEP_PIN 54 // A0
# define Z_DIR_PIN 55 // A1
# define Z_ENABLE_PIN 56 // A2
# define Z_MIN_PIN 18
# define Z_MAX_PIN 19
# define E0_STEP_PIN 31
# define E0_DIR_PIN 32
# define E0_ENABLE_PIN 38
# define E1_STEP_PIN 34
# define E1_DIR_PIN 36
# define E1_ENABLE_PIN 30
# define SDPOWER -1
# define SDSS 53
# define LED_PIN 13
# define FAN_PIN 7 // IO pin. Buffer needed
# define PS_ON_PIN 12
# define KILL_PIN -1
# define HEATER_0_PIN 9 // EXTRUDER 1
# define HEATER_1_PIN 8 // EXTRUDER 2 (FAN On Sprinter)
2013-06-07 00:49:25 +02:00
# define HEATER_2_PIN -1
2012-10-14 13:05:12 +02:00
2013-06-07 00:49:25 +02:00
# if TEMP_SENSOR_0 == -1
2012-10-14 13:05:12 +02:00
# define TEMP_0_PIN 8 // ANALOG NUMBERING
# else
# define TEMP_0_PIN 13 // ANALOG NUMBERING
# endif
# define TEMP_1_PIN 15 // ANALOG NUMBERING
# define TEMP_2_PIN -1 // ANALOG NUMBERING
# define HEATER_BED_PIN 10 // BED
# define TEMP_BED_PIN 14 // ANALOG NUMBERING
2013-06-07 00:49:25 +02:00
# define BEEPER 33 // Beeper on AUX-4
2012-10-14 13:05:12 +02:00
# ifdef ULTRA_LCD
# ifdef NEWPANEL
//arduino pin which triggers an piezzo beeper
2013-06-07 00:49:25 +02:00
# define LCD_PINS_RS 16
2012-10-14 13:05:12 +02:00
# define LCD_PINS_ENABLE 17
# define LCD_PINS_D4 23
2013-06-07 00:49:25 +02:00
# define LCD_PINS_D5 25
2012-10-14 13:05:12 +02:00
# define LCD_PINS_D6 27
# define LCD_PINS_D7 29
2013-06-07 00:49:25 +02:00
2012-10-14 13:05:12 +02:00
//buttons are directly attached using AUX-2
2012-11-29 21:42:19 +01:00
# define BTN_EN1 59
# define BTN_EN2 64
2012-10-14 13:05:12 +02:00
# define BTN_ENC 43 //the click
2014-02-05 10:47:12 +01:00
2012-10-14 13:05:12 +02:00
# define BLEN_C 2
# define BLEN_B 1
# define BLEN_A 0
2014-02-05 10:47:12 +01:00
2014-12-18 21:02:36 +01:00
# define SDCARDDETECT -1 // Ramps does not use this port
2014-02-05 10:47:12 +01:00
2012-10-14 13:05:12 +02:00
//encoder rotation values
# define encrot0 0
# define encrot1 2
# define encrot2 3
# define encrot3 1
# endif
# endif //ULTRA_LCD
2014-12-18 21:02:36 +01:00
# endif // MEGATRONICS
2012-10-14 13:05:12 +02:00
2013-06-07 00:49:25 +02:00
/****************************************************************************************
* MegaTronics v2 .0
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2014-12-18 21:02:36 +01:00
# if MB(MEGATRONICS_2)
2013-06-07 00:49:25 +02:00
# define KNOWN_BOARD 1
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
# ifndef __AVR_ATmega2560__
# error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
# endif
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
# define LARGE_FLASH true
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
# define X_STEP_PIN 26
# define X_DIR_PIN 27
# define X_ENABLE_PIN 25
# define X_MIN_PIN 37
# define X_MAX_PIN 40 //2 //Max endstops default to disabled "-1", set to commented value to enable.
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
# define Y_STEP_PIN 4 // A6
# define Y_DIR_PIN 54 // A0
# define Y_ENABLE_PIN 5
# define Y_MIN_PIN 41
# define Y_MAX_PIN 38 //15
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
# define Z_STEP_PIN 56 // A2
# define Z_DIR_PIN 60 // A6
# define Z_ENABLE_PIN 55 // A1
# define Z_MIN_PIN 18
# define Z_MAX_PIN 19
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
# define E0_STEP_PIN 35
# define E0_DIR_PIN 36
# define E0_ENABLE_PIN 34
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
# define E1_STEP_PIN 29
# define E1_DIR_PIN 39
# define E1_ENABLE_PIN 28
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
# define E2_STEP_PIN 23
# define E2_DIR_PIN 24
# define E2_ENABLE_PIN 22
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
# define SDPOWER -1
# define SDSS 53
# define LED_PIN 13
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
# define FAN_PIN 7
# define FAN2_PIN 6
# define PS_ON_PIN 12
# define KILL_PIN -1
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
# define HEATER_0_PIN 9 // EXTRUDER 1
# define HEATER_1_PIN 8 // EXTRUDER 2
# define HEATER_2_PIN -1
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
# if TEMP_SENSOR_0 == -1
# define TEMP_0_PIN 4 // ANALOG NUMBERING
# else
# define TEMP_0_PIN 13 // ANALOG NUMBERING
# endif
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
# if TEMP_SENSOR_1 == -1
# define TEMP_1_PIN 8 // ANALOG NUMBERING
# else
# define TEMP_1_PIN 15 // ANALOG NUMBERING
# endif
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
# define TEMP_2_PIN -1 // ANALOG NUMBERING
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
# define HEATER_BED_PIN 10 // BED
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
# if TEMP_SENSOR_BED == -1
# define TEMP_BED_PIN 8 // ANALOG NUMBERING
2014-02-05 10:47:12 +01:00
# else
2013-06-07 00:49:25 +02:00
# define TEMP_BED_PIN 14 // ANALOG NUMBERING
# endif
2014-02-05 10:47:12 +01:00
# define BEEPER 64
2013-06-07 00:49:25 +02:00
# define LCD_PINS_RS 14
# define LCD_PINS_ENABLE 15
# define LCD_PINS_D4 30
# define LCD_PINS_D5 31
# define LCD_PINS_D6 32
# define LCD_PINS_D7 33
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
//buttons are directly attached using keypad
# define BTN_EN1 61
# define BTN_EN2 59
# define BTN_ENC 43 //the click
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
# define BLEN_C 2
# define BLEN_B 1
# define BLEN_A 0
2014-02-05 10:47:12 +01:00
2014-12-18 21:02:36 +01:00
# define SDCARDDETECT -1 // Megatronics does not use this port
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
//encoder rotation values
# define encrot0 0
# define encrot1 2
# define encrot2 3
# define encrot3 1
2014-12-18 21:02:36 +01:00
# endif // MEGATRONICS_2
2013-06-07 00:49:25 +02:00
/****************************************************************************************
* Minitronics v1 .0
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2014-12-18 21:02:36 +01:00
# if MB(MEGATRONICS_1)
2013-06-07 00:49:25 +02:00
# define KNOWN_BOARD 1
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
# ifndef __AVR_ATmega1281__
# error Oops! Make sure you have 'Minitronics ' selected from the 'Tools -> Boards' menu.
# endif
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
# define LARGE_FLASH true
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
# define X_STEP_PIN 48
# define X_DIR_PIN 47
# define X_ENABLE_PIN 49
# define X_MIN_PIN 5
# define X_MAX_PIN -1 //2 //Max endstops default to disabled "-1", set to commented value to enable.
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
# define Y_STEP_PIN 39 // A6
# define Y_DIR_PIN 40 // A0
# define Y_ENABLE_PIN 38
# define Y_MIN_PIN 2
# define Y_MAX_PIN -1 //15
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
# define Z_STEP_PIN 42 // A2
# define Z_DIR_PIN 43 // A6
# define Z_ENABLE_PIN 41 // A1
# define Z_MIN_PIN 6
# define Z_MAX_PIN -1
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
# define E0_STEP_PIN 45
# define E0_DIR_PIN 44
# define E0_ENABLE_PIN 27
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
# define E1_STEP_PIN 36
# define E1_DIR_PIN 35
# define E1_ENABLE_PIN 37
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
# define E2_STEP_PIN -1
# define E2_DIR_PIN -1
# define E2_ENABLE_PIN -1
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
# define SDPOWER -1
# define SDSS 16
# define LED_PIN 46
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
# define FAN_PIN 9
# define FAN2_PIN -1
# define PS_ON_PIN -1
# define KILL_PIN -1
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
# define HEATER_0_PIN 7 // EXTRUDER 1
# define HEATER_1_PIN 8 // EXTRUDER 2
# define HEATER_2_PIN -1
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
# define TEMP_0_PIN 7 // ANALOG NUMBERING
# define TEMP_1_PIN 6 // ANALOG NUMBERING
# define TEMP_2_PIN -1 // ANALOG NUMBERING
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
# define HEATER_BED_PIN 3 // BED
# define TEMP_BED_PIN 6 // ANALOG NUMBERING
2014-02-05 10:47:12 +01:00
# define BEEPER -1
2013-06-07 00:49:25 +02:00
# define LCD_PINS_RS -1
# define LCD_PINS_ENABLE -1
# define LCD_PINS_D4 -1
# define LCD_PINS_D5 -1
# define LCD_PINS_D6 -1
# define LCD_PINS_D7 -1
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
//buttons are directly attached using keypad
# define BTN_EN1 -1
# define BTN_EN2 -1
# define BTN_ENC -1 //the click
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
# define BLEN_C 2
# define BLEN_B 1
# define BLEN_A 0
2014-02-05 10:47:12 +01:00
2014-12-18 21:02:36 +01:00
# define SDCARDDETECT -1 // Megatronics does not use this port
2014-02-05 10:47:12 +01:00
2013-06-07 00:49:25 +02:00
//encoder rotation values
# define encrot0 0
# define encrot1 2
# define encrot2 3
# define encrot3 1
2014-12-18 21:02:36 +01:00
# endif // MEGATRONICS_1
2013-06-07 00:49:25 +02:00
2013-12-07 13:29:47 +01:00
/****************************************************************************************
* Cheaptronic v1 .0
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2014-12-18 21:02:36 +01:00
# if MB(CHEAPTRONIC)
2013-12-07 13:29:47 +01:00
# define KNOWN_BOARD 1
# ifndef __AVR_ATmega2560__
# error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
# endif
# define LARGE_FLASH true
//X motor stepper
# define X_STEP_PIN 14
# define X_DIR_PIN 15
# define X_ENABLE_PIN 24
2014-02-05 10:47:12 +01:00
2013-12-07 13:29:47 +01:00
//X endstop
# define X_MIN_PIN 3
# define X_MAX_PIN -1
//Y motor stepper
# define Y_STEP_PIN 35
# define Y_DIR_PIN 36
# define Y_ENABLE_PIN 31
//Y endstop
# define Y_MIN_PIN 2
# define Y_MAX_PIN -1
2014-02-05 10:47:12 +01:00
2013-12-07 13:29:47 +01:00
//Z motor stepper
# define Z_STEP_PIN 40
# define Z_DIR_PIN 41
# define Z_ENABLE_PIN 37
//Z endstop
# define Z_MIN_PIN 5
# define Z_MAX_PIN -1
2014-02-05 10:47:12 +01:00
2013-12-07 13:29:47 +01:00
//Extruder 0 stepper
# define E0_STEP_PIN 26
# define E0_DIR_PIN 28
# define E0_ENABLE_PIN 25
//Extruder 1 stepper
# define E1_STEP_PIN 33
# define E1_DIR_PIN 34
# define E1_ENABLE_PIN 30
# define SDPOWER -1
# define SDSS -1
# define LED_PIN -1
//FAN
# define FAN_PIN -1
# define PS_ON_PIN -1
# define KILL_PIN -1
# define HEATER_0_PIN 19 // EXTRUDER 1
# define HEATER_1_PIN 23 // EXTRUDER 2
//HeatedBad
# define HEATER_BED_PIN 22
//Cheaptronic v1.0 hasent EXTRUDER 3
# define HEATER_2_PIN -1
2014-02-05 10:47:12 +01:00
2013-12-07 13:29:47 +01:00
//Temperature sensors
# define TEMP_0_PIN 15
# define TEMP_1_PIN 14
# define TEMP_2_PIN -1
# define TEMP_BED_PIN 13
//Cheaptronic v1.0 dont support LCD
# define LCD_PINS_RS -1
# define LCD_PINS_ENABLE -1
# define LCD_PINS_D4 -1
# define LCD_PINS_D5 -1
# define LCD_PINS_D6 -1
# define LCD_PINS_D7 -1
//Cheaptronic v1.0 dont support keypad
# define BTN_EN1 -1
# define BTN_EN2 -1
# define BTN_ENC -1
# define BLEN_C 2
# define BLEN_B 1
# define BLEN_A 0
//Cheaptronic v1.0 does not use this port
# define SDCARDDETECT -1
//encoder rotation values
# define encrot0 0
# define encrot1 2
# define encrot2 3
# define encrot3 1
2014-12-18 21:02:36 +01:00
# endif // CHEAPTRONIC
2013-12-07 13:29:47 +01:00
2013-06-07 00:49:25 +02:00
2011-12-12 19:34:37 +01:00
# ifndef KNOWN_BOARD
# error Unknown MOTHERBOARD value in configuration.h
# endif
//List of pins which to ignore when asked to change by gcode, 0 and 1 are RX and TX, do not mess with those!
2013-06-07 00:49:25 +02:00
# define _E0_PINS E0_STEP_PIN, E0_DIR_PIN, E0_ENABLE_PIN, HEATER_0_PIN,
2012-02-29 15:49:02 +01:00
# if EXTRUDERS > 1
# define _E1_PINS E1_STEP_PIN, E1_DIR_PIN, E1_ENABLE_PIN, HEATER_1_PIN,
2011-12-12 19:34:37 +01:00
# else
2012-02-29 15:49:02 +01:00
# define _E1_PINS
2011-12-12 19:34:37 +01:00
# endif
2012-02-29 19:01:21 +01:00
# if EXTRUDERS > 2
2012-02-29 15:49:02 +01:00
# define _E2_PINS E2_STEP_PIN, E2_DIR_PIN, E2_ENABLE_PIN, HEATER_2_PIN,
# else
# define _E2_PINS
# endif
2012-12-16 21:08:55 +01:00
# ifdef X_STOP_PIN
# if X_HOME_DIR < 0
# define X_MIN_PIN X_STOP_PIN
# define X_MAX_PIN -1
# else
# define X_MIN_PIN -1
# define X_MAX_PIN X_STOP_PIN
# endif
# endif
# ifdef Y_STOP_PIN
# if Y_HOME_DIR < 0
# define Y_MIN_PIN Y_STOP_PIN
# define Y_MAX_PIN -1
# else
# define Y_MIN_PIN -1
# define Y_MAX_PIN Y_STOP_PIN
# endif
# endif
# ifdef Z_STOP_PIN
# if Z_HOME_DIR < 0
# define Z_MIN_PIN Z_STOP_PIN
# define Z_MAX_PIN -1
# else
# define Z_MIN_PIN -1
# define Z_MAX_PIN Z_STOP_PIN
# endif
# endif
2012-03-12 20:32:14 +01:00
# ifdef DISABLE_MAX_ENDSTOPS
# define X_MAX_PIN -1
# define Y_MAX_PIN -1
# define Z_MAX_PIN -1
# endif
2013-06-18 19:20:26 +02:00
# ifdef DISABLE_MIN_ENDSTOPS
# define X_MIN_PIN -1
# define Y_MIN_PIN -1
# define Z_MIN_PIN -1
# endif
2012-12-11 14:53:53 +01:00
# define SENSITIVE_PINS {0, 1, X_STEP_PIN, X_DIR_PIN, X_ENABLE_PIN, X_MIN_PIN, X_MAX_PIN, Y_STEP_PIN, Y_DIR_PIN, Y_ENABLE_PIN, Y_MIN_PIN, Y_MAX_PIN, Z_STEP_PIN, Z_DIR_PIN, Z_ENABLE_PIN, Z_MIN_PIN, Z_MAX_PIN, PS_ON_PIN, \
2011-12-12 19:34:37 +01:00
HEATER_BED_PIN , FAN_PIN , \
2012-02-29 15:49:02 +01:00
_E0_PINS _E1_PINS _E2_PINS \
2012-12-11 14:53:53 +01:00
analogInputToDigitalPin ( TEMP_0_PIN ) , analogInputToDigitalPin ( TEMP_1_PIN ) , analogInputToDigitalPin ( TEMP_2_PIN ) , analogInputToDigitalPin ( TEMP_BED_PIN ) }
2013-06-07 00:49:25 +02:00
2014-12-18 21:02:36 +01:00
# endif //__PINS_H