@ -46,7 +46,7 @@
*
*
* DOGLCD : Run a Graphical LCD through U8GLib ( with MarlinUI )
* DOGLCD : Run a Graphical LCD through U8GLib ( with MarlinUI )
* IS_ULTIPANEL : Define LCD_PINS_D5 / 6 / 7 for direct - connected " Ultipanel " LCDs
* IS_ULTIPANEL : Define LCD_PINS_D5 / 6 / 7 for direct - connected " Ultipanel " LCDs
* IS_ULTRA_LCD : Ultra LCD , not necessarily Ultipanel . Used most often with NEWPANEL .
* IS_ULTRA_LCD : Ultra LCD , not necessarily Ultipanel .
* IS_RRD_SC : Common RRD Smart Controller digital interface pins
* IS_RRD_SC : Common RRD Smart Controller digital interface pins
* IS_RRD_FG_SC : Common RRD Full Graphical Smart Controller digital interface pins
* IS_RRD_FG_SC : Common RRD Full Graphical Smart Controller digital interface pins
* U8GLIB_ST7920 : Most common DOGM display SPI interface , supporting a " lightweight " display mode .
* U8GLIB_ST7920 : Most common DOGM display SPI interface , supporting a " lightweight " display mode .
@ -63,22 +63,21 @@
# elif ENABLED(CARTESIO_UI)
# elif ENABLED(CARTESIO_UI)
# define DOGLCD
# define DOGLCD
# define IS_ULTIPANEL
# define IS_ULTIPANEL 1
# elif EITHER(DWIN_MARLINUI_PORTRAIT, DWIN_MARLINUI_LANDSCAPE)
# elif EITHER(DWIN_MARLINUI_PORTRAIT, DWIN_MARLINUI_LANDSCAPE)
# define IS_DWIN_MARLINUI 1
# define IS_DWIN_MARLINUI 1
# define IS_ULTIPANEL
# define IS_ULTIPANEL 1
# elif ENABLED(ZONESTAR_LCD)
# elif ENABLED(ZONESTAR_LCD)
# define ADC_KEYPAD
# define HAS_ADC_BUTTONS 1
# define IS_RRW_KEYPAD
# define REPRAPWORLD_KEYPAD_MOVE_STEP 10.0
# define REPRAPWORLD_KEYPAD_MOVE_STEP 10.0
# define ADC_KEY_NUM 8
# define ADC_KEY_NUM 8
# define IS_ULTIPANEL
# define IS_ULTIPANEL 1
// This helps to implement ADC_KEYPAD menus
// This helps to implement HAS_ADC_BUTTONS menus
# define REVERSE_MENU_DIRECTION
# define REVERSE_MENU_DIRECTION
# define ENCODER_PULSES_PER_STEP 1
# define ENCODER_PULSES_PER_STEP 1
# define ENCODER_STEPS_PER_MENU_ITEM 1
# define ENCODER_STEPS_PER_MENU_ITEM 1
@ -86,29 +85,25 @@
# elif ENABLED(ZONESTAR_12864LCD)
# elif ENABLED(ZONESTAR_12864LCD)
# define DOGLCD
# define DOGLCD
# define IS_RRD_SC
# define IS_RRD_SC 1
# define U8GLIB_ST7920
# define U8GLIB_ST7920
# elif ENABLED(ZONESTAR_12864OLED)
# elif ENABLED(ZONESTAR_12864OLED)
# define IS_RRD_SC
# define IS_RRD_SC 1
# define U8GLIB_SH1106
# define U8GLIB_SH1106
# elif ENABLED(ZONESTAR_12864OLED_SSD1306)
# elif ENABLED(ZONESTAR_12864OLED_SSD1306)
# define IS_RRD_SC
# define IS_RRD_SC 1
# define IS_U8GLIB_SSD1306
# define IS_U8GLIB_SSD1306
# elif ENABLED(RADDS_DISPLAY)
# elif ENABLED(RADDS_DISPLAY)
# define IS_ULTIPANEL
# define IS_ULTIPANEL 1
# define ENCODER_PULSES_PER_STEP 2
# define ENCODER_PULSES_PER_STEP 2
# elif EITHER(ANET_FULL_GRAPHICS_LCD, BQ_LCD_SMART_CONTROLLER)
# define IS_RRD_FG_SC
# elif ANY(miniVIKI, VIKI2, ELB_FULL_GRAPHIC_CONTROLLER, AZSMZ_12864)
# elif ANY(miniVIKI, VIKI2, ELB_FULL_GRAPHIC_CONTROLLER, AZSMZ_12864)
# define DOGLCD
# define DOGLCD
# define IS_ULTIPANEL
# define IS_ULTIPANEL 1
# if ENABLED(miniVIKI)
# if ENABLED(miniVIKI)
# define U8GLIB_ST7565_64128N
# define U8GLIB_ST7565_64128N
@ -123,40 +118,33 @@
# elif ENABLED(OLED_PANEL_TINYBOY2)
# elif ENABLED(OLED_PANEL_TINYBOY2)
# define IS_U8GLIB_SSD1306
# define IS_U8GLIB_SSD1306
# define IS_ULTIPANEL
# define IS_ULTIPANEL 1
# elif ENABLED(RA_CONTROL_PANEL)
# elif ENABLED(RA_CONTROL_PANEL)
# define LCD_I2C_TYPE_PCA8574
# define LCD_I2C_TYPE_PCA8574
# define LCD_I2C_ADDRESS 0x27 // I2C Address of the port expander
# define LCD_I2C_ADDRESS 0x27 // I2C Address of the port expander
# define IS_ULTIPANEL
# define IS_ULTIPANEL 1
# elif ENABLED(REPRAPWORLD_GRAPHICAL_LCD)
# elif ENABLED(REPRAPWORLD_GRAPHICAL_LCD)
# define DOGLCD
# define DOGLCD
# define U8GLIB_ST7920
# define U8GLIB_ST7920
# define IS_ULTIPANEL
# define IS_ULTIPANEL 1
# elif ENABLED(CR10_STOCKDISPLAY)
# define IS_RRD_FG_SC
# define BOARD_ST7920_DELAY_1 DELAY_NS(125)
# define BOARD_ST7920_DELAY_2 DELAY_NS(125)
# define BOARD_ST7920_DELAY_3 DELAY_NS(125)
# elif ENABLED(MKS_12864OLED)
# elif ENABLED(MKS_12864OLED)
# define IS_RRD_SC
# define IS_RRD_SC 1
# define U8GLIB_SH1106
# define U8GLIB_SH1106
# elif ENABLED(MKS_12864OLED_SSD1306)
# elif ENABLED(MKS_12864OLED_SSD1306)
# define IS_RRD_SC
# define IS_RRD_SC 1
# define IS_U8GLIB_SSD1306
# define IS_U8GLIB_SSD1306
# elif ENABLED(FYSETC_242_OLED_12864)
# elif ENABLED(FYSETC_242_OLED_12864)
# define IS_RRD_SC
# define IS_RRD_SC 1
# define U8GLIB_SH1106
# define U8GLIB_SH1106
# define LED_CONTROL_MENU
# define LED_CONTROL_MENU
@ -179,7 +167,7 @@
# define FYSETC_MINI_12864
# define FYSETC_MINI_12864
# define DOGLCD
# define DOGLCD
# define IS_ULTIPANEL
# define IS_ULTIPANEL 1
# define LED_COLORS_REDUCE_GREEN
# define LED_COLORS_REDUCE_GREEN
# if ENABLED(PSU_CONTROL) && EITHER(FYSETC_MINI_12864_2_0, FYSETC_MINI_12864_2_1)
# if ENABLED(PSU_CONTROL) && EITHER(FYSETC_MINI_12864_2_0, FYSETC_MINI_12864_2_1)
# define LED_BACKLIGHT_TIMEOUT 10000
# define LED_BACKLIGHT_TIMEOUT 10000
@ -205,7 +193,7 @@
# elif ENABLED(ULTI_CONTROLLER)
# elif ENABLED(ULTI_CONTROLLER)
# define IS_ULTIPANEL
# define IS_ULTIPANEL 1
# define U8GLIB_SSD1309
# define U8GLIB_SSD1309
# define LCD_RESET_PIN LCD_PINS_D6 // This controller need a reset pin
# define LCD_RESET_PIN LCD_PINS_D6 // This controller need a reset pin
# define ENCODER_PULSES_PER_STEP 2
# define ENCODER_PULSES_PER_STEP 2
@ -213,14 +201,14 @@
# elif ENABLED(MAKEBOARD_MINI_2_LINE_DISPLAY_1602)
# elif ENABLED(MAKEBOARD_MINI_2_LINE_DISPLAY_1602)
# define IS_RRD_SC
# define IS_RRD_SC 1
# define LCD_WIDTH 16
# define LCD_WIDTH 16
# define LCD_HEIGHT 2
# define LCD_HEIGHT 2
# elif EITHER(TFTGLCD_PANEL_SPI, TFTGLCD_PANEL_I2C)
# elif EITHER(TFTGLCD_PANEL_SPI, TFTGLCD_PANEL_I2C)
# define IS_TFTGLCD_PANEL 1
# define IS_TFTGLCD_PANEL 1
# define IS_ULTIPANEL // Note that IS_ULTIPANEL leads to HAS_WIRED_LCD
# define IS_ULTIPANEL 1 // Note that IS_ULTIPANEL leads to HAS_WIRED_LCD
# if ENABLED(SDSUPPORT) && DISABLED(LCD_PROGRESS_BAR)
# if ENABLED(SDSUPPORT) && DISABLED(LCD_PROGRESS_BAR)
# define LCD_PROGRESS_BAR
# define LCD_PROGRESS_BAR
@ -239,14 +227,35 @@
# define CONVERT_TO_EXT_ASCII // Use extended 128-255 symbols from ASCII table.
# define CONVERT_TO_EXT_ASCII // Use extended 128-255 symbols from ASCII table.
// At this time present conversion only for cyrillic - bg, ru and uk languages.
// At this time present conversion only for cyrillic - bg, ru and uk languages.
// First 7 ASCII symbols in panel font must be replaced with Marlin's special symbols.
// First 7 ASCII symbols in panel font must be replaced with Marlin's special symbols.
# elif ENABLED(CR10_STOCKDISPLAY)
# define IS_RRD_FG_SC 1
# define BOARD_ST7920_DELAY_1 DELAY_NS(125)
# define BOARD_ST7920_DELAY_2 DELAY_NS(125)
# define BOARD_ST7920_DELAY_3 DELAY_NS(125)
# elif ANY(REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER, ANET_FULL_GRAPHICS_LCD, BQ_LCD_SMART_CONTROLLER)
# define IS_RRD_FG_SC 1
# elif ENABLED(REPRAP_DISCOUNT_SMART_CONTROLLER)
// RepRapDiscount LCD or Graphical LCD with rotary click encoder
# define IS_RRD_SC 1
# endif
# endif
# if ENABLED(IS_RRD_FG_SC)
// ST7920-based graphical displays
# define REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER
# if ANY(IS_RRD_FG_SC, LCD_FOR_MELZI, SILVER_GATE_GLCD_CONTROLLER)
# define DOGLCD
# define U8GLIB_ST7920
# define IS_RRD_SC 1
# endif
# endif
// ST7565 / 64128N graphical displays
# if EITHER(MAKRPANEL, MINIPANEL)
# if EITHER(MAKRPANEL, MINIPANEL)
# define IS_ULTIPANEL
# define IS_ULTIPANEL 1
# define DOGLCD
# define DOGLCD
# if ENABLED(MAKRPANEL)
# if ENABLED(MAKRPANEL)
# define U8GLIB_ST7565_64128N
# define U8GLIB_ST7565_64128N
@ -258,7 +267,7 @@
# endif
# endif
# if ENABLED(OVERLORD_OLED)
# if ENABLED(OVERLORD_OLED)
# define IS_ULTIPANEL
# define IS_ULTIPANEL 1
# define U8GLIB_SH1106
# define U8GLIB_SH1106
/**
/**
* PCA9632 for buzzer and LEDs via i2c
* PCA9632 for buzzer and LEDs via i2c
@ -278,64 +287,44 @@
// 128x64 I2C OLED LCDs - SSD1306/SSD1309/SH1106
// 128x64 I2C OLED LCDs - SSD1306/SSD1309/SH1106
# if ANY(U8GLIB_SSD1306, U8GLIB_SSD1309, U8GLIB_SH1106)
# if ANY(U8GLIB_SSD1306, U8GLIB_SSD1309, U8GLIB_SH1106)
# define HAS_U8GLIB_I2C_OLED 1
# define HAS_U8GLIB_I2C_OLED 1
# endif
# define IS_ULTRA_LCD 1
# if HAS_U8GLIB_I2C_OLED
# define IS_ULTRA_LCD
# define DOGLCD
# define DOGLCD
# endif
# endif
// ST7920-based graphical displays
# if ANY(REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER, LCD_FOR_MELZI, SILVER_GATE_GLCD_CONTROLLER)
# define DOGLCD
# define U8GLIB_ST7920
# define IS_RRD_SC
# endif
// RepRapDiscount LCD or Graphical LCD with rotary click encoder
# if ENABLED(IS_RRD_SC)
# define REPRAP_DISCOUNT_SMART_CONTROLLER
# endif
/**
/**
* SPI Ultipanels
* SPI Ultipanels
*/
*/
// Basic Ultipanel-like displays
// Basic Ultipanel-like displays
# if ANY(ULTIMAKERCONTROLLER, REP RAP_ DISCOUNT _SMART_ CONTROLLER , G3D_PANEL, RIGIDBOT_PANEL, PANEL_ONE, U8GLIB_SH1106)
# if ANY(ULTIMAKERCONTROLLER, IS_RRD_SC, G3D_PANEL, RIGIDBOT_PANEL, PANEL_ONE, U8GLIB_SH1106)
# define IS_ULTIPANEL
# define IS_ULTIPANEL 1
# endif
# endif
// Einstart OLED has Cardinal nav via pins defined in pins_EINSTART-S.h
// Einstart OLED has Cardinal nav via pins defined in pins_EINSTART-S.h
# if ENABLED(U8GLIB_SH1106_EINSTART)
# if ENABLED(U8GLIB_SH1106_EINSTART)
# define DOGLCD
# define DOGLCD
# define IS_ULTIPANEL
# define IS_ULTIPANEL 1
# endif
# endif
// Compatibility
// TFT Compatibility
# if ENABLED(FSMC_GRAPHICAL_TFT)
# if ANY(FSMC_GRAPHICAL_TFT, SPI_GRAPHICAL_TFT, TFT_320x240, TFT_480x320, TFT_320x240_SPI, TFT_480x320_SPI, TFT_LVGL_UI_FSMC, TFT_LVGL_UI_SPI)
# define TFT_CLASSIC_UI
# define IS_LEGACY_TFT 1
# define TFT_INTERFACE_FSMC
# define TFT_GENERIC
# elif ENABLED(SPI_GRAPHICAL_TFT)
# define TFT_CLASSIC_UI
# define TFT_INTERFACE_SPI
# define TFT_GENERIC
# define TFT_GENERIC
# elif EITHER(TFT_320x240, TFT_480x320)
# warning "Don't forget to update your TFT settings in Configuration.h."
# define TFT_COLOR_UI
# endif
# if ANY(FSMC_GRAPHICAL_TFT, TFT_320x240, TFT_480x320, TFT_LVGL_UI_FSMC)
# define TFT_INTERFACE_FSMC
# define TFT_INTERFACE_FSMC
# define TFT_GENERIC
# elif ANY(SPI_GRAPHICAL_TFT, TFT_320x240_SPI, TFT_480x320_SPI, TFT_LVGL_UI_SPI)
# elif EITHER(TFT_320x240_SPI, TFT_480x320_SPI)
# define TFT_COLOR_UI
# define TFT_INTERFACE_SPI
# define TFT_INTERFACE_SPI
# define TFT_GENERIC
# endif
# elif ENABLED(TFT_LVGL_UI_FSMC)
# define TFT_LVGL_UI
# if EITHER(FSMC_GRAPHICAL_TFT, SPI_GRAPHICAL_TFT)
# define TFT_INTERFACE_FSMC
# define TFT_CLASSIC_UI
# define TFT_GENERIC
# elif ANY(TFT_320x240, TFT_480x320, TFT_320x240_SPI, TFT_480x320_SPI)
# elif ENABLED(TFT_LVGL_UI_SPI)
# define TFT_COLOR_UI
# elif EITHER(TFT_LVGL_UI_FSMC, TFT_LVGL_UI_SPI)
# define TFT_LVGL_UI
# define TFT_LVGL_UI
# define TFT_INTERFACE_SPI
# define TFT_GENERIC
# endif
# endif
// FSMC/SPI TFT Panels (LVGL)
// FSMC/SPI TFT Panels (LVGL)
@ -350,7 +339,7 @@
# if TFT_SCALED_DOGLCD
# if TFT_SCALED_DOGLCD
# define DOGLCD
# define DOGLCD
# define IS_ULTIPANEL
# define IS_ULTIPANEL 1
# define DELAYED_BACKLIGHT_INIT
# define DELAYED_BACKLIGHT_INIT
# elif ENABLED(TFT_LVGL_UI)
# elif ENABLED(TFT_LVGL_UI)
# define DELAYED_BACKLIGHT_INIT
# define DELAYED_BACKLIGHT_INIT
@ -359,7 +348,7 @@
// Color UI
// Color UI
# if ENABLED(TFT_COLOR_UI)
# if ENABLED(TFT_COLOR_UI)
# define HAS_GRAPHICAL_TFT 1
# define HAS_GRAPHICAL_TFT 1
# define IS_ULTIPANEL
# define IS_ULTIPANEL 1
# endif
# endif
/**
/**
@ -383,7 +372,7 @@
# define LCD_I2C_TYPE_MCP23017
# define LCD_I2C_TYPE_MCP23017
# define LCD_I2C_ADDRESS 0x20 // I2C Address of the port expander
# define LCD_I2C_ADDRESS 0x20 // I2C Address of the port expander
# define LCD_USE_I2C_BUZZER // Enable buzzer on LCD (optional)
# define LCD_USE_I2C_BUZZER // Enable buzzer on LCD (optional)
# define IS_ULTIPANEL
# define IS_ULTIPANEL 1
# elif ENABLED(LCD_I2C_VIKI)
# elif ENABLED(LCD_I2C_VIKI)
@ -398,7 +387,7 @@
# define LCD_I2C_TYPE_MCP23017
# define LCD_I2C_TYPE_MCP23017
# define LCD_I2C_ADDRESS 0x20 // I2C Address of the port expander
# define LCD_I2C_ADDRESS 0x20 // I2C Address of the port expander
# define LCD_USE_I2C_BUZZER // Enable buzzer on LCD (requires LiquidTWI2 v1.2.3 or later)
# define LCD_USE_I2C_BUZZER // Enable buzzer on LCD (requires LiquidTWI2 v1.2.3 or later)
# define IS_ULTIPANEL
# define IS_ULTIPANEL 1
# define ENCODER_FEEDRATE_DEADZONE 4
# define ENCODER_FEEDRATE_DEADZONE 4
@ -410,7 +399,7 @@
# define STD_ENCODER_PULSES_PER_STEP 2
# define STD_ENCODER_PULSES_PER_STEP 2
# define STD_ENCODER_STEPS_PER_MENU_ITEM 1
# define STD_ENCODER_STEPS_PER_MENU_ITEM 1
# elif ANY(REP RAP_ DISCOUNT _SMART_ CONTROLLER , miniVIKI, VIKI2, ELB_FULL_GRAPHIC_CONTROLLER, AZSMZ_12864, OLED_PANEL_TINYBOY2, BQ_LCD_SMART_CONTROLLER, LCD_I2C_PANELOLU2)
# elif ANY(IS_ RRD_SC, miniVIKI, VIKI2, ELB_FULL_GRAPHIC_CONTROLLER, AZSMZ_12864, OLED_PANEL_TINYBOY2, BQ_LCD_SMART_CONTROLLER, LCD_I2C_PANELOLU2)
# define STD_ENCODER_PULSES_PER_STEP 4
# define STD_ENCODER_PULSES_PER_STEP 4
# define STD_ENCODER_STEPS_PER_MENU_ITEM 1
# define STD_ENCODER_STEPS_PER_MENU_ITEM 1
@ -443,30 +432,24 @@
// https://bitbucket.org/fmalpartida/new-liquidcrystal/wiki/schematics#!shiftregister-connection
// https://bitbucket.org/fmalpartida/new-liquidcrystal/wiki/schematics#!shiftregister-connection
# if ENABLED(FF_INTERFACEBOARD)
# if ENABLED(FF_INTERFACEBOARD)
# define SR_LCD_3W_NL // Non latching 3 wire shift register
# define SR_LCD_3W_NL // Non latching 3 wire shift register
# define IS_ULTIPANEL
# define IS_ULTIPANEL 1
# elif ENABLED(SAV_3DLCD)
# elif ENABLED(SAV_3DLCD)
# define SR_LCD_2W_NL // Non latching 2 wire shift register
# define SR_LCD_2W_NL // Non latching 2 wire shift register
# define IS_ULTIPANEL
# define IS_ULTIPANEL 1
# elif ENABLED(ULTIPANEL)
# define IS_ULTIPANEL 1
# endif
# endif
# if ENABLED(IS_ULTIPANEL)
# if EITHER(IS_ULTIPANEL, ULTRA_LCD)
# define ULTIPANEL
# define IS_ULTRA_LCD 1
# endif
# if ENABLED(ULTIPANEL)
# define IS_ULTRA_LCD
# define NEWPANEL
# endif
# if ENABLED(IS_ULTRA_LCD)
# define ULTRA_LCD
# endif
# endif
# if ENABLED(IS_RRW _KEYPAD)
# if EITHER(IS_ULTIPANEL, REPRAPWORLD_KEYPAD)
# define REPRAPWORLD_KEYPAD
# define IS_NEWPANEL 1
# endif
# endif
// Keypad needs a move step
# if EITHER(ZONESTAR_LCD, REPRAPWORLD_KEYPAD)
# if ENABLED(REPRAPWORLD_KEYPAD)
# define IS_RRW_KEYPAD 1
# define NEWPANEL
# ifndef REPRAPWORLD_KEYPAD_MOVE_STEP
# ifndef REPRAPWORLD_KEYPAD_MOVE_STEP
# define REPRAPWORLD_KEYPAD_MOVE_STEP 1.0
# define REPRAPWORLD_KEYPAD_MOVE_STEP 1.0
# endif
# endif
@ -479,16 +462,16 @@
// Extensible UI serial touch screens. (See src/lcd/extui)
// Extensible UI serial touch screens. (See src/lcd/extui)
# if ANY(HAS_DGUS_LCD, MALYAN_LCD, TOUCH_UI_FTDI_EVE, ANYCUBIC_LCD_I3MEGA, ANYCUBIC_LCD_CHIRON)
# if ANY(HAS_DGUS_LCD, MALYAN_LCD, TOUCH_UI_FTDI_EVE, ANYCUBIC_LCD_I3MEGA, ANYCUBIC_LCD_CHIRON)
# define IS_EXTUI
# define IS_EXTUI 1
# define EXTENSIBLE_UI
# define EXTENSIBLE_UI
# endif
# endif
// Aliases for LCD features
// Aliases for LCD features
# if EITHER(ULTRA_LCD, EXTENSIBLE_UI)
# if EITHER(IS_ ULTRA_LCD, EXTENSIBLE_UI)
# define HAS_DISPLAY 1
# define HAS_DISPLAY 1
# endif
# endif
# if ENABLED(ULTRA_LCD)
# if IS_ULTRA_LCD
# define HAS_WIRED_LCD 1
# define HAS_WIRED_LCD 1
# if ENABLED(DOGLCD)
# if ENABLED(DOGLCD)
# define HAS_MARLINUI_U8GLIB 1
# define HAS_MARLINUI_U8GLIB 1
@ -499,12 +482,9 @@
# endif
# endif
# endif
# endif
# if ENABLED(ULTIPANEL) && DISABLED(NO_LCD_MENUS)
# if IS_ULTIPANEL && DISABLED(NO_LCD_MENUS)
# define HAS_LCD_MENU 1
# define HAS_LCD_MENU 1
# endif
# endif
# if ENABLED(ADC_KEYPAD)
# define HAS_ADC_BUTTONS 1
# endif
# if HAS_MARLINUI_U8GLIB
# if HAS_MARLINUI_U8GLIB
# ifndef LCD_PIXEL_WIDTH
# ifndef LCD_PIXEL_WIDTH
@ -837,83 +817,85 @@
# if ENABLED(MKS_TS35_V2_0)
# if ENABLED(MKS_TS35_V2_0)
// Most common: ST7796
// Most common: ST7796
# define TFT_DEFAULT_ORIENTATION (TFT_EXCHANGE_XY)
# define TFT_DEFAULT_ORIENTATION (TFT_EXCHANGE_XY)
# define TFT_WIDTH 480
# define TFT_RES_480x320
# define TFT_HEIGHT 320
# define TFT_INTERFACE_SPI
# define TFT_INTERFACE_SPI
# define GRAPHICAL_TFT_UPSCALE 3
# elif ENABLED(MKS_ROBIN_TFT24)
# elif ENABLED(MKS_ROBIN_TFT24)
// Most common: ST7789
// Most common: ST7789
# define TFT_DEFAULT_ORIENTATION (TFT_EXCHANGE_XY | TFT_INVERT_Y)
# define TFT_DEFAULT_ORIENTATION (TFT_EXCHANGE_XY | TFT_INVERT_Y)
# define TFT_WIDTH 320
# define TFT_RES_320x240
# define TFT_HEIGHT 240
# define TFT_INTERFACE_FSMC
# define TFT_INTERFACE_FSMC
# define GRAPHICAL_TFT_UPSCALE 2
# elif ENABLED(MKS_ROBIN_TFT28)
# elif ENABLED(MKS_ROBIN_TFT28)
// Most common: ST7789
// Most common: ST7789
# define TFT_DEFAULT_ORIENTATION (TFT_EXCHANGE_XY | TFT_INVERT_Y)
# define TFT_DEFAULT_ORIENTATION (TFT_EXCHANGE_XY | TFT_INVERT_Y)
# define TFT_WIDTH 320
# define TFT_RES_320x240
# define TFT_HEIGHT 240
# define TFT_INTERFACE_FSMC
# define TFT_INTERFACE_FSMC
# define GRAPHICAL_TFT_UPSCALE 2
# elif ENABLED(MKS_ROBIN_TFT32)
# elif ENABLED(MKS_ROBIN_TFT32)
// Most common: ST7789
// Most common: ST7789
# define TFT_DEFAULT_ORIENTATION (TFT_EXCHANGE_XY | TFT_INVERT_Y)
# define TFT_DEFAULT_ORIENTATION (TFT_EXCHANGE_XY | TFT_INVERT_Y)
# define TFT_WIDTH 320
# define TFT_RES_320x240
# define TFT_HEIGHT 240
# define TFT_INTERFACE_FSMC
# define TFT_INTERFACE_FSMC
# define GRAPHICAL_TFT_UPSCALE 2
# elif ENABLED(MKS_ROBIN_TFT35)
# elif ENABLED(MKS_ROBIN_TFT35)
// Most common: ILI9488
// Most common: ILI9488
# define TFT_DEFAULT_ORIENTATION (TFT_EXCHANGE_XY | TFT_INVERT_X | TFT_INVERT_Y)
# define TFT_DEFAULT_ORIENTATION (TFT_EXCHANGE_XY | TFT_INVERT_X | TFT_INVERT_Y)
# define TFT_WIDTH 480
# define TFT_RES_480x320
# define TFT_HEIGHT 320
# define TFT_INTERFACE_FSMC
# define TFT_INTERFACE_FSMC
# define GRAPHICAL_TFT_UPSCALE 3
# elif ENABLED(MKS_ROBIN_TFT43)
# elif ENABLED(MKS_ROBIN_TFT43)
# define TFT_DEFAULT_ORIENTATION 0
# define TFT_DEFAULT_ORIENTATION 0
# define TFT_DRIVER SSD1963
# define TFT_DRIVER SSD1963
# define TFT_WIDTH 480
# define TFT_RES_480x272
# define TFT_HEIGHT 272
# define TFT_INTERFACE_FSMC
# define TFT_INTERFACE_FSMC
# define GRAPHICAL_TFT_UPSCALE 2
# elif ENABLED(MKS_ROBIN_TFT_V1_1R)
# elif ENABLED(MKS_ROBIN_TFT_V1_1R)
// ILI9328 or R61505
// ILI9328 or R61505
# define TFT_DEFAULT_ORIENTATION (TFT_INVERT_X | TFT_INVERT_Y | TFT_EXCHANGE_XY)
# define TFT_DEFAULT_ORIENTATION (TFT_EXCHANGE_XY | TFT_INVERT_X | TFT_INVERT_Y)
# define TFT_WIDTH 320
# define TFT_RES_320x240
# define TFT_HEIGHT 240
# define TFT_INTERFACE_FSMC
# define TFT_INTERFACE_FSMC
# define GRAPHICAL_TFT_UPSCALE 2
# elif EITHER(TFT_TRONXY_X5SA, ANYCUBIC_TFT35)
# elif EITHER(TFT_TRONXY_X5SA, ANYCUBIC_TFT35)
# define TFT_DEFAULT_ORIENTATION (TFT_EXCHANGE_XY | TFT_INVERT_X | TFT_INVERT_Y)
# define TFT_DEFAULT_ORIENTATION (TFT_EXCHANGE_XY | TFT_INVERT_X | TFT_INVERT_Y)
# define TFT_DRIVER ILI9488
# define TFT_DRIVER ILI9488
# define TFT_WIDTH 480
# define TFT_RES_480x320
# define TFT_HEIGHT 320
# define TFT_INTERFACE_FSMC
# define TFT_INTERFACE_FSMC
# define GRAPHICAL_TFT_UPSCALE 3
# elif ENABLED(LONGER_LK_TFT28)
# elif ENABLED(LONGER_LK_TFT28)
# define TFT_DEFAULT_ORIENTATION (TFT_EXCHANGE_XY | TFT_INVERT_X | TFT_INVERT_Y)
# define TFT_DEFAULT_ORIENTATION (TFT_EXCHANGE_XY | TFT_INVERT_X | TFT_INVERT_Y)
# define TFT_WIDTH 320
# define TFT_RES_320x240
# define TFT_HEIGHT 240
# define TFT_INTERFACE_FSMC
# define TFT_INTERFACE_FSMC
# define GRAPHICAL_TFT_UPSCALE 2
# elif ENABLED(TFT_GENERIC)
# elif ENABLED(TFT_GENERIC)
# define TFT_DEFAULT_ORIENTATION (TFT_EXCHANGE_XY | TFT_INVERT_X | TFT_INVERT_Y)
# define TFT_DEFAULT_ORIENTATION (TFT_EXCHANGE_XY | TFT_INVERT_X | TFT_INVERT_Y)
# if NONE(TFT_RES_320x240, TFT_RES_480x272, TFT_RES_480x320)
# define TFT_RES_320x240
# endif
# if NONE(TFT_INTERFACE_FSMC, TFT_INTERFACE_SPI)
# define TFT_INTERFACE_SPI
# endif
# endif
# if ENABLED(TFT_RES_320x240)
# define TFT_WIDTH 320
# define TFT_HEIGHT 240
# define GRAPHICAL_TFT_UPSCALE 2
# elif ENABLED(TFT_RES_480x272)
# define TFT_WIDTH 480
# define TFT_HEIGHT 272
# define GRAPHICAL_TFT_UPSCALE 2
# elif ENABLED(TFT_RES_480x320)
# define TFT_WIDTH 480
# define TFT_HEIGHT 320
# define GRAPHICAL_TFT_UPSCALE 3
# endif
# endif
// FSMC/SPI TFT Panels using standard HAL/tft/tft_(fsmc|spi).h
// FSMC/SPI TFT Panels using standard HAL/tft/tft_(fsmc|spi).h
# if ENABLED(TFT_INTERFACE_FSMC)
# if ENABLED(TFT_INTERFACE_FSMC)
# define HAS_FSMC_TFT 1
# define HAS_FSMC_TFT 1
# if ENABLED(TFT_CLASSIC_UI)
# if ENABLED(TFT_CLASSIC_UI)
# define FSMC_GRAPHICAL_TFT
# define HAS_ FSMC_GRAPHICAL_TFT 1
# elif ENABLED(TFT_LVGL_UI)
# elif ENABLED(TFT_LVGL_UI)
# define TFT_LVGL_UI_FSMC
# define HAS_ TFT_LVGL_UI_FSMC 1
# endif
# endif
# elif ENABLED(TFT_INTERFACE_SPI)
# elif ENABLED(TFT_INTERFACE_SPI)
# define HAS_SPI_TFT 1
# define HAS_SPI_TFT 1
# if ENABLED(TFT_CLASSIC_UI)
# if ENABLED(TFT_CLASSIC_UI)
# define SPI_GRAPHICAL_TFT
# define HAS_ SPI_GRAPHICAL_TFT 1
# elif ENABLED(TFT_LVGL_UI)
# elif ENABLED(TFT_LVGL_UI)
# define TFT_LVGL_UI_SPI
# define HAS_ TFT_LVGL_UI_SPI 1
# endif
# endif
# endif
# endif