Releases: MarlinFirmware/Marlin
Marlin 1.0.2-3
- Remove extraneous PlatformIO files from the branch.
- Update
README.md
with latest layout and info.
Marlin 2.1
Marlin 2.1 contains all patches from 2.0.9.4 in addition to…
New Features
Improvements
Configuration
- 💥 Num Axes / Multi-Stepper based on Driver Types (#24106, #24120)
- 🔧
LEVEL_BED_CORNERS
=>LCD_BED_TRAMMING
Issues Fixed
- 🐛 Fix
BACKLASH_COMPENSATION
compile (#24072) - 🩹 Fix some parameters w/out values (#24051)
- 🎨 Fix/adjust warnings (#24225)
- 🚩 MPC update (#24253)
- 💥 Change
M306 M
toM306 H
(#24258)
Build / Upload
For Developers
Marlin 2.0.9.4
This release brings some major changes to Marlin, along with a few known issues. If you encounter any problems with Marlin 2.0.9.4, upgrade to 2.0.9.5 or 2.1.1, or try the nightly build of bugfix-2.1.x and please report any difficulties.
New Features
- ✨
M919
: Chopper Timing (#23400) - ✨
M81 D / S
- Power-off Delay (#23396, #23455) - ✨ Temperature variance monitor (#23373)
- ✨ Firmware Upload via Binary Transfer (#23462)
- ✨ MagLev V4 probe by MDD (#23192)
- ✨ Long filename open/create/write (#23526)
- ✨ Optional
HOST_STATUS_NOTIFICATIONS
(#22833) - ✨ More Nozzle Park move options (#23158)
- ✨ Dyze Design PT100 Amplifier Board (#23760)
- ✨ LCD Backlight Timer (#23768)
- ✨
M21 P
/S
/U
- Select Volume (#23780) - 🚸
M401 H
- Report BLTouch HS State (#23724) - ✨ ESP32 - Hardware PWM for fan, cutter, servos (#23802)
- ✨ Encoder button noise filter (#23925)
- ✨
STATUS_MESSAGE_TIMEOUT_SEC
(#23135) - ✨ Configurable FREEZE pin state (#23944, #23948)
- ✨ Add
M3426 A<addr>
parameter (#24130) - ✨
SOUND_ON_DEFAULT
option (#24102) - ⚗️ Temperature Model Predictive Control (#23751, #23983, #23984, #24018, #24049, #24059)
- ✨ Autoreport Redundant Sensor option (#24014)
- ✨ DOGM Display Sleep (#23992)
- ✨ Laser Safety Timeout (#24189)
New Boards
- ✨
BOARD_CREALITY_V24S1_301
(#23620) - 📌 Distinct
BOARD_CREALITY_V422
(#23674) - ✨ Add ZRIB v53, patch
G35
Z drop, related issues (#23636) - ✨ SAMD51 Bricolemon / Bricolemon Lite boards (#23658)
- ✨ Pxmalion Core i3 (#23711)
- ✨ MKS Robin Nano 3.1 (#23795)
- ✨ Weedo 62A Tina2 / Monoprice Cadet (#23817)
- 📌 PandaPi V2.9 – Standalone mode (#23908)
- ✨ enwi ESPNP (#24029)
- ✨ Creality CR-10 SmartPro (#24151)
- ✨ Add
BOARD_CREALITY_V24S1_301F4
- ✨ BigTreeTech SKR3 - STM32H743 (#24271, #24272, #24275)
Improvements
- 🚸 Do
G34
"Z Backoff" at full current - 🚸 Include extra axes in position report (#23490)
- ⚡️ SPI+DMA+interrupt method (STM32 / MKS UI) (#23464)
- ⚡️ Tuned Thermistor 66 (T-D500) (#23585)
- 🚸 Restore active tool after ABL
G29
(#23692) - 🩹 Simplify quick homing feedrate (#23714)
- ⚡️ Apply PTC on all probing (#23764)
- 🚸 Universal
X_AXIS_TWIST_COMPENSATION
(#23828) - ⚡️ Use
seen_test
inM422
- 🚸 Improve
M422
error messages - 🚸 Fix, extend X Axis Twist Compensation (#23745, #23911)
- ⚡️
G12
- Only require used axes to be homed (#23422) - ⚡️ Fix noisy ADC - 16x oversampling with 12-bit ADC (#23867)
- 🚸 Allow one servo with cutter on RAMPS
- 🚸 Clear "heating/cooling" message on temp reached
- 🚸 Prevent accidental button press
- 🩹 Adjust
manage_media
for slow/late media init (USB FD) (#24015) - ⚡️ Improve Sensorless homing/probing accuracy for
G28
,G33
,M48
(#24220)
Issues Fixed
- 🚸 Refine stepper-driver-related G-codes (#23372)
- 🐛 Fix
EEPROM_INIT_NOW
build hash test (#23479) - 🐛 Fix
strlen_P
parameter error - 🐛 Fix Artillery Ruby (startup code, build flags) (#23446)
- 🚑️ Fix preheat target bug
- 🚑️ Fix
M105
regression (#23505) - 🐛 Fix
M852
report (#23660) - 🐛 Fix
XYZEval::set(XY, Z)
and (XY, Z, E) (#23704) - 🐛 Fix XATC divide-by-zero (#23743)
- 🐛 Fix, improve PWM on AVR (#23463, #23520)
- 🐛 Fix conditional
M81
suicide (#23549) - 🐛 Fix SPI DMA and default mode (#23627)
- 🐛 Fix AVR 644/1284 Timer / PWM conflicts (#23629)
- 🍻 STM32
set_pwm_duty
"on/off" for digital pins (#23665) - 🩹 Prevent Z error with UBL + Park unscaled E move (#23568)
- 🐛 Fix dual MAX31865 initialization issues (#23496)
- 🐛 Fix missing
u8g_esp32_spi
(#23562) - 🐛 Fix init of delta safe height (for
G29
,G33
, etc.) (#23622) - 🚸 Fix, Improve Power-Loss Recovery (#22828)
- 💥 Change
M42 M
toM42 T
- ✏️ Fix
getLFNName
parameter (#23752) - 🐛 Fix TMC26X CS pins init (#23778)
- 🐛 Fix steps-to-mm with backlash (#23814)
- 🐛 ESP32
_delay_ms
, fixu8g_esp32_spi.cpp
(#23810) - 🐛 Fix backlash applied steps when config changes (#23826)
- 🐛 Fix
M_State_grbl
whenG29
callsG28
- 🩹 Improve and apply XATC
reset()
(#23840) - 🐛 Emergency Parser with STM32 Mass Storage (#23827)
- 🐛 Fix
G29
(#23887) - 🐛 Fix UBL
G29 Q1
bug - 🐛 Fix Chiron new TFT SD print after reset (#23855)
- 🩹 Fix ADC math overflow
- 🩹 Print English to serial out
- 🐛 Fix
status_printf
alert level - 🐛 Fix MMU2 buzz (#23943, #23950)
- 🐛 Use
ADC_VREF
for Filament Width ADC Vref (#23977) - 🐛 Prevent BABYSTEP freeze
- 🩹 Fix
PRINTCOUNTER
withEXTRUDERS
0 (#24063) - 🚸 Home Y before X on belt printers
- 🐛 Home Z to Max after
Z_SAFE_HOMING
- 🩹 Apply 100% leveling correction below the bed
- 🐛 Fix STM32 Pins Debugging (#22896)
- ♻️ Refactor and fix ABL Bilinear (#23868, #24009, #24107)
- 🐛 Update
M913
,M914
report - 🩹 Fix
DEBUG_CARDREADER
(#24023) - 🩹 Fix
ADVANCED_PAUSE_RESUME_PRIME
check - 🩹 Fix ESP32 servos,
SD_IGNORE_AT_STARTUP
- ✏️ Fix Markforged endstops/
G38
(#24141) - 🩹 Fix Fan Tail Speed Init (#24076)
- 🩹 Fix accel dividend
- 🐛 Fix
AIR_ASSIST
(#24162) - 🩹 Run TMC test last in setup (#24160)
- 🐛 Fix Due
cli
/sei
(#24182) - 🐛 Fix
FTDI_EVE_TOUCH_UI
reboot loop (#24195) - 🐛 Fix Polargraph
G92
command (#24223) - 🐛 Fix
SEGMENT_LEVELED_MOVES
with UBL - 🐛 Fix Leveling apply/unapply (#24188)
- 🩹 Fix
G60
/G61
debug code (#24231) - 🐛 Fix
M203
report - 🐛 Fix min/max temp evaluation
- 🐛 Fix Tool Change priming (#21142)
- 💥 Change
M201 G
toS
- 🐛 Init Stepper SPI before PSU Control (#24269)
Boards / Pins
- 🎨 Pins and SDIO cleanup
- 📝 Consistent pin header orientation
- 🔧 Normal FET layout with Spindle/Laser (#23409)
- 🩹 RAMPS FET order overridable, E + Laser (#23428)
- 🩹 Fix RADDS+RRD encoder button
- 🐛 Fix EZBoard V2 (#23648, #23659, #23857)
- 🐛 Patch Creality RAMPS FET / FAN pins
- 🐛 Fix Ultimain 2 E-autofan pin mapping (#23466)
- 🐛 Finish and organize temp sensors (#23519)
- 🐛 Fix Octopus v1.x probe pin (#23548)
- 🐛 Fix RAMPS 1.4 Plus EXP headers (#23523)
- 📌 RAMPS AUX 1-2 headers (#23544)
- 🩹 Fix Robin Nano
BOARD_INIT
- 🧑💻 Fix up some AUX / EXP pins (#23577)
- 🐛 Fix FYSETC S6, S6 V2 Serial RX pins (#23642)
- 🐛 Creality v4 cleanup, pin correction (#23666)
- 🐛 Fix RUMBA + MKS Mini12864 Neopixel pin (#23646)
- 🧑💻 Update MightyBoard FET pins (#23728)
- 📌 Creality RAMPS optional
SD_DETECT_PIN
(#23740) - 📌 Fix, extend Index Rev03 Mobo (#23851)
- 🐛 MKS TinyBee - 2.5V ADC Vref (#23903)
- 🐛 Some EEPROM size fixes (#24113)
- 🐛 Fix MightyBoard Rev. E EX2, extra MOSFETs (#23976)
- 📌 SKR Mini V1.1 TMC UART Pins (#23970)
- 🩹 SKR2 Pins DIAG flag (#23968)
- 🐛 Fix MKS Gen. L - EEB (#23965)
- 🩹 Use
LCD_CONTRAST_INIT
in pins files - 📌 Define
RAMPS_SMART
EXP headers, AZSMZ_12864 - 🐛 Fix Mightyboard LED pin, fan override (#24168)
- 🚸 Improve MKS SGEN_L V2, Robin Nano V3 pins (#24147)
- 🐛 Fix FLSUN Hispeed
FIL_RUNOUT_PIN
, MKS Robin Mini TFT pins (#24204) - 🎨 Add EXP1/2 headers, adjust TFT pins (#24230)
- 🎨 Remove MKS custom pins, TinyBee cleanup (#24186)
- 📝 Fix Mightyboard MOSFET comments (#24183)
- 📌 Tenlog PSU pin (#24266)
Configuration
- 🩺 Assert
FAN_SOFT_PWM
where required (#23383, #23477) - 🚸 Suppressible pin warnings (#23530)
- 🔨 Suppressible
CONFIGURATION_EMBEDDING
warning (#23545) - 🎨
LCD_SCREEN_ROT_*
=>LCD_SCREEN_ROTATE
- 🎨 Move
PROPORTIONAL_FONT_RATIO
- 🚸 Use
Z_STEPPER_ALIGN_STEPPER_XY
to enable - 🔧
DWIN_CREALITY_LCD_ENHANCED
=>DWIN_LCD_PROUI
- 🔧 Move
LASER_COOLANT_FLOW_METER
toLASER_FEATURE
- 🔧 Allow board & probe dummy thermistors (#24165)
- 🔧 Remove
LCD_SERIAL_PORT
defaults, warn on auto-assign (#24170)
LCD / Controller
- 🩹 Fix Enhanced UI max E speed (#23387)
- 🐛 Fix RRW Keypad & Zonestar buttons (#23388)
- 🔧 Check Chiron LCD requirements (#23353)
- 📌 Define MKS Monster8 pins for MKS_MINI_12864
- 🩹 Reset DWIN CrealityUI print progress on start (#23481)
- 🚸 DWIN Enhanced improve, fix, and extend (#23240)
- 🎨 E3V2 corner leveling => tramming (#23375)
- 🔧
DWIN_MARLINUI
sanity checks (#23399) - 📺 Tune
ULTI_CONTROLLER
encoder, enable PCA9632 (#23461) - 📌
LCD_FOR_MELZI
for BTT E3 RRF (#23453) - 🚸 BLTouch HS menu item for DWIN Enhanced UI (#23480)
- 🚸 12345.6 num-to-string
- 🚸 Wait for cooldown in
MarlinUI
power-off (#23476) - 🚸 Fix E3V2 Enhanced UI time labels (#23502)
- 💄 MarlinUI+DOGM leveled bed bitmaps (#23539)
- 🐛 Fix PLR for E3V2 Enhanced UI (#23543)
- 💄 Improve Ender3 v2 DWIN MarlinUI (#23369)
- ✨ Z Offset Wizard for
TFT_LVGL_UI
(English) (#23489) - 🐛 Fix LCD contrast/brightness init (#23567)
- 🐛 Fix Creality DWIN LCD with SKR Mini E3 V3 (#23593)
- 🐛 Fix DGUS_Reloaded G-code execution (#23592)
- 🚸 Better "Bed Tramming Done" dialog (#23616)
- 🩹 Init brightness/contrast later (#23645)
- 🚸 Align MKS UI heated bed status with
HAS_MULTI_HOTEND
(#23718) - ✏️ Fix E3V2 display with BTT SKR Mini E3 v3 (#23719)
- ♻️ No
ui.reinit_lcd
on anyExtUI
(#23722) - 🚸 Case Light, LED menus for E3V2 DWIN Enhanced UI (#23590)
- 🚸 Enhanced UI => Professional UI - with updates (#23624, #23878)
- 📺 BTT SKR Mini E3 with Fysetc V2.1 / MKS V3 / BTT V1 Mini 12864 (#23793)
- ⚡️ E3V2 blank bg for S1 compatibility (#23822)
- 🩹 Fix DWIN E3V2 display issues by allowing re-init (#23879)
- 📌 Custom cable for Mini 12864 V1 + SKR Mini E3 V3.0 (#23936)
- 🐛 Fix
MarlinUI
on Ender 3 S1 (#23949) - 🩹 Fix "elapsed" text on DOGLCD (#24087)
- 🐛 Fix
MKS_MINI_12864
build for ESP32 (#24071) - 🩹 Fix and clean up E3V2 draw (#23979, #24013)
- 🐛 Fix Manual Move cold extrude override (#24045, #24176)
- 🚸 Preheat menu improvements (#24017)
- 🐛 Fix PID edit menu for Bed, Chamber (#23987)
- ✏️ Fix FYSETC Mini Panel neopixel type (#24011, #24111)
- 🩹 Fix
DGUS_PREHEAT_UI
enable withDGUS_LCD_CLASSIC
(#24066) - 🐛 Fix ProUI / JyersUI leveling preheat (#24060, #24064)
- 🚸 More
ExtUI
events for ABL / UBL - 🚸 DWIN/DACAI for Creality 4.2.3 (#24132)
- 🚸 ProUI APRIL2022 updates (#24084)
- 🔧 Bed/Chamber PID A...
Marlin 2.0.9.3
This release includes many fixes and improvements from contributors, testers, and co-developers.
Issues Fixed
- 🐛 Fix SKR Mini E3 V2 I2C-based EEPROM (#22919, #22955)
- 🐛 Fix MKS Robin Pro 1.0 LCD reset pin (#22937)
- 🐛 Fix
G33
homing current (#22909) - 🐛 Fix Tool Change Park (#22968)
- 🐛 Fix JyersUI ZOffset Multiplication (#22975)
- 🐛 Fix probe temp compensation maths (#23004)
- 🐛 More explicit allocation of solenoids (f179e25)
- 🐛 Fix Ender-3 V2 Enhanced SetFlow (#23016)
- 🐛 Fix børken
E_DUAL_STEPPER_DRIVERS
(#23017) - 🐛 Fix
Y_SERIAL_RX_PIN
for FYSETC S6 (#23055) - 🐛 Fix
NEOPIXEL2_SEPARATE
default color (#23057) - 🐛 Fix serial_data_available (#23160)
- 🐛 Fix IDEX Duplication Mode Positioning (#22914)
- 🐛 Fix homing current for extra axes (#23152)
- 🐛 Fix loud_kill heater disable (#23314)
- 🐛 Fix IDEX +
DISABLE_INACTIVE_EXTRUDER
(#22925) - 🐛 Fix max chamber fan speed (#22977)
- 🐛 Fix
AUTOTEMP
bug (thermal runaway) (#23025) - 🐛 Fix serial
PORT_RESTORE
(andBUFFER_MONITORING
) (#23022) - 🐛 Fix MKS Robin E3/E3D Z Stop/Probe pins (#23034)
- 🐛 Fix EZBoard V2 board name (e8a5597)
- 🐛 Fix TFT backlight [STM32] (#23062)
- 🐛 Prevent AVR watchdogpile (#23075)
- 🍻 Get/clear reset source earlier (9b76b58)
- 🩹 Fix
M503
report (#23084) - 🐛 Fix FYSETC Cheetah 2.0 pins for production (#23104)
- 🐛 [LCP1768] Init PWM in set_pwm_duty (#23110)
- 🐛 Fix
SENSORLESS_HOMING
for 6-axis (cb1570d) - 🐛 Fix
G33
, Delta radii, reachable (#22795) - 🐛 Fix fast PWM WGM code (feffc19)
- 🐛 Init
PROBE_ENABLE_PIN
(#23133) - 🐛 Fix TFT backlight sleep/wake (#23153)
- 🐛 Fix STM32 set_pwm_duty (#23125)
- 🐛 Fix STM32 FastPWM (77af48e, 52a44eb)
- 🐛 Fix
TIMER_TONE
for ZM3E4 (#23212) - 🐛 Fix
env:chitu_f103
(#23225) - 🐛
HAL_reboot
for native HAL (#23246) - 🐛 Fix
TWIBus
Wire.begin
call (#23183) - 🐛 Fix
Endstops::report_states
(#23280) - 🐛 Fix MARLIN_F103Rx variant SCK / MOSI pins (#23282)
- 🐛 Fix
TFT_COLOR_UI
Release Media issue (#23123) - 🐛 Fix Chitu
Z_STOP_PIN
(#23330) - 🐛 Fix Robin Nano v3 filament runout pins (#23344)
- 🏗️ Fix Maple HAL/STM32F1 PWM (#23211)
- 🐛 Fix and improve MAX31865 (#23215)
G-Code Changes
- ✨
M261 S
I2C output format (#22890)
New Features
- ✨ Add option
EVENT_GCODE_TOOLCHANGE_ALWAYS_RUN
(#22960) - 🐛 Add
USE_TEMP_EXT_COMPENSATION
options (#23007) - ✨ Shutdown Host Action (#22908)
- ✨ Allow Low EJERK with LA, optional (#23054)
- ✨
M3426
to read i2c MCP3426 ADC (#23184) - ✨
M115
flagEXTENDED_M20
(#22941) - 🧑💻 Option allowing > 127 Neopixels (#23322)
- ✨ Support for BIQU B1-SE-Plus strain gauge probe (#23101)
- ✨ Fan tachometer support (#23086, #23180, #23199)
- ✨ MarkForged YX kinematics (#23163)
- ✨ X Twist Compensation & Calibration (#23238)
- ✨ Configuration embedding (#21321, #23303)
- ✨ Option to reset EEPROM on first run (#23276)
- ✨ BLTouch High Speed mode runtime configuration (#22916, #23337)
- ✨ Per-axis TMC hold multiplier (#23345)
New LCD / Controller
- ✨ BigTreeTech TFT35 SPI V1.0 (#22986)
- ✨ WYH L12864 LCD (Alfawise Ex8) (#22863)
- ✨ BigTreeTech Mini 12864 V1.0 (#23130)
New Boards
- ✨ ESP32 Panda_ZHU and Panda_M4 (#22644)
- ✨ MKS Eagle (STM32F407VET6) board (#22897)
- ✨ Eryone Ery32 mini (STM32F103VET6) board (#22956)
- ✨ Creality v2.4.S1 (Ender 7) board (#23010)
- ✨ BTT Octopus Pro V1.0 (STM32F446ZET6) (#22971)
- ✨ BTT Octopus Pro V1.0 (STM32F429ZGT6) (#23008, #23072)
- ✨ "Rutilea" ESP32 board (#22880)
- ✨ Artillery Ruby (STM32F401RCT6) (#23029)
- ⚡️ BTT002 (STM32F407VET6) variant,
MK3_FAN_PINS
flag (#23093) - ✨ FYSETC Spider v2.2 (#23208)
- ✨ BigTree SKR 2 with F429 (#23177)
- ✨ EasyThreeD ET4000+ board and UI (#23080)
- ✨ BigTreeTech SKR mini E3 V3.0 (STM32G0B1RET6) (#23283)
- ✨ Creality3D V4.2.3 / Ender-2 Pro board (#23307)
- ✨ MKS TinyBee (#23340)
Improve Boards/Pins
- 🎨 Define Octopus allocated endstop pins (#22882)
- 🩹 Adjust GTR 1.0 ST7920 display delay (#22904)
- 💡 Sub-include pins labels (b108741)
- ⚡️ Add'l PCINTs for Mega Extended (#23019)
- ⚡️ Formbot ST7920 delays, intentional X2 pins (#22915)
- 🎨 Refactor MOSFET pins layout (#22983)
- 🩹 Retain LCD pins with motor expansion (#23024)
- 📌 Default NeoPixel pin for MKS Robin E3/E3D (#23060)
- 📌 'STOP' auto-assign, some Chitu V9 pins (#22889)
- 🎨 MPX ARM Mini pins cleanup (#23113)
- 🩹 UM2 extruder cooling fan on PJ6 (#23194)
- 🩹 Assume 4K EEPROM for RUMBA32 BTT (#23205)
- 🔧 Cutter pins for SKR 2.0 (05b5727)
- 📌 More Longer3D LKx Pro serial tests (#23260)
- 🚸 Onboard SD for SKR 2.0 / SKR PRO (#23274)
- 📌 Overridable probe-related pins (#23107)
Improvements
- 🚸 Default T0 for
M569
,M906
,M913
(#23020) - 🚸 Tweaks to UBL
G29 Q
(12f8168) - 🚸 More flexible Probe Temperature Compensation (#23033)
- ⚡️ Controller Fan software PWM (etc.) (#23102)
- 🚸 Simplify touchscreen calibration for SimUI (#23124)
- ⚡️ Reduce calls to set fan PWM (#23149)
- 🚸 Park nozzle on "loud kill" (#23172)
- 🩹 SD abort requires open file (daa8fff)
- 🩹 Init fan speed at boot (#23181)
- 🚸 Use
M600
for disabled MMU (#21865)
Configuration
- 🔧 Remove obsolete
G34
sanity check (#22929) - 🔧 Safety feature warnings (522cdd5)
- ✅ Warn about dummy thermistors (c3a4e6b)
- 🔨 Move Creality 4.2.2 warning (49e8def)
- 🔧 Add, update TFT sanity checks (#22928)
- 🔧 Fewer alerts about
Z_SAFE_HOMING
(a0da7e8) - 🔧 Configuration version 02000903 (6f59d81)
- 💚 Update Ender-3 V2 config path (692c9a6)
- 🔧 Endstop / DIAG homing conflict warning (#23050)
- 🔧 Fix unknown board test (c781ecc)
- 🔧 Warning for
IGNORE_THERMOCOUPLE_ERRORS
(#23312) - 🚑️
FAST_PWM_FAN
default 1KHz base freq. (#23326) - 🔧 Sanity check
MMU2_MENUS
(226ee7c) - 🚸 Expose sub-options for E3V2 Enhanced (#23099)
- 🔧
SOUND_MENU_ITEM
for E3V2 (884308f) - 🔧 Chamber Fan index option (#23262)
- 🔧 Group
FAST_PWM_FAN
options (#23331) - 🔧 Move
MOTHERBOARD
closer to top (677568e)
Build / Upload
- 🐛 Fix Arduino IDE compile error (#22877)
- 🩹 Fix EXTRUDER 0 compile warning (#22868)
- 🐛 Fix FYSETC Cheetah v2.0 build (#22926)
- 🎨 Fix
pinsDebug_list
warnings (5f6d9e9) - 🔨 Fix older GCC
CXXFLAGS
warning (3015842) - 🎨 Fix redefine warnings (#23061)
- 🎨 Suppress type warning (#22976)
- 🐛 Fix MMU1 compile (#22965)
- 🎨 Pragma GCC cleanup (aa198e4)
- 🩹 Fix pragma ignored for older GCC (#22978)
- 🩹 Fix RGB case light compile (#23108)
- 🩹 Fix include path (#23150)
- 🩹 Fix non-PWM cutter compile (#23169)
- 🐛 Fix
LCD_BED_LEVELING
compile (#23298)
Build Env
- 🔨 Add 'opt_find' to find matching options (40cb7cf)
- 🔨 Port libsdl2_net required for macOS simulator (99d51af)
- 🔨 Update 'pio vscode init' detection (2c6fe45)
- 🔨 Delete after encrypt. Lerdge encrypt only once (b4904cc)
- 🔨 Help for GDB remote debugging (5cbb820)
- 🔨 Support ABM in mf scripts (20c7477)
- 🔨 Update git helper scripts (5efef86)
- 🔨 Script 'mfprep' finds pending commits (a0a5740)
- 🔨 Fix IntelliSense / PIO conflicts (#23058)
- 🔨 Port libsdl2_net required for macOS simulator (1d8941d)
- 🔨 Bring Makefile up to date (f637e1c)
- 🔨 Configurable firmware bin filename (a2349fc)
Language
- 🚸 Change "SD" to "Media" or "SD/FD" (#23297)
User Interface
- 🐛 Fix ExtUI Pause messages (#22874)
- 🐛 Fix E3V2 width/height defines (#22994)
- 🐛 Fix JyersUI current positions (scaling) (#23005)
- 🚸 E3V2 Enhanced cosmetic fixes (#23009, #23100)
- 🎨 Update MKS UI for no bed, extruder (#22938)
- 🚸 Tweak MKS UI G-code console (af08f16)
- 🐛 Fix JyersUI
SHOW_REMAINING_TIME
(#22999) - 🐛 Fix E3V2 (CrealityUI) position display (#23023)
- 🚸 Scroll long filename on MKS TFT (#23031)
- 🐛 Fix E3V2 (CrealityUI) Tune/Prepare > Zoffset (#23040)
- 🐛 Fix DGUS Reloaded status message (#23090)
- 🐛 Fix JyersUI scrolling filename, etc. (#23082)
- 🚸 Indicate Preheating for probe / leveling (#23088)
- 🚸
LCD_SHOW_E_TOTAL
forTFT_COLOR_UI
(#23127) - 🐛 Fix
ACTION_ITEM
with nullptr (#23195) - 🐛 Fix MKS LVGL UI retraction (#23267)
- 🚸 Show
MM'SS
during first hour (#23335)
For Developers
- 🔨 Improve 'mftest' error message (61b574f)
- 🎨 Tweak FORCE_INLINE (d137f30)
- 🩹 Fill gaps in
pinsDebug_list
(#23051) - 🎨 Axis name string interpolation, with examples (#22879)
- 🎨 Update F string declarations (433a27e)
- 🎨 Apply
F()
to E3V2 titles, popups (59503c6) - 🎨 Apply
F()
to G-code subcommands (2b9ae0c) - 🎨 Apply
F()
to G-code suite and queue (46c53f6) - 🎨 Apply
F()
to serial macros (433eedd) - 🎨 Apply
F()
to status message (360311f) - 🎨 Apply
F()
to Host Actions strings (7626d85) - 🎨 Apply
F()
to some ExtUI functions (c3ae221, d9f7de7) - 🎨 Apply
F()
to UTF-8/MMU2 string put (9cf1c3c) - 🎨 Apply
F()
to G-code report header (cabd538) - 🎨 Apply
F()
to various reports (24dbece, d48cb11) - 🎨 Apply
F()
to MKS UI errors, assets (492d704) - 🎨 Apply
F()
to kill / sendinfoscreen (3d102a7) - 🎨 Refactor Host Actions as singleton (f80bcdc)
- 🎨 Add MKS UI goto_previous_ui (de77dfc)
- 🎨 Define
HAS_PREHEAT
conditional (84f9490) - 🎨 Standard material presets behavior (205d867)
- 🎨 Standard 'cooldown' method (d29a901)
- ⚗️ Use pwm_set_duty over analogWrite to set PWM (#23048)
- 🍻 Preliminary fix for Max31865 SPI (#22682)
- 🏗️
Planner::busy()
(#23145) - 📌 Biqu BX temporary framework workaround (#23131)
- 🩹 Handle
nullptr
inCardReader::printLongPath
(#23197) - 🩹 Coerce
pin_t
inset_pwm_duty
macros (#23273) - 🎨 Rename HAL timer elements (9b1c0a7)
- 🏗️ Rework STM32 timer frequency protection (#23187)
General Cleanup
Marlin 2.0.9.2
This maintenance release includes many fixes and improvements from contributors, testers, and co-developers.
G-Code Changes
- ✨
M115
: Axis Count (#22219) - ✨ Enable
M20 L
withLONG_FILENAME_HOST_SUPPORT
(#22271) - ✨
M256
LCD brightness (#22478) - ✨
D576
Buffer Monitoring (#19674) - ✨
M76
Host Pause Feature (#21738) - 🚸
G33 R
andO
options (#22707) - ✨
M282 Pn
- Detach Servo (i.e.,M280 Pn S-1
) (#22760)
New LCD / Controller
- ✨ Ender-3 V2 Display for SKR E3 Turbo (#22229)
- ✨ DWIN LCD for BTT SKR Mini E3 (#22288)
- ✨ MKS Mini12864 v3 for MKS Robin Nano V2/3 (#22285)
- ✨ MKS Mini12864 v3 for Robin E3/E3D (#22368)
- ✨ Add
DGUS_LCD_UI_RELOADED
(#21931) - 📺 MKS MINI12864 V3 for Robin E3P, etc. (#22453)
- ✨ Ender-3 V2 DWIN LCD with MarlinUI (#22594)
- ✨ Ender-3 V2 DWIN LCD with JyersUI (#22422, 3ee27e7, #22745)
- ✨ Ender-3 V2 DWIN LCD CrealityUI / Enhanced (#21942, #22728, #22733, #22844, #22850, #22851)
New Boards
- ✨ FLY Mini for
stm32duino
(#22355, #22356, #22364) - ✨ Chitu3D V9 board (#22401)
- ✨ MKS Monster8 board (#22455, #22777)
- ✨ Simulator HAL and build targets (#22418, #22516)
- ✨ Zonestar ZM3E2, ZM3E4 V1, ZM3E4 V2 (#22498)
- ✨ Add
BOARD_TH3D_EZBOARD_LITE_V2
based on HAL/STM32 (#22621) - ✨ GT2560 V4.x A20 (#22664)
- ✨ Index Pick-and-Place board Rev.3 (#22647)
- 📌 Creality 4.3.1 board variants (#22704)
- ✨ Protoneer CNC-Shield 3.00 (#22715)
- ✨ MKS Robin Nano V1.3 (STM32F407VET6) (#22749)
New Features
- ✨ MSC Support for STM32 + SDIO boards -> SKR 2 (#22354)
- ✨ Mixer Presets (#21562)
- ✨ Power-off confirm / beep options (#22191, #22222)
- ✨ Homing submenu option (#22692)
- ✨ Add
TEMP_SENSOR_BOARD
(#22279, #22342, #22343, #22344, #22350) - ✨ Add
BOARD_RUMBA32_BTT
(#22607) - ✨ Creality3D CR-30 PrintMill (bba7c00)
- ✨ TFT Screen/Backlight Sleep (#22617)
- ✨ Polargraph / Makelangelo kinematics (#22790)
Issues Fixed
- 🐛 Fix PTC/BTC whole number tests (#22255)
- 🐛 Fix ExtUI
lcd_clicked
definition (#22257) - 🐛 Fix
manage_heaters
recursion on servo move (#22313) - 🐛 Fixes for BTT Octopus (#22314)
- 🐛 TM3D fixes and improvements (bc459a7)
- 🐛 Fix SD pins for MKS Robin Lite (b1c5afa)
- 🐛 Fix Robin Nano V3
X_DIAG_PIN
(#22340) - 🐛 Define
MT_DET_PIN_INVERTING
forMKS_ROBIN_NANO_V3
(#22348) - 🐛 Fix Einsy RAMBo
FAN1_PIN
(#22305) - 🎨 Minor cleanup of TFT/FSMC pins (650e1dd)
- 🐛 Fix AVR
DELAY_US
int overflow (#22268) - 🐛 Fix redundant heater / sensor pin assignments (#22309, #22196)
- 🐛 Fix
M913
typos (#22385) - 🐛 Fix UBL
G29 J
- Vector3 regression (e190684) - 🐛 Fix
G2
/G3
angular motion calculation (#22407) - 🐛 Fix
PAUSE_PROBE_DEPLOY_WHEN_TRIGGERED
(bcc31f6) - 🐛 Fix 3-point leveling position (12581bc)
- 🐛 Fix delta calibrate manual move scale (#22430)
- 🐛 Reset
workDirDepth
incdroot()
(#22441) - 🐛 Fix extra E move in toolchange with
..._NO_RETURN
(#22504) - 🐛 Fix
report_a_position
ABC criteria (ac64d69) - 🚸 Prevent
M42
unintentionally changing pin to OUTPUT (#22493) - 🐛 Fix
G38
with probe onZ_MIN
(#22452) - 🐛 Fix up endstop flags (#22487, #22525)
- 🐛 Fix fan index for Singlenozzle, chamber fan (fefde2a)
- 🐛 Fix CoreXY plus extra axes (0c0f84b)
- 🚸 Set
M122
interval only withS0
orPn
(418743c) - 🔨 Fix (RRF E3) RX/TX buffer size override (#22475)
- 🐛 Fix
M575
port index output (#22553) - 🐛 Fix STM32 delay, double reset in FSMC TFT init (#22584)
- 🐛 Fix LPC176x
M43
Pins Debugging (#22611, #22680) - 🐛 Fix Multi-Endstop stepping (#22625)
- 🩹 Sensorless homing tweak (53df1df)
- 🐛 Fix
SDSUPPORT
for SKR CR-6 (#22668) - 🐛 Fix Mixing code typos (#22697)
- 🐛 Fix LPC1768 SD-based EEPROM debug (22bf774)
- 🐛 No probe enum for
DELTA
+SENSORLESS_PROBING
(d6a87aa) - 🐛 Fix
ENABLED
=>EITHER
typo (#22756) - 🐛 Fix
CUSTOM_MENU_MAIN_SCRIPT_DONE
(59ad935) - 🐛 Fix old spindle/laser options (92eb819)
- 🩹 Fix DWIN Enhanced Tune menu during homing (#22773)
- 🐛 STM32 ADC Resolution = 12 bit (or
ADC_RESOLUTION
) (#22789, #22798) - 🐛 Fix
anycubic_i3mega_lcd
debug macros (#22820) - 🐛 Fix
reset_hotend_offsets
(d338872) - 🐛 Add '
static
' to fix 'duplicates' (#22826)
Improvements
- 🎨 Call
millis()
once inmanage_inactivity
(#22363) - 🏗️ Allow headless Flow Meter (#22234)
- 🚸 Retain power during Pause (#22227)
- ⚡️ Improve Sensorless homing/probing for
G28
,G33
(#21899) - 🐛 Followup to 6 linear axes (#22482)
- 🚑️ Init FastIO before anything else (#22508)
- ⚡️ Simplify
PROBING_STEPPERS_OFF
(#22581) - 🐛 Update H-bot / Core for 6-axis (#22600)
- ⚡️ Improve
G2
/G3
arc handling (#22599) - 🩹 Allow
M42 S0
/1
analogWrite
on PWM pins (STM32) (#22631) - 🚸 Per-hotend Watch items (3a83516)
- 🎨 Apply more
HAS_DELTA_SENSORLESS_PROBING
(17c9450) - ⚡️ Handle overlapping enable pins in
M17
/M18
(#22824)
Configuration
- 🚸 Sanity-check Slim LCD menus with Probe Offset Wizard (#22259)
- 📝 Update
Z_SAFE_HOMING
description (4235e23) - 🎨 Optional Custom Button description (#22336)
- 🐛 Fix
BTC_SAMPLE_RES
sanity check (#22394) - 🐛 Ensure Software SPI pins for Max Thermocouple (#22389)
- 🔧 Sanity-check Mixing plus Disable Inactive Extruder (d49a26b)
- 🔧 Sanity-check
DEFAULT_EJERK
withLIN_ADVANCE
(eba0ae4) - 💚 Fix tests for new sanity-checks (4e54fa2)
- 📝 Describe DGUS display options (#22443)
- 🚸 Better error for
MOTHERBOARD
not defined (#22551) - 🎨 Tweak
M73
condition (9c19d47) - ♻️ Consolidate
PSU_CONTROL
(#22304) - 🔧 Set
Z_PROBE_OFFSET_RANGE_MIN
/MAX
for MBL (#22663) - 📝 Update
PID_PARAMS_PER_HOTEND
comment (#22694) - 🩹 Fix 'ms' warning (cc3abcd)
- 🎨 Use largest default ST9720 delays (#22713)
- 🔧 Sanity checks for Ender 3 V2 (72d7bbb)
- 🩹 Warning for User Feedback requirement (64acb9f)
- 🔧
SPINDLE_LASER_PWM
=>SPINDLE_LASER_USE_PWM
(de4eed3) - 🔖 Configurations version 02000902 (0330432)
- 🔧 Add
MANUAL_FEEDRATE
sanity-check (023eaab) - 🔧 Sanity-check
BLTOUCH_SET_5V_MODE
on 5V pins (#22840)
Build / Upload
- 🎨 Check flags without
ENABLED
(78c2eb6) - 🐛 Fix MKS UI compile (#22388, #22395)
- 🎨 Fix unused lambda warning (#22399)
- 🩹 Init var to suppress invalid warning (#22396)
- 🐛 Fix
STATUS_COMBINE_HEATERS
compile (#22405) - 🐛 Fix 5-axis no extruder compile (74b0133)
- 🐛 Fix DGUS displays compile (#22464)
- 🐛 Fix
sprintf_P
compile error (Maple) (#22479) - 🎨 Fix "'EEPROM' unused" warning (#22511)
- 🔨 Fix HAL/STM32 F103Zx builds (#22610)
- 🩹 Fix
TOUCH_UI_FTDI_EVE
warnings (ee1c103)
Build Env
- 🐛 Fix Arduino IDE build (
TOUCH_UI_FTDI_EVE
includes) (#22276) - 🔨 FYSETC S6 small bootloader target (#22207)
- 🐛 Fix Maple / STM32 serial buffer (#22292)
- 📌 Require
U8glib-HAL@~0.5.0
(#22324) - 🔨 Clean up build scripts (#22264)
- 🔨 Update LPC176x platform to 0.2.8 (#22333)
- 🔨 Consolidate STM32 extra_scripts (#22365)
- 🔨 More
HAL/STM32
targets (#22358, #22369) - 🐛 Fix Longer3D build environment (#22378)
- ♻️ Refactor STM32 ini files (#22377)
- 💚 Specify compatible Teensy @4.12 (#22448)
- 🔨 Fix:
BIGTREE_E3_RRF
doesn't use user RX/TX sizes (#22475, a348f8e) - 🔨 Update Longer and Chitu envs (#22467)
- 🐛 Fix Longer3D STM32 boot, add Maple test (#22473)
- 🔨 Offset/encrypt/rename for Maple STM32F1 (#22477)
- 🐛 Fix MKS 'USB Flash MSC' environments (#22515)
- 🏗️ Define
HAL_STM32
when building forHAL/STM32
(#22537) - 🔨 Fix FYSETC S6 envs (#22421)
- 🔨 Use zip link for
MarlinSimUI
(65e3911) - ⬆️
TMCStepper
0.7.3 (718227a, #22608) - 🔨 Melzi with OptiBoot build (#22630)
- 🔨 Set Longer3D timers in variant (#22632)
- 🐛 Fix Trigorilla Pro
HAL/STM32
build offset (#22761) - 🩹 Add
MarlinSPI
fallback to more HALs (b7f95dc)
Improve Boards/Pins
- ✨ MKS Robin Nano v3 + TFT_LVGL_UI + WiFi module (#22109, 2a4ee1a)
- 🎨 BTT SKR Pro pins auto-assign (#22411)
- 🔧 Octopus SPI display pins, fix USB build env (#22412)
- 📝 SKR E3 Turbo custom cable description (#22426)
- 🐛 Fix some board names (2aad79f)
- 🐛 Fix Longer3D
SDSS
/SD_SS
(#22444) - 🐛 Fix SKR Pro bad directive (#22438)
- ⚡️ Larger FYSETC S6 I2C EEPROM size (#22424)
- 🐛 Allow SKR Pro
CONTROLLER_FAN_PIN
override (a2759bc) - 📌 MKS pins for
PSU_CONTROL
(#22528) - 🐛 Fix some BTT SKR2 pins (#22558)
- 🐛 Fix Longer3D PWM/timer pins (#22583)
- 🎨 Update "
MKSPWC
", some other pins (#22557) - 🎨 Tweak TMC software serial pins (0aa87af)
- 🎨 Define EXP1/2 headers (6769718, #22641, #22628, 6bf2be6)
- 🐛 BTT Octopus X MAX pin for IDEX (#22654)
- 🔨 Enhance Lerdge pins, TFTs, and variants (#22658)
- 🎨 Handle more pre-defined pins in
pins_postprocess.h
(#22771) - 📝 Update some pins comments (ded719c)
- 🎨 Less use of
#undef
for RAMPS pins (99647fa)
Language
- 🌐 "Level Corners" => "Bed Tramming" (157c60c)
- 🌐 Update Russian and Ukrainian (#22290)
- 🌐 Update Hungarian language (#22307, #22678)
- 🌐 Update French language (#22323)
- 🌐 Update Italian language (#22645)
- 🌐 Update Slovak language (#22752)
- 🌐 Update Greek language (#22799)
- 🌐 Update menu titles, add more IJK (#22605)
- 🌐
MSG_PROBING_MESH
=>MSG_PROBING_POINT
(c14b162) - 🌐 Tweak language selection (c2796fb)
- 🌐 Update "Homing" for some languages (#22706)
- 🌐 Reduce language file sizes (be8e826)
- 🌐 Skip non-essential translations (669b684)
User Interface
- 🚸 Filament Change add confirm step (#22277)
- ♻️ Fix up and use
YESNO_ITEM
macros (968c3b7) - 📺 Fix and optimize FTDI Eve Touch Interface (#22273, #22347, #22361, #22427, #22439, #22459, #22468, #22500, #22530, #22619, #22651)
- 🐛 Fix
HAS_KILL && SOFT_RESET_ON_KILL
soft reset button logic (#22269) - 📺 ExtUI pause state response (#22164)
- 🚸 Limit LCD delta endstop adjustment like
M666
(c746b1a) - 🚸
M666
: Fix value filter, add report (#22337) - 🐛...
Marlin 2.0.9.1
This maintenance release includes a number of fixes and improvements from contributors, testers, and co-developers.
Issues Fixed
- 🐛 Fix Air Assist (#22159)
- 🩹 Extruders 0 patch for PWM Motor Current (#22163)
- 🐛 Fix env validation for 1280/2560 boards (#22150)
- 🐛 Fix MKS Robin E3 build (#22149)
- 🐛 Fix IJK axis references, E stepper indices (#22176, 906fa05)
- 🐛 Fix dual Neopixels (#22174)
- 🐛 Fix heater display options/compile (#22185)
- 🐛 Fix compact sensitive pins array (#22184)
- 🐛 Redundant Temp Sensor followup (#22173)
- 🐛 Fix LCD define typos (927a1a1)
- 🐛 Define 'HEAD' axes for Markforged (cce585f)
- 🐛 Fix Z_MULTI_ENDSTOPS + NUM_Z_STEPPER_DRIVERS 4 compile (#22203)
- 🔧 Fix E.S.T. sanity-check errors (#22224)
- 🐛 Trigger existing endstops on G38 hit (4763116)
- 🐛 Fix Octopus build on case-sensitive FS (#22206)
Improved / Optimized
- ✨ Update/extend Quiet Probing (#22205)
LCD / Controller
- 🌐 Update Russian language (#22193)
- 🌐 Update Ukrainian language (#22183)
- 🌐 Update Italian language (#22182)
- 🚸 MarlinUI Move Z >= 1000 (#22192)
- 🎨 Fix and enhance FTDI Eve Touch UI (#22189, #22223)
Hosts / Protocols
- 🚸 Include 'H' value in M412 report (#22138)
Boards / Pins
- 🐛 TFT encoder pin for BTT GTR (#22162)
General Cleanup
Marlin 2.0.9
Marlin 2.0.9 is a progressive release featuring a major overhaul of the motion system. The number of linear axes can now be configured, allowing anywhere from one linear axis (X only) up to a total of six (X, Y, Z, U, V, W). The names of the axes can also be customized to your liking (barring conflicts with other G-code parameters).
New Features
- ✨ TMC Driver distinct baudrates (#22008)
- 🏗️ Support for up to 6 linear axes (#19112, #22056, #22068, #22075, #22094, #22112)
- ✨ Add Laser Based I2C Ammeter Feature (#21835, #22079)
- ✨ More flexible redundant temp sensor (#22085)
- ✨ Single Extruder with Dual Stepper Drivers (#21403)
- ✨ Redundant Part Cooling Fan (#21888)
New Machines and Boards
- ✨ BigTreeTech Octopus V1.1 (#22042)
LCDs and Controllers
- 🌐 Update Slovak language (#22000)
- 📺 Fix and enhance FTDI EVE Touch UI (#22047)
- 🩹 Fallback ID for MKS TS35 V2.0 (#22031)
- 🎨 Reorganize FTDI Touch UI variants (#22066)
- 🎨 Fix and improve FTDI Eve Touch UI (#22093)
- 🌐 Update Hungarian language (#22083)
- 🐛 Fix ExtUI/DGUS Celsius display (#22121)
- 🐛 Include common TFT driver macros (#22125)
- 🎨 ExtUI "user click" and other tweaks (#22122)
- ✨ MULTI_VOLUME for Color UI and MarlinUI (#22004)
Optimized / Improved
- ♻️ Refactor Linear / Logical / Distinct Axes (#21953)
- ⚡️ Optimize Sensitive Pins array (except STM32) (#22080)
- ⚡️ Home Z (and maybe XY) at the start of G35 (#22060)
Fixed Boards / Pins
- 🎨 Reorganize BTT_E3_RRF_IDEX_BOARD (b99411b)
- 🎨 Clean up stops, sdss pins (dc202b3)
- 🐛 Fix Creality v4 servo timer (#22021)
- 🔧 EEPROM options for BTT SKR 1.4 (#22092)
- 🐛 Fix boot / SD for STM32 (F103Rx) boards (#22087)
- 🔨 Robin Nano V3 overridable POWER_LOSS_PIN (#22123)
- 🔨 Fix Serial+MSC for _USB envs (#22116)
- 🔥 Remove Chitu default Touch Calibration (#22133)
Issues Fixed
- 👽️ Fix usb-host-msc-cdc-msc issue (#22025)
- 🐛 Fix Z endstop enum (72b9f84)
- 🐛 Fix MMU compile with >5 EXTRUDERS (#22036)
- 🐛 Fix M140 print job timer autostart (#22046)
- ✨ Update
G34
for 4x Z steppers (#22039) - ♻️ Patches for Zero Extruders (with TMC) (82ea06e)
- 🐛 Fix small/huge I2C EEPROM address (#22081)
- 🐛 Fix UBL 'R' parameter and adjust 'P' (#22129)
- 🚑️ Prevent BFT unaligned compressed data corruption (#22134)
- 🐛 Prevent stepper sleep during long UBL idle (#22137)
Configuration
- 🔧 Check G29_RETRY_AND_RECOVER requirements (#21921)
- 🔧 Expose hidden BLTOUCH setting changes (#22069)
- 🔧 Enforce BLTouch settings (#22086)
- 🐛 Use whole PROBE_TEMP_COMPENSATION values (#22130)
New HAL/STM32 Targets
- 🔨 Creality v4 with STM32 HAL (#21999)
- 🐛 Fix env:STM32F103RE maple/unified split-up (#22019)
- 🔨 MKS Robin E3 for HAL/STM32 (#21927)
- 📦️ STM32F103RE_btt(_USB) with HAL/STM32 (#22040)
- 📦️ Malyan M200 with HAL/STM32 (#22052)
- 👽️ Include <EEPROM.h> in STM32 (for now) (#22054)
Build / Upload
- 📌 Use U8glib-HAL@~0.4.5 (2505357)
- 🐛 Fix Probe Temp Calibration compile (#22032)
- 🔨 Move FLY_MINI env to stm32f1.ini (c207111)
- 🔨 Consolidate BTT linker scripts (62dc3e7, #22038)
- 🐛 Fix STM3R / BEAST envs (#22028)
- 📌 Update FYSETC E4 to espressif32@2.1.0 (#22049)
- 🔨 MightyBoard envs for Auto Build Marlin (#22100)
- 🔨 Envs for BTT SKR Mini with RET6 (512K) (#22050)
- 🏗️ Refactor build encrypt / rename (#22124)
General Cleanup
- 📝 Update G61 comment (8f59d44)
- ⚰️ Remove obsolete CUSTOM_SPI_PINS (#22058)
- 📝 Describe G12 XYZ (799a4ec)
- 🔨 Remove obsolete ON_BOARD_SPI_DEVICE (87344ae)
- 🎨 Clean up LPC1768 SPI init (fd3f7b3)
- 📝 Number SKR EXP headers (c221ee1)
- 🩹 Use
#pragma once
in pins files (9bf5cdd) - 🎨 General cleanup of extui/dgus (d5510ea)
For Developers
Marlin 2.0.8.2
Marlin 2.0.8.2 is a maintenance release with a number of small improvements and issues fixed.
This release adds cap:HOST_ACTION_COMMANDS:0/1
to the M115
extended capabilities report so hosts like OctoPrint can check for basic host-firmware interaction with //action:
commands. For more complete interactivity you should enable HOST_PROMPT_SUPPORT
and this will report cap:PROMPT_SUPPORT:1
to the host.
New Machines and Boards
- ✨ Malyan M180 (#21992)
New Features
Host and Protocol
- 🚸
cap:HOST_ACTION_COMMANDS
(#21987)
Configuration
- 🥅 Add
MESH_EDIT_MENU
sanity check (#21922)
Board / HAL
- 🐛 Fix BTT002 variant MMU2 serial pins 🧩 (#21980)
- 🐛 Fix Selena Compact probe pin (83f9413)
- 🐛 Fix Octopus High Speed USB (#21961)
- 🐛 Fix MKS Robin E3
BLTOUCH
and Fan PWM timer conflicts (#21889)
LCD / Controller
- 🌐 Update Polish language (#21993)
- 🩹 Improved SKR2 12864 LCD Delays (#21956)
- 📝 Update ExtUI example (f60965a)
Optimized / Improved
Other Issues Fixed
- 🩹 Fix multi_volume + SDIO onboard compile (#21975)
- 🐛 Fix
G29 K
value (f1f622d) - 🐛 Fix
EEPROM_CHITCHAT
(#21934) - 🐛 Fix flowmeter calculation (#21959)
- 🐛 Fix wrong
Z_ENDSTOP
flag bit (#21963) - 🐛 Fix Toshiba FlashAir (
SDCARD_COMMANDS_SPLIT
) (#21944) - 🐛 Fix
DELTA
withSENSORLESS_PROBING
Build and Upload
- ⚡️ PIO filters for
M117
,M300
andM414
(#21972) - 🐛 Fix envs using
mks_encrypt.py
(#21933) - 🐛 Fix compile with
PREVENT_COLD_EXTRUSION
off (94e67a0) - 🐛 Fix Teensy
PINS_DEBUGGING
compile (#21958)
For Developers
- 🎨 Macros for optional arguments (#21969)
- 🎨 Null heating message method (d1502f7)
- ♻️ Refactor axis homing/trusted state bits (57eef65)
- ♻️ Minimize endstop bits (894c954)
- 👷 Add a test for
SAVED_POSITIONS
(3220c49) - ♻️ Refactor, comment endstop/probe enums (4dae589)
- 🎨 Flags for homing directions (e.g.,
Z_HOME_TO_MIN
) (49b05ba) - 📝 Document
diveToFile
,printListing
(ddc82b8) - ♻️ Simplify TMC utilities for more axes (765720e)
- ♻️ Refactor axis counts and loops (26a2443)
Maintenance
- 🎨 Apply shorthand and cleanups (7597b4f)
- 🎨
pause
=>pause_heaters
(7cd0f2a) - 🎨 Shorten lcd relative paths (3995e83)
- 🎨 Move
HAS_EXTRUDERS
(87a9437) - 🎨 Update a condition (8e28731)
- 🎨 Rename all/no axis enums (cdbd438)
- 🎨
MULTI_MANUAL
=>MULTI_E_MANUAL
(c977e82) - 🎨 Move switch sensor strings (2de914c)
- ✅ Fix tests for
EXTRUDERS 0
(046bac6) - 🎨 Misc cleanup and fixes (f7d28ce)
- 🎨 Use defined strings (c85633b)
- 📝 Add Configurations section to README (#21955)
Marlin 2.0.8.1
This release patches various issues discovered since the 2.0.8 release and also includes some useful enhancements.
New Features
M154 S
Position Auto-Report (#18427)- Laser Cutter Air Assist (#21753)
- ExtUI event for PID tuning start (#21734)
- Echo LCD message to serial in kill
- UBL Mesh Wizard (#21556, #21791)
- Support a third serial port (#21784)
- Instant Freeze/Resume Function (#17462)
New Machines and Boards
- BigTreeTech SKR V2 Rev B (#21805)
- BigTreeTech Octopus (STM32F446ZET6) (#21826, #21882, #21883, #21901)
Optimized / Improved
- Debounce for Power-Loss pin
- Optimize G-code flag parameters (#21849)
- Move temp errors calling
kill()
out of ISR (#21832)
Configuration
- Allow disable of
POWER_TIMEOUT
(#21771) - Allow Creality V4 SERVO0 and PROBE pin overrides (#21770)
SOFT_RESET_VIA_SERIAL
sanity-check- Better error message for bad array sizes
- Fix
G29_RETRY_AND_RECOVER
dependency (#21907) - 🔧 Improve
SD_DETECT_STATE
default (#21885) - Update Advanced Pause description (#21829)
- Fix multi volume config typo (#21880)
- Make
[XYZ]_ENABLE_PIN
an optional pin (#21801)
LCD / Controller
- Capacitive Touch Screen (GT911) for SKR SE BX (#21843)
- Add
MKS_LCD12864B
- Fix E3V2 Control Menu icon/text order (#21838)
- Fix MKS UI missing font select condition (#21905)
- Fix Nextion compile error (#21884)
- Active MMU slot indicator (#21842)
- TFT pins for BTT GTR V1
- TFT SPI for BTT SKR v1.3 (#21794)
- Update SKR 1.3 touch pins
- Update Robin Pro TFT Pins (#21879, #21900)
Build and Upload
- BigTreeTech SKR Mini E3 with HAL/STM32 (#21488)
- Only look for target disk during Upload (#21804)
- Update STM32 platform to 12.1
- Use
adafruit/Adafruit NeoPixel@~1.8.0
- Update
FLSUN_HISPEED
env toflsun_hispeedv1
(#21510)
For Developers
- Move ExtUI subfolders up a level (#21820)
- Add and apply
REPEAT_1
macro - Apply SBI/CBI/TEST in HAL
- Additional utility macros
- Simplify macro expansion with recursion (#21859)
- Better
opt_set
comment of old val - Simplify / undef extra endstops (#21808)
General Issues Fixed
- Fix "undefined
abl_points
" error - Fix
SDCARD_CONNECTION
default for BTT SKR (#21755) - Fix Singlenozzle Standby issues (#21759)
- Fix Power-Loss Save on Pause (#21749)
- Fix Z raise in filament load
M701
(#21762) - Add missing ExtUI method (#21763)
- Fix parser temperature rounding
- Fix bad call to 'diskIODriver' (#21775)
- Fix bad DELTA probe move (#21781)
- Fix
flush_and_request_resend
- Prevent watchdog reset in
setup()
(#21776) - Pause and PLR refinements
- Fix MMU2 compile with include (#21809)
- Update
Chart.js
to 2.9.4 for e4d@box UI - 📝 Fix version reference
- 🐛 Fix excessive MMU2 timeout (#21855)
G60
-G61
Save E position (#21810)- Patches for
CASE_LIGHT_USE_RGB_LED
(#21811) - Let
M421 C
select any point - Always prompt in
M125
if host-prompt (as with Ext UI) (#21828) - Lerdge K EEPROM and TFT (#21812)
- Consider SD print complete only when commands are done (#21840)
- 🐛 Fix Lerdge USB Flash Drive envs (#21847)
- Unify BTT Motor Expansion Options (#21823)
- Fix and improve Power-Loss Recovery (#21779, #21894)
- Fix L64xx init for Z4 axis
- 🐛 Fix G5 IJ with Motion Mode (#21858)
- Fix compilation failure in
M1001
(#21897) - 🐛 Fix Realtime Reporting with Motion Modes (#21902)
Marlin 2.0.8
New Features
- Tool sensors (#17239)
- Z Probe Offset Wizard (#18866, #19647, #19742, #20167, #20239, #20344, #20414, #20439)
G34
Mechanical Gantry Calibration (like PrusaM915
) (#18972)- Swedish language for MarlinUI (#20826)
- Custom move feedrate for
G26
(#20879) - Chamber servo vent, auto fan (#19519, #21594)
- Support for Debug Codes -
Dnnn
(#19225, #19697) REPORT_TRAMMING_MM
option (#19682)- Power-on/off G-code options (#19837)
SPINDLE_SERVO
option (#19971)POWER_OFF_DELAY
option (#19987)ASSISTED_TRAMMING_WAIT_POSITION
(#20063)HOME_Z_FIRST
option (#20113)- SMUFF (MMU2 clone) support (#19912)
- Allow cold Filament Load/Unload with
M302 P1
(#20262) - Level Corners with Probe option (#20241)
M808
Repeat Markers / "End Repeat Loops" menu item (#20084)- Make
M220
B
/R
parameters standard (#20355) - Probe Tare, Probe Activation Switch (#20379, #20550)
- Laser Test Fire (#20452)
NO_SD_DETECT
option (#20741)- “MeatPack” (OctoPrint plugin) serial encoding (#20802, #20893, #20896, #20903, #21306, #21336)
- STM32 Shared Media - USB Mass Storage Device (#20956)
- Postmortem Debugging to serial port (#20492)
- Chamber Heater PID (#21156)
PROBING_HEATERS_OFF
sub-optionWAIT_FOR_HOTEND
(#20835)- Preheat Menu shortcut option (#20350)
- RGB Caselight (#20341)
- Filament Runout handling for Mixing Extruder (#20327)
- G-code Digital Buttons (#18389, #21284)
- Cooler (for Laser) -
M143
,M193
(#21255) - Add
M207
/8
/9
reporting (#21335) - Custom menu items confirm option (#21338)
- TPARA - 3DOF robot arm IK (#21005, #21248)
- Hilbert space-filling curve for UBL /
G26
(#21387, #21453, #21480) - Extend
M106
/M107
for better laser module support (#16082) - Laser Coolant Flow Meter / Safety Shutdown (#21431, #21498, #21573)
- Multi-Volume. Select Media for LVGL (#21344)
- Realtime Reporting,
S000
,P000
,R000
(#19330, #21630) M10
-M11
Air Evacuation for Spindle/Laser (#21668)- Soft Reset via Serial or post-kill button click (#21652)
- Backlash Compensation for COREnn (#21612, #21731)
- Stepper Driver Anti-Reverse Protection (#21503)
New Machines and Boards
- Anet ET4 / ET4P and Anet TFT28 / TFT35 (#20280)
- BigTreeTech E3 RRF
- BigTreeTech SKR CR6 (#20522)
- BigTreeTech SKR Mini MZ V1 (#19818, #20069)
- BigTreeTech SKR V2.0 (#21503, #21717, #21741)
- BigTreeTech SKR-SE-BX (STM32H743IIT6 ARM Cortex M7) and BIQU_BX_TFT70 (#21536)
- Creality v4.2.10 board (#20647)
- Creality v4.3.1 (Ender 6) board (#20512)
- Creality v4.5.2 (#20378)
- Creality v4.5.3 (CR-6 SE, CR-6 MAX) (#20468)
- Eryone Thinker V2 (#21190)
- FLSUN Delta QQS-Pro (#19793)
- FLY CDY (#19979)
- FLY MINI (#19185)
- FYSETC Cheetah 2.0 (#20897)
- FYSETC E4 (#20032)
- FYSETC Spider (#21458)
- KRATOS32 / K.32 board and LCD controllers (#21334)
- Longer LK Pro / Alfawise PRO (#20185, #20372)
- MKS Robin E3 / E3D v1.1 (#20216)
- MPX_ARM_MINI board (Mingda MD-16) (#20711)
- NUCLEO-F767ZI dev board (#19373)
- Ramps-S v1.2 (#19815)
- SMART RAMPS 1.4 with Mega2560 (#21059, #21128)
- Zonestar Z8 XM2 (#19991)
Configuration Updates
- Ensure A4988 for unspecified driver type (#19798)
- Allow MAX31865 resistance values configuration (#19695)
- TFT Presets, Generic options, Sanity checks (#19723)
- Default
LASER_POWER_INLINE
to OFF (#19727) - Distinct Chopper Timing settings (#19781, #19850)
- Longer3D:
LONGER_LK_TFT28
now set by config (#19817) - Configure TMC interpolation per driver (#19828)
- Guards for large
BLOCK_BUFFER_SIZE
(>=128) (#20130) - Allow dummy thermistors without pin definitions (#20159, #20247)
- Add Thermistor 20-21 notes (#19246)
- Permit touch calibration override
- Optional
M42
/M226
; Add more features filters (#19664) - Option to prevent (extra) Watchdog init on STM32 (#19693)
- Sanity-check mutually-exclusive
G34
features (#19706) - Add
HAS_MEDIA_SUBCALLS
to enable/disableM32
- Option to ignore SD at startup (#20099)
- Option to open the File Browser on Media Insert (#20151)
- Use
MANUAL_PROBE_START_Z
for UBL manual probing (#20160) - Proper pullup/pulldown configurability (#20242)
- No
Z_MULTI_ENDSTOPS
whenHOMING_Z_WITH_PROBE
(#20254) - Group related homing options (#20283)
- Leveling Fade Height default setting (#20316)
- Clarify Delta & SCARA config location (#20403)
- Clarify "not Interrupt-capable" error message (#20419)
- Add
Z_SENSORLESS
sanity checks (#20421, #20438) SHORT_MANUAL_Z_MOVE
is nowFINE_MANUAL_MOVE
- Option to always enable leveling after
G28
- Minimum temp options for Probing and
G12
Nozzle Clean (#20383) - Improve STM32 timer conflict messages (#20544)
- Add
OPTIMIZED_MESH_STORAGE
option (for UBL) (#20371) - Validate defined probe points (#20572)
- Allow define of
HOMING_FEEDRATE_(XY|Z)
- Apply
SHOW_BOOTSCREEN
toTFT_COLOR_UI
(#20586) - Clarify sanity-check for custom status bitmap (#20588)
- Adjustable precision in
M105
temperature report (#20602, #20687) - Multi-Z stepper inverting (#20678)
- Configurable Corner Leveling point order (#20733)
USE_M73_REMAINING_TIME
sanity-check (#20751)- Configure / disable
PRINTCOUNTER
save interval (#20856) - Configure / disable PRINTCOUNTER save interval (#20856)
- Touch Calibration Screen auto-save option (#20971)
- Allow Zero Endstops (e.g., for CNC) (#21120, #21188)
- Combine
Z_AFTER_DEACTIVATE
withUNKNOWN_Z_NO_RAISE
(#20444) - Renamed some "
SPEED
" options as "FEEDRATE
" (#21217) - Default microsteps to axis first stepper (#21230)
- Safe Z homing for Power Loss Recovery (#16909)
- Extend Heater Overshoot Options (#21273)
- Undef unused 2nd serial option(s) (#21331)
- Sanity-checks for
NOZZLE_CLEAN_FEATURE
(#21332) - Main / Config Custom Submenus (#18177)
- Better chopper defaults
- More detailed serial config error
- Sanity check
MIXING_EXTRUDER
+DISTINCT_E_FACTORS
(#21689) - Make Cancel Objects reporting optional (#21698)
Optimized / Improved
- Fix various errors, warnings in example config builds (#19686)
- Add loose soft endstop state, apply to UBL fine-tune (#19681)
- If needed, home before
G34
(#19713) - Handle
M410
in the main task (#19752) - Fix Color UI
external_control
,wait_for_release
(#19771) - Fix HAL/STM32 FastIO for analog pins (#19735)
- Fix
G35
PROGMEM strings (#19926) - Handle UTF in long filenames (#20087, #20115, #20121, #20135)
G34 Z
stepper locking (#20091)- Optimize
M360
- Update IDEX menus, add post-
M605
event G-code (#20133) - Reduce RAM usage for TFT Color UI on SGen-L (#20179)
- Abort print on media removal (#20200)
- Skip unnecessary (costly) SW Stepper Enable (#20218)
- Allow Status Message without LCD (#20246)
- Optimize emergency parser check
- On pause release the extruder for easier filament change (#20346)
- Fix, improve Tramming Wizard behavior (#20437, #20796)
- MAX Thermocouples rework (#20447)
- Support RGBW on PCA9632 (#20455)
- Preheat before Power Loss Recovery homing (#20697)
- Support up to 6 Tramming points (#20720, #21646)
- Init KILL, SUICIDE, PSU earlier (#20810)
- Init serial ports first (#20944)
- Improve probe preheat behavior (#21033)
- Use 'H' value for UBL G29 z-clearance (#21114)
- Fix and improve G-code queue (#21122)
- Pause SD queue early on
M25
(#21317) - Add reporting to
M207
/8
/9
(#21335) - Optimize
MarlinSettings
with template methods (#21426) - Optimize LSF for size, efficiency (#21443)
- Optimize BLTouch code for size (#21477)
- Generalize MMU (#21469)
- Move last bootscreen delay to end of setup (#21665)
- Use
temp_info_t
fortemp_redundant
(#21715)
Board / HAL Updates
- Retire HAL for STM32F4 / F7 (#20153)
- Improved MKS Robin support (#19333)
- Minor SPI fixes,
systick_callback
for STM32F1 HAL compatibility (#19565) - Update MKS SGen-L V2 RGB LED pins (#19762)
- Teensy 4.1 Ethernet support (#19801, #21316)
- Ignore NativeEthernet on AT90USB1286 (#19885)
- AZTEEG X5 mini LED pins (#19909)
- Generalize BTT SKR E3-DIP version (#19910)
- Rename, adjust Dagoma F5 (#19947)
FAST_PWM
for STM32F1 (#19952)FAST_PWM
for STM32 (#20025)- Get STM32 clock rates from framework (#19978)
- HAL support for 8s watchdog
- Standardize Marlin SPI (#19989)
- STM32F1 cleanup, incl. SoftwareSerial removal (#20046)
- BTT SKR driver expansion board (#20088, #20123)
- Allow overriding servo pin for MKS Robin Mini (#20158)
- FLSun Hispeedv1 Board update (#19959)
- Migrate Hispeedv1 (QQS-Pro) to HAL/STM32 (#20354)
- Use RTD for MAX31865 reading (#20188)
- Add
BTN_ENC_EN
for many boards (#19796, #19890, #20684) - SKR E3 Turbo Controller Fan (#20320)
- Permit SD EEPROM emulation on Ender-3 V2 (#20353)
- Suspend Servos for STM32+NeoPixel (#19963)
- SPI TFT for STM32F4 boards (#20384)
- MKS Robin Pins fixes for STM32 and STM32F1 (#20404)
- Add
HAS_PIN_27_BOARD
forCREALITY_V4
(#20446) - MKS Robin Nano V3 and STM32F4x0Vx Variant (#20430, #21174, #21238)
- Let boards set Default TMC Slave Addresses (#20498)
- 12-bit ADC resolution for STM32 (#20519, #20562)
- Overrides to prevent STM32 timer conflicts (#20545)
- Unify FYSETC F6 1.3 / 1.4 (#20507)
- Better defaults, compatibility for SDIO + STM32 (#20570, #21440)
- USB Flash Drive via native USB Host + MSC (#20571)
- Prefix SD SPI pins (SCK, MISO, MOSI, SS) (#20606)
- Define SANGUINOLOLU 1.1 enable pins (#20682)
- Wanhao One+ SD Detect pin (#20724)
- ESP32 Tone Generator (#20704)
NEOPIXEL
overridable on BTT SKR (#20797)- FYSETC_242 OLED 12864 for S6 (#20767)
- Lerdge K/S/X support for Flash Drive (#20593)
- Add labels, condition for BTT GTR M5 pins (#20772)
- Updated display timing for SKR Pro (#21346)
- ZONESTAR_LCD warning for RAMPS / ReARM (#20702)
- Refactor serial class with templates (#20783, #21249, #21287, #21318)
- Allow ...