Hochleistungs Werkbank: Epoxy Granite MR-1 Table

I took a somewhat different approach to building my mill, and I wanted to share the results. I will publish some deeper info into the casting process and final photos later on, but for now here are some build process photos. And in order to sprinkle a small amount of precision machine tool magic, I’ve given it an oversized name in german, Die Hochleistungs Werkbank.

This machine has no drains- the whole table hovers above the chip bin like a Datron. I also built a new frame from welded 1/4 inch wall square tube. The fixture plates are 40mm thick, stress relieved cast iron, and are removable for fixturing directly to the machine bed if needed.

Just need to put on the enclosure and finish sealing up the flood coolant system. There will be a 5 gal sump below the chip bin and in-line filtration.

The mold with Bondo fillets, waxed and ready for fill. NOTE: if I did this again, I would use melamine board rather than MDF. Even with extensive waxing and a good amount of draft, it was a challenge to demold. The epoxy granite slurry is extremely abrasive, and easily wears through the wax barrier. This wouldn’t be a problem with melamine laminate board. The only reason I used MDF was because I already had it laying around.

A shot halfway through the epoxy granite pour. Extremely sticky stuff.

Here’s the casting inverted, before demolding and painting. The table + subframe weighs about 850 lbs.

The finished machine bed after demolding. Originally I was planning to leave it black, but ultimately I decided to give it a coat of Raptor epoxy primer (grey) and some 2k gloss topcoat - it’s easier to see dropped fasteners against a lighter grey.

Here’s the subframe and base frame stack up bolted together. The original sheet metal legs provide some extra stability, as well as some extra vibration support when the levelling feet are deployed, so that all the load isn’t on the levelling casters.

Y-axis risers made from 1 inch blachard ground 4140 stock, parkerized black to match the rest of the machine.


Here’s a spread of the more interesting epoxy
granite formulations I went through. Ultimately I was optimizing for:

*Volume fraction of filler, in order to control thermal expansion difference between embedded/bonded steel components and the casting.
*high Mixability. This is only viable if it can be mixed in garage shop conditions, which meant a 3.5 cf cement mixer.

I used the rule of mixtures as a rough proxy to estimate thermal expansion of the EG casting. At ~20 vol% epoxy (15.5% massfrac) the mixture should have a linear CTE of around 12 (10^-6 m/m°K). That also happens to be right around the lower limit of where I could reasonably mix large quantities of EG, since viscosity increases in a non-linear manner with increasing filler.

The final formulation was as follows (percentages are of total dry fillers by weight):


  • 5.5 % Fines - made of 5% Sil-Co-Sil #45, with a D50 of approx 21µm, and 0.5% Fe3O4 powder.
  • 21.5% Semi-fines - Lane Mountain LM125 Silica Sand, with a calculated D50 of 99µm
  • 73% LM30 Silica Sand, with a calculated D50 of 696µm.


  • 15.5% Mas Deep Pour Epoxy, which has great (unmodified) strength and decently rigid elastic modulus.

The Mas Deep Pour epoxy TDS states a flexural strength of 13,480 PSI and compressive strength of 11,260 PSI. Just as important however, is that it has an extremely low mixed viscosity (260 centipoise, like a thin syrup). I attempted to use a higher viscosity epoxy system (Promarine), and it had unacceptably high viscosity. If I were to re-do this, I would choose Mas Deep Pour X - I think the slight sacrifice on mechanical properties and viscosity are counteracted by the benefits of being able to stage the epoxy pour over several days. With the Deep Pour standard formulation, I needed to pour sequential mixes within about 4 hours of each other to avoid laminar discontinuities. Exhausting!

Another note - adding fines to the mixed epoxy, fully mixing them together, and only then adding coarse and semi-fines resulted in a MUCH easier to mix slurry, vs attempting to mix coarse in first. Coarser particles seemed to have a much greater impact on viscosity than fine particles, up to a point.

Some more notes and data can be found here:


Impressive work! Very interested to see what else you come up with.

