3D Carving Show and Tell

I thought it would be nice to have a specific place for people to post any 3D carves that they have done. Lets see what crazy 3D stuff people are up to.

@SamAlaimo has a pretty great one here:

To kick the posting off, I’ll share my fist complex 3D carve as well.

Using scrap wood (kindling/off cuts), I first repurposed them by cutting them to 1" by 11" strips and then laminating them to create a block that I could mill out. Next I machined the top and bottom to make them parallel and level.

Next I downloaded data from BlueMarble (NASA satellite data) and combined it into an image that I could use to create a 3D extruded model of New Zealand and it’s surrounding ocean bathymetry.

I loaded this 3D model into MeshCam Pro and set up the tool paths, clamped down the new block of wood, loaded the g-code into UGS and started to carve.

In the images you can see a few holes… this is due to one of the Y belts breaking and letting the Y-axis slop a bit during the carve. It broke because I must not have tightened the GT2 pulley set screws tight enough and it traveled sideways on the shaft of the stepper motor. This in turn caused the belt to wear out quickly without me noticing. On top of that, having pretty thin walls on the 3D model didn’t help the situation much either.

Here are some pics of the project:

From Scrap to workable piece.

Putting my new clamps to good use:

Carving in progress.

Close-up of the roughing phase of the carve.

The final piece.

Pretty good detain came across from the 3D model that I made.

Really thin walls.


Wow. This is what I would like to be able to eventually accomplish. I’m going to do my research but I might be the crazy noob pestering you post assembly in a week or so. Be warned lol

1 Like

Thanks @DallasJohnDuvallIi !

The process was a little more complicated than my post made it seem, so there are many possible pitfalls along the way. That isn’t to say that they are insurmountable though. Feel free to hit me up with questions and if I can’t answer them then we can learn more together.

Can you detail your post / UGCS process? What did you post it as, what did you change manually in the headers, etc?

That’s the same general workflow I’ll be following, with regard to MeshCAM/UGCS, so I’m looking for as much information as I can get before I start out! I’m good up to finalizing the toolpaths, but posting I’m not sure about.

1 Like

Sure thing. I’ll write it up with a few more pics and post it here.


First and second project done!

*NOTE: not my phone :wink: *

Phone stand was my first try using fusion 360. decent. had to start the spindle myself. (M3 S18000) and i’m using UGS to push the code. goign to migrate to my raspberry pi eventually but for now i’m using a full desktop but at least its running Linux :wink:

Ok @DanBrown and anyone else interested…

Here is a little deeper explanation of how I went about carving the NZ Height Map:

First, I knew the area of the globe that I wanted to carve and I had a block of reclaimed laminated wood that I knew I wanted to carve it in, so that helped. (sometimes having the material and the right idea is the biggest step in a process)

I’ll try and keep this as concise as possible so below is a list of steps I took and after that I’ll have some images I took along the way:

  • get Topography and Bathymetry of the region needed from http://visibleearth.nasa.gov/view_cat.php?categoryID=1484
  • combine these two images in an image editor (I use Photoshop for my job, so it helps)
  • they are combined to have Topology and Bathymetry as a continuous graduation of grey steps
  • I then blurred the image to reduce detail and then shrunk it to a 100x132 pixel image… this is to reduct the number of triangles in the STL file I will create in the next step
  • Using heightmap2stl.jar and the image I just created I made an STL with a max height of 15 and a min height of 10
  • see here: for further instructions and resources on heightmap2stl http://www.thingiverse.com/thing:15276
  • I imported the resulting STL file in Blender and using boolean operations I created a positive (top) and negative (bottom) to the model
  • Still using Blender I made sure that there weren’t any major issues with the geometry that HeightMap2STL generated and also double checked for holes in the model
  • I also used Blender to create a fixture and supports for the model that were the size of the stock that I wanted to carve
  • Next it was over to MeshCam Pro to create the tool paths
  • I found that for my purposes doing a rough pass with a Ball End Mill .125" and a finishing pass with a .065" Ball End Mill was enough to do the job
  • I also found that creating the top tool paths and the bottom tool paths as separate operations was a less glitchy way to go, but your milage may vary
  • I went in to each g-code file created and got rid of the tool change operations and added an M3 Sxxxxx to the begining of the file after the Z is raised and then I also added an M5 to the end of the file also after the Z was raised
  • I also added g-code to return to X0 and Y0 so that it would be lined up for the next operation and would maintain X0 and Y0 for each of the carves.
  • Using Universal Gcode Sender I sent the files to the X-Carve being sure to precisely set the Z0 height each time a tool was changed.
  • The first two files were sent to the machine and carved and then I took the material out of a fixture that it was pressed into (basically just some stops on 2 sides and cam clamps on the opposite 2 sides) and then flipped it over top to bottom, re-clamped the piece making sure that X0 and Y0 were lined up properly.
  • The last two files were then sent to the machine and carved.
  • Finally I cleaned up the piece by cutting it free of the stock/fixture and lightly sanding.

Refer to the rest of the images of the carve in the original post above.


You said you used a gcode sender, so you aren’t using a grbl shield arduino controller?

UGS (Universal Gcode Sender) works with grbl shields, as does Chilipeppr. Easel provides an all-in-one solution for designing, generating, and sending gcode, but if you use another workflow to generate your gcode, you can use one of those tools to send it to grbl.

I’ve read that Easel isn’t compatible with the TinyG controller. Did that change?

According to the faq here, on 7 Jan 2015 they stated “at this time TinyG support [for Easel] is not in the pipeline”

So as far as I’m aware, GRBL is a form of G-Code, but the two are separate. Is that not right? Because it sounds to me like Easel is an all-in-one solution for sending GRBL.

Ah, there’s the mix up I think. G-code is just a series of text strings that tell a CNC machine what to do (move here at this speed, start/stop the spindle, etc). Grbl and TinyG are microcontrollers that go between your computer and your CNC machine, and interpret the gcode. You use an application like Easel, UGS, or Chilipeppr send that gcode to the microcontroller. In addition to letting you send the gcode, Easel also incorporates design elements that let you design your project.

Hopefully that clears some things up :smile:

But… ok haha. I’m just trying to decide whether a GRBL or TinyG is the best way to go, since they’re actually the same price. I’m going to be placing my order for a 500mm x carve in about a week and my primary interests are: engraving soft plastics and woods, 3D carving complex wooden and plastic parts (looking at Fusion 360), and fine pitch PCB milling (so I’m definitely using Chilipeppr). It seems like the GRBL controller is more limited in it’s capabilities, so I’m starting to lean toward the TinyG. @JohnLauer, what’s your opinion on TinyG vs GRBL?

This might make for a good separate thread

1 Like

Good Call

I wrote a blog entry to help explain the differences.

1 Like

Here are a couple of carving projects I did on the weekend. The eagles are done using pine on a 0.028 depth and 30 in /min speed. All with a 1/8" ball nose.

They still need to cleaned up and finished but I am happy with the initial results.


Keith, that’s awesome! Can you post a project showing how you did those eagles?

1 Like

That’s great! Did you Easel at all for that?

1 Like