Releases: MarlinFirmware/Marlin
Marlin 2.1.3 beta 3
BETA RELEASE!
Marlin 2.1.3 is a major update focusing on stability, performance, and user interface.
This release is recommended for all users. Visit the Marlin Discord for assistance with configuration migration and build.
Pre-Built Firmware
We now publish pre-built binaries for many common 3D printers and other machines, according to the tuned configuration examples donated by users like you! Binaries for this version are published at the link below.
Changelog
- Full Changelog: dev-2.1.3-b2...2.1.3-b3
 - For previous release notes see Marlin 2.1.3-b2.
 
What's New
- ✨ 
BUILD_INFO_MENU_ITEM(#27590) - ✨ FLY_D5, FLY_DP5, FLY_D7, FLY_D8, FLY_D8_PRO, FLY_SUPER8_PRO, FLY_CDY_V3 (#27580)
 - ✨ 
MIN_POWER(#27742) - ✨ 
M550CONFIGURABLE_MACHINE_NAME(#27731) - ✨ 
LCD_DOUBLE_BUFFER(#26713) - ✨ 
MAG_MOUNTED_PROBE_SERVO_NR(#27551) - ✨ 
EDITABLE_HOMING_CURRENT(#27760) - ✨ Native GD32 support for Aquila v1.0.1 (#27765)
 - ✨ 
DEFAULT_ACCELERATION_SPINDLE(#27759) - ✨ Simulator: Virtual servos, BLTouch (#27779)
 - ✨ 
SMOOTH_LIN_ADVANCE(#27710) - ✨ 
SWITCHING_NOZZLE_LIFT_TO_PROBE(#27804) - ✨ 
FILAMENT_MOTION_DISTANCE_MM(#27812) - ✨ 
OTA_FIRMWARE_UPDATE(Creality STM32F401RE) (d806175) - ✨ Trinamic TMC2240 (SPI) (#25974, #27880, db137df, #27901, #27903, #27907, #27919)
 - ✨ 
EVENT_GCODE_AFTER_MPC_TUNE(#27865) - ✨ 
NONLINEAR_EXTRUSION_DEFAULT_ON(#27819) - ✨ E3D BigBox Rumba board (#27897)
 - ✨ 
MPC_PTC(#27911) - ✨ 
EVENT_GCODE_(BEFORE|AFTER)_G34(#27930) 
What's Fixed
- 🐛 Don't reset 
axis_did_moveinftmotion.reset(12d491c) - 🩹 RP2040 has 
PIN_SPI_SS(ab7137a) - 🩹 Update some hex-printing (#27654)
 - 🔨 Fix sim build with gcc-14 (81ef02e)
 - 🔨 Fix pioarduino path check for xtensa-esp32 (#27693)
 - 🩹 Fix MKS boards runout sensor pins (#27687)
 - 💚 Fix Simulator CI build (#27712)
 - 🚸 Fix extra "echo:" in 
M218report (#27674) - 🐛 Fix quoted string value detection (126e78d)
 - 🔨 Fix 
CONFIG_EXPORT 1, (embed = 101) (d9229ff) - 🩹🔧 Fix 
LCD_LANGUAGEfor HD44780 (#27729) - 🩹 Fix color game compile (#27721)
 - 🩹 Fix max Y/Z endstop pins on GMARSH X6 REV1 (434bf81)
 - 🩹 Update some SD SS pins (2d6454b)
 - 🐛 Fix RAMPS AUX1 RX/TX pins (#27745)
 - 🩹 BTT Manta M8P V2.0 fixes (#27748)
 - 🩹 Cleanup (for STM32 I2C LCD) (9a8b1ea)
 - 🩹 Fix 
TOUCH_UI_FTDI_EVEbuild (#27667) - 🩹 Fix Simulator KILL pin overlap (#27668)
 - 🚸 Fix G4 Dwell overflow (363f324)
 - 🩹 Cleanup (for STM32 I2C LCD) (a8fea3d)
 - ⚡️ FT Motion: Fill window in 
makeVector(#27718) - 🩹 
MKS_TINYBEEADC reference voltage warning (#27755) - 🐛 Fix E DIR init (#27770)
 - 🔨🩹 Misc. code corrections, notes (15ce5d0)
 - 🔨🩹 Pass Ultipanel with 
ADC_KEYPAD(766dfda) - 🔨 Fix GCC14 / C++23 volatile warnings (#27768)
 - 🔨🩹 Pass Ultipanel with 
TOUCH_SCREEN,HAS_TOUCH_BUTTONS,HAS_SLOW_BUTTONS(2004198, 546a014, a80e790) - 🔨🩹 Drop old 
ULTIPANELsanity check (26551c1) - 🚸 Fix MKS UI print done state (#27730)
 - 🚸 Fix FT Motion Linear Advance MarlinUI edit item (#27786)
 - 🩹 
TFT_BUFFER_SIZE=>_WORDS(6f5e6fd) - 🩹 Fix i2c encoder report (6d2dfca)
 - 🩹 Fix 
DWIN_CREALITY_LCD_STD_ICONS(7d82f95) - 🐛 Fix Servos in GD32 HAL (#27791)
 - 🚸 Fix missing "echo:" in some reports (#27794)
 - 🎨 Fix and/or warning (8867c45)
 - 🩹 Fix Linear Advance edit item (58f0395)
 - 🐛 Fix GD32 ignoring SERIAL_DMA on init (#27800)
 - 🐛🔧 Move extra volume flags (d434729)
 - 🐛 Watchdog Reset PIO on DUE to prevent hang (#27803)
 - 🌐 Fix extra 
MSG_ATTACH_USB_MEDIA(28a1355) - 🚸 Fix TFT GLCD "Select from Media" glitch (3df7518)
 - 🩹 Fix 
AboutScreen::onTouchEndwarning (e3a28af) - 🩹 Misc. HAL, flag fixes (f60bc27)
 - 🩹 Fix Ultimain 2 
MOTOR_CURRENT_PWM_RANGE(#27705) - 🩹 Minor ExtUI/DGUS code fix/cleanup (585cbbb)
 - 🚸 Fix MKS UI G-code result display (#27825)
 - 🚸 Fix ProUI LCD wake up (#27832)
 - 🩹 Fix 
Y_STOP_PINalias forY_MAX_PIN(44ef6e2) - 🩹 Fix TH3D EZ V2 sensorless homing (735cd9a)
 - 🚸 Fix ProUI LCD wake up (2) (#27835)
 - 🔨 Fix build flags for 
env:mks_monster8_usb_flash_drive(3a3c3b8) - 🔨 Fix some build_flags inheritance (b7a1681)
 - 🚸 Fix 16x4 SD Print Progress display (#27844)
 - 🧑💻 Fix GD32 EEPROM timings (#27846)
 - 🩹 Fix '
PIN_EXIST' typo (#27856) - ✏️ Fix variant docs typo (#27850)
 - 🔧 Fix Speed/Flow edit options (#27863)
 - 🧑💻 Fix 
max_isr_ratesign warnings (a4382b4) - 🔨 Solve a linker error (af553d5)
 - 🩹 Fix delay µs > 32767 (e766292)
 - 🩹 Fix Bluesky badge (#27879)
 - 🩹 Fix ProUI Linear Advance menu (#27878)
 - 🔨 Fix Windows/ReARM upload (#27872)
 - 🩹 Fix MKS UI E Max Feedrate items (bd9d7a3)
 - 🩹 Call 
SERIAL_IMPL.msgDone()afterM105(21559b0) - 🐛 Fix 
M201withXY_FREQUENCY_LIMIT(#27859) - 🩹 Misc temp sensor fixups (#27884)
 - 🐛 More robust Smooth Linear Advance (#27862)
 - 🌐 Fix Italian typo, etc. (#27890)
 - 🩹 Fix some missed 
ONBOARD_SDIO(3ddf728) - 🩹 Fix 
EXP3_03_PINforCREALITY_V24S1_301F4(cc05123) - 🩹 Fix Nozzle Cleaning wait for pre-set temp (9f6cafb)
 - 🩹 Fix FLY D5 / D7 serial for TMC2208 (7df503d)
 - 🩹 Update Creality CR4NS (951b8be)
 - 🩹 Fix Nonlinear Extrusion build (#27906)
 - 🩹 Fix ProUI edit Lin.Adv.K (#27895)
 - 🩹 Fix Ender-3 S1 pin EXP3-4 (#27915)
 - 🩹 Minor fixes, updates, comments (5e410e3)
 - 🐛 Fix Hotend > 0 Preheat (#27932)
 - 🐛 Fix 
NONLINEAR_EXTRUSIONenabled check (#27926) - 🔧 Fix 
SPI_FLASH_BACKUPflag (#27934) - 🔧 Fix 
TEMP_SENSOR_BED_USES_SW_SPI(#27938) - 🐛 Fix misc. build issues (a6377e5)
 
User Interface
- 🚸 Disable FT Motion during Biqu Microprobe use (#27368)
 - 🚸 Improve TFT touch calibrate (#26200)
 - 🚸 Chamber Preheat completion (#26864)
 - 🚸 Move About / Games to menu bottom (#26820)
 - 🚸 ProUI "View Mesh (grid)" item (#26181)
 - 🚸 Disable 
MIN_CHAMBER_POWER(a4c35b1) - 🚸 Refactor MKS H43 LCD (#27776)
 - 🚸 Report 
M48Max Delta (#26286) - 🚸 Refactor MKS H43 LCD (2) (#27780)
 - 🚸 FT Motion menu fix, neaten (a55355d)
 - 🚸 Some default filament runout pins (9a6bf16)
 - 🚸 More frequent button polling (#27797)
 - 🚸 "Inverted" text on GLCD (efd8757)
 - 🚸 Clear alert on menu click (3696cc3)
 - 🚸 Detect multi-volume insert / remove (f78aaf9)
 - 🚸 Simplified Media Menu (99c29cd)
 - 🚸 Extend 
M360(a Repetier code) (5a88a80) - 🚸 Include 'R' in 
M208report (c8265d6) - 🚸 Misc. optimizations, cleanup, DWIN fixes… (#27858)
 - 🚸 Improve MKS UI with LVGL v6.1.2 (#27889)
 - 🚸 Improve XPT2046 touch, MKS UI calibration (#27892)
 
Configuration
- 🔧 Sequential Opulo boards (428f721)
 - 🔧 Static assert Dual X min/max (#27701)
 - 🔧 
BOARD_LCD_SERIAL_PORT(82d3d78) - 🔧 More serial ports for Teensy HALs (#27736)
 - 🔧 
LCD_PINS_ENABLE=>LCD_PINS_EN(#27700) - 🔧 Max Stepper Rate sanity-checks (#27764)
 - 🔧 Raise MBL grid size limit (#27790)
 - 🔧 Malyan M300 / Monoprice Mini alternate orientation (#27808)
 - 🔧 Allow 
SMOOTH_LIN_ADVANCEwithDISTINCT_E_FACTORS(1383a4e) - 🔧 Apply 
DEFAULT_VOLUMEon boot (85f6090) - 🔧 More thorough 
TEMP_SENSOR_*cleanup (#27826) - 🔧 Bricolemon cleanup, update (#27829)
 - 🔧 TMC Baud Rate for FLY D5/D7 (#27860)
 - 🔧 Allow 
TMCStepperwith Zonestar ZM3 E2xx (f49e730) - 🔧 Update BIQU BX SPI driver conditionals (#27886)
 - 🔧 Update BTT002 SPI driver conditionals (#27887)
 
Build
- 🔨 Prevent ESP32 bad dependency (2963523)
 - 🔨 Elegoo Neptune boards ("
elegoo.bin") (#24895) - 🔨 Rename FYSETC S6/Spider envs (#27122)
 - 🔨 PowerShell compatibility (#27720)
 - 🔨 Reduce warnings on types (b5068bb)
 - 🔨 Suppress generate_version (for now) (bd382fb)
 - 🔨 Creality V4.2.7 (GD32) (#27796)
 - 🔨 ESP3DLib update for compatibility (#27851)
 - 🔨 Better FT Motion menu string code (2976bb4)
 
Optimization
- ⚡️ STM32H7 Serial DMA (#27633)
 - ⚡️ Always "optimize" FT Motion DIR states (#27692)
 - ⚡️ Optimize PID, increase PID range (#27740)
 - ⚡️ Optimal 
recalculate_max_e_jerk(72f3a4a) - ⚡️ GD32: Fast GPIO optimization (#27845)
 - ⚡️ Optimize Smooth Linear Advance (via fixed-point) (#27818)
 - ⚡️ Remove FT Motion extraneous code (#27881)
 - ⚡️ 
SMOOTH_LIN_ADVANCE+S_CURVE_ACCELERATION(#27827) 
For Developers
- 🧑💻 Script for 
gccsetup on macOS (Simulator build) (442f0ba, #27655, cbe8a68, 4875420) - 🧑💻 Media conditionals (0f7fb5d)
 - 🧑💻 More binary file types (cd3997f)
 - 🧑💻 Standard logical 
FLIP(X)(99c3a71) - 🧑💻 Probe Wizard comments (07b9790)
 - 🧑💻 More extensible Temperature::lcd_preheat (4ad6fa5)
 - 🧑💻 Lambda for MarlinUI media items (fc49efc)
 - 🧑💻 Reuse 
MarlinUI::apply_preheat(a7684ec) - 🧑💻 ProUI: pre-calculate menu sizes (c7e6437)
 - 🧑💻 Silence findMissingTranslations grep output (5d75567)
 - 🧑💻 Some
millis()'unsigned long' (91a87f4) - 🧑💻 More robust 
TERN_macro (ac5fa61) - 🧑💻 Individual TMC flags (add72fd)
 - 🧑💻 Language tweaks (7bd74fe)
 - 🧑💻 Tweak MAX7219 test pattern (448ff71)
 - 🧑💻 Allow for tests on macOS / Windows (efa1758)
 - 🧑💻 Move stepper 
ENABLEtoindirection.h(73ed543) - 🧑💻 Digipot settings cleanup (43177af)
 - 🧑💻 
HAS_MOTOR_CURRENT_PWM_Z(59423da) - 🧑💻 Add 
Parser::has_string(bc85f5b) - 🧑💻 
DGUSScreenHandlerhack for MKS (#27789) - 🧑💻 Clarify 
DEPLOY_ALARM(65b8ced) - 🧑💻 
Planner::max_jerkalwaysxyze_pos_t(26b3f0b) - 🧑💻 Add 
stepper/control.cpp(b97b094, d3687d9) - 🧑💻 GD32 fast write non-bool (#27806)
 - 🧑💻 FastIO AT90USB pins 46-47 (24928f9, ef9cec9)
 - 🧑💻 TFT GLCD "
panel_detected" (7ee745b) - 🧑💻 Clarify some SD / FD build flags (d166678)
 - 🧑💻 Stub Ca...
 
Marlin 2.1.3 beta 2
BETA RELEASE!
Marlin 2.1.3 is a major update focusing on stability, performance, and user interface.
This release is recommended for all users. Visit the Marlin Discord for assistance with configuration migration and build.
Pre-Built Firmware
We now publish pre-built binaries for many common 3D printers and other machines, according to the tuned configuration examples donated by users like you! Binaries for this version are published at the link below.
Changelog
- Full Changelog: e33dafe...2.1.3-b2
 
New Features
- ✨ 
EVENT_GCODE_BEFORE_G29(#27566) - ✨ Teensy 4 hardware PWM for laser/spindle/fan (#27608)
 - ✨ MAX31865 Bed settings (#27611)
 - ✨ Games for E3V2 + MarlinUI (#27620)
 
Fixed Issues
- 🩹 Fix 
VALIDATE_HOMING_ENDSTOPSmissing header (e0c60a8) - 🐛 Fix 
M119filament sensor part (#27596) - 🐛 Fix JG Aurora A1 implementation (#27622)
 - 🩹 Fix EEPROM CRC display (#27631)
 - 🐛 Fix config embed and restore (#27628)
 - 🐛 Fix ERYONE Ery32 mini SPI for SD (#27600)
 
Improved
- ⚡️ STM32H7 Flash Wear Leveling (#27634)
 - 🚸 Enabled probe clearance in 
do_move_after_z_homing(#27593) - 🧑💻 Update types forward decl (#27637)
 - 🧑💻 Add STM32/STM32F1 Open Drain (OD) pin mode (#27616)
 
Build
Configuration
- 🔧 Standard filament runout pins for MKS_UI / MKS TFT (#27640)
 - 🔧 BTT SKRat UART driver support pending (#27639)
 
Miscellaneous
- 📝 Add'l homeaxis comments (70cdfbe)
 - 🔨 Migrate 
use_example_configsto Python (#27632) - 🩹 Fix 
DGUS_LCD_UI_MKStypo (30697cb) 
For previous release notes see Marlin 2.1.3-b1.
Marlin 2.1.3 beta 1
BETA RELEASE!
Marlin 2.1.3 (beta 1) is a major update focusing on stability, performance, and user interface.
This release is recommended for all users. Visit the Marlin Discord for assistance with configuration migration and build.
Pre-Built Firmware
We now publish pre-built binaries for many common 3D printers and other machines, according to the tuned configuration examples donated by users like you! Binaries for this version are published at the link below.
Full Changelog: e33dafe...2.1.3-b1
Highlights
- ✨ Fixed-Time Motion with Input Shaping by Ulendo
(#25394, #25835, #26083, #26557, #25637, #25719, #26020, #26074, #26175,
#26595, #26620, #26628, #26643, #26670, #26720, #26785, #26848, #27063,
#27179, #27302, #27335, #27349, #27359, #27367, #27401, #27416, #27474,
e7e77d9, 5bd39ba, 97d8a68, c25a673, af4ba2b, ade05c0,
ec6bc15, b062a3b, 2d60948, 46e8b9c) - ✨ Polar Kinematics (#25214)
 - ✨ RS485 support with G-code 
M485(#25680) - ✨ HAL for RP2040 with BTT SKR Pico (#24042)
 - ✨ HAL for HC32F460 (#26414)
 - ✨ 
STARTUP_TUNEconfiguration (42c62ff, d77e921) - ✨ 
POLARGRAPH/PEN_UP_DOWN_MENU(#25303, #25514) - ✨ "One Click" Print newest file (#25781)
 - ✨ Nonlinear Extrusion Control (
M592) (#26127) - ✨ BIQU MicroProbe (#26527)
 - ✨ Prusa MMU3 (#26635)
 - ✨ MAX Thermocouples for Heated Bed (#26441)
 - ✨ 
PELTIER_BED(#27334) - ✨🔧 Minimal configuration with 
Config.h(#27338) - 🚸 Probe / Level Menu (#27393)
 - 🩹⚡️ Fix judder, optimize planner (#27035)
 - 🚸 Support Bed Leveling Mesh > 16x16 (060ddf5)
 - 🚸 Restore Object Cancel info on Power-Loss Recovery (#27501)
 - 🔧 Thermistor 100 : SoC sensor (#25745)
 
New Features
- ✨ Extra Z Servo Probe options (#21427)
 - ✨ 
Z_SAFE_HOMING_POINT_ABSOLUTE(#23069) - ✨ 
Z_SERVO_DEACTIVATE_AFTER_STOW(#24215) - ✨ 
PROBING_TOOL(#24411) - ✨ Switching extruder/nozzle without servo (e.g., Dondolo) (#24553)
 - ✨ 
LARGE_MOVE_ITEMS(#25026) - ✨⚡️ UTF support for TFT Color UI (#25073)
 - ✨ Persistent 
AUTOTEMPsettings (#25093) - ✨ 
PREHEAT_TIME_BED_MS(#25146) - ✨ 
AVOID_OBSTACLESfor UBL (#25256) - ✨ 
STATUS_HEAT_POWER(#25268) - ✨ 
M306 Efor MPC extruder index (#25326) - ✨ 
TC_GCODE_USE_GLOBAL_*(#25399) - ✨ 
LCD_BACKLIGHT_TIMEOUTfor Neopixel LCD (#25438) - ✨ 
REPORT_ADAPTIVE_FAN_SLOWING(#25537) - ✨ 
FILAMENT_SWITCH_AND_MOTION(#25548) - ✨ 
TEMP_SENSOR_SOC(#25642) - ✨ 
BLTOUCH_HS_EXTRA_CLEARANCE(#25655) - ✨ 
NOZZLE_CLEAN_PATTERN_*(#25666) - ✨ 
AUTO_REPORT_REAL_POSITIONoption for M154 (#25738) - ✨ 
AUTO_POWER_SPINDLE_LASER(#25739) - ✨ 
NUM_REDUNDANT_FANS(#25808) - ✨ 
EP_BABYSTEPPING(#25869) - ✨ 
VOLUMETRIC_EXTRUDER_LIMIT_MAX(#25884) - ✨ G-code '
T' report current tool (#26151) - ✨ 
MAX7219_REINIT_ON_POWERUP(#26163) - ✨ 
Z_PROBE_ERROR_TOLERANCE(expose) (#26229) - ✨ Tool Migration-specific settings (#26244)
 - ✨ Probe XY Offset value limits (#26267)
 - ✨ 
SERIAL_DMA(for some STM32Fx) (#26328) - ✨ 
BED_ANNEALING_GCODE(#26341) - ✨ 
BD_SENSOR_PROBE_NO_STOP(#26353) - ✨ 
G27 P3/P4(#26401) - ✨ 
COMPACT_CUSTOM_BOOTSCREEN(#26419) - ✨ 
XY_AFTER_HOMING,EVENT_GCODE_AFTER_HOMING(#26469) - ✨ 
DOUBLE_LCD_FRAMERATE(#26500) - ✨ 
MARKFORGED_INVERSE(#26516) - ✨ 
EDITABLE_DISPLAY_TIMEOUT(#26517) - ✨ 
EDITABLE_STEPS_PER_UNIT(#26618) - ✨ Status Screen flow adjustment (#26627)
 - ✨ 
PLR_BED_THRESHOLD(#26649) - ✨🔨 EEPROM exclusion zone (#26729)
 - ✨ Redundant PSU Control with EDM (#26751)
 - ✨ 
MARLIN_SMALL_BUILDoption (#26775) - ✨ 
SHOW_CUSTOM_BOOTSCREENfor HD44780 (#26793) - ✨🐛 HC32 - Add 
SERIAL_DMA, fix SDIO andMEATPACK(#26845) - ✨ 
M3/M4 Ofor laser/spindle (#26883) - ✨ 
FAN_KICKSTART_LINEAR(#27072) - ✨ 
INPUT_SHAPING_Z(#27073) - ✨ 
M110Get Command Line Number (#27090) - ✨ 
CONTROLLER_FAN_BED_HEATING(#27409) - ✨ 
EDITABLE_HOMING_FEEDRATE/M210(#27456) - ✨ 
M820Report temporaryM810-M819macros (#27458) - ✨ 
GENERIC_BACK_MENU_ITEM(bebf5dc) - ✨ 
MAX7219_DEBUG_MULTISTEPPING(4fdb0fb) - ✨ 
NUM_REDUNDANT_FANStoo (f97a813) - ✨ 
PROBE_TARE_MENU(9b472a0) - ✨ Rename 
@strings_A=>_N(556d716) 
New Controllers
- ✨ New 
DGUS_LCD_UIoption,IA_CREALITY(#25143, #25175, 42cfa4f, #25397) - ✨ TFT 320x240 portrait (#25207)
 - ✨ SPI TFT / Touchscreen for STM32H7 (#25784)
 - ✨ Sovol SV06 Plus Touchscreen (#25864)
 - ✨ 
CTC_A10S_A13(#26514) - ✨ Initial support for HC32 U8G LCD (#26568)
 - ✨ Ender-3 V2 LCD with SKR 3 EZ (#27061)
 
New Boards
- ✨ BigTreeTech Manta M4P, M5P, M8P V1.0 / 1.1, E3 EZ (#25001)
 - ✨ Blackpill-based custom board (#25152)
 - ✨ Sovol v1.3.1 (Sovol SV06) (#25267)
 - ✨ BTT Octopus Max EZ 1.0, SKR 3.0 / 3.0 EZ (#25387)
 - ✨ AnyCubic Vyper / Vyper LCD (#25405)
 - ✨ I3DBEEZ9 board (#25614)
 - ✨ Creality E3 Free-runs Silent Motherboard (#25636)
 - ✨ Panowin Cutlass / Bardo (F1 / Trinus) (#25663)
 - ✨ Creality Ender-2 (Melzi) (#25754)
 - ✨ Creality STM32F401RE board (e.g., Ender-5 S1) (#25773)
 - ✨ KEDI (STM32F1) and GODI (ESP32) boards (#25796)
 - ✨ Geeetech GT2560 V4.1B board (#25888)
 - ✨ MM-JOKER (ESP32) board (#25897)
 - ✨ Ender 3 S1 Pro/Plus stock touchscreen (#25905)
 - ✨ BTT RAMPS 1.6+ (#25970)
 - ✨ BTT Octopus Pro V1.1 (STM32H723ZE) (#26043)
 - ✨ Mellow Fly E3 V2 (STM32F407VG) (#26081)
 - ✨ BTT Octopus Pro V1.0.1 (STM32H723ZE) (#26159)
 - ✨ FYSETC Cheetah v3.0 (#26314)
 - ✨ MINGDA D2 D301 v1.0 (#26340)
 - ✨ BlackBeezMini 3D by I3DBEE (#26406)
 - ✨ Voxelab Aquila N32 (via Maple) (#26470)
 - ✨ Orca 3D Modular Controller (#26534, c313811)
 - ✨ BigTreeTech Kraken V1.0 (STM32H723ZG) (#26565)
 - ✨ BigTreeTech Manta M8P V2.0 (STM32H723ZE) (#26578)
 - ✨ Creality v2.4.S4_170 (Ender 2 Pro, HC32F460KCTA) (#26730)
 - ✨ Dagoma D6 / DiscoUltimate v2 TMC (#26874, 0269106)
 - ✨ Ender-3 V3 board CR4NS200320C13 (#27003)
 - ✨ XTLW boards (#27260)
 - ✨ BigTreeTech SKRat V1.0 (STM32G0B1VE) (#27361)
 - ✨ Mellow/Fly RRF E3 V1.0 (STM32F407VG) (#27466)
 
Optimizations
- ⚡️ Implement 
CALIBRATION_GCODEas endstop (#27204) - ⚡️ Misc. optimizations (e6ac9ff)
 - ⚡️ Major shaper optimization (e4b83ad)
 - ⚡️ Improve TFT DMA for STM32 (#25359)
 - ⚡️ Use 
strlcpywith buffer size (#26513) - ⚡️ Update ISR cycle counts (db2b8a6)
 - ⚡️ Reduce 
DISPLAY_SLEEP_MINUTESoverhead (#26964) - ⚡️ Ethernet Buffer for Input Shaping on LPC (#26027)
 - ⚡️ Optimize LPC176x 
set_pwm_duty(#27178) - ⚡️ Use cached 
la_activestate (d554844) - ⚡️ Load/init (most) settings after showing boot-screen (#27199)
 - ⚡️ Exit from ISR on AVR already does 
sei(cb66bff) - ⚡️ Reduce 
edit_screencode size (#25420) - ⚡️ Tiny string optimization (bf61e52)
 - ⚡️ Faster 
COMPACT_MARLIN_BOOT_LOGO(rle16) (#26153) - ⚡️ Slimmer null 
Tcommand (#26615) - ⚡️ 
G30optimize and comment (7901eb9) - ⚡️ Add / enforce 
min_entry_speed_sqr(#27089) - ⚡️ Compact RGB565 TFT boot images (#26011)
 - ⚡️ Skip a redundant 
BLTouch::command(#25656) - ⚡️ Set 
steps_per_isrincalc_multistep_timer_interval(549419e) - ⚡️ Mixer label in 
PROGMEM(4b8e4ef) - ⚡️ Use 
AxisFlagsforstep_needed(4a0cb4f) - ⚡️ Smart Adaptive Multi-Stepping (#25474)
 - ⚡️ Fix motion smoothness (#27013)
 - ⚡️ Fix MMU2 
sscanfbug, optimize (#26449) - ⚡️ Improve Homing / Probing Current (#26714)
 - ⚡️ Optimize LPC176x pin toggle (#27149)
 - ⚡️ SAMD21 LCD uses HW SPI with media (#26012)
 - ⚡️ Use 
hal_timer_tfor timing vars (194f587) - ⚡️ Extend bitmap compression (178938d)
 - ⚡️ Optimize speed lookup for AVR (143a870)
 
LCD / Controller
- 🚸 Improve MMU2 unload (like original MMU2S) (#20147)
 - 🚸 Temperature Variance Monitor tweaks (#23571)
 - 🚸 Color UI remaining time (#24843)
 - 🚸 
M86-M87Hotend Idle Timeout (#25015) - 🚸 Negative temperature display option (#25036)
 - 🚸 Unify edit limits for some E3V2 LCDs (#25045)
 - 🚸 Attach USB media (#25120)
 - 🚸 
MarlinUIedit steps/mm to 2 decimal places (#25144) - 🚸 Z Servo Probe is 
HAS_STOWABLE_PROBE(#25158) - 🚸 
RGB_STARTUP_TESTfor PCA9632 (#25163) - 🚸 ProUI updates (#25176)
 - 🚸 ProUI MPC menu (#25232)
 - 📺 Melzi v4 with BTT SKR Mini E3 (#25321)
 - 🚸 Option to report temperature on error (#25341)
 - 🚸 SPI endstops for X/Y Dual and Core (#25371)
 - 🚸 Stop button for Touch UI (#25379, a321125, #26342)
 - 🚸 Interruptible PLR (#25395)
 - 📺 Update Re-ARM VIKI2 SPI pins (#25411)
 - 🚸 Optional X-Axis (#25418)
 - 🚸 Fix / improve 
LCD_BED_TRAMMING(#25425) - 🚸 Improve CocoaPress Touch UI (#25446)
 - 🚸 Refinements for UBL 
G29 J(tilt mesh) (#25486) - 📺 
DGUS_RELOADED1.03 (#25490) - 🚸 Improve Z-Probe raise for deploy (#25498)
 - 🚸 Improved 
MPCTEMPautotune (#25503) - 🚸 TFT optional axes/extruder (#25624)
 - 🚸 TS35 portrait display (#25629)
 - 🚸 Support CoreXY without Z (#25630)
 - 🚸 
G28/G30return for failed probe deploy (#25652) - 🚸 
MarlinUIEndstop Test Screen, and more (#25667) - 🚸 Echo 
G30out-of-bounds (#25671) - 🚸 Improve 
PAUSE_PROBE_DEPLOY_WHEN_TRIGGERED(#25681) - 🚸 Permit 
G38with Core (#25713) - 🚸 Bed distance sensor improvements (#25847)
 - 🚸 Improve EEPROM validation (#25860)
 - 🚸 Fix TFT menu positioning (#25942)
 - 🚸 Portrait TS35 move axis screen (#25945)
 - 🚸 Revert 
M206Home Offset behavior (#25996) - 🚸 Update DWIN ProUI (#26003)
 - 🚸 BD Sensor Z axis stop height (#26015)
 - 🚸 JyersUI MPC menu (#26017)
 - 🚸 Fix HD44780 
EDIT_ITEMposition (#26073) - 🚸 Fix input shaping menu for 
SHAPING_FREQ_[XY]== 0 (#26075) - 🚸 Fixes for ProUI, JyersUI, backlight, etc. (#26086)
 - 🚸 Update LCD Manual Leveling display (#26088)
 - 🚸 UI Sound off/on with 
M300 E<0|1>(#26142) - 🚸 Adjust ColorUI chamber bmp (#26149)
 - 🚸 DOGM active extruder in...
 
Marlin 2.1.2.5
This is a minor release bringing over some changes from the latest development branch. Configurations have been patched up to allow for a more complete binary deployment.
Example Configurations for many machines are posted at:
https://github.com/MarlinFirmware/Configurations/tree/release-2.1.2.5
Binaries of this release can be found at:
https://github.com/MarlinFirmware/MarlinBuilds/tree/release-2.1.2.5
Full Changelog: 2.1.2.4...2.1.2.5
Changes
- 🩹 Fix STM32 CPU serial UUID (#26715, #26727, #26737)
 - 🐛 Fix skipping of G2/G3 E-only moves
 - 🐛 Update and patch some pins files
 - 📝 Update some config links and defaults
 - 🔨 Update build and other supporting scripts
 - 🔨 Add 
mega1281specific build environment - 🔨 Update to the newest Simulator
 - 🧑💻 Update to the newest Pins Debugging
 
Marlin 2.1.2.4
Marlin 2.1.2.4 is a maintenance release to patch a few issues affecting certain kinds of setups, e.g., independent axes with multiple endstops. We recommend trying this version if you've encountered any of these issues.
Fixed / Improved
- 🩹 Fix broken 
STEPTESTfor multi-endstop (9e02be4) - 🐛 Mount media early for 
POWER_LOSS_RECOVERY(#27177) - ✏️ Fix comma typo (#27138)
 - 🚸 Prefer friendly Power Off over Auto-unalive (aa778c3)
 - ⚡️ Optimize LPC176x pin toggle (#27149)
 
Build
- 🔨 Update SAMD51 build deps (1d13aaa)
 - 🔧 Overridable 
SUICIDE_PINforRAMPS_CREALITY(#27143) - 🔧 Assume 
RAMPS_CREALITYis not CR2020 (e6787f7) 
Miscellany
Marlin 2.1.2.3
Marlin 2.1.2.3 is a maintenance release patching a few bugs and regressions. We recommend giving this version a try if you encountered any of the following issues that existed in Marlin 2.1.2.2.
- 🐛 Fix 
DETECT_BROKEN_ENDSTOPon IDEX (#26790) - 📝 Fix 
M201typos (#26854) - 👷 Minor 
signature.pyadjustments - ✏️ Fix stepper MS pin typos (#26891)
 - 🚸 Hide auto-run as needed (#26853)
 - 🐛 Fix ESP32 laser 
M4exception (#26884) - 📝 Fix 
Cutter.mdtypo (#26901) - 🔨 Fix binary upload firmware path (#26909)
 - 🩹 Fix missing 
MSG_ATTACH_SD_MEDIAdefine (#27020) - 🩹 Fix missing 
EXTENSIBLE_UIinclude (#27021) - 🩹 Fix broken 
ENDSTOPPULLUP_ZMIN_PROBE(#27022) - 🩹 Update preheat end time var (#27023)
 - 🩹 Fix missing 
HAS_DUAL_Y_STEPPERS(#27024) - 🩹 Fix ESP3D WiFi, bump config version (#27025)
 - 🐛 Fix 
booloperator forXYval, etc. (#27026) - 🩹 Fix serial temp error language [63fba61]
 - 🐛 Prevent '
EVAL' macro collision (#27132) 
Marlin 2.1.2.2
Marlin 2.1.2.2 is a maintenance release with several patches to improve existing features, with minor adjustments to configuration.
New Features
- ✨ Add Thermistor 14 (used for the Ender-5 S1).
 
Issues Fixed
- 🐛 Fix I/J/K chopper timing (#26736)
 - 🚸 Fix repeating "Power Off" message (#26755)
 - 🐛 Fix 
G38probe target probe checking. - 🚸 Raise top temperature to 320°C for Thermistor 1.
 - 🐛 Fix leveling XY move feedrate on ExtUI displays.
 - 🐛 Fix quick homing for UVW with 
SENSORLESS_HOMING. - 🔧 Improved support for machines without X, Y, Z, E axes.
 - 🚸 Remove extra 
G76probe raise. - 🔧 Allow per-axis baud rate for TMC stepper drivers.
 - 🐛 Fix fan software PWM init.
 - 🐛 Fix inverted fan state.
 - 🐛 Fix init for inverted heater states.
 - 🐛 Fix build error with Thermistor 68.
 - 🐛 Fix support for more than 4 servos.
 - 🐛 Ensure serial flush after 
M303. - 🐛 Fix 
M125wait for user with some displays. 
LCD / Controller / UI
- 🚸 Fix Filament Change item position with/without encoder.
 - 🚸 Update FTDI Eve Touch UI (Lulzbot / Cocoa Press).
 - 🍱 Update DWIN icon graphic files.
 - 🚸 Use the term "Tramming" instead of "Level Corners."
 - 🌐 Update Romanian font data.
 - 🌐 Allow menu strings to contain '='.
 
Build / Install
- 🔨 Improve PlatformIO INI feature filters.
 - 🔨 Apply specific version / commit ID to libraries.
 
Boards / Pins
- 🔧 Rename 
BOARD_BTT_MANTA_M4P_V1_0toBOARD_BTT_MANTA_M4P_V2_1. - 🎨 Replace 
LCD_PINS_ENABLEwithLCD_PINS_EN. - 🎨 Replace 
FAN_PINwithFAN0_PIN. - 🎨 Replace 
SDIO_SUPPORTwithONBOARD_SDIO. - 🔥 Remove unpublished board VAkE 403D.
 
Configuration Changes
- 📝 Update links to products, documentation.
 - 🔧 Move configuration change alerts to 
inc/Changes.h. - 🔧 Replace 
DISABLE_[AXIS] true/falsewith simple switchesDISABLE_[AXIS]. - 🔧 Replace 
TFT_SHARED_SPIwithTFT_SHARED_IO. - 🔧 Remove 
X2_HOME_DIR(always assume +1). - 🔧 Remove 
EXPERIMENTAL_SCURVE(not needed). - 🔧 Replace 
TMC_SW_MOSI/MISO/SCKwithTMC_SPI_MOSI/MISO/SCK. - 🔧 Replace 
BTT_MINI_12864_V1withBTT_MINI_12864. - 🔧 Replace 
FOLDER_SORTINGwithSDSORT_FOLDERS. - 🔧 Replace 
DISABLE_INACTIVE_EXTRUDERwithDISABLE_OTHER_EXTRUDERS. - 🔧 Replace 
DEFAULT_STEPPER_DEACTIVE_TIMEwithDEFAULT_STEPPER_TIMEOUT_SEC. - 🔧 Replace 
DISABLE_INACTIVE_[AXIS] true/falsewith simple switchesDISABLE_IDLE_[AXIS]. 
General Cleanup
- 🎨 Clean up file headings, whitespace, code formatting, comments.
 
For Developers
- 🧑💻 Globally replace 
EITHER/BOTHwithANY/ALL - 🧑💻 Globally replace 
LOOP*macros with for loops. - 🧑💻 Globally replace 
SDSUPPORTwith conditionalHAS_MEDIA. - 🧑💻 Replace 
ADC_VREFwithADC_VREF_MVfor easier validation. - 🧑💻 Replace 
AS_CHAR()withC()for serial echo. 
Known Issues
- See #27019 for a list of known issues.
 
Marlin 2.1.1.1
- 🔨 Update for compatibility with PlatformIO 6
 
Marlin 2.1.0.1
- 🔨 Update for compatibility with PlatformIO 6
 
Marlin 2.0.8.3
- 🔨 Update for compatibility with PlatformIO 6