Tool tray for Roland MDX-40A milling machine

Roland MDX-40A

A friend of mine bought himself a Roland MDX-40A desktop milling machine, with the optional ZCL-40A rotary axis.  It was from an E-bay seller.  It comes with a large assortment of tools and accessories.  But they all came in a bag.  Hard to find small items, and not very well protected.

As one of our first large projects on the machine, I designed a storage case to hold all the accessories.

The heart of the storage case is a tray with cut-outs to hold all of the various items.  I had some 2″ Styrofoam SM insulation left over from an old project.  I wanted to use this as the material for the tool tray.  Styrofoam is very fast to machine.  And, being so cheap, I figured if I ever want to change the tool tray, I can easily whip up another.  I also found a reusable plastic box that used to contain CFL bulbs from Costco, which appeared to be large enough to hold everything (the largest single part being the calibration bar for the ZCL-40A rotary axis.)  The plastic box has radiused corners and edges.  That means the tray has to have its bottom edges similarly radiused to fit.

I designed the tray in SketchUp.  Each cut-out is designed to hold a tool or part, with a small margin, and with a notches for fingers to pick up the tools.  For most parts, I just took measurements with a ruler while designing the cutouts.  For awkwardly-shaped parts, the wrenches in particular, I placed the wrench on my flatbed scanner, imported the image into SketchUp, and carefully traced its outline in lines and arcs.

To add a couple millimeters margin around the wrenches, my first naive approach was to just scale up the outline slightly.  But that doesn’t actually work, the result isn’t at all what I wanted.  Then I noticed SketchUp actually has a tool that does exactly the right thing: the Offset tool.

I also designed a matching insert for the lid of the box.

MDX-40A Accessories Case

There are spaces here for the following accessories:

  • The detection bar for calibrating the rotary axis
  • The detection pin
  • The live-center
  • The center-drill, in its tapered holder
  • Hex screwdriver for the center-drill holder
  • Hex key for various socket-head screws scattered around the machine
  • Wrenches for the spindle and collets
  • Collets: 1/8″, 1/4″, 4mm and 6mm
  • Z0 sensor
  • Z0 sensor cable
  • End mills
  • Small rectangular tray for miscellaneous bits

The large rectangular cut-out accommodates a stack of four storage trays for end-mills:

End-mill tray

Each tray has space for all the end-mill sizes from 1/64″ to 1/4″ inch.  I designed a tray for ANSI regular length mills, and a tray for ANSI long length mills.  I milled out two for each length, to accommodate both flat-end and ball-end mills, making a total of four trays.  The trays have short studs on the top surface that mate with holes on the bottom surface, so they’ll lock together when stacked.  I made the trays out of Baltic Birch plywood.  These were small enough that they could be machined in the rotary axis unit.

I made the plywood blank long enough for two trays.  I first milled a tray at one end of the blank, then turned the blank around and milled the other tray.  This minimized the waste caused by the really long clamping margins mandated by the rotary axis unit (more on this in another post later…)

The final product looks like this:

Completed MDX-40A Accessory Case

One thing I did wrong in my design was have the live-center sitting vertically, and projecting above the surface.  Same with the collets.  Because of that, I had to put matching cut-outs in the lid.  If I had laid the live-center on its side, and sunk the collets a little deeper, I could have got away with a lid that was just flat.  If I ever do another one, I’ll change that.

Also, I had a minor mistake in my design for the end-mill trays: one of the bumps on the bottom isn’t perfectly co-axial with the notch on the top, so the end-mill trays don’t quite stack up right, and they’re a bit proud of the surface, so I had to add another cutout area on the lid for clearance.

Replacing the Work Table

There were some challenges involved in milling the tray.  Mostly because of the large size of it.  It’s much too large to mount in the rotary axis, so that had to be removed from the machine, and the original flat work table reinstalled.

When I reinstalled the flat work table, I discovered that it’s not really all that flat.  It was very significantly bowed, so much so that a workpiece as large as mine could not be mounted without it rocking left and right, and front to back.  Apparently a manufacturing defect.

Before I could mill my piece, I needed to make a new work table.  I used Baltic Birch plywood, which is very flat and stable. It was actually fairly easy to do, and I’ll write it up in another post.

Milling the Tray

With a replacement work table installed, I was able to move on.  The next challenge was because the item had to be milled on both sides, because of the radiused edges on the bottom.

Normally, to machine both top and bottom of a workpiece without the rotary axis, you drill holes in the workpiece margins, that mate with alignment pins installed in a purpose-built work-holding jig.  The pins ensure that the top and bottom are perfectly aligned with each other.  Trouble is, my model is so large that adding a usable margin would make it exceed the capacity of the MDX-40A.  I would have to figure out a different way.

