G30- Height correction question



  • If I probe 2 points to level the bed driven with 2 independent z- axis, is the H- parameter included in the correction process?

    I run 2 independent Z-Axis motors. Yesterday I installed 2 "probing" points (outside the bed, which is floating on silicon dampers) and aligned the bed perfectly. The one probing point is 0.24 mm higher than the other.
    If I now run the following code:

    G30 P0 X-9.957 Y239.998 H0 Z-99999 ; probe point P0
    G30 P1 X332.043 Y239.998 H0.241 Z-99999 S-1 ;S2 - Adjusting; S-1 Report

    the Duet always tells me that there is a difference of ~0.241 and doesn't seem to integrate the H-value in the correction???. I am afraid now to run a G30 with S2, so the bed gets "bent" again and I'll have to readjust everything...

    Hope you can help me!

    greetings kuhni


  • administrators

    Yes, H parameters are taken into account in all G30 Px bed probing operations.



  • This post is deleted!


  • @dc42 said in G30- Height correction question:

    Yes, H parameters are taken into account in all G30 Px bed probing operations.

    that's really strange!
    I now tried these 2 macros:

    G30 P0 X-9.957 Y239.998 H0 Z-99999 ; probe point P0
    G30 P1 X332.043 Y239.998 H0 Z-99999 S2 ; H=0

    G30 P0 X-9.957 Y239.998 H0 Z-99999 ; probe point P0
    G30 P1 X332.043 Y239.998 H0.241 Z-99999 S2 ; H=0.241

    I ran both macros directly one after the other. These are the results I got:

    Leadscrew adjustments made: -0.013 0.075, points used 2, deviation before 0.044 after 0.000

    Leadscrew adjustments made: -0.008 0.003, points used 2, deviation before 0.004 after 0.000

    So it seems, that the H-Factor isn't calculated??? Both results are nearly identical but at the 2nd macro there should be at least a difference about ~0.241 mm???


  • administrators

    Hmm, that doesn't look right. Can you try a large H parameter, perhaps 1mm if that won't damage your printer, and test again?

    Which firmware version are you using?



  • @dc42 said in G30- Height correction question:

    Hmm, that doesn't look right. Can you try a large H parameter, perhaps 1mm if that won't damage your printer, and test again?

    Which firmware version are you using?

    It really seems not to pay any attention to the H-factor at all... I now tried different settings with H from 0 up to 5 and i always got ~ the same result... 😕

    This is the code I used (in a macro as well as in bed.g):
    [CODE]
    G1 Z10 ; lift Z=10 to prevent crashing the probing point

    G1 X15.50 Y228.60 F15000 ; go to defined probing point independent of floating bed
    G30 X15.50 Y228.60 ; define this point as Z=0

    G30 P0 X-9.957 Y239.998 H0 Z-99999 ; probe point P0
    G30 P1 X332.043 Y239.998 H0 Z-99999 S2 ; go to defined probing point 2 and do: S2 - Adjusting; S-1 Report

    G1 X45.457 Y8.602 F15000 ; go to probing point on floating bed
    G30 X45.457 Y8.602 ; define this point as Z=0
    [/CODE]


  • administrators

    What type of Z probe are you using?



  • @dc42 said in G30- Height correction question:

    What type of Z probe are you using?

    It is an original Bl-Touch. Homez / homeall works great also with the defined Offset...



  • So is this a firmware fault or is there something wrong I made? Tried to level the 0.241 mm by aluminium foil, but this didn't work that fine... 😞
    greetings kuhni


  • administrators

    I just checked the code and also re-tested the manual bed levelling adjustment wizard, which uses the same code as the leadscrew adjustment. It's working for me, using firmware 2.02RC3.

    Which firmware version are you using?



  • @dc42 said in G30- Height correction question:

    I just checked the code and also re-tested the manual bed levelling adjustment wizard, which uses the same code as the leadscrew adjustment. It's working for me, using firmware 2.02RC3.

    Which firmware version are you using?

    I am now also on 2.02 RC3.
    It works for me as well, but still the H factor isn't calculated. I already wrote it in your release post of the 2.02RC3 (if you want to, we could also discuss it there?)

    2 examples:

    G30 P0 X20 Y20 H0 Z-99999	  ; probe point P0
    G30 P1 X20 Y20 H0 Z-99999 S-1	  ; go to defined probing point 2 and do: S2 - Adjusting; S-1 Report
    
    Results:
    G32 bed probe heights: -0.005 -0.008, mean -0.006, deviation from mean 0.001
    

    Here are both H-factors 0 for both points. This should result in no difference.

    Now the 2nd test:

    G30 P0 X20 Y20 H0 Z-99999	  ; probe point P0
    G30 P1 X20 Y20 H1 Z-99999 S-1	  ; go to defined probing point 2 and do: S2 - Adjusting; S-1 Report
    
    
    Results:
    G32 bed probe heights: -0.003 0.002, mean -0.000, deviation from mean 0.002
    

    Here is P1 with H1 instead of H0. So the report should be at least at a difference of ~1 mm. But The results are still almost the same?
    Is there maybe an interference with the G31 command as there is a Z- Trigger Z height defined?


  • administrators

    What I meant was that the H corrections work for me. This is my usual bed.g file:

    M561		; clear any bed transform
    G0 X20 Y0 Z28 F10000
    
    G30 P0 X-80 Y-100 Z-99999
    G30 P1 X80 Y-80 Z-99999
    G30 P2 X0 Y75 Z-99999
    G30 P3 X-80 Y200 Z-99999 
    G30 P4 X80 Y200 S3 Z-99999
    
    G0 X0 Y50 Z28
    

    Running this gives me:

    G32
    Manual corrections required: 0.00 turn up (0.00mm) 0.03 turn up (-0.03mm) 0.05 turn up (-0.05mm)
    

    If I change bed.g to this:

    ; bed.g
    M561		; clear any bed transform
    G0 X20 Y0 Z28 F10000
    
    G30 P0 X-80 Y-100 Z-99999
    G30 P1 X80 Y-80 Z-99999
    G30 P2 X0 Y75 Z-99999
    G30 P3 X-80 Y200 Z-99999  H1
    G30 P4 X80 Y200 S3 Z-99999 H1
    
    G0 X0 Y50 Z28
    

    then it gives me:

    G32
    Manual corrections required: 0.00 turn up (0.00mm) 0.63 turn up (-0.63mm) 1.22 turn up (-1.22mm)
    

    So the H values are definitely having an effect.



  • @dc42
    I think that there may be a problem because I am using 2 independent leadscrews...?

    The important values of my config.g are:

    ; Leadscrew setting
    M584 X0 Y1 Z4:2 E3				   			; Define drive mapping- Z= driver number 2 and 4.
    M671 X-77:297 Y20:20 S3			           			; Set position of the leadscrews
    
    ; BLtouchZ-Probe
    M307 H3 A-1 C-1 D-1                                			; Disable the 3th heater on PWM channel for BLTouch
    M558 P9 H5 F180 T15000                             			; Set Z probe type/mode 9. H=Dive Height. F=Speed the bed moves
    G31 P25 X+26.9 Y5.935 Z1.065                      			; Set Z probe trigger value, offset and trigger height
    

    Now did the same test again:

    M561
    G30 P0 X20 Y20 Z-99999
    G30 P1 X200 Y20 S-1 Z-99999 
    

    and

    M561
    G30 P0 X20 Y20 Z-99999
    G30 P1 X200 Y20 H20 Z-99999 S-1
    

    Results were:

    G32 bed probe heights: 0.147 0.155, mean 0.151, deviation from mean 0.004
    G32 bed probe heights: 0.137 0.145, mean 0.141, deviation from mean 0.004
    

    So it seems, that as soon as you define independent leadscrews, the H-factor isn't taken into account any more?

    greetings kuhni



  • something else, I just found out:
    I can do a trick:

    M561					; clear any bed transformation
    G31 P25 Z0				; set trigger height to 0
    G30 P0 X20 Y20 Z-99999			; probe 1. point
    G31 P25 Z10 		     		; set trigger height to 10 
    G30 P1 X200 Y20 S-1 Z-99999 		; probe 2. point and tell result
    G31 P25 X+26.9 Y5.935 Z1.065 		; correct trigger height to standart
    

    Results:

    1. Both Z = 0:
    G32 bed probe heights: 1.205 1.227, mean 1.216, deviation from mean 0.011
    2. 1. Z = 0; 2. Z = 10:
    G32 bed probe heights: 1.205 -8.767, mean -3.781, deviation from mean 4.986
    

    So this seems to work...?


  • administrators

    I think I have spotted the problem. It looks to me that H parameters on G30 commands may not work if your system uses a deployprobe.g or retractprobe.g file. If I confirm this, I will fix it in the 2.02 release.


 

Looks like your connection to Duet3D was lost, please wait while we try to reconnect.