Cos(X^2+Y^2) milled in wood (post 1)

I have always enjoyed 3D printing visualizations of math functions and realized that I can mill them with my MPCNC. These photos are the function cos(X^2+Y^2) . I used this simple openSCAD script to generate the STL. You can download openSCAD from . You will need to mess around with the function, scaling and ranges to get something that looks good. Next I used Meshmixer to reduce the number of polygons to a reasonable 9000 or so. Then I used Fusion 360 to scale the model to fit in a scrap piece of 3/4" pine trim. Finally I generated three tool paths in Fusion 360 CAM: 2D contour with holding tabs, 3D Adaptive clearing for roughing and 3D parallel for finish. I included some photos of the result and will follow up with screenshots of the tool paths from Fusion 360. Note that all these tools are free. For Fusion 360 you need to register as a student or a maker who makes less than $100K/year with the software.

The actual result is amazingly smooth, the closeup photos seem to exaggerate the mill marks. Note that some of the odd stretch marks are not from the milling but are in the model because of my mistakes in scaling and subsequently doing of poor job of undoing it.


Here are Fusion 360 screenshots of the design and tool paths. They should be in order: the design, 2D contour and holding tabs, 3D adaptive clearing for roughing, and 3D parallel for finishing. My only issue with the tool paths is that the 3D adaptive clearing pass was done with way too much detail and took too long. I need to take a close look at the settings to reduce the resolution. I think I need to change the “fine stepdown” setting to much greater than the 0.5mm that I used. The finishing pass was done with a 0.25mm stepover.

I used a 1/8" end mill for the contour and roughing and a 1/8" ball mill for finishing. The spindle is a Makita 1.25HP variable speed router with my holder

I modified a Fusion 360/Marlin post (post processor) file to pause and lock the steppers for tool changes between the passes so this was all done with one gcode file. The post file can be found in this thread

Note that these tool paths do not show how the tool got from the origin to the start of milling. This is specified in the post file. I suggest using a gcode previewer to double check that it behaves properly before running it on your MPCNC. I used the free viewer. I learned this lesson after cutting through one of my holddowns :slight_smile: .

Finally here is a photo of my MPCNC setup with the spoil board and hold downs. I used Camar0’s Rigid middle add on and Allted’s rigid Z option.

Allted - thanks so much for sharing such a great design!

WOW! That looks great, how long did it take too mill, and could it have been faster? That was a nice Z axis workout, did you use the beta firmware?

Sorry for the questions but it looks great and hopefully I will get to do some more milling soon. You guys are really getting fusion to work great.

Yes could have been a lot faster. My firmware is old Marlin_20_32 from early July. I only modified the steps/mm and some stuff for the Full Graphics LCD. I had to disable the awful screeching beep and fix the rotary encoder setings. I don’t think I ever touched the acceleration but I’m not 100% sure.

I set the feed rates pretty slowly to 450 mm/min without doing any experimentation. The 2D contour took 22min, the 3D adaptive clearing/roughing took 1h50m, and the 3D parallel finish took 2h44m. Obviously way too slow. I know I can cut the roughing way down, perhaps by 4x or more with proper settings. I need to do some experiments with the feed rate on different materials. Probably should look at your new acceleration settings along with this. I do like the surface of the pine with the 0.25mm finish stepover but should play with other values.

The only reason I ask if it can go faster is because people are starting to quote the speeds some people use as a top speed which we all no isn’t true. I just like to get a sense of speeds people are using. I am like you and prefer to cut most things very conservatively, and only speed things up if I make duplicates. I have been getting some comments lately about speeds, from people that probably have only ever used a 3D printer and try to compare stats. Different beast.

The beta firmware has 3 versions to cover screens or no screen. I also reversed the knob direction, for the full graphic. It alows the Z moves faster and enables faster rapids as well without easily being able to over do it and skip steps. Now that I am pretty happy with that firmware I need to dig into estlcam a little deeper rapids seem to be off a bit.

For step over I always use 45% for roughing and only ever change the finishing step-over depending on the part from 1-8%

That ripple is great work.