Since this thing doesn’t have to be cosmetically perfect, I opted to keep the idea of the pins and holes, but I put the holes within the model itself.  I chose a location for the pins such that the holes would be inside the cutouts for the tools.  This way, the holes on the top-surface would actually disappear at the end, as they were machined away completely.  The holes on the bottom surface would remain, but they aren’t readily visible in the finished product.  I was aided in this by the fact that the 2″ thick workpiece is significantly thicker than the model, so the holes don’t reach very deep into the finished model in the first place.

The holes have to be located on the model such that they are exactly symmetric about the model’s center-line, with the holes on the top and bottom exactly the same distance from the center-line, but in opposite directions.  I opted to flip it about the X axis (flipped front-to-back), so the holes had to be symmetric around the model’s midpoint in Y.  The easiest way to achieve the required symmetry is to be exactly on the center-line.  One of my holes is, because it’s inside a tool cutout that is very deep and long.  The other hole is slightly off the center-line so that the hole in top surface will be at the deepest point of the tool-cutout that it’s inside (the hole is inside oval finger-notch for the small wrench).

I also included in the SketchUp model the mounting jig, which is basically a rectangular piece of scrap plywood, which serves as both a waste backing, to prevent damage to the machine’s table, and as a place to drill holes for the alignment pins.  The holes in the jig are positioned to match up with the holes in the bottom of the workpiece when I’m milling the top of the workpiece.

I exported my model as DXFs using the SketchUp to DXF or STL plug-in.

I exported three DXFs from the Sketchup model:

  • The mounting jig, with holes but no pins.  The pins are just 1/4″ wood dowels I will tap in later.
  • The model, with no tool cutouts, only the alignment holes on the top and bottom surfaces.
  • The model again, with the tool cutouts on the top surface, but no alignment holes.

So, the steps for milling out the tool tray are:

  1. Set Z0 and Y0 to 152.5mm, the exact center of the MDX-40A’s working area.  This ensures that the model will be centered, and ensures that we can get back to the exact same configuration if we need to.
  2. Import the mounting jig model.  Create an SRP Player project that just drills the holes, but does not machine the perimeter of the model.  The holes are all we care about.
  3. Mount a piece of scrap plywood, large enough for the mounting jig, secured with double-sided tape.  I actually cheated, and used four separate small pieces of scrap, two of them located roughly where I knew an alignment hole would end up.  My Styrofoam workpiece would end up mostly floating, just supported at four points.
  4. Install a 1/8″ square end-mill, set Z0 to the top surface of the plywood, and start cutting to drill the 1/4″ alignment holes in the jig.  When finished, do not remove the jig from the machine.  It will be left exactly where it is until the entire project is done.  The alignment holes are exactly where we need them to be.  Do not install the dowels yet.  We need to drill the holes in the Styrofoam workpiece first.
  5. Load the DXF file containing the tool tray model with only holes, no tool-cutouts.  Create an SRP Player project to drill the alignment holes on the top-surface of the model.  Some more details are required here:
    • One cheat is required here: tell SRP Player that the workpiece is the same thickness as the model.  If you tell it the true thickness of the workpiece, it will try to center the model inside the workpiece, and it will have to drill down very deep to get the holes where it thinks they belong.  But if we lie, and tell it the workpiece is exactly the same thickness as the model, it will put the holes right at the surface, which is where we want them.
    • Limit the cutting area to only the holes, nothing on the perimeter.
    • SRP Player by default sets the cutting depth to only half the thickness of the workpiece.  Make sure the cutting depth is deep enough to reach the bottom of the holes (the wire-frame view is helpful here.)
  6. Mount the Styrofoam workpiece on the jig using double-side tape.  Alignment is not critical yet, we just need to be sure that the entire model is covered.
  7. Start cutting to drill the alignment holes in the top surface of the workpiece.
  8. Without disturbing the mounting jig, remove the workpiece.
  9. Tap 1/4″ dowels into the jig holes.  The should protrude just long enough to assure accurate registration, without bottoming out in the workpiece holes.  About 1cm.
  10. Flip the workpiece over front to back, and mount it on the alignment pins.
  11. Load the DXF file containing the tray model with the tool-cutouts.  Create an SRP Player project as follows:
      • Be sure the include the modelling form for any processes that have to cut out the outline (roughing, and finishing the edges.)
      • For finishing the flat area with the 1/4″ mill, limit the cutting depth to stop it from trying to finish the radiused edges too.  We’ll do them separately.  With the Styrofoam, you can specify a fairly wide path interval, 4mm or so, to cover the area quickly.
      • Finishing the entire flat part of the surface using a 1/8″ ball-end mill would take days, and still look bad.  So, limit the use of the 1/8″ ball-end mill to just the radiused edges.  I created four separate process steps, limiting the cutting areas to one edge each.  (You could also use the depth range limiting to start just a hair below the flat area, but that would still include the alignment holes in the process.)  Be sure to include the modelling form.  I used a 1mm cut-in amount and 1mm path-interval.  It comes out a little staircasey, but takes less time and is good enough.
      • Include another finishing step that covers only the alignment holes, using a 1/8″ flat-end mill.  Be sure the cut-depth is sufficient to reach the bottom of the holes (check with the wire-frame view.)
      • Roughing with a 1/4″ flat-end mill.  Be sure to include the modelling form.
      • To finish only the surface with the 1/4″ flat, limit the depth to just a hair below the surface.
      • With the 1/8″ flat mill, start the dept just a hair below the surface, so it won’t refinish the surface that the 1/4″ flat has already done.  Be sure the cutting depth will reach to the bottom of the cutouts.  Use wire-frame view to check.
    • Give SRP Player the full thickness of the workpiece.
    • We need to mill the bottom side first.  You can do this either by having SRP Player flip the model over when loading it, or just arrange the processes in the tool-path editor that way.
    • The bottom side: 1/4″ flat mill for roughing, and finishing the broad flat area.  A 1/8″ ball-end for finishing the radiused edges, and a 1/8″ flat-end mill for drilling the alignment holes.
    • The top side: 1/4″ flat mill for roughing and finishing the sides and surface.  A 1/8″ flat mill for doing the cutouts.
  12. Cut the bottom side of the model.  It should cut the radiused edges, and a new set of alignment holes.  When changing tools, be sure to set Z0 using an untouched area in the margin.
  13. When it’s time to machine the top of the model, remove the piece from the jig, flip it front to back, and mount it on the alignment pins using the new holes in the bottom.  You may want to break off some remaining parts of the margin, so it can rest on the newly-cut bottom.
  14. At some point when changing tools, you may not have any untouched margin left to set Z0 with.  You have to be very careful in that case.  You can set Z0 in a previously-milled area, but then you’ll have to carefully adjust Z0 upwards to where the original workpiece’s surface was.  It can be tricky to figure out exactly how far that is. To start with, SRP player will center your model within the workpiece thickness.  When milling is finished, half of the thickness difference will be above the model, and half below.  But if you’ve only finished the roughing and not the finishing, the offset will not be that much yet.  You may find it easier to stop cutting, measure the new workpiece thickness, and rebuild your tool-paths based on that new thickness.  In any processes where you adjusted the cutting depth range, you’ll have to recheck them.  And turn off any processes that have already been done before you restart cutting.

