Steps/unit -- right or wrong?

I was looking through the firmware for the TAZ

and I noticed what I thought could be a mistake. On line 424

#define DEFAULT_AXIS_STEPS_PER_UNIT   {100.5,100.5,1600,850}  // default steps per unit for TAZ {X,Y,Z,E}

The steps/unit for the x and y axes are set to 100.5 steps/unit. I think it should be 100 steps/unit and here is why: the formula for finding the steps per unit is (correct me if i’m wrong, please):

steps/mm = (steps / rev) x (belt_teeth / mm) x (rev / motor_pulley_teeth)

I think this is right, because the dimensional analysis checks out. If you plug in the numbers:

steps/mm = (3200) x (.5) x (1/16) = 100

This is a pretty small difference, but over the length of the travels, this could add up. If it is supposed to be this way for some reason, somebody please fill me in.

It is supposed to be 100.5. The extra 0.5% steps per mm is there to compensate for thermoplastic shrinking. It’s what we’ve used across the entire LulzBot 3D printer line, for quite some time.

I’m not buyin’ it. Different types of plastic shrink different amounts, so .5% seems a little arbitrary. Also, it’s a well known fact that external dimensions of parts printed on lulzbots tend to be a little bigger than they are designed to be (especially in x and y), so if the idea is to make the part closer to the design dimension, you should lower the steps/unit, not raise it. Perhaps this is why all these people have dimensional inconsistency.

Just because that’s the way it’s always been doesn’t make it right, either.

I’ll go ahead and change it on my machine.

We make our printers open for easy modification. Don’t forget to post your results! Happy printing!