Merge upstream changes from Marlin 2.1.1
This commit is contained in:
@@ -31,25 +31,25 @@
|
||||
#define MKS_MINI_12864
|
||||
#endif
|
||||
|
||||
// MKS_MINI_12864_V3 is simply identical to FYSETC_MINI_12864_2_1
|
||||
#if ENABLED(MKS_MINI_12864_V3)
|
||||
// MKS_MINI_12864_V3 and BTT_MINI_12864_V1 are identical to FYSETC_MINI_12864_2_1
|
||||
#if EITHER(MKS_MINI_12864_V3, BTT_MINI_12864_V1)
|
||||
#define FYSETC_MINI_12864_2_1
|
||||
#endif
|
||||
|
||||
/**
|
||||
* General Flags that may be set below by specific LCDs
|
||||
*
|
||||
* DOGLCD : Run a Graphical LCD through U8GLib (with MarlinUI)
|
||||
* IS_ULTIPANEL : Define LCD_PINS_D5/6/7 for direct-connected "Ultipanel" LCDs
|
||||
* IS_ULTRA_LCD : Ultra LCD, not necessarily Ultipanel.
|
||||
* IS_RRD_SC : Common RRD 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_SH1106 : SH1106 OLED with I2C interface via U8GLib
|
||||
* IS_U8GLIB_SSD1306 : SSD1306 OLED with I2C interface via U8GLib
|
||||
* U8GLIB_SSD1309 : SSD1309 OLED with I2C interface via U8GLib
|
||||
* U8GLIB_ST7565_64128N : ST7565 128x64 LCD with SPI interface via U8GLib
|
||||
* U8GLIB_LM6059_AF : LM6059 with Hardware SPI via U8GLib
|
||||
* DOGLCD : Run a Graphical LCD through U8GLib (with MarlinUI)
|
||||
* IS_ULTIPANEL : Define LCD_PINS_D5/6/7 for direct-connected "Ultipanel" LCDs
|
||||
* HAS_WIRED_LCD : Ultra LCD, not necessarily Ultipanel.
|
||||
* IS_RRD_SC : Common RRD Smart Controller digital interface pins
|
||||
* IS_RRD_FG_SC : Common RRD Full Graphical Smart Controller digital interface pins
|
||||
* IS_U8GLIB_ST7920 : Most common DOGM display SPI interface, supporting a "lightweight" display mode.
|
||||
* U8GLIB_SH1106 : SH1106 OLED with I2C interface via U8GLib
|
||||
* IS_U8GLIB_SSD1306 : SSD1306 OLED with I2C interface via U8GLib (U8GLIB_SSD1306)
|
||||
* U8GLIB_SSD1309 : SSD1309 OLED with I2C interface via U8GLib (HAS_U8GLIB_I2C_OLED, HAS_WIRED_LCD, DOGLCD)
|
||||
* IS_U8GLIB_ST7565_64128N : ST7565 128x64 LCD with SPI interface via U8GLib
|
||||
* IS_U8GLIB_LM6059_AF : LM6059 with Hardware SPI via U8GLib
|
||||
*/
|
||||
#if EITHER(MKS_MINI_12864, ENDER2_STOCKDISPLAY)
|
||||
|
||||
@@ -78,14 +78,14 @@
|
||||
|
||||
// This helps to implement HAS_ADC_BUTTONS menus
|
||||
#define REVERSE_MENU_DIRECTION
|
||||
#define ENCODER_PULSES_PER_STEP 1
|
||||
#define ENCODER_STEPS_PER_MENU_ITEM 1
|
||||
#define STD_ENCODER_PULSES_PER_STEP 1
|
||||
#define STD_ENCODER_STEPS_PER_MENU_ITEM 1
|
||||
#define ENCODER_FEEDRATE_DEADZONE 2
|
||||
|
||||
#elif ENABLED(ZONESTAR_12864LCD)
|
||||
#define DOGLCD
|
||||
#define IS_RRD_SC 1
|
||||
#define U8GLIB_ST7920
|
||||
#define IS_U8GLIB_ST7920 1
|
||||
|
||||
#elif ENABLED(ZONESTAR_12864OLED)
|
||||
#define IS_RRD_SC 1
|
||||
@@ -97,21 +97,28 @@
|
||||
|
||||
#elif ENABLED(RADDS_DISPLAY)
|
||||
#define IS_ULTIPANEL 1
|
||||
#define ENCODER_PULSES_PER_STEP 2
|
||||
#define STD_ENCODER_PULSES_PER_STEP 2
|
||||
|
||||
#elif ANY(miniVIKI, VIKI2, ELB_FULL_GRAPHIC_CONTROLLER, AZSMZ_12864)
|
||||
#elif ANY(miniVIKI, VIKI2, WYH_L12864, ELB_FULL_GRAPHIC_CONTROLLER, AZSMZ_12864, EMOTION_TECH_LCD)
|
||||
|
||||
#define DOGLCD
|
||||
#define IS_DOGM_12864 1
|
||||
#define IS_ULTIPANEL 1
|
||||
|
||||
#if ENABLED(miniVIKI)
|
||||
#define U8GLIB_ST7565_64128N
|
||||
#define IS_U8GLIB_ST7565_64128N 1
|
||||
#elif ENABLED(VIKI2)
|
||||
#define U8GLIB_ST7565_64128N
|
||||
#define IS_U8GLIB_ST7565_64128N 1
|
||||
#elif ENABLED(WYH_L12864)
|
||||
#define IS_U8GLIB_ST7565_64128N 1
|
||||
#define ST7565_XOFFSET 0x04
|
||||
#elif ENABLED(ELB_FULL_GRAPHIC_CONTROLLER)
|
||||
#define U8GLIB_LM6059_AF
|
||||
#define IS_U8GLIB_LM6059_AF 1
|
||||
#elif ENABLED(AZSMZ_12864)
|
||||
#define U8GLIB_ST7565_64128N
|
||||
#define IS_U8GLIB_ST7565_64128N 1
|
||||
#elif ENABLED(EMOTION_TECH_LCD)
|
||||
#define IS_U8GLIB_ST7565_64128N 1
|
||||
#define ST7565_VOLTAGE_DIVIDER_VALUE 0x07
|
||||
#endif
|
||||
|
||||
#elif ENABLED(OLED_PANEL_TINYBOY2)
|
||||
@@ -128,7 +135,7 @@
|
||||
#elif ENABLED(REPRAPWORLD_GRAPHICAL_LCD)
|
||||
|
||||
#define DOGLCD
|
||||
#define U8GLIB_ST7920
|
||||
#define IS_U8GLIB_ST7920 1
|
||||
#define IS_ULTIPANEL 1
|
||||
|
||||
#elif ENABLED(MKS_12864OLED)
|
||||
@@ -144,7 +151,7 @@
|
||||
#elif ENABLED(SAV_3DGLCD)
|
||||
|
||||
#ifdef U8GLIB_SSD1306
|
||||
#define IS_U8GLIB_SSD1306
|
||||
#define IS_U8GLIB_SSD1306 // Allow for U8GLIB_SSD1306 + SAV_3DGLCD
|
||||
#endif
|
||||
#define IS_NEWPANEL 1
|
||||
|
||||
@@ -153,44 +160,19 @@
|
||||
#define IS_RRD_SC 1
|
||||
#define U8GLIB_SH1106
|
||||
|
||||
#define LED_CONTROL_MENU
|
||||
#define NEOPIXEL_LED
|
||||
#undef NEOPIXEL_TYPE
|
||||
#define NEOPIXEL_TYPE NEO_RGB
|
||||
#if NEOPIXEL_PIXELS < 3
|
||||
#undef NEOPIXELS_PIXELS
|
||||
#define NEOPIXEL_PIXELS 3
|
||||
#endif
|
||||
#ifndef NEOPIXEL_BRIGHTNESS
|
||||
#define NEOPIXEL_BRIGHTNESS 127
|
||||
#endif
|
||||
|
||||
#if ENABLED(PSU_CONTROL)
|
||||
#define LED_BACKLIGHT_TIMEOUT 10000
|
||||
#endif
|
||||
|
||||
#elif ANY(FYSETC_MINI_12864_X_X, FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0, FYSETC_MINI_12864_2_1, FYSETC_GENERIC_12864_1_1)
|
||||
|
||||
#define FYSETC_MINI_12864
|
||||
#define DOGLCD
|
||||
#define IS_ULTIPANEL 1
|
||||
#define LED_COLORS_REDUCE_GREEN
|
||||
#if ENABLED(PSU_CONTROL) && EITHER(FYSETC_MINI_12864_2_0, FYSETC_MINI_12864_2_1)
|
||||
#define LED_BACKLIGHT_TIMEOUT 10000
|
||||
#endif
|
||||
|
||||
// Require LED backlighting enabled
|
||||
#if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0)
|
||||
#define RGB_LED
|
||||
#elif ENABLED(FYSETC_MINI_12864_2_1)
|
||||
#define LED_CONTROL_MENU
|
||||
#define NEOPIXEL_LED
|
||||
#undef NEOPIXEL_TYPE
|
||||
#define NEOPIXEL_TYPE NEO_RGB
|
||||
#if NEOPIXEL_PIXELS < 3
|
||||
#undef NEOPIXELS_PIXELS
|
||||
#define NEOPIXEL_PIXELS 3
|
||||
#endif
|
||||
#if ENABLED(FYSETC_MINI_12864_2_1)
|
||||
#ifndef NEOPIXEL_BRIGHTNESS
|
||||
#define NEOPIXEL_BRIGHTNESS 127
|
||||
#endif
|
||||
@@ -202,8 +184,11 @@
|
||||
#define IS_ULTIPANEL 1
|
||||
#define U8GLIB_SSD1309
|
||||
#define LCD_RESET_PIN LCD_PINS_D6 // This controller need a reset pin
|
||||
#define ENCODER_PULSES_PER_STEP 2
|
||||
#define ENCODER_STEPS_PER_MENU_ITEM 2
|
||||
#define STD_ENCODER_PULSES_PER_STEP 4
|
||||
#define STD_ENCODER_STEPS_PER_MENU_ITEM 1
|
||||
#ifndef PCA9632
|
||||
#define PCA9632
|
||||
#endif
|
||||
|
||||
#elif ENABLED(MAKEBOARD_MINI_2_LINE_DISPLAY_1602)
|
||||
|
||||
@@ -229,7 +214,7 @@
|
||||
#define LCD_HEIGHT 10 // Character lines
|
||||
#define LCD_CONTRAST_MIN 127
|
||||
#define LCD_CONTRAST_MAX 255
|
||||
#define DEFAULT_LCD_CONTRAST 250
|
||||
#define LCD_CONTRAST_DEFAULT 250
|
||||
#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.
|
||||
// First 7 ASCII symbols in panel font must be replaced with Marlin's special symbols.
|
||||
@@ -266,7 +251,7 @@
|
||||
// ST7920-based graphical displays
|
||||
#if ANY(IS_RRD_FG_SC, LCD_FOR_MELZI, SILVER_GATE_GLCD_CONTROLLER)
|
||||
#define DOGLCD
|
||||
#define U8GLIB_ST7920
|
||||
#define IS_U8GLIB_ST7920 1
|
||||
#define IS_RRD_SC 1
|
||||
#endif
|
||||
|
||||
@@ -275,7 +260,7 @@
|
||||
#define IS_ULTIPANEL 1
|
||||
#define DOGLCD
|
||||
#if ENABLED(MAKRPANEL)
|
||||
#define U8GLIB_ST7565_64128N
|
||||
#define IS_U8GLIB_ST7565_64128N 1
|
||||
#endif
|
||||
#endif
|
||||
|
||||
@@ -297,14 +282,14 @@
|
||||
#define PCA9632_BUZZER
|
||||
#define PCA9632_BUZZER_DATA { 0x09, 0x02 }
|
||||
|
||||
#define ENCODER_PULSES_PER_STEP 1 // Overlord uses buttons
|
||||
#define ENCODER_STEPS_PER_MENU_ITEM 1
|
||||
#define STD_ENCODER_PULSES_PER_STEP 1 // Overlord uses buttons
|
||||
#define STD_ENCODER_STEPS_PER_MENU_ITEM 1
|
||||
#endif
|
||||
|
||||
// 128x64 I2C OLED LCDs - SSD1306/SSD1309/SH1106
|
||||
#if ANY(U8GLIB_SSD1306, U8GLIB_SSD1309, U8GLIB_SH1106)
|
||||
#define HAS_U8GLIB_I2C_OLED 1
|
||||
#define IS_ULTRA_LCD 1
|
||||
#define HAS_WIRED_LCD 1
|
||||
#define DOGLCD
|
||||
#endif
|
||||
|
||||
@@ -327,7 +312,6 @@
|
||||
#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 IS_LEGACY_TFT 1
|
||||
#define TFT_GENERIC
|
||||
#warning "Don't forget to update your TFT settings in Configuration.h."
|
||||
#endif
|
||||
|
||||
#if ANY(FSMC_GRAPHICAL_TFT, TFT_320x240, TFT_480x320, TFT_LVGL_UI_FSMC)
|
||||
@@ -373,25 +357,28 @@
|
||||
* I2C Panels
|
||||
*/
|
||||
|
||||
#if EITHER(LCD_SAINSMART_I2C_1602, LCD_SAINSMART_I2C_2004)
|
||||
#if ANY(IS_RRD_SC, IS_DOGM_12864, OLED_PANEL_TINYBOY2, LCD_I2C_PANELOLU2)
|
||||
|
||||
#define LCD_I2C_TYPE_PCF8575
|
||||
#define LCD_I2C_ADDRESS 0x27 // I2C Address of the port expander
|
||||
#define STD_ENCODER_PULSES_PER_STEP 4
|
||||
#define STD_ENCODER_STEPS_PER_MENU_ITEM 1
|
||||
|
||||
#if ENABLED(LCD_I2C_PANELOLU2) // PANELOLU2 LCD with status LEDs, separate encoder and click inputs
|
||||
#define LCD_I2C_TYPE_MCP23017 // I2C Character-based 12864 display
|
||||
#define LCD_I2C_ADDRESS 0x20 // I2C Address of the port expander
|
||||
#define LCD_USE_I2C_BUZZER // Enable buzzer on LCD (optional)
|
||||
#define IS_ULTIPANEL 1
|
||||
#endif
|
||||
|
||||
#elif EITHER(LCD_SAINSMART_I2C_1602, LCD_SAINSMART_I2C_2004)
|
||||
|
||||
#define LCD_I2C_TYPE_PCF8575 // I2C Character-based 12864 display
|
||||
#define LCD_I2C_ADDRESS 0x27 // I2C Address of the port expander
|
||||
|
||||
#if ENABLED(LCD_SAINSMART_I2C_2004)
|
||||
#define LCD_WIDTH 20
|
||||
#define LCD_HEIGHT 4
|
||||
#endif
|
||||
|
||||
#elif ENABLED(LCD_I2C_PANELOLU2)
|
||||
|
||||
// PANELOLU2 LCD with status LEDs, separate encoder and click inputs
|
||||
|
||||
#define LCD_I2C_TYPE_MCP23017
|
||||
#define LCD_I2C_ADDRESS 0x20 // I2C Address of the port expander
|
||||
#define LCD_USE_I2C_BUZZER // Enable buzzer on LCD (optional)
|
||||
#define IS_ULTIPANEL 1
|
||||
|
||||
#elif ENABLED(LCD_I2C_VIKI)
|
||||
|
||||
/**
|
||||
@@ -417,11 +404,6 @@
|
||||
#define STD_ENCODER_PULSES_PER_STEP 2
|
||||
#define STD_ENCODER_STEPS_PER_MENU_ITEM 1
|
||||
|
||||
#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_STEPS_PER_MENU_ITEM 1
|
||||
|
||||
#endif
|
||||
|
||||
#if EITHER(LCD_I2C_TYPE_MCP23017, LCD_I2C_TYPE_MCP23008) && DISABLED(NO_LCD_DETECT)
|
||||
@@ -463,7 +445,7 @@
|
||||
#endif
|
||||
|
||||
#if EITHER(IS_ULTIPANEL, ULTRA_LCD)
|
||||
#define IS_ULTRA_LCD 1
|
||||
#define HAS_WIRED_LCD 1
|
||||
#endif
|
||||
|
||||
#if EITHER(IS_ULTIPANEL, REPRAPWORLD_KEYPAD)
|
||||
@@ -482,7 +464,7 @@
|
||||
#define HAS_DGUS_LCD_CLASSIC 1
|
||||
#endif
|
||||
|
||||
#if ANY(HAS_DGUS_LCD_CLASSIC, DGUS_LCD_UI_RELOADED)
|
||||
#if EITHER(HAS_DGUS_LCD_CLASSIC, DGUS_LCD_UI_RELOADED)
|
||||
#define HAS_DGUS_LCD 1
|
||||
#endif
|
||||
|
||||
@@ -493,29 +475,27 @@
|
||||
#endif
|
||||
|
||||
// Aliases for LCD features
|
||||
#if EITHER(DWIN_CREALITY_LCD, DWIN_CREALITY_LCD_ENHANCED)
|
||||
#if EITHER(DWIN_CREALITY_LCD, DWIN_LCD_PROUI)
|
||||
#define HAS_DWIN_E3V2_BASIC 1
|
||||
#endif
|
||||
#if EITHER(HAS_DWIN_E3V2_BASIC, DWIN_CREALITY_LCD_JYERSUI)
|
||||
#define HAS_DWIN_E3V2 1
|
||||
#endif
|
||||
#if ENABLED(DWIN_LCD_PROUI)
|
||||
#define DO_LIST_BIN_FILES 1
|
||||
#endif
|
||||
|
||||
// E3V2 extras
|
||||
#if HAS_DWIN_E3V2 || IS_DWIN_MARLINUI
|
||||
#define SERIAL_CATCHALL 0
|
||||
#ifndef LCD_SERIAL_PORT
|
||||
#if MB(BTT_SKR_MINI_E3_V1_0, BTT_SKR_MINI_E3_V1_2, BTT_SKR_MINI_E3_V2_0, BTT_SKR_E3_TURBO)
|
||||
#define LCD_SERIAL_PORT 1
|
||||
#else
|
||||
#define LCD_SERIAL_PORT 3 // Creality 4.x board
|
||||
#endif
|
||||
#endif
|
||||
#define HAS_LCD_BRIGHTNESS 1
|
||||
#define LCD_BRIGHTNESS_MAX 250
|
||||
#if ENABLED(DWIN_LCD_PROUI)
|
||||
#define LCD_BRIGHTNESS_DEFAULT 127
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if IS_ULTRA_LCD
|
||||
#define HAS_WIRED_LCD 1
|
||||
#if HAS_WIRED_LCD
|
||||
#if ENABLED(DOGLCD)
|
||||
#define HAS_MARLINUI_U8GLIB 1
|
||||
#elif IS_TFTGLCD_PANEL
|
||||
@@ -528,16 +508,28 @@
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if ANY(HAS_WIRED_LCD, EXTENSIBLE_UI, DWIN_CREALITY_LCD_JYERSUI)
|
||||
#if ANY(HAS_WIRED_LCD, EXTENSIBLE_UI, DWIN_LCD_PROUI, DWIN_CREALITY_LCD_JYERSUI)
|
||||
#define HAS_DISPLAY 1
|
||||
#endif
|
||||
|
||||
#if ANY(HAS_DISPLAY, HAS_DWIN_E3V2, GLOBAL_STATUS_MESSAGE)
|
||||
#if HAS_WIRED_LCD && !HAS_GRAPHICAL_TFT && !IS_DWIN_MARLINUI
|
||||
#define HAS_LCDPRINT 1
|
||||
#endif
|
||||
|
||||
#if HAS_DISPLAY || HAS_DWIN_E3V2
|
||||
#define HAS_STATUS_MESSAGE 1
|
||||
#endif
|
||||
|
||||
#if IS_ULTIPANEL && DISABLED(NO_LCD_MENUS)
|
||||
#define HAS_LCD_MENU 1
|
||||
#define HAS_MARLINUI_MENU 1
|
||||
#endif
|
||||
|
||||
#if ANY(HAS_MARLINUI_MENU, EXTENSIBLE_UI, HAS_DWIN_E3V2)
|
||||
#define HAS_MANUAL_MOVE_MENU 1
|
||||
#endif
|
||||
|
||||
#if ANY(HAS_MARLINUI_U8GLIB, EXTENSIBLE_UI, HAS_MARLINUI_HD44780, IS_TFTGLCD_PANEL, IS_DWIN_MARLINUI, DWIN_CREALITY_LCD_JYERSUI)
|
||||
#define CAN_SHOW_REMAINING_TIME 1
|
||||
#endif
|
||||
|
||||
#if HAS_MARLINUI_U8GLIB
|
||||
@@ -676,29 +668,320 @@
|
||||
#define E_MANUAL EXTRUDERS
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Number of Linear Axes (e.g., XYZ)
|
||||
* All the logical axes except for the tool (E) axis
|
||||
*/
|
||||
#ifndef LINEAR_AXES
|
||||
#define LINEAR_AXES XYZ
|
||||
#endif
|
||||
#if LINEAR_AXES >= XY
|
||||
#define HAS_Y_AXIS 1
|
||||
#if LINEAR_AXES >= XYZ
|
||||
#define HAS_Z_AXIS 1
|
||||
#if E_STEPPERS <= 7
|
||||
#undef INVERT_E7_DIR
|
||||
#if E_STEPPERS <= 6
|
||||
#undef INVERT_E6_DIR
|
||||
#if E_STEPPERS <= 5
|
||||
#undef INVERT_E5_DIR
|
||||
#if E_STEPPERS <= 4
|
||||
#undef INVERT_E4_DIR
|
||||
#if E_STEPPERS <= 3
|
||||
#undef INVERT_E3_DIR
|
||||
#if E_STEPPERS <= 2
|
||||
#undef INVERT_E2_DIR
|
||||
#if E_STEPPERS <= 1
|
||||
#undef INVERT_E1_DIR
|
||||
#if E_STEPPERS == 0
|
||||
#undef INVERT_E0_DIR
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Number of Logical Axes (e.g., XYZE)
|
||||
* All the logical axes that can be commanded directly by G-code.
|
||||
* Number of Linear Axes (e.g., XYZIJKUVW)
|
||||
* All the logical axes except for the tool (E) axis
|
||||
*/
|
||||
#ifdef NUM_AXES
|
||||
#undef NUM_AXES
|
||||
#define NUM_AXES_WARNING 1
|
||||
#endif
|
||||
|
||||
#ifdef W_DRIVER_TYPE
|
||||
#define NUM_AXES 9
|
||||
#elif defined(V_DRIVER_TYPE)
|
||||
#define NUM_AXES 8
|
||||
#elif defined(U_DRIVER_TYPE)
|
||||
#define NUM_AXES 7
|
||||
#elif defined(K_DRIVER_TYPE)
|
||||
#define NUM_AXES 6
|
||||
#elif defined(J_DRIVER_TYPE)
|
||||
#define NUM_AXES 5
|
||||
#elif defined(I_DRIVER_TYPE)
|
||||
#define NUM_AXES 4
|
||||
#elif defined(Z_DRIVER_TYPE)
|
||||
#define NUM_AXES 3
|
||||
#elif defined(Y_DRIVER_TYPE)
|
||||
#define NUM_AXES 2
|
||||
#else
|
||||
#define NUM_AXES 1
|
||||
#endif
|
||||
#if NUM_AXES >= XY
|
||||
#define HAS_Y_AXIS 1
|
||||
#if NUM_AXES >= XYZ
|
||||
#define HAS_Z_AXIS 1
|
||||
#ifdef Z4_DRIVER_TYPE
|
||||
#define NUM_Z_STEPPERS 4
|
||||
#elif defined(Z3_DRIVER_TYPE)
|
||||
#define NUM_Z_STEPPERS 3
|
||||
#elif defined(Z2_DRIVER_TYPE)
|
||||
#define NUM_Z_STEPPERS 2
|
||||
#else
|
||||
#define NUM_Z_STEPPERS 1
|
||||
#endif
|
||||
#if NUM_AXES >= 4
|
||||
#define HAS_I_AXIS 1
|
||||
#if NUM_AXES >= 5
|
||||
#define HAS_J_AXIS 1
|
||||
#if NUM_AXES >= 6
|
||||
#define HAS_K_AXIS 1
|
||||
#if NUM_AXES >= 7
|
||||
#define HAS_U_AXIS 1
|
||||
#if NUM_AXES >= 8
|
||||
#define HAS_V_AXIS 1
|
||||
#if NUM_AXES >= 9
|
||||
#define HAS_W_AXIS 1
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if E_STEPPERS <= 0
|
||||
#undef E0_DRIVER_TYPE
|
||||
#endif
|
||||
#if E_STEPPERS <= 1
|
||||
#undef E1_DRIVER_TYPE
|
||||
#endif
|
||||
#if E_STEPPERS <= 2
|
||||
#undef E2_DRIVER_TYPE
|
||||
#endif
|
||||
#if E_STEPPERS <= 3
|
||||
#undef E3_DRIVER_TYPE
|
||||
#endif
|
||||
#if E_STEPPERS <= 4
|
||||
#undef E4_DRIVER_TYPE
|
||||
#endif
|
||||
#if E_STEPPERS <= 5
|
||||
#undef E5_DRIVER_TYPE
|
||||
#endif
|
||||
#if E_STEPPERS <= 6
|
||||
#undef E6_DRIVER_TYPE
|
||||
#endif
|
||||
#if E_STEPPERS <= 7
|
||||
#undef E7_DRIVER_TYPE
|
||||
#endif
|
||||
|
||||
#if !HAS_Y_AXIS
|
||||
#undef ENDSTOPPULLUP_YMIN
|
||||
#undef ENDSTOPPULLUP_YMAX
|
||||
#undef Y_MIN_ENDSTOP_INVERTING
|
||||
#undef Y_MAX_ENDSTOP_INVERTING
|
||||
#undef Y2_DRIVER_TYPE
|
||||
#undef Y_ENABLE_ON
|
||||
#undef DISABLE_Y
|
||||
#undef INVERT_Y_DIR
|
||||
#undef Y_HOME_DIR
|
||||
#undef Y_MIN_POS
|
||||
#undef Y_MAX_POS
|
||||
#undef MANUAL_Y_HOME_POS
|
||||
#undef MIN_SOFTWARE_ENDSTOP_Y
|
||||
#undef MAX_SOFTWARE_ENDSTOP_Y
|
||||
#undef SAFE_BED_LEVELING_START_Y
|
||||
#endif
|
||||
|
||||
#if !HAS_Z_AXIS
|
||||
#undef ENDSTOPPULLUP_ZMIN
|
||||
#undef ENDSTOPPULLUP_ZMAX
|
||||
#undef Z_MIN_ENDSTOP_INVERTING
|
||||
#undef Z_MAX_ENDSTOP_INVERTING
|
||||
#undef Z2_DRIVER_TYPE
|
||||
#undef Z3_DRIVER_TYPE
|
||||
#undef Z4_DRIVER_TYPE
|
||||
#undef Z_ENABLE_ON
|
||||
#undef DISABLE_Z
|
||||
#undef INVERT_Z_DIR
|
||||
#undef Z_HOME_DIR
|
||||
#undef Z_MIN_POS
|
||||
#undef Z_MAX_POS
|
||||
#undef MANUAL_Z_HOME_POS
|
||||
#undef MIN_SOFTWARE_ENDSTOP_Z
|
||||
#undef MAX_SOFTWARE_ENDSTOP_Z
|
||||
#undef SAFE_BED_LEVELING_START_Z
|
||||
#endif
|
||||
|
||||
#if !HAS_I_AXIS
|
||||
#undef ENDSTOPPULLUP_IMIN
|
||||
#undef ENDSTOPPULLUP_IMAX
|
||||
#undef I_MIN_ENDSTOP_INVERTING
|
||||
#undef I_MAX_ENDSTOP_INVERTING
|
||||
#undef I_ENABLE_ON
|
||||
#undef DISABLE_I
|
||||
#undef INVERT_I_DIR
|
||||
#undef I_HOME_DIR
|
||||
#undef I_MIN_POS
|
||||
#undef I_MAX_POS
|
||||
#undef MANUAL_I_HOME_POS
|
||||
#undef MIN_SOFTWARE_ENDSTOP_I
|
||||
#undef MAX_SOFTWARE_ENDSTOP_I
|
||||
#undef SAFE_BED_LEVELING_START_I
|
||||
#endif
|
||||
|
||||
#if !HAS_J_AXIS
|
||||
#undef ENDSTOPPULLUP_JMIN
|
||||
#undef ENDSTOPPULLUP_JMAX
|
||||
#undef J_MIN_ENDSTOP_INVERTING
|
||||
#undef J_MAX_ENDSTOP_INVERTING
|
||||
#undef J_ENABLE_ON
|
||||
#undef DISABLE_J
|
||||
#undef INVERT_J_DIR
|
||||
#undef J_HOME_DIR
|
||||
#undef J_MIN_POS
|
||||
#undef J_MAX_POS
|
||||
#undef MANUAL_J_HOME_POS
|
||||
#undef MIN_SOFTWARE_ENDSTOP_J
|
||||
#undef MAX_SOFTWARE_ENDSTOP_J
|
||||
#undef SAFE_BED_LEVELING_START_J
|
||||
#endif
|
||||
|
||||
#if !HAS_K_AXIS
|
||||
#undef ENDSTOPPULLUP_KMIN
|
||||
#undef ENDSTOPPULLUP_KMAX
|
||||
#undef K_MIN_ENDSTOP_INVERTING
|
||||
#undef K_MAX_ENDSTOP_INVERTING
|
||||
#undef K_ENABLE_ON
|
||||
#undef DISABLE_K
|
||||
#undef INVERT_K_DIR
|
||||
#undef K_HOME_DIR
|
||||
#undef K_MIN_POS
|
||||
#undef K_MAX_POS
|
||||
#undef MANUAL_K_HOME_POS
|
||||
#undef MIN_SOFTWARE_ENDSTOP_K
|
||||
#undef MAX_SOFTWARE_ENDSTOP_K
|
||||
#undef SAFE_BED_LEVELING_START_K
|
||||
#endif
|
||||
|
||||
#if !HAS_U_AXIS
|
||||
#undef ENDSTOPPULLUP_UMIN
|
||||
#undef ENDSTOPPULLUP_UMAX
|
||||
#undef U_MIN_ENDSTOP_INVERTING
|
||||
#undef U_MAX_ENDSTOP_INVERTING
|
||||
#undef U_ENABLE_ON
|
||||
#undef DISABLE_U
|
||||
#undef INVERT_U_DIR
|
||||
#undef U_HOME_DIR
|
||||
#undef U_MIN_POS
|
||||
#undef U_MAX_POS
|
||||
#undef MANUAL_U_HOME_POS
|
||||
#undef MIN_SOFTWARE_ENDSTOP_U
|
||||
#undef MAX_SOFTWARE_ENDSTOP_U
|
||||
#undef SAFE_BED_LEVELING_START_U
|
||||
#endif
|
||||
|
||||
#if !HAS_V_AXIS
|
||||
#undef ENDSTOPPULLUP_VMIN
|
||||
#undef ENDSTOPPULLUP_VMAX
|
||||
#undef V_MIN_ENDSTOP_INVERTING
|
||||
#undef V_MAX_ENDSTOP_INVERTING
|
||||
#undef V_ENABLE_ON
|
||||
#undef DISABLE_V
|
||||
#undef INVERT_V_DIR
|
||||
#undef V_HOME_DIR
|
||||
#undef V_MIN_POS
|
||||
#undef V_MAX_POS
|
||||
#undef MANUAL_V_HOME_POS
|
||||
#undef MIN_SOFTWARE_ENDSTOP_V
|
||||
#undef MAX_SOFTWARE_ENDSTOP_V
|
||||
#undef SAFE_BED_LEVELING_START_V
|
||||
#endif
|
||||
|
||||
#if !HAS_W_AXIS
|
||||
#undef ENDSTOPPULLUP_WMIN
|
||||
#undef ENDSTOPPULLUP_WMAX
|
||||
#undef W_MIN_ENDSTOP_INVERTING
|
||||
#undef W_MAX_ENDSTOP_INVERTING
|
||||
#undef W_ENABLE_ON
|
||||
#undef DISABLE_W
|
||||
#undef INVERT_W_DIR
|
||||
#undef W_HOME_DIR
|
||||
#undef W_MIN_POS
|
||||
#undef W_MAX_POS
|
||||
#undef MANUAL_W_HOME_POS
|
||||
#undef MIN_SOFTWARE_ENDSTOP_W
|
||||
#undef MAX_SOFTWARE_ENDSTOP_W
|
||||
#undef SAFE_BED_LEVELING_START_W
|
||||
#endif
|
||||
|
||||
#ifdef X2_DRIVER_TYPE
|
||||
#define HAS_X2_STEPPER 1
|
||||
// Dual X Carriage isn't known yet. TODO: Consider moving it to Configuration.h.
|
||||
#endif
|
||||
#ifdef Y2_DRIVER_TYPE
|
||||
#define HAS_Y2_STEPPER 1
|
||||
#define HAS_DUAL_Y_STEPPERS 1
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Number of Primary Linear Axes (e.g., XYZ)
|
||||
* X, XY, or XYZ axes. Excluding duplicate axes (X2, Y2. Z2. Z3, Z4)
|
||||
*/
|
||||
#if NUM_AXES >= 3
|
||||
#define PRIMARY_LINEAR_AXES 3
|
||||
#else
|
||||
#define PRIMARY_LINEAR_AXES NUM_AXES
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Number of Secondary Axes (e.g., IJKUVW)
|
||||
* All linear/rotational axes between XYZ and E.
|
||||
*/
|
||||
#define SECONDARY_AXES SUB3(NUM_AXES)
|
||||
|
||||
/**
|
||||
* Number of Rotational Axes (e.g., IJK)
|
||||
* All axes for which AXIS*_ROTATES is defined.
|
||||
* For these axes, positions are specified in angular degrees.
|
||||
*/
|
||||
#if ENABLED(AXIS9_ROTATES)
|
||||
#define ROTATIONAL_AXES 6
|
||||
#elif ENABLED(AXIS8_ROTATES)
|
||||
#define ROTATIONAL_AXES 5
|
||||
#elif ENABLED(AXIS7_ROTATES)
|
||||
#define ROTATIONAL_AXES 4
|
||||
#elif ENABLED(AXIS6_ROTATES)
|
||||
#define ROTATIONAL_AXES 3
|
||||
#elif ENABLED(AXIS5_ROTATES)
|
||||
#define ROTATIONAL_AXES 2
|
||||
#elif ENABLED(AXIS4_ROTATES)
|
||||
#define ROTATIONAL_AXES 1
|
||||
#else
|
||||
#define ROTATIONAL_AXES 0
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Number of Secondary Linear Axes (e.g., UVW)
|
||||
* All secondary axes for which AXIS*_ROTATES is not defined.
|
||||
* Excluding primary axes and excluding duplicate axes (X2, Y2, Z2, Z3, Z4)
|
||||
*/
|
||||
#define SECONDARY_LINEAR_AXES (NUM_AXES - PRIMARY_LINEAR_AXES - ROTATIONAL_AXES)
|
||||
|
||||
/**
|
||||
* Number of Logical Axes (e.g., XYZIJKUVWE)
|
||||
* All logical axes that can be commanded directly by G-code.
|
||||
* Delta maps stepper-specific values to ABC steppers.
|
||||
*/
|
||||
#if HAS_EXTRUDERS
|
||||
#define LOGICAL_AXES INCREMENT(LINEAR_AXES)
|
||||
#define LOGICAL_AXES INCREMENT(NUM_AXES)
|
||||
#else
|
||||
#define LOGICAL_AXES LINEAR_AXES
|
||||
#define LOGICAL_AXES NUM_AXES
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -716,7 +999,7 @@
|
||||
* distinguished.
|
||||
*/
|
||||
#if ENABLED(DISTINCT_E_FACTORS) && E_STEPPERS > 1
|
||||
#define DISTINCT_AXES (LINEAR_AXES + E_STEPPERS)
|
||||
#define DISTINCT_AXES (NUM_AXES + E_STEPPERS)
|
||||
#define DISTINCT_E E_STEPPERS
|
||||
#define E_INDEX_N(E) (E)
|
||||
#else
|
||||
@@ -740,6 +1023,7 @@
|
||||
#endif
|
||||
|
||||
// Helper macros for extruder and hotend arrays
|
||||
#define EXTRUDER_LOOP() for (int8_t e = 0; e < EXTRUDERS; e++)
|
||||
#define HOTEND_LOOP() for (int8_t e = 0; e < HOTENDS; e++)
|
||||
#define ARRAY_BY_EXTRUDERS(V...) ARRAY_N(EXTRUDERS, V)
|
||||
#define ARRAY_BY_EXTRUDERS1(v1) ARRAY_N_1(EXTRUDERS, v1)
|
||||
@@ -814,9 +1098,12 @@
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Set a flag for any type of bed probe, including the paper-test
|
||||
* Set flags for any form of bed probe
|
||||
*/
|
||||
#if ANY(HAS_Z_SERVO_PROBE, FIX_MOUNTED_PROBE, NOZZLE_AS_PROBE, TOUCH_MI_PROBE, Z_PROBE_ALLEN_KEY, Z_PROBE_SLED, SOLENOID_PROBE, SENSORLESS_PROBING, RACK_AND_PINION_PROBE)
|
||||
#if ANY(TOUCH_MI_PROBE, Z_PROBE_ALLEN_KEY, SOLENOID_PROBE, Z_PROBE_SLED, RACK_AND_PINION_PROBE, SENSORLESS_PROBING, MAGLEV4, MAG_MOUNTED_PROBE)
|
||||
#define HAS_STOWABLE_PROBE 1
|
||||
#endif
|
||||
#if ANY(HAS_STOWABLE_PROBE, HAS_Z_SERVO_PROBE, FIX_MOUNTED_PROBE, BD_SENSOR, NOZZLE_AS_PROBE)
|
||||
#define HAS_BED_PROBE 1
|
||||
#endif
|
||||
|
||||
@@ -945,6 +1232,21 @@
|
||||
#elif K_HOME_DIR < 0
|
||||
#define K_HOME_TO_MIN 1
|
||||
#endif
|
||||
#if U_HOME_DIR > 0
|
||||
#define U_HOME_TO_MAX 1
|
||||
#elif U_HOME_DIR < 0
|
||||
#define U_HOME_TO_MIN 1
|
||||
#endif
|
||||
#if V_HOME_DIR > 0
|
||||
#define V_HOME_TO_MAX 1
|
||||
#elif V_HOME_DIR < 0
|
||||
#define V_HOME_TO_MIN 1
|
||||
#endif
|
||||
#if W_HOME_DIR > 0
|
||||
#define W_HOME_TO_MAX 1
|
||||
#elif W_HOME_DIR < 0
|
||||
#define W_HOME_TO_MIN 1
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Conditionals based on the type of Bed Probe
|
||||
@@ -959,13 +1261,13 @@
|
||||
#if NONE(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN, HAS_DELTA_SENSORLESS_PROBING)
|
||||
#define USES_Z_MIN_PROBE_PIN 1
|
||||
#endif
|
||||
#if Z_HOME_TO_MIN && TERN1(USES_Z_MIN_PROBE_PIN, ENABLED(USE_PROBE_FOR_Z_HOMING))
|
||||
#if Z_HOME_TO_MIN && (DISABLED(USES_Z_MIN_PROBE_PIN) || ENABLED(USE_PROBE_FOR_Z_HOMING))
|
||||
#define HOMING_Z_WITH_PROBE 1
|
||||
#endif
|
||||
#ifndef Z_PROBE_LOW_POINT
|
||||
#define Z_PROBE_LOW_POINT -5
|
||||
#endif
|
||||
#if ENABLED(Z_PROBE_ALLEN_KEY)
|
||||
#if EITHER(Z_PROBE_ALLEN_KEY, MAG_MOUNTED_PROBE)
|
||||
#define PROBE_TRIGGERED_WHEN_STOWED_TEST 1 // Extra test for Allen Key Probe
|
||||
#endif
|
||||
#if MULTIPLE_PROBING > 1
|
||||
@@ -981,7 +1283,11 @@
|
||||
#undef USE_PROBE_FOR_Z_HOMING
|
||||
#endif
|
||||
|
||||
#if Z_HOME_TO_MAX
|
||||
#if ENABLED(BELTPRINTER) && !defined(HOME_Y_BEFORE_X)
|
||||
#define HOME_Y_BEFORE_X
|
||||
#endif
|
||||
|
||||
#if Z_HOME_TO_MAX && DISABLED(Z_SAFE_HOMING)
|
||||
#define HOME_Z_FIRST // If homing away from BED do Z first
|
||||
#endif
|
||||
|
||||
@@ -990,7 +1296,7 @@
|
||||
*/
|
||||
#if ENABLED(AUTO_BED_LEVELING_UBL)
|
||||
#undef LCD_BED_LEVELING
|
||||
#if ENABLED(DELTA)
|
||||
#if EITHER(DELTA, SEGMENT_LEVELED_MOVES)
|
||||
#define UBL_SEGMENTED 1
|
||||
#endif
|
||||
#endif
|
||||
@@ -1073,7 +1379,7 @@
|
||||
#define CORE_AXIS_2 C_AXIS
|
||||
#endif
|
||||
#define CORESIGN(n) (ANY(COREYX, COREZX, COREZY) ? (-(n)) : (n))
|
||||
#elif ENABLED(MARKFORGED_XY)
|
||||
#elif EITHER(MARKFORGED_XY, MARKFORGED_YX)
|
||||
// Markforged kinematics
|
||||
#define CORE_AXIS_1 A_AXIS
|
||||
#define CORE_AXIS_2 B_AXIS
|
||||
@@ -1133,95 +1439,6 @@
|
||||
#define HAS_ETHERNET 1
|
||||
#endif
|
||||
|
||||
// Fallback Stepper Driver types that don't depend on Configuration_adv.h
|
||||
#ifndef X_DRIVER_TYPE
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#endif
|
||||
#ifndef X2_DRIVER_TYPE
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#endif
|
||||
#ifndef Y_DRIVER_TYPE
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#endif
|
||||
#ifndef Y2_DRIVER_TYPE
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#endif
|
||||
#ifndef Z_DRIVER_TYPE
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#endif
|
||||
#ifndef Z2_DRIVER_TYPE
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#endif
|
||||
#ifndef Z3_DRIVER_TYPE
|
||||
#define Z3_DRIVER_TYPE A4988
|
||||
#endif
|
||||
#ifndef Z4_DRIVER_TYPE
|
||||
#define Z4_DRIVER_TYPE A4988
|
||||
#endif
|
||||
#if E_STEPPERS <= 0
|
||||
#undef E0_DRIVER_TYPE
|
||||
#elif !defined(E0_DRIVER_TYPE)
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#endif
|
||||
#if E_STEPPERS <= 1
|
||||
#undef E1_DRIVER_TYPE
|
||||
#elif !defined(E1_DRIVER_TYPE)
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#endif
|
||||
#if E_STEPPERS <= 2
|
||||
#undef E2_DRIVER_TYPE
|
||||
#elif !defined(E2_DRIVER_TYPE)
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#endif
|
||||
#if E_STEPPERS <= 3
|
||||
#undef E3_DRIVER_TYPE
|
||||
#elif !defined(E3_DRIVER_TYPE)
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#endif
|
||||
#if E_STEPPERS <= 4
|
||||
#undef E4_DRIVER_TYPE
|
||||
#elif !defined(E4_DRIVER_TYPE)
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
#endif
|
||||
#if E_STEPPERS <= 5
|
||||
#undef E5_DRIVER_TYPE
|
||||
#elif !defined(E5_DRIVER_TYPE)
|
||||
#define E5_DRIVER_TYPE A4988
|
||||
#endif
|
||||
#if E_STEPPERS <= 6
|
||||
#undef E6_DRIVER_TYPE
|
||||
#elif !defined(E6_DRIVER_TYPE)
|
||||
#define E6_DRIVER_TYPE A4988
|
||||
#endif
|
||||
#if E_STEPPERS <= 7
|
||||
#undef E7_DRIVER_TYPE
|
||||
#elif !defined(E7_DRIVER_TYPE)
|
||||
#define E7_DRIVER_TYPE A4988
|
||||
#endif
|
||||
|
||||
// Fallback axis inverting
|
||||
#ifndef INVERT_X_DIR
|
||||
#define INVERT_X_DIR false
|
||||
#endif
|
||||
#if HAS_Y_AXIS && !defined(INVERT_Y_DIR)
|
||||
#define INVERT_Y_DIR false
|
||||
#endif
|
||||
#if HAS_Z_AXIS && !defined(INVERT_Z_DIR)
|
||||
#define INVERT_Z_DIR false
|
||||
#endif
|
||||
#if LINEAR_AXES >= 4 && !defined(INVERT_I_DIR)
|
||||
#define INVERT_I_DIR false
|
||||
#endif
|
||||
#if LINEAR_AXES >= 5 && !defined(INVERT_J_DIR)
|
||||
#define INVERT_J_DIR false
|
||||
#endif
|
||||
#if LINEAR_AXES >= 6 && !defined(INVERT_K_DIR)
|
||||
#define INVERT_K_DIR false
|
||||
#endif
|
||||
#if HAS_EXTRUDERS && !defined(INVERT_E_DIR)
|
||||
#define INVERT_E_DIR false
|
||||
#endif
|
||||
|
||||
/**
|
||||
* This setting is also used by M109 when trying to calculate
|
||||
* a ballpark safe margin to prevent wait-forever situation.
|
||||
@@ -1230,6 +1447,10 @@
|
||||
#define EXTRUDE_MINTEMP 170
|
||||
#endif
|
||||
|
||||
#if ANY(PID_DEBUG, PID_BED_DEBUG, PID_CHAMBER_DEBUG)
|
||||
#define HAS_PID_DEBUG 1
|
||||
#endif
|
||||
|
||||
/**
|
||||
* TFT Displays
|
||||
*
|
||||
@@ -1242,20 +1463,20 @@
|
||||
* - TFT_COLOR
|
||||
* - GRAPHICAL_TFT_UPSCALE
|
||||
*/
|
||||
#if ENABLED(MKS_TS35_V2_0) // ST7796
|
||||
#if EITHER(MKS_TS35_V2_0, BTT_TFT35_SPI_V1_0) // ST7796
|
||||
#define TFT_DEFAULT_DRIVER ST7796
|
||||
#define TFT_DEFAULT_ORIENTATION TFT_EXCHANGE_XY
|
||||
#define TFT_RES_480x320
|
||||
#define TFT_INTERFACE_SPI
|
||||
#elif EITHER(LERDGE_TFT35, ANET_ET5_TFT35) // ST7796
|
||||
#elif EITHER(LERDGE_TFT35, ANET_ET5_TFT35) // ST7796
|
||||
#define TFT_DEFAULT_ORIENTATION TFT_EXCHANGE_XY
|
||||
#define TFT_RES_480x320
|
||||
#define TFT_INTERFACE_FSMC
|
||||
#elif ANY(ANET_ET4_TFT28, MKS_ROBIN_TFT24, MKS_ROBIN_TFT28, MKS_ROBIN_TFT32) // ST7789
|
||||
#elif ANY(ANET_ET4_TFT28, MKS_ROBIN_TFT24, MKS_ROBIN_TFT28, MKS_ROBIN_TFT32) // ST7789
|
||||
#define TFT_DEFAULT_ORIENTATION (TFT_EXCHANGE_XY | TFT_INVERT_Y)
|
||||
#define TFT_RES_320x240
|
||||
#define TFT_INTERFACE_FSMC
|
||||
#elif ANY(MKS_ROBIN_TFT35, TFT_TRONXY_X5SA, ANYCUBIC_TFT35) // ILI9488
|
||||
#elif ANY(MKS_ROBIN_TFT35, TFT_TRONXY_X5SA, ANYCUBIC_TFT35) // ILI9488
|
||||
#define TFT_DRIVER ILI9488
|
||||
#define TFT_DEFAULT_ORIENTATION (TFT_EXCHANGE_XY | TFT_INVERT_X | TFT_INVERT_Y)
|
||||
#define TFT_RES_480x320
|
||||
@@ -1265,11 +1486,11 @@
|
||||
#define TFT_DEFAULT_ORIENTATION 0
|
||||
#define TFT_RES_480x272
|
||||
#define TFT_INTERFACE_FSMC
|
||||
#elif ANY(MKS_ROBIN_TFT_V1_1R, LONGER_LK_TFT28) // ILI9328 or R61505
|
||||
#elif EITHER(MKS_ROBIN_TFT_V1_1R, LONGER_LK_TFT28) // ILI9328 or R61505
|
||||
#define TFT_DEFAULT_ORIENTATION (TFT_EXCHANGE_XY | TFT_INVERT_X | TFT_INVERT_Y)
|
||||
#define TFT_RES_320x240
|
||||
#define TFT_INTERFACE_FSMC
|
||||
#elif ENABLED(BIQU_BX_TFT70) // RGB
|
||||
#elif ENABLED(BIQU_BX_TFT70) // RGB
|
||||
#define TFT_DEFAULT_ORIENTATION TFT_EXCHANGE_XY
|
||||
#define TFT_RES_1024x600
|
||||
#define TFT_INTERFACE_LTDC
|
||||
@@ -1301,7 +1522,13 @@
|
||||
#elif ENABLED(TFT_RES_1024x600)
|
||||
#define TFT_WIDTH 1024
|
||||
#define TFT_HEIGHT 600
|
||||
#define GRAPHICAL_TFT_UPSCALE 4
|
||||
#if ENABLED(TOUCH_SCREEN)
|
||||
#define GRAPHICAL_TFT_UPSCALE 6
|
||||
#define TFT_PIXEL_OFFSET_X 120
|
||||
#else
|
||||
#define GRAPHICAL_TFT_UPSCALE 8
|
||||
#define TFT_PIXEL_OFFSET_X 0
|
||||
#endif
|
||||
#endif
|
||||
|
||||
// FSMC/SPI TFT Panels using standard HAL/tft/tft_(fsmc|spi|ltdc).h
|
||||
@@ -1405,7 +1632,7 @@
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if ANY(USE_XMIN_PLUG, USE_YMIN_PLUG, USE_ZMIN_PLUG, USE_XMAX_PLUG, USE_YMAX_PLUG, USE_ZMAX_PLUG)
|
||||
#if X_HOME_DIR || (HAS_Y_AXIS && Y_HOME_DIR) || (HAS_Z_AXIS && Z_HOME_DIR) || (HAS_I_AXIS && I_HOME_DIR) || (HAS_J_AXIS && J_HOME_DIR) || (HAS_K_AXIS && K_HOME_DIR)
|
||||
#define HAS_ENDSTOPS 1
|
||||
#define COORDINATE_OKAY(N,L,H) WITHIN(N,L,H)
|
||||
#else
|
||||
|
Reference in New Issue
Block a user