diff --git a/Marlin/Version.h b/Marlin/Version.h index a9375629d3..b48ab6ef67 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2021-10-12" +//#define STRING_DISTRIBUTION_DATE "2021-10-13" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/gcode/calibrate/G33.cpp b/Marlin/src/gcode/calibrate/G33.cpp index 8a9de49880..779ae99d0a 100644 --- a/Marlin/src/gcode/calibrate/G33.cpp +++ b/Marlin/src/gcode/calibrate/G33.cpp @@ -73,9 +73,9 @@ float dcr; void ac_home() { endstops.enable(true); - TERN_(SENSORLESS_HOMING, probe.set_homing_current(true)); + TERN_(HAS_DELTA_SENSORLESS_PROBING, probe.set_homing_current(true)); home_delta(); - TERN_(SENSORLESS_HOMING, probe.set_homing_current(false)); + TERN_(HAS_DELTA_SENSORLESS_PROBING, probe.set_homing_current(false)); endstops.not_homing(); } diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index 7989dc8213..3be2076dd9 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -3436,10 +3436,6 @@ static_assert(_PLUS_TEST(4), "HOMING_FEEDRATE_MM_M values must be positive."); #endif #endif -#if BOTH(Z_STEPPER_AUTO_ALIGN, MECHANICAL_GANTRY_CALIBRATION) - #error "You cannot use Z_STEPPER_AUTO_ALIGN and MECHANICAL_GANTRY_CALIBRATION at the same time." -#endif - #if ENABLED(PRINTCOUNTER) && DISABLED(EEPROM_SETTINGS) #error "PRINTCOUNTER requires EEPROM_SETTINGS." #endif diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index bb2fd4bc90..614fdc36f2 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2021-10-12" + #define STRING_DISTRIBUTION_DATE "2021-10-13" #endif /** diff --git a/Marlin/src/lcd/extui/mks_ui/draw_preHeat.cpp b/Marlin/src/lcd/extui/mks_ui/draw_preHeat.cpp index 4d657f2394..ab95ce3a83 100644 --- a/Marlin/src/lcd/extui/mks_ui/draw_preHeat.cpp +++ b/Marlin/src/lcd/extui/mks_ui/draw_preHeat.cpp @@ -60,18 +60,20 @@ static void event_handler(lv_obj_t *obj, lv_event_t event) { switch (obj->mks_obj_id) { case ID_P_ADD: { if (uiCfg.curTempType == 0) { - int16_t max_target; - thermalManager.temp_hotend[uiCfg.extruderIndex].target += uiCfg.stepHeat; - if (uiCfg.extruderIndex == 0) - max_target = HEATER_0_MAXTEMP - (WATCH_TEMP_INCREASE + TEMP_HYSTERESIS + 1); - else { - #if HAS_MULTI_HOTEND - max_target = HEATER_1_MAXTEMP - (WATCH_TEMP_INCREASE + TEMP_HYSTERESIS + 1); - #endif - } - if (thermalManager.degTargetHotend(uiCfg.extruderIndex) > max_target) - thermalManager.setTargetHotend(max_target, uiCfg.extruderIndex); - thermalManager.start_watching_hotend(uiCfg.extruderIndex); + #if HAS_HOTEND + int16_t max_target; + thermalManager.temp_hotend[uiCfg.extruderIndex].target += uiCfg.stepHeat; + if (uiCfg.extruderIndex == 0) + max_target = HEATER_0_MAXTEMP - (WATCH_TEMP_INCREASE + TEMP_HYSTERESIS + 1); + else { + #if HAS_MULTI_HOTEND + max_target = HEATER_1_MAXTEMP - (WATCH_TEMP_INCREASE + TEMP_HYSTERESIS + 1); + #endif + } + if (thermalManager.degTargetHotend(uiCfg.extruderIndex) > max_target) + thermalManager.setTargetHotend(max_target, uiCfg.extruderIndex); + thermalManager.start_watching_hotend(uiCfg.extruderIndex); + #endif } else { #if HAS_HEATED_BED @@ -87,11 +89,13 @@ static void event_handler(lv_obj_t *obj, lv_event_t event) { case ID_P_DEC: if (uiCfg.curTempType == 0) { - if (thermalManager.degTargetHotend(uiCfg.extruderIndex) > uiCfg.stepHeat) - thermalManager.temp_hotend[uiCfg.extruderIndex].target -= uiCfg.stepHeat; - else - thermalManager.setTargetHotend(0, uiCfg.extruderIndex); - thermalManager.start_watching_hotend(uiCfg.extruderIndex); + #if HAS_HOTEND + if (thermalManager.degTargetHotend(uiCfg.extruderIndex) > uiCfg.stepHeat) + thermalManager.temp_hotend[uiCfg.extruderIndex].target -= uiCfg.stepHeat; + else + thermalManager.setTargetHotend(0, uiCfg.extruderIndex); + thermalManager.start_watching_hotend(uiCfg.extruderIndex); + #endif } else { #if HAS_HEATED_BED @@ -99,7 +103,6 @@ static void event_handler(lv_obj_t *obj, lv_event_t event) { thermalManager.temp_bed.target -= uiCfg.stepHeat; else thermalManager.setTargetBed(0); - thermalManager.start_watching_bed(); #endif } @@ -142,8 +145,10 @@ static void event_handler(lv_obj_t *obj, lv_event_t event) { break; case ID_P_OFF: if (uiCfg.curTempType == 0) { - thermalManager.setTargetHotend(0, uiCfg.extruderIndex); - thermalManager.start_watching_hotend(uiCfg.extruderIndex); + #if HAS_HOTEND + thermalManager.setTargetHotend(0, uiCfg.extruderIndex); + thermalManager.start_watching_hotend(uiCfg.extruderIndex); + #endif } else { #if HAS_HEATED_BED @@ -158,16 +163,20 @@ static void event_handler(lv_obj_t *obj, lv_event_t event) { draw_return_ui(); break; case ID_P_ABS: - if (uiCfg.curTempType == 0) - thermalManager.setTargetHotend(PREHEAT_2_TEMP_HOTEND, 0); - else if (uiCfg.curTempType == 1) - thermalManager.setTargetBed(PREHEAT_2_TEMP_BED); + if (uiCfg.curTempType == 0) { + TERN_(HAS_HOTEND, thermalManager.setTargetHotend(PREHEAT_2_TEMP_HOTEND, 0)); + } + else if (uiCfg.curTempType == 1) { + TERN_(HAS_HEATED_BED, thermalManager.setTargetBed(PREHEAT_2_TEMP_BED)); + } break; case ID_P_PLA: - if (uiCfg.curTempType == 0) - thermalManager.setTargetHotend(PREHEAT_1_TEMP_HOTEND, 0); - else if (uiCfg.curTempType == 1) - thermalManager.setTargetBed(PREHEAT_1_TEMP_BED); + if (uiCfg.curTempType == 0) { + TERN_(HAS_HOTEND, thermalManager.setTargetHotend(PREHEAT_1_TEMP_HOTEND, 0)); + } + else if (uiCfg.curTempType == 1) { + TERN_(HAS_HEATED_BED, thermalManager.setTargetBed(PREHEAT_1_TEMP_BED)); + } break; } } @@ -227,14 +236,14 @@ void disp_ext_heart() { void disp_temp_type() { if (uiCfg.curTempType == 0) { - if (uiCfg.extruderIndex == 1) { + if (TERN0(HAS_MULTI_EXTRUDER, uiCfg.extruderIndex == 1)) { lv_imgbtn_set_src_both(buttonType, "F:/bmp_extru2.bin"); if (gCfgItems.multiple_language) { lv_label_set_text(labelType, preheat_menu.ext2); lv_obj_align(labelType, buttonType, LV_ALIGN_IN_BOTTOM_MID, 0, BUTTON_TEXT_Y_OFFSET); } } - else { + else if (ENABLED(HAS_HOTEND)) { lv_imgbtn_set_src_both(buttonType, "F:/bmp_extru1.bin"); if (gCfgItems.multiple_language) { lv_label_set_text(labelType, preheat_menu.ext1); @@ -242,7 +251,7 @@ void disp_temp_type() { } } } - else { + else if (ENABLED(HAS_HEATED_BED)) { lv_imgbtn_set_src_both(buttonType, "F:/bmp_bed.bin"); if (gCfgItems.multiple_language) { lv_label_set_text(labelType, preheat_menu.hotbed); @@ -256,8 +265,10 @@ void disp_desire_temp() { public_buf_l[0] = '\0'; if (uiCfg.curTempType == 0) { - strcat(public_buf_l, uiCfg.extruderIndex < 1 ? preheat_menu.ext1 : preheat_menu.ext2); - sprintf(buf, preheat_menu.value_state, thermalManager.wholeDegHotend(uiCfg.extruderIndex), thermalManager.degTargetHotend(uiCfg.extruderIndex)); + #if HAS_HOTEND + strcat(public_buf_l, uiCfg.extruderIndex < 1 ? preheat_menu.ext1 : preheat_menu.ext2); + sprintf(buf, preheat_menu.value_state, thermalManager.wholeDegHotend(uiCfg.extruderIndex), thermalManager.degTargetHotend(uiCfg.extruderIndex)); + #endif } else { #if HAS_HEATED_BED diff --git a/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_E3_V2_0.h b/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_E3_V2_0.h index 9dc02c495b..c22409923b 100644 --- a/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_E3_V2_0.h +++ b/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_E3_V2_0.h @@ -28,7 +28,10 @@ // Onboard I2C EEPROM #if NO_EEPROM_SELECTED #define I2C_EEPROM + #define SOFT_I2C_EEPROM #define MARLIN_EEPROM_SIZE 0x1000 // 4KB + #define I2C_SDA_PIN SDA + #define I2C_SCL_PIN SCL #undef NO_EEPROM_SELECTED #endif diff --git a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_PRO.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_PRO.h index 69fdd1da89..a738a4faa2 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_PRO.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_PRO.h @@ -237,7 +237,7 @@ #define TFT_CS_PIN FSMC_CS_PIN #define TFT_RS_PIN FSMC_RS_PIN - #define LCD_RESET_PIN PF6 + #define LCD_RESET_PIN PC6 #define LCD_BACKLIGHT_PIN PD13 #define TFT_BUFFER_SIZE 14400 diff --git a/buildroot/share/PlatformIO/boards/marlin_FYSETC_CHEETAH_V20.json b/buildroot/share/PlatformIO/boards/marlin_FYSETC_CHEETAH_V20.json index e7b0d28afe..6c2e093c3b 100644 --- a/buildroot/share/PlatformIO/boards/marlin_FYSETC_CHEETAH_V20.json +++ b/buildroot/share/PlatformIO/boards/marlin_FYSETC_CHEETAH_V20.json @@ -14,7 +14,6 @@ "0x3748" ] ], - "ldscript": "stm32f401rc.ld", "mcu": "stm32f401rct6", "variant": "MARLIN_FYSETC_CHEETAH_V20" }, @@ -56,7 +55,7 @@ "dfu", "jlink" ], - "offset_address": "0x800C000", + "offset_address": "0x8008000", "require_upload_port": true, "use_1200bps_touch": false, "wait_for_upload_port": false diff --git a/buildroot/share/PlatformIO/variants/MARLIN_FYSETC_CHEETAH_V20/ldscript.ld b/buildroot/share/PlatformIO/variants/MARLIN_FYSETC_CHEETAH_V20/ldscript.ld index 9565cd89c6..eaaff196cd 100644 --- a/buildroot/share/PlatformIO/variants/MARLIN_FYSETC_CHEETAH_V20/ldscript.ld +++ b/buildroot/share/PlatformIO/variants/MARLIN_FYSETC_CHEETAH_V20/ldscript.ld @@ -61,7 +61,7 @@ _Min_Stack_Size = 0x400;; /* required amount of stack */ /* Specify the memory areas */ MEMORY { -FLASH (rx) : ORIGIN = 0x800C000, LENGTH = 256K +FLASH (rx) : ORIGIN = 0x8008000, LENGTH = 256K - 32K RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 64K } diff --git a/ini/stm32f4.ini b/ini/stm32f4.ini index 95e6ff6a35..4544bf56a0 100644 --- a/ini/stm32f4.ini +++ b/ini/stm32f4.ini @@ -48,7 +48,7 @@ build_flags = ${stm32_variant.build_flags} platform = ${common_stm32.platform} extends = stm32_variant board = marlin_FYSETC_CHEETAH_V20 -board_build.offset = 0xC000 +board_build.offset = 0x8000 build_flags = ${stm32_variant.build_flags} -DSTM32F401xC #