Yes, I'm having the same issue. It's been ongoing for a couple of months. I'm at wit's end over what could be causing the problem.
The printer is a RepRapGuru I3 clone, from a kit, purchased, built and put in service in Summer 2018.
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 a 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 Host V2.3.2 software. I use the embedded "CuraEngine" slicer. I have not tried other slicers.
The layer shifts are always in the +Y direction.
It 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.
I typically run with retraction (2.5 mm; 40 mm/s) and Z-hop (0.5 mm) turned on.
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 (don't know where "49" came from, probably a typo)
The machine is controlled directly from a PC which is running Win10; there is no SD card slot, digital display or rotary encoder control on the printer. Gcode comes directly from the Repetier Host 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 gcode in the vicinity of the failure point and can't see anything anomalous. I should point out I'm not a gcode expert.
- I sent the gcode 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/gcode as culprit.
- I swapped the X and Y stepper motors. The layer shifts continued, still always in the +Y direction. Motor shafts were straight and undamaged, mounting screws were tight as found, bearings seemed OK, 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 direction. 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 during printing. There was 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 belt slippage is not occurring; pole slip seems to be the problem.
- I was monitoring the 2560 5 V Vcc during the last test and saw nothing unusual.
The slips I observed on the last test 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.