I have a Ender 5 Pro with a BLTouch auto bed leveler, running TH3D's version of Marlin: TH3D UFW 2.14. During my initial setup several months ago, I naively assumed that the BLTouch didn't need a manually leveled bed so I cranked the manual bed adjustment screws to be as compressed as possible. This has worked pretty well, until recent large prints have shown I need to adjust the back right of the bed as it's too low.

I adjusted all four of the the manual screws to be about halfway so I have room to play but when I run the Level Corners command, the first corner (front-left) is now way too high and the nozzle attempts to move several millimeters past where it should go (the plate moves up until it collides with the nozzle and then continues a few millimeters more...). I have tried poking every setting I can find but I cannot get the printer to reset what it thinks its z-offset should be.

Not sure what my next steps are as resetting bed leveling is not a common task from what I can tell.

  • $\begingroup$ It occurred to me that one could level the bed by physically moving the gantry and bed with the printer off. So I did that and a test print seems to be adhering to the bed much better than it ever has in the past. But before I answer my own question, I'd like to know if there's a better, don't-move-parts-yourself, way to do this adjustment. $\endgroup$
    – MyztikJenz
    Jun 18 at 16:27
  • $\begingroup$ Can you explain the "This has worked pretty well, until recent large prints have shown I need to adjust the back right of the bed as it's too low."? what's the difference between large prints and smaller prints? or do you mean that you were reaching the maximum printing volume and with the springs compressed you couldn't anymore (not sure why that would be) $\endgroup$
    – FarO
    Jun 18 at 19:40
  • $\begingroup$ Which version of Marlin? 2.14 doesn't exist; could be 2.0.1 or 2.0.4. $\endgroup$
    – 0scar
    Jun 18 at 22:20
  • $\begingroup$ @FarO Correct, I hadn't printed anything large enough that ran into the back right corner. Most of what I've been printing sits within a few centimeters of the center of the plate, so the problem wasn't as obvious until now (the print being 12cm square). $\endgroup$
    – MyztikJenz
    Jun 19 at 23:36
  • $\begingroup$ P.S. TH3D firmware tries to simplify the process of setting up a firmware by hiding features and pre-configuring features, although this makes it for some people easier to flash new firmware, it hides the inner workings and thus prevents the users to gain knowledge and experience in setting up their printer or what the printer is doing and why it is doing so. $\endgroup$
    – 0scar
    Jun 21 at 11:49

A BLTouch doesn't level the bed, it compensates for the geometry and adjusts print head movement, it is always required to tram (level) the bed with respect to the nozzle X-Y plane (of which the Z is perpendicular to this plane). If the build plate is skew, the bottom of the print will be skew, the top will be square with the head movement plane (the default compensation of the BLTouch is smeared out over the first 10 mm of the print, note this can be disabled or height changed).

To properly tram the bed, you need some room for the screws to go up and down. Home the X, home the Y and finally home Z. Then you jog the nozzle down (using a printer interfacing application over USB or the LCD from the printer itself, optionally you can use a console, the latter is very handy for sending G-code commands for the Z-offset determination later) to the bed to fit a sheet of A4 or Us Letter paper (alternatively, use feeler gauges) between the nozzle and the heated bed (pulling the paper should give you a little resistance), de-power the steppers and manually move the print head and bed to reach all corners and adjust the screws to have the nozzle at a paper distance of the bed. Note that if the nozzle will not reach to the bed, Z=0, you need to disable the Z endstop with M211 S0, don't forget to enable them after the Z-offset determination M211 S1. Do home the printer after each manual movement and screw adjustment as moving it manually may introduce some extra clearance of induced torque on the head. Doing this manually will prevent damaging the bed opposed to moving the head over the build surface using the LCD movement commands (scratching the surface). Manually, you will be able to stop when the nozzle hits the surface, if so adjust corner screw of the corner you are moving to. Repeat this sequence for each corner multiple times until the bed is parallel to the X-Y print head plane. Now you are ready to set Z-offset, which is found in this answer.

  • 1
    $\begingroup$ Your first paragraph should be included in the instructions with the BLTouch. It makes sense to me now that's what it does, but until you work out the failure, it's non-obvious. Plus I wasn't aware it reduces its compensation over the the first centimeter of the print. TIL. $\endgroup$
    – MyztikJenz
    Jun 19 at 23:45
  • $\begingroup$ Your instructions to tram the bed sound like they assume a z-endstop is installed. With a BLTouch installed, there isn't one and during the Level Corners step the BLTouch doesn't come into play (or doesn't for me, at least). I have yet to try driving the printer via a USB connection, I need to experiment with that. $\endgroup$
    – MyztikJenz
    Jun 19 at 23:51
  • $\begingroup$ @MyztikJenz Because the tramming of the bed is exactly the same. When homing Z it doesn't matter if you have a Z endstop or a sensor, note that a sensor is also an endstop! To be sure you can reset the Z-offset first, but that is not necessary. With the tramming instructions you are making sure the bed is parallel to the X-Y plane, with the Z-offset instructions you lower the nozzle to the bed. Please read Understanding of the auto bed leveling process (BLTouch). $\endgroup$
    – 0scar
    Jun 20 at 6:49

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.