Z Offset + ABL + Mesh Bed Leveling: What am I doing wrong?



  • 2_1525528781065_heightmapPeiBedNoZoffset3.csv.txt 1_1525528781064_config.g.txt 0_1525528781064_heightmapPeiBedWithZOffset.csv.txt 2 weeks and every print fails because I cant get the nozzle to to correct distance from the bed. The duet just seems to refuse to accept the Z Offset.

    CR10S + BL Touch

    I have tried everything except baby stepping.

    This is what I do;

    1. Heat the Bed and Nozzle to my desired temperature.
      Nozzle: 200C Bed 60C (PLA on PEI Bed)
    2. Perform Setting the Z Offset by using
      G28 (Home to center of the bed)
      G1 Z0
      G92 Z5
      Lowering the Nozzle util it touches the bed (I use a 0.05mm Feeler gauge then one more 0.1- Drop)
      G92 Z0
      I then do 5 x G1 Z10 & G30 S-1 and take the average.
      I then add the following to my config.g

    ;G31 X-40 Y-10 Z0 P25 I1 ; Set Probe Offset and Z height to 0 ready for calibration
    ;G31 X-40 Y-10 Z1.458 P25 I1 ; 0mm (1.458)
    ;G31 X-40 Y-10 Z1.278 P25 I1 ; Set Probe Offset and height for z = nozzle gap (0.18mm) for a layer height of 0.2mm
    ;G31 X-40 Y-10 Z1.338 P25 I1 ; Set Probe Offset and height for z = nozzle gap (0.12mm) for a layer height of 0.15mm
    ;G31 X-40 Y-10 Z1.378 P25 I1 ; Set Probe Offset and height for z = nozzle gap (0.08mm) for a layer height of 0.1mm

    I have then tried doing mesh bed leveling leaving the offset at 0 and then setting the offset to my Desired Nozzle gap;
    I have also tried setting my Z Offset to my desired nozzle gap and then doing the mesh bed leveling.

    When I watch the 1st layer I can physically see the nozzle is no where near the bed surface.

    Anybody any ideas what I'm doing wrong ?

    The only thing I can think of is to move my BL Touch pin over to the location where nozz was set to 0 and do my G30 S-1 from there.
    This would be in case over the 40mm offset between my nozzle and the BL Touch pin there was a significant deviation in the bed height.

    [2_1525528705710_heightmapPeiBedNoZoffset3.csv](Uploading 100%) [1_1525528705710_config.g](Uploading 100%) [0_1525528705710_heightmapPeiBedWithZOffset.csv](Uploading 100%)

    1_1525528822021_duetPeiBedWithZOffset.PNG 0_1525528822020_duetPeiBedNoZOffset3.PNG


  • administrators

    @simonboydfoley said in Z Offset + ABL + Mesh Bed Leveling: What am I doing wrong?:

    Perform Setting the Z Offset by using
    G29 (Home to center of the bed)

    1. Did you mean G28 ?

    ;G31 X-40 Y-10 Z1.278 P25 I1 ; Set Probe Offset and height for z = nozzle gap (0.18mm) for a layer height of 0.2mm

    Don't mess around with the G31 Z parameter depending on layer height. The G31 Z parameter should be set to exactly the Z probe trigger height. Your slicer will command the nozzle to the first layer height before it starts printing, e.g. it will send the nozzle to Z=0.2 if the first layer height is 0.2mm. If instead you want it to start at 0.18mm, use babystepping to step 0.02mm down.


  • administrators

    @dc42 said in Z Offset + ABL + Mesh Bed Leveling: What am I doing wrong?:

    @simonboydfoley said in Z Offset + ABL + Mesh Bed Leveling: What am I doing wrong?:

    Perform Setting the Z Offset by using
    G29 (Home to center of the bed)

    1. Did you mean G28 ?

    ;G31 X-40 Y-10 Z1.278 P25 I1 ; Set Probe Offset and height for z = nozzle gap (0.18mm) for a layer height of 0.2mm

    Don't mess around with the G31 Z parameter depending on layer height. The G31 Z parameter should be set to exactly the Z probe trigger height. Your slicer will command the nozzle to the first layer height before it starts printing, e.g. it will send the nozzle to Z=0.2 if the first layer height is 0.2mm. If instead you want it to start at 0.18mm, use babystepping to step 0.02mm down. You can do that in your slicer start GCode.



  • Yes, I meant G28 not G29 I have corrected that now.

    I have just set my Z Offset back to the initial measured value as you suggested and it now works .... I have my 1st working print!

    I use a nozzle wipe which you can see in the foreground ... when I tried this in the past you can see that the bed compensation does not seem to work and the nozzle grinds into the front of the bed. At this point when I tried this I usually stopped the print to save damaging the bed\nozzle.

    This time I left it and the print in the center of the bed and the 1st layer started to bind to the surface correctly.

    0_1525531864443_Print.PNG

    Thanks

    I'm am now really puzzled because when I was using Marlin this is always what I did and it always worked 100% :-0

    It would be unusual for the slicer to behave differently between Marlin and RepRap .... I dont know why I would not have had this problem with Marlin ... technically I should have.



  • Right I have figured it out

    My Nozzle Wipe is in my Cura Start G Code section.
    Cura does not compensate for the the Nozzle gap\Layer height in the Start GCODE section.... hence the prints always looked wrong (no nozzle gap to extrude filament) leaving my z offset to the full amount.

    Unless I had set my Z Off Set in my config.g set to take in consideration my expected layer height, my Nozzle Wipe print would look to close to the bed.
    However when I did compensate for the nozle gap in my Config.g The nozzle wipe 1st layer always looked good .... but it was always when the main print happened that the gap suddenly appeared to big and my prints fail.

    So Cura only applies the layer height correction in the main body of the GCODE Print not the start GCODE.

    Now in Marlin in the Start GCODE I always did a full bed mesh calibration (G29) followed by a Nozzle Wipe before every print!

    G28 ;Home
    G1 Z15.0 F6000 ;Move the platform down 15mm
    G92 E0
    G1 F200 E3
    G92 E0

    G4 P100 ; delay for BLTouch
    G29 ; auto bed leveling
    M190 S{material_bed_temperature}
    M109 S{material_print_temperature}
    M117 Nozzle Clean
    G1 X10 Y40 Z0 F1500
    G1 X290 E100 F1500
    G92 E0

    So I am wondering if the G29 in Marlin start GCODE affected/overwrote the Layer Height compensation made by the Slicer in the main body of the GCODE?!?


  • administrators

    @simonboydfoley said in Z Offset + ABL + Mesh Bed Leveling: What am I doing wrong?:

    G1 X10 Y40 Z0 F1500

    Don't use Z0 to do the nozzle wipe, try e.g. Z0.1 or Z0.2.


 

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