MilkRap (Milk Crate RepRap)





Introduction: MilkRap (Milk Crate RepRap)

This instructable describes how and why I made a RepRap Prusa Mendel V2 integrated into a Milk Crate (Dairy Crate).

Step 1: Background

I have been a Maker in the purest form since I was a kid, and I am so glad that there is now a name (and community and movement) for what I am. Just a few years ago I would have to refer to myself as a "guy who liked to take things apart to see how they worked and also build stuff". Just saying "I'm a Maker" is sooo much easier. I purchased a RepRap Prusa Mendel V2 kit from the good folks at Maker Farm (thank you Colin for all your support) about 8 months ago and immediately fell in love with the machine and with 3-D printing.  But a few things about the Prusa struck me as opportunities for improvement. In particular was that to build a Prusa, the first thing to do is make a frame out of thin air (not literally of course, but constructing the frame from threaded rods is a slow process requiring lots of measuring, cutting, joining, leveling, and plumbing). So I began thinking of ways to build a Prusa into a rigid frame that was easy to construct (good) or already constructed (better). I am also an avid fan of recycling and finding alternative uses for objects borrowed from other industries. Then, I either saw or remembered seeing piles of milk crates sitting behind a convenience store getting dirty and abused, or milk crates being used as shelving in a college dorm, or as a  step stool in a mechanics garage, etc. It struck me that milk crates are everywhere you look and are also built to be very strong. As it turns out, the interior dimensions of a rectangular milk crate is big enough to insert the working parts of a Prusa Mendel and achieve the same build area in the X and Y direction and......... 

Step 2: Advantages Over a RepRap Prusa Mendel V2

get even more buildable area in the Z direction!!! Because the rigidity of the milk crate comes from the sides and base, it doesn't need upper crossing members for support (as the Prusa does). This allows the X carriage to move and print as high as your imagination (provided you use Z axis threaded rods long enough and create support towers (see step 10) large enough to hold them. A  standard Prusa that comes with a Greg's Accessible Extruder like the one I ordered has an actual print area of about X=7.5" before the extruder motor hits the Z axis threaded rod, Y=8.5", and Z=4.5" before the large extruder gear hits the upper threaded rod crossing member. That is an actual build area of about 287 cubic inches. Changing the extruder to a smaller Bowden tube style would capture another inch in the X direction and almost 3" in the Z direction so the print area increases to 542 cubic inches but there is still an eventual limit in the Z direction due to the crossing members. Other advantages of the MilkRap design are: 1) easier to build for a novice or non-technical person, 2) much faster to build, 3) extremely portable, 4) very durable, 5) milk crates are cheap (please remember that taking a milk crate from behind a store, etc is stealing. I purchased my milk crate from for $8 plus shipping, 6) milk crates provide lots of places to attach unruly wires, 7) all belts are tension-able in place using tensioning screws, 8) lighter/minimalist X and Z carriages to reduce weight and increase speed, 9) simplified custom Bowden Tube / Direct Drive extruder, 10) Z axis threaded rods are easily plumbed, 11) no more bulky 5/16" bolts in the Y and X idlers, 12) a great conversation starter!

Step 3: Download and Print the STL or SKP Files for the Plastic Parts

Files are HERE!!

See comments for extra notes.

Step 4: Use the Jigs

Use the printed jigs to position and drill attachment holes for the Y axis smooth rod, motor, and idler mounts as well as the Z axis motor mounts. The jigs are designed to be a negative match of the physical geometry of the milk crate and ensure exact placement of mounting holes. Slide linear bearings over Y axis smooth rods and Insert rods into rod mounts. Attach mounts to the milk crate via holes from previous step with 6-32 screws and nuts. Attach Y motor to motor mount and motor mount to milk crate. Now attach Y idler to milk crate the same way. The Y idler uses a standard 608 skate bearing. Lots of Prusa kits come with 5/16 bolts to attach these bearings. To me that was kike using a sledge hammer as a fly swatter so I printed some 5/16" OD 9/64"ID inserts to be able to attach the bearings with 6-32 machine screws. I used the same inserts to attach the 608 bearing in the X idler. Attach Z axis motors to mounts and mounts to milk crate via holes drilled previously.

Step 5: Standard RepRap Stuff

