Jul 272020
 

Guten Morgen in die große weite Welt und diesen Tag möchten wir mit einem Artikel rund um die neue Marlin Software starten. Denn vor knapp 3 Stunden wurde ein „Big Update“ veröffentlicht und Marlin steht ab sofort in Version 2.0.6 zum Download bereit. Und wenn wir uns das neue Update mal genauer anschauen, dann kann man nur „WOW“ sagen, denn es wurde eine Menge hinzugefügt oder verbessert.

Aber schaut Euch das große Update selber mal an. Ich werde wohl auf dem Sovol das Update einspielen, nachdem ich es angepasst habe und das dauert ja bekanntlich immer am längsten. Daher immer der gute Tipp, dass Ihr Eure vorhandenen Version abspeichert, denn sollte etwas nicht funktionieren, könnt Ihr jederzeit wieder zurück auf die alte Version gehen.

New Machines and Boards

  • BigTreeTech SKR Pro 1.2
  • Malyan M200 V2
  • Malyan M300
  • Creality Ender 3 V2 board (Creality v4.x)
  • MKS Robin E3 / E3D
  • MKS Robin nano V2
  • BTT SKR Mini E3 V2
  • Funmat HT V4.0
  • Ortur 4.3
  • Tenlog D3 Hero
  • MEEB 3DP
  • Tronxy X5SA (V5 / V6 boards)
  • Vertex Nano with Vellemann K8600
  • Trigorilla Pro

