2nd print too high and z-offset is inconsistent,config problem?
-
Hi
my Machine:
Ender 5 + Pinda V2
Micro Swiss Direct Drive + All Metal Hotend
Board: Duet 2 WiFi
Firmware: RepRapFirmware for Duet 2 WiFi/Ethernet 3.3 (2021-06-15)
Duet WiFi Server Version: 1.26After i set the new Z-Offset the print come out pretty perfect ,first layer all perfect.
but if i start a second print after the first one it will print too high and i dont know why ?if i run G29 it will probe the bed very slow
i will my show you my config:
config.g
; Configuration file for Duet WiFi (firmware version 1.21) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v2 on Tue May 07 2019 23:06:50 GMT+0100 (British Summer Time) ; General preferences G90 ; Send absolute coordinates... M83 ; ...but relative extruder moves ; Network M550 P"Ender 5" ; Set machine name M552 S1 ; Enable network M586 P0 S1 ; Enable HTTP M586 P1 S0 ; Disable FTP M586 P2 S0 ; Disable Telnet ; Drives M569 P0 S0 ; Physical drive 0 goes forwards M569 P1 S0 ; Physical drive 1 goes forwards M569 P2 S0 ; Physical drive 2 goes backwards M569 P3 S1 ; Physical drive 3 goes forwards M584 X0 Y1 Z2 E3 ; set drive mapping M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation M92 X80.00 Y80.00 Z800.00 E272.00 ; set steps per mm M566 X800.00 Y800.00 Z60.00 E3000.00 ; Set maximum instantaneous speed changes (mm/min) M203 X12000.00 Y12000.00 Z900.00 E6000.00 ; Set maximum speeds (mm/min) M201 X6000.00 Y6000.00 Z200.00 E6000.00 ; set accelerations (mm/s^2) M906 X800 Y800 Z800 E1400 I30 ; set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout ; Axis Limits M208 X0 Y0 Z0 S1 ; set axis minima M208 X220 Y220 Z300 S0 ; set axis maxima ; Endstops ;M574 X1 S1 P"xstop" ; configure active-high endstop for low end on X via pin xstop ;M574 Y1 S1 P"ystop" ; configure active-high endstop for low end on Y via pin ystop M574 X2 S1 P"xstop" ; configure active-high endstop for low end on X via pin xstop M574 Y2 S1 P"ystop" ; configure active-high endstop for low end on Y via pin ystop M574 Z1 S2 ; configure Z-probe endstop for low end on Z ;Filament Sensors ;M591 D0 P2 C"!e0_stop" S1 ;Extruder 1(0) ; PINDA2 M558 P8 C"^zprobe.in" H5 F1000 T6000 A20 S0.005 ; set Z probe type to effector and the dive height + speeds, max number of probes per point, tolerance(MM) M308 S2 P"e1temp" A"Pinda V2" Y"thermistor" T100000 B3950 ; temperature of PINDA2 G31 P500 X-52 Y0 Z0.689 C0.0010 S20 H5 ; set Z probe trigger value, offset and trigger height ;M557 X10:168 Y10:200 P2 ; zum leveln aktivieren M557 X0:220 Y0:220 S20 ;M671 X28.8:198.8:198:28.8 Y24:24:194:194 P0.5 ; Heaters M308 S0 P"bedtemp" Y"thermistor" T100000 B3950 ; configure sensor 0 as thermistor on pin bedtemp M950 H0 C"bedheat" T0 ; create bed heater output on bedheat and map it to sensor 0 M307 H0 B0 S1.00 ; disable bang-bang mode for the bed heater and set PWM limit M140 H0 ; map heated bed to heater 0 M143 H0 S120 ; set temperature limit for heater 0 to 120C M308 S1 P"e0temp" Y"thermistor" T100000 B4725 C7.06e-8; configure sensor 1 as thermistor on pin e0temp M950 H1 C"e0heat" T1 ; create nozzle heater output on e0heat and map it to sensor 1 M143 H1 S280 ; set temperature limit for heater 1 to 300C M307 H1 B0 S1.00 ; Fans M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off M950 F1 C"fan1" Q500 ; create fan 1 on pin fan1 and set its frequency M106 P1 S1 H1 T45 ; set fan 1 value. Thermostatic control is turned on ; Tools M563 P0 D0 H1 ; Define tool 0 S3D G10 P0 X0 Y0 Z0 ; Set tool 0 axis offsets G10 P0 R0 S0 ; Set initial tool 0 active and standby temperatures to 0C ; Automatic saving after power loss is not enabled ; Custom settings are not configured M575 P1 S1 B57600 ; enable support for PanelDue ;M572 D0 S0.1 ; Pressure Advance PETG ;M572 D0 S0.095 ; Pressure Advance PLA M572 D0 S0.025 ; Pressure Advance PLA M207 S0.80 R0 F1800 T1800 Z0 ; Firmware Retraction M204 P600 T2000 ;set print and travel accellerations T0 ; Sets Tool0 as default M501
config-override.g
; config-override.g file generated in response to M500 at 2021-10-21 11:41 ; This is a system-generated file - do not edit ; Heater model parameters M307 H0 R0.236 C467.211:467.211 D10.35 S1.00 V24.2 B0 I0 M307 H1 R2.289 C148.192:133.205 D5.09 S1.00 V24.3 B0 I0 ; Workplace coordinates G10 L2 P1 X0.00 Y0.00 Z0.00 G10 L2 P2 X0.00 Y0.00 Z0.00 G10 L2 P3 X0.00 Y0.00 Z0.00 G10 L2 P4 X0.00 Y0.00 Z0.00 G10 L2 P5 X0.00 Y0.00 Z0.00 G10 L2 P6 X0.00 Y0.00 Z0.00 G10 L2 P7 X0.00 Y0.00 Z0.00 G10 L2 P8 X0.00 Y0.00 Z0.00 G10 L2 P9 X0.00 Y0.00 Z0.00
homeall.g
; homeall.g ; called to home all axes ; ; generated by RepRapFirmware Configuration Tool v3.3.4 on Thu Oct 14 2021 05:57:31 GMT+0200 (Mitteleuropäische Sommerzeit) M913 X35 Y35 Z35 ; Reduce motor currents for homing G91 ; relative positioning G1 H2 Z5 F6000 ; lift Z relative to current position G1 H1 X 240 F3000 ; move quickly to X axis endstop and stop there (first pass) G1 H1 Y 240 F3000 ; move quickly to Y axis endstop and stop there (first pass) G1 H2 X-5 Y-5 F6000 ; go back a few mm G90 ; absolute positioning G1 X162 Y110 F2000 ; put head over the centre of the bed, or wherever you want to probeG30 ; home Z by probing the bed M558 F600 A1 ; Dive fast once G30 ; probe Z M558 F100 A10 ; Slow second dive with more accuracy G30 ; probe z again G29 S1 ; Load heightmap and enable mesh grid compensation G1 X235 Y235 Z10 F6000 ; return head to park position M913 X100 Y100 Z100 ; Return motor currents to normal ; Uncomment the following lines to lift Z after probing ;G91 ; relative positioning ;G1 Z5 F100 ; lift Z relative to current position ;G90 ; absolute positioning
homex.g
; homex.g ; called to home the X axis ; ; generated by RepRapFirmware Configuration Tool v3.3.4 on Thu Oct 14 2021 06:02:43 GMT+0200 (Mitteleuropäische Sommerzeit) G91 ; relative positioning G1 H2 Z5 F6000 ; lift Z relative to current position G1 H1 X240 F1800 ; move quickly to X axis endstop and stop there (first pass) G1 H2 X-5 F6000 ; go back a few mm G1 H1 X240 F360 ; move slowly to X axis endstop once more (second pass) G1 H2 Z-5 F6000 ; lower Z again G90 ; absolute positioning
homey.g
; homey.g ; called to home the Y axis ; ; generated by RepRapFirmware Configuration Tool v3.3.4 on Thu Oct 14 2021 06:04:12 GMT+0200 (Mitteleuropäische Sommerzeit) G91 ; relative positioning G1 H2 Z5 F6000 ; lift Z relative to current position G1 H1 Y240 F1800 ; move quickly to Y axis endstop and stop there (first pass) G1 H2 Y-5 F6000 ; go back a few mm G1 H1 Y240 F360 ; move slowly to Y axis endstop once more (second pass) G1 H2 Z-5 F6000 ; lower Z again G90 ; absolute positioning
homez.g
; homez.g ; called to home the Z axis ; ; generated by RepRapFirmware Configuration Tool v3.1.4 on Tue Jul 28 2020 08:52:37 GMT+0200 (Mitteleuropäische Sommerzeit) M913 X35 Y35 Z35 ; Reduce motor currents for homing G91 ; relative positioning G1 H2 Z5 F6000 ; lift Z relative to current position G90 ; absolute positioning G1 X162 Y110 ; Move Probe to middle of bed G30 ; Do a single probe M913 X100 Y100 Z100 ; Return motor currents to normal
heightmap.csv
RepRapFirmware height map file v2 generated at 2021-10-25 16:36, min error -0.113, max error 0.053, mean -0.041, deviation 0.031 axis0,axis1,min0,max0,min1,max1,radius,spacing0,spacing1,num0,num1 X,Y,0.00,220.00,0.00,220.00,-1.00,20.00,20.00,12,12 -0.073, -0.073, -0.050, -0.014, -0.010, -0.007, 0.024, 0.053, 0.040, 0, 0, 0 -0.097, -0.086, -0.061, -0.019, -0.017, -0.013, -0.005, 0.020, 0.010, 0, 0, 0 -0.088, -0.070, -0.038, -0.014, -0.024, -0.028, -0.015, -0.004, -0.032, 0, 0, 0 -0.091, -0.074, -0.062, -0.040, -0.048, -0.050, -0.042, -0.022, -0.035, 0, 0, 0 -0.073, -0.048, -0.059, -0.035, -0.041, -0.052, -0.048, -0.042, -0.064, 0, 0, 0 -0.110, -0.093, -0.082, -0.047, -0.048, -0.037, -0.050, -0.046, -0.070, 0, 0, 0 -0.113, -0.104, -0.075, -0.052, -0.060, -0.045, -0.048, -0.045, -0.072, 0, 0, 0 -0.095, -0.090, -0.074, -0.046, -0.032, -0.037, -0.037, -0.054, -0.077, 0, 0, 0 -0.079, -0.077, -0.058, -0.032, -0.042, -0.040, -0.032, -0.030, -0.058, 0, 0, 0 -0.069, -0.062, -0.041, -0.012, -0.021, -0.020, -0.018, -0.023, -0.041, 0, 0, 0 -0.048, -0.048, -0.033, -0.010, -0.025, -0.025, -0.021, -0.015, -0.039, 0, 0, 0 -0.017, -0.023, -0.018, 0.010, 0.006, 0.001, 0.003, 0.015, -0.009, 0, 0, 0
first print:
second print:
-
@lui2004 In your homeall.g you change M558 (z-probe setting) twice.
Just to be sure, I also repeat the G31 line everytime I change M558. I'm afraid it'll use default values instead, if I don't. (paranoid?)Another sidenote: you drop the motorcurrent a lot while probing, but still use the full probing speed. How can you be sure, not to skip steps while probing?
-
-
Your homeall.g:
M558 F600 A1 ; Dive fast once G30 ; probe Z M558 F100 A10 ; Slow second dive with more accuracy G30 ; probe z again
Adding G31 from config.g:
M558 F600 A1 ; Dive fast once G31 P500 X-52 Y0 Z0.689 C0.0010 S20 H5 ; set Z probe trigger value, offset and trigger height G30 ; probe Z M558 F100 A10 ; Slow second dive with more accuracy G31 P500 X-52 Y0 Z0.689 C0.0010 S20 H5 ; set Z probe trigger value, offset and trigger height G30 ; probe z again
I'd also outcomment the M913 current reduction
-
rest of config looks good ?
ok,now it looks like this:
homeall.g
; homeall.g ; called to home all axes ; ; generated by RepRapFirmware Configuration Tool v3.3.4 on Thu Oct 14 2021 05:57:31 GMT+0200 (Mitteleuropäische Sommerzeit) ;M913 X35 Y35 Z35 ; Reduce motor currents for homing G91 ; relative positioning G1 H2 Z5 F6000 ; lift Z relative to current position G1 H1 X 240 F3000 ; move quickly to X axis endstop and stop there (first pass) G1 H1 Y 240 F3000 ; move quickly to Y axis endstop and stop there (first pass) G1 H2 X-5 Y-5 F6000 ; go back a few mm G90 ; absolute positioning G1 X162 Y110 F2000 ; put head over the centre of the bed, or wherever you want to probeG30 ; home Z by probing the bed M558 F600 A1 ; Dive fast once G31 P500 X-52 Y0 Z0.689 C0.0010 S20 H5 ; set Z probe trigger value, offset and trigger height G30 ; probe Z M558 F100 A10 ; Slow second dive with more accuracy G31 P500 X-52 Y0 Z0.689 C0.0010 S20 H5 ; set Z probe trigger value, offset and trigger height G30 ; probe z again G29 S1 ; Load heightmap and enable mesh grid compensation G1 X235 Y235 Z10 F6000 ; return head to park position M913 X100 Y100 Z100 ; Return motor currents to normal ; Uncomment the following lines to lift Z after probing ;G91 ; relative positioning ;G1 Z5 F100 ; lift Z relative to current position ;G90 ; absolute positioning
-
I use Prusaslicer
can you check my Start G-Code and End Gcode,please ?Start G-Code:
T0 G28 XY ;Home XY M561 ; Clear any bed transform that might be in place G1 X162 Y110 ; Move Probe to middle of bed G30 ; Do a single probe G29 S1 ; Load my custom heightmap. Otherwise use G29 S1 G92 E0 ;Reset Extruder G1 Z2.0 F3000 ;Move Z Axis up M104 S[first_layer_temperature] ; set final nozzle print temp M109 S[first_layer_temperature] ; wait for the nozzle to heat up G1 X10.1 Y20 Z0.28 F5000.0 ;Move to start position G1 X10.1 Y200.0 Z0.28 F1500.0 E15 ;Draw the first line G1 X10.4 Y200.0 Z0.28 F5000.0 ;Move to side a little G1 X10.4 Y20 Z0.28 F1500.0 E30 ;Draw the second line G92 E0 ;Reset Extruder
End G-Code:
M106 S0 ; turn off cooling fan M104 S0 ; turn off extruder M140 S0 ; turn off bed G91 ; set to relative positioning G1 Z5 ; raise Z 5 mm G90 ; set to absolute positioning G1 X235 Y235 ; park at X0 Y0 M84 ; disable motors
-
@lui2004 your end code is not really nice if you print an object near zmax! So the z axle can't raise 5mm.
I have the following code in stop.g
G91 ; relative positioning if {move.axes[2].userPosition +5} < move.axes[2].max ; possible to move z+5 ? G0 Z+5 ; move z 5mm away from nozzle else G0 Z+{move.axes[2].max - move.axes[2].userPosition} ; move z to the max possible position
It moves the z axle 5mm if it is possible.
If not, it moves to zmax. -
@cosmowave said in 1st print perfect,2nd print too high,config problem ?:
G91 ; relative positioning if {move.axes[2].userPosition +5} < move.axes[2].max ; possible to move z+5 ? G0 Z+5 ; move z 5mm away from nozzle else G0 Z+{move.axes[2].max - move.axes[2].userPosition} ; move z to the max possible position
ok iadd this code in my Duet Stop.g
do i need to change something in my End G-Code ? -
@lui2004 In your start code, you only home XY (G28 XY) Now that we have changed homeall.g, you can replace it with a simple G28.
New start code:T0 M561 ; Clear any bed transform that might be in place G28 ;Home all G29 S1 ; Load my custom heightmap. Otherwise use G29 S1 ... ; rest is OK
-
@lui2004 you should insert my code in your end code (at the position where you raise the z axle), not in stop.g. Because you disable the motors in your end code.
Stop.g will be called afterwards, and with disabled motors it will be not possible to move z!e.g. your modified end code:
M106 S0 ; turn off cooling fan M104 S0 ; turn off extruder M140 S0 ; turn off bed G91 ; relative positioning if {move.axes[2].userPosition +5} < move.axes[2].max; possible to move z+5 ? G0 Z+5; move z 5mm away from nozzle else G0 Z+{move.axes[2].max - move.axes[2].userPosition}; move z to the max possible position G90 ; set to absolute positioning G1 X235 Y235 ; park at X0 Y0 M84 ; disable motors
-
@cosmowave said in 1st print perfect,2nd print too high,config problem ?:
M106 S0 ; turn off cooling fan M104 S0 ; turn off extruder M140 S0 ; turn off bed G91 ; relative positioning if {move.axes[2].userPosition +5} < move.axes[2].max; possible to move z+5 ? G0 Z+5; move z 5mm away from nozzle else G0 Z+{move.axes[2].max - move.axes[2].userPosition}; move z to the max possible position G90 ; set to absolute positioning G1 X235 Y235 ; park at X0 Y0 M84 ; disable motors
i got this error from prusaslicer:
G-code export to C:\Users\Lfna\AppData\Local\Temp\.2324.gcode failed due to invalid custom G-code sections: end_gcode Parsing error at line 5: Not a variable name if {move.axes[2].userPosition +5} < move.axes[2].max; possible to move z+5 ? ^ Please inspect the file C:\Users\Lfna\AppData\Local\Temp\.2324.gcode.tmp for error messages enclosed between !!!!! Failed to process the custom G-code template ... and !!!!! End of an error report for the custom G-code template ... for all macro processing errors.
-
@lui2004 ok, then it could be, that this code is not allowed in prusa slicer.
I use it in stop.g, so it's slicer independent....
Sorry for that! -
no problem !
now i have follow problem, my z-offset shows me different z-offsets:
whats going wrong here ?Stopped at height 0.709 mm Stopped at height 0.729 mm Stopped at height 0.739 mm Stopped at height 0.756 mm Stopped at height 0.697 mm Stopped at height 0.696 mm Stopped at height 0.697 mm
-
Morning
the problem with the second preresist,the second print is always too high
i must shutdown the printer and then is all fine and the second print is again high
i dont know why
-
@lui2004 About this i can't say much. I don't use a z-probe...
Do you use babystepping during the first print?Can you please post your startcodes once again?
-
no, i dont use babystep for the first print ,its all fine
prusa slicer start g-code:
T0 G28 XY ;Home XY M561 ; Clear any bed transform that might be in place G1 X162 Y110 ; Move Probe to middle of bed G30 ; Do a single probe G29 S1 ; Load my custom heightmap. Otherwise use G29 S1 G92 E0 ;Reset Extruder G1 Z2.0 F3000 ;Move Z Axis up M104 S[first_layer_temperature] ; set final nozzle print temp M109 S[first_layer_temperature] ; wait for the nozzle to heat up G1 X10.1 Y20 Z0.28 F5000.0 ;Move to start position G1 X10.1 Y200.0 Z0.28 F1500.0 E15 ;Draw the first line G1 X10.4 Y200.0 Z0.28 F5000.0 ;Move to side a little G1 X10.4 Y20 Z0.28 F1500.0 E30 ;Draw the second line G92 E0 ;Reset Extruder
end g-code:
M106 S0 ; turn off cooling fan M104 S0 ; turn off extruder M140 S0 ; turn off bed G91 ; set to relative positioning G1 Z5 ; raise Z 5 mm G90 ; set to absolute positioning G1 X235 Y235 ; park at X0 Y0 M84 ; disable motors
-
-
-
@cosmowave @lui2004
The start code in my slicer is always empty. Also my homeall.g only calls homeX, homeY, homeZ.
I want only one file, I have to edit.My guess is, you G30-probe the bed after the heightmap is loaded, which changes the Z-height
-
@o_lampe
Thanks ,i will test it after work