3D Printer Lead Screw Upgrade




I built my Prusa i3 3D printer more than a year ago and I think it’s time for an upgrade.

This upgrade will concentrate on the Z axis movement only, and the replacement of the threaded rods with proper lead screws.

This is more of a structural upgrade that will improve reliability. I do not expect great improvement in printing quality. I do, however, expect an improvement in the printing experience.

This will not be a step-by-step guide (that would be boring for this kind of project), but more of a breakdown of what I've done, explaining how and why I did what I did so you can do it yourself.

Teacher Notes

Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.

Step 1: Lead Screw? But Why?

After a year of printing, it can clearly be seen that threaded rods are not meant for this kind of application. The rod itself is not straight (which is not that big of a deal because there are straight rods keeping the movement straight), it squeaks pretty loudly during movement and its threads get full of black goo that consists of dust, oil and metal shavings from the friction with the nut.

A threaded rod is meant to be tightened with a nut and not move, the whole principal of its operation is based on friction – a thing we don’t really want in a moving mechanism.A lead screw is much more rigid, it’s very hard so it doesn’t bend, it has a very smooth surface and its shape is specifically designed for moving inside a nut.

Step 2: Made From Scratch

I searched for a premade model so I wouldn’t have to model everything from scratch, but with all the different variations and sub-models of the Prusa i3, I couldn’t find one that I was sure would fit without further alterations. Eventually, I decided to design them myself and share for everyone with a similar printer to mine.I had some big plans and special designs for this project, but It would take a lot of time and I couldn’t stand the threaded rods any more, so I decided to take the current design and improve on it. After the printer is functional with the threaded rods installed, I could take my time and experiment.This project took two days total over the weekend, including modeling, printing and installing.

To keep the nut in place, I embedded M3 knurl nuts in holes in the plastic about 0.5 mm smaller in diameter than the outside of the nuts. The nuts are inserted by heating them with a soldering iron and pushing them in. A screw helps keep the nut straight while it’s inserted.The linear bearings are held in place by the plastic itself.

Step 3: Learn From My Mistakes

At first, I thought I could get away with replacing only the X axis mounts, but I didn’t account for the lead screw’s center that had to move to make room for the big nut. eventually (after disassembling the printer, swapping the mounts, reassembling and realizing the mistake) I remodeled the mounts, printed them again and reassembled everything.

Step 4: Top and Bottom Brackets

The old top bracket only supported the straight rod, the threaded rod’s top was floating, which didn’t help with it not being straight.I improved on the design by including support for the new lead screw, which barely needs it thanks to it’s rigidity.Instead of letting the lead screw move inside a hole in the plastic, I included bearings that hold the lead screw securely in place while letting it rotate freely.

The bottom brackets are basically the same, I just had to move the straight rod’s hole further out to follow the center dictated by the X axis carriage and the bigger lead screw nut.

Note that the previous design lacked support for the top of the threaded rod intentionally to allow it to wobble at the top instead of in the middle. This is a non-issue with lead screws because they don't wobble. The top bearings might not be absolutely necessary, but they can't hurt.

Step 5: Thread Count and Calibration

The lead screw and threaded rod have different thread counts (the amount of turns per length unit) so the steps per millimeter value for the Z axis needs to be changed in the firmware. This is easily done by simply moving the Z axis 100 mm (direction doesn’t matter), measuring the actual movement and multiplying the current steps per millimeter value by the actual movement measured divided by 100 (watch your units). Repeat this process a few times, each time gets you closer until you reach the accuracy wanted.

Note that the error will be more apparent with longer movements. If you move your axis 1 mm and measure you might not see the error. A 1% error would translate to 0.01 mm with a 1 mm movement (which is something my analog caliper can’t measure), but with a 100 mm movement it would be much clearer at 1 mm.

Step 6: Done

That’s it. All done. No more squeaking Z axis and wobbly rods. As I mentioned, I don’t expect a real improvement in printing quality, although that would be nice, but an improvement in the printing experience.

Step 7: Final Thoughts About Lost Resolution

I’ve had some comments about losing resolution with lead screws because of the lower thread count, so lets see if that’s true (spoiler – it’s not):The threaded rod I had measured at about 1 mm per turn (if I turn it inside a nut once, it will move 1 mm through the nut) and the lead screw measures at around 7.5 mm.This means that my lead screw is 7.5 times faster than my threaded rod. If I want them to move the same distance, I need to turn the lead screw 7.5 times less than the threaded rod.If I had a continuously rotating motor, I could, theoretically, have the same resolution (infinite) but the motors used in my printer are stepper motors, these motors move in steps and not continuously. My motors take 200 steps to make a full turn, this is the maximum resolution we can reach (well, there’s microstepping but the idea is the same, there still is a step to be made that determines the maximum resolution and amount of error to be expected).With 200 steps per turn and 1 mm per turn, we get 200 steps per millimeter. That’s 0.005 mm per step. That’s the smallest increment in length we can make without microstepping.At 7.5 mm per turn we get 0.0375 mm per step. While this is a larger number, the smallest increment you would expect to make while printing is still even larger. So what does this mean?This means that the Maximum resolution your axle can reach will go down, but because the actual maximum resolution a 3D printer can reach is even lower, this doesn’t matter.The maximum resolution I reached with my printer is 0.1 mm layer height and I don’t print at that resolution often. Even if I try to reach 0.05 mm, the lead screw would still be enough. Moreover, my firmware has microstepping enabled so the maximum resolution is much higher (microstepping can go down to 1/32 or even 1/64 of a step) and if I really want to go crazy, I could get geared motors to reduce the ratio to 1:14, 1:30 or even slower.