New Features

  • G6 External Motion Controller (like Klipper) support. See #17853.
  • Prusa MMU2 Extruder Sensor support
  • Add settings for Prusa MMU2S
  • Inline laser / spindle power control
  • Add M150 I to set an individual Neopixel’s color
  • Automatic Tool Migration (beta). See #17248
  • Composite USB for STM32 SDIO (experimental)
  • M600 R to resume at a new temperature
  • Optional move-to-center after UBL G29 J (3-point)
  • Trinamic driver serial multiplexing
  • Add M122 I to reinitialize TMC drivers at any time
  • Option to enable M360 for Repetier Host
  • M115_GEOMETRY_REPORT adds machine info to M115
  • Add HOTEND_IDLE_TIMEOUT safety feature
  • Add M200 S and L for Volumetric Extruder Limit
  • Add G35 Bed tramming assistant
  • Sensorless Homing for Core kinematics
  • Power monitor and display. (#17437)

Configuration

  • Add USE_PROBE_FOR_Z_HOMING option
  • Add SERIAL_FLOAT_PRECISION option
  • Add SD_PROCEDURE_DEPTH option (for M32 P)
  • Add JD_HANDLE_SMALL_SEGMENTS option. (#18316)
  • Add REPORT_FAN_CHANGE option
  • Add CONTROLLER_FAN_IGNORE_Z option
  • Change FIL_RUNOUT_INVERTING true to FIL_RUNOUT_STATE HIGH
  • Use Material Preset 1 as defaults for M303 PID autotune
  • Allow different Default PIDs for each hotend
  • Option to set Babystep Size in mm
  • Trinamic steppers Homing Phase. See #17299.
  • Add a TMC Chopper Timing Preset for 24V 0.9°
  • Homing bump is now an array
  • Improved, extended „digipot“ settings
  • Add AUTOTEMP default proportions
  • Adjustable XY_FREQUENCY_LIMIT
  • NOZZLE_PARK_FEATURE X-only / Y-only move option
  • Fix overridden U8G+SPI delay overrides
  • Fix EEPROM type selection and fallbacks
  • Add SDCARD_READONLY option to reduce binary size
  • Add VOLUMETRIC_EXTRUDER_LIMIT. See #17017.
  • Add NOZZLE_PARK_Z_RAISE_MIN option
  • Add sanity-check for Nozzle Park position
  • Use Preheat 1 temperature as M303 default
  • More Probe Temperature Compensation options
  • Add XYZ_NO_FRAME option for Graphical LCD
  • Allow larger ADC button debounce values
  • Configurable kill pin state
  • Change default filament diameter to 1.75mm
  • Fix, clarify LCD_TIMEOUT_TO_STATUS
  • Longer default power-up delay
  • Disable Z stallGuard by default
  • Allow CASE_LIGHT_PIN override from config
  • Sanity check 3-point defines
  • Sanity-check Chamber thermistor pin
  • Add thermistor 502 for Zonestar Prusa P802M
  • Use center XY for Z Safe Homing default
  • Independent X2,Y2,Z2,Z3,Z4 endstop inverting
  • Add a custom nozzle wipe G-code option

Board / HAL

  • Fix BTT SKR Pro 1.0 issues
  • Fix BTT GTR 1.0 issues
  • Fix MKS S-Gen standard pins
  • Fix FYSETC_AIO_II build
  • Fix Fysetc stm32flash usage
  • Fix FYSETC Cheetah issues, SD re-insert
  • Fix MKS Robin nano issues, use Flash EEPROM
  • Fix GTM32 Rev B LCD pins
  • Fix BIQU BQ111-A4 pins
  • Fix RAMPS 1.4.4 filament runout pin
  • Increase STM32F1 Servo Timer Interrupt Priority
  • Add Chitu V5 (with extra GPIO init)
  • Add Chitu V6 (with Z2 stepper pins)
  • Add Lerdge S,X,K boards
  • Add Emergency Parser for the STM32 HAL
  • Various Mightyboard improvements
  • More complete RUMBA32 support
  • Permit more Creality pin overrides
  • Improve DIAG pin endstop management
  • Various SAMD51 (AF Grand Central) improvements
  • Add ReARM SDSS pin (for RRD LCDs)
  • SD detect override for older Creality3D RAMPS
  • Add Servo and E1 pins for the PICA board
  • Allow timers to be set by STM32 pins files
  • Improved STM32 timer allocation and prioritization
  • Support TMCStepper with MKS Robin Pro
  • Declare extended STM32 serial ports
  • Add LPC176x SPI / I2C EEPROM support
  • Add board-based ST7920 delays
  • Fix STM32F103VE Flash EEPROM size
  • Use MCP4451 interface for MKS SBASE
  • Support GT2560 3rd extruder
  • Consolidate MKS Robin / SKR Mini E3 pins
  • Allow SDIO clock/retry overrides. See #18223.
  • Patch BLTouch Z_MAX_PIN for GT2560 Rev.A (non-plus)
  • Support BL24C16 EEPROM in HAL/STM32F1 (Ender 3 V2)

New LCDs and Controllers

  • TFT LVGL UI
  • FTDI EVE Touch UI
  • Ender 3 V2 controller
  • MKS UI / Little VGL TFT (#18438)
  • FYSETC TFT81050 LCD
  • FYSETC 2.42 inch OLED
  • MKS LCD12864 A/B Controller
  • TFT 2x-3x scale for Anycubic, TronXY
  • ExtUI support for Anycubic I3 Mega
  • Touch-select for MarlinUI menu items
  • Touch-to-jog for MarlinUI edit items
  • Support for FT81050 to FYSETC F6

LCD / Controller

  • Improved alert for EEPROM errors
  • MarlinUI support for up to 5 Material Presets
  • Suppress the initial SD status message
  • Fix, extend, and improve ExtUI touch screens
  • Fix LCD throttling issues
  • Fix Graphical Display cosmetic issues, progress bar
  • Fix low contrast on Minipanel display
  • Implement MarlinUI for color touchscreens
  • Display status during PID Autotune
  • Add M73 remaining time for MKS UI
  • Fix DGUS serial buffer size and other issues
  • Fix GTR 1.0 CR-10 stock display pins
  • Fix Silvergate GLCD display timing
  • Fix Fan Speed menu items
  • Fix click sound with TOUCH_BUTTONS
  • Fix leveling „Point n of 3“ message
  • Add Bed PID Edit and Autotune menu items
  • Move Case Light to LEDs submenu
  • Remove „Media Released“ message
  • Shorter BLTouch menu item titles
  • Add HD44780 mapping for Czech accents
  • Bring language fonts up to date
  • Clean up LCD Manual Move / UBL Mesh Edit
  • ExtUI mesh support for Malyan LCD
  • Add UI and TMC stall reset for multi-axis
  • Add menu items to run G425 and G35
  • Add Romanian language
  • Updated languages:
    • English
    • Chinese
    • French
    • Galician
    • German
    • Hungarian
    • Italian
    • Polish
    • Brazilian Portuguese
    • Romanian
    • Russian
    • Slovak
    • Spanish

Other Peripherals

  • SKR Pro 1.1 WiFi / external SD card
  • Flash-based EEPROM for Robin E3D
  • Adjust Melzi ST display timing
  • Store Case Light brightness in EEPROM
  • Add Zonestar P802M bed thermistor
  • Fix BLTouch early deployment with ABL G29
  • For L64XX M17 can use hardStop
  • Extend thermistor 1047 to 500°C

Host and Protocol

  • Respect backspaces in G-code
  • Real build date in M115 report
  • Add M303 D to enable/disable PID debug output
  • Add G12 E to set soft endstops state
  • Allow M421 to modify a row, a column, or all
  • More verbose probing error
  • Prefix M503 output with echo:
  • Fix some Host Actions issues
  • Broadcast actions to all „hosts“
  • Report fan speed on change
  • Fix SD finished ExtUI / host action
  • Fix M710 output formatting
  • Separate G-code line numbers for each serial port
  • Tweaks to M114 D output
  • Fix Host Actions support with LPC176x
  • Fix lingering Filament Change host dialog
  • New M115 capabilities:
    • Cap:LONG_FILENAME
    • Cap:SDCARD
    • Cap:ARCS
    • Cap:BABYSTEPPING
    • Cap:RUNOUT

Issues Patched

  • Fix BLTouch PWM reliability on STM32
  • Fix Filament Change lengthy wait for heating
  • Fix Due wired EEPROM init
  • Fix ESP01 (module) WIFI initialization
  • Fix CoreXY babystepping and homing
  • More reliable double-click detection
  • Fix extra TMC serial begin calls
  • Fix M42 M with other parameters
  • Fix M43 analog pins
  • Fix position sync on M420 S0
  • Fix G2/G3 Arcs segment bugs
  • Fix LPC176x RGB NEOPIXEL startup
  • Fix issues with probing margins
  • Fix G76 probe height / position
  • Fix detection with multiple Filament Runout sensors
  • Fix Mixer virtual tools reset
  • Fix Power Loss Resume when card isn’t mounted yet
  • Fix false alarm interrupting probing
  • No extraneous pins with ADC Keypad
  • Fix Probe Temperature Compensation build
  • Fix PID autotune timeout
  • Fix Power Loss Resume with HAS_LEDS_OFF_FLAG
  • Fix G12 for SINGLENOZZLE
  • Fix Max Jerk and Stepper PWM menus
  • Fix XY Frequency menu
  • Save/restore leveling on toolchange with SINGLENOZZLE
  • Fix BTT002 SPEAKER timer conflict
  • Fix STM32F4 flash / servo conflict
  • Reserve ‚probing failed‘ for the last attempt
  • Fix SD printing pause with parking
  • Fix multiplication/division for xyz_pos_tet.al.
  • Bring thermistor names up to date
  • Ignore spurious thermocouple errors
  • Fix alignment of 3-point leveling points
  • Fix G34 move in wrong direction
  • Fix Malyan LCD crash bug
  • Allow TMC Stall Sensitivity to be set to 0
  • Fix M125 unretract length
  • Fix M261, i2c EEPROM, i2c Encoder on LPC176x
  • Fix E DIAG pins for multi-axis auto-assignment
  • Fix STM32F1 EEPROM access start
  • Confirm XY position before Z Safe Homing
  • For G28 Z with Safe Homing, raise before move to XY
  • Fix SD_FINISHED_RELEASECOMMAND bug
  • Fix extra call to unskew()
  • Limited backlash editing for Core kinematics
  • Support up to 8 Trinamic E drivers
  • Apply HOME_BEFORE_FILAMENT_CHANGE if any axis is unknown
  • Consider HOME_AFTER_DEACTIVATE for Z safe homing
  • Improve reliability of POWER_LOSS_RECOVERY
  • Fix User Temp Sensor (1000), reversed Pt100 / Pt1000
  • Fix Hotend Idle Timeout trigger (#18657)
  • Fix passive Chamber Temp reading
  • Fix SD reverse sorting
  • Fix PSU_POWERUP_DELAY when over 2 seconds
  • Improve SAMD51 Servo / BLTouch PWM reliability

Optimized / Improved

  • Reduce Step Smoothing ceiling to 50% CPU usage
  • Improved Junction Deviation with lookup table
  • More accurate Junction Deviation fast-acos
  • Improve G2 / G3 motion accuracy
  • Improve UBL Mesh Editor behavior
  • Improved support for no bed / hotends / fans
  • Reorder Marlin setup() and init serial early
  • Minor Toolchange improvements
  • EEPROM Flash Leveling for more STM32F4 boards
  • Relax bed cooling safety check
  • Save/Load distinct TMC Stallguard thresholds
  • Better ooze prevention during pause
  • Consider Chamber also in Print Job Timer auto-start
  • Non-blocking MAX7219 init sequence
  • MAX7219 pause / resume for interrupt-safe usage
  • Minor optimizations in SD file listing
  • Handle SD sort order in CardReader
  • More conservative Trinamic DIR delay
  • Add M32 subcall overflow error message
  • Prevent setting temperature target outside sensor range
  • Avoid excess E DIR changes in Linear Advance (#18744)

Build and Upload

  • platformio.ini specifies library versions to prevent unexpected build errors
  • PlatformIO will only download and build libraries needed for enabled features
  • Randomize name of firmware...bin in Ender 3 V2 build
  • Allow HAL_TIMER_RATE override for STM32
  • Fix CMSIS / USB-FD name conflicts
  • Use „extends“ in platformio.ini for better organization
  • Get more lib_deps from the PlatformIO registry
  • Fysetc S6 variant with direct DFU upload
  • Use „melzi“ envs for MELZI_CREALITY board
  • Add a Chitu variant for disk-based update
  • Use TMCStepper 0.7.0 for best LPC176x support
  • Sanity check SERIAL_STATS options for LPC, STM32
  • Use STM32F407VGT6 for BTT002 V1
  • Fix Archim PIO upload on Windows, Arduino IDE LCD
  • Fix Archim LCD with Arduino IDE
  • FIx Sanguino/1284p board_upload.maximum_size

For Developers

  • The ENABLED/DISABLED macros are now usable in code
  • Add „TERN“ macros for conditional one-liners
  • Allow pins to override TIMER_NUM and HAL_TIMER_ISR
  • Add uncrust script/config for uncrustify source formatting (beta)
  • Add pinsformat.js script to format pins files (beta)
  • Add Git attributes specifying UNIX line endings
  • Refine EEPROM types and manage in HAL/*/inc/Conditionals_post.h
  • Add „Bed“ / „Chamber“ string substitutions
  • Add a script to put identifiers on Configurations
  • Add GitHub Actions to label, close, and lock issues
  • Add SRAM command string injection
  • Allow more parameters in SERIAL_ECHO*PAIR macros
  • Define HAL ADC resolution in terms of bit-width
  • Ensure language.h include order
  • Fix I2C_ADDRESS ambiguity
  • Move tests folder up (to buildroot/tests)
  • Add pulldown items for all FastIO headers
  • SD-detect handling refactored to CardReader. See #17380
  • Allow for STEPPER_TIMER_RATE calling a function
  • Use MARLIN_EEPROM_SIZE with E2END as fallback
  • More customizable DGUSDisplay (#18700)

Known Issues

  • The M85 timeout might crash M600
  • M600 after starting SD print but before heating is complete is not supported.

Kommentar verfassen