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 SERVO0_PIN override on Creality Melzi (#21007)
- EXP headers for RAMPS 1.x (#21054)
- Trigorilla Pro: Allow for swapped Z-stops
- Add
BOARD_PREINIT
(for Longer3D open drain pins) (#21159) - Lerdge-K TMC 2208/9 UART pins (#21299)
- Lerdge-X I²C EEPROM pins, size (#21322)
- Update display timing for SKR Pro (#21346)
- Update Anet V1.0 display timing (#21425)
- GT2560 Rev.A Plus Z Max Pin with BLTouch (#21375, #21512)
- Board IDs for G2560 Rev B, G2560 v4, GTM32 VD (#21499)
EXP2_01_PIN
for BTT BTT002 1.0- Changes supporting "Prussia3D" MK3 (#21617)
- MCP4451 Digipot Support for Azteeg X5 GT (#21680)
Board / HAL Fixes
- Fix onboard SD card support for Teensy 3.6 & 4.1 (#19593)
- Fix
TEMP_ADC_PROBE
support for STM32F1 (#19582) - Fix Archim1 stepper timing (with new variant) (#19596)
- Fix HAL/STM32 FastIO for analog pins (#19735)
- Fix Smoothieboard digipots i2c pin (#19784)
- Fix TMC serial port for FYSETC AIO_II (#19842)
- Fix BTT002 PeripheralPins PWM assignments (#20036)
- Fix E4d@box pins, stepper i2s (#20055)
- Fix FYSETC S6 timer conflict (#20044)
- Fix FYSETC S6 I2C EEPROM size (#20340)
- Fix FYSETC_S6 heaters pins (#21483)
- Fix SKR E3 DIP pin
CLCD_SPI_CS
(#20078) - Fix GTR NeoPixel pin with FYSETC Mini12864 (#20203)
- Fix BTT GTR 1.0 endstop/DIAG pins (#20296)
- Fix and optimize MightyBoard (#20493)
- Fix Creality EEPROM watchdog freq. (#20510)
- Fix TMC220x short circuit (#20731)
- Fix Trigorilla Pro STOP pins (#20801)
- Fix ESP32 I2S init placement (#21019)
- Fix mini12864 v2.1 + PSU control + NeoPixel backlight (#21021)
- Fix STM32F1 emergency parser (#21011)
- SAMD51: Respect serial buffer size (#21194)
- Fix SKR E3 Mini V2.0 Fan Bug (#21079)
- Fix and add STM32 SDIO DMA (#21476)
- Add E1 pins for RAMPS 1.4.4 / AGC
- Fix Grand Central SD dependency (#21660)
New LCDs / Controllers
- Two additional EVE displays (#18839)
- Support 4.3" (480x272) Color UI display (#20334)
- LVGL and Classic UI for STM32 (#20552)
- MKS H43 controller (#20609, #21240, #21267, #21388, #21485, #21500, #21511, #21619)
- Nextion TFT touch screen (#21324)
- New-style Anycubic Chiron TFT (#21597)
New LCD / Controller Features
- Add Touch Calibration screen (#20049, #20454, #20524)
- "Sound: ON/OFF" menu item (#19901)
- Fysetc Mini 12864 + GT2560 A(+) (#19878)
- Multi-platform
DWIN_CREALITY_LCD
support (#20738) - Touch UI support for X2, Y2 and Z2 (#19538)
- Implement
wait_for_user
for Color UI (#19694) ANET_FULL_GRAPHICS_LCD_ALT_WIRING
for SKR 1.4 (#20011, #20427)- Anet 1.0 alternative graphical LCD wiring (#20022)
- Color UI single touch menu navigation (#20053)
- Tramming Wizard submenu option (#20000)
COLOR_UI
withoutTOUCH_SCREEN
👍🏻 (#20178, #20269)- Remaining Time for Prusa-style LCD layout (#20148)
- TFTGLCD support for STM32F1xx (#20515)
- Small / Large Bootscreen option for
TFT_COLOR_UI
(#20578) - LVGL G-code preview (#20589, #20564)
- MKS WiFi for
TFT_LVGL_UI
(#20191) - LVGL UI G-code console (#20755)
- LVGL "more" menu (#20940, #21004)
- Mesh Editor for FTDI Eve Touch UI (#21381)
- MKS LVGL UI: Display/edit fan percentage (#21544)
- E3V2 DWIN Advanced Settings menu (#21534, #21700)
- Color UI Move Screen for 320x240 TFT (#21708)
LCD / Controller Updates
- Update French language (#20472)
- Update Hungarian language (#20996, #21266, #21407)
- Update Italian language (#19654, #19953, #20480, #20551, #20663, #20789, #21537)
- Update Russian (#20508, #20529)
- Update Ukrainian (#20508, #20668)
- Update Slovak language (#19561, #20181, #21224)
- Add Spanish translations (#20020)
- TFT Refactoring (#19192)
- Provide FYSETC F6 v1.3 LCD pins for HD44780 (#19769)
- Color UI for MKS SGen-L V2 (#19919, #20209)
- Color UI circular task queue (#19918)
- Reset calibration screen touch timer on click (#19951)
- Y-center GLCD status logo, reorganize (#19954)
- Increase SPI Speed on LPC. Color and Classic UI for MKS SGEN L. (#19945)
- Show un-mounted media slot (#20005)
- Better Classic UI touch resolution (#20004)
- Use status bitmaps based on
LCD_FIRST_TOOL
- Better edit range for Linear Advance K (#20155)
- Reapply superscript substitution (#20219)
- Clear menu history for browse media on insert (#20236)
- Display position on LCD in current units (#20145)
- Set “
lcd_move_e
” index to fix the label (#20263) - Shorter Filament Load/Unload Strings to fit Graphical Display (#20369)
- Allow BTT EXP-MOT be used with 10-pin (EXP1) displays (#20396)
- Move ExtUI ABL mesh edit, limit to bilinear (#20381)
- Cutter Power in percent format (#20410)
- Legacy MKS WiFi Cura plugin compatibility (#20589)
- Assisted Tramming improvements (#20298)
- 4 / 5 digits for some edit items (#20793)
- Color UI Multi-language support (#20725, #20915, #20972)
- Increase filament runout distance edit limit (#20828)
lcd_put_wchar_max
forCOLOR_UI
(#20838)ZONESTAR_LCD
warning for RAMPS / ReARM (#20702)- Graphical TFT fixes, cleanup (#20861)
- KILL, BEEPER pins for LCD_FOR_MELZI (#20924)
- Refresh screen on
M22
(detach) (#20958) - Re-calibrate touch after EEPROM reset, if needed (#20934)
- Fix and extend FTDI EVE Touch UI (#20393, #20466, #20517, #20518, #20532, #20549, #20987, #21232, #21148, #21167, #21487, #21607)
- Ender 3 V2 display improvements (#20983, #21072, #21369, #21035)
- Support for FYSETC mini12864 with BTT002 (#21096)
- Support for YHCB2004 with GT2560 v4.1B (#21091, #21111, 21450, #21472)
- Clean up, optimize ExtUI/TFT code (#21333)
- MKS UI: Monitor state when idle (#21452)
- Update u8g / AVR display timing defaults (#21518)
- Touch UI Bed Mesh Screen refactor, enhancements (#21521)
- Delay U8glib init using U8glib-HAL 0.4.4 (#21496)
- Space-separate scrolling Status Message (#21523)
ExtUI::onPostprocessSettings
(#21683)
LCD / Controller Fixes
- Fix Move Screen with disabled Touch (#19558)
- Restore
°
(degree symbol) to 6x9 small info font (#19645) - Fix screen click reading too often (#19696)
- Fix Anycubic i3 Mega target temperature display (#19572)
- Fix German translation purging/unloading (#19615)
- Use
LiquidCrystal_I2C@1.1.4
forRA_CONTROL_PANEL
(#19875) - Fix Tune/Fan edit items
- Fix "autotune" LCD message (#20127)
- Fix and improve Ender-3 V2 (#19642, #20324, #20338, #20352, #20443, #20526, #20837, #21272)
- Fixes for TFTGLCD Panel, FastIO (#19614)
- Fix UTF8 handling for Color UI (#19708)
- Fix and optimize MKS UI (#19869, #20813)
- Fix some LVGL bugs (#19900, #19904, #20214)
- Fix 320x240 touch buttons Y (#20079)
- Fix Filament Change menu items (#20201, #20565)
- FIX TMC menu message (#20294)
- Fix “back” location for Level Bed Corners
- Fix Spindle/Laser Control menu (#20347)
- Fix ZoneStar LCD 2004 buttons (#20489)
- Fix DOGM status message scrolling (#20557)
- Fix ST7920 timing for Rumba32, Fysetc S6 (#20556)
- Fix Menu Mixer for Color UI (#20566)
- Fix SD SPI Speed override, FTDI mesh edit (#20657)
- Fixes for TFTGLCD (#20734)
- Fix Anycubic Chiron TFT issues (#20807, #21152, #21183)
- Fix Ender 3 V2 unwanted E motion on manual moves (#20806)
- Fix MKS SGen-L with FYSETC_MINI_12864 LCD (#20998)
- Fix AZSMZ_12864 on SMART RAMPS (#21056)
- Fix MKS LVGL UI Main screen / buttons / icons (#21468, #21595)
Serial / Host Updates
G35
workaround for Pronterface "feature" (#19577)- Fix
M503
output forM907
motor current (#19777) - Fresh Web GUI (based on
bootstrap.js
) (#19812) - Help hosts when Marlin is password-locked (#20348)
- Fix "
//action
" prefix (#20600) - Fix
M48
output (#20713) - Fix reporting of TMC_S2VSA/B (#20730)
- Improve RPi host kernel panic mitigation
- Refactor Serial ports for more flexibility
- Enable Purge More / Resume with EP + Host Prompt (#21671)
General Issues Fixed
- Ignore
M22
during SD print - Fix
G2
/G3
arcs over 180° (#20292, #20314, #20322) - Improve
plan_arc
circle detection (#20440) - Fix Buzzer (pin) init for uninitialized FastIO (#19559)
- No move on Park = No move on Resume (#19569)
- Fix compile of MMU2 with S-mode disabled (#19584)
- Fix
Z_AFTER_HOMING
without probe (#19607) - Allow bypass for cold E movement (#19606)
- Keep HAL tasks running during PID Autotune (#19671)
- Fix starting fan with bad material preset index (#19773)
- Watchdog Refresh for LVGL Asset Load (#19724)
- Fix
SET_SOFT_ENDSTOP_LOOSE
w/out soft endstops (#19734) - Fix IDEX layer shift and DIR states (#19756)
- Apply home offsets to probing, Z Safe Homing (#19423)
- Fix
G2
/G3 P<circles>
E and Z motion (#19797) - Fix Anycubic Chiron "Ready" detection (#19880)
- Fix Chiron probe low point (#19962)
- Fix PASSWORD compile w/out LCD (#19888)
- Fix DAC-related bugs (#19907, #19921, #20205)
- Keep SPI active on LPC176x (#19932)
- Fix Laser / Spindle issues (#19970, #20509)
- Fix STM32 HW Serial + EP compile (#19990)
- Don't close diveDir in fileExists (#20035)
- Fix Endstop Interrupts with SPI endstops, sanity checks (#20051)
- Fix tool-change servo index for E2 and up (#20060)
- Use extra
G35
BLTouch HS Mode clearance in Tramming Wizard (#20057) - Fix Linux GPIO logging (#20093)
- Fix MAX6675 SPI init, conflicts (#20086)
- Fix MAX31865 on SPI (PT100/1000) support (#20074)
- Fix extraneous Linear Advance DIR change (#20131)
- Multi-Hotend Preheat Fixes (#20165)
- Fix
NaN
mesh entries withABL_BILINEAR_SUBDIVISION
(#20143) - Fix bad
SET_FAST_PWM_FREQ
calls (#20227) - Fix backward Filament (Presence) Sensor pulls (#20228)
- Fix Load Filament wait (#20243)
- Fix UBL manual mesh adjust behavior (#20248)
- Fix
Z4
inENABLE
/DISABLE_AXIS_Z
(#20256) - Add missing header to use
HAS_SD_HOST_DRIVE
(#20270) - Fix
M73
LCD code typo (#20300) - Prevent Watchdog reset writing Creality 4.x EEPROM (#20328)
- Fix
MESH_BED_LEVELING
withoutSEGMENT_LEVELED_MOVES
(#20363) - Fix
TMC_HOME_PHASE
divide-by-zero (#20368) - Fix
auto#.g
file handling, addNO_SD_AUTOSTART
(#20071) - Fix UBL Debug Messages (#20423)
- Fix issues with preheating before leveling
- Fix SD print completion logic (#20456)
- Fix
RESTORE_LEVELING_AFTER_G28
behavior (#20471) - Apply
HOME_AFTER_DEACTIVATE
toG28 O
(#20525) - Fix
G34
compile with bed leveling disabled (#20537) - Fix UBL mesh inset Z position (#20538)
- Fix G28 leveling state, UBL compile (#20499)
- Apply
NO_MOTION_BEFORE_HOMING
to joystick motion (#20462) - Fix
PARKING_EXTRUDER
homing with solenoid (#20473) - Fix
CHAMBER_FAN_MODE
0 build (#20621) - Fix UBL mesh edit delta moves (#20620)
- Fix thermal error protection, reporting (#20655)
- Fix IDEX reboot on travel after
G28 X
(#20654) - Defer "quiet probing" till the last Z bump (#20610)
- Don't apply
hotend_offset.z
to Z soft endstops (#20675) - MMU2 as a standard serial device (#20771, #20794, #20811)
- Raise Z on exit from 'Level Bed Corners' (#20817)
- Remove extra G29 V newlines (#20955)
- Fix ARM delay function (#20901)
- Fix
TEMP_0_TR_ENABLE
, rename temp conditions (#21016) - Fix: Unsupported use of %f in printf (#21001)
- Fix remaining time divide-by-zero (#21080)
- Fix IDEX broken endstop test (#21110)
- Fixes for
MP_SCARA
(#21113, #21686) - Fix
cleaning_buffer_counter
check (#21115) - Fix
LEVEL_CORNERS_USE_PROBE
withBLTOUCH_HS_MODE
(#21161) - Init (stow) BLTouch before X/Y homing (#21192)
- Fix
M355
withNEOPIXEL
(#21200) - Fix GTR / SKR PRO + USB Flash Drive build (#21197)
- Fix
M876
when called from EP (#21210) - Duplicate fan speed in
M106
/7
IDEX Duplication Mode (#21208) - Apply
AUTO_POWER_CONTROL
later insetup()
(#21193) - Fix Host Keepalive serial target (#21283, #21290)
- Fix LPC + TMC boot loop (#21298)
- Fix TouchMI stow in
G34
(#21291) - Fix password menu stickiness before first auth (#21295)
- Un-pause fans on STOP
- Fix macros that call macros crashing (#21383)
- Apply endstops-always-on for
G28
sensorless (#21441, #21442) - Avoid watchdog reset in all wired EEPROMs (#21436)
- Remove extraneous 'extern' hints (#21516)
- Fix FAT delete of items with longname (#21528)
- Make
DELAY_NS
round up on AVR (#21546) - Park Magnetic Switching Toolhead at the very end (#21552)
- Fix
M114 E
/R
broken byLIN_ADVANCE
(#21579) - Fix Resume Print with UBL (#21564)
- Fix Max Temperature not enforced (#21592)
- Fix and improve Power Monitor (#21551)
- Always swap with
PRIME_FIRST_USED
disabled (#21622) - Don't display service prompt unless needed (#21654)
- Prevent extrusion on
M600
un-park (#21670) - Fix Thermal Runaway false-alarm in
M303
, addHeaterWatch::check
(#21743) - Fix compile with
DISTINCT_E_FACTORS
+SLIM_LCD_MENUS
(#21733)
Build and Upload
- Fix 'bossac' upload on Windows (#19545)
- Fix and improve
Makefile
/ CMake (#19640) - Fix at90usb1286 build (#19687)
- Fix digipot compilation (#19731)
- Fix mega2560ext environment (#19730)
- More PIO dependencies optimizations
- Update ZMIB_V2 env names (#19886)
- Permit spaces in dependencies g++ path (#19929)
- PIO env for MKS Nano boards in STM32 (#19905)
- Fix 0 extruders & bed compile (#20030)
- Sanity-check illegal native USB (#20047)
- Optimized (non-optiboot) Melzi env (#20021)
- Windows LPC Upload for non-admins (#20208)
- Fix STM32F1 ‘
freeMemory()
’ warnings (#20319) - Update to STM32 v10, optimize build (#20325)
- Fix up start, monitor baud (#20326)
- Require a minimum PlatformIO version (#20361)
- Use a newer LPC176x framework (#20469)
- Check for misplaced configs on build (#20599)
- Set
build_flags
viacustom_marlin.FEATURE
(#20692) - Silence unused parameter warnings
- Compile fewer extraneous sources (#20822)
- USB Flash Drive env hints for Auto Build Marlin (#20592)
- Replace
lib_deps
forcustom_marlin.FEATURE
(#20858) - Update platform ststm32 (#20928, #21219)
- Let libmaple accept
RX
/TX_BUFFER_SIZE
(#21177) - Fix LERDGE 'extends' env references (#21305)
- Preflight checks for PlatformIO build (#21068, #21191, #21361, #21372, #21658, #21574)
- Misc build fixes (#21413)
- Split up
platformio.ini
intoini
folder (#21507) - Require PlatformIO >= 5.0.3
- Fix Rumba32 variant for Marlin (#21497)
- Add 'jump relaxing' compile flag to AVR targets (#21566)
- Fix Flash size (512KB) for STM32F103ZE (#21590)
- Skip scripts during
platformio init
(#21643) - Let compiler do
Temperature.h
inlining
For Developers
- Bring “
mftest -a
” up to date with latest codebase - Digipots refactor / cleanup (#19690)
- Rename ultralcd => marlinui
- Internal
G29N
forG28
+G29
(#20800) - Pins post-process header (#19860)
- Add
mfconfig
script used to manage configurations - Add alternative ternary macros
IF_ENABLED
,IF_DISABLED
- Distinct runout states (#19965)
- Add
parser.is_command(letter, code)
- Local testing with
Makefile
, Docker,mftest
(#19981) - Better USB Media Host conditions (#20176)
- Adjust axis homed / trusted methods (#20323)
- Avoid invalid memory optimizations (#20389)
- More configurable animated bootscreen
- Homing feedrates as XYZ array (#20426)
- Balance CI tests (#20485)
- Add manual move type
ALL_AXES
for UBL mesh editing - Fix and consolidate
PSTR
aliases (#20812, #20831) - Move singlenozzle temp/fan (#20829)
- Internal
G29N
code as shortcut forG28\nG29
- Clean up
MarlinCore
andMarlinUI
(#20832, #20846, #20852, #20868, #20869, #20874) - Init
KILL
,SUICIDE
, PSU earlier (#20810) - No extra build folder for st/jlink upload (#21341)
- Script to generate Marlin TFT Images (#21340)
- Read extra ENVS from
pins.h
in preflight checks (#21361) AutoReport
class (Temperature, Cardreader) (#20913, #20959)- Allow
mftest -t
to select test by number - Add
-g3
to include macros in debug symbols (#21052) - Script to download & build Configurations (#20992)
- Make
F_CPU
a compile-time constant (#21051) - Tweak tests, consolidate pins target validation (#21254, #21261)
- Script to generate Marlin TFT Images (#21340)
- Added
typedef celsius_t
(#21374, #21678) - Group UBL parameters in a structure
- More IntelliSense-friendly declarations
- Define HW serial ports needed for TMC UART (#21446)
- Apply TMC UART to STM32, simplify
- Improve
uncrust
script - Replace
const float &
withconst_float_t
(#21505) getHighESpeed
=>autotemp_task
- Macros to eliminate 'f + 0.0' (#21568, #21642)
- Drop return value from
Serial::write()
(#21567, #21577) - Rename
tick()
toisr()
to hilight interrupt-time - Disable
assert()
by default with-DNDEBUG
- Add whole-degree accessors (#21685)
- Clean up / improve
generate_version
script (#21674) - Add
INO
to.editorconfig
- Prettier output from
opt_enable
, et.al. (#21707) - Drop compiler flag
merge-constants
due to GCC bug (#21711)