Welcome! Log In Create A New Profile

Advanced

Weird extruder behaviour after some travel moves with linear advance on Anycubic Delta with 1.1.9 Marlin

Posted by Mangosniper 
Hello everyone,

I have a very weird behaviour of my extruder on my Anycubic Kossel Delta Printer. It started probably 2 weeks ago when printing a case for an arduino. There were two cylinders for buttons, the right one was printed normally, on the left one my printhead just stopped on a specific XY-Point every layer and extruded filament for, like, 300 milliseconds. I thougt that probably the model had an issue as this was the only part of the print where this happend and I didnt thought about that.

Yesterday I started printing something which has a lot of round parts, and now, I get this behaviour all the time on different parts of the print. Because of all this unwanted extrusion and as the printhead stops for a split second, it melts the plastic which is already there and adds a big blog which results in a very bad print. As the new object is mostly round, also the brim I print on the first layer is mostly round. Here, I get underextrusion (check image below). What is extra weird is, that on objects wich have a rectangular shape, the first layer has NO underextrusion… (check same image) (I figured out the underextrusion was a Cura bug of version 3.5 and 3.5.1).

I also tried to use some G-Code which is about 5 months old, to check if the gcode is wrong and my slicer (Cura) is the issue, but no, I get the same behaviour of printhead stopping for 300 ms and extruding material here, too. When I printed this gcode in the past, everything was fine.





So, what did I do to try to resolve the problem (Hint: nothing worked so far):

• Rebooted the printer..
• Printed different objects to make sure it is not that specific object
• Printed old G-Code to check if my slicer is the problem
• Reflashed the Firmware (Marlin 1.1.9)
• Reflashed a backup of my Firmware (I change some stuff from time to time) from about 2 1/2 weeks ago.
• Restored Failsave on my printer to make sure no wrong setting is stored in the eeprom
• Compared every line i changed from the stock 1.1.9 Firmware to find something weird
• Did an M111 S247 and watched the debug output live in the console, slowed down the printer until the debug output came in in realtime (did not find something unnormal)

So, I am just out of ideas… Any help is appreciated.

I will add some more information here:

Printer is a Anycubic Kossel Delta Pulley (2016 Version) with Ramps 1.4 Board and A4988 drivers.

I attached some G-Code which produces the error on my side to this post

Here are Videos of the Problem, one how it looks at the printhead (issue is obtainable at 0:15 and multiple times after) [imgur.com] one how it looks on the extruder motor (obtainable at 0:25, 0:23 and 0:12 for example) [imgur.com]

Here is my Configuration.h and my Configuraion_advanced.h
[pastebin.com]
[pastebin.com]

UPDATE:

  1. The underextrusion was caused through a bug in Cura 3.5 and 3.5.1. It is not related to my actual issue and I fixed it going back to Cura 3.4.1
  2. I flashed the orginial anycubic firmware 1.1.0, which was shipped with the printer. The behaviour does not occur with that firmware. Therefore, I am like 99% sure, it is an issue with the firmware and I set something wrong.

UPDATE2:

The issue is related to linear advance. When I disable linear adnvance in the firmware, it works fine again. I activated the "LA_DEBUG" and in pronterface console I get a lot of "Acceleration limited." messages. The part in the firmware says:

// Check for unusual high e_D ratio to detect if a retract move was combined with the last print move due to min. steps per segment. Never execute this with advance!
        // This assumes no one will use a retract length of 0mm < retr_length < ~0.2mm and no one will print 100mm wide lines using 3mm filament or 35mm wide lines using 1.75mm filament.
        if (block->e_D_ratio > 3.0f)
          block->use_advance_lead = false;
        else {
          const uint32_t max_accel_steps_per_s2 = MAX_E_JERK / (extruder_advance_K * block->e_D_ratio) * steps_per_mm;
          #if ENABLED(LA_DEBUG)
            if (accel > max_accel_steps_per_s2) SERIAL_ECHOLNPGM("Acceleration limited.");
          #endif
          NOMORE(accel, max_accel_steps_per_s2);
        }

But I have no idea what that measn actually. I tried to increase the DEFAULT_EJERK to 20.0 (from 5.0) and DEFAULT_MAX_ACCELERATION to { 3000, 3000, 3000, 9000 } (Extruder was on 3000 before) but this did not help. I still got the blob, but now it was just extruded faster.

Edited 10 time(s). Last edit at 10/28/2018 07:02AM by Mangosniper.
Attachments:
open | download - KM_NKN Spanner.gcode (533.1 KB)
So, no one has a clue? Does somone probably have a tip where else I can search for help?
hi mangosniper,

i had the same problem with my ender 3 pro and finally figured it out...

i also tried to change the acceleration limits for all the stepper motors but i would not work.
it's not the "max_acceleration" but the "jerk" settings that you have to configure (M205 in the gcode).
to be precise it's the e-jerk setting that you will have to bump up (for me the factory settings were E 5 and i bumped it up to E 40).

after that it worked perfectly and i could test and configure the linear adavance settings.

hope that's all you need to make it work!

Edited 2 time(s). Last edit at 08/10/2019 10:43PM by klubglied.
Sorry, only registered users may post in this forum.

Click here to login