SOLVED: Taz 6 auto leveling is >0.5mm off (NOW PERFECT TO 0.01mm!)

I’ve been working through the process outlined here for using shims to level my bed. I’m not even close yet, but I’m getting there. But there’s something here that doesn’t make sense to me. I can issue the G29 V4 command repeatedly and the resulting Z values are inconsistent. Here are 3 sets:
0.056
1.257
0.984
-0.089

0.062
2.088
1.138
0.409

0.077
1.999
1.088
0.686

Any idea why these vary so much?

Art

Is the nozzle moving the corner washers when it takes the measurements?

what firmware are u using?

I believe you need to issue the entire set of commands each time otherwise the bed leveling calculations are adding up. I confirmed this on mine.

Hey everyone,

I’m having a little trouble with the modular etched print bed / heater from Lulzbot. While Lulzbot has a file for modified print bed corners (accounts for slightly different thickness of the modular print bed / heater compared to the original) to be used with the upgraded print bed, the dimensions apparently are still slightly off. I had Cody from Lulzbot support send me modified TPU print bed corners (MK3) that were supposed to better accommodate the dimensions of the etched modular print bed, but I am still having issues with the bed leveling washers sitting flat.

To allow the bed leveling washers to sit flat, I did a rough shim between the corner poles and the leveling washers themselves using 2 thin metal shims (each corner). Then I ran the following G-Code to see what the Z height was for each corner using the metal shims as a rough baseline since I couldn’t get the washers to sit flat using the modified print bed corners (MK3), the modular etched print bed, and the stock corner mounting hardware.

As you can see below, I have huge differences in my individual Z heights but I somewhat expect that due to manufacturing variances in the thin metal shims.

  • I know from previous replies above that I can shim under the modified bed corners to better level all the corners with each other, but what do I do about the gap between the top of the print bed and the metal pole where the washer normally sits?
  • Do I need to modify the MK3 bed corners so the bed will sit lower and then the washer will sit flush with the metal corner poles?
  • Or can I find / use slightly longer metal corner poles to raise the bed leveling washer?

2 metal thin shims (each corner) – Allow washers to lay flat on top of etched print bed

G-Code Input:
M420 S0 ; Shut off auto-leveling
G28 X Y ; Home the X & Y axis
G28 Z ; Home the Z axis
G29 V4 ; Perform Auto Leveling Test

G-Code Output:
Bed X: -9.000 Y: -9.000 Z: 1.908
Bed X: 288.000 Y: -9.000 Z: 2.900
Bed X: 288.000 Y: 289.000 Z: 3.304
Bed X: -9.000 Y: 289.000 Z: 1.420

4th probe point, distance from plane: 0.89

Eqn coefficients: a: 0.00484217 b: -0.00014136 d: 1.72736978

Mean of sampled points: 2.38306260

Bed Height Topography:
±-- BACK --+
| |
L | (+) | R
E | | I
F | (-) N (+) | G
T | | H
| (-) | T
| |
O-- FRONT --+

(0,0)
-0.96319 +0.92106
-0.47494 +0.51706

Corrected Bed Height vs. Bed Topology:
+0.00000 +0.44614
+0.44613 +0.00002

Bed Level Correction Matrix:
+0.999988 +0.000000 +0.004842
+0.000001 +1.000000 -0.000141
-0.004842 +0.000141 +0.999988

X:-8.96 Y:289.00 Z:6.21 E:0.00 Count X:-904 Y:29044 Z:10010

The fix, is it more accurate after a firmware update? Since I did this test on both my Taz 6 and Mini 2, and both are producing negative values for the z-axis (my Taz 6 is 2 of 4, and the Mini 2 is 4 of 4). And I do feel that usually, my Taz 6 isn’t nearly as bad (still not what it used to be, before this whole “double tapping” update was done).

Mini 2
Recv: Bed X: -3.000 Y: 168.000 Z: -0.782
Recv: Bed X: -3.000 Y: -4.000 Z: -1.537
Recv: Bed X: 163.000 Y: -4.000 Z: -2.834
Recv: Bed X: 163.000 Y: 168.000 Z: -3.242
Recv: 4th probe point, distance from plane: 1.16

Taz 6
Recv: Bed X: -9.000 Y: -9.000 Z: 0.331
Recv: Bed X: 288.000 Y: -9.000 Z: -0.944
Recv: Bed X: 288.000 Y: 289.000 Z: -1.037
Recv: Bed X: -9.000 Y: 289.000 Z: 0.350
Recv: 4th probe point, distance from plane: 0.11

