Posted by & filed under design, Shapeoko, Software.

Yesterday I received a tweet from @savorywatt:

@shapeoko what software are you using to design shapeoko in? Freecad? BrlCAD? On your website it said your stack was FOSS

I could see right away there might be a problem. I felt like there was a chance that I was misleading in some way if someone was expecting the entire process to be open source. I replied quickly that I was using Autodesk Inventor (2012). For the first time ever I was irritated with twitter’s 140 character restriction because I felt like my answer needed justification!

Luckily, the blog does not have a restriction, so here’s my follow up:

For the design software, I use Autodesk Inventor 2012. For anyone who doesn’t know, Autodesk Inventor is definitly *not* Open Source Software. in fact, it may be the opposite of open source software. Although you can export models in universal formats like IGES or STEP, those are secondary functions of the software. Each type of file created with Inventor (drawings, parts, assemblies, and presentation files) are natively saved in proprietary formats (idw, ipt, iam, and ipn respectively). These can only be opened for edit with Autodesk Inventor 2012. No exceptions. Not even previous versions of the software can open the files!

I had considered switching to a different CAD program to do the design work. But only briefly. The fact is that picking up a new design program isn’t exactly an overnight deal. I would compare the process of switching CAD programs to learning a new programming language. You’d have to get your IDE configured, create your projects, then figure out what syntax to use. The whole time probably translating all of your thoughts and intentions from the old syntax into the new. Situations would crop up like “I know in C style languages you do an if statement like if(x==y){something}; “How do I do that in the new language? Do I need a semi-colon for line endings….” etc. Like I said, not difficult to do, but probably frustrating. I know the few times I’ve picked up new languages it was painfully frustrating as I was thinking the whole time “I could have had this done already if I were using my old language” At least that’s how I work.

So, Inventor is the only modeling software I’ve ever used to create assemblies (multi-part parts), and it’s what I know well. Making parts, drawing shapes, making constraints, creating holes, champers, fillets, threads, bolted connections, etc. Are all very easy for me to do. I can focus on designing and not have to focus on using the software. It’s nice.

When I launched the kickstarter project, and claimed a Fully Open Source Software (FOSS) stack, I was referring to providing the information a new user would need to obtain everything required in order to start down the CNC path from scratch. Are all of the pieces of the stack the best in their fields? No, definitely not. However, they will get someone started and give them a pretty good idea of what they like and don’t like about each of the 4 pieces. Maybe they stick with all of them, maybe they’ll trade sketchup for freeCAD. Maybe they’ll go with Mach3 instead of GRBL or EMC2 instead of GRBL. Who knows. I just wanted to provide a starting point and the documentation or support to get anyone interested started down the right path.

With all of that being said: I see where @savorywatt is coming from, it’s a valid question. When I really think about it, it’s probably the proper thing to do. However, I’m pretty well married to Inventor for now, at least until the initial design has been released and the rewards have been shipped. After that, I’ll look into converting the released design into an open format and making that available for anyone/everyone to download.

What do you think? If the designs are released in open formats, does the design process itself need to be done in Open Software in order to be considered an open source project?

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>