Skip to content

Commit a971405

Browse files
ellenspLCh-77
authored andcommitted
📺 SKR_MINI_SCREEN_ADAPTER for BTT SKR Mini E3 V3 (MarlinFirmware#24521)
1 parent 5ce751f commit a971405

File tree

1 file changed

+147
-93
lines changed

1 file changed

+147
-93
lines changed

Marlin/src/pins/stm32g0/pins_BTT_SKR_MINI_E3_V3_0.h

+147-93
Original file line numberDiff line numberDiff line change
@@ -75,10 +75,6 @@
7575
#define POWER_LOSS_PIN PC12 // Power Loss Detection: PWR-DET
7676
#endif
7777

78-
#ifndef NEOPIXEL_PIN
79-
#define NEOPIXEL_PIN PA8 // LED driving pin
80-
#endif
81-
8278
#ifndef PS_ON_PIN
8379
#define PS_ON_PIN PC13 // Power Supply Control
8480
#endif
@@ -153,8 +149,16 @@
153149
* ------
154150
* EXP1
155151
*/
152+
#define EXP1_01_PIN PB5
156153
#define EXP1_02_PIN PA15
154+
#define EXP1_03_PIN PA9
155+
#define EXP1_04_PIN -1
156+
#define EXP1_05_PIN PA10
157+
#define EXP1_06_PIN PB9
158+
#define EXP1_07_PIN PB8
157159
#define EXP1_08_PIN PD6
160+
#define EXP1_09_PIN -1
161+
#define EXP1_10_PIN -1
158162

159163
#if HAS_DWIN_E3V2 || IS_DWIN_MARLINUI
160164
/**
@@ -176,93 +180,135 @@
176180

177181
#define BEEPER_PIN EXP1_02_PIN
178182
#define BTN_EN1 EXP1_08_PIN
179-
#define BTN_EN2 PB8
180-
#define BTN_ENC PB5
183+
#define BTN_EN2 EXP1_07_PIN
184+
#define BTN_ENC EXP1_01_PIN
181185

182186
#elif HAS_WIRED_LCD
183187

184-
#if ENABLED(CR10_STOCKDISPLAY)
185-
186-
#define BEEPER_PIN PB5
187-
#define BTN_ENC EXP1_02_PIN
188-
189-
#define BTN_EN1 PA9
190-
#define BTN_EN2 PA10
191-
192-
#define LCD_PINS_RS PB8
193-
#define LCD_PINS_ENABLE EXP1_08_PIN
194-
#define LCD_PINS_D4 PB9
195-
196-
#elif ENABLED(ZONESTAR_LCD) // ANET A8 LCD Controller - Must convert to 3.3V - CONNECTING TO 5V WILL DAMAGE THE BOARD!
197-
198-
#ifndef NO_CONTROLLER_CUSTOM_WIRING_WARNING
199-
#error "CAUTION! ZONESTAR_LCD requires wiring modifications. See 'pins_BTT_SKR_MINI_E3_common.h' for details. (Define NO_CONTROLLER_CUSTOM_WIRING_WARNING to suppress this warning.)"
188+
#if ENABLED(SKR_MINI_SCREEN_ADAPTER)
189+
/** https://github.com/VoronDesign/Voron-Hardware/tree/master/SKR-Mini_Screen_Adaptor/SRK%20Mini%20E3%20V3.0
190+
*
191+
* SKR Mini E3 V3.0 SKR Mini Screen Adaptor
192+
* ------ ------
193+
* 5V | 1 2 | GND MISO | 1 2 | SCK
194+
* CS | 3 4 | SCK (EN1) PA10 | 3 4 | --
195+
* MOSI | 5 6 | MISO (EN2) PA9 5 6 | MOSI
196+
* 3V3 | 7 8 | GND -- | 7 8 | --
197+
* ------ GND | 9 10| RESET (Kill)
198+
* SPI ------
199+
* EXP2
200+
*
201+
* ------ ------
202+
* PB5 | 1 2 | PA15 -- | 1 2 | PB5 (BTN_ENC)
203+
* PA9 | 3 4 | RESET (LCD CS) PB8 | 3 4 | PD6 (LCD_A0)
204+
* PA10 5 6 | PB9 (RESET) PB9 5 6 | PA15 (DIN)
205+
* PB8 | 7 8 | PD6 -- | 7 8 | --
206+
* GND | 9 10| 5V GND | 9 10| 5V
207+
* ------ ------
208+
* EXP1 EXP1
209+
*/
210+
#if ENABLED(FYSETC_MINI_12864_2_1)
211+
#define BTN_ENC EXP1_01_PIN
212+
#define BTN_EN1 EXP1_03_PIN
213+
#define BTN_EN2 EXP1_05_PIN
214+
#define BEEPER_PIN -1
215+
#define LCD_RESET_PIN EXP1_06_PIN
216+
#define DOGLCD_CS EXP1_07_PIN
217+
#define DOGLCD_A0 EXP1_08_PIN
218+
#define DOGLCD_SCK PA5
219+
#define DOGLCD_MOSI PA7
220+
221+
#define FORCE_SOFT_SPI
222+
#define LCD_BACKLIGHT_PIN -1
223+
#define NEOPIXEL_PIN EXP1_02_PIN
224+
#else
225+
#error "Only CR10_FYSETC_MINI_12864_2_1 and compatibles are currently supported on the BIGTREE_SKR_MINI_E3 with SKR_MINI_SCREEN_ADAPTER"
200226
#endif
201227

202-
#define LCD_PINS_RS PB9
203-
#define LCD_PINS_ENABLE EXP1_02_PIN
204-
#define LCD_PINS_D4 PB8
205-
#define LCD_PINS_D5 PA10
206-
#define LCD_PINS_D6 PA9
207-
#define LCD_PINS_D7 PB5
208-
#define ADC_KEYPAD_PIN PA1 // Repurpose servo pin for ADC - CONNECTING TO 5V WILL DAMAGE THE BOARD!
209-
210-
#elif EITHER(MKS_MINI_12864, ENDER2_STOCKDISPLAY)
228+
#else
211229

212-
#define BTN_ENC EXP1_02_PIN
213-
#define BTN_EN1 PA9
214-
#define BTN_EN2 PA10
230+
#if ENABLED(CR10_STOCKDISPLAY)
215231

216-
#define DOGLCD_CS PB8
217-
#define DOGLCD_A0 PB9
218-
#define DOGLCD_SCK PB5
219-
#define DOGLCD_MOSI EXP1_08_PIN
232+
#define BEEPER_PIN EXP1_01_PIN
233+
#define BTN_ENC EXP1_02_PIN
220234

221-
#define FORCE_SOFT_SPI
222-
#define LCD_BACKLIGHT_PIN -1
235+
#define BTN_EN1 EXP1_03_PIN
236+
#define BTN_EN2 EXP1_05_PIN
223237

224-
#elif IS_TFTGLCD_PANEL
238+
#define LCD_PINS_RS EXP1_07_PIN
239+
#define LCD_PINS_ENABLE EXP1_08_PIN
240+
#define LCD_PINS_D4 EXP1_06_PIN
225241

226-
#if ENABLED(TFTGLCD_PANEL_SPI)
242+
#elif ENABLED(ZONESTAR_LCD) // ANET A8 LCD Controller - Must convert to 3.3V - CONNECTING TO 5V WILL DAMAGE THE BOARD!
227243

228244
#ifndef NO_CONTROLLER_CUSTOM_WIRING_WARNING
229-
#error "CAUTION! TFTGLCD_PANEL_SPI requires wiring modifications. See 'pins_BTT_SKR_MINI_E3_common.h' for details. (Define NO_CONTROLLER_CUSTOM_WIRING_WARNING to suppress this warning.)"
245+
#error "CAUTION! ZONESTAR_LCD requires wiring modifications. See 'pins_BTT_SKR_MINI_E3_common.h' for details. (Define NO_CONTROLLER_CUSTOM_WIRING_WARNING to suppress this warning.)"
230246
#endif
231247

232-
/**
233-
* TFTGLCD_PANEL_SPI display pinout
234-
*
235-
* Board Display
236-
* ------ ------
237-
* (BEEPER) PB6 | 1 2 | PB5 (SD_DET) 5V | 1 2 | GND
238-
* RESET | 3 4 | PA9 (MOD_RESET) -- | 3 4 | (SD_DET)
239-
* PB9 5 6 | PA10 (SD_CS) (MOSI) | 5 6 | --
240-
* PB7 | 7 8 | PB8 (LCD_CS) (SD_CS) | 7 8 | (LCD_CS)
241-
* GND | 9 10 | 5V (SCK) | 9 10 | (MISO)
242-
* ------ ------
243-
* EXP1 EXP1
244-
*
245-
* Needs custom cable:
246-
*
247-
* Board Display
248-
*
249-
* EXP1-1 ----------- EXP1-10
250-
* EXP1-2 ----------- EXP1-9
251-
* SPI1-4 ----------- EXP1-6
252-
* EXP1-4 ----------- FREE
253-
* SPI1-3 ----------- EXP1-2
254-
* EXP1-6 ----------- EXP1-4
255-
* EXP1-7 ----------- FREE
256-
* EXP1-8 ----------- EXP1-3
257-
* SPI1-1 ----------- EXP1-1
258-
* EXP1-10 ----------- EXP1-7
259-
*/
248+
#define LCD_PINS_RS EXP1_06_PIN
249+
#define LCD_PINS_ENABLE EXP1_02_PIN
250+
#define LCD_PINS_D4 EXP1_07_PIN
251+
#define LCD_PINS_D5 EXP1_05_PIN
252+
#define LCD_PINS_D6 EXP1_03_PIN
253+
#define LCD_PINS_D7 EXP1_01_PIN
254+
#define ADC_KEYPAD_PIN PA1 // Repurpose servo pin for ADC - CONNECTING TO 5V WILL DAMAGE THE BOARD!
255+
256+
#elif EITHER(MKS_MINI_12864, ENDER2_STOCKDISPLAY)
257+
258+
#define BTN_ENC EXP1_02_PIN
259+
#define BTN_EN1 EXP1_03_PIN
260+
#define BTN_EN2 EXP1_05_PIN
261+
262+
#define DOGLCD_CS EXP1_07_PIN
263+
#define DOGLCD_A0 EXP1_06_PIN
264+
#define DOGLCD_SCK EXP1_01_PIN
265+
#define DOGLCD_MOSI EXP1_08_PIN
266+
267+
#define FORCE_SOFT_SPI
268+
#define LCD_BACKLIGHT_PIN -1
269+
270+
#elif IS_TFTGLCD_PANEL
271+
272+
#if ENABLED(TFTGLCD_PANEL_SPI)
273+
274+
#ifndef NO_CONTROLLER_CUSTOM_WIRING_WARNING
275+
#error "CAUTION! TFTGLCD_PANEL_SPI requires wiring modifications. See 'pins_BTT_SKR_MINI_E3_common.h' for details. (Define NO_CONTROLLER_CUSTOM_WIRING_WARNING to suppress this warning.)"
276+
#endif
277+
278+
/**
279+
* TFTGLCD_PANEL_SPI display pinout
280+
*
281+
* Board Display
282+
* ------ ------
283+
* (BEEPER) PB6 | 1 2 | PB5 (SD_DET) 5V | 1 2 | GND
284+
* RESET | 3 4 | PA9 (MOD_RESET) -- | 3 4 | (SD_DET)
285+
* PB9 5 6 | PA10 (SD_CS) (MOSI) | 5 6 | --
286+
* PB7 | 7 8 | PB8 (LCD_CS) (SD_CS) | 7 8 | (LCD_CS)
287+
* GND | 9 10 | 5V (SCK) | 9 10 | (MISO)
288+
* ------ ------
289+
* EXP1 EXP1
290+
*
291+
* Needs custom cable:
292+
*
293+
* Board Display
294+
*
295+
* EXP1-1 ----------- EXP1-10
296+
* EXP1-2 ----------- EXP1-9
297+
* SPI1-4 ----------- EXP1-6
298+
* EXP1-4 ----------- FREE
299+
* SPI1-3 ----------- EXP1-2
300+
* EXP1-6 ----------- EXP1-4
301+
* EXP1-7 ----------- FREE
302+
* EXP1-8 ----------- EXP1-3
303+
* SPI1-1 ----------- EXP1-1
304+
* EXP1-10 ----------- EXP1-7
305+
*/
306+
307+
#define TFTGLCD_CS EXP1_03_PIN
260308

261-
#define TFTGLCD_CS PA9
262-
263-
#endif
309+
#endif
264310

265-
#elif ENABLED(FYSETC_MINI_12864_2_1)
311+
#elif ENABLED(FYSETC_MINI_12864_2_1)
266312

267313
#ifndef NO_CONTROLLER_CUSTOM_WIRING_WARNING
268314
#error "CAUTION! FYSETC_MINI_12864_2_1 and clones require wiring modifications. See 'pins_BTT_SKR_MINI_E3_V3_0.h' for details. Define NO_CONTROLLER_CUSTOM_WIRING_WARNING to suppress this warning"
@@ -294,22 +340,24 @@
294340
* Check twice index position!!! (marked as # here)
295341
* On BTT boards pins from IDC10 connector are numbered in unusual order.
296342
*/
297-
#define BTN_ENC EXP1_02_PIN
298-
#define BTN_EN1 PB9
299-
#define BTN_EN2 PB5
300-
#define BEEPER_PIN -1
343+
#define BTN_ENC EXP1_02_PIN
344+
#define BTN_EN1 EXP1_06_PIN
345+
#define BTN_EN2 EXP1_01_PIN
346+
#define BEEPER_PIN -1
301347

302-
#define DOGLCD_CS PA9
303-
#define DOGLCD_A0 PA10
304-
#define DOGLCD_SCK PB8
305-
#define DOGLCD_MOSI PD6
348+
#define DOGLCD_CS EXP1_03_PIN
349+
#define DOGLCD_A0 EXP1_05_PIN
350+
#define DOGLCD_SCK EXP1_07_PIN
351+
#define DOGLCD_MOSI EXP1_08_PIN
306352

307-
#define FORCE_SOFT_SPI
308-
#define LCD_BACKLIGHT_PIN -1
353+
#define FORCE_SOFT_SPI
354+
#define LCD_BACKLIGHT_PIN -1
309355

310-
#else
311-
#error "Only CR10_STOCKDISPLAY, ZONESTAR_LCD, ENDER2_STOCKDISPLAY, MKS_MINI_12864, FYSETC_MINI_12864_2_1, and TFTGLCD_PANEL_(SPI|I2C) are currently supported on the BIGTREE_SKR_MINI_E3."
312-
#endif
356+
#else
357+
#error "Only CR10_STOCKDISPLAY, ZONESTAR_LCD, ENDER2_STOCKDISPLAY, MKS_MINI_12864, FYSETC_MINI_12864_2_1, and TFTGLCD_PANEL_(SPI|I2C) are currently supported on the BIGTREE_SKR_MINI_E3."
358+
#endif
359+
360+
#endif // SKR_MINI_SCREEN_ADAPTER
313361

314362
#endif // HAS_WIRED_LCD
315363

@@ -352,9 +400,8 @@
352400

353401
#define BEEPER_PIN EXP1_02_PIN
354402

355-
#define CLCD_MOD_RESET PA9
356-
#define CLCD_SPI_CS PB8
357-
403+
#define CLCD_MOD_RESET EXP1_03_PIN
404+
#define CLCD_SPI_CS EXP1_07_PIN
358405
#endif // TOUCH_UI_FTDI_EVE && LCD_FYSETC_TFT81050
359406

360407
//
@@ -368,8 +415,8 @@
368415
#if SD_CONNECTION_IS(ONBOARD)
369416
#define SD_DETECT_PIN PC3
370417
#elif SD_CONNECTION_IS(LCD) && (BOTH(TOUCH_UI_FTDI_EVE, LCD_FYSETC_TFT81050) || IS_TFTGLCD_PANEL)
371-
#define SD_DETECT_PIN PB5
372-
#define SD_SS_PIN PA10
418+
#define SD_DETECT_PIN EXP1_01_PIN
419+
#define SD_SS_PIN EXP1_05_PIN
373420
#elif SD_CONNECTION_IS(CUSTOM_CABLE)
374421
#error "SD CUSTOM_CABLE is not compatible with SKR Mini E3."
375422
#endif
@@ -383,3 +430,10 @@
383430
#define SD_SCK_PIN PA5
384431
#define SD_MISO_PIN PA6
385432
#define SD_MOSI_PIN PA7
433+
434+
//
435+
// Default NEOPIXEL_PIN
436+
//
437+
#ifndef NEOPIXEL_PIN
438+
#define NEOPIXEL_PIN PA8 // LED driving pin
439+
#endif

0 commit comments

Comments
 (0)