<p>It sounds like there’s two things that could be going wrong here:</p>
<ol>
<li><p>Your starting G-code has some code in it that’s making it think that you want to treat a few layers up as <code>Z0</code>. If I were you I would minimize the start G-code until you get this sorted out. A quick fix would Be to add the following code to the end of your starting G-code:</p>
<pre><code>G28: Homes all axis
G28 Z0: Homes the Z-axis
G29: Auto-bed-leveling (optional if you’ve already attached a leveling device)
G1 Z3 F5000: Raises the Z position up 3 mm relative to where it was (G1 tells the machine to move, Z3 tells it how much to move and along which axis, F5000 is the speed of movement)
G92 Z0.3: Treats the current position as Z = 0.3 (applying an offset of -0.3 and creating a sort of false home for the Z-axis). 
</code></pre>
<p>Any commands made after this simple code will assume the print bed is lower than what it actually is (to account for any original gap between the nozzle and the print bed). If you want to have the nozzle raised, you’ll have to insert a negative value after the <code>G92</code> command.</p>
</li>
<li><p>You have a Z-offset set in your slicer software. This is a super easy fix if you find that you have one set, and it’s usually just because the slicer is using the preset for an Ender 3 with a glass bed. I would try setting it back to 0 if there is one already and try the G-code above.</p>
<p>Even if the starting G-code I provided doesn’t solve your problem you should still find the Z-Offset setting in your slicer software and set it down -0.1 mm at a time until your printer starts printing in the correct Z-Axis position.</p>
</li>
</ol>
<p>Here’s an All3DP article that helped a ton when I first got started: <a href="https://m.all3dp.com/2/ender-3-pro-z-offset/" rel="nofollow noreferrer">Ender 3 (Pro) Z Offset: How to Adjust It</a></p>

CC BY-SA 4.0
2021-11-12T16:04:34.553Z
Your second point is not supported by the G-code presented by the OP, it starts printing at 0.3 mm height, so there is no slicer offset, then the value would have read e.g. 'G1 X0.1 Y20 Z3.3 F5000.0 ; Move to start position ' not Z0.3 (you see no redefinition of the Z height).
0scar
CC BY-SA 4.0
2021-11-11T10:57:44.953Z
2021-11-11T11:22:52.820Z
2021-11-11T11:22:52.820Z
BackTrack
<p>The Z stop can be loosened and moved up but it seems weird that it would need to be moved and I don't think that would fix your issue. The Z height should be the same for the auto home and printing. I auto home then disable steppers and slowly move to all 4 corners. I have caught myself resting my arm on the X axis and moving it down. If that happens I manually move the Z until it just barely presses the Z stop in when I hear the button click. I have heard some say that they got a warped bed. I wonder if that's the issue. A glass plate would be a good way to be sure or maybe using a straight edge to check.You could also double check the tightness on the wheels is just right. Tomb of 3D Printed Horrors has a really good setup video called "Creality Ender 3 assembly and pro build tips" that has a few other tips that really helped me get set up well.</p>

CC BY-SA 4.0
2020-03-19T01:48:46.303Z
I don't think its a warped bed because once I get it going I dont have any issues with the bed. The Z-offset is currently set at +.2. I can't get it to move to negative numbers. Is this normal?
Daknife
CC BY-SA 4.0
2020-03-19T06:38:37.173Z
@Daknife What do you mean with a 0.2 mm Z-offset, maybe you should explain this in the question as if you use the endstop for levelling, an offset other than a piece of paper during levelling would not be necessary. It's unimaginable that the Z axis homes lower than the bed requiring you to insert a positive Z-offset.
0scar
CC BY-SA 4.0
2020-03-19T15:20:31.623Z
I guess I used the wrong term. I was refering to the value under Prepare>Move Axis>Move Z
Daknife
CC BY-SA 4.0
2020-03-19T00:39:41.833Z
2020-03-19T00:39:41.833Z
Jason_55904
<p>From the added G-code instructions you can see that the printer is instructed to go down to a height of 0.3 mm (<code>G1 X0.1 Y20 Z0.3 F5000.0 ; Move to start position</code>). If the printer nozzle is not at 0.3 mm height, there must be a Z-offset present in the firmware or incorrect placement of the endstop.</p>

