Skip to content

Commit

Permalink
✨ MKS MINI12864 V3 for MKS Robin Nano V2/3 (MarlinFirmware#22285)
Browse files Browse the repository at this point in the history
  • Loading branch information
mks-viva authored and ptoal committed Dec 16, 2021
1 parent 2a034b8 commit 7cc1534
Show file tree
Hide file tree
Showing 7 changed files with 73 additions and 8 deletions.
5 changes: 5 additions & 0 deletions Marlin/Configuration.h
Original file line number Diff line number Diff line change
Expand Up @@ -2413,6 +2413,11 @@
//
//#define MKS_MINI_12864

//
// MKS MINI12864 V3 is an alias for FYSETC_MINI_12864_2_1. Type A/B. NeoPixel RGB Backlight.
//
//#define MKS_MINI_12864_V3

//
// MKS LCD12864A/B with graphic controller and SD support. Follows MKS_MINI_12864 pinout.
// https://www.aliexpress.com/item/33018110072.html
Expand Down
2 changes: 1 addition & 1 deletion Marlin/src/HAL/STM32F1/inc/SanityCheck.h
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@
#error "SERIAL_STATS_DROPPED_RX is not supported on the STM32F1 platform."
#endif

#if ENABLED(NEOPIXEL_LED)
#if ENABLED(NEOPIXEL_LED) && DISABLED(MKS_MINI_12864_V3)
#error "NEOPIXEL_LED (Adafruit NeoPixel) is not supported for HAL/STM32F1. Comment out this line to proceed at your own risk!"
#endif

Expand Down
5 changes: 5 additions & 0 deletions Marlin/src/inc/Conditionals_LCD.h
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,11 @@
#define MKS_MINI_12864
#endif

// MKS_MINI_12864_V3 is simply identical to FYSETC_MINI_12864_2_1
#if ENABLED(MKS_MINI_12864_V3)
#define FYSETC_MINI_12864_2_1
#endif

/**
* General Flags that may be set below by specific LCDs
*
Expand Down
4 changes: 4 additions & 0 deletions Marlin/src/inc/Conditionals_post.h
Original file line number Diff line number Diff line change
Expand Up @@ -369,6 +369,10 @@
#elif EITHER(MKS_MINI_12864, ENDER2_STOCKDISPLAY)
#define _LCD_CONTRAST_MIN 120
#define _LCD_CONTRAST_INIT 195
#elif ENABLED(MKS_MINI_12864_V3)
#define _LCD_CONTRAST_MIN 255
#define _LCD_CONTRAST_INIT 255
#define _LCD_CONTRAST_MAX 255
#elif ENABLED(FYSETC_MINI_12864)
#define _LCD_CONTRAST_INIT 220
#elif ENABLED(ULTI_CONTROLLER)
Expand Down
11 changes: 11 additions & 0 deletions Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3_common.h
Original file line number Diff line number Diff line change
Expand Up @@ -155,6 +155,17 @@
#define DOGLCD_SCK PB13
#define DOGLCD_MOSI PB15

#elif ENABLED(MKS_MINI_12864_V3)
#define ENABLE_SPI3
#define DOGLCD_CS PA4
#define DOGLCD_A0 PA5
#define LCD_PINS_DC DOGLCD_A0
#define LCD_BACKLIGHT_PIN -1
#define LCD_RESET_PIN PA6
#define NEOPIXEL_PIN PA7
#define DOGLCD_MOSI PB15
#define DOGLCD_SCK PB13

#else

#define LCD_PINS_D4 PA6
Expand Down
39 changes: 33 additions & 6 deletions Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_V2.h
Original file line number Diff line number Diff line change
Expand Up @@ -231,10 +231,19 @@
#define SDCARD_CONNECTION ONBOARD
#endif

#define SDIO_SUPPORT
#define SDIO_CLOCK 4500000 // 4.5 MHz
#define SD_DETECT_PIN PD12
#define ONBOARD_SD_CS_PIN PC11
#if SD_CONNECTION_IS(ONBOARD)
#define SDIO_SUPPORT
#define SDIO_CLOCK 4500000 // 4.5 MHz
#define SD_DETECT_PIN PD12
#define ONBOARD_SD_CS_PIN PC11
#elif SD_CONNECTION_IS(LCD)
#define ENABLE_SPI1
#define SDSS PE10
#define SD_SCK_PIN PA5
#define SD_MISO_PIN PA6
#define SD_MOSI_PIN PA7
#define SD_DETECT_PIN PE12
#endif

//
// LCD / Controller
Expand Down Expand Up @@ -291,8 +300,13 @@
#endif

#if HAS_WIRED_LCD && !HAS_SPI_TFT

// NON TFT Displays
#define BEEPER_PIN PC5
#define BTN_ENC PE13
#define LCD_PINS_ENABLE PD13
#define LCD_PINS_RS PC6
#define BTN_EN1 PE8
#define BTN_EN2 PE11
#define LCD_BACKLIGHT_PIN -1

#if ENABLED(MKS_MINI_12864)

Expand All @@ -318,6 +332,19 @@
#ifndef BEEPER_PIN
#define BEEPER_PIN -1
#endif

#elif ENABLED(MKS_MINI_12864_V3)
#define DOGLCD_CS PD13
#define DOGLCD_A0 PC6
#define LCD_PINS_DC DOGLCD_A0
#define LCD_BACKLIGHT_PIN -1
#define LCD_RESET_PIN PE14
#define NEOPIXEL_PIN PE15
#define DOGLCD_MOSI PA7
#define DOGLCD_SCK PA5
#if SD_CONNECTION_IS(ONBOARD)
#define FORCE_SOFT_SPI
#endif

#else // !MKS_MINI_12864

Expand Down
15 changes: 14 additions & 1 deletion Marlin/src/pins/stm32f4/pins_MKS_ROBIN_NANO_V3.h
Original file line number Diff line number Diff line change
Expand Up @@ -243,7 +243,7 @@
//
// LCD / Controller
#define SPI_FLASH
#define HAS_SPI_FLASH 1
#define HAS_SPI_FLASH 1
#define SPI_DEVICE 2
#define SPI_FLASH_SIZE 0x1000000
#if ENABLED(SPI_FLASH)
Expand Down Expand Up @@ -340,6 +340,19 @@
// Required for MKS_MINI_12864 with this board
//#define MKS_LCD12864B
//#undef SHOW_BOOTSCREEN

#elif ENABLED(MKS_MINI_12864_V3)
#define DOGLCD_CS PD13
#define DOGLCD_A0 PC6
#define LCD_PINS_DC DOGLCD_A0
#define LCD_BACKLIGHT_PIN -1
#define LCD_RESET_PIN PE14
#define NEOPIXEL_PIN PE15
#define DOGLCD_MOSI PA7
#define DOGLCD_SCK PA5
#if SD_CONNECTION_IS(ONBOARD)
#define FORCE_SOFT_SPI
#endif

#else // !MKS_MINI_12864

Expand Down

0 comments on commit 7cc1534

Please sign in to comment.