This page is under construction and may not have complete or up-to-date information.

thinkyhead

LCD

Description

LCD / Controller options

lcd, hardware

These options are used to select and configure Marlin to communicate with an LCD controller directly connected to your board.

Marlin supports a huge number of LCD controllers, from simple character LCDs with a click-wheel to graphical OLED touchscreen displays. See the LCD Controllers page for full details about all the supported displays and controllers.

1.1.0

#define REPRAP_DISCOUNT_SMART_CONTROLLER

The common EXP1/2 HD44780 LCD controller (with SD Card slot)

1.1.9

#define YHCB2004

GT2560 (YHCB2004) LCD Display

Requires Testato, Koepel softwarewire library and Andriy Golovnya’s LiquidCrystal_AIP31068 library.

1.1.0

#define RADDS_DISPLAY

Original RADDS LCD Display+Encoder+SDCardReader

1.1.0

#define ULTIMAKERCONTROLLER

ULTIMAKER Controller

1.1.0

#define ULTIPANEL

Ultipanel - As seen on Thingiverse!

1.1.0

#define PANEL_ONE

PanelOne from T3P3 (via RAMPS 1.4 AUX2/AUX3)

1.1.0

#define G3D_PANEL

Gadgets3D G3D LCD/SD Controller

#define RIGIDBOT_PANEL

RigidBot Panel V1.0

#define MAKEBOARD_MINI_2_LINE_DISPLAY_1602

Makeboard 3D Printer Parts 3D Printer Mini Display 1602 Mini Controller

#define ZONESTAR_LCD

ANET and Tronxy 20x4 Controller, with keypad

Requires ADC_KEYPAD_PIN to be assigned to an analog pin. This LCD is known to be susceptible to electrical interference which scrambles the display. Pressing any button clears it up. This is a LCD2004 display with 5 analog buttons.

#define ULTRA_LCD

Generic 16x2, 16x4, 20x2, or 20x4 character-based LCD.

#define LCD_SAINSMART_I2C_1602

Sainsmart (YwRobot) 16x2 LCD Display. Requires the LiquidCrystal_I2C library.

#define LCD_SAINSMART_I2C_2004

Sainsmart (YwRobot) 20x4 LCD Display. Requires the LiquidCrystal_I2C library.

#define LCM1602

Generic LCM1602 LCD adapter.

#define LCD_I2C_PANELOLU2

Panelolu 2 LCD with status LEDs separate encoder and click inputs

Note: The PANELOLU2 encoder can be directly connected to a pin (BTN_ENC) or read through I2C (when BTN_ENC == -1).

#define LCD_I2C_VIKI

Panucatt VIKI LCD with status LEDs, integrated click & L/R/U/D buttons, separate encoder inputs.

#define FF_INTERFACEBOARD

3-wire SR LCD with strobe using 74HC4094. Uses the code directly from Sailfish.

#define TFTGLCD_PANEL_SPI

TFT GLCD Panel with Marlin UI connected by SPI.

#define TFTGLCD_PANEL_I2C

TFT GLCD Panel with Marlin UI connected by I2C.

1.1.0

#define REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER

The common EXP1/2 Full Graphic LCD controller (with SD Card slot).

#define K3D_FULL_GRAPHIC_SMART_CONTROLLER

K.3D Full Graphic Smart Controller.

#define VIKI2

Panucatt Device Viki 2.0 with Graphic LCD.

#define miniVIKI

Panucatt Device mini Viki with Graphic LCD.

#define WYH_L12864

Alfawise Ex8 printer LCD marked as WYH L12864 COG.

#define MINIPANEL

MakerLab Mini Panel with graphic controller and SD support

#define MAKRPANEL

MaKr3d Makr-Panel with graphic controller and SD support.

#define ELB_FULL_GRAPHIC_CONTROLLER

Adafruit ST7565 Full Graphic Controller.

#define BQ_LCD_SMART_CONTROLLER

BQ LCD Smart Controller shipped by default with the BQ Hephestos 2 and Witbox 2.

#define LCD_FOR_MELZI

