Prusa MINI Firmware overview
pins_DUE3DOM.h
Go to the documentation of this file.
1 /**
2  * Marlin 3D Printer Firmware
3  * Copyright (c) 2019 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
4  *
5  * Based on Sprinter and grbl.
6  * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm
7  *
8  * This program is free software: you can redistribute it and/or modify
9  * it under the terms of the GNU General Public License as published by
10  * the Free Software Foundation, either version 3 of the License, or
11  * (at your option) any later version.
12  *
13  * This program is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16  * GNU General Public License for more details.
17  *
18  * You should have received a copy of the GNU General Public License
19  * along with this program. If not, see <http://www.gnu.org/licenses/>.
20  *
21  */
22 #pragma once
23 
24 /**
25  * DUE3DOM pin assignments
26  */
27 
28 #ifndef __SAM3X8E__
29  #error "Oops! Select 'Arduino Due' in 'Tools > Board.'"
30 #endif
31 
32 #define BOARD_INFO_NAME "DUE3DOM"
33 
34 //
35 // Servos
36 //
37 #define SERVO0_PIN 5
38 #define SERVO1_PIN 6
39 #define SERVO2_PIN 13
40 #define SERVO3_PIN -1
41 
42 //
43 // Limit Switches
44 //
45 #define X_MIN_PIN 38
46 #define X_MAX_PIN 36
47 #define Y_MIN_PIN 34
48 #define Y_MAX_PIN 32
49 #define Z_MIN_PIN 30
50 #define Z_MAX_PIN 28
51 
52 //
53 // Steppers
54 //
55 #define X_STEP_PIN 2
56 #define X_DIR_PIN 3
57 #define X_ENABLE_PIN 22
58 
59 #define Y_STEP_PIN 17
60 #define Y_DIR_PIN 16
61 #define Y_ENABLE_PIN 26
62 
63 #define Z_STEP_PIN 61 // Z1 STP
64 #define Z_DIR_PIN 60 // Z1 DIR
65 #define Z_ENABLE_PIN 15 // Z1 ENA
66 
67 #define E0_STEP_PIN 64 // Z2 STP
68 #define E0_DIR_PIN 63 // Z2 DIR
69 #define E0_ENABLE_PIN 62 // Z2 ENA
70 
71 #define E1_STEP_PIN 51 // E1 STP
72 #define E1_DIR_PIN 53 // E1 DIR
73 #define E1_ENABLE_PIN 65 // E1 ENA
74 
75 #define E2_STEP_PIN 24 // E2 STP
76 #define E2_DIR_PIN 23 // E2 DIR
77 #define E2_ENABLE_PIN 49 // E2 ENA
78 
79 //
80 // Temperature Sensors
81 //
82 #define TEMP_0_PIN 0 // Analog Input (HOTEND0 thermistor)
83 #define TEMP_1_PIN 2 // Analog Input (HOTEND1 thermistor)
84 #define TEMP_2_PIN 5 // Analog Input (unused)
85 #define TEMP_BED_PIN 1 // Analog Input (BED thermistor)
86 
87 // SPI for Max6675 or Max31855 Thermocouple
88 #if DISABLED(SDSUPPORT)
89  #define MAX6675_SS_PIN -1
90 #else
91  #define MAX6675_SS_PIN -1
92 #endif
93 
94 //
95 // Heaters / Fans
96 //
97 #define HEATER_0_PIN 7 // HOTEND0 MOSFET
98 #define HEATER_1_PIN 8 // HOTEND1 MOSFET
99 #define HEATER_BED_PIN 39 // BED MOSFET
100 
101 #ifndef FAN_PIN
102  #define FAN_PIN 11 // FAN1 header on board - PRINT FAN
103 #endif
104 #define FAN1_PIN 9 // FAN2 header on board - CONTROLLER FAN
105 #define FAN2_PIN 12 // FAN3 header on board - EXTRUDER0 FAN
106 
107 //
108 // Misc. Functions
109 //
110 #define SDSS 4
111 #define PS_ON_PIN 40
112 
113 //
114 // LCD / Controller
115 //
116 #if HAS_SPI_LCD
117 
118  #define LCD_PINS_RS 42
119  #define LCD_PINS_ENABLE 43
120  #define LCD_PINS_D4 44
121  #define LCD_PINS_D5 45
122  #define LCD_PINS_D6 46
123  #define LCD_PINS_D7 47
124 
125  #if ENABLED(REPRAP_DISCOUNT_SMART_CONTROLLER)
126 
127  #define BEEPER_PIN 41
128 
129  #define BTN_EN1 50
130  #define BTN_EN2 52
131  #define BTN_ENC 48
132 
133  #define SDSS 4
134  #define SD_DETECT_PIN 14
135 
136  #elif ENABLED(RADDS_DISPLAY)
137 
138  #define BEEPER_PIN 41
139 
140  #define BTN_EN1 50
141  #define BTN_EN2 52
142  #define BTN_ENC 48
143 
144  #define BTN_BACK 71
145 
146  #undef SDSS
147  #define SDSS 4
148  #define SD_DETECT_PIN 14
149 
150  #elif HAS_SSD1306_OLED_I2C
151 
152  #define BTN_EN1 50
153  #define BTN_EN2 52
154  #define BTN_ENC 48
155  #define BEEPER_PIN 41
156  #define LCD_SDSS 4
157  #define SD_DETECT_PIN 14
158 
159  #elif ENABLED(SPARK_FULL_GRAPHICS)
160 
161  #define LCD_PINS_D4 29
162  #define LCD_PINS_ENABLE 27
163  #define LCD_PINS_RS 25
164 
165  #define BTN_EN1 35
166  #define BTN_EN2 33
167  #define BTN_ENC 37
168 
169  #define BEEPER_PIN -1
170  #endif // SPARK_FULL_GRAPHICS
171 #endif // HAS_SPI_LCD