Mr Stan - - - you mention 4 different options for controls.
Which do you recommend and then why?
Also CAM software - - - do you have any that's linux usable?
TIA
I have to warn you, I used to be really up on the whole CNC CAD/CAM world, but other things have taken my fancy in the last several years. Using CNC tools still matters to me, but building, tweaking, and discussing / arguing fine and subtle points of it all just doesn't excite me the way is used to. I was never a CAD/CAM/CNC master, all of my needs were and remain fairly simple parts, particularly in the realm of this groups focus. The vast majority of my needs were met using VCarve and Gearotic, with occasional use of various CAD and CAM packages for special needs. Alibre is about as exotic as my CAD needs get.
Sad news on the CAM front, I've never found an open source CAM package that worked well for me. However : Meshcam has worked decently under Wine, so that may work for you. Grab the 30 day free trial of CamBam as well, last time I looked it was well behaved under Wine as well. It seems that these two packages have remained popular for quite some time. The latest versions of VCarve have not worked under Wine for me, older versions (up to 10 maybe?) were fine with Wine.
For control software these days unless you need more, gRbl based solutions may work well enough for hobby class machines. It's so popular as it's the default on so many popular routers and laser cutters that most everyone supports it to some level. Critical user mass and good enough to use can sometimes trump elegant but complex and/or expensive options. The all in one gRbl boxes that are of good quality are around $200 to $250, probably less expensive that step generation hardware and stepper drivers for linuxcnc in many cases, certainly less expensive than Mach4 with the required hardware.
I used linuxcnc for quite a few years, but the lack of conversational modes and wizards was an minor but nagging issue for me. Getting advanced features working well can "always be done" if you really grok the whole linuxcnc mindset. It's a good package. I had used Mach3 and it was OK but somewhat unstable and always felt cluttered. I went to linuxcnc and as a pure motion controller being fed gcode it was perfectly satisfactory. This was in the days of parallel ports, so a while back. Mach4 has been quite good, stable, and those who do a lot of probing say it is quite good in that regard. My friends who drive larger machines tend to use linuxcnc and Mesa boards to run their converted Bridgeports and Hurco class machines. They can take advantage of, and often need to have the advanced options and hardware monitoring features of linuxcnc and complex breakout boards. I appreciate their machines and accomplishments, but I'm not looking to join their group. My playground is in a small retired guy shop, making small things.
With the demise of parallel ports on PC's you need step generator hardware for linuxcnc of one flavor(Mesa typically), and another flavor (Smoothstepper, PMDX, various others) for Mach4. Either way it's $150 to $200 for the hardware and you still need the stepper drivers and related hardware. If you change from linux to Mach or the other way around you need new step generation hardware.
For machines that need less than 3.5 amps per axis the all in one gRbl control boxes like the Openbuilds BlackBox X32 or the xPro V5 are really excellent all in one boxes, easy wiring, all the connectors included, just add a power supply and get to hooking things up. Hard core CNC folks may not think much of gRbl, but it's worked very well on my routers and on my diode laser. 4th axis support is fairly recent, which is why my 4 axis Sherline machine was on linuxcnc for a few years, then I went to Mach4. The ability to do automated gear cutting in either traditional 4 axis mode or profile milling mode was important to me when I had my clock restoration business. I have not played with the most recent gRbl on a mill, but might when I get some play time. My G0704 conversion required more power than the all in one gRbl boxes can supply, that machine has a shop built controller with a PMDX step generator / break out board running four 5 amp hybrid stepper drivers with a healthy power supply. It is perfectly reasonable to break out the step and direction signals from a gRbl controller board like an Arduino or ESP32 based SBC and use those to drive higher current stepper motors if you want to go that way.
Since retiring from the clock business and being wrapped up in our retirement place I've done very little with my CNC mills, almost all of my play has been with 3D printers, routers, and lasers. It's not always a popular view, but as I get older and have multiple interests my desire is for stuff that just works. Playing with machines and software is fun and rewarding when in the mood, but when I want to make a part I just want to be able to hit the power, feed in the gcode, find home and work coordinates, hit run and have things work. Makes me lazy I guess. I spent a good part of my life doing complex and complicated stuff, now I just want to play.
To toss a wildcard into the mix, UCCNC is or at least was quite popular with a number of commercial shops running retrofitted machines that don't incorporate proprietary controllers.
I don't think there is a "best one" motion control software for everyone. It's like linux distributions were for years - pick one and master it or flit back and forth never really feeling completely in control. If you start with the free or at least lower cost options you will get results pretty quickly, and within a few weeks of regular use you'll see if you like, tolerate, or hate the first one you try. Pretty quickly you will know which items are your big things based on how you work and on the machines you use.
Sorry not to be comfortable making some one true way sort of statement.
Cheers,
Stan