LCD for Melzi Card with Graphical LCD.

#define ULTI_CONTROLLER

Original Ulticontroller from Ultimaker 2 printer with SSD1309 I2C display and encoder

#define MKS_MINI_12864

MKS MINI12864 with graphic controller and SD support

#define MKS_MINI_12864_V3

Alias for FYSETC_MINI_12864_2_1. Type A/B. NeoPixel RGB Backlight.

#define MKS_LCD12864A

MKS LCD12864A with graphic controller and SD support. Follows MKS_MINI_12864 pinout.

#define MKS_LCD12864B

MKS LCD12864B with graphic controller and SD support. Follows MKS_MINI_12864 pinout.

#define FYSETC_MINI_12864_X_X

FYSETC variant of the MINI12864 graphic controller with SD support. Type C/D/E/F. No tunable RGB Backlight by default.

#define FYSETC_MINI_12864_1_2

FYSETC variant of the MINI12864 graphic controller with SD support.

#define FYSETC_MINI_12864_2_0

FYSETC variant of the MINI12864 graphic controller with SD support.

#define FYSETC_MINI_12864_2_1

FYSETC variant of the MINI12864 graphic controller with SD support.

#define FYSETC_GENERIC_12864_1_1

FYSETC variant of the MINI12864 graphic controller with SD support.

#define BTT_MINI_12864

Alias for FYSETC_MINI_12864_2_1. Type A/B. NeoPixel RGB Backlight.

#define BEEZ_MINI_12864

Alias for FYSETC_MINI_12864_2_1. Type A/B. NeoPixel RGB Backlight.

#define CR10_STOCKDISPLAY

Factory display for Creality CR-10 / CR-7 / Ender-3. Connect to EXP1 on RAMPS and compatible boards.

#define ENDER2_STOCKDISPLAY

Ender-2 OEM display, a variant of the MKS_MINI_12864.

#define ANET_FULL_GRAPHICS_LCD

ANET and Tronxy 128×64 Full Graphics Controller as used on Anet A6.

#define CTC_A10S_A13

GUCOCO CTC 128×64 Full Graphics Controller as used on GUCOCO CTC A10S.

#define AZSMZ_12864

AZSMZ 12864 LCD with SD.

#define SILVER_GATE_GLCD_CONTROLLER

Silvergate GLCD controller.

#define U8GLIB_SSD1306

SSD1306 OLED full graphics generic display.

#define SAV_3DGLCD

SAV OLEd LCD module support using either SSD1306 or SH1106 based LCD modules.

#define U8GLIB_SSD1306

#define U8GLIB_SH1106

#define OLED_PANEL_TINYBOY2

TinyBoy2 128x64 OLED / Encoder Panel.

#define MKS_12864OLED

MKS OLED 1.3” 128×64 Full Graphics Controller. Tiny, but very sharp OLED display using the SH1106 controller.

#define MKS_12864OLED_SSD1306

MKS OLED 1.3” 128×64 Full Graphics Controller. Tiny, but very sharp OLED display using the SSD1306 controller.

#define ZONESTAR_12864LCD

Zonestar OLED 128×64 Full Graphics Controller. Graphical (DOGM) with ST7920 controller.

#define ZONESTAR_12864OLED

Zonestar OLED 128×64 Full Graphics Controller. 1.3” OLED with SH1106 controller.

#define ZONESTAR_12864OLED_SSD1306

Zonestar OLED 128×64 Full Graphics Controller. 0.96” OLED with SSD1306 controller.

#define U8GLIB_SH1106_EINSTART

Einstart S OLED SSD1306.

#define OVERLORD_OLED

Overlord OLED display/controller with i2c buzzer and LEDs.

#define FYSETC_242_OLED_12864

FYSETC OLED 2.42” 128×64 Full Graphics Controller with WS2812 RGB.

#define K3D_242_OLED_CONTROLLER

K.3D SSD1309 OLED 2.42” 128×64 Full Graphics Controller.

#define DGUS_LCD_UI name

DGUS Touch Display with DWIN OS. Define UI to use with this display.