CC BY-SA 4.0
2020-04-18T05:54:58.003Z
2021-01-13T08:25:14.547Z
2021-01-13T08:25:14.547Z
0scar
<p>I have an Ender 3 and I have a problem with auto home. I use auto home and then level the bed with the wheels beneath the bed. I then start a print and the first layer is well above the bed. Perhaps about a millimeter. If I stop the print at this point and level the bed so that the first layer prints the normal paper width above the bed, everything works fine.</p>

<p>The stops for the 3 axes seem to be in the right places and there is nothing noticeable obstructing them. When I use auto home it does touch the stops at all 3 axes. My belts seem to be tight and there is no movement of the bed if I try to jiggle it with my hand.</p>

<p>Is there a way to adjust the Z axis so that the auto home elevation and the elevation of first layer of the print will be the same? </p>

<p>This is an example of the first lines of G-code:</p>

<pre><code>;FLAVOR:Marlin 
;TIME:4724 
;Filament used: 1.70716m 
;Layer height: 0.16 
;MINX:96.551 
;MINY:96.545 
;MINZ:0.2 
;MAXX:138.448 
;MAXY:138.455 
;MAXZ:100.4 
;Generated with Cura_SteamEngine 4.5.0 
M140 S50 
M105 
M190 S50 
M104 S200 
M105 
M109 S200 
M82 ;absolute extrusion mode 
; Ender 3 Custom Start G-code 
G92 E0 ; Reset Extruder 
G28 ; Home all axes 
G1 Z2.0 F3000 ; Move Z Axis up little to prevent scratching of Heat Bed 
G1 X0.1 Y20 Z0.3 F5000.0 ; Move to start position 
G1 X0.1 Y200.0 Z0.3 F1500.0 E15 ; Draw the first line 
G1 X0.4 Y200.0 Z0.3 F5000.0 ; Move to side a little
</code></pre>

