<p>This was killing me on mine. My problem wasn't the z-axis, it was the x-axis arm. On the right side, opposite the extruder gear, it had a lot of give (wobble). I could level my bed four times before starting a print and would still have problems, especially with the nozzle making deep grooves in the magnetic bed. The way it messed up was inconsistent as well, making it hard to troubleshoot.</p>

<p>I changed out the bedsprings, got a glass bed instead, changed out the extruder gear and Bowden tube; I was ready to give up.</p>

<p>How to fix the wobble, if that's your problem, if there's a lot of give / vertical movement on the right side of the arm:</p>

<p>You have to take the whole arm off. First, take the top bar off, remove the four screws. Second, disable steppers so you can take the x-axis off completely. I removed the cables once I had taken it off. Third, there's a plate with two holes to get to two screws - make sure these are tight! This is where the wobble was coming from. Four, reassemble and double-check. For me, the give was reduced drastically.</p>

<p>A video tutorial for help. There are English subtitles.
<div class="youtube-embed"><div>
                <iframe width="640px" height="395px" src="https://www.youtube.com/embed/ncUHPScBcI4?start=0"></iframe>
            </div></div></p>

CC BY-SA 4.0
2020-03-20T14:54:36.390Z
Are you the original poster on a second account?
Davo
CC BY-SA 4.0
2020-03-21T15:52:57.527Z
No, I just thought my issue was also my z-axis and came across this several times in trying to figure things out and figured I'd post my solution in case it helps anyone else.
Akexis
CC BY-SA 4.0
2020-03-19T18:29:37.833Z
2020-03-19T18:29:37.833Z
Akexis
<p>I had a similar issue, the first layer always ended up at slightly different heights, making the first layer too low or too high.</p>
<p>At one point, I was raising the Z height 100 mm in G-code, and while watching the gantry rise I noticed extremely brief pauses, then when I lowered to zero the nozzle crashed the bed.  I realized that the Z-axis threaded rod might be slipping.  I Sharpied some marks on the coupler, did the 100 mm rise again, and took a high-speed video of the coupler with my phone.  Sure enough, I saw moments where the coupler was turning but not the rod.  Even though the coupler felt quite tight.  So effectively the machine always thought the nozzle was higher than it actually was.</p>
<p>I tightened about as tight as I could without stripping. It got better, but I still had first layer inconsistency that suggested slip.  Replacing the coupler with a version with 2 pairs of grub screws allowed me to get it sufficiently tight.  I'm not sure how the coupler got loose in the first place, probably a crash.</p>
<p>Also, I found that the screws that hold the heat block to the heat break had loosened a bit. Surely this could cause issues and again probably resulting from a crash.</p>
<p>Finally, I think my Z gantry wheels may have been too tight. I think that would have relatively little effect on large vertical moves, but could cause some slight inconsistency in small moves or with vibrations; small but large enough to be the fractions of a millimeter that affect first layer quality.</p>
<p>Anyhow, one moral of this story I guess is after a crash, you can expect to spend a lot of time troubleshooting and fixing.  try not to crash.</p>

CC BY-SA 4.0
2021-07-31T13:06:29.013Z
Welcome to 3D Printing SE and thank you for your contribution. When you get a chance, please take the [tour] to understand how the site works and how it is different than others.
agarza
CC BY-SA 4.0
2021-07-31T07:44:11.360Z
2021-07-31T13:06:09.510Z
2021-07-31T13:06:09.510Z
Scott Dworkis
<p>I've just bought an Ender 3 Pro and as a guess I would look at the Z axis stepper motor to see if it is not holding position once it stops... the stepper motor has power on it all the time it is stopped to hold it in position.</p>

<p>I would check the plug that feeds power to see if it is damaged or not making good contact.</p>

CC BY-SA 4.0
2019-05-25T05:28:20.333Z
2019-05-31T01:32:49.967Z
2019-05-31T01:32:49.967Z
window
<p>Similar issue happened to coworker's Maker Ultimate. I'm gonna go out on a limb and assume that your Z-stop is a little mechanical switch, and there's an M3 screw going through part of the Z carriage that pushes said switch. 
Check to see how much force it takes to rotate said screw. There's a lot of vibration happening in a 3d printer, and it takes surprisingly little vibration to make a threaded part do weird things, including making it back out against gravity if conditions are right. Redo your Z gap paper test, get everything lined up, and then slap a dab of blue loctite on the screw to make sure it doesn't move during your next print. See if that fixes your problem.</p>

