Ender 5 Frame - Z axis problems
-
@oscar z=0 should have bed just touching the nozzle (I.e. bed at the top on an ender 5), whilst z = 300mm should have the bed 300mm away from the nozzle (I.e. bed at the bottom on an ender 5). From your post it sounds like you've configured your z axis the wrong way round (and your sliced gcode file is the right way round).
-
@engikeneer Thanks for the reply, I thought as much but can't figure how to correct it? Do I reverse motor?
-
I allowed it to run on and can now say that either the slicer or the firmware thinks that the Z axis 0 is in the middle of the Z carriage. The Z axis lowered to the middle and the print began? Also the Z axis homes as it should at the top.
-
@oscar You'll need to change a few things to fix it:
- Z motor directions - M569 S parameter
- Z endstops - M574 Z parameter as the high-end/low-end are now reversed. This assumes you're uses a Z endstop and not a Z-probe. If you're using a Z-probe (BLTouch), then this should be fine
- Your homing file (homeZ & homeall) as you're now homing Z in the opposite direction.
Might be easier if you generate a fresh set of homing files using the configurator tool? Or just post your current homing files here (copy the text in and use the code snippet tool for them (the icon that looks like </>)
-
@engikeneer Hi,
changed motor direction and back again as this is correct. Here is a copy of my home and endstop code. Homing does appear to be fine? And from 14 onwards the start of the print code.
code_text ```; Axis Limits M208 X0 Y0 Z0 S1 ; set axis minima M208 X234 Y220 Z300 S0 ; set axis maxima ; Endstops M574 X2 S1 P"xstop" ; configure active-high endstop for high end on X via pin xstop M574 Y2 S1 P"ystop" ; configure active-high endstop for high end on Y via pin ystop M574 Z2 S1 P"zstop" ; configure active-high endstop for high end on Z via pin zstop ;FLAVOR:RepRap ;TIME:641 ;Filament used: 0.312352m ;Layer height: 0.1 ;MINX:104.2 ;MINY:97.2 ;MINZ:0.3 ;MAXX:129.8 ;MAXY:122.8 ;MAXZ:10 ;Generated with Cura_SteamEngine 4.9.0 T0 M190 S60 M104 S200 M109 S200 M82 ;absolute extrusion mode G28 ;Home G1 Z10.0 F6000 ;Move the platform down 15mm ;Prime the extruder G92 E0 G1 F200 E3 G92 E0 M83 ;relative extrusion mode G1 F1500 E-6.5 ;LAYER_COUNT:98 ;LAYER:0 M107 G0 F3600 X106.08 Y99.922 Z300
-
@oscar I'd need to see your homeall.g file to what it actually does during homing.
Where is your z endstop physically? At the top (z=0) or the bottom (z=300). You currently have it configured at the top
-
@oscar also just noticed the G0 z300 line at the end of your print code. That is not normal as the first layer should always by at the low end (e.g. z=0.2mm, with the bed at the top)
-
@engikeneer Thanks for the help.
Here is my Homeall.g. My Z endstop is at the top. Ender 5 homing position is back right top. Should the origin be changed to reflect this? I searched the web but there isn't much on an ender 5 with RepRap.
; homeall.g ; called to home all axes ; ; generated by RepRapFirmware Configuration Tool v3.2.3 on Mon Apr 19 2021 11:35:36 GMT+0100 (British Summer Time) G91 ; relative positioning G1 H2 Z5 F7200 ; lift Z relative to current position G1 H1 X225 Y225 F1800 ; move quickly to X and Y axis endstops and stop there (first pass) G1 H2 X-5 Y-5 F7200 ; go back a few mm G1 H1 X225 Y225 F360 ; move slowly to X and Y axis endstops once more (second pass) G1 H1 Z305 F360 ; move Z up stopping at the endstop G90 ; absolute positioning G92 Z300 ; set Z position to axis maximum (you may want to adjust this) ; Uncomment the following lines to lift Z after probing ;G91 ; relative positioning ;G1 Z5 F120 ; lift Z relative to current position ;G90 ; absolute positioning
-
@oscar So, your homeall.g file moves the X & Y axes to the back right of the printer (where your endstops are) - all good
It then commands the Z axis to move to Z=305mm. If your z-direction was set correctly, this would move the bed to be 305mm away from the nozzle (i.e. at the bottom). If your z-endstop really is at the top of the frame (i.e. when the bed is close to the nozzle), then you need to:- Set your z-motor direction so the +z moves move the bed downwards away from the nozzle. Think you've done this?
- Set your z-endstop to be a low-end endstop (M574 Z1)
- Change line 10 in your homing file to:
G1 H1 Z-305 F360 ; move the bed up to the zmin endstop
-
remove the G92 Z300 line from the end of your homing file, or alter it to whatever offset you need to get Z=0 when the nozzle is just touching the bed (e.g. maybe G92 Z-0.5, or similar). You'll have to do the 'paper test' to work out the value to use
-
remove the Z=300mm moves from your start code in your slicer settings
You'll also want to change your homez.g file to match the homeall file.
and you should be good to go
Let us know if there's anything you're not sure on
-
@engikeneer Thankyou for your time the Z axis is now solved.
Thanks for explaining it, I can see where I went wrong. Now I can start to fine tune.