CC BY-SA 4.0
2020-03-18T18:36:21.680Z
Does this answer your question? [Recalibrating Home-position](https://3dprinting.stackexchange.com/questions/6399/recalibrating-home-position)
Trish
CC BY-SA 4.0
2020-03-18T18:38:34.097Z
Welcome to the Stack Exchange. You need to define an offset of the home from the endstops. Here are [one](https://3dprinting.stackexchange.com/questions/6399/recalibrating-home-position) [two](https://3dprinting.stackexchange.com/questions/8025/ender-3-homing-problem) [three](https://3dprinting.stackexchange.com/questions/6375/how-to-center-my-prints-on-the-build-platform-re-calibrate-homing-offset) questions about the same thing!
Trish
CC BY-SA 4.0
2020-03-18T22:03:56.007Z
To me, this sounds more like an incorrect start G-code script. Maybe you can post the G-code? Also, please explain if this is a vanilla firmware, or have you flashed a new firmware version onto the board?
0scar
CC BY-SA 4.0
2020-03-19T00:38:02.670Z
I was having the problem with the original firmware so I flashed a new version (Ender 3 Firmware_1.1.6) and get the same problem.  I don't see any way to attach a file. I doubt that it is an error in the G-code because I've updated Cura and it still does it. I'm using Cure 4.5.0. I've also had this issue with Thingiverse  files
Daknife
CC BY-SA 4.0
2020-03-19T06:43:09.357Z
Marlin 1.1.6 is not a new version ;-). The latest is 1.1.9 (of the 1.x branch). You can't attach a file but you can post a link to the file when you upload it to sites as PasteBin. You could also post the first 30 or so lines from a G-code file. We just want to help you out, but without too less information, that is not going to work! Please add links to the `Configuration.h` and a G-code file of a print that fails (or did you upload a hex file of version 1.1.6)?
0scar
CC BY-SA 4.0
2020-03-19T10:01:48.493Z
I kind of have an idea why it might be: there are variants with a glass bed out there, you might have grabbed one of those!
Trish
CC BY-SA 4.0
2021-10-12T07:25:33.570Z
I'm having the same issue. Please have a look at this [answer](https://3dprinting.stackexchange.com/questions/7388/ender-3-z-limit-now-unreliable-possible-causes-and-solutions/18230#18230) to [Ender 3 Z-limit now unreliable - possible causes and solutions?](https://3dprinting.stackexchange.com/q/7388/4762)
Klemikaze
<creality-ender-3><calibration><z-axis><homing>
Ender 3 home location
Daknife
# Ender 3 home location

(Asked by: username_0 on 2020-03-18)

I have an Ender 3 and I have a problem with auto home. I use auto home and then level the bed with the wheels beneath the bed. I then start a print and the first layer is well above the bed. Perhaps about a millimeter. If I stop the print at this point and level the bed so that the first layer prints the normal paper width above the bed, everything works fine.
The stops for the 3 axes seem to be in the right places and there is nothing noticeable obstructing them. When I use auto home it does touch the stops at all 3 axes. My belts seem to be tight and there is no movement of the bed if I try to jiggle it with my hand.
Is there a way to adjust the Z axis so that the auto home elevation and the elevation of first layer of the print will be the same? 
This is an example of the first lines of G-code:
;FLAVOR:Marlin 
;TIME:4724 
;Filament used: 1.70716m 
;Layer height: 0.16 
;MINX:96.551 
;MINY:96.545 
;MINZ:0.2 
;MAXX:138.448 
;MAXY:138.455 
;MAXZ:100.4 
;Generated with Cura_SteamEngine 4.5.0 
M140 S50 
M105 
M190 S50 
M104 S200 
M105 
M109 S200 
M82 ;absolute extrusion mode 
; Ender 3 Custom Start G-code 
G92 E0 ; Reset Extruder 
G28 ; Home all axes 
G1 Z2.0 F3000 ; Move Z Axis up little to prevent scratching of Heat Bed 
G1 X0.1 Y20 Z0.3 F5000.0 ; Move to start position 
G1 X0.1 Y200.0 Z0.3 F1500.0 E15 ; Draw the first line 
G1 X0.4 Y200.0 Z0.3 F5000.0 ; Move to side a little

**Tags:** creality-ender-3, calibration, z-axis, homing
> **Comments:**
> **username_1**: Does this answer your question? [Recalibrating Home-position](https://3dprinting.stackexchange.com/questions/6399/recalibrating-home-position)  
> **username_1**: Welcome to the Stack Exchange. You need to define an offset of the home from the endstops. Here are [one](https://3dprinting.stackexchange.com/questions/6399/recalibrating-home-position) [two](https://3dprinting.stackexchange.com/questions/8025/ender-3-homing-problem) [three](https://3dprinting.stackexchange.com/questions/6375/how-to-center-my-prints-on-the-build-platform-re-calibrate-homing-offset) questions about the same thing!  
> **username_2**: To me, this sounds more like an incorrect start G-code script. Maybe you can post the G-code? Also, please explain if this is a vanilla firmware, or have you flashed a new firmware version onto the board?  
> **username_0**: I was having the problem with the original firmware so I flashed a new version (Ender 3 Firmware_1.1.6) and get the same problem.  I don't see any way to attach a file. I doubt that it is an error in the G-code because I've updated Cura and it still does it. I'm using Cure 4.5.0. I've also had this issue with Thingiverse  files  
> **username_2**: Marlin 1.1.6 is not a new version ;-). The latest is 1.1.9 (of the 1.x branch). You can't attach a file but you can post a link to the file when you upload it to sites as PasteBin. You could also post the first 30 or so lines from a G-code file. We just want to help you out, but without too less information, that is not going to work! Please add links to the `Configuration.h` and a G-code file of a print that fails (or did you upload a hex file of version 1.1.6)?  
> **username_1**: I kind of have an idea why it might be: there are variants with a glass bed out there, you might have grabbed one of those!  
> **username_3**: I'm having the same issue. Please have a look at this [answer](https://3dprinting.stackexchange.com/questions/7388/ender-3-z-limit-now-unreliable-possible-causes-and-solutions/18230#18230) to [Ender 3 Z-limit now unreliable - possible causes and solutions?](https://3dprinting.stackexchange.com/q/7388/4762)  

---

## 3 answers

### Answer by username_4 on 2021-11-11. Score: 2

It sounds like there’s two things that could be going wrong here:

Your starting G-code has some code in it that’s making it think that you want to treat a few layers up as Z0. If I were you I would minimize the start G-code until you get this sorted out. A quick fix would Be to add the following code to the end of your starting G-code:
G28: Homes all axis
G28 Z0: Homes the Z-axis
G29: Auto-bed-leveling (optional if you’ve already attached a leveling device)
G1 Z3 F5000: Raises the Z position up 3 mm relative to where it was (G1 tells the machine to move, Z3 tells it how much to move and along which axis, F5000 is the speed of movement)
G92 Z0.3: Treats the current position as Z = 0.3 (applying an offset of -0.3 and creating a sort of false home for the Z-axis). 

Any commands made after this simple code will assume the print bed is lower than what it actually is (to account for any original gap between the nozzle and the print bed). If you want to have the nozzle raised, you’ll have to insert a negative value after the G92 command.

You have a Z-offset set in your slicer software. This is a super easy fix if you find that you have one set, and it’s usually just because the slicer is using the preset for an Ender 3 with a glass bed. I would try setting it back to 0 if there is one already and try the G-code above.
Even if the starting G-code I provided doesn’t solve your problem you should still find the Z-Offset setting in your slicer software and set it down -0.1 mm at a time until your printer starts printing in the correct Z-Axis position.


Here’s an All3DP article that helped a ton when I first got started: Ender 3 (Pro) Z Offset: How to Adjust It

> **Comments:**
> **username_2**: Your second point is not supported by the G-code presented by the OP, it starts printing at 0.3 mm height, so there is no slicer offset, then the value would have read e.g. 'G1 X0.1 Y20 Z3.3 F5000.0 ; Move to start position ' not Z0.3 (you see no redefinition of the Z height).  

---

### Answer by username_5 on 2020-03-19. Score: 0

The Z stop can be loosened and moved up but it seems weird that it would need to be moved and I don't think that would fix your issue. The Z height should be the same for the auto home and printing. I auto home then disable steppers and slowly move to all 4 corners. I have caught myself resting my arm on the X axis and moving it down. If that happens I manually move the Z until it just barely presses the Z stop in when I hear the button click. I have heard some say that they got a warped bed. I wonder if that's the issue. A glass plate would be a good way to be sure or maybe using a straight edge to check.You could also double check the tightness on the wheels is just right. Tomb of 3D Printed Horrors has a really good setup video called "Creality Ender 3 assembly and pro build tips" that has a few other tips that really helped me get set up well.

> **Comments:**
> **username_0**: I don't think its a warped bed because once I get it going I dont have any issues with the bed. The Z-offset is currently set at +.2. I can't get it to move to negative numbers. Is this normal?  
> **username_2**: @Daknife What do you mean with a 0.2 mm Z-offset, maybe you should explain this in the question as if you use the endstop for levelling, an offset other than a piece of paper during levelling would not be necessary. It's unimaginable that the Z axis homes lower than the bed requiring you to insert a positive Z-offset.  
> **username_0**: I guess I used the wrong term. I was refering to the value under Prepare>Move Axis>Move Z  

---

### Answer by username_2 on 2020-04-18. Score: 0

From the added G-code instructions you can see that the printer is instructed to go down to a height of 0.3 mm (`G1 X0.1 Y20 Z0.3 F5000.0 ; Move to start position`). If the printer nozzle is not at 0.3 mm height, there must be a Z-offset present in the firmware or incorrect placement of the endstop.


---

