Home Artists Posts Import Register

Content

After over 130 days of poring over submissions, cleaning up code, and playing hide-and-seek with sneaky bugs, I'm thrilled, pleased, and bloody well relieved to announce the official release of Marlin 1.1.0-RC8!

This release candidate represents the work of dozens of volunteers and contributors who produced over 900 individual commits to improve and refine Marlin. We hope you find these changes improve your 3D printing experience!

The biggest changes since 1.1.0-RC7 are…

  • Major performance improvement for Graphical LCDs
  • Simplified probe configuration
  • Enable Auto Bed Leveling by type
  • Reduce serial communication errors
  • Make Bilinear (Mesh) Grid Leveling available for non-delta
  • Support for Trinamic TMC2130 SilentStepStick SPI-based drivers
  • Add `M211` to Enable/Disable Software Endstops
  • Add `M355` to turn the case light on/off and set brightness
  • Improved I2C class with full master/slave support
  • Add `G38.2` `G38.3` command option for CNC style probing
  • Add `MINIMUM_STEPPER_PULSE` option to adjust step pulse duration
  • Add `R` parameter support for `G2`/`G3`
  • Add `M43` optional command (`PINS_DEBUGGING`)
  • Remove SCARA axis scaling
  • Improved sanity checking of configuration
  • Improved support for PlatformIO and command-line build
  • Usable `DELTA_CALIBRATION_MENU`

See the Change Log below for more details…

Beta Notes

Marlin 1.1.0-RC8 is beta software and may have bugs. So proceed with caution and please report any issues you experience. While we have tried our best to test each change, we cannot guarantee it will work perfectly with your particular machine and peripherals.

In Other News…

Marlin Firmware now has a Twitter! Follow @MarlinFirmware for the latest news, tips & tricks, and release announcements about Marlin and related stuff.

We're working on 32-bit support in the main Marlin project, beginning with a Hardware Access Layer (HAL) for Due/Duo boards while maintaining full support for 8-bit AVR. Please contribute to help move this project forward.

As always, thank you for your support!

Change Log:

New / Updated Features

  • Improved i2c messaging
  • Add `M211` to Enable/Disable Software Endstops
  • Add `MINIMUM_STEPPER_PULSE` option
  • Enable `M0`/`M1` with `M108` (`EMERGENCY_PARSER`)
  • Remove SCARA axis_scaling
  • Add support for `G2`/`G3` with `R` parameter
  • Add `G38.2` / `G38.3` commands for CNC-style probing
  • `PINS_DEBUGGING` and `M43`: Read pin states
  • Only trigger MAXTEMP error during heating
  • Add `M355` to turn the case light on/off and set brightness
  • Save configured hotend offsets to EEPROM
  • Support for Trinamic TMC2130 SilentStepStick drivers
  • Add `M155` auto-report temperature (`AUTO_REPORT_TEMPERATURES`)
  • Add `M115` capabilities protocol (`EXTENDED_CAPABILITIES_REPORT`)
  • Support for `AUTOTEMP` options in `M104` (not just `M109`)
  • Support endstops interrupts to improve performance
  • Case Light menu item (`MENU_ITEM_CASE_LIGHT`)
  • Support for a 3-pin RGB LED (`RGB_LED`)
  • Each E stepper can have different steps/mm, acceleration, max feedrate

Code Cleanup & Documentation

  • Add note suggesting RAMBo users use the RAMBo board type or platformio environment
  • Define status LED pins without condition
  • Eliminate 'unused function' warnings in `ultralcd.cpp`
  • Remove mysterious board ID 99

Planner & Stepper

  • Optimization of leveling and planner code
  • Use acceleration limiting based on BQ Marlin
  • Patch stepper.cpp to allow omitting steppers
  • Optimize stepper ISRs, plus cleanup, shorthand
  • Fix bug in mixing extruder mix factors
  • Fixes for Advance Extrusion
  • Adapt Jerk / Speed code based on Prusa MK2
  • Fix and optimize planner acceleration
  • Do more pre-calculation in `buffer_line` before waiting for a free block

Performance & Stability

  • Repair SPI-pins, some other pins
  • MISO is an input
  • Always disable `SLOWDOWN` for DELTA/SCARA
  • Show up to 99:59 in digital time
  • Throw MINTEMP BED error only if heating
  • Fix serial output for MBL, `M303`
  • Fixup 3DRAG pins based on updated RAMPS pins
  • Fix stopSDPrint so it works when paused
  • Init PWM-able AUTO_FAN pins with `SET_OUTPUT`
  • Repair MarlinSerial with TX-buffer
  • Patch `duration_t` `toDigital` method
  • Fix some regressive typos in `G29`
  • Fix Pin Definition Files to define `USBCON`
  • Standardize `code_value_bool` for flag parameters
  • Kinematic and SCARA patches
  • Fix `BLTOUCH` string and `SERVO_DELAY`
  • Improve `MINIMUM_STEPPER_PULSE`
  • Fix `HEATERS_PARALLEL`
  • Clean up PID algorithm for heaters
  • Fix buzzer when both i2c and beeper pin are set
  • Patches for Stepper DAC and MAX31855
  • Fix freezing and MINTEMP Error with MAX31855 thermocouple
  • Extend measurement range of MAX31855
  • Fix Azteeg X3 servo pins
  • Include Z2 min endstop in `M119` output
  • Fix Z raise in Dual X auto-park mode
  • Fix various Dual X Carriage and Dual Z issues
  • Fix and optimize `LIN_ADVANCE`
  • Fix and optimize `MIXING_EXTRUDER`
  • Fix MBL Z feedrate
  • Fix LCD edit items to support over 999 steps/mm
  • Graphical LCD optimizations to reduce print lag

