Solved Printer unable to home Z suddenly (G30 and G29)
-
Not too sure why, I just upgraded RRF from 3.2 to 3.3 to now 3.5.1, I now get a weird behavior where my printer is not able to home the Z axis all the way. What happens is that I send a G30 command in the homeall.g file, the printer is able to go all the way down to some arbitrary point above the bed, and just stops there. Placing a G1 H1 command to lower the axis also does not help. The probe will return back to its original Z height, and due to the Z axis min, I can't lower it without disabling steppers. It also affects my bed levelling script.
Any help would be greatly appreciated. I'll include my config.g, homeall.g, deployprobe.g and bed.g below. Thank you!
config.g
; Configuration file for Duet WiFi (firmware version 3) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v3.2.3 on Wed May 12 2021 01:34:57 GMT+0800 ; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"KinderPro" ; set printer name M918 P1 E4 F2000000 ; configure direct-connect display ; Network M586 P0 S1 ; enable HTTP M586 P1 S0 ; disable FTP M586 P2 S0 ; disable Telnet ;M552 S-1 ; disable wifi module ;M552 S0 ; disable networking M552 S1 ;wifi mode M575 P1 S1 B57600 ; 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 P4 S0 ; physical drive 3 goes backwards M584 X0 Y1 Z2 E4 ; set drive mapping M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation M92 X80.30 Y80.30 Z396.00 E562.12 ; set steps per mm 579.55 M566 X1200.00 Y1200.00 Z24.00 E2000.00 ; set maximum instantaneous speed changes (mm/min) M203 X9000.00 Y9000.00 Z600.00 E6000.00 ; set maximum speeds (mm/min) M201 X500.00 Y500.00 Z100.00 E5000.00 ; set accelerations (mm/s^2) M906 X800 Y800 Z800 E1000 I50 ; 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 X240 Y240 Z260 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 Z1 S2 ; configure active-high endstop for low end on Z via pin zstop ; Z-Probe M558 P5 C"zstop" H25 F2000:500 T9000 A2 ; enables Z probe at z stop and set dive height, probe speed and travel speed G31 P700 X4.5 Y29 Z10.95 ; Set Z probe trigger value, offset and trigger height ;M557 X40:195 Y40:195 S38.75;155 ; define mesh grid M557 X40:195 Y40:195 P5 ; 5x5 grid, origin at centre ; Heaters M308 S0 P"bedtemp" Y"thermistor" T98801 B4185 ; 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 S80 ; set temperature limit for heater 0 to 80C M308 S1 P"e0temp" Y"thermistor" T98801 B4185 ; 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 S250 ; set temperature limit for heater 1 to 250C ; Fans M950 F0 C"fan0" Q20 ; create fan 0 on pin fan0 and set its frequency M106 P0 C"part cooling" S0 H-1 ; set fan 0 name and value. Thermostatic control is turned off M950 F1 C"fan1" Q20 ; create fan 1 on pin fan1 and set its frequency M106 P1 C"hotend" S0.99 H1:1 T45 ; set fan 1 name and value. Thermostatic control is turned on M950 F2 C"fan2" Q240 ; create fan 0 on pin fan0 and set its frequency M106 P2 C"duet cooling" S0.45 H-1 ; set fan 0 name and value. Thermostatic control is turned off ; Tools M563 P0 S"hotend" 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 M572 D0 S0.0825 ; Custom settings are not defined ; Miscellaneous M501 ; load saved parameters from non-volatile memory M911 S21 R23 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; set voltage thresholds and actions to run on power loss M912 P0 S-6.8 T0 ; select first tool
homeall.g (G1 there to try to move the toolhead down as much as possible, but that did not work)
M401 ; deployprobe G91 ; relative positioning ;G1 H1 Z-999999 F9000 ; move quickly to X axis endstop and stop there (first pass) G30 ; z probe M402 ; retractprobe
deployprobe.g
G91 ; relative positioning G1 H2 Z20 F9000 ; lift Z relative to current position G1 H1 X-240 Y-240 F2500 ; move quickly to X axis endstop and stop there (first pass) G1 H2 X5 Y5 F240 ; go back a few mm G1 H1 X-240 Y-240 F240 ; move slowly to X axis endstop once more (second pass) G90; absolute positioning G1 H0 X239 F5000; get probe G1 H0 X115 Y115 F3000; move x and y axis to x100 G1 H1 Z-20
bed.g
M561 ; clear any bed transform M401 ; deployprobe G29 S0 ; Probe the bed, save height map to "heightmap.csv" and enable mesh bed compensation M402 ; retractbed probe
-
What kind of probe is this?
You don't have a z endstop defined, so should not use G1 H1 Z moves at all.
@jojoscircus said in Printer unable to home Z suddenly (G30 and G29):
M208 X240 Y240 Z260 S0 ; set axis maxima
Is 260mm an accurate measure of your z axis length?
-
@Phaedrux Hi, thanks for the reply, am using a magnetically attached microswitch, like the Klackender, previously was just using a z endstop, so I don't have the Z endstop defined. As for the Z maxima, will need to readjust it, thanks for spotting that. I'll record a video and post it here soon, maybe that will help with the troubleshooting.
-
@Phaedrux Hi managed to solve the Homing issue, but the G29 is still giving me issues.
Here is a video link on what I mean by this, I have some timestamps in the description to skip to the weird probes: https://youtu.be/9va5Om2mgAY
I took your advise and realised I needed to edit my config.g to something like in the G code dictionary's M558 entry:
M574 Z0 P"nil" ; (RRF 3.0 on Duet 2 ONLY) no Z endstop switch, free up Z endstop input M558 P5 C"zstop" H5 F120 T3000 ; Z probe connected to Duet 2 Z endstop input
-
@jojoscircus Was the video done with M558 H25 set? Certainly looks like it is lifting more than H5, ie 5mm.
If it's reporting inconsistent readings, first try a probe consistency test. See this thread for example macros: https://forum.duet3d.com/topic/35200/probe-repeatability
Ian
-
@droftarts Hi, thanks for replying, I actually used your script to test that before, here are my results i just tested. G32 bed probe heights: 0.063 0.070 0.077 0.077 0.077, mean 0.072, deviation from mean 0.005. So I don't think the bed probe repeatability is an issue. As for the h value, yup it is h25, the code I included above was from the Gcode dictionary.
-
@jojoscircus From the video, it looks like all the problematic probes are on the left side of the bed. Try a probe consistency test on that side. It might be something is causing the Z to deviate on that side. Can you post the csv file that is produced, or at least the numbers?
Ian
-
yup, here is the heightmap csv generated:
RepRapFirmware height map file v2 generated at 2024-05-22 18:46, min error -0.191, max error 21.656, mean 1.516, deviation 4.513 axis0,axis1,min0,max0,min1,max1,radius,spacing0,spacing1,num0,num1 X,Y,40.00,195.00,40.00,195.00,-1.00,38.75,38.75,5,5 9.335, 0.045, 0.194, 0.407, 0.622 -0.182, 21.656, 0.127, 0.299, 0.472 -0.191, -0.065, 0.080, 0.236, 0.430 2.877, -0.137, 0.008, 0.171, 0.345 0.858, -0.160, -0.022, 0.154, 0.335
redid the deviation on the first probe coordinate, which was one of the problematic ones, here are the numbers:
Try 1: G32 bed probe heights: 23.983 11.688 3.748 -0.091 -0.109, mean 7.844, deviation from mean 9.146
Try 2: G32 bed probe heights: 18.055 13.678 -0.088 -0.091 -0.096, mean 6.291, deviation from mean 7.939
Try 3: G32 bed probe heights: 9.372 -0.088 -0.088 -0.088 -0.088, mean 1.804, deviation from mean 3.784
Try 4: G32 bed probe heights: 20.939 -0.081 -0.083 -0.088 -0.091, mean 4.119, deviation from mean 8.410 -
After seeing the probe tended to "bounce" on the fast probe I edited my config z probe from
M558 P5 C"zstop" H25 F2000:500 T9000 A2
to
M558 P5 C"zstop" H25 F1000 T9000 A2
Seems to have solved the deviation issue:
G32 bed probe heights: -0.205 -0.204 -0.200 -0.204 -0.204, mean -0.203, deviation from mean 0.002but when I tried the bed mesh again it generated this:
RepRapFirmware height map file v2 generated at 2024-05-22 21:34, min error -0.360, max error 9.386, mean 0.484, deviation 1.857 axis0,axis1,min0,max0,min1,max1,radius,spacing0,spacing1,num0,num1 X,Y,40.00,195.00,40.00,195.00,-1.00,38.75,38.75,5,5 -0.205, -0.040, 0.121, 0.301, 0.486 -0.244, 9.386, 0.070, 0.220, 0.381 -0.254, -0.099, 0.065, 0.207, 0.371 -0.310, -0.165, -0.004, 0.136, 0.296 -0.360, -0.215, 1.611, 0.090, 0.255
Thanks for the help so far!
-
@jojoscircus That looks a bit better, but there does seem to be two erroneous points, with Z 9.386 and 1.611. These feel false triggers. From your video, I noticed your wiring to the hot end was dragging around on the bed; check your wiring to the microswitch for lose connections, and the microswitch itself.
If you repeat the mesh bed probe, do you get these readings in the same place again?
M558 F1000 is still quite fast; I probe using
M558 ... H5 F600:120 T6000 A5
Ian
-
@droftarts Will check on the wiring and try again, one thing i noticed is that I had better luck with a lower dive height like the default 5mm. Kinda seems like there are more false triggers with the 25mm I tried, which shouldn't be the case?
will look into the lower feed rate and report back thanks!
-
@droftarts Hi after rewiring the probe and ensuring the cables werent dragging on the bed, I think it was a connection issue. Now seems to have no more issues with the probing. Thank you all for your help! Was pulling my hair out trying to solve it over the last few days
-
-