MINI 2: Z height issue with varying XY for new machine

Perhaps a long shot, but if the X-axis is level, and the probing for the corners is working correctly, then it may be that your print surface is not level with respect to the 4 washers that the nozzle probes.

Check to see that the four washers are snug, and not tilted up from the spring-loaded pressure that’s pushing the glass and PEI up from beneath. The best way to do this is the use your thumb and forefinger to squeeze the glass to the bed beneath, releasing the pressure on the washer – the washer should not be able to be rotated by hand when you’ve done this. If it can easily spin, or if it visibly wobbles when you do the squeeze thing, then use an allen wrench to snug it up (don’t overtighten, the aluminum threads are easy to strip).

If the washers are ok, then check the bed for other issues – is your glass flat? Or (more likely) is your PEI layer level and properly adhered to the glass all around?

I have had the same issue and have been working with support but have not got anywhere to resolving yet. I have been too busy this week to continue the troubleshooting.


Thanks for the suggestions, I tried to check out the washers and they are flat against the glass. The auto-leveler definitely does go and touch them, it’s just failing to actually do the leveling…


What have they suggested so far? I’m not as patient as you lol, if I can’t get it fixed in a few days it’s going back to Amazon…

We have been working closely with marlin devs to try to get backlash compensation code added to upstream:

While we are working with upstream to get it more standardized across various platforms, we have included Z backlash compensation within Cura LE 3.2.23 for the Mini 2. We are planning to release this version as the next stable release later today or tomorrow, but can currently be downloaded here:

This implementation will measure any potential backlash is in your system for the Z drive, and compensate accordingly. We have found this is ideal to help with the first couple of layers, but is not required for the full part build. We fix this by “fading” out backlash compensation over a specified height on each print. We currently have all default profiles set to turn this compensation off after 1mm of height for the Mini 2 in Cura 3.2.23. This will insert a M425 F at each layer, to slowly reduce the how much it is compensating. How long this compensation lasts, or if it is activated is now within the quality as “backlash fading distance.”

In order to ensure that the start gcode changes, and the cura engine changes are working properly please be sure to clear your cache and add a new machine once installed. I will have some photos up in about 2 hours showing some squares with and without this activated for reference.

Cura LulzBot Edition has been updated to version 3.2.23 today and can now be downloaded from The changelog can be viewed here:

I upgraded to Cura 3.2.24 deleting the profile directory, upgraded the firmware (restoring z-offset, extruder steps didn’t change), readded the printer (did not usb connect) and tried the same test from before - 25 squares at .25mm standard defaults and here are the results:

Hard to capture details in a such a photo, but the fix does look like a bit of an improvement, especially the front-right part. The center sweetspot appears wider and more consistent with squishier diagonals, perhaps allowing rotation of longer thinner pieces appropriately… that said, the very bottom-right and top-left corners are still drastically different from their anti-axis counterparts and so I suspect using the full area will remain problematic for difficult prints, especially given how squished the extremes are, I will most likely have to raise the global z-offeset to avoid elephant foot there, thus again lowering adhesion in other places…

Will try re-making my failed piece, aligning it front-left to front-right as before just to test it out, but this is honestly not great for a $1500 machine. Is the defect present on all MINI 2s or just individual units? If the latter I’m thinking of trying a replacement, as utilizing the whole area at once is a big requirement for getting this printer in the first place.

Some of the issues might just be also because of the automatic leveling. I have 4 mini’s and the leveling is nice but when printing something that needs a consistent appearance on the part touching bedplate I always go to one of my taz 5’s with manual leveling since I can fine tune each corner and it stays consistent through each print restart.

I do wish that in the future there could be some way to manually fine tune the leveling on the mini and my taz 6

So Lulzbot, no other suggestions? I’m not sure I understand backlash in the first place to even know what to try to fix… is the difference in Z over XY caused by proximity to one or the other Z belts? Would tightening them to identical tension help?

Is this issue occurring on some individual machines or all mini 2s due to the z belts?

