19
$\begingroup$

Occasionally, while printing, my y axis will slip and the layer will, from that point forward, be shifted, ruining the print.

What might be the causes of an axis slipping? I have tried cooling the motor which seemed to have been getting warm, and the belts are not too tight.

This does not happen with every print, and seems to be an intermittent problem.

My printer is a MendelMax RepRap, and the y axis is my moving bed.

$\endgroup$
7
  • $\begingroup$ Hi! What kind of printer do you have? Is your y-axis a moving print bed? $\endgroup$ Commented Feb 4, 2016 at 6:28
  • 1
    $\begingroup$ Added to post. RepRap and yes, it is the bed. $\endgroup$
    – Matt Clark
    Commented Feb 4, 2016 at 15:59
  • $\begingroup$ The belts being not too tight can be the problem. If I don't tighten my belts, the belt slips off the motor. What sounds does it make when it skips? Also, how much force does the bed require to move? $\endgroup$
    – Daniel M.
    Commented Feb 4, 2016 at 17:01
  • $\begingroup$ I know it's an answer to a somewhat different question than you've asked, but one thing you can do to mitigate axis slippage until you can figure out what's causing it is to home the X and Y axes between each layer. This will guarantee that if you slip during one layer, only that layer is off, and the next layer will be lined up correctly again. $\endgroup$
    – Marsh
    Commented Feb 5, 2016 at 23:59
  • $\begingroup$ FYI, the way stepper motors work is they are always "on", so being pretty warm when even not rotating is normal. That said they can skip steps if too hot, so adding a 4cm heatsink+fan is worth it and isn't hard or expensive. $\endgroup$
    – Leo Ervin
    Commented Feb 6, 2016 at 0:09

13 Answers 13

14
$\begingroup$

Shifted layer 2
(source: all3dp.com)

Your printer is skipping steps in the y-direction. This can have several causes. Take a look into Shifted layer guide on RapRap.org which lists 29 possible problems that can cause this issue and how to fix them.

First items of the list:

  1. Driver current is too low
  2. Driver current is too high
  3. Belt too Loose
  4. Belt too Tight
  5. Loose Set Screw/Grub Screw
  6. Belt or Bearing is binding
  7. Speeds are too high
  8. Acceleration is too high
  9. ...

When I was dealing with this issue on my RepRap I had to increase current to the particular driver.

$\endgroup$
4
  • $\begingroup$ Something else that I have also run into that can cause skipping is the filament not spooling smoothly. $\endgroup$
    – EGHM
    Commented Feb 4, 2016 at 21:03
  • $\begingroup$ worn out/low quality linear bearings and rods they slide on can contribute to 4, 7 and 8. $\endgroup$
    – Leo Ervin
    Commented Feb 6, 2016 at 0:06
  • $\begingroup$ I had the same problem on my Mendel, and it turned out that speed and acceleration were too high. But as @amra said, there are a lot of thiings that can cause this problem. $\endgroup$
    – TextGeek
    Commented Feb 12, 2016 at 22:50
  • $\begingroup$ That's an awesum print lol $\endgroup$
    – toddmo
    Commented Aug 29, 2017 at 6:59
11
$\begingroup$

In my experience, the most common reason for positional offset during printing, is the motor skipping steps due to physical impact.

Your stepper motors do not give positional feedback to your printer. So, if you forcefully move your motor during print, then the printer will not notice, and simply pretend it never happened.

In particular, the motor could skip steps if:

  • Your nozzle collides with erroneous extrusions (e.g. blobs) during print.
  • Your speed settings (jerk and acceleration) are too high for the mass (inertia) of the parts moved by the y-axis motor.

Smaller collisions and nozzle drag at high speed (e.g. during travel) could also cause this problem, since the strength of stepper motors is reduced at high speeds.

$\endgroup$
6
  • 1
    $\begingroup$ +1 for the note about no positional feedback. This is so frustrating, you spend sometimes thousands of dollars on a machine that doesn't know where it is. $\endgroup$
    – tbm0115
    Commented Feb 4, 2016 at 14:05
  • $\begingroup$ @tbm0115 that is very true indeed! I am hoping for that to change as the treaty printing technology matures! $\endgroup$ Commented Feb 4, 2016 at 15:58
  • 1
    $\begingroup$ I thought I heard somewhere that the NEMA motors have a way to know which step they're on, but the controllers only interact with the motors in increments. There might be a way to at least create some form of "endstop" that recognizes the stepper is out of sync and "pauses/stops" the machine. $\endgroup$
    – tbm0115
    Commented Feb 4, 2016 at 16:02
  • $\begingroup$ I believe most stepper motors only have an open loop control, which means that they don't know their own position. However, a closed loop control (with positional feedback) is usually not needed, since they have excellent precision and torque as long as the motor is properly scaled for their application. Also, for some applications - unlike in 3D printing - skipping steps doesn't really matter. You could, add an encoder to the shaft for providing positional feedback. And just like you say, some steppers also come with such encoders integrated. $\endgroup$ Commented Feb 4, 2016 at 19:23
  • $\begingroup$ @tbm0115 Some stepper drivers can detect skipped steps by sensing variations in the current going to the motor. However, NEMA motors don't have a way to "know" what step they're on. There are no electronics inside, just some coils and magnets. $\endgroup$ Commented Feb 4, 2016 at 20:50
6
$\begingroup$

The current to your motor driver could be set either too high or too low. If it's set too low then the torque might not be sufficient and the motor will skip steps. If it's set too high then the driver might overheat and occasionally shut down to protect itself.

