MakerBot Print is our newest print-prepration software, which supports native CAD files and STL assemblies,
allows you to interact with all your printers via the Cloud, and many other exciting new features.

Download Now


Linear Rail Z Axis Mod for Ender 3

by bamoore01 Jul 29, 2018
Download All Files

Thing Apps Enabled

Please Login to Comment

I really wish I got 400mm rails. I ended up laying my 2040 y extrusion (also linear rail) on its side to bring the bed down (it came down a lot). 50mm from the bottom would need a V6 volcano to reach my bed and 30mm gap top and bottom doesnt look fantastic. Also took a lot of hours to fit but seems to glide okay. I love these cheap rails.


the worng in the pic is, you not need drill the prefix, you need dissaemble it and put the screw in the plate, and then, mount the prefix over the screw. like the original screw does


I'm not really sure. The only thing I can see is that either the screw isn't 50mm long or that the screw head is not set into the X rail far enough. I used the smaller head cap screws like the ones that hold the rails on instead of the larger diameter round headed ones. I can't tell from the pics if that may be the problem.

Hi, did you estimate the cost of this upgrade?

No. I didn't estimate the cost. There are just too many variables for that like where in the world you live, the quality of rails, supplier, etc.

question when you say 9.25 space do you mean between each nut or are you including the nut with the mm measurement too?
What happens if it's not 9.25mm spacing?

as in are you measuring from just the thread from start to each nut? or you adding the nut in the 9.25mm

Hi, bamoore01.

I found a defect using Simplify3D in your model.

model name is Limit_Switch_Adapter_V3.

it has a lot of surface self intersecting.

I couldn't repair this model.

please check it.


PS. Also, your models X axis MOD has same problem.
It is Ok if i use CURA slicer. But, in Simplify3D, I got a terrible result.

Thanks for the info. I'll take a look at that. I suspect that it is the way I build the parts in Rhino and then convert to an STL file. I have a lot of over lapping parts.

Edit; I rebuilt the file and reloaded it as V4. If you get a chance to take a look at it I'd appreciate it. Thanks.


Could i got a info. about X axis models? those are repaired?

bamoore01 - I already have it for my X and Y and will be doing my Z Axis this week.

  1. Does the the X Gantry fall on its own now that its only supported by the Leadscrew?
  2. How are you liking the rails for the Z Axis compared to the V-Slot Wheels?
  1. If I give it a little down push it may travel a little but it won't usually drop by itself.
  2. I like it much better than the wheels.

hello I finished installation of the linear guides x y z, for the x and z your files are perfect for the cr10s that evidently uses the same pieces for fixing extruder and xz axis.
I added holes in the back support plates to grease the guide carriages.
if you want you can integrate in the description ender3 and cr10 / s I do not know for s4 and s5 if they are the same I can not verify it.

I already have it for my X and Y and will be doing my Z Axis this week.

  1. Does the the X Gantry fall on its own now that its only supported by the Leadscrew?
  2. How are you liking the rails for the Z Axis compared to the V-Slot Wheels?

sorry I use the translator but I could not understand what you're saying. thank you

hello, I'm applying your change on my cr10s (after doing X and Y), I do not understand the passage number 8. You can explain it differently, it is possible that with the translator has problems understanding. I have a height difference of 3mm in height from the frame at the bottom of the x axis guide. thank you

I bought 400 mm bars for the z- and y axes , would that be a problem ?
I couldn't find any other in my country.

On the Z it will be no problem at all. In fact, my setup has my 350mm rails spaced up 50mm from the bottom of the vertical frame pieces.

On the X, its a little different story. The 400mm rails will still work but you will have to be careful. On the right side you are limited as to how much the rails can stick out because of the belt tensioner. It is in the way and I don't see an easy way of overcoming that. But the rail can stick out on the left side. It will probably stick out about 50mm. The spacer that you make to move the X limit switch out will allow just enough clearance for the rail to pass under it - maybe. On my machine it looks very close. If it touches the X limit switch circuit board there is a possibility of shorting out some of the solder points. You could put an insulator between the rail and the circuit board if there is enough room. If not, make the spacer a little thicker so there is enough clearance.

OK thx, but i will not use it on the x for now, i will do the z axes and the Y probably.

I'm doing a little work fo the z axes right now. Is the space on the bolt between the two nylock nuts supposed to be that 9.25 mm ?

I would have to hesitate to tell you to use the 9.25mm between the two nuts. I'm afraid that there may be slight differences in our machines like Creality making small changes or a supplier change that would change the dimensions of those nuts.

The best way to set the distance is measure the distance of the Z lead screw from the vertical rail. The front plate position is fixed but the adjustment of the three long screws will change the position of the back plate. Set the X rail to the top of the Z and measure the gap between the Z vertical rail and the lead screw at the top of the lead screw and at the bottom. Adjust the spacing of front and back plates at all three long screws so that they are equal and so that the gap top and bottom of the lead screw is the same.

Thank you for this thing! Thumbs up to you!

  • Posted with 3D Geeks Thingiverse Browser App

My right side is 2mm lower than left side, what can i do to improve and set both sides at same height?

When you are measuring, are you measuring from the bottom frame pieces or the bed?

Bed, but i redo the from the top of the frame since i cant do it from bottom, see attachments. Same results about +/- 3mm

The first thing you should do is square the x gantry to the frame. Then tram the bed.
Squaring the X gantry isn't too hard. Check out my note 8 on the details page.

Thank you, now it seens OK, i get same results at top Z and bottom Z. Will do more tests and see if that holds in place :)
Now i should take care of the bed, it's really bad, look like a wing, i don't know what i can do more to have a flat surface, using bltouch to generate the map.

I have the same problem, can you tell me what you did to correct it ?
Thx in advance...

Basically I've loose the Z and top bars. Tight then again and fixed the problem. Don't forget to loose your H blocks too.
Also you need to follow the bamoore01 instructions to tune linear rails

alright, i'll give it a try.
Do you allso have dual z setup ?

No, so far with that mod i don't see a reason to go dual Z, this now move left and right up equally. But i may consider for the extra

I can ask you where I can find the change to the extruder assembly you have on the printer with the engine over the extruder. thank you

Not sure what you asking for, you mean the Bondtech BMG?

interesting, does the clone work well? Did you see differences in the quality of the printing with the direct system? Did you follow a guide to install bondtech in that position? andhe I have the fang like yours

Ah sorry, i didnt notice we are on linear rails page... the correct page to look is: https://www.thingiverse.com/thing:2963434

Petsfang Bowden Direct with Bondtech BMG for CR10/S/4, Ender3 and Tevo Tornado
by dpetsel

Very well, no problems so far. The clone filament path is not 100% straight with this design, still not a problem since the variation is small, i have attached a imagem here, search for my name and see images.
Direct Drive solved alot of problems to me and i recommended it, it now print like my Prusa MK3.
You need to follow the instructions on the detail page, same as titan extruder or aero...

I did it all.
Here's mine, already did the Y allso but not in the picture.

Looks good, did you use any belt tensioner to Y now?
Put direct drive and it will print like dream :)

No, it's the original one.
Oh, i allso have a full metal Micro Suisse .
Until now i was only struggling with this problem.
I couldn't figure it out at first until i saugh your post.
I notice if i loosen everything i can pretty much set it good.
The moment i tighten everything it goes back to a 2-3 mm difference.

You also have to calibrate the vertical linears, by loose them with the blocks (at this point Z and Top must be fixed and tight). You have instructions at description page

I have completed this mod, but this was very painfull.
When put the X into place (Vertical Bars) tons of balls pop out, i have to use another block and stell some balls since i lost many that pop off. I had to refill the block 3 times until i put it perfectly without loose any ball.
There are any trick to avoid that to happen?

I think the secret here is not to remove the bearing block from the rail. A block purchased without a rail comes with a black plastic insert that holds the balls in place. A block and rail purchased together come assembled as one piece with little red plugs in the end to keep the block from coming off. I you are putting a separate block on a rail you are supposed to slide the block from the plastic insert directly onto the rail. That keeps the balls in place. But after saying all that, yes, it is a pain to have to put the little balls back into the block but with patience it can be done. It sounds like you already know that.

thanks for replu if one carriage is stiffer than other will the z height on ea h side be dif or would they keep up? i had problems with wheels where they wouldnt keep up with each other so wondering if linear rails keeps them more fluent than wheels? what grease do you use for the bearing blocks?

I'm not real sure what you are asking here. If one of the bearings is not working then I would assume there would be problems. I'm not real sure what grease to use. There are as many opinions on that act there are bearings being used. I just use what I have, some model train gear lube.

what i am asking you is do they keep in sequence, do you have to relevel your bed much with them on? Thanks for answering my questions i hope it helps others too when was the last time you leveled your bed? i want to know if they are more realiable then vwheels

I think the linear rails have less play than the wheels which results in their holding position better. As far as leveling the bed, there are other factors to consider like how hard you push on the base plate to remove a print. I feel that that is the thing that affects the need to level the bed. It's why I use a removable glass bed and take it off to remove the print. The X plate under the bed is surprisingly soft.

one last question why do you use eccentric nuts on this mod? thought these do not need eccentrics

I used the eccentric nut on the inside spacer of the left post because the hole in the back plate is sized for the larger shape of the eccentric nut unlike the 5mm holes in the other locations of the plates. Using the eccentric nut to fill that spot just keeps things a little tighter.

this confuses me majorly. as your carriages ain't parallel ones lower than the other, how can this even work? your x bar would be highly bent

I believe you are referring to what I call the bearing blocks. No, they are not the same height along the Z direction. One is higher than the other. That does not matter as long as the direction of travel of each block is along the Z axis and each block is perpendicular to the X gantry.

so your saying it wont look bent?

I'm not sure what you mean by bent but it ends up looking and working fine. I have no trouble with my setup and these parts and templates are what I used to set mine up.

Is there anything stopping me from drilling the left Z carriage holes higher up to match the one on the right? As long as I use bolts with a round, pan or cheese head I think there should be enough clearance for the X belt & belt joiner.

i Think you are talking about the 4 holes for the bearing blocks. If so, I guess you could as long as it doesn’t interfere with anything else.

is there a reason why you used eccentric nuts on it? when theres no wheels for them to tighten onto? does the right side use a eccentric nut too?

the quality of printouts has improved?

Added V2 for the limit switch. V1 has a problem that it hits rubber wiper on the end of the bearing block. I wasn't comfortable with that so I moved the switch out 10mm so that it hits on the metal left X gantry plate. Also added a raise to it so that it rides in the aluminum extrusion slot. That makes it a little easier to adjust.

I'm started working on posting the STLs and files for a new version of this. Rails are moved to the front of the vertical posts and all attachments are metal to metal. It results in a very stiff and smooth mod.

Fantastic update! It also sove the bed cut :) Any deadline for final version?

Consider it finished. It's been performing well for me. The linear rails take the play out of the X gantry.

Nice :)
On that part do you use/need extra hardware? Or just take out the wheel and place the screw?

The screw is one of the 3 M5x50mm screws listed in the parts as are the nylock nuts. The spacers are from existing parts.

Thank you, any reason why you use 50mm? By my measurements 40mm or 45mm will do

The linear bearing will push the front plate out by about 9mm. You still have to maintain the position of the back rail position so add that extra 9mm into your calculation if you are measuring the stock machine. I measure 42mm from the front of the front plate to the back of the back plate so when you add the required length for the nuts you will need the 50mm.

Ok i understand now :) Thank you once again! Great work you did here

Well. As much as I like this mod I'm going to un-recommend it for now. The design is fine and the fit it good. The problem is that using plastic for the adapters is not working as well as I want. Its too soft resulting in movement of the X gantry. It's good when everything is freshly tightened down but I think the plastic is crushing and causing it to loosen up again. The connection to the bearing block seems pretty solid but I having trouble with the connection to the X gantry. The obvious and fix would be to make the adapters out of metal but since few of us have that kind of equipment or skill I'll not go down that path. I'm using PLA since that's all I have right now. If someone wants to do this with ABS it would be interesting if that would help. If you do, please post. I'm not giving up. I have a few ideas to still keep it simple and add to the design. It'll take a little time. So for now I'm marking it as a work in progress.

This is great, i wonder if it would be simple to do the x also? Perhaps it would be too much force needed to stop it?

Working on it. Will probably start posting today.

Same for me. I have MGN12H (fake) founded on Amazon.

Very noisy, many metal sound and there are places where it blocks.

You think it's possible to use the real block MGN12H on the fake rail ?

Sorry. I have no idea. I've read that probably not but can't tell for sure.

You have trim the bed, but the glass is on the top. Do we need to trim the glass too?

Depends on the size of your glass. The rails stick out exactly 8mm from the sides of the vertical posts. I measured 7 to 8 mm of clearance between the original plate and the side posts on each side before I started so it was a wee tight. So if your glass is slightly larger or exactly the same size as the plate then you will probably have to cut it. If it is slightly smaller than probably not. For me it was slightly smaller so I didn't have to worry about it.

Ok that will be a problem... My glass is exactly the bed size.
I use V6+volcano which subtract 8mm from Z, will that help? My Z Axis is 10mm upper than stock from bed

Not sure what to tell you except to measure what you have. You need 8mm + clearance of at least 1mm on each side of the bed to fit the rails.

I mean if my Z axis total lenght is 240mm when stock is 250mm, as i use volcano hotend when my nozzle touch the bed the X granity is 10mm upper compared to your, so it's possible that MGN12H never touch the bed because of that. Can you measure how much the MGN12H pass the bed when your Z = 0?
EDIT: Or the extra size are need for the Rails and not the block?

Hmmmm. Still not sure what your asking but I'll take a shot at it.
mgn12H block never touches the bed. It stops well above the bed. The clearance is for the rail only.
But...… Since not part of the block ever travels below the top of the bed then the rail doesn't either. That does raise the possibility that you could cut the linear rail to only be from just above the top of the plate and go up from there. That way you would not have to cut the hot plate for the clearance.

I understand now, thank you.
Good point, i will order some and try to cut then, as also my Z is only 240mm i can play with that too. I will go with 300mm rail instead of 350mm, i think it's safe, that way i have to cut less.
Do you have a link for Y mod?

Creality Ender 3 Y Axis MGN12H Linear Rail Mod

Very cool ... and thanks! I was looking at a few other designs and this by far is the most simple; saved me drilling some 90° aluminum angle which likely wouldn't have been 100% true 90

much thanks