Making a stiffer 3x3" angle gantry

Thinking of making a 48" wide longmill. I have noticed that OpenBuilds uses an extra set of V wheels with a back plate to give more stiffness.
Are any of these designs using off the shelf aluminum profiles a good idea? I would use epoxy to glue the extrusions together then reinforce with bolts or rivets.

I think the standard longmill uses 6063 alloy. I would be using 6061 for the 3x3 angle and 1.5x1.5 square tube. the 1.5" angle would have to be 6063 since 6061 has a radius endge on the inside.

Very interested to see where this goes! Thanks for sharing.


Only a mechanical engineer can definitively tell you which design would be the most rigid before assembly. You could build test assemblies, support their ends and hang weights from them while measuring the deflection to determine which is best yourself.
My money would be on #2. If you decide to proceed with testing I would apply the load on center and then test again with an offset load to apply a torsional load as the assembly would see in actual use, just so you understand the limits of the structure.
I would also use more powerful stepper motors, power supply and consider larger diameter ACME rod. These changes may preclude the use of the standard controller.
I too will be following this thread with great interest.

I have a suggestion. If I were doing a larger footprint Longmill i would aim for a cut capacity of 50x50. The reason is that some sheet goods are 49x97 and a 50x50 Longmill would do a half sheet simply by cutting the material in half or you could do a full sheet by tiling. You may not do this often but wouldn’t be nice to have the option?

1 Like

@CRD I’m been thinking about something similar but at a slightly smaller footprint. If you go to a 32" x 48" cutting area then you can cut a regular 4x8 in to 3 pieces via two cuts, one at 32" and one at 64" and you have three equal pieces of 32" X 48". If you have a Home Depot handy, or a home center with a panel saw, this is a 60 second job when picking up the sheets and makes them very easy to manage on your own. This is also an interesting size because it will fit in to most cars (at least that have fold down seat). It’s also a good size even for basic cabinetry work.

@chrismakesstuff Out of curiosity, what were the constraints that lead to the 30x30 design? I’m guessing standard lengths of the aluminum rails was part of it?


PS - As noted elsewhere in my threads, a 32" x 48" partial sheet already fits nicely on the existing 30x30 waste board so you can slide in on between the feet without any complications. Unless I specifically need longer sheets, I think the two cuts per 4x8 move at Home Depot will be my new go-to. Muscling large sheets around on to my track saw table to cut them down to fit the Longmill is more hassle than I was expecting…

I’m guessing the 30x30 size limit is because of the shipping surcharge that would result from longer rails.

@aluminumwelder I like your question here.