Backlash is present in moving mechanical designs. Think of backlash as the delay between you saying “Move!” and when it actually starts moving. This can be caused by gears within a motor, play between leadscrew drive systems, the stretch of a belt, and even any binding in a specific direction.

The LulzBot Mini 2 uses the G29 auto bed compensation feature to measure the print surface plane. Auto Bed Level compensation will slightly move your tool head axis up and down across the calculated print surface plane help get the perfect first layer.

Here’s the new built-in Z-axis backlash compensation process:

  1. Establish an electrical connection between the washer and the hot end nozzle.
  2. Send the move Z-axis up command (this happens automatically after each probe.)
  3. Measure the steps needed for the Z-axis stepper motor movements to break the electrical connection.
  4. This machine-specific backlash amount is added to your Z-axis movements, 100% at first, and is faded out after the first few layers.

    Cura LulzBot Edition version 3.2.23 and newer uses this backlash compensation to put in very small extra movements by the motor to compensate for this lash. As this backlash gets worked out after a few layers, we use less and less backlash compensation as the print progress. This allows for accurate prints while ensuring solid adhesion on the first layer. We have seen excellent results with the LulzBot Mini 2 and with our 0.25mm tool head (still in development) where we need to use a 0.2mm initial layer height.

This issue occurs on all moving machines (not just 3d printers) since you have to allow room for movement. We are exploring applying this backlash compensation to the X- and Y-axis as well, follow the progress here: So far, individual users across many different types of machinery are reporting benefits from this marlin inclusion.

There can be slight variances with probes. For example, if you have a slight amount of plastic on your nozzle, it will push through it before making contact with the washer. This will cause the printer to read that corner as lower than what it actually is, and affect your base layer across the build volume. A clean wiping pad will help mitigate this. Update your wiping and probing temperatures if you are using a filament brand that is not included within Cura LE. This will help ensure longer wiper pad life, cleaner nozzles, and better probes.

We tighten our Z belts to a range of 35N (Newtons) - 45N. Directions for this process can be found in step 5 in our Open Hardware Assembly Instructions (OHAI): During the final calibration, we run a test print (attached) to measure the skirt height to determine flatness and Z offset. When measuring the height of the skirt we expect the X+, X-, Y+, and Y- measurements to be between 0.3mm and 0.5mm. If the skirt measures a thickness outside of this range, we will diagnose and re-work the printer to ensure it meets our quality checks and tolerances.

Would mind running the rocktopus test print and share your results?
octopus_rev05_callibration.gcode (1.61 MB)
We’d also like to check the dimensional accuracy from prints. Would you be willing to print 5 calibration cubes (one in each corner and one in the center) and compare their overall dimensional accuracy?

Life interfered, but I’m back to debugging this…

I did the calibration test you asked for, the results are here:

I even did it on another Lulzbot Mini 2… which has the same issue as mine, except slightly less pronounced on the top-left side. This is in the second image in the album above with both the cubes and the paper in one shot.

I found this post that confirms that the MINI2 (and likely all other Z-belt printers) suffer from this problem… and the fix is likely insufficient, given my results.

I know this is an old thread but I’ve been having the exact same issue.

I’m a newbie so I didn’t know what was happening with my prints - with Alloy 910 and PC-MAX I was getting lifted corners, but mostly on the right side of the bed.
I’ve re-seated and cleaned the bed and washers, been cleaning my nozzle and watching the levelling process, I’ve also tightened the belts up and checked the surface with a straight edge (it’s ok, no rocking of a ruler) but still getting the same results:
Lm2BLP - 0001.jpg
Lm2BLP - 0002.jpg
Lm2BLP - 0003.jpg
Lm2BLP - 0004.jpg

Skirt on left side is nice and smooshed together but on the right side there is a gap in the skirt lines, not to mention the same on the actual first layer.

From the last post it seems like this is a design issue and nothing that can be done except to offset the z-axis even more, so one side is super smooshed to compensate for the other.
Has there been any update to this issue?

