Layer Shifting problems

Hi. After about 7 hours of printing, my Snapmaker presented a big layer shifting problem, as you can see above. It was about 1.5cm of shifting! I used Cura 3.3.1, with these main configs:

Layer height: 0.2mm
Print speed: 100mm/s
Travel speed: 60mm/s

It’s the second time that i’m having the same trouble. Is there any solution?

1 Like

Can you put your G-Code here? Maybe there is something in the G-Code.
Did you print from Cura or did you splice from Cura? From the photo is seems that you are printing from the USB. Please post that .gcode, do not regenerate a new one


1 Like

I have printed a number of parts so far and I just barely printed one that had the shifting problem. It shifted in three different spots in X direction. The shifts were not all in the same direction. I too am using Cura to slice and my suspicion is that it has faster speeds configured and that it causing it to loose sync at times during the print.

@whimsycwd, could you tell us what the acceptable fastest printing and rapid movement speeds are for the SnapMaker?

I’m currently reprinting the same part again to see if it looses sync in the same spots or different ones. I was using 80mm/s as a print speed and 150mm/s travel.

I also hear a clicking when it does rapid moves sometimes which I believe the print head is catching the print support parts and that’s what is causing the clicking. I guess potentially if it were to catch in a more serious way that it could cause the axis to miss a few steps and cause the shift. That could be avoided by configuring it to to a Z lift before rapid movements.

1 Like

It shifted again, not in the same place and only once instead of 2 or 3 times.
I’m going to try slowing it down to see if it makes a difference.

I have another problem with this particular STL, it’s missing a region that is obviously in the original model. I tried slicing with both my Mac Cura and my PC Cura, both had the same problem so I suspect some kind of strange problem with the model itself. Tried changing the orientation to no avail.

Dear @Tone
Can you publish your STL? Are you only slicing from Cura or printing directly? Please share both the STL as well as the GCODE. Without these, the problem cannot be debugged.

My guess is that the speed is set too high. I looked at the speed of a “Normal” quality print in Snapmaker3D and it was only going at 40-45mm/sec as I recall.

I’m printing from OctoPrint. Slicing from Cura. I think the model is partly to blame. I’ve got a revised STL that I’m going to try with slower speeds. I have printed a lot at 60mm/s and some even at 100mm/s so I know it’s possible. It could be with a larger or taller part that the servos could get heated up some which could affect the performance.

You are welcome to send me the STL to have a look if you need to. Have a look at MeshMixer (or other tools) that has a quick analysis of the STL. It will highlight where there is an error or gap in the model. You might be missing a very small surface.

1 Like

So a revised model and slower speeds got rid of my shifting problems. I slowed down to 50mm/s print and 100mm/s travel. I might try bumping the travel up to 125mm/s to see if it works.

1 Like

If i’m not mistaken, the axes are rated for up to 100mm/s. I vaguely remember seeing that on the touchscreen when I went to the “About” screen after updating my firmware. Maybe it can go faster. @Tone let us know if it can. :slight_smile:

I’m guessing there might be a firmware limit. @whimsycwd? @Noah?

@Tone You are right. I think two factor causing the shifting problem.

  1. Printing speed
    • For simple Model the speed can be very fast without lose steps. But for complex model if the Toolhead are hit the printed model during movement. It might lose steps because of the resistance.
  2. Model
    • some Z Hop retraction configuration might solve the problem, but that will make the print much slower.

So 1. I suggest you slow down the printing speed 2. try Z-Hop During Retraction

X Axis, Y Axis firmware limit is 300mm/sec, which our snapmaker can’t reach that speed. We will lose steps in hight speed.
Z Axis firmware limit is 5mm/sec, which is for safety concern.

Set Max Feedrate | Marlin Firmware Checkout this command, If you want to change it. (Not recommend to change it, only if you know exactly what you are doing) ^_^.

Have fun~



As I think about it, it’s the acceleration that will make it skip more so than the speed. I believe our Taz6 at work has the acceleration set low as you can hear it ramp up and down in speed. Either acceleration or speed could cause it to skip but I think acceleration may be the more critical one. You likely could go the fastest if the acceleration is right. For maximum performance they both have to be tuned right and then you’ll want to back off some for a safety factor.

Question: Does a G0 move exactly point to point or does it move all commanded axes at full speed until each reaches its value? The latter will be a non straight Path.

I am very impressed at how fast the SnapMaker can move and print.

With the OctoPrint/Pi hooked up to the SnapMaker you can manually enter GCODE commands through the terminal tab. So I played around a bit to see what it could do. It appears that X & Y will start to skip if commanded to move faster than 150 mm/s or a feedrate of 9000mm/min (150 * 60). Of course every actuator will vary, I’m going to try using 140 mm/s and see if it will handle it.

1 Like

I made some tests today and printed a small model successfully using 140m/s (I know it’s to high).

I printed a number of small parts with 150mm/s for rapid moves. It could be that the problem is more likely to occur when you do tall parts that take a long time thus heating up the stepper and increasing the odds it will skip. On one tall part I did, I backed off to 125mm/s and it skipped too. So my safe rapid speed is now back to 100mm/s especially for tall parts. I also believe the chances it will skip depend on part geometry. If the part wants to curl up in spots because it is thin then the chances are that the nozzle will catch on it.

G0 X0 Y0  F3000
G0 X100 Y100 F3000

Notice F set feedrate to 3000mm/minute


Xspeed = Yspeed = 3000/sqrt(2)

You can use Snapmakerjs Console Widget to mannually enter GCODE commands. ^ ^. Have fun.


1 Like

Of course if the move includes a Z move then the speed is limited by the maximum that Z can move because it is much less. (5mm/s) I’m curious, what do your tests with a double Z axis show that it can move speed wise?

Hi guys

I have problems with layers shifting as well and it is not the first I already had 3 times like this, but always on different height.

Yesterday I printed same model like this without problem, but previous was shifted.

Any solution to print without problem. I think I print really slow.

I tried with USB connection and USB drive as well.

Midremix.gcode (4.8 MB)


Your speed is plenty slow enough. You could try “Z Hop During Retraction”. .5mm should be plenty.