Because this is a RepRap based printer, a lot of the build procedures are very similar to building a RepRap. So, to save time I will refer you to the myriad online sources of instructions for building a RepRap including ( and These web pages will guide you through the basic processes used in building these parts of your Milk Strap: Y axis smooth rods to linear bearings and build plate (heated or not), X axis motor mount and idler attachment to X axis smooth rods and Z axis threaded rods, attaching all wires and electronic components.

Step 6: Milk Crate Reinforcement

Although milk crates are designed to be very tough, I did find it necessary to add a piece of 3/4" x 3/4" x 1/8" thick aluminum angle to the long edges at the top of the crate. I chose to mount the aluminum in a way that did not require drilling through it (though in hind sight that may have been easier or at least used smaller/fewer printed parts. The jigs used to position the mounting holes remain in place after the holes are drilled and become a permanent part of the machine. Jigs are placed and holes drilled for the two outside brackets and one middle bracket. Aluminum is manually held in place while the other parts of the brackets are bolted on. Now the aluminum is secure. The middle bracket is much larger than the outer brackets and becomes the Z axis tower. This tower holds the tops of the Z axis threaded rods in place.

Step 7: Z Axis Towers

The Z axis towers are the key to the "unlimited" Z axis printing height of this machine. Because this is the first iteration of this machine I have produced, I chose a Z tower height I was absolutely sure would be stable while the machine was printing. I highly encourage you to manipulate the SKP files to create larger/higher towers and push the envelope, just make sure the wall thicknesses and geometry of the towers can support the height you choose. I will be doing the same when I get a chance. I hope to hear from you! The towers are topped with a two piece system. The first piece is inserted into the main body of the tower and is designed as a "track" in which the second piece (which holds the bearing) can slide in either direction along the X axis. Using a plumb bob, the bearing holder is positioned by the builder until the 5/16" Z axis threaded rod is plumb. Once plumb is attained, the bearing holder is permanently affixed to the track via small screws.

Step 8: Bowden / Direct Drive Extruder

I chose to use a Bowden tube extruder with a direct drive feed system as this spoke to my desire for simplicity. Neither of these pieces are ground breaking on their own and many versions of these devices can be found on the web. I chose to use a Mk-2 J-head hot end because it is the same one that came with my Maker Farm Prusa and it has worked without flaw. The PTFE Bowden tube is held in place via a simple holder and sharp set screws that pierce the PTFE Bowden tube but do not penetrate all the way through (drywall screws work well but are a bit big, or you can sharpen a small #2 wood screw). The extruder is my own design. I had read some opinions that a NEMA 17 does not have enough torque to direct drive 3mm filament so I figured I would hedge my design by using two NEMA 17's rotating in opposite directions (each with a MK-7 drive gear). 

Step 9: Thats It !!

Milk Raps really are easy to build, especially compared to a Prusa V2. I see that the Prusa i3 addresses many of the issues I had with the Prusa V2, and although I have not seen an i3 up close, it doesn't appear to have the durability or portability of a Milk Rap and it still has a crossing member that will ultimately define the Z axis max height. Really though, at the end of the day I just had to make my own machine. Makers gotta make and hackers gotta hack (the good kind). 



    • Planter Challenge

      Planter Challenge
    • Oil Contest

      Oil Contest
    • Clocks Contest

      Clocks Contest

    We have a be nice policy.
    Please be positive and constructive.




    I am posting some unsolicited observations about sourcing parts for a MilkRap build (or any "xxxxxRap" for that matter. I will also post links to parts I self sourced if anyone is interested. Perhaps my experience will save someone some time, money or headaches.

    I am a cheapskate by nature - something that fuels my DIY spirit - so I have spent countless hours looking for the cheapest way to build a 3D printer. In fact, when I was designing the MilkRap, lowest possible cost was one of my two major design goals - the other was easiest/fastest possible build.

    As a result of my time spent scouring the web for the cheapest components I came to the conclusion that buying direct from places like ebay or a Chinese website like can perhaps save you a few bucks but they come with potentially higher "prices" in other areas: Delivery time, quality, completeness, correctness and accountability.

    Delivery times for some Chinese websites (even things on ebay coming from china) can be up to a month or more depending on where you are located.

    Quality: I am an expert on this as I have purchased the same component from many different factories in china. What I can tell you is this; if there are 100 factories in china that all make product "X", they will all use different levels of quality components in the manufacture. So like a box of chocolates, you never know what your gonna get.

    Completeness: I recently bought a set of Nema 17 stepper motors (used) on ebay for cheaper than a new set would havfe cost from a reputable supplier who I had purchased from before. When the motors came they were six prong outlet when my printer needed four. Not a huge deal, but it would take some soldering to fix. Also, they did not come pre-wired. I would have to buy a double ended plug for each motor to get them to work (actually two sets for each motor to convert them from 6 prong to 4 prong.) The set I could have purchased from the reputable supplier was about 30% more expensive, but came correct, new, and pre-wired. I originally thought I wouldn't mind soldering the connections, but when I was done I wish I bought the more expensive ones.

    Correctness: A different time, for a different project I purchased an AC to DC power converter from AliExpress. The description on the website clearly stated that it could be used with either a 220V input or a 120V input, so I bought it. For my application, I specifically needed a power converter that can be used for either input voltage depending on what was available wherever I was. However when I plugged it in to a 220V outlet the huge spark and smell of burnt electronics told me instantly that the product had been mislabeled on the website and was not actually build to handle 220V input.

    Accountability: American companies (for the most part) have all figured out that accountability (i.e. customer support) is a huge part of getting return business and favorable reviews. China on the other hand, has not. Trying to explain a problem to a foreign company is hard enough, then you try to get a refund - Yikes!

    So, in brief, if I had to do it again I would stick to American suppliers with good reputations (check the web for company reviews). I have had a very good experience with the folks at This is not to say other companies wont give you just as good of an experience, its just that I have really only delt with Makerfarm. They should have everything you need, more or less. If you need custom raw materials like PTFE tube or steel round bars, McMaster Carr and Grainger are the place to go. They have really good pricing, no minimum order quantity for most products, and one time I ordered from them in the morning and it was delivered that afternoon (How did they do that !?!?) Both of those companies are a makers best friend - they carry everything under the sun.

    Partial MilkRap self sourced BOM.

    Black rectangular milk crate 24 quart $7 + $12 shipping

    Mk2 j-head hot end $49

    Printer board rev d. $87

    Mk1 heat bed $19

    Nema 17 used motors $52 for 5

    Minimalist direct drive extruder $0.0

    Lm8uu linear ball bearings $5.25 for 10

    Mk7 drive gear $12.5

    Atx 500w power supply $20

    Steel rods came from McMaster Carr online

    PTFE tubes for Bowden extruder came from McMaster Carr or Grainger, I cant remember.

    Glass plate for top of heat bed came from Lowes (I found you do not need to use borosilicate glass, soda lime window glass has worked just fine for me)

    Umm... isn't the bed for the Prusa Mendel like 225 mm square (like ~8 inches square?) -- And Milk Crates are what, 12" inches square on the outer diameter? -- I'm really confused on how you got this to fit and work... -- Are you sure it wasn't a Huxley that you built?


    How hard would this be to do with a i3? thanks

    Ok I'm new to 3d printing, have never printed. This milk crate design looks like a great way to start. One problem, where's the special plastic crate mounting parts? In a 3d printer that I don't have yet? Is there anyway to get them made, or even the cad blueprint file? Or am I looking at a one off design never to be recreated? PLZZZZZ I need answers

    1 reply

    reprap printers are designed to be as printable as possible, so, they are supposed to spread virally, with friends printing parts for friends. If you have a friend with a 3d printer, they could print the parts, if you have a library nearby with a 3d printer, you may be able to get them printed there, or, if you are the first person in your area to try to build one, you can buy the parts online, possibly on ebay, and start the reprap spread in your area.

    I'm hoping to use the new 3d printing facilities at my university to print the necessary parts, and then print parts for my family :-)

    I have a borrowed Replicator 1 and have been having a ball. I did not like printing with ABS so I tried PLA and WOW. Everything started turning out great! I found I don't use heat on the HBP it works better.
    So now I am ready to gather the parts and see how INEXPENSIVE I can make it for. The MilkRap looks good. I won't need the HBP so that's a little off the build price.
    I will keep track of the build and see how it goes.
    BTW...I am going to use the Makerbot Replicator 1 to make the plastic parts. I think I can do it for less than $200.

    3 replies

    Great news!! I am very excited for you. I assume you are using a 3D CAD modeling program to create the parts. I personally prefer ABS because you can create small pieces and join them permanently and easily with (home made or store bought) ABS cement (hint: it's just acetone and ABS).

    I found the most expensive parts of these machines is the circuit bird and motors. I haven't found a way to get that price down yet, which is hard to understand since you can buy an arduino for $10.

    If I were going to make another Milky I would make the z-towers out of steel square tube instead of all that plastic. Steel is cheap and strong. Also consider using steel angle on the edge of the crate instead of the aluminum I used to save a few bucks.

    I will post more thoughts as they come to me.

    Good Luck!!!!

    Hey, gmdownes. If you want a cheap 3D printer controller board, you can use a RAMPS board like this one for $29:

    It includes an Arduino mega, shield, motor drivers and an LCD. I have personally bought It from the seller and it has worked very well and use them in both of my 3D printers. The only downside is that you have to wait a while for it to arrive.

    We require the files, please!

    Can you clarify what files are the ones necessary to print this? There seems to be quite a few duplicate files and even a folder that says new. Can you clean out the old .STL files to make this much easier to understand.

    I would really love to move forward with this, but I have a problem... How do you print parts for a beginners 3d printer when that person obviously doesn't have one? ie: It hasn't been built yet. Thanks all. Perhaps yu can guide me through this whole thing. It seems confusing to me and if I can't print parts then Where do I get everything?

    Thanks Everyone

    could you provide quantities for each plastic part required for fabrication? I found that not all files are in STL format, I dont actually own a 3d printer yet, and was hoping to build my own based on these instructions/ mendel i2 instructions and wiring, so is there any way to get all files in STL format? or any way to convert the format myself?

    Hello World!

    Follow this link to all files MilkRap

    Please feel free to ask any questions you have (after your due diligence) and I will try to answer as fast and accurately as I can.

    The files are a bit of a jumble, but if you look enough you will find everything you need to build a Milky of your own.

    Note that I did not use the "side by side" X axis smooth rod configuration shown in the main model. There is another sketchup file for a smooth rod holder where the rods are stacked vertically. Likewise, the Z carriage in my prototype is reconfigured to hold the hot end on the vertically stacked smooth rods (though I am not sure if the sketchup model for the carriage I used is in this dropbox folder.

    Anyway, you will have fun figuring everything out.


    2 replies

    Is it ok if I orgainize it all and put this on thingiverse giving proper credit?

    That would be awesome. I will be in your debt.

    That would be great. Please advise when you post the files and I will load them and fiddle with them and then post back a finished product. Those who want me to print t parts can also let me k ow separately.


    In the absence of the STLs, I think I can reverse engineer the MilkStrap using some basic components I already have. It should be easy enough to fashion the components:

    20mm 80-20 extrusions for the towers

    20mm 80-20 extrusion along the bottom to hold the towers together

    Bearing mounts on the extrusions for the Z leadscrews. Z motors can be bolted to the towers.

    8mm rod for X and Y and a basic carriage out of Thingiverse take care of business there.

    I'll give it a try and see where I get and if successful I'll post an 'I made it' and make parts I print available.

    3 replies

    Samern, (and the entire community)

    I simply can't apologize enough for not posting the STL files. But as this was the first iteration, many of the parts were modified by hand a lot or a little between being printed and integrated into the machine. As such, I didn't want to post a bunch of files and have people commit to the project and get stuck. Another point of hesitation is of course all of the things I learned on iteration one that I would make better in iteration two (still in my head). I am positive there are a great many areas for improvement. Let me know if I can answer any questions for you as you go. P.S. I LOVE the idea of using thingyverse parts... We are all in pursuit of Occam's razor.

    If you could post them anyway I will take it upon myself to test print, correct and repost. That being said here is what I would do:
    A makerslide along the bottom with a single threaded rod for X or Y. The same for the other horizontal axis and finally 2 more for Z. This way there is no gantry. If you don't want to use makerslides you can put your table on lm8uu pillow blocks and mount smooth 8mm rod with aluminum clamps on the crate ' s exterior. That's even easier and and the rod will self reinforce the crate frame and make it very rigid. Might try that too. The carriage itself can be any of the bunch on and the threaded rod can pass through an embedded nut in the carriage. I've put two of these on top of each other if folks want and are willing to cover the cost.


    I was thinking about this over the past 12 hours and have realized that the reason I have not uploaded any files is that I was working so feverishly and not taking notes, that going back and trying to figure out what .STL files were the final iterations would be very taxing. So I have decided to instead post the entire Sketch Up model. I had not posted the model previously because I do not delete previous iterations of parts as I work, so the model space contains several iterations of parts next to each other, which can be confusing if you are trying to decide which iteration to print. If I went back into the model now, even I would need to really study the parts and perhaps make test prints to figure out which one I ultimately used in the finished work. I also noticed that after converting some .STL files into .SKP files I found on the web (like Thingiverse) and importing them into my model, the model surfaces began acting funny (not ha-ha funny) and became more difficult to work with. I don't think it is a virus, but rather just one of the many ways that Sketch Up lacks the ability to handle complex tasks.That being said, I know that many people would just really love to have a jumping off point and won't mind sifting through the rubble a bit. I will upload the Sketch Up model this weekend; that is what I would want, then you can tweak the designs and export any .STL you choose.