Prusa MINI Firmware overview
pins_BIQU_BQ111_A4.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  * BIQU BQ111-A4
26  *
27  * Applies to the following boards:
28  *
29  * BOARD_BIQU_BQ111_A4 (Hotend, Fan, Bed)
30  *
31  */
32 
33 #ifndef TARGET_LPC1768
34  #error "Oops! Make sure you have the LPC1768 environment selected in your IDE."
35 #endif
36 
37 #define BOARD_INFO_NAME "BIQU BQ111-A4"
38 
39 //
40 // Limit Switches
41 //
42 #define X_MIN_PIN P1_24 // 10k pullup to 3.3V, 1K series
43 #define X_MAX_PIN P1_25 // 10k pullup to 3.3V, 1K series
44 #define Y_MIN_PIN P1_26 // 10k pullup to 3.3V, 1K series
45 #define Y_MAX_PIN P1_27 // 10k pullup to 3.3V, 1K series
46 #define Z_MIN_PIN P1_28 // 10k pullup to 3.3V, 1K series
47 #define Z_MAX_PIN P1_29 // 10k pullup to 3.3V, 1K series
48 
49 
50 //
51 // Steppers
52 //
53 #define X_STEP_PIN P2_0
54 #define X_DIR_PIN P0_5
55 #define X_ENABLE_PIN P0_4
56 
57 #define Y_STEP_PIN P2_1
58 #define Y_DIR_PIN P0_11
59 #define Y_ENABLE_PIN P0_10
60 
61 #define Z_STEP_PIN P2_2
62 #define Z_DIR_PIN P0_20
63 #define Z_ENABLE_PIN P0_19
64 
65 #define E0_STEP_PIN P2_3
66 #define E0_DIR_PIN P0_22
67 #define E0_ENABLE_PIN P0_21
68 
69 
70 //
71 // Temperature Sensors
72 // 3.3V max when defined as an analog input
73 //
74 #define TEMP_0_PIN 0 // A0 (T0)
75 #define TEMP_BED_PIN 1 // A1 (T1)
76 
77 
78 //
79 // Heaters / Fans
80 //
81 #define HEATER_0_PIN P2_7
82 #define HEATER_BED_PIN P2_5
83 #ifndef FAN_PIN
84  #define FAN_PIN P2_4
85 #endif
86 
87 //
88 // Unused
89 //
90 //#define PIN_P2_10 P2_10 // IBOOT-1
91 //#define PIN_P0_27 P0_27 // Onboard SD Detect
92 
93 /**
94  * LCD / Controller
95  *
96  * REPRAP_DISCOUNT_SMART_CONTROLLER is not supported due to the lack of LCD_PINS_D5,
97  * LCD_PINS_D6 or LCD_PINS_D7 in the EXP1 connector.
98  *
99  * A remote SD card is not supported as the pins routed to EXP2 are the same as used
100  * for the onboard SD card, and a chip select signal is not provided for the remote
101  * SD card.
102  */
103 #if HAS_SPI_LCD
104 
105  #define BEEPER_PIN P1_31 // EXP1-1
106 
107  #define BTN_EN1 P3_26 // EXP2-3
108  #define BTN_EN2 P3_25 // EXP2-5
109  #define BTN_ENC P1_30 // EXP1-2
110 
111  #define SD_DETECT_PIN P0_27 // EXP2-7
112  #define LCD_PINS_RS P0_16 // EXP1-4
113  #define LCD_PINS_ENABLE P0_18 // (MOSI) EXP1-3
114  #define LCD_PINS_D4 P0_15 // (SCK) EXP1-5
115 
116  #if ENABLED(REPRAP_DISCOUNT_SMART_CONTROLLER) && HAS_CHARACTER_LCD
117  #error "REPRAP_DISCOUNT_SMART_CONTROLLER is not supported by the BIQU BQ111-A4"
118  #endif
119 
120  #if ENABLED(SDSUPPORT)
121  #error "SDSUPPORT is not supported by the BIQU BQ111-A4 when an LCD controller is used"
122  #endif
123 
124 #endif // HAS_SPI_LCD
125 
126 
127 /**
128  * SD Card Reader
129  *
130  * Software SPI is used to interface with a stand-alone SD card reader connected to EXP1.
131  * Hardware SPI can't be used because P0_17 (MISO) is not brought out on this board.
132  */
133 #if ENABLED(SDSUPPORT)
134 
135  #define SCK_PIN P0_15 // EXP1-5
136  #define MISO_PIN P0_16 // EXP1-4
137  #define MOSI_PIN P0_18 // EXP1-3
138  #define SS_PIN P1_30 // EXP1-2
139  #define SDSS SS_PIN
140 
141 #endif // SDSUPPORT
142 
143 
144 /**
145  * PWMS
146  *
147  * There are 6 PWMS. Each PWM can be assigned to one of two pins.
148  *
149  * PWM1.1 P0_18 LCD_PINS_ENABLE
150  * PWM1.1 P2_0 X_STEP_PIN
151  * PWM1.2 P1_20 <none>
152  * PWM1.2 P2_1 Y_STEP_PIN
153  * PWM1.3 P1_21 <none>
154  * PWM1.3 P2_2 Z_STEP_PIN
155  * PWM1.4 P1_23 <none>
156  * PWM1.4 P2_3 E0_STEP_PIN
157  * PWM1.5 P1_24 X_MIN_PIN
158  * PWM1.5 P2_4 FAN_PIN
159  * PWM1.6 P1_26 Y_MIN_PIN
160  * PWM1.6 P2_5 HEATER_BED_PIN
161  */