Mesh grid compensation - Setup on Initial Gcode
-
@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.
-
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.
-
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
-
@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 messageG29 S1 ;use mesh grid to compensate
G92 E0
G1 F1200 E10
G92 E0Can 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
-
@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...
-
@FelixH well you have a delta so homedelta is your homeall far as I know.
-
that was my thought as well, but given it still does not work as it should...
-
For the sake of taking another fresh run at this, can you please provide your current config.g, bed.g, homedelta.g, your start gcode, a picture of your mesh heightmap, and a summary of the problem as it currently is?
-
The summary of the problem:
The following warning is thrown at the PanelDue / Webinterface every time I try to print something:
Warning: the height map was loaded when the current Z=0 datum was not determined probing. This may result in a height offset.
even though and as far as I have been able to see, it's the right way to do it. The probe I use is one that was delivered with my printer, one of those limit switches attached with a magnet. I can understand how this is not the ideal probe, but so far is the one I have, and I see no reason for the warning message.
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
bed.g
; bed.g ; called to perform automatic delta calibration via G32 ; ; generated by RepRapFirmware Configuration Tool on Thu Jul 12 2018 20:54:00 GMT-0500 (Central Daylight Time) M561 ; clear any bed transform G28 ; home all towers ; Probe the bed at 6 peripheral and 3 halfway points, and perform 6-factor auto compensation ; Before running this, you should have set up your Z-probe trigger height to suit your build, in the G31 command in config.g. G30 P0 X0 Y104.9 H0 Z-99999 G30 P1 X90.85 Y52.45 H0 Z-99999 G30 P2 X90.85 Y-52.45 H0 Z-99999 G30 P3 X0 Y-104.9 H0 Z-99999 G30 P4 X-90.85 Y-52.45 H0 Z-99999 G30 P5 X-90.85 Y52.45 H0 Z-99999 G30 P6 X0 Y52.4 H0 Z-99999 G30 P7 X45.38 Y-26.2 H0 Z-99999 G30 P8 X-45.38 Y-26.2 H0 Z-99999 G30 P9 X0 Y0 H0 Z-99999 S6 ; Use S-1 for measurements only, without calculations. Use S4 for endstop heights and Z-height only. Use S6 for full 6 factors ; If your Z probe has significantly different trigger heights depending on XY position, adjust the H parameters in the G30 commands accordingly. The value of each H parameter should be (trigger height at that XY position) - (trigger height at centre of bed)
homedelta.g
; 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
initial g-code
G28 ; home all axes M291 P"Attach probe" R"Warning" S3 ; warning message 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 G28; home again, in case the effector move by the removal of the probe G29 S1 ;use mesh grid to compensate G92 E0 G1 F1200 E10 G92 E0
Picture of the mesh: please see avobe, I haven't measured again since
Many thanks for your worries!
-
While testing, I have just seen that when the G30 command is triggered, the following warning is shown on the Web Interface, but not on the PanelDue display:
Error: Z probe already triggered at start of probing move
which I don't understand because is seems ok when it maps the bed...
-
@FelixH said in Mesh grid compensation - Setup on Initial Gcode:
Error: Z probe already triggered at start of probing move
That's odd. Does the switch signal need to be inverted?
-
@Phaedrux said in Mesh grid compensation - Setup on Initial Gcode:
@FelixH said in Mesh grid compensation - Setup on Initial Gcode:
Error: Z probe already triggered at start of probing move
That's odd. Does the switch signal need to be inverted?
I tried to invert it with the expected result: crash onto the bed. I followed all the articles I could possibly find and I'm pretty sure the probe is well connected. When is is deployed (aka connected) the light on the board is lit and the Z prove value on the web interface is 0. When I press the switch, the value ramps up to 1000 and the led is off...
I'm really running out of thing to try