How-to prevent bed drop during config save restart (Z Belted printer)

How do you have your z stepper configured? I’m having a time and a half getting my exoslide 30:1 gearbox dialed in. this is as close as I can get with it without taking the gearbox apart and manually measuring and calculating the “actual” gear ratio. My rotation distance is spot on, but once I add “gear_ratio: 30:1” my z axis only moves 41% of the requested distance. I thought I fried my motor and/or driver last night trying to figure it out.

I also experienced the z banding you dug into on your blog, but I was on marlin at the time and I chalked it up to my layer height not being optomized for the steps/mm required to move the belt accurately(133.33 steps/mm got me dimensionally accurate, but ugly as sin prints.) I had given up trying to fix it in the slicer, as adjusting layer height only gets me so far because of the repeating decimal on steps/mm and decided to dive into klipper to see if there was any way to alleviate the issue in firmware.

Uploaded is an example print of what I’m talking about with the banding, my current config for stepper_z and a comparison of the print quality between .2 and .18 layer heights. The .18 layer cylinder is shorter because superslicer would not respect the fact that I requested .18 layer heights and I had to modify the gcode directly to make it happen.

Any help or information would be greatly appreciated, as I’m going to have to remove the motor and figure out how to belt the motor directly until I can design a regular gearbox that accomplishes the same gear ratio with belted gears on shafts.


If this would be better as it’s own thread I will delete this and do that.

The Rino motor/gearbox has a 200 step/rev motor and exact 30:1 gear ratio. IRIC, I use 1:16 ustepping and 60 tooth drive pulleys that yield exactly 20um per full step.

The general wisdom is to use print layer thickness that is a whole number multiple of the full step resolution of the Z axis drive. I use whole number multiples of 20 um per full step, so typically 200 um, 500 um, or occasionally 600 um (I have a 1mm nozzle on the extruder right now).

It looks like the exoslide gearbox uses just worm and disc gears, so the ratio should be exact. You could still get periodic bumps in the Z axis of prints if the motor shaft hole in the worm gear or the output shaft hole in the disc gear are not close fits or centered properly in the gears. If the surface finish of the gears is not very good you could also get periodic bumps in Z axis of prints. In my printer that would be 4mm (200 steps/rev and 20 um/step) for the worm and 120 mm for the disc gear. Your numbers may vary based on the number of teeth on the drive pulley.

Why is your rotation distance set to 177? How many teeth does the Z axis drive pulley have?

1 Like

Not a planetary gearbox, but I did do the math on layer height and because of the repeating decimal in my steps/mm the closest i got to usable layer heights had this compounding error the thicker the layers are, a .0001mm error on the absolute thinnest layer heights and going on up each close to usable layer height would have an additional .0001 error introduced.

I lost the spreadsheet I had for it, but I could never get to a whole number because of that repeating decimal.

The more pressing issue is that moving over to klipper, the system doesn’t know what to do with the numbers I’m presenting to it, even though according to the formulas and my own manual checking of rotation distance they should be correct. I know the steps/mm was correct in marlin because I was achieving dimensional accuracy withing a hundredth of a mm, but plugging that into the formulas and setting it up the way the reference material explains gets me less than half the travel that is requested.

That’s how far my z axis moved when I marked the output drive pulley with a sharpie and made it turn a full rotation. I don’t know how many teeth are on the pulley, I am really not wanting to take it off to do so, but I guess I will if I really need to. Now that you say that and I’m thinking about it, that does sound a bit high, given the diameter of the drive pulley, I may have mismeasured somehow. If I made that number any smaller my issue would get worse, not better, wouldn’t it?

THIS. WHY WAS IT THIS???
Sure enough, I have no idea what I was smoking when I pulled those measurements earlier, but I did it again and got 72. Set that as my rotation distance and it worked. I thought a shorter rotation distance would have made the problem worse. I must have been overthinking it.

THANK YOU SO MUCH. I’ve been struggling with this for days. At one point my z motor was just making these awful squalling sounds and not actually doing anything. Had me on the verge of just throwing the printer away.

That doesn’t sound right. Typical drive pulleys are 16 or 20 teeth, so either 32 or 40mm per rev. That’s 200 x 30 = 6000 steps, that means 6000 steps/32mm= 187.5 steps/mm or 6000 /40=150 steps per mm.

It’s probably 30 teeth. It’s not specified on the page for the kit, but the page for the gearbox itself states that its designed to work with a 30 tooth pulley. It looks pretty beefy compared to my x and y axis pulleys so I’d say that’s right.

Either way, the printer does what I tell it to now, so you have my gratitude for pointing out my mistake.

Hmmm. Not sure why that would work. If the Z axis moves 72mm for one rotation of the pulley it implies a 36 tooth drive pulley. That means 6000/72= 83.3333 steps/mm, which translates to 12 um/full step.

If the drive pulley has 30 teeth, it will be exactly 100 full steps/mm, 10 um per full step.

Sounds like he paired a different drive pulley with the kit than he himself recommends for the gearbox when you buy it on its own. Odd.

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.