Prusa MINI Firmware overview
pins_BIQU_B300_V1.0.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 #ifndef BOARD_INFO_NAME
38  #define BOARD_INFO_NAME "BIQU Thunder B300 V1.0"
39 #endif
40 
41 //
42 // Limit Switches
43 //
44 #define X_MIN_PIN P1_24 // 10k pullup to 3.3V, 1K series
45 #define X_MAX_PIN P1_25 // 10k pullup to 3.3V, 1K series
46 #define Y_MIN_PIN P1_26 // 10k pullup to 3.3V, 1K series
47 #define Y_MAX_PIN P1_27 // 10k pullup to 3.3V, 1K series
48 #define Z_MIN_PIN P1_28 // 10k pullup to 3.3V, 1K series
49 #define Z_MAX_PIN P1_29 // 10k pullup to 3.3V, 1K series
50 
51 //
52 // Steppers
53 //
54 #define X_STEP_PIN P2_00
55 #define X_DIR_PIN P0_05
56 #define X_ENABLE_PIN P0_04
57 #ifndef X_CS_PIN
58  #define X_CS_PIN P1_15 // ETH
59 #endif
60 
61 #define Y_STEP_PIN P2_01
62 #define Y_DIR_PIN P0_11
63 #define Y_ENABLE_PIN P0_10
64 #ifndef Y_CS_PIN
65  #define Y_CS_PIN P1_14 // ETH
66 #endif
67 
68 #define Z_STEP_PIN P2_02
69 #define Z_DIR_PIN P0_20
70 #define Z_ENABLE_PIN P0_19
71 #ifndef Z_CS_PIN
72  #define Z_CS_PIN P1_16 // ETH
73 #endif
74 
75 #define E0_STEP_PIN P2_03
76 #define E0_DIR_PIN P0_22
77 #define E0_ENABLE_PIN P0_21
78 #ifndef E0_CS_PIN
79  #define E0_CS_PIN P1_17 // ETH
80 #endif
81 
82 //
83 // Software SPI pins for TMC2130 stepper drivers
84 //
85 #if ENABLED(TMC_USE_SW_SPI)
86  #ifndef TMC_SW_MOSI
87  #define TMC_SW_MOSI P0_18 // ETH
88  #endif
89  #ifndef TMC_SW_MISO
90  #define TMC_SW_MISO P0_17 // ETH
91  #endif
92  #ifndef TMC_SW_SCK
93  #define TMC_SW_SCK P0_15 // ETH
94  #endif
95 #endif
96 
97 //
98 // Temperature Sensors
99 // 3.3V max when defined as an analog input
100 //
101 #define TEMP_0_PIN 1 // A0 (T0)
102 #define TEMP_BED_PIN 0 // A1 (T1)
103 
104 //
105 // Heaters / Fans
106 //
107 #define HEATER_0_PIN P2_07
108 #define HEATER_BED_PIN P2_05
109 #ifndef FAN_PIN
110  #define FAN_PIN P2_04
111 #endif
112 
113 //
114 // Unused
115 //
116 //#define PIN_P2_10 P2_10 // IBOOT-1
117 //#define PIN_P0_27 P0_27 // Onboard SD Detect
118 
119 /**
120  * LCD / Controller
121  *
122  * REPRAP_DISCOUNT_SMART_CONTROLLER is not supported due to the lack of LCD_PINS_D5,
123  * LCD_PINS_D6 or LCD_PINS_D7 in the EXP1 connector.
124  *
125  * A remote SD card is not supported as the pins routed to EXP2 are the same as used
126  * for the onboard SD card, and a chip select signal is not provided for the remote
127  * SD card.
128  */
129 #if HAS_SPI_LCD
130 
131  #define BEEPER_PIN P1_31 // EXP1-1
132 
133  #define BTN_EN1 P3_26 // EXP2-3
134  #define BTN_EN2 P3_25 // EXP2-5
135  #define BTN_ENC P1_30 // EXP1-2
136 
137  #define SD_DETECT_PIN P0_27 // EXP2-7
138  #define LCD_PINS_RS P0_16 // EXP1-4
139  #define LCD_PINS_ENABLE P0_18 // (MOSI) EXP1-3
140  #define LCD_PINS_D4 P0_15 // (SCK) EXP1-5
141 
142  #if ENABLED(REPRAP_DISCOUNT_SMART_CONTROLLER) && HAS_CHARACTER_LCD
143  #error "REPRAP_DISCOUNT_SMART_CONTROLLER is not supported by the BIQU B300 v1.0"
144  #endif
145 
146  #if ENABLED(SDSUPPORT)
147  #error "SDSUPPORT is not supported by the BIQU B300 v1.0 when an LCD controller is used"
148  #endif
149 
150 #endif // HAS_SPI_LCD
151 
152 /**
153  * SD Card Reader
154  *
155  * Software SPI is used to interface with a stand-alone SD card reader connected to EXP1.
156  * Hardware SPI can't be used because P0_17 (MISO) is not brought out on this board.
157  */
158 #if ENABLED(SDSUPPORT)
159  #define SCK_PIN P0_15 // EXP1-5
160  #define MISO_PIN P0_16 // EXP1-4
161  #define MOSI_PIN P0_18 // EXP1-3
162  #define SS_PIN P1_30 // EXP1-2
163  #define SDSS SS_PIN
164 #endif
165 
166 /**
167  * PWMS
168  *
169  * There are 6 PWMS. Each PWM can be assigned to one of two pins.
170  *
171  * PWM1.1 P0_18 LCD_PINS_ENABLE
172  * PWM1.1 P2_0 X_STEP_PIN
173  * PWM1.2 P1_20 <none>
174  * PWM1.2 P2_1 Y_STEP_PIN
175  * PWM1.3 P1_21 <none>
176  * PWM1.3 P2_2 Z_STEP_PIN
177  * PWM1.4 P1_23 <none>
178  * PWM1.4 P2_3 E0_STEP_PIN
179  * PWM1.5 P1_24 X_MIN_PIN
180  * PWM1.5 P2_4 FAN_PIN
181  * PWM1.6 P1_26 Y_MIN_PIN
182  * PWM1.6 P2_5 HEATER_BED_PIN
183  */