Prusa MINI Firmware overview
pins_CHEAPTRONICv2.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  * Cheaptronic v2.0 pin assignments
26  * Built and sold by Michal Dyntar - RRO
27  * www.reprapobchod.cz
28  */
29 
30 #ifndef __AVR_ATmega2560__
31  #error "Oops! Select 'Arduino/Genuino Mega or Mega 2560' in 'Tools > Board.'"
32 #endif
33 
34 #define BOARD_INFO_NAME "Cheaptronic v2.0"
35 
36 //
37 // Limit Switches
38 //
39 #define X_MIN_PIN 30
40 #define X_MAX_PIN 31
41 #define Y_MIN_PIN 32
42 #define Y_MAX_PIN 33
43 #define Z_MIN_PIN 34
44 #define Z_MAX_PIN 35
45 
46 //
47 // Steppers
48 //
49 #define X_STEP_PIN 17
50 #define X_DIR_PIN 16
51 #define X_ENABLE_PIN 48
52 
53 #define Y_STEP_PIN 54
54 #define Y_DIR_PIN 47
55 #define Y_ENABLE_PIN 55
56 
57 #define Z_STEP_PIN 57
58 #define Z_DIR_PIN 56
59 #define Z_ENABLE_PIN 62
60 
61 #define E0_STEP_PIN 23
62 #define E0_DIR_PIN 22
63 #define E0_ENABLE_PIN 24
64 
65 #define E1_STEP_PIN 26
66 #define E1_DIR_PIN 25
67 #define E1_ENABLE_PIN 27
68 
69 #define E2_STEP_PIN 29
70 #define E2_DIR_PIN 28
71 #define E2_ENABLE_PIN 39
72 
73 //
74 // Temperature sensors
75 //
76 #define TEMP_0_PIN 15
77 #define TEMP_1_PIN 13
78 #define TEMP_2_PIN 14
79 #define TEMP_3_PIN 11 // should be used for chamber temperature control
80 #define TEMP_BED_PIN 12
81 
82 //
83 // Heaters / Fans
84 //
85 #define HEATER_0_PIN 6
86 #define HEATER_1_PIN 7
87 #define HEATER_2_PIN 8
88 #define HEATER_BED_PIN 9
89 #ifndef FAN_PIN
90  #define FAN_PIN 3
91 #endif
92 #define FAN2_PIN 58 // additional fan or light control output
93 
94 //
95 // Other board specific pins
96 //
97 #ifndef FIL_RUNOUT_PIN
98  #define FIL_RUNOUT_PIN 37 // board input labeled as F-DET
99 #endif
100 #define Z_MIN_PROBE_PIN 36 // additional external board input labeled as E-SENS (should be used for Z-probe)
101 #define LED_PIN 13
102 #define SPINDLE_ENABLE_PIN 4 // additional PWM pin 1 at JP1 connector - should be used for laser control too
103 #define EXT_2 5 // additional PWM pin 2 at JP1 connector
104 #define EXT_3 2 // additional PWM pin 3 at JP1 connector
105 #define PS_ON_PIN 45
106 #define KILL_PIN 46
107 
108 #ifndef FILWIDTH_PIN
109  #define FILWIDTH_PIN 11 // shared with TEMP_3 analog input
110 #endif
111 
112 //
113 // LCD / Controller
114 //
115 #define LCD_PINS_RS 19
116 #define LCD_PINS_ENABLE 42
117 #define LCD_PINS_D4 18
118 #define LCD_PINS_D5 38
119 #define LCD_PINS_D6 41
120 #define LCD_PINS_D7 40
121 
122 //
123 // Beeper, SD Card, Encoder
124 //
125 #define BEEPER_PIN 44
126 
127 #if ENABLED(SDSUPPORT)
128  #define SDSS 53
129  #define SD_DETECT_PIN 49
130 #endif
131 
132 #if ENABLED(NEWPANEL)
133  #define BTN_EN1 11
134  #define BTN_EN2 12
135  #define BTN_ENC 43
136 #endif