mesh bed compensation not applying correct corrections

  • As per the title im having some issues using mesh bed levelling on my new corexy machine.
    I've gone though the setup and configuration of a bltouch sensor following the very good guide on betrue3d site and have the sensor offset and homing of the machine via z probe working perfectly. The issue is when i go to print i run a G29 as part of my start Gcode from cura and it seems that the z motors are applying the wrong correction. consistently the front right is massively over squashed and the top left of my bed the filament is barley touching the build plate. I can see and feel that the motors are correcting but it seems like they are doing the inverse of what they should be doing! also i have checked with M122 that mesh is running and it shows that it is but allying a 0.000mm correction.

    I have rechecked the frame for squareness and that made no difference, I have changed the x gantry as i thought it might of been bowed again no difference and i have trawled thought the firmware but i cant seem to find what could be causing this behaviour.

    Ive tried to get the bottom of this and have spent the better part of two weeks trying to sort it but i cant figure out what is wrong so was hoping someone on here could steer me in the right direction.

    ivae attached my bed.g, config.g homeall.g, homex.g, homex.g and homez.g also my start gcode is as follows:

    ; Startup Gcode
    G91 ; Relative Positioning
    G1 Z-5 ; Move Z down 1mm
    G90 ; Absolute Positioning
    G28 ; Home machine
    G32 ;Check bed level
    G29 ;Run messh leveling
    G29 S1 ; Load hegight map
    G1 X5 Y5 ; Move Head to front left
    G92 E0 ; Zero Extruder
    G1 F200 E20 ; Prime the extruder
    G92 E0 ; Zero Extruder

    homez.g ,homey.g ,homex.g ,homeall.g ,config.g And bed.g

  • i could be wrong, but i thought you should only need G28 and G29 S1 if the machine is reliable you'd only need to run that once, not for each print as well

  • i tried running just G29 S1 in the start Gcode, same behaviour

  • Moderator

    Perhaps you need to run G32 a few times to get the bed to level out perfectly?

  • just done a cycle of 5 G32 commands and one after the other and i seem to have a consistent 0.100ish tilt, i do have 2 independent z axis motors could the correction not be applying itself correctly?

    28/01/2020, 00:55:40 G32
    Leadscrew adjustments made: -0.094 -0.111, points used 2, deviation before 0.103 after 0.000
    28/01/2020, 00:55:20 G32
    Leadscrew adjustments made: -0.104 -0.104, points used 2, deviation before 0.104 after 0.000
    28/01/2020, 00:55:01 G32
    Leadscrew adjustments made: -0.101 -0.104, points used 2, deviation before 0.103 after 0.000
    28/01/2020, 00:54:37 G32
    Leadscrew adjustments made: -0.104 -0.102, points used 2, deviation before 0.103 after 0.000
    28/01/2020, 00:54:14 G32
    Leadscrew adjustments made: -0.093 -0.100, points used 2, deviation before 0.097 after 0.000
    28/01/2020, 00:53:53 G32
    Leadscrew adjustments made: -0.122 -0.080, points used 2, deviation before 0.102 after 0.000

  • Moderator

    I'm not sure what to make of those results.

  • M671 x-60:353 Y140:140 S2                ; leadscrew at left (connected to z) and right (connected to

    are you shure that your first leadscrew is on pos x-60 y 140
    and the second is on x353 y140 ???

    if yes than the limits are wrong

    ; Axis Limits
    M208 X0 Y0 Z-1 S1                        ; set axis minima
    M208 X295 Y277 Z275 S0

    for example my working config with 3 leadscrews:

    M671 X0:380:0 Y52:190:327 S3 F1.0; Leitspindeln links und rechts von der X-Achse

  • so the stated points are from the machine origin ie 00 the left leadscrew is to the left of the heat bed and the right leadscrew is to the right of the heat bed so the machine cant physically reach those points. should the m208 also have these figures in?

  • Moderator

    @necrorat said in mesh bed compensation not applying correct corrections:

    should the m208 also have these figures in?

    No, M208 should define your reachable area. It's normal for the lead screws to be outside the print area. Your probe points should be as close as possible to the lead screws.

  • i dont think there should be a G29 S1 in the bed.g

  • M557 X23:270 Y9:265 P2 ; define mesh grid

    P2 will not result in a usable mesh.

    try S15

  • for the p parameter it was originally at 8 and behaved exactly the same. i am using two now to speed up iterations and to see if there is an improvement, so far the exactly the same behaviour despite the amount of probed points. as for the bed.g ill remove the G29 and see if that helps

  • @Phaedrux that was my understanding and have set them as such. the probe point is about 10mm in from the edge of the bed so as close as reasonably possible

  • one further question when taking the measurements for the where the leadscrews are positioned should i be taking the measurements from the nozzle or from the probe? (nozzle is 0,0)

  • Moderator

    I'm not sure I understand what you mean. The lead screws are fixed in relation to the bed, so their position is absolute. 0,0 is a point on the bed, the nozzle/probe/printhead is relative to that. The lead screw position would be relative to the 0,0 position in absolute coordinates.

    Does that make sense?

  • @Phaedrux so when i home my machine the print head moves to 0,0 which lines up with the printer nozzle being in the bottom left corner. what i wanted to check is that the bed compensation calculations where been done relative to the nozzle not the probe as the probe is offset approximately 23mm from the nozzle. so the above values would of been off but after digging and as you said the calcs are done from the nozzle for all intensive purposes and that is how i have it configured at the moment.

  • so an update to the issue. spent all of this evening re checking that the machine is as square as reasonably possible and have levelled the bed to as close as i can get it to perfectly flat

    height map.png
    but now when i go to load up the height map it gives me the error:
    G29 S1
    Error: G29: Failed to load height map from file heightmap.csv: failed to read line from file

    at this point i dont really need mesh compensation as get ting very nice first layers without the mesh but for completions sake i want to get everything working as intended and iron out the few areas that are slightly more squashed than others on the first layer. should i try reducing the number of probed points to try and get it to accept the height map? or just any steers in the right direction would be highly appreciated.

  • Moderator

    Can you upload that Height map. CSV?

  • @Phaedrux heightmap.csv there you go mate, appreciate the help so far!

  • Moderator

    I don't see anything in particular wrong with that file. Try deleting it from the SD card and re-running G29

Log in to reply