Warning: the height map has a substantial Z offset



  • 7/18/2020, 9:07:34 AM M98 P"0:/macros/PROBE BED GRID"
    Warning: the height map has a substantial Z offset. Suggest use Z-probe to establish Z=0 datum, then re-probe the mesh.
    256 points probed, min error -0.035, max error 0.396, mean 0.189, deviation 0.086
    Height map saved to file heightmap.csv
    Height map saved to file heightmap.csv
    where do i start in fixing this so i dont get this warning and make sure it is using my hieghtmap mesh



  • Are you doing a G30 to set the Z=0 datum?

    Frederick



  • sorry i dont know what that means



  • @fcwilt said in Warning: the height map has a substantial Z offset:

    G30 to set the Z=0 datum

    this is a new thing with my 3D printer worked fine up untill i tried to update it then that didnt go well so i went back to an older version worked fine for awhile then this warning started to pop up



  • @downshift64 said in Warning: the height map has a substantial Z offset:

    this is a new thing with my 3D printer worked fine up untill i tried to update it then that didnt go well so i went back to an older version worked fine for awhile then this warning started to pop up

    Well the warning occurs when the Z offset exceeds a certain amount. So that suggests something has changed as you have used the printer.

    The warning mentioned setting the Z=0 datum and that is what a G30 command does.

    "G30 ; Probe the bed at the current XY position. When the probe is triggered, set the Z coordinate to the probe trigger height.
    "

    You normally would do a G30 before doing a G29 to probe the bed to create the height map.

    You also would do a G30 before doing a G29 S1 command which loads the previously created height map.

    What action do you take to create the height map?

    Frederick



  • i calibrate my z probe height enter that in the config.g file under G31 then probe bed grid it saves the heightmap then thats it iam done



  • @downshift64 said in Warning: the height map has a substantial Z offset:

    i calibrate my z probe height enter that in the config.g file under G31 then probe bed grid it saves the heightmap then thats it iam done

    Well include the G30 in the two places I mentioned and see if you get better results.

    Frederick



  • include it where





  • ; 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 DIRECTION

    M350 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 open

    G31 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


Log in to reply