CC BY-SA 4.0
2019-05-30T18:58:42.640Z
2019-05-30T18:58:42.640Z
Nach0z
<p>I have just had exactly the same symptoms with different clearances b/w the bed and the nozzle after homing. In order to reproduce that, I simply had to do subsequent homings and measure the clearance. The variance was around 0.15 mm.</p>
<p>I was not moving my printer. No wobbling was found. If the printing cycle is started successfully, then I have no issues with the printing quality. No missed steps on Z or any other axis.</p>
<p>The solution for me was in software. I have followed the comment here saying &quot;You may want to try reducing the Z-axis homing speed to prevent it from exerting too much force, or tightening the switch more.&quot;</p>
<p>SOLUTION: I have compiled Marlin firmware myself with the only changes made to the homing speeds. Namely</p>
<p>in <code>Configuration_adv.h</code></p>
<pre><code>#define HOMING_BUMP_DIVISOR { 2, 2, 10 }       // Re-Bump Speed Divisor (Divides the Homing Feedrate)
</code></pre>
<p>and in <code>Configuration.h</code></p>
<pre><code>#define HOMING_FEEDRATE_MM_M { (50*60), (50*60), (3*60) } 
</code></pre>
<p>Now during homing, the Z-axis movement is so gentle that the endstop triggers reliably at the same position. It costs me only extra 10 seconds but saves a lot of time in restarting the print.</p>
<p>P.S.<br />
It looks like my problem is a combination of things: speed of homing and some issues with the endstop. I am ordering endstops anyway but meanwhile... <strong>anyone who can compile Marlin may consider this approach as it requires no tinkering with the HW part of the printer and is easy to roll back or configure.</strong></p>

CC BY-SA 4.0
2022-10-31T10:52:41.097Z
2022-10-31T14:46:35.573Z
2022-10-31T14:46:35.573Z
George
<p>I'm having the same issue with Ender 3 V2. Everything tightened, Z-axis coupler not &quot;slipping&quot;... I noticed, that the error is made by the Z-axis end switch itself. I am not sure how that is possible but try homing several times and you'll see that the loud click when the switch is triggered occurs in a span of +/- 3 mm, which then results in a collision of the hot end and the bed, or the hot end being too high.</p>
<p>From what I noticed, the problem got worse after installing OctoPi. Strangely enough, I get very different results when homing &quot;manually&quot; (from the machine display menu), and when homing is done at the beginning of printing.</p>
<p>I believe that the problem has three solutions:</p>
<ol>
<li>At least 3 skirt loops and adjust the bed on the fly. This is a very unfortunate solution, but that's what I have now.</li>
<li>I suggest some sort of speed regulation when approaching the switch (Z -&gt; 0), thus making the switch always trigger at the same height. I'm a programmer, but not familiar with G-code, I'll make this solution publicly available when I get to it.</li>
<li>Change the switch. The tin &quot;paw&quot; that can bend is unfortunate when you need 0,01 [mm] precision. The video is unrelated to the topic, but run 10-15 seconds and you'll see what I mean: <a href="https://youtu.be/g0PK4oXbJT8?t=266" rel="nofollow noreferrer">Z-axis switch replacement</a></li>
</ol>