Very similar steps can be used to mill out the Styrofoam insert for the lid.

Final Thoughts

This was actually way more work than it looks like here (and I know it looks like a lot).  I was learning how to work the machine, and learning some of the subtleties of the SRP Player software, as I went along.  Many steps had to be repeated while i tweaked parameters trying to get the results I wanted.  My first attempt at the lid insert had to be completely redone because somehow the top and bottom sides didn’t remotely line up (still don’t know what went wrong.)

The Styrofoam SM cuts fast and easy, but the down-side is the horrible mess it makes.  You know how when you break up styrofoam, the little pellets cling to everything.  It’s just the same, but this is a fine dust.  The dust clings to everything it touches.  It coats every surface inside the machine.  When you remove completed parts from the machine, the dust gets all over you.  You can’t just brush it off… it sticks to your hand.  It’s horrible stuff.

If I had to do it again, I probably just wouldn’t.



7 responses to “Tool tray for Roland MDX-40A milling machine”

    • It’s 20mm diameter, 25cm long. It has a conical hole drilled in the center of each end, to mate with the live-center.

  1. Hey, I just have a few questions about doing something similar. If you had an option other than Styrofoam SM, what would you use? Also, this project of mine is mostly to try and organize the end mills for a MDX40A in fab lab, do you have any tips that would come in handy?

    Thanks in advance!

  2. Hello, and thx in advance for this useful idea to make this.
    I’m missing the detection pin.and of course I need to calibrate it before to start.
    is there a site where to buy it? or..would be possible to know the measurements of it,
    to reproduce it from am it steel? thank you very much for any help ,

  3. I’m looking for detection bar and pin too or even dimensions to make the pin. Machine has sat for too long and many parts are gone. Too bad we didn’t get a spiffy tray like the one above to hold everything. Going to try a generic steel pin with a shoulder to see how it centers.

    • Detection pin is 6mm but i am not sure how long it is. i am also missing bar and detection pin. wondering if its made from a specific metal so it can be detected correctly

Leave a Reply

Your email address will not be published. Required fields are marked *