Options: ORIGIN, FYSETC, HYPRECY, MKS, RELOADED, IA_CREALITY, E3S1PRO

#define USE_MKS_GREEN_UI

#define LCD_SCREEN_ROTATE rotation

Options: 0, 90, 180, 270

#define IA_CREALITY_BOOT_DELAY ms

#define MALYAN_LCD

Touch-screen LCD for Malyan M200/M300 printers.

#define TOUCH_UI_FTDI_EVE

Touch UI for FTDI EVE (FT800/FT810) displays. See Configuration_adv.h for all configuration options.

#define ANYCUBIC_LCD_CHIRON

Touch-screen LCD for Anycubic Chiron.

#define ANYCUBIC_LCD_I3MEGA

Touch-screen LCD for Anycubic i3 Mega.

#define ANYCUBIC_LCD_GCODE_EXT

Add “.gcode” to menu entries for DGUS clone compatibility.

#define ANYCUBIC_LCD_VYPER

Touch-screen LCD for Anycubic Vyper.

#define SOVOL_SV06_RTS

Sovol SV-06 Resistive Touch Screen.

#define NEXTION_TFT

320x240 Nextion 2.8” serial TFT Resistive Touch Screen NX3224T028.

#define EXTENSIBLE_UI

Third-party or vendor-customized controller interfaces. Sources should be installed in ‘src/lcd/extui’.

#define EXTUI_LOCAL_BEEPER

Use the local Beeper pin with an external display.

#define MKS_TS35_V2_0

480x320, 3.5”, SPI Display with Rotary Encoder from MKS. Usually paired with MKS Robin Nano V2 & V3.

#define MKS_ROBIN_TFT24

320x240, 2.4”, FSMC Display From MKS. Usually paired with MKS Robin Nano V1.2.

#define MKS_ROBIN_TFT28

320x240, 2.8”, FSMC Display From MKS. Usually paired with MKS Robin Nano V1.2.

#define MKS_ROBIN_TFT32

320x240, 3.2”, FSMC Display From MKS. Usually paired with MKS Robin Nano V1.2.

#define MKS_ROBIN_TFT35

480x320, 3.5”, FSMC Display From MKS. Usually paired with MKS Robin Nano V1.2.

#define MKS_ROBIN_TFT43

480x272, 4.3”, FSMC Display From MKS.

#define MKS_ROBIN_TFT_V1_1R

320x240, 3.2”, FSMC Display From MKS. Usually paired with MKS Robin.

#define TFT_TRONXY_X5SA

480x320, 3.5”, FSMC Stock Display from Tronxy.

#define ANYCUBIC_TFT35

480x320, 3.5”, FSMC Stock Display from AnyCubic.

#define LONGER_LK_TFT28

320x240, 2.8”, FSMC Stock Display from Longer/Alfawise.

#define ANET_ET4_TFT28

320x240, 2.8”, FSMC Stock Display from ET4.

#define ANET_ET5_TFT35

480x320, 3.5”, FSMC Stock Display from ET5.

#define BIQU_BX_TFT70

1024x600, 7”, RGB Stock Display with Rotary Encoder from BIQU BX.

#define BTT_TFT35_SPI_V1_0

480x320, 3.5”, SPI Stock Display with Rotary Encoder from BIQU B1 SE Series.

#define TFT_GENERIC

Generic TFT with detailed sub-options.

#define TFT_DRIVER AUTO enum

Options: AUTO, ST7735, ST7789, ST7796, R61505, ILI9328, ILI9341, ILI9488

#define TFT_INTERFACE_FSMC

Use the FSMC interface.

#define TFT_INTERFACE_SPI

Use the SPI interface.

#define TFT_RES_320x240

Use TFT Resolution 320 x 240.

#define TFT_RES_480x272

Use TFT Resolution 480 x 272.

#define TFT_RES_480x320

Use TFT Resolution 480 x 320.

#define TFT_RES_1024x600

Use TFT Resolution 1024 x 600.

#define TFT_CLASSIC_UI