CC BY-SA 4.0
2021-12-05T11:42:01.633Z
Hello again. For anyone interested: 1) it was the loosened Z-axis coupler. 2) I think that the described software feature can be achieved with existing equipment using PID regulation.
Klemikaze
CC BY-SA 4.0
2021-10-12T07:15:20.347Z
2021-10-15T03:18:12.270Z
2021-10-15T03:18:12.270Z
Klemikaze
<p>I had a couple of recent nozzle/bed crashes, so I now frequently do a manual bed levelling. I do these while the bed is heated to allow for expansion.</p>
<p>Today I found, after levelling, a subsequent print could vary from having too much clearance (paper moves very freely) to less than no clearance (which left deep grooves in the bed as per the photo).</p>
<p><a href="https://i.sstatic.net/8sAZk.jpg" rel="nofollow noreferrer" title="Photo of bed"><img src="https://i.sstatic.net/8sAZk.jpg" alt="Photo of bed" title="Photo of bed" /></a></p>
<p>What are the possible causes? Is it just a dodgy Z-limit switch or something else? What solutions are available and at what cost? Obviously an ABL seems essential now, but requires a lot of hardware and setup.</p>
<p>It has just happened again so here are some more details.</p>
<p>Printing PLA this time:</p>
<ul>
<li>Preheated bed.</li>
<li>Levelled bed all over and got a very good raft.</li>
<li>Print failed later so the print was aborted.</li>
<li>Restarted the same print job.</li>
<li>Nozzle gouged out a uniform depth trench around print perimeter.</li>
</ul>
<p>The uniform depth of the gouge indicates a problem related to Z-axis only as the bed remains flat and level, but the height is off. That is to say, the bed is flat and level before and after this occurs.</p>
<p>Please note: I have done over 100 successful prints, prior to this issue, so I do have some knowledge about levelling the bed. I am interested in what could cause such a large variation. Initially I thought it was temperature as I switched to ABS at the time, but it now varies from one print to the next.</p>
<p>The machine is a month old and rock solid. The Z-axis is the slowest moving axis, controlled by the limit switch only, hence my suspecting that is the cause.</p>
<p>I purchased a couple of spare Ender 3's and will update various parts in turn to see what the cause is. The metal trigger on my Z-limit switch seems a little floppy sideways, but I am also starting to suspect the bed springs have lost their springiness.</p>
<p>I have the removal bed version and also a borosilicate glass bed. The glass is perfectly flat and the standard removable is dipped ever so slightly in the middle, but the difference is huge when it goes wrong. As you can see from the photo the trench it digs is quite uniform depth. That's why I keep coming back to the Z-limit switch. I have a spare switch now so will try that next.</p>

CC BY-SA 4.0
2018-11-10T13:27:03.270Z
I doubt it's the z-limit switch. I'd think two things: you aren't leveling your bed correctly; you've got some unaccounted for slop in your setup which allows the bed to come out of calibration *after* you've done your calibration.
Pᴀᴜʟsᴛᴇʀ2
CC BY-SA 4.0
2018-11-10T13:36:25.120Z
Did the physical switch move? Can you check if the bed is flat? Distortion could be an issue. Did you test the physical reliability?
Trish
CC BY-SA 4.0
2018-11-10T20:38:31.550Z
I do a 9 point check and get almost the same tension on a sheet of paper throughout. I was lucky to get a very flat bed (aside from the gouges now present of course!)
iCollect.it Ltd
CC BY-SA 4.0
2018-11-10T20:39:49.343Z
@Trish: I will check the bolts on the z-limit, but that would mean it has moved both up and down and up again. Thanks
iCollect.it Ltd
CC BY-SA 4.0
2018-11-13T11:10:16.803Z
I had similar issues on my XY-100 once - the Z-axis limit switch was indeed not tightened correctly, and would tilt a bit.
You may want to try reducing the Z-axis homing speed to prevent it from exerting too much force, or tightening the switch more.
towe
CC BY-SA 4.0
2018-11-21T17:21:52.810Z
Check this black plate sticker that is attached to bed. Take it off and look at bottom side. Mine one swelled up in some places. Replaced with piece of mirror.
filimonic
CC BY-SA 4.0
2019-05-29T05:59:21.170Z
It happened to me too, the z limit changed from one print when it was working well to the other where it destroyed completely the magnetic bed...
I didn't change any parameter between those two prints so I don't understand what happened!
Lembeu
CC BY-SA 4.0
2020-01-02T21:49:54.830Z
bought a used ender 3 2 days ago, same issue. I just tried levelling it 5 times nad every times it went very flat on the Z-stop or raised up again by 2-3 millimeters, randomly different, regardless of where the bar was at prior to levelling. it's either the connections in the z-motor/rod or the z-stop which is supposed ot be failsafe. ill check the motor connection.
bandybabboon
CC BY-SA 4.0
2021-10-14T21:07:18.350Z
Would higher humidity allow the circuit to close earlier? Anybody know the voltage going through that? 5v? It shouldn't jump until completely closed, right? Does it make a difference if the sd card is in the machine when you turn it on vs. inserting it later?
user2941410
CC BY-SA 4.0
2021-10-15T05:41:49.757Z
The second paragraph and [this comment](https://3dprinting.stackexchange.com/questions/7388/ender-3-z-limit-now-unreliable-possible-causes-and-solutions/17823#comment11772_7388) contradict themselves. Regardless, did you manage to fix the issue?
Greenonline
CC BY-SA 4.0
2022-11-01T11:04:58.660Z
@Greenonline Not contradictory as I was referring to the paper measurements varying on the same points after running a bad print. It did turn out to be a faulty z-stop. The switch had way too much movement in the metal strip. Replaced that and all was well again.
iCollect.it Ltd
CC BY-SA 4.0
2022-11-01T19:49:49.823Z
@GoneCoding - I'm glad that you found the issue and fixed it. As this is a quite a popular question, it would be great to have a verified solution. Would you like to post your comment as an answer and accept it (by clicking on the tick icon next to the answer, once you've posted it)? Thanks in advance.
Greenonline
<z-axis><bed-leveling><creality-ender-3>
Ender 3 Z-limit now unreliable - possible causes and solutions?
iCollect.it Ltd
# Ender 3 Z-limit now unreliable - possible causes and solutions?

