Marlin is an optimized firmware for RepRap 3D printers based on the Arduino platform. Many commercial 3D printers come with Marlin installed. Check with your vendor if you need source code for your specific machine.
Marlin 2.1.2.1 is a maintenance release with several patches to improve existing features, fix some issues, and support a few more devices.
G61
axis parameters with no offset (#25312)M205 D
when 'B' is an axis (87d7449952)ISR_SHAPING_LOOP_CYCLES
(#25335)apply_power
for SPINDLE_SERVO
(#25465)SD_SS_PIN
(#25492)MARLIN_F446Zx_TRONXY
variant (#25659)G29 J
' mesh tilt (#25453)serial_ternary
(d68ad9e0b1)M23
long filename support (#25540)M503 C
' (8ad9b63b61)G38
with Z, support 9 axes (#25691)STM32F103RC_fysetc
(#25741)VALIDATE_MESH_TILT
(50f4e6b270)sei
(3ec5d6da6e)BLTouch::command
(#25656)G38
with Core (#25713)PAUSE_PROBE_DEPLOY_WHEN_TRIGGERED
(#25681)M43
updates (e342905e77)SD_DETECT_PIN
27 (5e319b181b)M43
improvements (a632a5e4a0)G30
out-of-bounds (#25671)HAS_STOWABLE_PROBE
(#25158)MOTHERBOARD
error text (6cf085d724)PRINTCOUNTER_SAVE_INTERVAL
+ ESP32 I2S Exp (#25527)FIL_RUNOUT_PIN
for Chiron + GLCD (a0f87a5149)LIN_ADVANCE_K
(#25710)config.ini
script (5e1884b16f)SOFT_PWM_SCALE
fallback to cpp (#25800)SHAPING_MIN_FREQ
check (#25358)FILAMENT_RUNOUT_SCRIPT
sanity check (#25150)config.ini
parser (58d94f407b)marlin_custom.*
without lib_deps
(d5d497f2c5)STM32G0B1RE_btt
, add β¦_manta_btt
(#25431)config.ini
example fetch (dfd1fb736d)mc.zip
' file creation (#25695, #25706)native.ini
docs (#25201)SPI_FLASH
pins (26cb2d5b08)ONBOARD_FLASH_SIZE
(a039081728)createTemperatureLookupMarlin.py
(#25455)pinsformat.js
(ff17f41418)G28 R
/ R0
(e682322be6)AUTOFAN_CASE
(1ea6d4c105)HostUI::continue_prompt
method (928c1dcc44)SpindleLaser::set_enabled
tweak (99a88aec54)boards.h
(704cc32bec)HAL_PATH
macro for easier HAL relocation (#25743)NUM_AXIS_ARRAY
(4c7d68935c)ftdi_language
" (15de0c2139)Z*_ENDSTOP_ADJUSTMENT
comments (#25295)BTT_MINI_12864_V1
comment (#25366)LIMIT
macro (071d54ec70)M122
sign warning (#25613)calibration_stage
=> stage
(accfab85a2)LPC_SOFTWARE_SPI
=> SOFTWARE_SPI
(376e940ae9)UBLValidMesh
(#25591)G28O
inside ProUI (73edf3c71d)Marlin 2.1.2 introduces Input Shaping to compensate for machine vibrations by carefully timing its movement impulses. Input Shaping results in much cleaner output and allows for higher print speeds with no loss of quality. Although this implementation has received extensive testing, it is still considered experimental. Please report any issues. Use a test print that applies a range of frequencies to find the best settings for your machine. (See M593
Input Shaping)
Marlin 2.1.2 contains many fixes and improvements, and is recommended for all users of Marlin.
M20_TIMESTAMP_SUPPORT
(#24679)RGB_STARTUP_TEST
(3d03f96205)XY_COUNTERPART_BACKOFF_MM
(1f72c8341f)M217 G
wipe retract length (be149336f0)M150 S
default index (#23066)M22
/ M23
success / fail (#24706)M524
(#24761, #24775)M913
/ M914 XY
(#24680)ADVANCE_K
per-extruder (#24821)M306
: Indicate MPC Autotune (#24949)FYSETC_MINI_12864_2_1
with BTT_SKR_E3_DIP
(#24986)COLOR_UI
sleep timeout / setting (#24994)TFT_COLOR_UI
async DMA SPI (#24980)configuration.py
with encoding UTF-8 (#24719)config.ini
custom items, and 'all' (#24720)config-labels.py
(3a18ba0412)mfinfo
for 2.1.x (62b7db9bb7)renamed.ini
(#25042)mftest
exit (5a97ffc414)env:mega1280
for MIGHTYBOARD_REVE
(#25080)mfconfig init
(3ad684b10b)strtof
interpreting a hex value (0adee8fae0)BUZZ
(#24740)types.h
(#24780)recalculate_max_e_jerk
(29156ffe5d)DEBUG_DGUSLCD
(#24798)vector_3
cast operators (5aca6ff4f2)M876
without emergency parser (c52cf77d0a)M593
report (4ce2f1e5ba)move_extruder_servo
(#24908)leds.update
needed for reset_timeout
(7feeffdf06)!LIN_ADVANCE
(7002e72f1c)M808
starting count (30a885a7ef)FAST_PWM_FAN
/ TouchUI with NO_MOTION_BEFORE_HOMING
(#25005)SERVICE_INTERVAL
reset (#24888)MKS_MINI_12864
on SKR 1.3 needs FORCE_SOFT_SPI
(#24850)BTT_MINI_12864_V1
(#24827)ADVANCE_K
+ DISTINCT_E_FACTORS
sanity check (#25007)MILLISECONDS_PREHEAT_TIME
/ mintemp (#24967)va_end
in UnwPrintf
(#25027)G30
move to logical XY (#24953)MSG_MOVE_N_MM
substitution (#25043)M502
init of default motion (ffbf6acd6c)M115_GEOMETRY_REPORT
(#25092)HAS_SPI_FLASH
=> SPI_FLASH
(9ae0789166)CONF_SERIAL_IS
=> SERIAL_IN_USE
(2e2abbcb48)Marlin 2.1.1 is a bugfix release recommended for all users of Marlin 2.1. This is a particularly important update for users of Linear Advance and Trinamic stepper drivers, fixing timing issues that could cause shutdown or lost steps under certain conditions. Otherwise, motion handling has been improved and optimized overall.
FOAMCUTTER_XYUV
(for RAMPS) (#24325)MAG_MOUNTED_PROBE
(#24420)M665
settings (#24401)M150 K
β Keep unspecified components (#24315)M423
invocation (#24360)G2
/G3
Arcs stutter / JD speed (#24362)M149
(#24430)XYZEval = N
not setting E (10f5f878ce)M125
for 9 Axis (9304402579)_MIN
/_MAX
macros for native compatibility (#24570)M919
9-axis update (ece124fdea)Max7219::quantity
in portrait orientation (#24415)MPCTEMP
: Home before cooling (#24434)G2
-G3
Arcs (#24366)Z_STEPPER_ALIGN_XY
(#24261)G30
(#24511)NUM_AXES
on defined DRIVER_TYPE
s (#24106)SKR_MINI_SCREEN_ADAPTER
for BTT SKR Mini E3 V3 (#24521)use_example_configs
(a65189c637, 5fff7bbef4)bugfix-2.1.x
(7677368aaf)2.1.x
(3fd592e64b)STATIC_ITEM_N
arg order (95339c9561)lldb
(7207a32434)mftest --default
flag (00aa131c43)mfprep
comment (329085e910)build_all_examples
(c3444ffa61)Stepper
access (943a86f524)pathlib
(#24574)MARLIN_TEST_BUILD
β for future use (#24077)G33
Delta Sensorless Probing compile (#24291)wchar_t
macro (80c7abd727)--target upload
" == "--target exec
" (923d34550a)LCD_BACKLIGHT_TIMEOUT
compile (#24463)Makefile
(c880c7ed45)tImage
struct packing (53bd775ff9, d3382f41bc)gcode.h
include (#24527)lcd_preheat
compile (47ac9d1033)MAP
for home axis items (78b42ed387)reset_acceleration_rates
=> refresh_
β¦ (57c137a60f)split_move
(814b53750f)ANY
=> EITHER
(9283859b1e)MPCTEMP
G-Code M306 T
(#24535)boards.h
(3271f17814)README
Updates (#24564)Recommended for all Marlin 2.0 users, the release includes fixes for many issues.
Full Changelog: https://github.com/MarlinFirmware/Marlin/compare/2.0.9.4...2.0.9.5
M665
settings (#24401)G2
-G3
Arcs (#24366)Planner
calculations (#24484, #24509)MPCTEMP
: Home before cooling (#24434)block->steps.set
(c56fb1c182)G28
, G33
, M48
(#24220)M350
, M114
with more axes (#23986)Z_STEPPER_ALIGN_XY
(#24261)SKR_MINI_SCREEN_ADAPTER
for BTT SKR Mini E3 V3 (#24521)MPCTEMP
G-Code M306 T
(#24535)M423
invocation (#24360)G2
/G3
Arcs stutter / JD speed (#24362)memset
block warning (0d04aa960f)M149
(#24430)types.h
macros and fields (af4160af6f)M306 M
=> M306 H
(#24258)LCD_BACKLIGHT_TIMEOUT
compile (#24463)lcd_preheat
compile (62d29ade42)BACKLASH_COMPENSATION
compile (#24072)linearval
in M600
(2bb9a5ee5e)G33
Delta Sensorless Probing compile (#24291)Warnings.cpp
force-recompile (adeca47292, a50bb96d2d)--target upload
" == "--target exec
" (dddbc4d730)use_example_configs
(92910721d0)F()
to some LCD / TFT strings (5408259f51)MAP
macro for axis lists, etc. (#24191, 70d72354e2, fa50d2c757)STATIC_ITEM_N
arg order (821f4983d0)G60
/G61
debug code (#24231)lldb
(929ce5e859)build_all_examples
(8e6aa1b113)ANY
=> EITHER
(686d1fbb51)README.md
with latest layout and info.