Other than that the printer seems to be working fine, and PLA sticks well. But I’m trying to print functional parts with PC and Nylon and this is kinda screwing up my prints and eating $$$ in filament.

Is there anything else I can do to “fix” this issue? Machine ( and CURA (3.6.3) updated to latest

Perhaps in a future firmware there can be a tweak to adjust the left and right z offset so one side can be lower than the other to compensate for this?
Printer does this consistently so if there was a way to adjust how it prints the first layer left vs right that would probably fix it?

Thank you for any help.

1 Like

I am getting this same issue with the smooshed left side and the right side being too high from the plate. Did anyone ever find a solution to this? Technical support has been little to no help with the issue and thus far I truly regret purchasing this machine.

A stupid hack I did that made it “better” but not eliminate the problem was to simply shim the other 3 corners and keep printing the corner tests until it improved.

Since the right side is “too high”, you can “lower” the bed by shimming the corners at the spot under the washer and the bed (you want to introduce some space between the washer and the bed only, NOT the washer and the black plastic mount it is screwed into (I mean I guess you can if you can find a way to do this evenly, but I didn’t).

What I did was simply put a small piece of paper between the shim and the bed/print surface for the 3 better corners (I used post it notes). No paper under the worst corner. Then I printed the test. Checked the results. If no improvement, shim some more (I just folded the piece of paper over). Repeat until it looks “better”. Obviously each corner can have different thicknesses of shims.

Once I got a good result I trimmed the paper as small as I could to not interfere with printing.

Stupid solution but helped for me, I’m not a pro so I don’t know if this screwed anything else up but it “makes sense” to me, you’re introducing more space in the other 3 corners to compensate for the “bad” corner not being “close enough” since you can’t make any software adjustments, and since you can’t raise the bad corner you have to lower the other 3 corners.

Basically you want each corner to look relatively even (obviously). Then readjust the Z offset value for a nice first layer.

I’ve seen this issue with intermittent severity over the last couple years. While I don’t know of a definitive solution yet, I think I’ve determined where the problem seems to be coming from.

The auto-leveling runs as expected, but it’s not running consistently at each corner. When I look closely at each corner during the leveling process, usually at least one corner being pushed down, flexing the bed slightly before registering the contact (with freshly cleaned and inspected components, mind you). When the print then begins, the problem corner(s) from the leveling process are squished further to the bed.

If this is similar to what’s happening for others, I could see something like poor bed adhesion occurring on one or more corner if they might be having somewhat the opposite issue as me – if one corner is very responsive and the other three are somewhat equally less responsive, then those three corners might make the user adjust the initial z-height or other settings to compensate for over squishing. This would then cause the 3rd corner to be a bit too far away when printing the initial layer. There are several variants of this scenario that could cause similar issues.

Like I said, I haven’t figured out how to fix this quite yet, but I’d be curious if anyone else here might be able to closely observe each corner in this process to see if one or more corners is actually pushing the bed down while leveling vs. lightly touching to establish electrical contact.

@scotchtape, @austingi, or anyone else that’s interested, are you able to observe any such leveling anomalies?

I print very rarely but from what I have observed, the levelling process seems to be fine (I could be wrong).
The first tap is quick, but then it does another slow tap.
The only time it messes up is when the nozzle isn’t clean and it can’t make a good contact.
On my unit I can’t recall any of the corners being less responsive.
My stupid hack helps it to be “good enough” for me, so I’ve given up trying to make it better.

Definitely fair enough :slight_smile:
I continued some troubleshooting and ended up figuring out that there must’ve been a film of some sort deposited on one of my washers that, whatever it was, wasn’t cleaning off with just alcohol. I manually positioned and tested the nozzle against the washers using the M119 command in the terminal to report if z-min was triggered or not, and all but the one were very consistent (thus suggesting it’s on the washer’s end vs. the print head). After checking and double checking the continuity of the hookups, I finally tried cleaning the washer with some DeoxIT contact cleaner – getting some pretty solid first layers now and no longer observing the probe anomaly!

While it wasn’t ultimately helpful in resolving the issue for me, there were some useful tidbits in this thread (in case someone lands here trying to troubleshoot their unique woes):

I did end up going into the electrical box on mine in my desperation, and found that there were some very precarious connections due to the adhesive cable anchors they use for the assembly becoming unstuck and dislodged. I imagine it was only a matter of time that the resulting tension on the wires in conjunction with vibrations during printing might have caused an even bigger headache for me down the line :sweat_smile: I repositioned some of the wires to relieve this, giving up on the anchors entirely.

Anyway – thanks for the response, @scotchtape! Your remedy for what seems to be a poor system design seems to be working for you, so I might call it a simple solution to an overly complex problem over a stupid hack :slight_smile:
Be well!

I have to add that my mini2 is my most frustrating printer, in large part because it can print extremely well, but is amazingly inconsistent in doing so. Backlash is a thing in mechanical systems, but (at least my) mini 2 suffers from runout, which is a different physical design issue.

The design of the x carriage on my 2 is a combination of under built and poorly balanced. The mechanical contact with the z rods allows for significant runout. The left side of the x carriage (which is home) is typically trying to move multiple times more weight (entire hot end+carriage assembly+two steppers+weight/tension of the cable chain) with the same stepper and torque used on the right.

These (ungeared) steppers are running too close to the edge of their performance capabilities for the asymmetric load they are carrying. And when these mechanical deficiencies combine as inertia to overcome momentary torque, the mcu has no awareness that missed micro steps are the result. All this winds up biasing the my mini 2 to missing steps on the left hand side/tilting slightly left at times, which leads to prints either too close towards the left of the bed, or too high towards the right.

My mini 2 is operating too close to the edge of its design envelope. Other’s machines have no issues. Probably most of them. But enough do that you can see the pattern in recurring first layer issues. I’m still surprised that there is no update to the mini2 addressing these issues, similar to the multiple 1.0…1.4 improvements to the original mini.

Rant aside, one thing to note is that the bed tilt compensation in marlin can only do so much. The disparities between corners should be in the same ballpark (~0.5mm ims). It can compensate for a slightly out of plane bed, but not if your x axis is also out of plane. So shimming corners can help a ton with level prints, provided that shimming is done relative to a well-trammed x axis. This thread is hugely valuable for build plate shimming.

I now run klipper as opposed to stock firmware, and have tuned motion to try and compensate for the physical issues. Even little things, like having the head park on the right, have helped immensely with z consistency, along with fine-tuning x axis leveling routines. At some point I may either replace the z steppers with geared versions (which lulzbot did with the workhorse) or upgrade to closed-loop steppers, either of which should help address the problem. For now a lot of tuning has largely ameliorated issues for me.

Has this ever been resolved? I upgrade my Mini to a Mini 2, was doing some tests today with the SL and found it right away. I am running CURA 3.6.20 for the record.

This is rather frustrating, to be honest, I wish they would go back to the old auto-leveling that didn’t do this double tap, since, the old one I had the most beautiful z-offset (on my Taz 6 I should point out), perfect smooshing. Then the update and it’s never been the same. It varies WAY too much.

To be honest I am half tempted to see if I can rewrite this part of the firmware I swear.

I returned my MINI2 and got a TAZ 6 from craigslist… it was all sorts of busted but fixing it up was an awesome project all on its own and no regrets, it prints great now. Much larger bed allows one to not print adjacent to the corners and it actually doesn’t have the same fundamental problem as the belt-driven mini2 because the Z axis movement is implemented using the tried-and-true leadscrew way. Leadscrews give more z-wobble, but there’s solutions to this, google “Piercet anti-wobble” if you’d like to know more.

p.s. it’s still not perfect, but I just got a BLTouch system which will probe the bed itself and not those stupid washers (which combined with an impossible-to-fully clean nozzle fail at least half the time), should get consistent and accurate leveling.