(Asked by: username_0 on 2018-11-10)

I had a couple of recent nozzle/bed crashes, so I now frequently do a manual bed levelling. I do these while the bed is heated to allow for expansion.

Today I found, after levelling, a subsequent print could vary from having too much clearance (paper moves very freely) to less than no clearance (which left deep grooves in the bed as per the photo).

[![Photo of bed](https://i.sstatic.net/8sAZk.jpg "Photo of bed")](https://i.sstatic.net/8sAZk.jpg "Photo of bed")

What are the possible causes? Is it just a dodgy Z-limit switch or something else? What solutions are available and at what cost? Obviously an ABL seems essential now, but requires a lot of hardware and setup.

It has just happened again so here are some more details.

Printing PLA this time:

* Preheated bed.
* Levelled bed all over and got a very good raft.
* Print failed later so the print was aborted.
* Restarted the same print job.
* Nozzle gouged out a uniform depth trench around print perimeter.

The uniform depth of the gouge indicates a problem related to Z-axis only as the bed remains flat and level, but the height is off. That is to say, the bed is flat and level before and after this occurs.

Please note: I have done over 100 successful prints, prior to this issue, so I do have some knowledge about levelling the bed. I am interested in what could cause such a large variation. Initially I thought it was temperature as I switched to ABS at the time, but it now varies from one print to the next.

The machine is a month old and rock solid. The Z-axis is the slowest moving axis, controlled by the limit switch only, hence my suspecting that is the cause.

I purchased a couple of spare Ender 3's and will update various parts in turn to see what the cause is. The metal trigger on my Z-limit switch seems a little floppy sideways, but I am also starting to suspect the bed springs have lost their springiness.

I have the removal bed version and also a borosilicate glass bed. The glass is perfectly flat and the standard removable is dipped ever so slightly in the middle, but the difference is huge when it goes wrong. As you can see from the photo the trench it digs is quite uniform depth. That's why I keep coming back to the Z-limit switch. I have a spare switch now so will try that next.

**Tags:** z-axis, bed-leveling, creality-ender-3

> **Comments:**
> **username_1**: I doubt it's the z-limit switch. I'd think two things: you aren't leveling your bed correctly; you've got some unaccounted for slop in your setup which allows the bed to come out of calibration *after* you've done your calibration.  
> **username_2**: Did the physical switch move? Can you check if the bed is flat? Distortion could be an issue. Did you test the physical reliability?  
> **username_0**: I do a 9 point check and get almost the same tension on a sheet of paper throughout. I was lucky to get a very flat bed (aside from the gouges now present of course!)  
> **username_0**: @username_2: I will check the bolts on the z-limit, but that would mean it has moved both up and down and up again. Thanks  
> **username_3**: I had similar issues on my XY-100 once - the Z-axis limit switch was indeed not tightened correctly, and would tilt a bit. You may want to try reducing the Z-axis homing speed to prevent it from exerting too much force, or tightening the switch more.  
> **username_4**: Check this black plate sticker that is attached to bed. Take it off and look at bottom side. Mine one swelled up in some places. Replaced with piece of mirror.  
> **username_5**: It happened to me too, the z limit changed from one print when it was working well to the other where it destroyed completely the magnetic bed... I didn't change any parameter between those two prints so I don't understand what happened!  
> **username_6**: bought a used ender 3 2 days ago, same issue. I just tried levelling it 5 times nad every times it went very flat on the Z-stop or raised up again by 2-3 millimeters, randomly different, regardless of where the bar was at prior to levelling. it's either the connections in the z-motor/rod or the z-stop which is supposed ot be failsafe. ill check the motor connection.  
> **username_7**: Would higher humidity allow the circuit to close earlier? Anybody know the voltage going through that? 5v? It shouldn't jump until completely closed, right? Does it make a difference if the sd card is in the machine when you turn it on vs. inserting it later?  
> **username_8**: The second paragraph and [this comment](https://3dprinting.stackexchange.com/questions/7388/ender-3-z-limit-now-unreliable-possible-causes-and-solutions/17823#comment11772_7388) contradict themselves. Regardless, did you manage to fix the issue?  
> **username_0**: @username_8 Not contradictory as I was referring to the paper measurements varying on the same points after running a bad print. It did turn out to be a faulty z-stop. The switch had way too much movement in the metal strip. Replaced that and all was well again.  
> **username_8**: @GoneCoding - I'm glad that you found the issue and fixed it. As this is a quite a popular question, it would be great to have a verified solution. Would you like to post your comment as an answer and accept it (by clicking on the tick icon next to the answer, once you've posted it)? Thanks in advance.  

---

## 6 answers

### Answer by username_9 on 2020-03-19. Score: 4

This was killing me on mine. My problem wasn't the z-axis, it was the x-axis arm. On the right side, opposite the extruder gear, it had a lot of give (wobble). I could level my bed four times before starting a print and would still have problems, especially with the nozzle making deep grooves in the magnetic bed. The way it messed up was inconsistent as well, making it hard to troubleshoot.

I changed out the bedsprings, got a glass bed instead, changed out the extruder gear and Bowden tube; I was ready to give up.

How to fix the wobble, if that's your problem, if there's a lot of give / vertical movement on the right side of the arm:

You have to take the whole arm off. First, take the top bar off, remove the four screws. Second, disable steppers so you can take the x-axis off completely. I removed the cables once I had taken it off. Third, there's a plate with two holes to get to two screws - make sure these are tight! This is where the wobble was coming from. Four, reassemble and double-check. For me, the give was reduced drastically.

A video tutorial for help. There are English subtitles.

> **Comments:**
> **username_10**: Are you the original poster on a second account?  
> **username_9**: No, I just thought my issue was also my z-axis and came across this several times in trying to figure things out and figured I'd post my solution in case it helps anyone else.  

---

### Answer by username_11 on 2021-07-31. Score: 1

I had a similar issue, the first layer always ended up at slightly different heights, making the first layer too low or too high.

At one point, I was raising the Z height 100 mm in G-code, and while watching the gantry rise I noticed extremely brief pauses, then when I lowered to zero the nozzle crashed the bed. I realized that the Z-axis threaded rod might be slipping. I Sharpied some marks on the coupler, did the 100 mm rise again, and took a high-speed video of the coupler with my phone. Sure enough, I saw moments where the coupler was turning but not the rod. Even though the coupler felt quite tight. So effectively the machine always thought the nozzle was higher than it actually was.

I tightened about as tight as I could without stripping. It got better, but I still had first layer inconsistency that suggested slip. Replacing the coupler with a version with 2 pairs of grub screws allowed me to get it sufficiently tight. I'm not sure how the coupler got loose in the first place, probably a crash.

Also, I found that the screws that hold the heat block to the heat break had loosened a bit. Surely this could cause issues and again probably resulting from a crash.

Finally, I think my Z gantry wheels may have been too tight. I think that would have relatively little effect on large vertical moves, but could cause some slight inconsistency in small moves or with vibrations; small but large enough to be the fractions of a millimeter that affect first layer quality.

Anyhow, one moral of this story I guess is after a crash, you can expect to spend a lot of time troubleshooting and fixing. try not to crash.

> **Comments:**
> **username_12**: Welcome to 3D Printing SE and thank you for your contribution. When you get a chance, please take the [tour] to understand how the site works and how it is different than others.  

---

### Answer by username_13 on 2019-05-25. Score: 1

I've just bought an Ender 3 Pro and as a guess I would look at the Z axis stepper motor to see if it is not holding position once it stops... the stepper motor has power on it all the time it is stopped to hold it in position.

I would check the plug that feeds power to see if it is damaged or not making good contact.


---

### Answer by username_14 on 2019-05-30. Score: 1

Similar issue happened to coworker's Maker Ultimate. I'm gonna go out on a limb and assume that your Z-stop is a little mechanical switch, and there's an M3 screw going through part of the Z carriage that pushes said switch.
Check to see how much force it takes to rotate said screw. There's a lot of vibration happening in a 3d printer, and it takes surprisingly little vibration to make a threaded part do weird things, including making it back out against gravity if conditions are right. Redo your Z gap paper test, get everything lined up, and then slap a dab of blue loctite on the screw to make sure it doesn't move during your next print. See if that fixes your problem.


---

### Answer by username_15 on 2022-10-31. Score: 0

I have just had exactly the same symptoms with different clearances b/w the bed and the nozzle after homing. In order to reproduce that, I simply had to do subsequent homings and measure the clearance. The variance was around 0.15 mm.

I was not moving my printer. No wobbling was found. If the printing cycle is started successfully, then I have no issues with the printing quality. No missed steps on Z or any other axis.

The solution for me was in software. I have followed the comment here saying "You may want to try reducing the Z-axis homing speed to prevent it from exerting too much force, or tightening the switch more."

SOLUTION: I have compiled Marlin firmware myself with the only changes made to the homing speeds. Namely

in `Configuration_adv.h`

```
#define HOMING_BUMP_DIVISOR { 2, 2, 10 }       // Re-Bump Speed Divisor (Divides the Homing Feedrate)

```

and in `Configuration.h`

```
#define HOMING_FEEDRATE_MM_M { (50*60), (50*60), (3*60) } 

```

Now during homing, the Z-axis movement is so gentle that the endstop triggers reliably at the same position. It costs me only extra 10 seconds but saves a lot of time in restarting the print.

P.S.  
It looks like my problem is a combination of things: speed of homing and some issues with the endstop. I am ordering endstops anyway but meanwhile... **anyone who can compile Marlin may consider this approach as it requires no tinkering with the HW part of the printer and is easy to roll back or configure.**


---

### Answer by username_16 on 2021-10-12. Score: 0

I'm having the same issue with Ender 3 V2. Everything tightened, Z-axis coupler not "slipping"... I noticed, that the error is made by the Z-axis end switch itself. I am not sure how that is possible but try homing several times and you'll see that the loud click when the switch is triggered occurs in a span of +/- 3 mm, which then results in a collision of the hot end and the bed, or the hot end being too high.

From what I noticed, the problem got worse after installing OctoPi. Strangely enough, I get very different results when homing "manually" (from the machine display menu), and when homing is done at the beginning of printing.

I believe that the problem has three solutions:

1. At least 3 skirt loops and adjust the bed on the fly. This is a very unfortunate solution, but that's what I have now.
2. I suggest some sort of speed regulation when approaching the switch (Z -> 0), thus making the switch always trigger at the same height. I'm a programmer, but not familiar with G-code, I'll make this solution publicly available when I get to it.
3. Change the switch. The tin "paw" that can bend is unfortunate when you need 0,01 [mm] precision. The video is unrelated to the topic, but run 10-15 seconds and you'll see what I mean: [Z-axis switch replacement](https://youtu.be/g0PK4oXbJT8?t=266)

> **Comments:**
> **username_16**: Hello again. For anyone interested: 1) it was the loosened Z-axis coupler. 2) I think that the described software feature can be achieved with existing equipment using PID regulation.  

---