EDIT

Went back, ran the Taz 6 again, this time calibrating X,Y,Z (didn’t realize these were required after the G28 command), after removing and re-attaching the washers, produced this. The way I read this it looks fine, but I could be wrong

Recv: Bed X: -9.000 Y: -9.000 Z: 0.237
Recv: Bed X: 288.000 Y: -9.000 Z: -1.004
Recv: Bed X: 288.000 Y: 289.000 Z: -1.041
Recv: Bed X: -9.000 Y: 289.000 Z: 0.251
Recv: 4th probe point, distance from plane: 0.05

1 Like

I was getting random bed leveling errors on a TAZ Pro. I started something similar to this but couldn’t solve it. Finding this thread helped immensely.

Using the G29 v4 command and the M119 codes gave me the tools to solve it.

I used shims from card stock (.2) and paper (.8) instead of the printed ones.
I did the y leveling procedure provided by LulzBot and then started the leveling shim process with just the metal spacers, and washers w center bolt. Taking the Bed Corners and glass bed out of the equation, then I added in the bed corners and had to adjust the shims slightly. However when I added the glass it went way off again.

Fortunately I had a new glass on the shelf, and tried it. It worked perfectly.

Apparently my old glass is warped. I may mess with it later but with the new glass installed I am within .073 max to min on the 4 corners and it seems to be printing great now.

1 Like

Hi, my TAZ PRO and I’m tryng to understand this… please help, I know this is a newbie question.

I did the calibration sequences (backlash and nozzle offset)
then I did the
M420 S0
G28
G29 V4
I did this several timens:

First:

Send: G28
Recv: echo:Active Extruder: 0
Recv: X:-21.96 Y:286.96 Z:290.00 E:0.00 Count X:-2200 Y:28700 Z:145000
Recv: ok P15 B4
Send: G29 V4
Recv: G29 Auto Bed Leveling
Recv: Bed X: -10.000 Y: -9.000 Z: 1.102
Recv: Bed X: 288.000 Y: -9.000 Z: 1.220
Recv: Bed X: 288.000 Y: 291.000 Z: 1.116
Recv: Bed X: -10.000 Y: 291.000 Z: 1.145
Recv: 4th probe point, distance from plane: 0.15
Recv: Eqn coefficients: a: 0.00014765 b: -0.00010133 d: 1.13936484
Recv: Mean of sampled points: 1.14560008
Recv: 
Recv: Bed Height Topography:
Recv:    +--- BACK --+
Recv:    |           |
Recv:  L |    (+)    | R
Recv:  E |           | I
Recv:  F | (-) N (+) | G
Recv:  T |           | H
Recv:    |    (-)    | T
Recv:    |           |
Recv:    O-- FRONT --+
Recv:  (0,0)
Recv:  -0.00040 -0.03000
Recv:  -0.04360 +0.07400
Recv: 
Recv: 
Recv: Corrected Bed Height vs. Bed Topology:
Recv:  +0.07360 +0.00000
Recv:  +0.00000 +0.07360
Recv: 
Recv: 
Recv: 
Recv: Bed Level Correction Matrix:
Recv: +1.000000 +0.000000 +0.000148
Recv: +0.000000 +1.000000 -0.000101
Recv: -0.000148 +0.000101 +1.000000
Recv: X:-10.00 Y:291.00 Z:6.22 E:0.00 Count X:-1000 Y:29100 Z:3110
Recv: echo:Unknown command: ""
Recv: ok P15 B4

second time:

Send: G28
Recv: echo:Active Extruder: 0
Recv: X:-21.96 Y:286.97 Z:290.00 E:0.00 Count X:-2200 Y:28700 Z:145000
Recv: ok P15 B4
Send: G29 V4
Recv: G29 Auto Bed Leveling
Recv: Bed X: -10.000 Y: -9.000 Z: 1.107
Recv: Bed X: 288.000 Y: -9.000 Z: 1.226
Recv: Bed X: 288.000 Y: 291.000 Z: 1.119
Recv: Bed X: -10.000 Y: 291.000 Z: 1.150
Recv: 4th probe point, distance from plane: 0.15
Recv: Eqn coefficients: a: 0.00014765 b: -0.00010667 d: 1.14491653
Recv: Mean of sampled points: 1.15040004
Recv: 
Recv: Bed Height Topography:
Recv:    +--- BACK --+
Recv:    |           |
Recv:  L |    (+)    | R
Recv:  E |           | I
Recv:  F | (-) N (+) | G
Recv:  T |           | H
Recv:    |    (-)    | T
Recv:    |           |
Recv:    O-- FRONT --+
Recv:  (0,0)
Recv:  -0.00080 -0.03120
Recv:  -0.04320 +0.07520
Recv: 
Recv: 
Recv: Corrected Bed Height vs. Bed Topology:
Recv:  +0.07440 +0.00000
Recv:  +0.00000 +0.07440
Recv: 
Recv: 
Recv: 
Recv: Bed Level Correction Matrix:
Recv: +1.000000 +0.000000 +0.000148
Recv: +0.000000 +1.000000 -0.000107
Recv: -0.000148 +0.000107 +1.000000
Recv: X:-10.00 Y:291.00 Z:6.22 E:0.00 Count X:-1000 Y:29100 Z:3111
Recv: echo:Unknown command: ""
Recv: ok P15 B4

