2.0.9.4
版本发布时间: 2022-06-04 13:49:33
MarlinFirmware/Marlin最新发布版本:2.1.2.4(2024-06-16 10:03:49)
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 Autotune menus
- 🐛 Update German language, Fix FTDI (#24047, #24048, #24227)
- ♻️ Apply
F()
to more LCD code (#24228) - 🚸 Custom Menu Items for JyersUI (#24270)
LCD Language
- 🌐 Localize E3V2 Enhanced UI (#23424)
- 🌐 Update Slovak language (#23475)
- 🌐 Update auto home axis strings
- 🌐 Update German language (#23832)
- 🌐 Fix, add some menu labels (#23895)
- 🌐 Update Ukrainian language (#23935)
- 🌐 Rename "LCD Timeout" string
- 🌐 Update Russian language (#23978)
- 🌐 Update Chinese language (#23865)
- 🌐 Update Italian language (#24019)
Build / Upload
- 🔨 Get
FIRMWARE_BIN
from env - 🔧 Only warn about enabled
CONFIGURATION_EMBEDDING
(#23408) - 🔨 Upload to Optiboot at 115200 (#23403)
- 🔧 Update deprecated
auto_build.py
(#23427) - ⬆️ Assert newer GCC in PIO via atmelavr@~3.4 (#23432)
- 🔨 Rename (not copy) with board_build.rename
- 🐛 Fix Arduino build issues (#23510)
- 🐛 Fix
SHOW_REMAINING_TIME
compile (#23503) - 🐛 Fix
HAS_TMC26X
feature path (#23757) - 🔨 Update TMC26XStepper link
- 🔨 Set upload_command for CHEETAH v20 (#23515)
- 🩹 Fix
power.h
compile (#23573) - 🔨 Creality RCT6 (256K) variants (#23599)
- 📝 Update Creality 4.2.2 driver warning
- 🔧 Board temp sensor check
- 🔨 Workspace file with recommendation
- 🔧 Sanity-check AVR D9 Fan PWM /
SPEAKER
Timer2 (#23672) - 🐛 Fix Index Mobo Rev03 upload (#23676)
- 🚨 Deprecate Maple build (#23661)
- 🚨 Cleaner errors for renamed envs (#23690, #23786, #23831)
- 🩹 Fix Maple HAL compile errors (#23685)
- 🔧 Update
MIXING_EXTRUDER
sanity checks - 🔧
HAS_LCDPRINT
conditional - 🚨 Fix
TEMP_SENSOR_BOARD
warnings (#23754) - 🔧 Warning for
MK3_FAN_PINS
(#23727) - 🔧
SHOW_CUSTOM_BOOTSCREEN
sanity-check (#23807) - 🚨 Fix BLTouch 5V pin tolerance checks (#23823)
- 🔨 Drop extraneous build flag (#23862)
- 🚸 Test
LIN_ADVANCE
in a pins file - 🩹 Fix ExtUI build with Host Keepalive disabled (#23898)
- 🔨 Allow
I2CPE_ENC_n_INVERT
set to false - 🩹 No
PE_MAGNET_ON_STATE
withoutPARKING_EXTRUDER
- 🔧 No Switching Nozzle with MMU2
- 🔧 Sanity-checks for
PULLDOWN
,SINGLENOZZLE
- 🔨 Suppress MMU2
resume_position
warning - 🩹 Wrap
endstop_diag.cpp
(#23931) - 🐛 Fix pulldown sanity check
- 🔨 Fix
Makefile
GCC warning (#23957) - 🔨 Use first g++ in path for 'native' targets
- 🔨 Prevent build attribute define conflicts
- ✏️ Fix parking extruder compile (#23961)
- ✏️ Fix
NOZZLE_PARK_Y_ONLY
sanity-check (#23990) - 🔨 Preflight check old ABL files (#24010)
- 🐛 Prefer
os.replace
, fixTFT_LVGL_UI
build (#24001) - 🔨 Fix LPC176x debug build
- 🔧 Sanity-check
SWITCHING_TOOLHEAD_X_POS
(#23985) - 📌 Use ESP3DLib master branch (#24140)
- 🔧 Fix Neo RGB sanity check (#24146)
- 🔧 AVR/DUE Serial Port pin conflict checks (#24148)
- 🎨 Clean up warnings / extra check (#24163)
- 🩹 Suppress
ZERO()
warning (#24178) - 🔨 Require PIO >= 6.0.1 (#24205)
- 📌 Use
MarlinSimUI/bugfix-2.0.x
(#24232) - ✏️ Fix some motherboard checks (#24238)
- 🔨 Add
src_filter
forI2C_AMMETER
(#24242)
For Developers
- 🔨 Add .vscode/extensions.json
- 🐛 Fix mffp usage
- 🧑💻 Add
AXIS_COLLISION
to catch broken parameters - 🚚 Rename L6470 G-code file
- 🚑️ Fix thermal conditionals, structure
- 🧑💻 Apply axis conditionals (9956e62674)
- 🔨 Strip CR in mftest > awk
- 🐛 Define required endstop enums (#23425)
- 🧑💻 Extend LCD string substitution (#24278)
- 🧑💻 Fewer string macros
- 🧑💻 Move PB0 init for
MKS_ROBIN_NANO
- 🧑💻 Adjust FastIO AVR timer enums, macros
- 🧑💻 Misc. updates for extra axes (#23521)
- 💥 Generalize extra debugging
- 🧑💻 Add
chmod
tomfprep
- ♻️ Adjust LCD init, contrast default, settings load
- 🩹 Fix DWIN float debugging (#23601)
- 🧑💻
HAS_MARLINUI_MENU
,HAS_MANUAL_MOVE_MENU
- ✅ FYSETC TFT81050 CI Test (#23604)
- 🧑💻 Simplify Fast PWM timer macros
- 💡 Comment variant timers
- 🧑💻 Relocate a variant
- 🔨 Clean up
upload.py
(#23679) - 🧑💻 Generic Maple STM32F103RC envs for devs (#23686)
- 🧑💻 PLR accessors for Ext UI (#23687)
- 🧑💻 Drop
hostui.flag
- 🧑💻 Wrap MMU1 pins
- ♻️ Rename X-Axis Twist Comp.
z_values
=>z_offset
- ♻️ Refactor HAL as singleton (#23357, #23871, #23897)
- 🧑💻 STM32G0Bx : Use PLLQ for USB clock (#23870)
- 🧑💻 Add
ExtUI::onLevelingDone
, match DWIN to ExtUI - 🧑💻 Add standard
BUZZ
types - 🩹 Fix
FSTR_P
/PSTR
usage - 🧑💻 Allow DIGIPOT Rsx / Vrefmax override (#23885)
- 🧑💻 Add
neo.set_background_color(rgbw)
- 🧑💻 PIO
--silent
inbuild_example
- 🔨 Fix
mftest -s
- 🧑💻
EXTRUDER_LOOP
macro - 🧑💻 Improve
STATUS_BED_X
- 🔨 Improved
mfprep
script - 🧑💻
IS_ULTRA_LCD
=>HAS_WIRED_LCD
- 🧑💻 Strip
#errors
inConfigurations
deployment - 🧑💻 Simplify
BIGTREE_SKR_2_F429
env - 🧑💻 Define
isr_float_t
to assert a non-FPU float (#23969) - 💥 Rename
ExtUI
settings methods - 🧑💻 Handle PLR in
manage_media
- ♻️ Consolidate
DGUSScreenHandler
class (#24067) - 🔨 OpenOCD Debug for VSCode
- 🧑💻 Clarify acceleration factor
- 🔨 Fix g++ locator for CI
- 🧑💻 General and Axis-based bitfield flags (#23989)
- 🔨 BTT Octopus ST-Link programming/debugging
- 🧑💻 Clarify
MSerialUSB
, dropHardwareSerial
workaround - 🔨 Use PlatformIO Core 6.0 Dev for CI (#24194)
- ♻️ Common Bed Leveling object name, accessors (#24214)
- ♻️ Move watchdog to
MarlinHAL
General cleanup
- 🎨 Simplify some debug echos
- 🧑💻 Remove extraneous 'inline' hints
- 🎨 Misc. spindle/laser adjustments
- 📝 Tweak
G26 Q
description - 📝 Update conditionals descriptions
- 📝 Update Toolchange FS comments
- 📝 Update laser/spindle docs link (#23886)
- 📝 Fix
DEFAULT_DUAL_X_CARRIAGE_MODE
comment - 📝 Fix
X2_MAX_POS
comment (#23873) - 🩹 Fix redundant var declaration (#23913)
- 🎨 Apply
_TERN
where possible - 🎨 Clean up tool change with tool sensor
- 🎨 Format, use status macros
- 📝 Fix extraneous URL args (#24125)
- 📝 Replace KB with K in pins
- 🎨 INI cleanup
- 🌐 Clean up languages
- 📝 Fix
M150 S
comment - ✏️ Remove extra
G29
line - 🎨 Combine common LPC1768 I2C code
- 🎨 Use
LEDColor
default C-CTOR - ⚰️ Clean up dead option (#24006)
- 📝 Obsolete freeze comment (#23964)
- 🎨 Tweak
NEOPIXEL_LED
format (#24110) - ✏️ Fix spurious UTF
- 🚚 Move
speed_lookuptable.h
- 🎨 Nextion cleanup
- 🎨
HAL_MinSerial.*
=>MinSerial.*
- 🩹 Fix
const
warning - 🔨 Move, tweak maple envs
- 📝 Add logo, helpful links to README (#24226)
- 🎨 Minor HAL cleanup
- 🎨 Combine serial echos
- 🎨 Use
pos.set
method - 📝 Refer to 'PROGMEM' as 'flash'
- 🎨 Use default null args in
select_screen