Another option is that the printing speeds (or jerk/acceleration settings) are too high. I would start by reducing the travel speed (which presumably is higher than your printing speed) and see if that makes a difference.

The motor getting warm is normal and will not cause these issues.

$\endgroup$
4
$\begingroup$

From what I've experienced, there could be three potential reasons.

  1. Your belt(s) could be loose. Simply loosen your Y-Axis motor and pull the motor until the belt is slightly more than taught (it will relax into a taught position). Then, tighten the motor securely in its place.
  2. One of your axis endstops could be triggered mid-print. If you have a larger print, you run the risk of hitting an endstop, which could cause the machine to lose its coordinate system.
  3. I found on my machine, if you run your program via USB (on MakerWare specifically, possibly others) there might be some sort of lag in the serial connection that could cause the entire program or coordinate system to shift. I repeated this issue multiple time using a USB connection and fixed it (repeatedly) by either running off of an SD card, using a different slicer (in my case the Cura plugin for OctoPi), or trying an earlier version of your software (this was my long term solution).

The latter worked best for me. I tried running MakerBot Desktop on my Dual Replicator 1, but ran into the same exact issue as you. In fact, I encountered this issue around firmware 5.0 on the Replicator as well (7.? is the latest). Finally I switched back to using MakerWare 2.4.? and everything worked fine.

$\endgroup$
3
$\begingroup$

Had Y axis stepping issues

Solved the issue by correct pressure on the guide wheels on the Y-axis track.

Too much pressure caused binding and the Y stepper motor to skip steps

Hope this helps some people

$\endgroup$
1
$\begingroup$

Given the last few questions you have I am going to say that you have too much mass.

F = m * a. If you are trying to move a heavy plate, you will need to reduce the Jerk setting. As well as maximum acceleration.

Post your firmware settings for more advice.

Also just for completion, sometimes the Pololus overheat, that can cause it too. As well as a loose belt.

$\endgroup$
0
$\begingroup$

Make sure your controller board/electronics board etc is as cool as possible - if not the axis may jump - that's what happened with me - after adding additional fans over the Ramps/Adruino - I did not have the problem again (so far)

$\endgroup$
0
$\begingroup$

I had the same issue. the only thing that helped me was settings.. uneven surface of layers caused collisions with the nozzle. I adjusted the flow by calibrating my steppers.. also the type of infill pattern you use can cause nozzle collisions.

$\endgroup$
0
$\begingroup$

I have some suggestions that might solve your problem

  1. Try to use belt tensioner which is suitable from your printer.(You'll probably find one on Thingiverse)

  2. The belt has teeth but your bearing which slides your belt does not. So try a bearing cover that has teeth. That will prevent slipping of the belt.

  3. Most importantly lower your acceleration constant. This has a lot to do with missing steps from the motor.

  4. Decreasing the print speed can help as well.

$\endgroup$
0
$\begingroup$

I had a repeatable problem where my prints were shifting to the side after about 5mm. This was down to a loose z-axis guide rail that would come out of its end support about 5mm into the print, but appeared secure when the bed was set to its initial position. (My print head moves down). There was a grub screw hidden below a panel at the base of my printer.

I'm not familiar with the build of the MendelMax so this may be different for you.

$\endgroup$
0
$\begingroup$

I fixed this problem on our MakerBot replicator yesterday. The extruder got dislodge on a print some time ago and even after re-attaching it, subsequent prints often shifted sideways on the bed unpredictably. I was skeptical that a firmware update was responsible, so I took a look at the carriage.

The carriage that the extruder attaches to has a belt that moves it from side to side. On that belt is a plastic clip about 2” long that is supposed to be attached to the extruder (actually, not the extruder itself, but the device the extruder attaches to). It had become dislodged and so the sideways motion was entirely relying on friction from the belt which would inevitably slip. Once I got the belt clipped onto the carriage properly, I was back in business.

$\endgroup$
-3
$\begingroup$

One possibility is that after some time, your bed's sliding rods become sticky (where printer but not yourself notice). Turn printer's power off, spray windex on rods and bearings, slide the bed forth and back until it becomes slippery, wipe any excess around, turn power back on. reconnect printer and send it to home xyz coordinates since you moved bed, messing up its xyz memory.

$\endgroup$
2
  • 2
    $\begingroup$ Why, of all things, windex? Most people recommend machine oil or grease of some kind. But windex!? I wouldn't risk that. $\endgroup$ Commented Oct 12, 2017 at 6:21
  • 2
    $\begingroup$ Windex contains: 2-hexoxyethanol, isopropanolamine, sodium dodecylbenzene sulfonate, lauramine oxide, ammonium hydroxide, fragrance, and Liquitint sky blue dye. These seem pretty nasty chemicals... Would isopropyl alcohol suffice? I guess that you are using Windex for its cleaning/de-greasing properties. Regardless, isn't it a good idea to re-instate some lube, for the bearings, after having removed the stickiness? $\endgroup$
    – Greenonline
    Commented Oct 19, 2018 at 19:14
-3
$\begingroup$

My Y axis runs on a channel and I believe there was some grit or metal flakes in the channel left over from manufacturing. The wheels in the channel got stuck on the debris and caused the belt to slip. It made a horrible grinding noise when this happened.

So I blew out the channel with pressurized air and tested all the wheels.

I'll update if necessary as I test my fix with longer (taller) prints.

Update

Actually, the print had messed up g-code. The gcode file was corrupted.

$\endgroup$
1
  • 1
    $\begingroup$ What is the purpose of the picture to your answer? Do you have the rights to use it? $\endgroup$ Commented Aug 29, 2017 at 20:21

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .