Recording a Project's Details

I’m interested in how other CNC’ers record the details of each project they make. Amongst other things I am using my SO3XL to make models, not one-offs but a number over a period of months. So, I may make 3 model cars today and next month I may make another 5 then perhaps in three months time another 3.

With each project there are a number of variables that need to be used from one session to the next. I am interested how others record this data or if indeed you do, for example some of the information required with each milling session (in this case say I use Carbide Create for the CAD work) would include:

  1. CAD file: project_name.2cd
  2. G-code file/s: toolpath.ecg
  3. Material type
  4. Material dimensions W x H x D
  5. Zero location
  6. Mill/s - type/s and size/s
  7. Feeds and Speeds

As I see it there are a couple of options in the way one works:

  • One could just keep the CAD file and at each milling session just run this file, use it to reproduce the G-code. Other details could be obtained from this file. The CAD file contains most of the information above.
  • One could just keep the G-code/s file and run them directly (although it would be wise to keep the CAD file also). In this case it would be necessary to record the information above so as to setup the CNC. I understand some CNC’ers record details of the cutter used within the G-code file name e.g. Pocket_025_EndMill.ecg. But this doesn’t supply sufficient of information for cutting.

It seems to me that the ideal would be to keep a separate text file which records all of the relevant data that applies to that project.

Please tell you how you organise this side of your workflow.


Patrick, I use my Onedrive to create a project file. I then open Carbine Create and use the Windows 10 Snipping tool to record each screen in Carbine Create. I then save the Snipping screen shots and the 2cd, ecg file to the same folder. Next I go into my workshop and run Carbine Motion. Once I load the file I copy the G-code file in Notepad and save it to the project file folder. I then run the G-code file thru the GWizard. If it runs with no errors I run the project. I know it’s a lot of prep but it has saved many projects from running poorly.


Personally, I use IntelliG-Code and this has a project folder and it has editable descriptions and pauses which makes recalling what to do again very easy.

Here is a screenshot of the projects section:

You just create a new project folder inside the root folder for each project. Then you can always edit the description to see it and update it. Each gcode file can be run individually or can be run sequentially top down. And pauses can be used for tool changes, notes, etc.


Great question–I’ve often thought about it but never thought to ask.

This isn’t complete, but some of the things I do are:

–keep my design files (I do my designing in Evolve, which is nice because as @mbellon pointed out to me a while ago it’s parametric so I can go back and tweak designs in a way that lets the tweak flow through to later transformations)

–keep my stl files output from Evolve

–make notes (on paper) of the settings I use in MeshCAM (stock size, z zero, max cutting depth, etc.). This is one sheet per simple project (or one per part if the parts are from different stock)

–take a screen shot of the milling parameters screen (mills used, DOCs, feeds, etc.); I print this out and put it with my notes (see above) in a binder on my workbench

–save a combined g-code file from MeshCAM with all passes in it, then I also save the individual passes (rough, waterline, parallel, pencil)

–I name the g-code files with the project name (and version number if applicable), the material, the rpm, and the pass

–any notes related to results or issues go on the paper note sheet in the binder


VCarve Pro will create a job sheet which includes most of those details. But in general I just keep all of the relevant files for a project in a directory/folder: that directory of files just is the project. Notes can be added by creating text files or other documents in the directory (“project_notes.txt” might make a good name).

This is similar to how “apps” work in software design. An “app” is really a whole bunch of files all of which are needed to make the app do its thing. The technical details of how it is all bundled together varies, but the basic idea is to package up everything that is needed into an organized “folder” of files.

At some point I may start using what is called “source code control” (or revision control) on CNC projects that have variations/branches and revisions over time. I would definitely use source code control if I were doing CNC projects professionally. Source code control (used correctly) very easily keeps track of all of the steps, revisions, and variations in your projects, including your own notes on the whats and whys of revisions. If you have complex projects with different variations or multiple toolchains/sources/contributors to a project it may be worth investing a little time to learn these extremely useful archival/recovery/revision control tools.

Two very capable yet simple and well documented free and open source revision control packages are “subversion” and “git”.


I maintain a folder/directory for each project. All necessary file are contained there.

With an Evolve project there are separate files - CAD, CAM (e.g. MeshCAM, SharpCAM), STL, F&S, G-Code file, and a notes file.

When I work in BobCAD-CAM, all of the CAD, CAM, and F&S data are contained within the single project file. The only external files are notes and the G-code file.

Recently, I switched to ZW3D and this is much like BobCAD-CAM.

Fusion 360 projects will be similar - the project file has CAD/CAM/F&S.


1 Like

drop box folder for each project where all of the source references, aspire files and gcode files are stored. the speeds, feeds, tools, and material sizes are stored in the aspire project file. i also use evernote to keep track of my cutters.

1 Like

I use Fusion 360 for modeling/CAM so stock size and all the feedrates are saved to the cloud. I’ve been meaning to setup a CAM template for a while now, but haven’t got to it. If you use Fusion, you can open another model which has a CAM operation you have previously defined and choose that tool.

  1. Define setup in new file
  2. Open another file that has x bit on x material
  3. On file with defined setup, create operation choosing bit from open file. (Feeds/Speeds get pulled in from other file)
  4. Set Step down and Step over (does not get pulled in from other file)

As for storing the generated gcode I have a 7tb freenas rackmount NAS built some time ago for network sharing. I store them in a project folder under either CNC, Laser, or 3d printer category folder with the project name. As for gcode file names generally follows a stepped order, tool size, and type. If I have more than one version I add version numbers.

I use bCNC for sending code, so keeping track of where origin is on the gcode file isn’t hard as bCNC renders out the path visually. So if you opened a batman file, and it rendered as superman you instantly know you clicked on the wrong file before you hit go.

There are a million ways to eventually come to the same result.


I mostly convince myself I’ll remember the important stuff, then don’t. I’ve started keeping better project notes in a network shared folder between my shop laptop and my desktop. I just use word documents for the most part and record the date and any notes of things I should do different next time.


Many thanks to all for putting fingers to the keyboard. Lots of good ideas to think about - now to decide on which way to go.

two additional thoughts. first, keep it simple and natural to your train of thought. second, do it the same way every time no matter how big or small the project. later down the road when you have more than a few projects under your belt and you want to revisit or reuse something you will be able to find it and know how to get what you want out of it. but more importantly if it is simple and natural to you, you won’t feel a great sense of dread or frustration at the prospect of searching.


Good sound advice thanks Clifford.