1 Like

Great Work! Gives me the vibes as the Adam Bender machine floating around on Hackaday.

A couple of questions.

Did you add that Y axis spacer to gain back Z space from the extra thick fixture plates? Or do you plan on reworking the Z axis stage to get more overall Z workspace?

Do you have more details on those cast in thread bungs? Custom machine or OTS part?

Will the enclosure still fit? It looks like it!

Other the chase of machine tool perfection. Were specific needs that forced you make these changes?

Do you have any other upgrades planned?

1 Like

You’re correct, the Y axis spacer only gets me back the space I lose from the extra thick fixture plates. I intend to machine similar risers for under the Y rail beams (at each of the 4 corners), but these will be made on the MR-1 itself. I figured it would be easier to make 2 to start than 4.

Yes - there are a few types, all custom. I turned the ones at the back (with 1/4-20 threads) out of 304 stainless round stock. I gave up on this because it was taking too long. The ones in below the fixture plates have 5/8ths internal threads, I’m not great on a manual lathe, so I didn’t want to turn the internal threads. Instead, I made those out of these probably mild steel weld bungs: AA-138-J Steel Weld on Nut, 7/8" Long, 5/8" - 11 Right Hand Thread - A&A Manufacturing
I threaded partially threaded on some 5/8ths bolts from the underside, tack welded them together, and then sand blasted and parkerized the lot for a bit more corrosion resist.

Yes - just need to finish caulking and sealing!

Forced? No… but the main goals were to make a machine with these major traits:

  • High resistance to freeze-thaw thermal cycling, in my currently un-heated garage. As they say, it’s not a question of whether concrete will crack, but rather when. EG should be much better.
  • Mobile and transportable: the original design is hardly mobile, and the sheet metal legs don’t inspire confidence that I could have put it on a trailer and moved with the machine without any damage. The rigid subframe lets me roll the mill around the shop with less likelihood of losing calibration.
  • Better cleaning workflow. I wanted to be able to wash down the machine with a hose and nothing else, and deal with chips out of the chip bin later. Drains on the original table design seem like a very annoying feature. Someone made a chip auger- that’s a step in the right direction as well!

I know my own habits pretty well. If I have to do a laborious clean up process involving vacuuming and sweeping after every job, I simply won’t. And then it’s left there, as an annoying barrier to starting up working with the machine next time.

Yes - accordion style rail covers will be imminent. Later on I’d like to swap to closed loop servos and an ATC spindle. The anchors at the rear are intended as mounting points for a future ATC magazine.


Thank you for the in-depth reply! Be sure to post up your other upgrades overtime. I’m quite excited to see your future work! :+1:


Superb results and thanks for sharing! Hell of a job! While a MR1 is currently out of range for me, a small semi-cheap chattery manual machine has been in the back of my mind for a while. This is great info! :+1:

1 Like

I’ve heard of people filling the column of a low cost manual mill with EG for better damping. I’d definitely consider doing that on a mini lathe - although the epoxy alone in this project cost as much as a China mini lathe.


Did you mean ‘Mini Mill’? I’m not sure how you would use it on a lathe.


Like this: https://youtu.be/2NmZq7F_gUE

There’s quite a lot of hollow space in the underside of those mini lathe castings. Its one of the reasons they are floppy. I wouldn’t follow the process in that video exactly though.

1 Like

Some progress made designing the Y linear rail covers.

I plan on laser cutting, folding and gluing the first prototype of these, but I also did reach out to a couple of chinese CMs and got quoted about $250 for a single set. Really not too bad. The price could come down if some people wanted to do a group buy. I see no reason why these couldn’t be made compatible with the stock MR-1 as well.

Still need to design the endcaps, attachment points, and the surfaces they will slide on. Will probably 3D print those from PET to start.

The X axis is giving me a little more trouble. The top rail and screw are better protected by default already sitting on the back of the gantry beam. The bottom rail could be protected by a roll-spring type cover or an air curtain … although TBD if it actually gets pelted with chips.


