Printer hangs during G29/G32
-
Duet Wifi, RRF3.3, original BL touch. The whole combo was moved from my other printer where it worked flawlessly. Both are cartesian so I didn't make a new config, only adjusted bed size, stepper movement etc in the old one. Now whenever I run mesh compensation after few probes it stops with "Error: Probe already triggered at start of probing move", Bltouch blinks and only reset would make it working again. Always happens in the same position.
What I tried so far after a forum search:
- reduced number of probing points
- increased time interval in M558 up to 0.7
- tried M280 p9 s160
Nothing worked, but in the process I also noticed Bltouch can randomly behave strange, sometimes not deploying before moving Z down during homing, not initializing etc Maybe every 10th time or so, but it happens.
Any ideas?
; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"Geeetech A20" ; set printer name ; Network 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 backwards M569 P1 S0 ; physical drive 1 goes backwards M569 P2 S1 ; physical drive 2 goes forwards M569 P3 S1 ; physical drive 3 goes forwards M569 P4 S0 ; physical drive 4 goes backwards M584 X0 Y1 Z2 E4 ; set drive mapping M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation M92 X80.00 Y80.00 Z400.00 E411,83 ; set steps per mm M566 X600.00 Y600.00 Z18.00 E300.00 ; set maximum instantaneous speed changes (mm/min) M203 X30000.00 Y30000.00 Z380.00 E6000.00 ; set maximum speeds (mm/min) M201 X2500.00 Y2500.00 Z100.00 E2000.00 ; set accelerations (mm/s^2) M906 X500 Y500 Z500 E650 I30 ; set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout ; Axis Limits M208 X-23 Y-10 Z0 S1 ; set axis minima M208 X255 Y255 Z290 S0 ; set axis maxima ; Endstops M574 X1 S1 P"!xstop" ; configure active-low endstop for low end on X via pin xstop M574 Y1 S1 P"!ystop" ;M574 Z0 P"!zstop" ; configure active-low endstop for low end on Z via pin zstop ; Z-Probe M950 S0 C"exp.heater7" ; create servo pin 0 for BLTouch M558 P9 C"^zprobe.in" H5 F600 T12000 R0.5 S0.003 M574 Z1 S2 ; set Z probe type to bltouch and the dive height + speeds G31 P500 X-40 Y0 Z2.43 ; set Z probe trigger value, offset and trigger height for Geetech A20 M557 X35:230 Y10:220 S50 ; define mesh grid ; Heaters M308 S0 P"bedtemp" Y"thermistor" T100000 B4725 C7.06e-8 ; 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 R0.385 ; disable bang-bang mode for the bed heater and set PWM limit M140 H0 ; map heated bed to heater 0 M143 H0 S130 ; set temperature limit for heater 0 to 130C 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 M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit M143 H1 S300 ; set temperature limit for heater 1 to 275C M308 S1 P"e1temp" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 2 as thermistor on pin e1temp M950 H1 C"e1heat" T1 ; create nozzle heater output on e1heat and map it to sensor 1 M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit M143 H1 S300 ; Fans M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency M106 P0 S0 H-1 T150 ; set fan 0 value. Thermostatic control is turned on M950 F1 C"fan1" Q500 ; create fan 1 on pin fan1 and set its frequency M106 P1 S1 H-1 ; set fan 1 value. Thermostatic control is turned off ; Tools M563 P0 S"Change nozzle" D0 H1 F0 ; define tool 0 G10 P0 X0 Y0 Z0 ; set tool 0 axis offsets G10 P0 R0 S0 ; set initial tool 0 active and standby temperatures to 0C ; Tools M563 P1 S"Hotend" D0 H1 F0 ; define tool 1 G10 P1 X0 Y0 Z0 ; set tool 1 axis offsets G10 P1 R0 S0 ; set initial tool 1 active and standby temperatures to 0C ; Custom settings are not defined ; Miscellaneous T1 ; select first tool ;M564 H0
; config-override.g file generated in response to M500 at 2021-10-08 19:46 ; This is a system-generated file - do not edit ; Heater model parameters M307 H0 R0.385 C140.000:140.000 D5.50 S1.00 V0.0 B0 I0 M307 H1 R2.429 C140.000:140.000 D5.50 S1.00 V0.0 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 ; called to home all axes ; ; generated by RepRapFirmware Configuration Tool v3.2.3 on Mon Jul 12 2021 06:15:47 GMT+0700 (Indochina Time) G91 ; relative positioning G1 H2 Z5 F12000 ; lift Z relative to current position G1 H1 X-258 Y-235 F9000 ; move quickly to X and Y axis endstops and stop there (first pass) G1 H2 X5 Y5 F12000 ; go back a few mm G1 H1 X-258 Y-235 F750 ; move slowly to X and Y axis endstops once more (second pass) G90 G1 X112 Y120 F15000 ; move X and Y to bed center G30 ; move Z down stopping at the endstop ; absolute positioning
; homez.g ; called to home the Z axis ; ; generated by RepRapFirmware Configuration Tool v3.2.3 on Mon Jul 12 2021 06:15:47 GMT+0700 (Indochina Time) G91 ; relative positioning G1 H2 Z5 F12000 ; lift Z relative to current position ;G1 H1 Z-245 F1800 ; move Z down until the endstop is triggered ;G92 Z-0.85 ; set Z position to axis minimum (you may want to adjust this) G90 G1 X143 Y120 F2000 ; put head over the center of the bed, or wherever you want to probe G30 ; lower head, stop when probe triggered and set Z to trigger height
-
@commie if it always happens at the same position try moving the printer to that point and sending M401 and M402 form there to see if you can recreate the fault. You can also try doing a single probe form that position (G30). The idea is to work out what the cause is - which I initially guess could be wiring with an intermittent issue if the BL touch works fine everywhere else
-
@t3p3tony said in Printer hangs during G29/G32:
@commie if it always happens at the same position try moving the printer to that point and sending M401 and M402 form there to see if you can recreate the fault. You can also try doing a single probe form that position (G30). The idea is to work out what the cause is - which I initially guess could be wiring with an intermittent issue if the BL touch works fine everywhere else
Thanks, tried that. All 3 commands work if entered manually, I did that 10-15 times in a row. Then I ran G32 and it didn't stall at that position but rather skipped it without probing wnd went on, skipping it at 1 more point. G29 gives the same result, now height maps has 2 5mm "hills". No idea what it might be.
-
@commie any errors when G29 skipped those points (I presume not G32?!).
Try shifting the mesh grid by 1mm
M557 X36:231 Y11:221 S50
Assuming your probe can reach those points?
-
@t3p3tony said in Printer hangs during G29/G32:
@commie any errors when G29 skipped those points (I presume not G32?!).
Try shifting the mesh grid by 1mm
M557 X36:231 Y11:221 S50
Assuming your probe can reach those points?
No errors, just a usual report:
G32
20 points probed, min error -0.220, max error 5.000, mean 0.492, deviation 1.505
Height map saved to file 0:/sys/heightmap.csvPoints skipped are actually near bed center. Toolhead actually stops, probe doesn't deploy and then it moves to the next one. Shifting grid didn't give any results.
-
@commie what's in your bed.g macro?
G32 and bed.g have not been used for mesh levelling for a long time, see:
https://duet3d.dozuki.com/Wiki/G32The firmware executes macro file bed.g. This macro normally uses G30 commands to probe the bed and then perform auto calibration of a delta printer (see Calibrating a delta printer), or perform bed levelling by moving the Z leadscrews independently, or display the manual corrections needed to the bed levelling screws.
You should use G29 to handle mesh compensation
https://duet3d.dozuki.com/Wiki/G29That said, I don't see that this is necessarily the cause of the issue you were having.
-
@t3p3tony laos it might be skipping points because they are too far out of the plane for the z probe to reach with the configured settings.. given that the max error is 5!
-
@t3p3tony said in Printer hangs during G29/G32:
@commie what's in your bed.g macro?
G32 and bed.g have not been used for mesh levelling for a long time, see:
https://duet3d.dozuki.com/Wiki/G32The firmware executes macro file bed.g. This macro normally uses G30 commands to probe the bed and then perform auto calibration of a delta printer (see Calibrating a delta printer), or perform bed levelling by moving the Z leadscrews independently, or display the manual corrections needed to the bed levelling screws.
You should use G29 to handle mesh compensation
https://duet3d.dozuki.com/Wiki/G29That said, I don't see that this is necessarily the cause of the issue you were having.
G32 and G29 give same result, actually, I tried both multiple times.
; bed.g
; called to perform automatic bed compensation via G32
;
; generated by RepRapFirmware Configuration Tool v3.2.3 on Mon Jul 12 2021 06:15:47 GMT+0700 (Indochina Time)
M561 ; clear any bed transform
G29 ; probe the bed and enable compensation -
@commie said in Printer hangs during G29/G32:
G32 and G29 give same result, actually, I tried both multiple times.
; bed.g
; called to perform automatic bed compensation via G32
;
; generated by RepRapFirmware Configuration Tool v3.2.3 on Mon Jul 12 2021 06:15:47 GMT+0700 (Indochina Time)
M561 ; clear any bed transform
G29 ; probe the bed and enable compensationWell in your case, yes, since you have code in bed.g to create the height map.
It's just that the current intent is that bed.g should contain the code for leveling the bed (manual or automatic) and mesh.g should contain the code for creating the height map.
Thus G32 would level the bed by running bed.g and G29 would create the height map by running mesh.g. This is consistent with the DWC pull down menu that has items for G32 and G29.
Frederick
-
@commie said in Printer hangs during G29/G32:
Points skipped are actually near bed center. Toolhead actually stops, probe doesn't deploy and then it moves to the next one. Shifting grid didn't give any results
And if you move to those points and send M401 to probe deploys? Can you watch carefully and see if the probe attempts to deploy and fails or does not even attempt to deploy.