Step 8: Printing Settings and Links

All parts were printed in blue PLA @ 0.2 mm layer height and 200 degrees C with no support and no heated bed.All models are available for Free download on Thinginverse.

For more projects, visit HarariProjects.com.

Hope you enjoyed.

1 Person Made This Project!


  • CNC Contest

    CNC Contest
  • Make it Move

    Make it Move
  • Teacher Contest

    Teacher Contest

15 Discussions


1 year ago on Step 3

Thank you for your very good article on changing from threaded rods to leas screws!! Your details were extremely helpful in my build of a Wilson TS 3D printer build which is a Prusa style printer. Let me change that to EXTREMELY helpful. :-)


1 year ago

Hi Harari, thanks for sharing this. I made my own printer, from an instructables , and also used m8 rods. My supports are still made from wood and I am also designing my own in plastic because the dimensions are a bit particular. I am using stainless steel threaded rods but they also wobble and collect dirt etc. However the printer works OK. Well my question too you is: now a year has passed and you have used the printer, was the mod worth the effort? I was thinking of changing mine too but not sure yet.

3 replies

Reply 1 year ago

Good question. I can say that at no point in the passing year had I thought that the upgrade wasn't worth it.
Like I mentioned in the instructable, this wasn't a performance upgrade, but an experience upgrade. I found that the lead screws almost do not collect dust and dirt at all, they do not wobble and they do not make noises. I haven't had to clean the rods at all and I greased them once just to see if it does something (it didn't, but it's still good practice).
I haven't found any problems with the coarser pitch, the resolution is still greater than what is needed for 0.1mm and even 0.05mm layer heights.
I've attached some photos from today so you can see how it looks after a year of work without any real maintenance done.

In conclusion, the upgrade removed the threaded rod problems and didn't introduce any new lead screw problems. I think it was worth it (and it's not that much work, It took me a weekend from start to finish)

Good luck!


Reply 1 year ago

Thanks. Sorry for the late reply. I went a bought a set too! I will wait to install them though. I have not printed much yet so wanted to get into some printing experience first. Also I have to print the supports! Thanks again for writing. And best regards


Reply 1 year ago

BTW, the instructable is almost two years old, but the upgrade is a few months older, if that makes any difference to you.


3 years ago

Very nice modification. I'll probably update my P3Steel, too. The small M5 threaded rod takes forever to move the Z-Axis down after tall prints. Also, if you want to use auto bedleveling it's probably a worthwile invest, because the threaded rod will wear out even faster.

Just one hint on the calibration step: You don't need to go through all the hassle of try and error, measuring and recalibrating. Just go to


Type in your setup (e.g. 1.8° stepper, 1/16 microstepping, 2mm lead for your Tr8 leadscrew) and you get the exact steps/mm value, which should be 1600 for your setup. This of course also works with other types of screws like M5, M8 etc.

The there is also a calculator for the belt driven X- and Y-Axis. The try and error method should only be necessary on the extruder, for which the steps/mm can only be approximated.

2 replies

Reply 2 years ago


Thanks for the compliment, glad you like it.
As for the Z axis taking forever to home, you can set the homing speed separately so that it would print normally and home quicker.

I know the site you linked, but I don't trust generic settings. I found that if you do it by hand and calculate everything you'll get slightly different values and better fit for your setup. Setting calculators are good for quick basic calibration, but if you want to get to 0.005mm, there's not escape from manual calibration.
It's not a hassle either, it takes a couple of minutes.


Reply 2 years ago

Hi. thanks for sharing. I also have a p3steel mith m5 nut. Where did you find the steel parts for m8 rods and nuts? Regards.

Richard Kuivila

3 years ago

Harari - Great article and SUPER photos. No guessing needed !


3 years ago

Cool, Thanks for sharing!


3 years ago

Nice article, thank you. Any chance you could link where you got the lead screws from?

1 reply

Reply 3 years ago

Thanks! glad you like it.
The listing for the lead screws I used is unavailable, but just search eBay for "8mm lead screw" and you'll be swimming in relevant results. I used 300mm long rods. Just make sure the nuts are included so there'll be no surprises.
I picked the specific listing I used according to price and shipping, which will be different for you, depending on where you live.
If you're having trouble finding what you need, let me know and i'll help you find one.


3 years ago

Nice job, thanks for sharing it !

mstone25: I don't know where harari bought his lead screws, but I sourced mine at banggood.com ($16 for 400mm):