Skip to content

Marlin 2.0.9.3

Compare
Choose a tag to compare
@thinkyhead thinkyhead released this 25 Dec 09:44
· 555 commits to 2.0.x since this release

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 (and BUFFER_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 flag EXTENDED_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 for TFT_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 in CardReader::printLongPath (#23197)
  • 🩹 Coerce pin_t in set_pwm_duty macros (#23273)
  • 🎨 Rename HAL timer elements (9b1c0a7)
  • 🏗️ Rework STM32 timer frequency protection (#23187)

General Cleanup

  • 🎨 Rename MarlinUI::zoffset_overlay (b8c32e2)
  • 💡 Update old gnu.org links (641bae6)
  • 🎨 Fix up MKS UI defines (01a0f3a)
  • 🎨 Apply HAS_MULTI_HOTEND conditional (cbc7dad)
  • 🎨 Adjust Ender-3 V2 DWIN options (545d14f)
  • 🎨 Fix misspelling (#23137)
  • ✏️ MAX31856 => MAX31865 (b77a5d4)
  • 🎨 Rename MAX31865 elements (8d4e4ac)
  • ✏️ Clean up duplicate defs (#23182)
  • 📝 Fix a config comment (1a8307b)
  • 🩹 Fix settings G21 report (#23338)

Repository

  • 🔨 Use pull_request_target for check-pr (fed72e4)
  • 🔨 Ignore sim flashdrive file (#23129)
  • 🔨 Ignore more generated files (a3964b2)