Configuration

  • Move tests for old symbols to the top of sanity check
  • `dropsegments` => `MIN_SEGMENTS_FOR_MOVE`
  • `PREVENT_DANGEROUS_EXTRUDE` => `PREVENT_COLD_EXTRUSION`
  • `MIN_SEGMENTS_FOR_MOVE` => `MIN_STEPS_PER_SEGMENT`
  • Add heading for movement settings
  • Sanity check endstop plugs based on homing direction
  • Additional documentation of `Configuration.h`
  • Z Raise/Clearance rather than Height
  • Drop `DISABLE_Z_MIN_PROBE_ENDSTOP`, clean up probe config
  • K8400 has 1xXY and 2xZ endstop plugs
  • Pre-define auto fan pins. `EXTRUDER_n_AUTO_FAN_PIN` => `En_AUTO_FAN_PIN`
  • Remove obsolete `OLD_SLOWDOWN` option
  • Allow E steppers to have different factors (`DISTINCT_E_FACTORS`)

Homing and Bed Leveling

  • Make Allen Key Probe stow
  • Fix `Z_DUAL_ENDSTOPS` with Z MIN Homing
  • Explain that `Z_PROBE_*_HEIGHT` options are nozzle-relative
  • Improvements to homing / leveling
  • Fix zigzag moves with MBL
  • Log whether homing with probe or endstop
  • Bed leveling that accounts for home XYZ
  • Marlin patches for homing, esp. Delta
  • Use simplified Z correction in `G29` when possible
  • Big cleanup of leveling code
  • Allow non-square Auto Bed Leveling grid
  • Handle nonlinear bed-leveling in Planner
  • Better `BLTOUCH` support
  • Patch `G29` for 3-point leveling
  • Use probe clearance for bump when homing Z with probe
  • Suppress warnings, fix nonlinear_z_offset
  • ABL: Enable by type. Bilinear grid leveling for all.
  • Add `PROBE_Y_FIRST` option. Arduino 1.6.8 required.
  • Don't check Z_MAX endstops on raise when the probe pwns the pin
  • Improve `M48` output; Add min, max, range, etc.
  • Fix Y endstop bit set by Z2 or probe
  • Apply limits in `G30`, report correct XY
  • Make Delta Safe Zone homing optional (`DELTA_HOME_TO_SAFE_ZONE`)
  • Extend `M420` with `Z` to limit compensation to a given height
  • Bilinear subdivision via Catmull-Rom (`ABL_BILINEAR_SUBDIVISION`)

Mesh (Manual) Bed Leveling

  • Remove premature int-cast from MBL cell index methods
  • Save some PROGMEM in MBL G28
  • Fix manual leveling coordinates

LCD Controllers

  • Save bytes for custom chars (Hitachi LCD)
  • Make `DELTA_CALIBRATION_MENU` universal
  • Include days in Graphical LCD print timer
  • Added hyphenated strings for full graphic display
  • Option to show SD percent on Graphical LCD
  • Clear LCD button state, apply timer to all
  • Revised DAC Drive Strength Menu
  • Set defer delay back to `false` when exiting babystepping
  • Better handling of encoder clicks
  • Instant feedback for (`M600`) Filament Change
  • Megatronics has no SD Detect
  • Fix Turkish and Greek font descents
  • Draw no more than 4 stripes on graphical LCD
  • Draw a hollow frame to optimize graphical LCD (`MENU_HOLLOW_FRAME
  • Refine preheat options for multiple nozzles
  • Right-align or center elapsed print time
  • Show decimals for small XY values (`LCD_DECIMAL_SMALL_XY`)

Languages

  • Strip never-translated strings from language files
  • Set language display charset in language.h
  • Updated German language (Thanks AnHardt, Kaibob2, and blubbfish!)
  • Updated Spanish language (Thanks RicardoGA!)
  • Updated Russian language (Thanks mkile, lcfm1!)
  • Updated Danish language (Thanks boelle!)
  • Updated French language (Thanks gege2b!)
  • Updated Italian language (Thanks tnw513!)
  • Updated Japanese language (Thanks esenapaj!)
  • Updated Czech language (Thanks petrzjunior!)
  • Turkish language support (Thanks Rigid3D!)
  • Ukrainian language support (Thanks akaJes!)
  • Updated Croatian language (Thanks robimarko!)
  • Update Galician language (Thanks rafacouto!)
  • Update Polish language (Thanks c64pl and android444!)

For Developers

  • Add PlatformIO support
  • Within Marlin, maintain most feed rates in mm/s
  • Add Rambo support/env to platformio.ini; properly map extended pins
  • Debug logging of nozzle type and offsets
  • Log machine info in G28 and G29
  • Makefile fix for Arduino 1.6.9 unzipped
  • Arduino 1.6.10, direct download U8glib in Travis CI
  • More detailed debugging of G28 delta
  • Move platformio directories out of source tree
  • Bump -std in `Makefile` to C++11
  • Support for CMake build
  • Improved missing translations shell script

Comments

No comments found for this post.