To get a full understanding of Linear Advance please follow this link.
Under default conditions, extruder axis movement is treated in the same way as the XYZ linear axes. The extruder motor moves in linear proportion to all the other motors, maintaining exactly the same acceleration profile and start/stop points. But an extruder isn’t a linear system, so this approach leads, most obviously, to extra material being extruded at the end of each linear movement.
Take the common test-cube as an example. Even with the best tuning the corners are usually not sharp, but bleed out. The top solid infill displays roughness where the print direction changes on perimeters. These problems are minor or even imperceptible at low printing speeds, but they become more noticeable and problematic as print speeds increase.
Tuning the flow can help, but this may lead to under-extrusion when starting new lines. Some slicers include an option to end extrusion early in each move, but this adds more complexity to the G-code and has to be re-tuned for different temperatures and materials.
Since the root cause is pressure, LIN_ADVANCE de-couples extrusion from the other axes to produce the correct pressure inside the nozzle, adapting to the printing speed. Once Linear Advance is properly tuned, bleeding edges and rough solid infill should be nearly eliminated.
Better dimensional precision due to reduced bleeding edges.
Higher printing speeds are possible without any loss of print quality.
Visible and tangible print quality is increased even at lower printing speeds.
No longer need high acceleration and jerk values to get sharp edges.
Below I have compiled versions for the Prusa i3 MK2 based on version
3.0.12-RC2 3.1.0-RC1 as well as for the Prusa MK2 Haribo Edition.
Each version can be flashed to your printer using the Prusa Firmware flashing tool available here.
You can adjust the K values for Linear Advance by issuing the following command thru Pronterface or with a starting gcode added to your start script. M900 K40.
Good K value ranges are somewhere between 20 and 150. You should experiment to determine which value works best for you. By default the firmware has the K value set at 45. After you have issued the command you can save the value to eeprom with the M500 command.
Note: In your slicing tools you should disable any coast settings as well as any wipe settings to receive the most benefit from the Linear Advance feature. Additionally you can further benefit by turning off or down retraction as well.
Firmware with Linear Advance enabled
These firmware versions are in addition to the Original Prusa Firmware for the MK2 & MK2s with only the addition of the Linear Advance functions enabled.
Please pay attention to the Versions below and select the proper version for your printer.Flashing with the bootloader version is preferred.
Prusa i3 MK2
Linear Advance Test file for print
Prusa i3 MK2 Multi Material
Haribo 3030 Multi Material
Ramps firmware for MK2/s (Does not include Linear advance)
Ramps firmware for Haribo (Does not include Linear advance)
Pre Sliced Gcode for ABS and PLA @80mm/s