Skip to content

Commit 1f4983d

Browse files
committed
Merge branch 'bugfix-2.1.x' into mike-config
* bugfix-2.1.x: (113 commits) [cron] Bump distribution date (2023-02-27) ✨ LCD_BACKLIGHT_TIMEOUT for Neopixel LCD (MarlinFirmware#25438) 🔨 Fix env STM32G0B1RE_btt, add …_manta_btt (MarlinFirmware#25431) 🩹 Native types for RTS overloads (MarlinFirmware#25440) 📝 Link to archived RA Control Panel page (MarlinFirmware#25424) 📝 New URL for IA_CREALITY DWIN files (MarlinFirmware#25423) [cron] Bump distribution date (2023-02-24) 📝 Update DISABLE_INACTIVE_* comment 🎨 Use LIMIT macro ⚡️ Reduce edit_screen code size (MarlinFirmware#25420) ♻️ Stepper options refactor (MarlinFirmware#25422) [cron] Bump distribution date (2023-02-23) 🔧 Fix Einsy Rambo TMC driver check 🔨 Fix marlin_custom.* without lib_deps [cron] Bump distribution date (2023-02-22) 🐛 Fix AVR maths used by Stepper (MarlinFirmware#25338) 🔨 Encrypt some MKS Robin (MarlinFirmware#25349) 🌐 Update Russian language (MarlinFirmware#25360) 🧑‍💻 Fix preheat tests (nested macro limit ~256) 🧑‍💻 Add get_move_distance for rotation/kinematics (MarlinFirmware#25370) ... # Conflicts: # Marlin/Configuration_adv.h
2 parents fede1b5 + 80f0d4e commit 1f4983d

File tree

246 files changed

+7046
-3417
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

246 files changed

+7046
-3417
lines changed

Marlin/Configuration.h

+40-18
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@
3535
*
3636
* Advanced settings can be found in Configuration_adv.h
3737
*/
38-
#define CONFIGURATION_H_VERSION 02010200
38+
#define CONFIGURATION_H_VERSION 02010300
3939

4040
//===========================================================================
4141
//============================= Getting Started =============================
@@ -883,8 +883,9 @@
883883
// Enable for Polargraph Kinematics
884884
//#define POLARGRAPH
885885
#if ENABLED(POLARGRAPH)
886-
#define POLARGRAPH_MAX_BELT_LEN 1035.0
887-
#define DEFAULT_SEGMENTS_PER_SECOND 5
886+
#define POLARGRAPH_MAX_BELT_LEN 1035.0 // (mm) Belt length at full extension. Override with M665 H.
887+
#define DEFAULT_SEGMENTS_PER_SECOND 5 // Move segmentation based on duration
888+
#define PEN_UP_DOWN_MENU // Add "Pen Up" and "Pen Down" to the MarlinUI menu
888889
#endif
889890

890891
// @section delta
@@ -1677,15 +1678,15 @@
16771678

16781679
// Disable axis steppers immediately when they're not being stepped.
16791680
// WARNING: When motors turn off there is a chance of losing position accuracy!
1680-
#define DISABLE_X false
1681-
#define DISABLE_Y false
1682-
#define DISABLE_Z false
1683-
//#define DISABLE_I false
1684-
//#define DISABLE_J false
1685-
//#define DISABLE_K false
1686-
//#define DISABLE_U false
1687-
//#define DISABLE_V false
1688-
//#define DISABLE_W false
1681+
//#define DISABLE_X
1682+
//#define DISABLE_Y
1683+
//#define DISABLE_Z
1684+
//#define DISABLE_I
1685+
//#define DISABLE_J
1686+
//#define DISABLE_K
1687+
//#define DISABLE_U
1688+
//#define DISABLE_V
1689+
//#define DISABLE_W
16891690

16901691
// Turn off the display blinking that warns about possible accuracy reduction
16911692
//#define DISABLE_REDUCED_ACCURACY_WARNING
@@ -2024,7 +2025,7 @@
20242025
//#define EXTRAPOLATE_BEYOND_GRID
20252026

20262027
//
2027-
// Experimental Subdivision of the grid by Catmull-Rom method.
2028+
// Subdivision of the grid by Catmull-Rom method.
20282029
// Synthesizes intermediate points to produce a more detailed mesh.
20292030
//
20302031
//#define ABL_BILINEAR_SUBDIVISION
@@ -2057,6 +2058,25 @@
20572058

20582059
//#define UBL_MESH_WIZARD // Run several commands in a row to get a complete mesh
20592060

2061+
/**
2062+
* Probing not allowed within the position of an obstacle.
2063+
*/
2064+
//#define AVOID_OBSTACLES
2065+
#if ENABLED(AVOID_OBSTACLES)
2066+
#define CLIP_W 23 // Bed clip width, should be padded a few mm over its physical size
2067+
#define CLIP_H 14 // Bed clip height, should be padded a few mm over its physical size
2068+
2069+
// Obstacle Rectangles defined as { X1, Y1, X2, Y2 }
2070+
#define OBSTACLE1 { (X_BED_SIZE) / 4 - (CLIP_W) / 2, 0, (X_BED_SIZE) / 4 + (CLIP_W) / 2, CLIP_H }
2071+
#define OBSTACLE2 { (X_BED_SIZE) * 3 / 4 - (CLIP_W) / 2, 0, (X_BED_SIZE) * 3 / 4 + (CLIP_W) / 2, CLIP_H }
2072+
#define OBSTACLE3 { (X_BED_SIZE) / 4 - (CLIP_W) / 2, (Y_BED_SIZE) - (CLIP_H), (X_BED_SIZE) / 4 + (CLIP_W) / 2, Y_BED_SIZE }
2073+
#define OBSTACLE4 { (X_BED_SIZE) * 3 / 4 - (CLIP_W) / 2, (Y_BED_SIZE) - (CLIP_H), (X_BED_SIZE) * 3 / 4 + (CLIP_W) / 2, Y_BED_SIZE }
2074+
2075+
// The probed grid must be inset for G29 J. This is okay, since it is
2076+
// only used to compute a linear transformation for the mesh itself.
2077+
#define G29J_MESH_TILT_MARGIN ((CLIP_H) + 1)
2078+
#endif
2079+
20602080
#elif ENABLED(MESH_BED_LEVELING)
20612081

20622082
//===========================================================================
@@ -2309,7 +2329,7 @@
23092329
#endif
23102330

23112331
/**
2312-
* Clean Nozzle Feature -- EXPERIMENTAL
2332+
* Clean Nozzle Feature
23132333
*
23142334
* Adds the G12 command to perform a nozzle cleaning process.
23152335
*
@@ -2343,7 +2363,6 @@
23432363
* Before starting, the nozzle moves to NOZZLE_CLEAN_START_POINT.
23442364
*
23452365
* Caveats: The ending Z should be the same as starting Z.
2346-
* Attention: EXPERIMENTAL. G-code arguments may change.
23472366
*/
23482367
//#define NOZZLE_CLEAN_FEATURE
23492368

@@ -2711,7 +2730,7 @@
27112730

27122731
//
27132732
// Elefu RA Board Control Panel
2714-
// http://www.elefu.com/index.php?route=product/product&product_id=53
2733+
// https://web.archive.org/web/20140823033947/http://www.elefu.com/index.php?route=product/product&product_id=53
27152734
//
27162735
//#define RA_CONTROL_PANEL
27172736

@@ -3022,7 +3041,7 @@
30223041
* - Copy the downloaded DWIN_SET folder to the SD card.
30233042
*
30243043
* IA_CREALITY (T5UID1)
3025-
* - Download https://github.com/InsanityAutomation/Marlin/raw/CrealityDwin2.0_Bleeding/TM3D_Combined480272_Landscape_V7.7z
3044+
* - Download https://github.com/InsanityAutomation/Marlin/raw/CrealityDwin_2.0/TM3D_Combined480272_Landscape_V7.7z
30263045
* - Copy the downloaded DWIN_SET folder to the SD card.
30273046
*
30283047
* Flash display with DGUS Displays for Marlin:
@@ -3034,6 +3053,8 @@
30343053
//#define DGUS_LCD_UI ORIGIN
30353054
#if DGUS_UI_IS(MKS)
30363055
#define USE_MKS_GREEN_UI
3056+
#elif DGUS_UI_IS(IA_CREALITY)
3057+
//#define LCD_SCREEN_ROTATE 90 // Portrait Mode or 800x480 displays
30373058
#endif
30383059

30393060
//
@@ -3387,7 +3408,8 @@
33873408
// Use some of the NeoPixel LEDs for static (background) lighting
33883409
//#define NEOPIXEL_BKGD_INDEX_FIRST 0 // Index of the first background LED
33893410
//#define NEOPIXEL_BKGD_INDEX_LAST 5 // Index of the last background LED
3390-
//#define NEOPIXEL_BKGD_COLOR { 255, 255, 255, 0 } // R, G, B, W
3411+
//#define NEOPIXEL_BKGD_COLOR { 255, 255, 255, 0 } // R, G, B, W
3412+
//#define NEOPIXEL_BKGD_TIMEOUT_COLOR { 25, 25, 25, 0 } // R, G, B, W
33913413
//#define NEOPIXEL_BKGD_ALWAYS_ON // Keep the backlight on when other NeoPixels are off
33923414
#endif
33933415

Marlin/Configuration_adv.h

+47-40
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
*
3131
* Basic settings can be found in Configuration.h
3232
*/
33-
#define CONFIGURATION_ADV_H_VERSION 02010200
33+
#define CONFIGURATION_ADV_H_VERSION 02010300
3434

3535
// @section develop
3636

@@ -304,8 +304,8 @@
304304
#define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius
305305

306306
//#define ADAPTIVE_FAN_SLOWING // Slow part cooling fan if temperature drops
307-
#if BOTH(ADAPTIVE_FAN_SLOWING, PIDTEMP)
308-
//#define NO_FAN_SLOWING_IN_PID_TUNING // Don't slow fan speed during M303
307+
#if ENABLED(ADAPTIVE_FAN_SLOWING) && EITHER(MPCTEMP, PIDTEMP)
308+
//#define TEMP_TUNING_MAINTAIN_FAN // Don't slow fan speed during M303 or M306 T
309309
#endif
310310

311311
/**
@@ -375,7 +375,7 @@
375375
#endif
376376

377377
#if ENABLED(PIDTEMP)
378-
// Add an experimental additional term to the heater power, proportional to the extrusion speed.
378+
// Add an additional term to the heater power, proportional to the extrusion speed.
379379
// A well-chosen Kc value should add just enough power to melt the increased material volume.
380380
//#define PID_EXTRUSION_SCALING
381381
#if ENABLED(PID_EXTRUSION_SCALING)
@@ -384,7 +384,7 @@
384384
#endif
385385

386386
/**
387-
* Add an experimental additional term to the heater power, proportional to the fan speed.
387+
* Add an additional term to the heater power, proportional to the fan speed.
388388
* A well-chosen Kf value should add just enough power to compensate for power-loss from the cooling fan.
389389
* You can either just add a constant compensation with the DEFAULT_Kf value
390390
* or follow the instruction below to get speed-dependent compensation.
@@ -843,20 +843,20 @@
843843
//#define Z_MULTI_ENDSTOPS // Other Z axes have their own endstops
844844
#if ENABLED(Z_MULTI_ENDSTOPS)
845845
#define Z2_USE_ENDSTOP _XMAX_ // Z2 endstop board plug. Don't forget to enable USE_*_PLUG.
846-
#define Z2_ENDSTOP_ADJUSTMENT 0 // Z2 offset relative to Y endstop
846+
#define Z2_ENDSTOP_ADJUSTMENT 0 // Z2 offset relative to Z endstop
847847
#endif
848848
#ifdef Z3_DRIVER_TYPE
849849
//#define INVERT_Z3_VS_Z_DIR // Z3 direction signal is the opposite of Z
850850
#if ENABLED(Z_MULTI_ENDSTOPS)
851851
#define Z3_USE_ENDSTOP _YMAX_ // Z3 endstop board plug. Don't forget to enable USE_*_PLUG.
852-
#define Z3_ENDSTOP_ADJUSTMENT 0 // Z3 offset relative to Y endstop
852+
#define Z3_ENDSTOP_ADJUSTMENT 0 // Z3 offset relative to Z endstop
853853
#endif
854854
#endif
855855
#ifdef Z4_DRIVER_TYPE
856856
//#define INVERT_Z4_VS_Z_DIR // Z4 direction signal is the opposite of Z
857857
#if ENABLED(Z_MULTI_ENDSTOPS)
858858
#define Z4_USE_ENDSTOP _ZMAX_ // Z4 endstop board plug. Don't forget to enable USE_*_PLUG.
859-
#define Z4_ENDSTOP_ADJUSTMENT 0 // Z4 offset relative to Y endstop
859+
#define Z4_ENDSTOP_ADJUSTMENT 0 // Z4 offset relative to Z endstop
860860
#endif
861861
#endif
862862
#endif
@@ -1034,7 +1034,7 @@
10341034
//#define ASSISTED_TRAMMING
10351035
#if ENABLED(ASSISTED_TRAMMING)
10361036

1037-
// Define positions for probe points.
1037+
// Define from 3 to 9 points to probe.
10381038
#define TRAMMING_POINT_XY { { 20, 20 }, { 180, 20 }, { 180, 180 }, { 20, 180 } }
10391039

10401040
// Define position names for probe points.
@@ -1104,34 +1104,33 @@
11041104
// Add a Duplicate option for well-separated conjoined nozzles
11051105
//#define MULTI_NOZZLE_DUPLICATION
11061106

1107-
// By default pololu step drivers require an active high signal. However, some high power drivers require an active low signal as step.
1108-
#define INVERT_X_STEP_PIN false
1109-
#define INVERT_Y_STEP_PIN false
1110-
#define INVERT_Z_STEP_PIN false
1111-
#define INVERT_I_STEP_PIN false
1112-
#define INVERT_J_STEP_PIN false
1113-
#define INVERT_K_STEP_PIN false
1114-
#define INVERT_U_STEP_PIN false
1115-
#define INVERT_V_STEP_PIN false
1116-
#define INVERT_W_STEP_PIN false
1117-
#define INVERT_E_STEP_PIN false
1107+
// By default stepper drivers require an active-HIGH signal but some high-power drivers require an active-LOW signal to step.
1108+
#define STEP_STATE_X HIGH
1109+
#define STEP_STATE_Y HIGH
1110+
#define STEP_STATE_Z HIGH
1111+
#define STEP_STATE_I HIGH
1112+
#define STEP_STATE_J HIGH
1113+
#define STEP_STATE_K HIGH
1114+
#define STEP_STATE_U HIGH
1115+
#define STEP_STATE_V HIGH
1116+
#define STEP_STATE_W HIGH
1117+
#define STEP_STATE_E HIGH
11181118

11191119
/**
11201120
* Idle Stepper Shutdown
1121-
* Set DISABLE_INACTIVE_? 'true' to shut down axis steppers after an idle period.
1121+
* Enable DISABLE_INACTIVE_* to shut down axis steppers after an idle period.
11221122
* The Deactive Time can be overridden with M18 and M84. Set to 0 for No Timeout.
11231123
*/
11241124
#define DEFAULT_STEPPER_DEACTIVE_TIME 120
1125-
#define DISABLE_INACTIVE_X true
1126-
#define DISABLE_INACTIVE_Y true
1127-
#define DISABLE_INACTIVE_Z true // Set 'false' if the nozzle could fall onto your printed part!
1128-
#define DISABLE_INACTIVE_I true
1129-
#define DISABLE_INACTIVE_J true
1130-
#define DISABLE_INACTIVE_K true
1131-
#define DISABLE_INACTIVE_U true
1132-
#define DISABLE_INACTIVE_V true
1133-
#define DISABLE_INACTIVE_W true
1134-
#define DISABLE_INACTIVE_E true
1125+
#define DISABLE_INACTIVE_X
1126+
#define DISABLE_INACTIVE_Y
1127+
#define DISABLE_INACTIVE_Z // Disable if the nozzle could fall onto your printed part!
1128+
//#define DISABLE_INACTIVE_I
1129+
//#define DISABLE_INACTIVE_J
1130+
//#define DISABLE_INACTIVE_K
1131+
//#define DISABLE_INACTIVE_U
1132+
//#define DISABLE_INACTIVE_V
1133+
//#define DISABLE_INACTIVE_W
11351134

11361135
// Default Minimum Feedrates for printing and travel moves
11371136
#define DEFAULT_MINIMUMFEEDRATE 0.0 // (mm/s. °/s for rotational-only moves) Minimum feedrate. Set with M205 S.
@@ -1429,12 +1428,10 @@
14291428

14301429
#endif // HAS_MARLINUI_MENU
14311430

1432-
#if ANY(HAS_DISPLAY, DWIN_LCD_PROUI, DWIN_CREALITY_LCD_JYERSUI)
1431+
#if HAS_DISPLAY
14331432
//#define SOUND_MENU_ITEM // Add a mute option to the LCD menu
14341433
#define SOUND_ON_DEFAULT // Buzzer/speaker default enabled state
1435-
#endif
14361434

1437-
#if EITHER(HAS_DISPLAY, DWIN_LCD_PROUI)
14381435
// The timeout to return to the status screen from sub-menus
14391436
//#define LCD_TIMEOUT_TO_STATUS 15000 // (ms)
14401437

@@ -1457,6 +1454,9 @@
14571454
// Show the E position (filament used) during printing
14581455
#define LCD_SHOW_E_TOTAL
14591456

1457+
// Display a negative temperature instead of "err"
1458+
//#define SHOW_TEMPERATURE_BELOW_ZERO
1459+
14601460
/**
14611461
* LED Control Menu
14621462
* Add LED Control to the LCD menu
@@ -1483,7 +1483,7 @@
14831483
#endif
14841484
#endif
14851485

1486-
#endif // HAS_DISPLAY || DWIN_LCD_PROUI
1486+
#endif // HAS_DISPLAY
14871487

14881488
// Add 'M73' to set print job progress, overrides Marlin's built-in estimate
14891489
//#define SET_PROGRESS_MANUALLY
@@ -2091,7 +2091,7 @@
20912091
#define BABYSTEP_ZPROBE_OFFSET // Combine M851 Z and Babystepping
20922092
#if ENABLED(BABYSTEP_ZPROBE_OFFSET)
20932093
//#define BABYSTEP_HOTEND_Z_OFFSET // For multiple hotends, babystep relative Z offsets
2094-
#define BABYSTEP_ZPROBE_GFX_OVERLAY // Enable graphical overlay on Z-offset editor
2094+
#define BABYSTEP_GFX_OVERLAY // Enable graphical overlay on Z-offset editor
20952095
#endif
20962096
#endif
20972097

@@ -2124,7 +2124,6 @@
21242124
#endif
21252125
//#define ADVANCE_K_EXTRA // Add a second linear advance constant, configurable with M900 L.
21262126
//#define LA_DEBUG // Print debug information to serial during operation. Disable for production use.
2127-
//#define EXPERIMENTAL_SCURVE // Allow S-Curve Acceleration to be used with LA.
21282127
//#define ALLOW_LOW_EJERK // Allow a DEFAULT_EJERK value of <10. Recommended for direct drive hotends.
21292128
//#define EXPERIMENTAL_I2S_LA // Allow I2S_STEPPER_STREAM to be used with LA. Performance degrades as the LA step rate reaches ~20kHz.
21302129
#endif
@@ -2559,9 +2558,17 @@
25592558
* Extra G-code to run while executing tool-change commands. Can be used to use an additional
25602559
* stepper motor (e.g., I axis in Configuration.h) to drive the tool-changer.
25612560
*/
2562-
//#define EVENT_GCODE_TOOLCHANGE_T0 "G28 A\nG1 A0" // Extra G-code to run while executing tool-change command T0
2563-
//#define EVENT_GCODE_TOOLCHANGE_T1 "G1 A10" // Extra G-code to run while executing tool-change command T1
2564-
//#define EVENT_GCODE_TOOLCHANGE_ALWAYS_RUN // Always execute above G-code sequences. Use with caution!
2561+
//#define EVENT_GCODE_TOOLCHANGE_T0 "G28 A\nG1 A0" // Extra G-code to run while executing tool-change command T0
2562+
//#define EVENT_GCODE_TOOLCHANGE_T1 "G1 A10" // Extra G-code to run while executing tool-change command T1
2563+
//#define EVENT_GCODE_TOOLCHANGE_ALWAYS_RUN // Always execute above G-code sequences. Use with caution!
2564+
2565+
/**
2566+
* Consider coordinates for EVENT_GCODE_TOOLCHANGE_Tx as relative to T0
2567+
* so that moves in the specified axes are the same for all tools.
2568+
*/
2569+
//#define TC_GCODE_USE_GLOBAL_X // Use X position relative to Tool 0
2570+
//#define TC_GCODE_USE_GLOBAL_Y // Use Y position relative to Tool 0
2571+
//#define TC_GCODE_USE_GLOBAL_Z // Use Z position relative to Tool 0
25652572

25662573
/**
25672574
* Tool Sensors detect when tools have been picked up or dropped.

Marlin/Version.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@
4141
* here we define this default string as the date where the latest release
4242
* version was tagged.
4343
*/
44-
//#define STRING_DISTRIBUTION_DATE "2023-01-12"
44+
//#define STRING_DISTRIBUTION_DATE "2023-02-27"
4545

4646
/**
4747
* Defines a generic printer name to be output to the LCD after booting Marlin.

0 commit comments

Comments
 (0)