When Andy and I originally started on the design of the LongMill we took our Mill One rail design (a simple piece of 2x2" aluminum angle) and figured we could stretch it out to increase cutting size. As testing carried forward, it became obvious that this assumption was correct for our Y-axis layout seeing as the rail could be nearly fully supported by placing the needed number of feet, however this solution couldn’t be carried over to the X-axis.

Giving it some thought, and also considering that we were nearing the end of our testing window, I realized that with the space that existed beneath the x-axis and when considering that the bottom edge of the gantry experiences slightly more force (and thus more deflection) than the top edge, I knew I could reinforce the area by adding another 3" angle since that would transfer a lot of the loading onto the perpendicular edge that the 3" angle provided. To better illustrate this, I’ll show a simulation of deflection on a single 3" angle extrusion next to one with the second 3" angle to act as a reinforcement:

Thus, the current rail layout of the LongMill was born (it’s made out of 6061 aluminum by the way). Not the most optimized design out there however it serves its purpose well. I also like that the second 3" angle forms a slight lip on the back end of the first in order to better support the drag chain.

This is where I’ll now be taking a deeper dive in my analysis since, as I mentioned, I like the question you’ve asked and I’d really like to answer it. While I was at it, I figured I’d also run the calculations for some other rail designs that I could think of which could be applied to the LongMill in its current form (although I did put the math in place to calculate it for other, completely different rail designs as well). I should preface this by saying that my original intention was to try (quite ambitiously) to solve torsion and bending in these profiles by hand, but after consulting with a good friend of mine who’s a professor at the University of Waterloo we determined that hand-solving was impossible and going the route of FEA would be required.

X-axis loading scenario on the LM: there are four point loads which act on the X-axis rail of the LongMill due to the four v-wheels which transfer load from the XZ-gantry assembly to the rail. These point loads can be a summation of a multitude of forces, but to consider the maximum loading scenario, the force due to the weight of the gantry assembly and a maximum cutting force when cutting in the negative X-direction will be considered. There are other forces which can occur such as when plunging, cutting in the Y-axis, cutting in both the X and Y-axes simultaneously, forces from a dust shoe, etc.

Since the largest twisting and deflection will occur when the gantry is at the center-point of the rail, and the v-wheel contact area is quite small, analysis will be simplified to be singular, top-and-bottom point loads since this will give the worst case scenario and will align all the important forces along an axis of symmetry, thus turning it into a simpler, 2D problem.

Problem setup:

  • Longmill XZ-gantry assembly used in all simulations
  • X-gantry located at center of 940mm long rail (assume fully supported at both ends)
  • Z-gantry at full extension
  • Router mount located in upper set of holes
  • Router body extending 55mm from bottom of aluminum router mount
  • ¼” cutting tool extending 30mm from router collet, making total tool extension 120mm from the bottom of the router mount to the tool tip
  • The origin point of the coordinate system used for analysis is located in-line and at the mid-point between the top and bottom v-wheel contact points
  • The coordinate system for analysis will reflect the coordinate system of the CNC machine it’s based within, with the X-axis being along the rail, Y-axis being into the rail, and Z-axis being perpendicular to both of these
  • Rough order of magnitude calculations dictate that a worst-case scenario max load for a ¼” cutting tool which is making a deep pass at full engagement at a high feed rate through hard material would generate about 3 - 4.5kg of force or ~30 - 44N (in the +Y direction)


  • Entire XZ-gantry assembly is a completely rigid body
  • All loads perfectly transfer to the X-axis rail via the two established points

XZ Gantry Assembly Mass:

  • Makita router = 1460g
  • Router mount = 300g
  • Z-gantry plate = 580g
  • Linear guide block = 50g
  • Linear guide rail = 130g
  • X-gantry plate = 1100g
  • 200mm lead screw = 50g
  • Pulleys + belt = 11g
  • Z motor bracket = 90g
  • Z motor plate = 280g
  • Stepper motor = 660g
  • XZ-gantry pre-assembly = 2020g
  • XZ-gantry assembly (minus router) = 3680g
  • Total mass = 5150g = 5.15kg ≈ 50.5N (in the -Z direction)

Preparing for Simulation

Using CAD, part layout and masses are made to reflect the real world assembly and problem setup in order to approximate the COM of the assembly in relation to the origin. The location of the applied load from cutting is also shown in the diagram below:

It’s important to note that since different rail designs will have different tip-to-tip distances then the location of the cutting load will be changed accordingly to keep a constant distance between the load and the bottom tip of the rail (bottom red dot) so that the tool stick-out remains the same. The COM location is assumed to remain the same in relation to the origin. For reference, if the Z-axis gantry were instead positioned at its highest point, the COM would shift to be ~60mm higher.

With all necessary values obtained, a Parasolid model of each rail design is brought into the simulation software and set up with an aluminum composition (E = 70GPa, v = 0.34, ρ = 2720 kg/m3), where both ends rail ends are fixed and two remote forces are applied which represent the force due to mass of the gantry assembly and the cutting force. In order to apply these forces, a small 0.1x10mm area is cut out on the top and bottom of each rail in order to create a local contact face. Since these rail designs are made for v-wheels, this small contact area is assumed to be roughly equivalent to the contact area of the two tangential faces of a v-wheel.

In some cases a simulation was run for 8 wheels rather than 4, this was laid out in a similar manner where the second set of contacting rails also has a flattened area created for the force to be applied. In the case of round rails, it was assumed that a linear bearing would be used instead, so the contact was assumed to be 20mm wide (due to the large diameter of the rails) and was indented by 0.01mm in order to distinguish it as a separate face.

Every simulation was run with the same mesh settings where the mesh was set between coarse and fine and was automatically sized appropriately.

Simulation Results

A visualization of the total displacement of each node on the generated mesh, as well as the specific displacement of each node in both the Y and Z-directions were obtained in order to understand the performance of each rail and the resulting bit deflection that would occur given the problem setup. From these visualizations, the key values obtained were:

  1. Maximum rail deflection
  2. Y deflection of top contact point
  3. Y deflection of bottom contact point
  4. Limiting Z deflection

The maximum rail deflection isn’t a very useful value since it’s mostly there to give a general idea on the performance of the rail; the maximum deflection sometimes occurred far away from the two contact points. Y deflection of the top and bottom points were important since they determine the Y deflection of the cutting tool, and the limiting Z deflection was determined by looking at both the top and bottom contact points and seeing which one would limit the overall Z deflection of the gantry assembly. Most of the time this was equal to the Z deflection of the top contact point since if the top point deflected more than the bottom, it would decide the gantry deflection, and if the top deflected less than the bottom then that would limit the gantry deflection.

With “Limiting Z deflection” being equal to the Z deflection of the cutting tool, only the Y deflection needs to be calculated. After the rail is deflected, the angle of the gantry can be approximated as such:


Then, assuming the gantry assembly is still in proper contact with the top contact point, the distance that the tool will translate in the Y-direction can be found:


where L is equal to the tip-to-tip height between the two contact points plus the constant, tool stick-out distance of 146.4mm. Lastly, a final optional calculation could be done to find the total deflection of the tool by taking the square root of the sum of the Y and Z deflection values, squared.

Current ranking of best rails designs based off given parameters:

  1. 3” L plus 1.5” square tube (assumed holes)
  • Max deflection = 0.0198mm
  • Top Y deflection = -0.0101mm
  • Bottom Y deflection = 0.0118mm
  • Limiting Z deflection = -0.0128mm (+top)
  • Y Bit movement = 0.0517mm
  1. x2 square tube 1.5” (8 wheels & assumed holes)
  • Max deflection = 0.0235mm
  • Top Y deflection = -0.0092mm
  • Bottom Y deflection = 0.0173mm
  • Limiting Z deflection = -0.0161mm (-top)
  • Y Bit movement = 0.0625mm
  1. x2 square tube 1.5” (4 wheels & assumed holes)
  • Max deflection = 0.0241mm
  • Top Y deflection = -0.0096mm
  • Bottom Y deflection = 0.0177mm
  • Limiting Z deflection = -0.0165mm (-top)
  • Y Bit movement = 0.0644mm
  1. 3” L plus 1.25x2” U-channel
  • Max deflection = 0.0289mm
  • Top Y deflection = -0.0184mm
  • Bottom Y deflection = 0.0130mm
  • Limiting Z deflection = -0.0186mm (+top)
  • Y Bit movement = 0.0741mm
  1. ¾” L plus 3” L
  • Max deflection = 0.0319mm
  • Top Y deflection = -0.0205mm
  • Bottom Y deflection = 0.0166mm
  • Limiting Z deflection = -0.0182mm (+top)
  • Y Bit movement = 0.0875mm
  1. Original Configuration
  • Max deflection = 0.0340mm
  • Top Y deflection = -0.0266mm
  • Bottom Y deflection = 0.0136mm
  • Limiting Z deflection = -0.0211mm (+top)
  • Y Bit movement = 0.0948mm
  1. 1.25” Solid aluminum rod
  • Max deflection = 0.0372mm
  • Top Y deflection = -0.0140mm
  • Bottom Y deflection = 0.0303mm
  • Limiting Z deflection = -0.0223mm (-top)
  • Y Bit movement = 0.1045mm
  1. x2 L ¾” (8 wheel)
  • Max deflection = 0.0489mm
  • Top Y deflection = -0.0266mm
  • Bottom Y deflection = 0.0386mm
  • Limiting Z deflection = -0.0308mm (-top)
  • Y Bit movement = 0.1538mm
  1. x2 L ¾” (4 wheel)
  • Max deflection = 0.0496mm
  • Top Y deflection = -0.0268mm
  • Bottom Y deflection = 0.0386mm
  • Limiting Z deflection = -0.0314mm (-top)
  • Y Bit movement = 0.1542mm
  1. x2 square tube ¾”
  • Max deflection = 0.0667mm
  • Top Y deflection = -0.0374mm
  • Bottom Y deflection = 0.0554mm
  • Limiting Z deflection = -0.0412mm (-top)
  • Y Bit movement = 0.2189mm
  1. Single rail
  • Max deflection = 0.1317mm
  • Top Y deflection = -0.0806mm
  • Bottom Y deflection = 0.1001mm
  • Limiting Z deflection = -0.0870mm (+top)
  • Y Bit movement = 0.4262mm

So here are some of my notable takeaways to offer up from these results:

  1. @aluminumwelder your first design was nearly the best and your second was nearly the worst :stuck_out_tongue: so I suppose that now answers your question.
  2. After seeing the results of some of my initial simulations, I was able to come up with a combination 3” L plus 1.5” square tube design which wound up being the most rigid! I’m very pleased with this result since it’s something that any LongMill user could add to their current machine, however I haven’t yet thought about where the drag chain would go.
  3. All these designs can be implemented on the LongMill, so feel free to do so. The only designs which pose an issue are number 1, 2/3, and 8/9 due to their geometry requiring that the drag chain be relocated.
  4. The difference in performance between 4 wheels and 8 wheels seems almost negligible when you also have to take into consideration that the connection between the front and back wheels will never be infinitely rigid (which is what I assumed in this simulation) so it doesn’t seems like it would be worth the effort.
  5. In case you’re wondering why none of my simulations included steel as the reinforcing material: steel (which is mostly iron) and aluminum have quite a large gap in their electron affinity which causes aluminum to behave like an anode and steel to behave as a cathode if electrons are able to move between them. If they’re left in contact for an extended period of time then galvanic corrosion will occur which will weaken and deteriorate the aluminum as well as cause some unwanted chemicalcchanges to the steel, this has been my experience at least. This is why I wouldn’t recommend using steel alongside aluminum as a reinforcement, unless you can coat either the steel or the aluminum or both to act as a barrier to stop the galvanic reaction from taking place. But even so, if you’re bolting the two together then the bolts can act as a bridge to transfer electrons between them.

If you have any comments or questions, let me know. Remember to take these results with a grain of salt since simulation is always a constant chase of trying to replicate reality even though you’ll never quite reach it. The results are more to be used as a way to compare rail designs to one another, not as a reflection of deflection you’d see in practice. I also want to once again emphasize that I tried to set up the problem for the most extreme loading case, so also take that into account when you’re looking over the deflection results.

Anyway, I think that about wraps it up for me. Cheers,



You had me at “When Andy…” :slight_smile:

Nicely done analysis. One of the assumptions was that the various assemblies were rigidly connected. Did you look at any scenarios where the various components were only rigidly connected at points, as in the current design where the the two components are bolted together?

1 Like

I didn’t. Doing the analysis that way would’ve been trickier and more time consuming to set up especially with potential variations in the bolt mounting patterns, although I did account for holes in outer geometries which would be required for the bolts to be installed, such as for square tubes. Since @aluminumwelder mentioned his intention to be epoxying these pieces together I figured I’d go the route of making that assumption.

Now I know this still isn’t correct, but as I point out in my conclusions, the ultimate idea here is to see what sort of effect these added geometries will have on the performance of the the rail in relation to one another, not to draw absolute conclusons. This way the “original configuration” simulated results assumes a fully connected geometry just as much as any other simulation.

If on the other hand the intention was to discover an ideal bolt spacing pattern which could optimize one of the given rail designs to best transfer load from the primary rail to one of the reinforcing rails, then that’s what I could then focus on in another round of analysis. If you notice on the LongMill reinforcement, the bolts are closer together near the middle and then further spaced as you move outwards. This is to assist in creating a more rigid connection between the two 3" angle extrusions near the centre where bending and torsion are at a maximum, and since this effect quickly falls off as the gantry moves away from the center then a rigid connection between the two isn’t as necessary.

1 Like

Great work Chris! I guess I lose the bet :sob:. Proof positive that proper analysis beats seat of the pants engineering every time.:wink:

1 Like

@chrismakesstuff I knew this all along. I simply did not want to steal the show away from you, Chris. :grin::laughing:

Seriously, though, I was lost after reading the date on your post. I believe your explanation was important, not for what I can learn from it - as that will be very little - but as a demonstration of how much research and trial went into the design and manufacture of the Mill. In my ignorance, it never occurred to me just how much engineering went into this. (Hell, I’ve seen wooden CNC set ups that even I could build.)

In short, thanks for taking the time to set all this out.

1 Like

Nice analysis Chris.

When you can increase the moment of inertia in the plane in which your deflection occurs you should be able to reduce deflection with the least material. One obvious way to do that would be to turn the existing long angle into a long triangle by adding a vertical section between the top and bottom edges of the channel. The hardest geometric figure to deform without bending a side or an angle is the triangle , and a 3D shape would be stiff.

There isn’t room inside the channel to do that directly, so two options come to mind:

  1. Insert a piece inside the existing channel that clears the drive block, screws, etc. Green in the pic. Probably a custom piece, but wouldn’t have to be 1/4", and should provide some Y deflection improvement. It could screw into the same holes as the existing stiffener but would require some additional holes in the existing angle.

  2. Adhesive bond a flat bar beveled along both edges to mate with the edges of the current stiffening channel edges to make continuous contact. Red in the pic. This could also be milled to fit around the edges to capture the movement in both + and - Y. It could be bonded or screwed along the edges. This only helps stiffen the stiffener, so not as good, but doable by any existing owner without moving the drag chain.

I haven’t run the analysis on either of these, just throwing out an idea, and neither may be practical.


Good points Bill, you also stated very eloquently the main problem that we’re trying to solve here:

When you can increase the moment of inertia in the plane in which your deflection occurs you should be able to reduce deflection with the least material.

As you note with the red reinforcement, I’m not sure how much benefit it may provide seeing as you’re reinforcing a reinforcement :stuck_out_tongue: but it’s a good idea nonetheless. I certainly see some merit behind your idea for the inner reinforcement. I’m not sure what would be the best approach to manufacture this piece, but I do think it would help quite a bit in reducing torsion.

One thing that stuck out to me in my analysis was that since I felt that I’d done an adequate job in reinforcing the bottom edge (which was experiencing a higher force) there was now more deflection happening at the top edge than the bottom. You can see this in the limiting Z deflection on the various profiles. The clear issue behind trying to make the top edge more rigid is that you’ve also got the gantry, stepper motor, and other geometries getting in your way which doesn’t exist for the bottom edge; this is a factor of our machine design. You can see though that by adding reinforcement for the top edge, the performance increase is noticeable.

Anyway, if I have a moment I’d certainly like to take a moment to stick your ideas into my setup and see how they fare. I tried to stick to easily obtainable extrusion material for the benefit of anyone wanting to make an easy upgrade, but I don’t see any harm in trying out some more exotic reinforcement designs :+1:

1 Like

Chris, I’m sure that to get that inner piece bent accurately or to have it formed by welding two angles together would be cost prohibitive, I guess if the analysis indicates it has any merit while maybe it isn’t practical as a LongMill retrofit it may benefit future designs, like the large bed 100W laser you’re working on. Yeh, I want one.


@BillKorn @chrismakesstuff Well somebody has to be the first to say something stupid. :slightly_smiling_face:
Taking Bill’s green brace idea, and recognizing that getting a profile like that would be pricey, what would be the effect of filling the L with epoxy, up to a level where it would clear all the moving parts? Would it add anything or is epoxy to flexible?
Final question, with respect, is this a solution in search of a problem? The OP started this because he is considering making a 48" wide Mill. With our 30" Mill, is deflection an issue that needs to be addressed?
Finally, just for giggles, is this brace something like the profile of your green part, Bill? corner%20brace


@BillKorn @chrismakesstuff

Filling the channel(s) with construction foam would be the easiest - not hugely rigid, but very very easy to do and with nice damping properties too, which will help with mitigating any vibration in the overall system.
Second easiest would be gluing in long sections of one of the XPS-type insulation foam boards.

Could the x axis gantry be replaced by 2080 V slot profiles?

@billkaroly I had to look up what that was, Bill. Do you think that they would be more rigid that what we have now?

Could the x axis gantry be replaced with 4, 5 or even 6 inch angle ?

@Megistus Welcome to the club, Wayne.

It seems to me that many other parts of the Mill would need to be re-engineered to fit a bigger angle beam. I’m sure that it could be done, though. At some point, anyone who changes enough of the Mill’s parts may be better off to simply build one from scratch to their specs. It may well save money in the end.

Are you having an issue with flexing on your Mill? I’m doing some pretty precise stuff that I would think would be affected by flexing, and they seem to turn out fine. That could well be that my standards are not high enough, though. :upside_down_face: