Physical change from z-probe to z-switch
-
I just changed my Ender 6 running Duet 3 mini 5+ wi-fi from a Z-Probe to a Z-Switch. I just feel the probes are not consistent enough for good 1st layers.
After completing the physical changes including wiring, I re-ran the config.json via edit tool to change the probe settings. Then I adjusted the config.g with a few custom settings for heaters and a filament sensor.
The printer homes correctly on all axis including Z, but when I print, the bed moves to the max height of 400mm and starts the purge then print.
Hoping someone else has experienced this and has some suggestions.
config.g file
config-2.gG-Code I'm attempting to print
Bed Wheel Extension v1 (N)0.6 (L)0.36 (IF)15% (S)80 (T)250°C (F)ASA (T)15m .gcode -
-
Hello @Phaedrux.
Thanks for the response.
I believe that is correct.
The Ender 6 moves the bed down as it prints.When I had the probe, the Z-axis was backwards.
; Drives M569 P0.0 S0 ; physical drive 0.0 (X) goes backwards M569 P0.1 S1 ; physical drive 0.1 (Y) goes forwards M569 P0.2 S0 ; physical drive 0.2 (Z) goes backwards M569 P0.3 S1 ; physical drive 0.3 (E) goes forwards M569 P0.4 S1 ; physical drive 0.4 goes forwards
I used a config_probe.g file for the actual probe settings.
Sorry about the extra code. When I make changes, I leave the original code there incase I need to revert back. I haven't cleaned this up.; config_probe.g file - for Duet 3 Mini 5+ (firmware version 3.3) ; called to configure the Z probe ; ***************************************************************************** ; the advantage of having the probe configuration commands in a dedicated ; file like this means the file can be invoked at anytime to insure ; the probe is configured using the most up-to-date values ; ; if probe configuration commands are in config.g you have to reset ; or re-boot the printer to get any changes to take affect ; ***************************************************************************** ;M558 P8 I1 C"^!io3.in" H6 F900:350 T12000 ; create probe type(P) on pin io3.in(C) dive height(H) probing speeds(F) travel speed(T) ;G31 P25 X-32 Y0 Z0.90 A10 S0.03 ; set probe trigger value(P), offsets(XY), trigger height(Z), attempts(A), tolerance(S) ; + raises Z, - lowers Z M558 P8 I1 C"^!io3.in" H1 F900:200 T12000 A3 S0.01 ; create probe type(P) on pin io3.in(C) dive height(H) probing speeds(F) travel speed(T) max # of time to probe each point(A) tolerance when probing multiple times(S) ;G31 P1000 X-32 Y0 Z-0.16 ; set probe trigger value(P), offsets(XY), trigger height(Z), + raises Z, - lowers Z G31 P1000 X-32 Y0 Z0.08 ; set probe trigger value(P), offsets(XY), trigger height(Z), + raises Z, - lowers Z
-
-
@davidewen said in Physical change from z-probe to z-switch:
The Ender 6 moves the bed down as it prints.
Where is your end stop located? at the top or at the bottom?
Z+ should move the bed down away from the nozzle.
Z- should move the bed up towards the nozzle.It sounds like maybe you've got that reversed?
-
@Phaedrux
Z-Stop is located at the top.
I will reverse the motor leads and modify config.g to make this change and check it tomorrow. -
You don’t need to change the motor leads at all. The rotation direction can be changed in the config.
But the m574 command needs to change from z2 to z1
And the homing moves will need to be negative.
If the motor direction is wrong after that you can change it in the m569 command.
-
@Phaedrux
Changes are done and homing works correctly.
Movements work correctly.From home position:
X & Y moves to minus and Z moves to positive
Axis are X&Y 0-250, Z 0-400However, when I print, the Z-axis doesn't advance to the next level. It just stays at the 1st layer and continues to squish the print until failure.
Here's a couple items I've attempted to print where this happens.
G-Code clearly shows layer changes.config.g
homeall.g
homex.g
homey.g
homez.g
Shape-Box (N)0.6 (L)0.36 (IF)15% (S)80 (T)250°C (F)ASA (T)13m .gcode
Bed Wheel Extension v2 (N)0.6 (L)0.36 (IF)15% (S)80 (T)250°C (F)ASA (T)17m .gcode -
G10 P0 X5 Y5 Z5 ; set tool 0 axis offsets
You only have a single tool, but it has an offset? Why? Normally if you have a single tool there would be no offset and the nozzle tip would be 0 0 0 and all references would be in relation to that.
@davidewen said in Physical change from z-probe to z-switch:
Z moves to positive
What do you mean by this?
Just to confirm we're on the same page
The z endstop is located at the top of bed movement? As in, where the bed and nozzle touch, the endstop triggers, and the Z position is 0.
Z+ movement should move the nozzle and bed farther apart.
Z- movement should move the nozzle and bed closer together. -
Not sure why there is an offset. I've corrected that.
Regarding Z-axis.
Yes,
Z+ moves the bed away from the nozzle and the End Stop Switch.
Z- moves the bed toward the nozzle and the End Stop Switch. -
The gcode file looks correct for movement and your homing files and config look correct now for using a Z min endstop.
Before printing are you able to home all and then jog the Z axis up and down?
-
@Phaedrux said in Physical change from z-probe to z-switch:
The gcode file looks correct for movement and your homing files and config look correct now for using a Z min endstop.
Before printing are you able to home all and then jog the Z axis up and down?
Yes, all homing sequences work properly and I can move all Axis correctly after homing any/all the sequences.
Tested:
homeall.g
homex.g
homey.g
homez.g -
Alright, now try a print with the offset removed. Unload the filament if you want to try it without a potential mess.
-
@Phaedrux said in Physical change from z-probe to z-switch:
Alright, now try a print with the offset removed. Unload the filament if you want to try it without a potential mess.
Test printed Shape-Box (N)0.6 (L)0.36 (IF)15% (S)80 (T)250°C (F)ASA (T)13m .gcode a few times.
Found out that layer changes start at layer 10.
Z-Axis will not move prior to layer 10 even with Babystepping. -
What height does layer 10 correspond with?
I also notice that your slicer start gcode is setting speed variables.
M201 X5000 Y5000 Z2500 E5000 ; sets maximum accelerations, mm/sec^2 M203 X120000 Y120000 Z60000 E9600 ; sets maximum feedrates, mm / min M204 P2500 T1500 ; sets acceleration (P, T), mm/sec^2 M566 X960.00 Y960.00 Z1920.00 E600.00 ; sets the jerk limits, mm/min
Should probably remove that. It's setting your Z speeds insanely fast and that may be causing lost steps.
-
@Phaedrux said in Physical change from z-probe to z-switch:
What height does layer 10 correspond with?
As far as I know, nothing.
I just noticed in the Web Control that at layer 10 the Z-Axis starts to move. -
@Phaedrux said in Physical change from z-probe to z-switch:
What height does layer 10 correspond with?
I also notice that your slicer start gcode is setting speed variables.
M201 X5000 Y5000 Z2500 E5000 ; sets maximum accelerations, mm/sec^2 M203 X120000 Y120000 Z60000 E9600 ; sets maximum feedrates, mm / min M204 P2500 T1500 ; sets acceleration (P, T), mm/sec^2 M566 X960.00 Y960.00 Z1920.00 E600.00 ; sets the jerk limits, mm/min
Should probably remove that. It's setting your Z speeds insanely fast and that may be causing lost steps.
Ok. Removed those in the slicer.
Re-sliced and sent to printer.
Still no Z movement until layer 10. -
Update.
After a few more attempts, slicing other files etc.
I have discovered that the Z-Axis will not move even with Baby Stepping until somewhere around 1.3 - 1.5 mm.
It's difficult to tell exactly where as I'm attempting to hit the Baby Step button and watch the Z-Axis at the same time while it's printing.I'm guessing there must be a setting somewhere that is causing this behavior.
-
I think I figured it out.
I believe it had something to do with the RRF Config and the tool offsets that you mentioned earlier.I re-ran the RRF config tool, corrected the tool offset and now it seems to be working.
I will confirm tomorrow morning when I come back to the office.
Cheers,
David -
I'm guessing there must be a setting somewhere that is causing this behavior.
What about this in your config:
M208 X0:262.10 Y0:260.20 Z-1:400 ; set axis min/max
Where is Z-1? Below your bed's surface?
Then, your Z offset:
G10 P0 X5 Y5 Z5 ; set tool 0 axis offsets
@Phaedrux already pointed you at this - did you remove
Z5
from your config?Then, this is in your homez.g as well as in homeall.g:
G92 Z-0.4 ; set Z position to axis minimum (you may want to adjust this)
Why -0.4?
In my understanding, your Z axis is limited to a minimum coordinate of around 1-2 mm (notably not above the bed, but in its coordinate system), so that an absolute move to Z0 is clipped to that.
I have discovered that the Z-Axis will not move even with Baby Stepping until somewhere around 1.3 - 1.5 mm.
Yeah, that's your "10th layer" where Z begins to move. To verify, you can try these steps:
- home your axes
- execute the following commands from the console:
G90
; set XYZ to absolute coordinatesG1 Z0
; move Z to 0G1 Z0.6
; Z should move up 0.6 mm - but I think it doesn't …
You can increment the Z value until you detect a movement - then, you have an idea where to look at: There must be a limitation on the lowest coordinate Z can reach, either imposed by
- an "unrelated" relative move (perhaps
M83
?) or - some offset you somewhere define for Z or
- a re-definition of the Z-origin
I'm not sure I covered all possibilities, but you should look at the issues I listed above. In addition, I miss
M564
(or did I overlook that?): To home your axes (to endstops or by Z-probe), the limits imposed byM208
in your config.g must be temporarily removed.For each of the GCodes which might affect Z, please refer to the GCode dictionary and spell every single argument, one by one, so that you get a detailed knowledge of what is happening.