This is a fascinating build! Thank you for sharing your process. I hope you keep this updated through completion and into cutting chips.


What are the dimensions of your table? It looks like you might have left over Y travel to put a tool changer rack well behind the table and get some more Z distance for tools to hang into.

I certainly do have space for a tool rack. I cast mounting anchor into the table behind my fixture plate specifically for that eventual purpose.


If you have the time and interest, please make sure your rail covers would work with a stock MR1 and I promise you I and others will buy!

Amazing job as always.

1 Like

I made a good bit of progress on rail covers this weekend. Im hand-gluing some prototypes. For these to work they do require the X gantry beam to be lifted 1 inch on risers. Other than that, they should be plug and play with the stock machine. They attach to the Y castings and rails with some bolt on plastic parts, also nearly complete. In the current design, the rail covers ride on two pieces of 0.5x1.0" aluminum angle, which will suspend them so they don’t sag onto the ball screws.

If there’s interest perhaps we can set up a group buy for some better made covers from a Chinese manufacturer, using my drawings. They would likely cost about $50 per cover (so $200 for the Y axis) without any bulk discount, and not including attachment components, which can be 3D printed.


Very impressive.

Hi @amosdudley, very impressed with your work and thrilled to see cause its exactly what I was hoping to do! Mind a few questions?:

How are you connecting the subframe cast into the epoxy granite with the rectangular frame below? Are the rectangular tubes simply sleeved together and then getting bolted at some point?

Would you be open to sharing design files for the casting (assuming you modeled it first and then built mold?).

Open to sharing any details on your energy chain setup and mounting? Looks like bearing flanges on both ends of the chain, mounted to top of spindle and then somewhere on enclosure?

Appreciate the consideration!

1 Like

@jakehorsey Of course!

I think most of your questions should be answered by this CAD. Sorry for the disclaimer, but:

If you use this model, make sure to check dimensions against your own kit, especially for the mold box

Many parts on the MR-1 are welded and I made this without data on the tolerance ranges of MR-1 components. Also, some details aren’t represented in this model - for instance, I hand-fabricated the brackets that allow the subframe to bolt onto the welded base frame, so there isn’t CAD for that. Also, doesn’t include the X carriage casting, spindle, or spindle mount.

With that out of the way, this is my machine CAD:

How are you connecting the subframe cast into the epoxy granite with the rectangular frame below? Are the rectangular tubes simply sleeved together and then getting bolted at some point?

The subframe’s (what’s glued to the machine bed casting) vertical members sit on brackets welded to the base frame, which I made out of some square tube cut at an angle. The subframe bolts down to these base frame brackets from underneath - the subframe verticals have welded caps, each with a 3/8"-16 threaded hole.

This doesn’t constrain it from side-to-side movement (aside from the friction of the clamping bolts). This is so that, if in the future the base frame warps for any reason, it doesn’t necessarily also warp the subframe / machine bed.

Last picture is the subframe during painting - you can see the threaded caps (and my amateurish welding job, lol).

Would you be open to sharing design files for the casting (assuming you modeled it first and then built mold?).

See model above!

Open to sharing any details on your energy chain setup and mounting? Looks like bearing flanges on both ends of the chain, mounted to top of spindle and then somewhere on enclosure?

The drag chain mounts to the enclosure and the spindle cover with some 3D printed adapters, which are attached to some extremely cheap lazy susan bearings. Check out the second tab in the Onshape CAD (Drag Chain Assembly) for details.

I’d like to have used higher quality bearings, but it seems like there isn’t much in between the 5 dollar lazy susan bearings from Amazon, and a $500 bearing from mcmaster. There is a little slop in their motion, but so far it’s not a problem because the machine simply doesn’t move that quickly. If / when I upgrade to bigger servo-drive motors, I can imagine fast rapids putting too much strain on these cheap bearings.

1 Like

Have you looked at these aluminum style lazy Susan bearings? https://a.co/d/6cQIKGR

1 Like