Mesh grid compensation - Setup on Initial Gcode



  • @fcwilt said in Mesh grid compensation - Setup on Initial Gcode:

    @FelixH

    You should NOT have to run a complete delta cal before every print.

    Another question: When you create the height map do you first do a G30?

    Frederick

    No, I don't think I did. I will try that this afternoon...



  • @Phaedrux said in Mesh grid compensation - Setup on Initial Gcode:

    Since your probe isn't exactly convenient for doing a G30 before each print, perhaps consider temporarily switching to the manual probe type (M558 P0) which would prompt you to jog the nozzle down until it touches the bed and then sets Z0 based on that.

    I get what you mean, but it would be really inconvenient, don't you think?. The probe I use is a really common type, I'd assume.



  • @fcwilt I did do a G30 before a height map. No change, same error same everything



  • @FelixH said in Mesh grid compensation - Setup on Initial Gcode:

    @Phaedrux said in Mesh grid compensation - Setup on Initial Gcode:

    Since your probe isn't exactly convenient for doing a G30 before each print, perhaps consider temporarily switching to the manual probe type (M558 P0) which would prompt you to jog the nozzle down until it touches the bed and then sets Z0 based on that.

    I get what you mean, but it would be really inconvenient, don't you think?. The probe I use is a really common type, I'd assume.

    Using a removable probe is fine for things like the delta cal process because it is done infrequently.

    It is not a probe that lends itself to setting the Z=0 datum which should be done before each print.

    Use the nozzle as a probe would allow you do set the Z=0 datum with hotend/bed at working temps.

    Post the two lines of gcode that you are executing to configure your probe AND post your most recent heightmap.

    Please and thanks.

    Frederick



  • @fcwilt said in Mesh grid compensation - Setup on Initial Gcode:

    Post the two lines of gcode that you are executing to configure your probe AND post your most recent heightmap.

    Please and thanks.

    Frederick

    The lines of code I use for the setup are on my initial post, if that's is what you mean. I will try to post the bed map, later this afternoon. But it looks quite ok, to be honest.

    What I cannot wrap my head around of, is why it is necessary to set this Z=0 datum thing every single time before printing. What does it change from print to print? Everything is static except for the effector...



  • I think the issue is more one of 'if holding current was removed from the motors'.
    In that case a minor position change is pretty much guaranteed.
    I have set up holding current and I have removed the automatic 'shut down the motors' command from my start/end scripts so as long as I don't switch off the power or reset the duet I only do an initial z zero run.



  • @jens55 said in Mesh grid compensation - Setup on Initial Gcode:

    I think the issue is more one of 'if holding current was removed from the motors'.
    In that case a minor position change is pretty much guaranteed.
    I have set up holding current and I have removed the automatic 'shut down the motors' command from my start/end scripts so as long as I don't switch off the power or reset the duet I only do an initial z zero run.

    Yeah, I have something similar on my config.g. Would you mind sharing the script you use? Also, which kind of probe do you use?



  • @FelixH said in Mesh grid compensation - Setup on Initial Gcode:

    The lines of code I use for the setup are on my initial post, if that's is what you mean. I will try to post the bed map, later this afternoon. But it looks quite ok, to be honest.

    Sorry but I do not see the two lines that configure a Z probe.

    What I cannot wrap my head around of, is why it is necessary to set this Z=0 datum thing every single time before printing. What does it change from print to print? Everything is static except for the effector...

    The heating of the hotend/bed can cause a change in the nozzle-to-bed spacing.

    On my printer my bed is a 5 mm piece of aluminum plate with a 3 mm piece of glass. The bed thermistor is part of the silicone heater and thus the bed appears to be up to temp before the temp of the entire mass has stabilized.

    Frederick



  • @fcwilt said in Mesh grid compensation - Setup on Initial Gcode:

    Sorry but I do not see the two lines that configure a Z probe.

    Sorry, did you mean on my config.g?

    ; Configuration file for Duet WiFi (firmware version 1.20 or newer)
    ; executed by the firmware on start-up
    ;
    ; generated by RepRapFirmware Configuration Tool on Thu Jul 12 2018 20:54:00 GMT-0500 (Central Daylight Time)
    
    ; General preferences
    G90                                                ; Send absolute coordinates...
    M83                                                ; ...but relative extruder moves
    
    ; After G32 auto-calibrate, copied from config-override.g
    ; Note: G31 Z (below) affects M665 H, and this is NOT yet calibrated.
    
    M665 L267.0 R132.382 H301.20 B106.0 X-0.174 Y0.096 Z0.0      ; Set delta radius, diagonal rod length, printable radius and homed height
    M666 X-0.14 Y-0.16 Z0.30 A0.00 B0.00                      ; Put your endstop adjustments here, or let auto calibration find them
    
    
    ; Network
    M550 P"Kossel"                                     ; Set machine name
    M552 S1                                            ; Enable network
    ;*** Access point is configured manually via M587
    M586 P0 S1                                         ; Enable HTTP
    M586 P1 S0                                         ; Disable FTP
    M586 P2 S0                                         ; Disable Telnet
    
    ; Drives
    M569 P0 S0                                         ; Drive 0 goes forwards
    M569 P1 S0                                         ; Drive 1 goes forwards
    M569 P2 S0                                         ; Drive 2 goes forwards
    M569 P3 S1                                         ; Drive 3 goes forwards
    M350 X16 Y16 Z16 E16 I1                            ; Configure microstepping with interpolation
    M92 X80 Y80 Z80 E96                                ; Set steps per mm
    M566 X300 Y300 Z300 E300                           ; Set maximum instantaneous speed changes (mm/min)
    M203 X12000 Y12000 Z12000 E12000                   ; Set maximum speeds (mm/min)
    M201 X3000 Y3000 Z3000 E3000                       ; Set accelerations (mm/s^2)
    M906 X1000 Y1000 Z1000 E1000 I50                   ; Set motor currents (mA) and motor idle factor in per cent
    M84 S30                                            ; Set idle timeout
    
    ; Axis Limits
    M208 Z0 S1                                         ; Set minimum Z
    
    ; Endstops
    M574 X2 Y2 Z2 S1                                   ; Set active high endstops
    
    ; Z-Probe
    M558 P4 H5 F120 T6000                              ; Set Z probe type to switch and the dive height + speeds
    G31 P1000 X0 Y0 Z16.10                             ; Set Z probe trigger value, offset and trigger height
    M557 R105 S20                                      ; Define mesh grid
    
    ; Heaters
    M307 H0 B0 S1.00                                   ; Disable bang-bang mode for the bed heater and set PWM limit
    M305 P0 T100000 B4267 C0 R4700                     ; Set thermistor + ADC parameters for heater 0
    M143 H0 S95                                        ; Set temperature limit for heater 0 to 120C
    
    M305 P1 T100000 B4267 C0 R4700                     ; Set thermistor + ADC parameters for heater 1
    M143 H1 S280                                       ; Set temperature limit for heater 1 to 280C
    
    M307 H1 A452.1 C123.2 D7.5 V12.5 B0                ;Hotend Autotune  //Changed
    M307 H0 A158.1 C 741.8 D0.7 V12.3 B0               ;Bed Autotune //Changed
    
    ; Fans
    M106 P0 S0 I0 F500 H-1                             ; PART FAN   -  Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
    M106 P1 S1 I0 F500 H1 T45                          ; HOTEND FAN -  Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on
    M106 P2 S0.20 I0 F500 H-1                          ; ELECTRONICS FAN - Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned off
    
    ; Tools
    M563 P0 D0 H1                                      ; 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
    
    ; Automatic power saving
    M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; Set voltage thresholds and actions to run on power loss
    
    ; Custom settings are not configured
    
    
    


  • I just run a G30 command followed by a "Run Mesh Grid" on the Machine Control tab of the web interface. I'm attaching a picture of how it looks like.

    Screenshot_2019-12-11 Kossel.png



  • Hi,

    OK I see the lines for configuring the z probe and they look ok.

    The height map looks pretty good too.

    Have you verified that after doing a G30 that at Z=0 the nozzle is just touching the bed?

    Frederick



  • @fcwilt said in Mesh grid compensation - Setup on Initial Gcode:

    Have you verified that after doing a G30 that at Z=0 the nozzle is just touching the bed?

    Frederick

    Well, it seems ok at the beginning, but tomorrow I will check it with a gauge or a sheet of paper. However, today after I did the G30 followed by the Mesh Calibration, I tried to print the model again and, aside from failing again, it also gave me the same error:

    Warning: the height map was loaded when the current Z=0 datum was not determined probing. This may result in a height offset.
    

  • Moderator

    Well the warning is telling you exactly what it says. At the point in time that the heightmap was loaded, the Z0 point wasn't defined by a G30 probe, so there could potentially be an offset between the actual bed surface is and where the Z0 is currently assumed to be based on endstop homing.

    Now if your homed height is perfectly correct, Z0 should touch the bed and the warning is just a warning. If your homed height is off, then Z0 will not be touching the bed and your heightmap won't be effective because of the offset.



  • @FelixH said in Mesh grid compensation - Setup on Initial Gcode:

    Well, it seems ok at the beginning, but tomorrow I will check it with a gauge or a sheet of paper. However, today after I did the G30 followed by the Mesh Calibration, I tried to print the model again and, aside from failing again, it also gave me the same error:

    Warning: the height map was loaded when the current Z=0 datum was not determined probing. This may result in a height offset.
    

    Perhaps the height map is being load somewhere else before you are doing the G30?

    Frederick


  • Moderator

    @FelixH said in Mesh grid compensation - Setup on Initial Gcode:

    G28 ; home all axes

    G1 Z15. ; go close to to the surface
    G30 ; Z=0 datum thing
    G1 Z75 ; go up a bit
    M291 P"Remove probe" R"Warning" S3 ; warning message

    G29 S1 ;use mesh grid to compensate
    G92 E0
    G1 F1200 E10
    G92 E0

    Can you post your homeall/homedelta?



  • @fcwilt said in Mesh grid compensation - Setup on Initial Gcode:

    Perhaps the height map is being load somewhere else before you are doing the G30?

    Frederick

    this is my initial Gcode, set on the Slicer. Clearly the G30 command is sent before the G29 S1

    G28 ; home all axes
    
    G1 Z15.  ; go close to to the surface
    G30        ; Z=0 datum thing
    G1 Z75    ; go up a bit
    M291 P"Remove probe" R"Warning" S3   ; warning message
    
    G29 S1  ;use mesh grid to compensate
    G92 E0
    G1 F1200 E10
    G92 E0
    


  • @Phaedrux said in Mesh grid compensation - Setup on Initial Gcode:

    Can you post your homeall/homedelta?

    ; homedelta.g

    ; called to home all towers on a delta printer
    ;
    ; generated by RepRapFirmware Configuration Tool on Thu Jul 12 2018 20:54:00 GMT-0500 (Central Daylight Time)
    G91                        ; relative positioning
    G1 S1 X355 Y355 Z355 F1800 ; move all towers to the high end stopping at the endstops (first pass)
    G1 X-5 Y-5 Z-5 F1800 S2    ; go down a few mm
    G1 S1 X10 Y10 Z10 F360     ; move all towers up once more (second pass)
    G1 Z-5 F6000               ; move down a few mm so that the nozzle can be centred
    G90                        ; absolute positioning
    G1 X0 Y0 F6000             ; move X+Y to the centre
    

    I don't have any homeall.g on my sys folder


  • Moderator

    @FelixH said in Mesh grid compensation - Setup on Initial Gcode:

    @fcwilt said in Mesh grid compensation - Setup on Initial Gcode:

    Perhaps the height map is being load somewhere else before you are doing the G30?

    Frederick

    this is my initial Gcode, set on the Slicer. Clearly the G30 command is sent before the G29 S1

    G28 ; home all axes
    
    G1 Z15.  ; go close to to the surface
    G30        ; Z=0 datum thing
    G1 Z75    ; go up a bit
    M291 P"Remove probe" R"Warning" S3   ; warning message
    
    G29 S1  ;use mesh grid to compensate
    G92 E0
    G1 F1200 E10
    G92 E0
    

    Yeah I'm not sure why it would still be giving you the warning about not establishing Z0 with a probe result when that's what your gcode order is doing.



  • @Phaedrux said in Mesh grid compensation - Setup on Initial Gcode:

    Yeah I'm not sure why it would still be giving you the warning about not establishing Z0 with a probe result when that's what your gcode order is doing.

    That's what I was hoping somebody could help me with...



  • Hi all,

    I've been brainstorming by myself for a couple of days again about it and I'm still on the same place... could it have something to do with the absence of homeall.g? When I tap on the "Home all" icon, it homes all the axes just fine...


Log in to reply