If you're interested in Open-Source CNC you should check out two of my Open-Source projects. <a href="https://camotics.org/" rel="nofollow">https://camotics.org/</a> a CNC simulator and <a href="https://buildbotics.com/" rel="nofollow">https://buildbotics.com/</a> a CNC controller. I'm somewhat surprised neither of these were mentioned.
CNC is programming "for keeps".<p>Any tiny little error in your gcode has a chance to crash the machine. Unlike a computer crash, a CNC crash results in broken metal flying across the room and anywhere from $5- to $5000 in damage. I programmed for a heavy machine shop for a year before I gave up and went back to making websites.<p>Hobby CNC is fun though, it is amazing what you can make out of wood when you can shape it with sub-millimeter precision. Also hobby machines are not strong enough to cause serious damage when you crash.
I work with the smoothieware project (hardware QA). It is an opensource motion control firmware and openhardware control board which works with 3d printers, lasers, mills, etc. Initially based on GRBL and runs on ARM (LPC1769).<p>The openhardware scene has advanced quite nicely in the last 5 years. There are many very nice projects out there to build from which are largely able to be built at home with parts which can be made locally and/or purchased online. Openbuilds is a good place to start if you are interested.<p>I always try to remind people...whether it is 3d printers, mills, lasers...the knowledge gain from building/breaking/rebuilding your machine far outweighs the small gain you get from simply operating one. I have never printed an object as interesting to me as it was to create and design an entire working machine from scratch.<p>If anyone is interested in openhardware projects I recommend checking out reprap.org , smoothieware.org , openbuilds.com as well as several other projects which I am sure you will stumble upon through research on those sites.<p>There are many opensource CAD/CAM software packages out there which allow you to pick and choose what you like. I personally use Fusion360 for most of my CAD/CAM stuff (I know...not Opensource) and for 3d printing my personal favorite is Slic3r.
For controlling your machine there is LinuxCNC (formerly Enhanced Machine Controller, created at NIST) <a href="http://www.linuxcnc.org" rel="nofollow">http://www.linuxcnc.org</a> and the fork MachineKit <a href="http://www.machinekit.io/" rel="nofollow">http://www.machinekit.io/</a><p>Also, latest FreeCAD has a CAM module ("Path workbench") that has come a long way and really is useful.
G-code is the most hilariously bad language. Keywords are G + a number, e.g. G01, with wildly different effects, varying arg lists and no standard. E.g. G01 move to position, G20 set the machine units to inches. Its often stateful.<p>Obviously its coz its old and works, but i chuckle everytime i have to look up the codes at how comically awful it is compared to anything else i see<p><a href="https://en.m.wikipedia.org/wiki/G-code" rel="nofollow">https://en.m.wikipedia.org/wiki/G-code</a>
Even though I love 3d-printing, and designing/building machines, I would not build a small CNC like that from scratch. Since you get better machines for <200 USD that runs open source firmware (grbl) out of the box. Recently got one of them for PCB milling, a CNC 3018 Pro
I got into CNC milling about 9 months ago. SVG to 2.5D problems are easy, and get you to a lot of cute solutions, its about as close to the work flow of 3D printers as you can get.<p>But the really interesting stuff is when you get to CAM. Multiple tool paths, genuine 3D cutting. Moving the work between paths etc. Its like going from juggling 3 balls (2.5d) to 5 balls (3D).<p>I haven't seen any competitive opensource CAM products, and its the main reason I continue to use Fusion 360 instead of OpenSCAD or SVG for my designs.
I've been looking for a home PCB machine and would appreciate any recommendations on what to look at or what to avoid.<p>I've been told multiple times that it's easier to just have a service print your board which is probably true, but that would take a lot of fun out of the entire process for me.
I owned a 3020 and own a Shapeoko 2. Unfortunately, I rarely use them. The biggest problem with CNC is that the overhead is so expensive. There's very little room for mistakes and material cost (stock and bits) can get very expensive. Holding a part can get tricky and the wrong feedrate can ruin your part. I end up using my 3D printers to do most of my parts nowadays. Though I do use my CNC for "food grade" stuff around the house.
The Mostly Printed CNC is another great 3d printed CNC. <a href="https://www.v1engineering.com/specifications/" rel="nofollow">https://www.v1engineering.com/specifications/</a> Almost done printing the parts for mine. Will run GRBL on it as well.
I've been looking into building my own CNC. Sounds like there are some experienced CNC peoople here. Does anyone know why there are not more polar coordinate based CNC machines? I've been wondering what the pros and cons are.