I think I have a workable set of tools now for the majority of the CNC work I plan on doing.
For 2-/12D work (profiles, holes, pockets, etc.) I use LibreCAD for drawing the shapes. It’s open source and runs equally well on Windows, Linux and Mac. It saves the files as AutoDesk DXF files, which many systems will read.
For simple holes, and arrays of holes I use a Perl script that I wrote. It makes holes using two different methods. I will probably add more features as they occur to me. The scripts are open source, so help yourself.
For profiles and pockets that are more complicated, I really like CamBam. Unfortunately, CamBam is not free and appears to run best under Windows. I run it in a VM on my Linux box. There is reported to be a way to run it under Linux but I didn’t have much luck with it and gave up.
CamBam does give you 40 free trials, and if you never close the application… I have used 10 of my trials so far. As I said, it’s not free, but at $150, it’s truly a bargain. I will probably purchase it unless I find an open source tool that works as well. Unfortunately, when I imported an STL file of a simple profile, it was difficult to work with.
Which leads us to the 3D tools that I like.
I have a student license for AutoDesk Inventor which is a full-featured solid modeling application. I run it in my Windows VM. Inventor is very expensive. I have tried a couple of the open source solid modeling applications and found them difficult to use. I need to spend more time on them.
AutoDesk also has something called 123D which I wanted to try, but it only runs on OSX and Windows 7 and above. I don’t have a Windows 7 VM yet, but I’m working on it.
On the CAM side MecSoft, the company that sells VisualCAD and VisualMill, has a free offering called (strangely enough) FreeMill. FreeMill runs under Windows and is limited in features but it imported my STL file and let me machine it without breaking a sweat. So it’s currently my 3D CAM choice until I find something better.
The tools that I still need to find are the ones that will do engraving for me. I know there are some out there, I just need to spend some time on them.
For streaming to the Arduino/GRBL shield I’m using Universal G Code Sender. It has a couple of bugs but is under constant development, and works pretty well.