Warning: the height map has a substantial Z offset
-
-
; Configuration file for EMW ULTIMATE XL. RTFM! https://duet3d.dozuki.com/
M111 S0 ; Debug off
M550 PULTIMATE XL ; Machine name and Netbios name (can be anything you like, PREFIX WITH CAPITAL P)
M551 Preprap ; Machine password (used for FTP);*** NETWORKING
M552 S1 ; Turn network on
M555 P2 ; Set output to look like Marlin
G21 ; Work in millimetres
G90 ; Send absolute coordinates...
M83 ; ...but relative extruder moves; DRIVES
M584 X0 Y1:4 Z2 E3 ; DRIVE MAPPING. EXAMPLE: X0 IS X AXIS MAPPED TO DRIVE 0
M569 P0 S0 ; DRIVE 0 DIRECTION. X AXIS S1 OR S0 FOR DIRECTION
M569 P1 S1 ; DRIVE 1 DIRECTION. Y AXIS M1 S1 OR S0 FOR DIRECTION
M569 P2 S0 ; DRIVE 2 DIRECTION. Z AXIS S1 OR S0 FOR DIRECTION
M569 P3 S1 ; DRIVE 3 DIRECTION. EXTRUDER S1 OR S0 FOR DIRECTION
M569 P4 S1 ; DRIVE 4 DIRECTION. Y AXIS M2 S1 OR S0 FOR DIRECTIONM350 X16 Y16 Z16 E16 I1 ;M350 MICROS STEPPING
M92 X200 Y200 Z400 E409 ;M92 SET STEPS PER MM
M201 X2500 Y2500 Z2500 E2500 ;M201 ACCEL MM/S
M203 X20000 Y20000 Z3500 E5000 ;M203 MAXIMUM SPEEDS MM/M
M566 X700 Y700 Z500 E800 ;M566 JERK MM/S
M906 X1900 Y1600:1600 Z1400 E1100 I30 ;M906 SET MOTOR CURRENT IN mA. I VALUE IS IDLE CURRENT PERCENT
M84 S30 ;M84 MOTOR CURRENT IDLE TIMEOUT IN SECONDS.; AXIS LIMITS
M208 X-27 Y-22 Z-3.0 S1 ; SET MIN TRAVEL
M208 X295 Y295 Z298.85 S0 ; SET MAX TRAVEL. Z MAX VALUE DURING INTIAL CALIBRATION IS TUNED HERE; ENDSTOPS
M574 X1 Y1 S1 ; SET ACTUVE LOW ENDSTOPS
M574 Z2 S1 ; SET ACTIVE HIGH ENDSTOPS; LINEAR ADVANCE
M572 D0 S0.03
; Z PROBE
M557 X0:290 Y0:290 S19.333 ; M557 SET PROBE GRID AND SPACING
M558 P4 F300 H2 I1 T10000 A4 S0.01 R0.8 X0 Y0 Z ; Z probe is presicion touch porbe, normaly openG31 X0 Y0 Z69.92 P5 ; G31 SET Z PROBE OFFSETS. ADJUST THIS Z VALUE PER CALIBRATING PROBE HEIGHT MACRO
; PROBE COMPENSATION TAPER.
;M376 H10 ; TAPER HEIGHT FOR GRID COMPENSATION. SLOWLT TAPER COMPENSTION UP TO SET HEIGHT. ONCE AT HEIGHT COMPENSATION WILL NOT BE IN EFFECT. DISABLED BY DEFAULT (EMW ULXL)
; TEMPERATURE SENSOR PARAMETERS
M305 P0 T100000 B3950 R4700 H0 L0 ; BED SENSOR IS 100K THERMISTOR WITH BETA VALUE OF 3950. DUET WIFI INLINE RESISTOR 4700
M305 P1 T100000 B4725 C0.0000000706 R4700 H0 L0 ; HOT END SENSOR IS 100K THERMISTOR WITH BETA VALUE OF 4725. DUET WIFI INLINE RESISTOR 4700. C VALUE IS COMPENSATION VALUE AT HIGHER TEMPS.; HEATER TUNING PID
-
; HEATER TUNING PID
M307 H0 A522.8 C1351.1 D19.3 B0 ;H0 IS HEAT BED. AUTOTUNED NOV. 2019 EMW ULXL
M307 H1 A408.1 C196.0 D4.6 B0 ;AUTOTUNED RESULTS STOCK E3D HEMERA;HEATER SAFETY
M143 H0 S105 A1
M143 H1 S305 A1; FANS
M106 P0 S-1 L0.2 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
M106 P1 S1.0 F500 H1 T45 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on
M106 P2 H100:101 T35:45 L0.6; 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
T0; POWER FAILURE RECOVERY. EMW ULXL REQUIRES SEPERATE MODULE TO WORK. PLEASE CONTACT ELITE MACHINE WORKS FOR DETAILS.
M911 S23.5 R23.9 P"M913 X0 Y0 G91 M83 G1 Z3 E-1 F1000"
; Custom settings
M581 E0:1 S0 T1 C1
M581 E0:1 S0 T0 C1; BED HEATER RELAY ACTIVATION WHEN POWERING ON OR REBOOTING PRINTER.
M80 ; TURN BED HEATER RELAY ON
-
@downshift64 said in Warning: the height map has a substantial Z offset:
include it where
Well I have a macro that I execute to create the height map so the G30 and G29 go there along with any other commands needed. My macro file doesn't actually look like this as I have included the contents of a few other macros into this code.
; ----- configure z probe ----- M307 H7 A-1 C-1 D-1 ; step 1 - disable E6 heater to enable PWM5 M558 P9 H2 F600 T12000 A5 S0.01 R0.2 ; step 2 - set probe configuration - part 1 G31 X0 Y24.5 Z1.525 P25 ; step 3 - set probe configuration - part 2 M280 P7 S160 ; clear BLTouch alarm (if any) ; ----- set Z=0 datum using probe ---- G29 S2 ; cancel mesh bed compensation M290 R0 S0 ; cancel baby stepping G90 ; absolute moves G1 Z10 F600 ; position on Z for probing G1 X0 Y-25 ; position on XY for probing G30 ; do single probe - sets Z to probe trigger height ; ---- create height map ----- M208 Y-155:145 ; adjust axis min/max values as needed to allow for Z probe offset M557 X-130:130 Y-130:130 S20:20 ; define mesh for G29 G29 ; do probing and create height map file M208 Y-145:145 ; reset axis min/max values G29 S2 ; cancel mesh bed compensation M290 R0 S0 ; cancel baby stepping G1 Z5 F600 ; move nozzle away from bed
-
I also have a macro for loading the height map. The macro I have for starting a print invokes this file.
Notice here that I am showing the invoking of the macros for configuring the probe and setting the Z=0 datum.
The code that performs these function, that I included the previous post, is essentially what is in these two macros.
M98 P"configprobe.g" ; configure Z probe M98 P"probeZ.g" ; set Z=0 Datum G29 S1 ; load height map M376 H10 ; set bed compensation taper
-
thank you i will give them a try does it matter where i put these commands in the config.g
-
i dont use a BLTouch i attach a probe then when i am done take it off and usually dont use it again unless something changes
-
@downshift64 said in Warning: the height map has a substantial Z offset:
thank you i will give them a try does it matter where i put these commands in the config.g
They should NOT be part of config.g.
If you do like I do and create the height map manually by invoking the macro you would create a macro to do that.
If you wish to create the height map on every print you should invoke the code when starting a print.
As to loading the height map it should be part of the code you invoke when starting a print.
I have my slicer invoke a macro called "print_begin.g". All of the code needed to prepare for printing is in that macro.
Also In this macro I invoke the macro to load the height map.
Frederick
-
damn i wish this was easier
-
@downshift64 said in Warning: the height map has a substantial Z offset:
i dont use a BLTouch i attach a probe then when i am done take it off and usually dont use it again unless something changes
Hmm...
Then I don't know how you are going to set the Z=0 datum without a Z probe.
I have found that I needed to install a BLTouch as the Z=0 setting changed as the bed assembly heated up. So each print potentially needed to have Z=0 set again - which is what I do now.
Frederick
-
i heat the bed up then probe it and save the height map i have something that uses that each time i start a new print
-
@downshift64 said in Warning: the height map has a substantial Z offset:
damn i wish this was easier
If you have a Z probe AND make use of macros called via M98 it can be fairly straightforward and easy to maintain.
Frederick
-
my slicer start g code
G90 ; use absolute coordinates
M83 ; extruder relative mode
M104 S[first_layer_temperature] T0 ; set extruder temp
M140 S[first_layer_bed_temperature] ; set bed temp
M190 S[first_layer_bed_temperature] ; wait for bed temp
M109 S[first_layer_temperature] T0; wait for extruder temp
G28 ; home all without mesh bed level
G29 S1 ; mesh bed leveling
G1 Z0.25 F2500
G1 Y0 F1000.0 ; go outside print area
G92 E0.0
G1 X60.0 E9.0 F1000.0 ; intro line
G1 X100.0 E12.5 F1000.0 ; intro line
G92 E0.0
M221 S{if layer_height<0.075}100{else}95{endif} -
@downshift64 said in Warning: the height map has a substantial Z offset:
i heat the bed up then probe it and save the height map i have something that uses that each time i start a new print
The problem is the height map is referenced to the Z=0 datum when the height map is created.
When the height map is loaded it expects that Z=0 datum to be the same value.
Without a Z probe I'm not sure how to handle it other than assuming Z=0 is a fixed value and never changes.
Frederick
-
ya once i get height map it is a fixed value and should never change really
-
@downshift64 said in Warning: the height map has a substantial Z offset:
ya once i get height map it is a fixed value and should never change really
That has not been my experience with my printers but if yours is unchanging that is great.
Frederick
-
its an Ulitmate XL from Elite Machine Works its a solid bed
-
Post your home all.
The warning is a warning, it may not apply to you, but without seeing your homing files I can't say. Your slicer start gcode does a G28 to home the printer and then G29 S1 to load the heightmap. What we don't know is what homeall.g is doing to home the printer. Is it using an endstop, or a zprobe? That's where the potential for an offset lies. You probably updated the firmware from a version that didn't have the warning to one that does. If your first layer is still good, then you have no problem and you can ignore it. Or if you want to get rid of it, post your homeall so we can see what's going on with the gcode.
-
thank you i would like to get rid of it
G91 ; relative mode
G1 S1 Z310 F3500 ; move Z towards the switch until it triggers
G1 Z-4 F900 ; move Z back 10mm
G1 S1 Z6 F600 ; move Z slowly towards the switch until it triggers
G1 Z-4 F900 ; move Z back 10mm
G1 S1 Z6 F400 ; move Z slowly towards the switch until it triggersG1 X-340 F7000 S1 ;
G1 X4 F600 ; move slowly 4mm in the +X direction
G1 X-5 S1 ; move slowly 10mm in the -X direction, stopping at the homing switchG1 Y-340 F7000 S1 ; move up to 240mm in the -Y direction, stopping if the homing switch is triggered
G1 Y5 F600 ; move slowly 4mm in the +X direction
G1 Y-6 S1 ; move slowly 10mm in the -X direction, stopping at the homing switchG4 P0 ; CLEAR BUFFER IN ORDER TO PROPERLY LOAD SAVED GRID
G90
;G29 S1 ; LOAD SAVED BED GRIDG4 P0 ; CLEAR BUFFER AFTER LOADING GRID
G1 X0 Y0 F8000
-
@downshift64 said in Warning: the height map has a substantial Z offset:
G4 P0 ; CLEAR BUFFER IN ORDER TO PROPERLY LOAD SAVED GRID
Hi,
I see the comment but I don't understand the purpose.
What buffer do you think needs clearing to load the height map?
I have never used G4 P0 and everything works just fine.
Thanks.
Frederick