Mesh Bed Leveling Not moving bed



  • Hi

    I am finding that mesh bed leveling is not moving the bed. I have even tried with a really badly distorted bed, and still the z axis does not move

    Running M122 I get

    Bed compensation in use: none, comp offset 0.000

    My homez is

    ; homez.g
    ; called to home the Z axis
    G29 S2
    G91 ; Relative mode
    G1 S2 Z5 F5000 ; Lower the bed
    G90 ; back to absolute positioning
    G1 X150 Y100 F50000 ; Position the endstop above the bed centre
    G91 ; Relative mode
    G4 P500 ; wait 500msec
    G1 Z-300 S1 F1000 ; Move Z down until the switch triggers (first pass)
    G4 P500 ; wait 500msec
    G1 Z5 F5000 ; Lift Z
    G4 P500 ; wait 500msec
    G30
    G4 P500 ; wait 500msec
    G1 Z5 F5000 ; Drop the Bed
    G90 ; Back to absolute positioning

    the start of my GCODE calls

    G28 ; Home All Axis
    G29 S0 ; Probe Bed For Mesh Bed Levelling

    and homeall just calls homex, homey and homez

    any thoughts?

    Is there anyway to see the compensation moves as I understand the z position on the webpage is just the commanded 'overall' not including the compensation

    Cheers

    Matt



  • If your bed is twisted or wraped below Z0.0 then your Z axis travel limits must be set to allow the Z axis to travel below 0.0 (M208 settings in your config.g file)

    See https://duet3d.dozuki.com/Wiki/Gcode#Section_M208_Set_axis_max_travel

    So if your bed is warped to .6 below Z 0.0 then set your M208 Z-.6 S1 in config.g.

    Then the hotend can follow the bed wrap below Z0.

    *** caution - you will have the ability to move your hotend Z axis to -.6 which could cause a crash into the bed if you don't have mesh comp turned on.

    You can turn on mesh comp at the end of your config.g file to help avoid crashes by adding a G29 S1 on the last line.



  • One more thing occurred after re-reading your post. You are turning on bed mesh comp right?

    Somewhere you need a G29 S1 to use the bed mesh comp.



  • Tim, yes, I do have a G29 S1, but my min z is 0 in the config so could well be the issue. I will try that now. Many thanks

    question, on G29 S1 vs S0. If I do G29 S0 do i actually need the S1 afterwards? Does the S0 not also turn it on as well as probe?



  • @CTRDevelopments said in Mesh Bed Leveling Not moving bed:

    Tim, yes, I do have a G29 S1, but my min z is 0 in the config so could well be the issue. I will try that now. Many thanks

    question, on G29 S1 vs S0. If I do G29 S0 do i actually need the S1 afterwards? Does the S0 not also turn it on as well as probe?

    Hi, Yes G29 S0 is suppose to turn on the bed mesh comp after probing per the gcode docs.

    "S0 (default if no S parameter) Probe the bed, save the height map in a file on the SD card, and activate bed compensation. The height map is stored in file is /sys/heightmap.csv."

    https://duet3d.dozuki.com/Wiki/Gcode#Section_G29_Mesh_bed_probe



  • I am still not getting any response from the mesh leveling. I have previously set up the C axis

    M584 X0 Y1 Z2 C7 E3:4:5:6
    M208 X-35:328.5 Y-49:243 Z-1:300 C0:500

    Cheers


  • Moderator

    Please post your full config.g and homeall.g

    What firmware version and board are you using?

    If you are getting Bed compensation in use: none then it is being turned off at some point.

    What happens if you send G29 S1 in the console and then send M122, does it show Bed compensation in use: mesh?

    Are you able to view the heightmap in DWC?



  • Firmware 2.05
    Sending G29 S1 and M122 gives ---- Bed compensation in use: mesh, comp offset 0.000
    Yes, I can view the heightmap and it has a max deviation of 0.3mm (deliberately bad to test)

    ; Configuration; Configuration file for Duet WiFi / Ethernet
    ; executed by the firmware on start-up

    ; General preferences
    M111 S0 ; Debugging off
    G21 ; Work in millimetres
    G90 ; Send absolute coordinates...
    M83 ; ...but relative extruder moves
    M555 P2 ; Set firmware compatibility to look like Marlin

    ; Network

    ; Removed Network Details for Post

    M552 S1 ; Enable Networking
    M586 P0 S1 ; Enable HTTP
    M586 P1 S0 ; Disable FTP
    M586 P2 S0 ; Disable Telnet

    M667 S1 ; Select CoreXY mode

    ; Endstops
    M574 X1 Y1 S3 ; Set X / Y endstop stall detection
    M574 Z1 S2 ; Set Z endstop probe
    M558 P7 X0 Y0 Z2 H3 F360 I0 T20000 ; Set Z probe type to switch, the axes for which it is used and the dive height + speeds
    G31 P200 X0 Y0 Z0 ; Set Z probe trigger value, offset and trigger height
    M557 X10:290 Y20:180 S40 ; Define mesh grid

    ; Drive direction
    M569 P0 S0 ; Drive 0 X
    M569 P1 S0 ; Drive 1 Y
    M569 P2 S1 ; Drive 2 Z
    M569 P3 S0 ; Drive 3 E0
    M569 P4 S0 ; Drive 4 E1
    M569 P5 S1 ; Drive 5 E2
    M569 P6 S1 ; Drive 6 E3
    M569 P7 S0 ; Drive 7 COUPLER
    M569 P8 S0 ; Drive 8 UNUSED
    M569 P9 S0 ; Drive 9 UNUSED

    M584 X0 Y1 Z2 C7 E3:4:5:6 ; Apply custom drive mapping
    M208 X-35:328.5 Y-49:243 Z-1:300 C0:500 ; Set axis maxima & minima
    M350 E8:8:8:8 C8 I0 ; Configure microstepping without interpolation
    M350 X16 Y16 Z16 I1 ; Configure microstepping with interpolation
    ;M92 X100 Y100 Z1600 C100 E417:417:417:417 ; Set steps per mm, Pre Hemera
    M92 X100 Y100 Z1600 C100 E417:417:199:417 ; Set steps per mm
    M566 X200 Y200 Z8 C2 E2:2:2:2 ; Set maximum instantaneous speed changes (mm/min) M566 X400 Y400 Z8 C2 E2:2:2:2
    M203 X35000 Y35000 Z1200 C5000 E5000:5000:5000:5000 ; Set maximum speeds (mm/min)
    M201 X2000 Y2000 Z400 C500 E2500:2500:2500:2500 ; Set accelerations (mm/s^2) M201 X6000 Y6000 Z400 C500 E2500:2500:2500:2500
    M906 X2000 Y2000 Z1330 C400 E1680:1680:1330:1680 I30 ; Set motor currents (mA) and motor idle factor in percent
    M84 S120 ; Set idle timeout

    ;Stall Detection
    M915 C S5 F0 H200 R4700 ; Coupler

    ;Stall Detection
    M915 X Y S5 F0 H400 R4700 ; X / Y Axes

    ; Heaters
    M305 P0 T100000 B4138 C0 ; Set thermistor
    M143 H0 S225 ; Set temperature limit for heater 0 to 225C

    M305 S"T0" P1 X201 ; Set thermistor
    M143 H1 S300 ; Set temperature limit for heater 1 to 300C

    M305 S"T1" P2 X200 ; Set thermistor
    M143 H2 S300 ; Set temperature limit for heater 2 to 300C

    M305 S"T2" P3 X203 ; Set thermistor
    M143 H3 S300 ; Set temperature limit for heater 3 to 300C

    M305 S"T3" P4 X202 ; Set thermistor
    M143 H4 S300 ; Set temperature limit for heater 4 to 300C

    ; Tools
    M563 P0 S"T0" D0 H1 ; Define tool 0
    G10 P0 X0 Y0 Z0 ; Reset tool 0 axis offsets
    G10 P0 R0 S0 ; Reset initial tool 0 active and standby temperatures to 0C

    M563 P1 S"T1" D1 H2 ; Define tool 1
    G10 P1 X0 Y0 Z0 ; Reset tool 1 axis offsets
    G10 P1 R0 S0 ; Reset initial tool 1 active and standby temperatures to 0C

    M563 P2 S"T2" D2 H3 ; Define tool 2
    G10 P2 X0 Y0 Z0 ; Reset tool 2 axis offsets
    G10 P2 R0 S0 ; Reset initial tool 2 active and standby temperatures to 0C

    M563 P3 S"T3" D3 H4 ; Define tool 3
    G10 P3 X0 Y0 Z0 ; Reset tool 3 axis offsets
    G10 P3 R0 S0 ; Reset initial tool 3 active and standby temperatures to 0C

    ; Fans
    M106 P0 S0 ; UNUSED
    M106 P1 S255 H1 T70 ; T0 HE
    M106 P2 S0 ; T0 PCF
    M106 P3 S255 H2 T70 ; T1 HE
    M106 P4 S0 ; T1 PCF
    M106 P5 S255 H3 T70 ; T2 HE
    M106 P6 S0 ; T2 PCF
    M106 P7 S255 H4 T70 ; T3 HE
    M106 P8 S0 ; T3 PCF

    M593 F50 ; cancel ringing at 50Hz
    M376 H4 ; bed compensation taper

    ;tool offsets ; Positive Value of Z moves the head closer to the bed
    G10 P0 X-9 Y39 Z-4.8 ; T0
    G10 P1 X-9 Y39 Z-4.8 ; T1
    G10 P2 X25.5 Y39 Z-5.6 ; T2
    G10 P3 X-9 Y39 Z-5.6 ; T3

    ;Heater PID
    M307 H0 A341.8 C197.6 D4.1 S1.00 V24.2 B0 ; Set PID tune for Heated Bed
    M307 H1 A200.0 C146.1 D3.0 S1.00 V24.3 B0
    M307 H2 A200.0 C146.1 D3.0 S1.00 V24.3 B0
    M307 H3 A718.8 C250.1 D3.3 S1.00 V24.4 B0 ;M307 H3 A200.0 C146.1 D3.0 S1.00 V24.3 B0
    M307 H4 A200.0 C146.1 D3.0 S1.00 V24.3 B0
    M307 H5 A200.0 C146.1 D3.0 S1.00 V24.3 B0
    M307 H6 A200.0 C146.1 D3.0 S1.00 V24.3 B0
    M307 H7 A200.0 C146.1 D3.0 S1.00 V24.3 B0

    ;deselect tools
    T-1

    ;M572 D0 S0.2 ; pressure advance T0
    ;M572 D1 S0.2 ; pressure advance T1
    ;M572 D2 S0.2 ; pressure advance T2
    ;M572 D3 S0.2 ; pressure advance T3

    ; homeall.g
    ; called to home all axes

    M98 Phomec.g ; Home C (ToolHead)

    M98 Phomey.g ; Home Y

    M98 Phomex.g ; Home X

    M98 Phomez.g ; Home Z

    G1 X150 Y-49 F15000 ; Park

    ; homez.g
    ; called to home the Z axis

    M98 P/macros/Coupler - Unlock ;Open Coupler

    G29 S2

    G91 ; Relative mode
    G1 S2 Z5 F5000 ; Lower the bed
    G90 ; back to absolute positioning

    G1 X150 Y100 F50000 ; Position the endstop above the bed centre

    G91 ; Relative mode

    G4 P500 ; wait 500msec
    G1 Z-300 S1 F1000 ; Move Z down until the switch triggers (first pass)

    G4 P500 ; wait 500msec
    G1 Z5 F5000 ; Lift Z

    G4 P500 ; wait 500msec
    ;G1 Z-300 S1 F300 ; Move Z down until the switch triggers (second pass)
    G30

    G4 P500 ; wait 500msec
    G1 Z5 F5000 ; Drop the Bed

    G90 ; Back to absolute positioning



  • @CTRDevelopments said in Mesh Bed Leveling Not moving bed:

    M376 H4 ; bed compensation taper

    aha, it seems to work if I comment out this line. Not sure why though?


Log in to reply