-1

I'm getting frequent layer shifts, always in the Y-axis. It's happening on more than one model, at least four to date, and on multiple attempts at the same models. Some of the models are mine (Tinkercad), some from Thingiverse. I can't think of any model that has not failed recently except some very small, simple ones.

The printer is a RepRapGuru I3 clone, from a kit, purchased, built, and put in service in Summer 2018. I've been using it almost daily since. It's gone through at least 50*1 kg spools of filament in that time so has seen a lot of use.

The printer has a single direct drive extruder, not Bowden. The frame is acrylic/plexiglass. The frame is solid, with no loose fasteners and no cracks that I can detect. There's no "soft foot".

If a model fails, it fails consistently on every attempt to print it. The layer shifts occur often, but not always, at exactly the same point in the print job. In those cases where I've witnessed the shift, there seems to always be a very rapid "jitterbug" motion going on, as in inter-wall infill or while laying down a long narrow section of the model or while building overhang. It happens sometimes, but not exclusively, on the first continuous layer of a "ceiling" above infill and often at or near a corner of the model. I don't believe I've seen it happen on the bottom few layers where the model has a solid "floor" nor during "steady steaming" printing of a large surface.

The magnitude of the shift varies but is typically roughly 5 mm, give or take. One, however, was about 30 mm. When it happens the sound suggests to me that the motor is slipping poles, not that the belt is slipping on the pulley, but that's only an impression. [NOTE: It's just occurred to me that I can put match marks on the belt and pulley. After a layer shift, if they're still aligned, I can pretty much rule out belt slippage. There's only a 1 in 20 chance they'd still be aligned after a shift. Will do that tonight.]

The failures I've seen do not occur at the beginning of a layer, i.e. during perimeter printing; they occur somewhere in the middle details of a layer.

The layer shifts began a few months ago. Prior to that, the machine had no chronic problems.

I few months ago (note the coincidence with the above paragraph) I rebuilt the printer with all new guide rods, linear bearings, belts, and pulleys, in stages over several weeks.

Before and after those updates, the Y carriage moved/moves smoothly and freely through its entire range with no tight spots.

Later still, I replaced the original quarter-inch acrylic Y carriage plate with a 3 mm thick (220 X 220 mm) aluminum one, with four linear bearings (new ones again) in new aluminum pillow blocks vice the original three bearings in split plastic pillow blocks on the original. I replaced the original heated bed with a new one that has, unlike the original, a 3 mm aluminum backing plate. The very wimpy original heat bed springs were replaced with new, stiffer ones.

The Y layer shifts started sometime shortly before or during the first series of updates. I'm certain the problem predates the heat bed and Y carriage replacement, but I've included that info above to communicate the current state of the machine.

I'm unsure whether this issue began before, during, or after the guide rod, bearing, belt, and pulley replacement, which were done in phases over several weeks. I can't definitely tie the issue to any particular phase of those upgrades. The layer shifts definitely began before the heat bed and Y carriage plate replacements.

Y belt tension is pretty normal, certainly not loose enough to cause it to jump teeth yet not overly tight. Tension is similar to that of the X belt, but that has a shorter span so maybe apples and oranges.

Speeds slow/fast Settings:

  • Print: 40/60 mm/s
  • Travel: 65/80 mm/s
  • First Layer: 30/30 mm/s
  • Outer Perimeter: 40/40 mm/s
  • Inner Perimeter: 40/40 mm/s
  • Infill: 40/40 mm/s
  • Skin Infill: 40/49 mm/s

The only changes to these speeds have been to reduce some of them since the layer shift problems began. None were particularly high to begin with except Travel/High was 150 mm/s vice the current 80 mm/s. Reducing them had no effect on the problem.

I typically run with retraction (2.5 mm; 40 mm/s) and Z-hop (0.5 mm) turned on.

The Marlin firmware on the 2560 main board has never been updated or modified in any way. I don't know the version but it's whatever RepRapGuru shipped with their kits in mid-2018. The shield board is RAMPS; I'm almost sure I remember "Version 1.4" on the box it came in within the kit.

I've never attempted to modify acceleration or jerk settings. They're as they've always been.

I use Repetier V2.3.2 software. I use the embedded "Cura Engine", which I believe is really an older Cura Steam Engine slicer, not the current Cura slicer. I have not tried other slicers.

The machine is controlled directly from a PC using the Repetier software and the embedded CuraEngine slicer; there is no SD card slot, digital display, or rotary encoder control. Gcode comes directly from the Repetier software on the PC to the printer via the USB connection.

Things I've tried:

  • I've used the "Cut off Bottom" feature of the slicer to print test versions of some of the problem models at partial height, beginning a few layers before the common failure points. The failures still occur mostly at the same point in the model, indicating height above the bed is not the determining factor.

  • Where I can identify a common failure point in a model, I've examined the G-code in the vicinity of the failure point of a couple of models and can't see anything anomalous. I should point out I'm not a G-code expert.

  • I sent the G-code output from my slicer for an object that is consistently failing with layer shifts, to a friend. He printed it on his machine without problems (different machine, but still Marlin/RAMPS). This seemed to absolve the slicer/G-code as the culprit.

  • I swapped the X and Y stepper motors. The layer shifts continued, still always in the Y-axis. Motor shafts were straight and undamaged, motor mounting screws were tight as found, bearings seemed OK, and pulley set screws were tight. This seemed to absolve the Y stepper motor.

  • I swapped the Y stepper driver board with the unused E1 stepper board. The layer shifts continued, still always in the Y-axis. This seemed to absolve the stepper driver. (The motor and driver swaps were performed independently, with a failed test after each. Motors and driver boards are the originals.)

  • I rechecked the stepper current limit settings on the driver boards and all were found OK. The largest discrepancy from the target setting (0.50 V) was 0.03 V.

  • I had installed "smoothers", i.e. Schottky diode boards, between the drivers and stepper motors on X and Y a few years ago and never had problems but also didn't note any improvement from them at the time. I removed them during these problems without affecting the layer shift issue. They remain out.

  • I put an 80 mm muffin fan on the bench, directed toward the stepper drivers. It had no effect on the layer shifts.

  • After match marking the Y motor pulley and belt, I ran another test print. I killed the print after a series of Y layer shifts totaling approximately 8 mm in the +Y direction. The belt/pulley match marks were still aligned. This indicates pole slip. The slips I observed were occurring where the printer was beginning to build a small section of overhang, where a brief but rapid series of short moves were made. There was a definite, dull clunk each time the motor slipped. I was monitoring the 2560 Vcc at the time and saw nothing unusual.

agarza
  • 1,734
  • 2
  • 16
  • 33
allardjd
  • 531
  • 1
  • 4
  • 12

1 Answers1

1

Thanks to some help from an expert this issue is resolved. The culprit was crosstalk between the X motor cable and the sense line of the Y endstop. Re-routing cables to separate the two has solved the problem. Marlin monitors the endstop switches while printing unless inhibited by an option in the firmware; default is monitoring enabled. If a false low is detected during a move that move is stopped, resulting in a layer shift

allardjd
  • 531
  • 1
  • 4
  • 12