TFT with emulated DOGM - 128x64 Upscaled.

#define TFT_COLOR_UI

TFT with Marlin Default Menus, Touch Friendly, using full TFT capabilities.

#define TFT_FONT enum

TFT Font for Color UI.

Options: NOTOSANS, UNIFONT, HELVETICA

#define TFT_THEME enum

TFT Theme for Color UI. Choose one of the following or add a new one to ‘Marlin/src/lcd/tft/themes’ directory.

Options: BLUE_MARLIN, BLACK_MARLIN, ANET_BLACK

#define TFT_SHARED_IO

I/O is shared between TFT display and other devices. Disable async data transfer.

#define COMPACT_MARLIN_BOOT_LOGO

Use compressed data to save Flash space.

#define TFT_LVGL_UI

TFT with a modern UI using LVGL.

#define MKS_WIFI_MODULE

Use the onboard MKS WiFi module.

#define TFT_ROTATION enum

Set the TFT rotation angle. Only applies to some TFT displays.

Options: TFT_NO_ROTATION, TFT_ROTATE_90, TFT_ROTATE_90_MIRROR_X, TFT_ROTATE_90_MIRROR_Y, TFT_ROTATE_180, TFT_ROTATE_180_MIRROR_X, TFT_ROTATE_180_MIRROR_Y, TFT_ROTATE_270, TFT_ROTATE_270_MIRROR_X, TFT_ROTATE_270_MIRROR_Y, TFT_MIRROR_X, TFT_MIRROR_Y
2.0.8

#define DWIN_CREALITY_LCD

The Ender-3 V2 display with Creality UI. Requires Marlin supplied DWIN_SET.

2.1.0

#define DWIN_LCD_PROUI

The Ender-3 V2 display with Pro UI by MRISCOC. Requires Marlin supplied DWIN_SET.

2.0.8

#define DWIN_CREALITY_LCD_JYERSUI

The Ender-3 V2 display with Jyers UI. Requires Marlin supplied DWIN_SET.

2.0.9

#define DWIN_MARLINUI_PORTRAIT

The Ender-3 V2 display with Marlin UI in portrait (tall) orientation. Requires Marlin supplied DWIN_SET.

2.0.9

#define DWIN_MARLINUI_LANDSCAPE

The Ender-3 V2 display with Marlin UI in landscape (wide) orientation. Requires Marlin supplied DWIN_SET.

#define TOUCH_SCREEN

Enable touch interface processing for displays that support it.

#define BUTTON_DELAY_EDIT ms

Button repeat delay for edit screens.

Example
#define BUTTON_DELAY_EDIT 50

#define BUTTON_DELAY_MENU ms

Button repeat delay for menus.

Example
#define BUTTON_DELAY_MENU 250

#define NO_BACK_MENU_ITEM

Don’t display a top menu item to go back to the parent menu.

⚠️ Requires: TFT_CLASSIC_UI or TFT_COLOR_UI

#define TOUCH_SCREEN_CALIBRATION

Provide a utility screen to recalibrate screen touch.

#define TOUCH_CALIBRATION_X int

Example
#define TOUCH_CALIBRATION_X 12316

#define TOUCH_CALIBRATION_Y int

Example
#define TOUCH_CALIBRATION_Y -8981

#define TOUCH_OFFSET_X int

Example
#define TOUCH_OFFSET_X -43

#define TOUCH_OFFSET_Y int

Example
#define TOUCH_OFFSET_Y 257

#define TOUCH_ORIENTATION enum

Options: TOUCH_LANDSCAPE, TOUCH_PORTRAIT

#define TOUCH_CALIBRATION_AUTO_SAVE

⚠️ Requires: TOUCH_SCREEN_CALIBRATION and EEPROM_SETTINGS

#define SINGLE_TOUCH_NAVIGATION

⚠️ Requires: TFT_COLOR_UI

#define REPRAPWORLD_KEYPAD

#define REPRAPWORLD_KEYPAD_MOVE_STEP int

#define EASYTHREED_UI

EasyThreeD ET-4000+ with button input and status LED.