Recalibrating Z on a Delta



  • I am attempting to start over on my mini kossel and run a basic Z height check.
    I set the Z height to 355 (higher than my towers), saved the config. M665 R88 L215 B100 H355
    I powered off the Duet and powered back on.
    I think HOMED the carriage, put a piece of paper on the print bed and lowered the head down until it barely touched the paper.
    The reading Z height reading was 5.10. I took 355 and subtracted 5.10 = 349.90
    I modify config.g, M665 R88 L215 B100 H349.90

    I then follow directions under "Testing and Commissioning the Board" at this URL - https://miscsolutions.wordpress.com/mini-height-sensor-board/..

    I sent M558 P1 X0 Y0 Z0 to the Duet, I repeat the same process, lower head until touching paper, then send G92 Z0 as instructed, raise head 5mm, then G30 S-1 to probe.
    The result is 2.34, I added this to my G31 command in config.g …

    I click the Auto Delta Calibration button.

    Calibrated 7 factors using 16 points, deviation before 4.673 after 0.074
    Calibrated 7 factors using 16 points, deviation before 0.094 after 0.077

    Sent print job for printer to print, the head crashes into the bed and ruined my newly retaped bed...

    See picture -



  • What type of diagonal rods do you have on your printer and do you know there precise lengths if so pu that length in the M665 line and run you calibration at 8 factors Do not home printer between the calibration run and a print otherwise the cal details will be reset.

    When I run the auto cal I do it 2or 3 times them print out the M665 and M666 details and hand graft them into the Config.g

    HTH

    Doug


  • administrators

    Any changes you make to config.g won't take effect until you restart the printer. Also, a change to the M565 H parameter won't take effect until you home the printer. So try this:

    1. Delete config-override.g if it exists

    2. Restart the printer to ensure that your modified M565 parameter takes effect.

    3. Home the printer.

    4. Re-measure the Z probe trigger height. If necessary, adjust the G31 Z parameter in config.g, restart the printer and home it again.

    3. Temporarily increase the dive height to e.g. 15mm by sending M558 H15, in case your M565 H parameter is off.

    4. Run G32 twice to auto calibrate.

    5. Run M500 to save the new M565 and M566 values to config-override.g.

    6. If you don't have M501 near the end of config.g, or if you just want to be tidy, copy the M565 and M566 commands in config-override.g to config.g, replacing the original M565 and M566 commands.

    7. Before you start your first print, lower the head gradually to Z=0 and check that it really is at the right height. Then raise the head to Z=1mm and try a few XY moves to check it stays 1mm above the bed.

    HTH David



  • @Dougal1957:

    What type of diagonal rods do you have on your printer and do you know there precise lengths if so pu that length in the M665 line and run you calibration at 8 factors Do not home printer between the calibration run and a print otherwise the cal details will be reset.

    When I run the auto cal I do it 2or 3 times them print out the M665 and M666 details and hand graft them into the Config.g

    HTH

    Doug

    Hello and thank you for your input and time.

    I am not certain what is meant by, "what type of diagonal rods do you have". I'll say the cheap "carbon fber" rods that have those ball joint ends that you put screws through.
    Not the cool magnetic one's. Would those help??? The rods are absolutely as ture as they can be in parallel length. I've been through 3 sets of rods and am confident on the current set @ 217mm.

    Good point about the M665 line. I have rod length tweaked from previous calibration. I will set to 217mm and retest. -
    Current line is - M665 R88 L215 B100 H349.90
    I am a bit fuzzy on the R and B parameters. B = the mechanical size (limit) of the print area, R = the radius of the print area? I forget, but better look it up.

    I run auto calibrate after power-up or when the duet reboots (from a config change; so glad it asks to reboot!!!! \o/ )
    I run it about 3 times as well. I have noticed the dive height is different between first run and every run there after. The first run does not honor the Dive setting on my printer (or maybe it is only the first run that does and future runs are doing at 2x the original hieght.

    M558 P1 X0 Z0 H14 (the H parameter) for example, the head dives at different height on the first run different from all future runs.
    The default was H3; With H3 the IR probe would never reset between probe points. Move to H8, then it did. Recent betas of 1.19 on to RC's now I am at H14 to avoid IR probe triggering on first run. Nothing has changed physically.

    There is no storing of the calibration using M500 or M501 anywhere that I can see.

    Does anyone ever get to San Diego, California? Wanna stop by and give calibrating my delta a shot? I'll supply the beer, or ice water, whichever.

    DC42, ever take a vacation???

    OK, back to this - I will update M665 with L217 and try to re-understand the B and R parameters and report back.



  • RE - M665

    Ok, so I am happy with my existing M665 command for R and B. R is the radius of the bed (radius is the middle to edge), B is the safe printing area of that radius, so R88 is a 176mm round piece of glass (180 minus a few mm for the mounts), I have B100 as 100mm, I'd be happy with a 100mm working print area to start with, figured it would be easy. Can change B later.

    New M665 command: M665 R88 L217 B100 H349.90



  • @Dougal1957:

    Do not home printer between the calibration run and a print otherwise the cal details will be reset.

    I was told homing the printer would not lose calibration settings.

    By bed.g starts with a g28.. Actually, here are the first 3 lines of my bed.g file -

    M561 ; clear any bed transform, otherwise homing may be at the wrong height
    G31 X0 Y0 Z0 ; don't want any probe offset for this
    G28 ; home the printer

    I will try removing the G28 and see how it goes, ah all my print jobs start with G28. I'll circle back on this after responding to the next reply from DC42. 🙂



  • Your R is wrong.

    R is the Delta Radius.

    You need to home before Auto Calibration, so leave that in there. What they were eluding to is to not have a home command in the beginning of your print file gcode if you want to run a calibration before a print.



  • @dc42:

    Any changes you make to config.g won't take effect until you restart the printer. Also, a change to the M565 H parameter won't take effect until you home the printer. So try this:

    1. Delete config-override.g if it exists

    2. Restart the printer to ensure that your modified M565 parameter takes effect.

    3. Home the printer.

    4. Re-measure the Z probe trigger height. If necessary, adjust the G31 Z parameter in config.g, restart the printer and home it again.

    3. Temporarily increase the dive height to e.g. 15mm by sending M558 H15, in case your M565 H parameter is off.

    4. Run G32 twice to auto calibrate.

    5. Run M500 to save the new M565 and M566 values to config-override.g.

    6. If you don't have M501 near the end of config.g, or if you just want to be tidy, copy the M565 and M566 commands in config-override.g to config.g, replacing the original M565 and M566 commands.

    7. Before you start your first print, lower the head gradually to Z=0 and check that it really is at the right height. Then raise the head to Z=1mm and try a few XY moves to check it stays 1mm above the bed.

    HTH David

    Doing this now:

    1. Delete config-override.g if it exists –- DONE (did not exist)

    2. Restart the printer to ensure that your modified M565 parameter takes effect. -- DONE

    3. Home the printer. -- OK

    4. Re-measure the Z probe trigger height. If necessary, adjust the G31 Z parameter in config.g, restart the printer and home it again. -- OK
    To be clear, I am homing the printer, lowering the head so it touches a piece of paper, issuing the G92 Z0 command, raising head 5mm, then G30 S-1 ro probe the bed.
    Correct? That is what I will do. The result is 2.234. New G31 command, G31 X0 Y0 Z2.234 P500
    Saving.
    Power off.
    Wait.
    Power on.

    3. Temporarily increase the dive height to e.g. 15mm by sending M558 H15, in case your M565 H parameter is off. -- OK

    4. Run G32 twice to auto calibrate. -- OK
    (Changed to 8 factor)
    Calibrated 8 factors using 16 points, deviation before 4.771 after 0.147
    Calibrated 8 factors using 16 points, deviation before 0.217 after 0.105
    Second G32 took much longer to complete than first G32. Related to dive height.

    5. Run M500 to save the new M565 and M566 values to config-override.g. -- OK

    6. If you don't have M501 near the end of config.g, or if you just want to be tidy, copy the M565 and M566 commands in config-override.g to config.g, replacing the original M565 and M566 commands. -- OK
    I will opt to place the M501 at the end of config.g. Here is the contents of config-override.g:

    [[language]]
    ; Delta parameters
    M665 L217.000 R102.217 H347.590 B100.0 X1.191 Y-0.067 Z0.000
    M666 X1.704 Y-3.026 Z1.321 A-3.42 B2.30
    ...
    ; Z probe parameters
    G31 T1 P500 X0.0 Y0.0 Z0.00
    G31 T3 P500 X0.0 Y0.0 Z0.70
    G31 T4 P500 X0.0 Y0.0 Z0.00
    
    

    IS THERE A STEP 6A, REBOOT? I will do so.
    M501 is now the last line in config.g

    7. Before you start your first print, lower the head gradually to Z=0 and check that it really is at the right height. Then raise the head to Z=1mm and try a few XY moves to check it stays 1mm above the bed. – OK
    Homing delta, lowering head by 10mm steps instead of 100mm... The result of this test is that the head is not touching the piece of paper when it hits 0 and the IR probe LED is not on.
    Run Auto Delta Calibration - Calibrated 8 factors using 16 points, deviation before 0.146 after 0.108
    The result is the print head is not touching the piece of paper but the LED on the IR probe is lit.
    It appears the head is about 3 mm above the print bed.. (eyeballing it)
    Stopping here.


  • administrators

    Somehow the probe Z offset has been lost. You should be using M558 P1 (+ other parameters) in config.g for the IR sensor, so the G31 T1 command in config-override.g should have the same Z parameter as the G31 command in config.g. If you edit that in and restart, the head will be 2.234mm lower after auto calibration.



  • For some reason config-override.g has 3 G31 commands -
    G31 T1 P500 X0.0 Y0.0 Z0.00
    G31 T3 P500 X0.0 Y0.0 Z0.70
    G31 T4 P500 X0.0 Y0.0 Z0.00

    ??

    config.g has -
    M558 P1 X0 Z0 H10 ; Z probe is an IR probe and is not used for homing any axes
    G31 X0 Y0 Z2.234 P500 ; Starting over

    Maybe M558 needs Y0 ?



  • M558 P1 X0 Y0 is what I have in my config.



  • @number40fan:

    Your R is wrong.

    https://d2t1xqejof9utc.cloudfront.net/screenshots/pics/e9555e5af170ca229a9231ded5f2d736/original.JPG

    R is the Delta Radius.

    You need to home before Auto Calibration, so leave that in there. What they were eluding to is to not have a home command in the beginning of your print file gcode if you want to run a calibration before a print.

    Ok, I measure R and it is 97.5mm. Thanks, retesting.



  • G31 X0 Y12 Z3.093 P500 ; Set the zprobe height and threshold (put your own values here)

    This is config.

    G31 T1 P500 X0.0 Y12 Z3.093
    G31 T3 P500 X0.0 Y0.0 Z0.00
    G31 T4 P500 X0.0 Y0.0 Z0.00

    This is in config-override.g



  • Something is wrong in the steps above. After an auto calibration the hotend is always above the print surface by the value in G31 Z parameter.


  • administrators

    @Eddiie:

    For some reason config-override.g has 3 G31 commands -
    G31 T1 P500 X0.0 Y0.0 Z0.00
    G31 T3 P500 X0.0 Y0.0 Z0.70
    G31 T4 P500 X0.0 Y0.0 Z0.00

    ??

    config.g has -
    M558 P1 X0 Z0 H10 ; Z probe is an IR probe and is not used for homing any axes
    G31 X0 Y0 Z2.234 P500 ; Starting over

    Maybe M558 needs Y0 ?

    Send G31 X0 Y0 Z2.234 P500 and then M500 to update config-override.g. You probably created the config-override.g file before you put the G31 command in config.g.

    You can add Y0 to the M558 command, but it it the default anyway.



  • @dc42:

    Send G31 X0 Y0 Z2.234 P500 and then M500 to update config-override.g. You probably created the config-override.g file before you put the G31 command in config.g.

    You can add Y0 to the M558 command, but it it the default anyway.

    I have always had the G31 command in config.g.
    THAT might be the problem. Delete G31 and leave M558.
    Delete config-overide.g
    Reboot.
    THEN calibrate.
    Standby…....



  • @Eddiie:

    @number40fan:

    Your R is wrong.

    https://d2t1xqejof9utc.cloudfront.net/screenshots/pics/e9555e5af170ca229a9231ded5f2d736/original.JPG

    R is the Delta Radius.

    You need to home before Auto Calibration, so leave that in there. What they were eluding to is to not have a home command in the beginning of your print file gcode if you want to run a calibration before a print.

    Ok, I measure R and it is 97.5mm. Thanks, retesting.

    MUCH BETTER!!!!!!!!!!!!!!!!!!!!!!!!!!! Tallness is more inline with the actual. Width is better. Size is better!
    It is still smaller than what it should be, but wow what a difference. How to make it print bigger? More R?



  • @Eddiie:

    @dc42:

    Send G31 X0 Y0 Z2.234 P500 and then M500 to update config-override.g. You probably created the config-override.g file before you put the G31 command in config.g.

    You can add Y0 to the M558 command, but it it the default anyway.

    I have always had the G31 command in config.g.
    THAT might be the problem. Delete G31 and leave M558.
    Delete config-overide.g
    Reboot.
    THEN calibrate.
    Standby…....

    Hmmm…

    I changed Z height to 355.000, rebooted..
    Followed commissioning IR probe directions.
    New G31 command is G31 X0 Y0 Z2.96 P500 ; removed from config.g, rebooted, followed directions on commissioning IR probe.
    Added this to config.g but did not reboot. Instead, I pasted this G31 command into the G code console.

    Auto Delta Calibration #1 -
    Calibrated 8 factors using 16 points, deviation before 8.461 after 0.150

    Auto Delta Calibration #2 -
    Calibrated 8 factors using 16 points, deviation before 0.227 after 0.138

    Home,
    Lower hot end 400mm

    The result is the hotend stops before reaching the print bed.
    It seems to stop immediately when the LED comes on the IR probe.

    I swear there is a bug with the dive height on first run… The first time through on power up, is different than next runs!!! Can someone please confirm?
    Set M558 command to H20 (I use H10) just to be obvious… Reboot, home, Auto Delta Calibration...

    Powercycle the Duet... Home, Move down 400mm and the result is the hotend stops at the print bed!!!!!!! YES!
    Do I NOT run Auto Delta Calibration EVER again?

    Can we set up a Skype and get this worked out?



  • Trying to do it manually, I am in this endless loop of changing end stop offsets and height settings using the paper technique at the center, X, Y, and Z towers. Center is nice, move to a tower, it is either too tight or too loose, make adjustment using M666, then center gets loose, adjust height, then towers are tight/loose again.



  • Are you using config-override.g at all?


 

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