How do I interpret this?
What needs correcting?
how?

How do I set correct Z nozzle height for both nozzles?
Prusa does a caibration print routine built into the Prusa Mini to help the user, but how do I do this on the Taz Pro?

Kind regards,
Marout Sluijter-Borms

I had my own experience with this.

The TL;DR version… make sure your firmware is really updated to the latest version.

The longer version…

I use a Mac. The latest version of Cura for Windows is 3.6.30. The latest version for Mac is 3.6.21. On the Mac … the version of firmware (for my TAZ Pro) is 2.0.0.144. On the Windows version it’s 2.0.144.6

I was noticing a problem only in one corner of the build plate. But what I noticed when I did the leveling (G29) was that the nozzle would hit the washer … and continue to push down just a tiny amount farther. This didn’t happen in any other corner… in those corners the nozzle would stop the moment it kissed the washer.

I pulled the washer off, cleaned everything, checked for resistance, etc. and everything was perfect (just as perfect as the other corners) … so this wasn’t a conductivity/resistance problem.

I became fairly suspicious that it had to be in firmware.

SO… I do happen to have a Windows laptop. I downloaded the latest Cura LE for Windows and discovered the firmware file for my printer is much newer than the version in the latest Cura LE for mac. I copied the file over … installed it on the printer … and NOW the nozzle stops the moment it kisses the first washer (just like it does with the other three corners.)

I’ll have to nag the Lulzbot crew to update the firmware for the Mac download.

They just sent mine back after I sent it it with this problem on my Mini 2 for a 2nd time. Of which, they updated the firmware to the latest version.

I have run 1 test print so far, and sadly, the issue still seems present, however, possibly not as bad as before, but I have to run more tests to be sure (again, I still think it wasn’t fully fixed).

That being said, I have to come to a possible different conclusion. My Taz 6 runs the same firmware, no problem with the level, meanwhile, my Mini 2, has a serious problem, and it’s always the right side that seems to be the issue (with an emphasis on the upper right corner).

I bring this up because I was watching it level the z-axis the other day (you know it re-aligns them to fix any z binding issues), and saw something interesting. On the right side, the toolhead’s cooling ducts as we’ll call them (that surround the bottom of the toolhead) were colliding with the scrubbing pad bracket, and, even the washers.

I am starting to think it has to deal with the bump sensing, in that the tool head isn’t making full contact with the right bottom when leveling the z-axis, due to resistance caused by the toolhead’s parts making contact before the actual bracket on the right side that should be (the one that rides along the rods).

This is my current theory, however, I am having trouble finding a truly valid way to test this. I have an idea how I might, but the catch is I’d have to disassemble some of my toolhead to do so (take that bottom duct off). Which by the way, everytime I look at, seems like it’s crooked, dipping down to the left

Side note, I also saw the problem you reported, it seemed the head would not make the same contact on each washer. Some would only have like the one side of the nozzle make contact, other, it would be full contact around the nozzle.

I’ve got the same problem on my Mini 2 but it’s much worse - over a mm between the highest and lowest washer. I’m printing shims now but it seems like it’s slowly been getting worse over time and I’m trying to figure out why. Is there something that’s loose causing it to drift?

BTW, those bed washers are precision machined specifically for these printers (this is not a source-able part … they are machined specifically for these printers). But the washers are resting on some stainless steel bushings that are NOT precision machined. These bushings are a source-able part (e.g. a good fastener store could source them for you.) and they don’t have a very tight tolerance.

I used my micrometers to check both the washers and the bushings … again, washers are pretty much perfect (error down to thousandth’s of a millimeter). The bushings had quite a bit of error (too much).

I pulled mine being very careful to note which corner each bushing came from. I discovered that two bushings were noticeably shorter (by something like .23 to maybe .26mm … (a layer height – more or less).

Also… I had a tall/short/tall/short so that one set of opposing corners was tall and the other was short (this would have a curved surface like a pringles potato chip.) The amount of error and the shape of the error makes it hard to compensate.

I wanted to fix this.

There are two choices… the cheap way, and the expensive way.

Cheap way: measure the height of your bushings … make sure the two shortest are on one side of the bed and the two tallest are on the other side of the bed so that any un-level-ness is linear.

Expensive way: get more precise bushings. (Naturally my OCD decided this was the way for me!)

I ordered a new set of stainless steel bushings from McMaster-Carr (online). I own two LulzBot printers (so qty 8 10mm x m3 bushings) and ordered another 10 from McMaster-Carr. I measured them all … found the four that have the closest measurements to each other, and installed them. (BTW … this might have been luck but all 10 of the bushings I ordered from McMaster-Carr were much closer to true tolerance than the bushings that came with the printer. They were off by maybe .02mm when checked with quality micrometers (so… around 1/10th of a layer height rather than a full layer height).

Note: For the OCD who might be reading this (and you KNOW who you are), THIS is the part: McMaster-Carr (Again, I don’t know if it was just dumb luck… but these were much closer to spec than what happened to be in my printers).

This helped considerably.

I don’t suggest everyone run out and buy an expensive pair of micrometers. I do … kinda suggest that if you care about precision then maybe a decent pair of calipers would be good to own. (Mitutoyo have really good stuff with excellent repeatability. Note these are sold in various lengths. They aren’t the cheapest but their digital calipers have excellent accuracy and repeatability.)

I also used my calipers to test if my bed rails were truly parallel – and discovered they were not (loosening the bolts that hold them in place … I was able to adjust them.

Once you own a decent set of calipers, it’s surprising the number of uses you find for them.

Micrometers, on the other hand … I wouldn’t necessarily recommend everyone run out and buy them. (MANY years ago I worked in a machine shop programming CNC milling machines … so I happen to own them.).

1 Like

I believe the bushings are 8mm O.D., 3.2mm I.D. (for M3 screw), 10mm long, part #92871A148

1 Like

oh interesting, I’ll measure mine and order replacements if they’re off, I need to order some other stuff from mcmaster anyway.

Fortunately/unfortunately for me my bushings were all pretty close. I swapped them around for good measure (like rotating your tires!) but the back left corner remains the high one.

I did redraw the shim for my Mini 2. This design lets the bushing sit flat on the plate, I use some thin M3 washers on top of the bushing to bring the big washer level with the build plate. This does have some potential for issues, but they don’t seem to be worse than the probe washers being off level.

Right now I’ve got 3 shims under my lowest corner (front right), one each on the two adjacent to it, and of course none on the back left. It’s better than it was but not still not great.

It should not be. If you are having issues where the washers are being pushed down, it means that you are not making a good electrical connection. This is usually due to leftover filament sticking to your hot end. You can fix this by heating up your hot end to the wiping temperature (I think it’s around 160C) and cleaning it with a rag or scothbrite (really anything non-conductive). This is also why wiper pads need to be changed from time to time.

If this doesn’t fix the problem the connection issue is somewhere between the top of the washer and the bed. I have tried lightly wiping the screw and washer with a scoth brite pad to make sure that there is no residue inhibiting the connection.

If using a Mac, the firmware has recently been upgraded and now includes the latest printer firmware (no need to copy it out of the Windows version).

Once you have the latest version installed, go to:

Preferences -> Printers -> (pick printer) -> Upgrade Firmware

Another benefit is, depending on your printer, it may include universal toolhead support – no need to re-flash firmware when changing toolhead because you can select the toolhead in the printer’s menu (and select the correct printer profile with appropriate nozzle diameter in Cura).

Hello–I joined today to resurrect this old thread. My Workhorse has never been reliable, particularly for large area prints. When I found this thread, I thought I had finally found the solution! When I bring the nozzle close to the bed and drive the print head around, there is a ~2mm larger nozzle-to-bed gap on the left of the bed vs. the right. I ran the G29 process noted in this thread, and got a result I thought confirmed this:

[16:45:39] M420 S0
< [16:45:41] echo:Bed Leveling OFF
< [16:45:41] echo:Fade Height OFF
[16:45:45] G28
< [16:45:49] X:-48.00 Y:-15.00 Z:297.00 E:0.00 Count X:-4800 Y:-1700 Z:148500
[16:45:57] G29 V4
< [16:45:59] G29 Auto Bed Leveling
< [16:45:59] Probing mesh point 1/4.
< [16:46:13] Bed X: 290.00 Y: -10.00 Z: 1.12
< [16:46:13] Probing mesh point 2/4.
< [16:46:19] Bed X: -10.00 Y: -10.00 Z: 3.60
< [16:46:19] Probing mesh point 3/4.
< [16:46:23] Bed X: -10.00 Y: 290.00 Z: 3.41
< [16:46:23] Probing mesh point 4/4.
< [16:46:29] Bed X: 290.00 Y: 290.00 Z: 0.20
< [16:46:29] Bilinear Leveling Grid:
< [16:46:29] 0 1
< [16:46:29] 0 +3.604 +1.119
< [16:46:29] 1 +3.406 +0.201
< [16:46:29] Subdivided with CATMULL ROM Leveling Grid:
< [16:46:29] 0 1 2 3
< [16:46:29] 0 +3.60420 +2.77573 +1.94727 +1.11880
< [16:46:29] 1 +3.53820 +2.62978 +1.72136 +0.81293
< [16:46:29] 2 +3.47220 +2.48382 +1.49544 +0.50707
< [16:46:29] 3 +3.40620 +2.33787 +1.26953 +0.20120
< [16:46:29] X:290.00 Y:290.00 Z:4.13 E:0.00 Count X:29000 Y:29000 Z:2165

It probes right front first, fwiw

So, I laser cut Nomex paper shims from the files above (I had another project using this material…) and added a stack of them under both left corners, moving the build surface closer to the nozzle on that side. I didn’t re-check it with feeler gauges, but visually, the gap is more uniform corner to corner. Not perfect but better. But when I run the routine again, I get this result:

< [17:10:27] 0 +4.799 +1.195
< [17:10:27] 1 +4.547 +0.200
< [17:10:27] Subdivided with CATMULL ROM Leveling Grid:
< [17:10:27] 0 1 2 3
< [17:10:27] 0 +4.79920 +3.59773 +2.39627 +1.19480
< [17:10:27] 1 +4.71513 +3.43113 +2.14713 +0.86313
< [17:10:27] 2 +4.63107 +3.26453 +1.89800 +0.53147
< [17:10:27] 3 +4.54700 +3.09793 +1.64887 +0.19980
< [17:10:27]
< [17:10:27] X:290.00 Y:290.00 Z:4.13 E:0.00 Count X:29000 Y:29000 Z:2166

It’s worse, per the numbers? I tried reading up on how the G29 works (what is positive, what is negative etc) but couldn’t make sense of it. The numbers are moving opposite what I can see with my eyes.

This is greatly condensed–I’ve tried other shims and tried shimming it to drive the bed-too-high side even higher, and that makes the matrix more uniform but the actual gap uniformity becomes way worse.

What am I missing? After three years of repairs and tuning and buying new heads and nozzles and build plates, I would dearly love to stop hating this machine and make stuff with it. Thanks for any advice…

You maybe possibly didn’t do your first set of measurements (the one where you moved the head around manually) with the x axis leveled. It’s possible also the manual moving around knocked the x axis out of level. You should instead be using the probed values from a clean run (G28 then G29 with absolutely perfect touches and not one bit of deflection) to determine which sides to adjust. Please note that the numbers G29 returns don’t correspond to the same position on the bed.

< [16:46:29] Bilinear Leveling Grid:
< [16:46:29] 0 1
< [16:46:29] 0 +3.604 +1.119
< [16:46:29] 1 +3.406 +0.201

I don’t think the top left number means the back left washer. I believe they are both flipped and inverted, so +0.3604 means the front right washer.

Maybe somebody more knowledgeable can chime in.

Thanks @zenotek. I probably underexplained what I did (it was a long first post…). By “manually” I meant using the X/Y/Z controls in the Cura monitoring window. I didn’t move it by hand with steppers disabled. Touches are clean (no big deflections, and nozzle is clean). I did a G28 via the console before the first G29 in that first console reprint.

I’m pretty convinced that adding the shims made the gap more uniform, but the numbers show larger variation (that’s 3.604, not 0.3604–it’s a huge difference).

Years of failed prints have shown that I can dial in the Z offset to print small parts in the center, but if anything goes too far to the front right, the nozzle will either clog, or it will drag in the first or second layer and detach the print from the build surface.

Does Lulzbot publish a method for manually leveling the X? I’ve done it on a Taz 6 with the lead screws, but haven’t seen a procedure for the Workhorse with belt drive…