What CAD PDM/version control do you use?

I’m curious as to what software you all use to manage and collaborate with CAD. The common tools I’ve heard of are GrabCAD and Apache Subversion, and with Solidworks particularly in mind there’s Workgroup PDM (which is being phased out now) and their newer PDM software.

We used Workgroup PDM for a while - first on a server hidden behind a teacher’s whiteboard, then on an AWS server. We took it down when it had been hacked - we didn’t care too much about someone else seeing our files, but we did care when we got the bill and found out a Bitcoin miner had been installed. This year we moved to GrabCAD, which I mostly liked for web browser support, but it felt weaker to me and it was much easier to overwrite large amounts of work if you weren’t careful, especially compared to Workgroup’s ownership scheme.

I’d highly recommend the GrabCAD desktop app, it syncs to a folder on your computer and makes it extremely easy to upload/manage versions.

We used GrabCad. We had some “strange” behavior, which was likely students overwriting each others files inadvertently. Is there a way to check out files in GrabCad? FYI, I suspect our issue arose in the following way.

Student A is working on the Chassis. They open the top level robot assembly, which they will use to determine whether their chassis changes cause issues in the top level robot assembly. They open the chassis sub assembly and modify the chassis. They save their changes to the chassis and go to close SolidWorks. SolidWorks asks, do you want to save changes to the top level robot and they click yes. They subsequently synch GrabCad.

Student B is working on the elevator sub assembly, which is already place in the top level robot design. Student B changes the elevator design, saves and synchs GrabCad. Chronologically this occurs before Student A synchs.

When Student B returns, to work on the elevator, their work is “lost”.

Any recommendations on how to avoid this issue beyond, “don’t save the top level assembly.”

We’re an Inventor team, but we use GrabCAD. We’ve started having students ‘Lock’ assembly and part files when they’re working on them to ensure that there are no conflicts.

We also teach the students to only upload files that they’ve actually worked on, Inventor seems prone to want to save updates to parts and assemblies that weren’t really edited.

1 Like

If you browse through files through the browser (not the desktop application) there’s a little lock icon - if you do that, the part or assembly will not be overwritten by anyone except you on check-in. However, any user can still override it, and a user can unknowingly get work done on a locked part and realize they’ve been wasting their time.

In Solidworks, there’s an option to open files read only by default. You have to also enable the option for workgroup/PDM menu items to get the File | Get Write Access menu option. This works quite nicely for minimizing accidental overwrites / false “new versions” that GrabCAD will pick up as changes.

Ive used GrabCad for every project in Solidworks ive ever done. It has no down sides, just communicate with your team properly. Tell people what you are working on, and dont upload what you didnt change.

I dont think any other program has the community GrabCad does and the online support is great for version control and viewing who updated what.

GrabCAD. We use Inventor and don’t have the issues with top level assemblies that Solidworks users seem to be having.

Autodesk Vault Basic with Inventor. It works very well.

Our team has been using Fusion 360, and all of its built-in version control. Overall, it’s worked really well for us. If you don’t mind using Fusion 360, it’s a great system to use, though it’s not useful for much else.

Some pros:

  • Version control is entirely integrated with Fusion 360
  • Web interface allows viewing and easily sharing files
  • Supports comments on designs, both through the web and the program
  • Easy to branch off and test new ideas
  • Version control and online backups are automatically created with every project

Some cons:

  • False new versions are common
  • Having more than one admin (to add and approve new users) requires a paid account
  • Glitches are not uncommon when multiple people work on one file. One of our files got stuck in a perpetual state of “In use by -----”, so no one could work on that file. I think we were able to just copy the file, so it turned out fine.
  • Sometimes it is hard to delete parts if they are referenced in an old version of a different design

Version control: The longer the file name the newer the file, 'nuff said.*

*Please don’t do this

TL;DR GrabCAD is the way to go for FRC use cases.

There are lots of options out there to choose from; however, there are only so many free / donated options.

Each CAD company has their own:

  • SolidWorks --> SolidWorks PDM
  • Inventor --> Autodesk Vault
  • Creo --> PTC Windchill
  • Onshape --> [Native to Onshape]

Of these, SolidWorks PDM and Autodesk Vault both require their own servers to be setup and maintained by the end user (FRC team). We ran into port accessibility issues when we were part of the school system and trying to use SolidWorks PDM, but others use it successfully.
PTC Windchill is cloud based and they maintain your files for you. As someone who uses Windchill at work, it is a powerful software tool, but can be very difficult to learn. I haven’t used Onshape enough to really comment, but it is entirely cloud based. They also advertise as their own revision control software is built in native to their file structure. The people over at 319 would be good to reach out to…

Other 3rd party options:

  • GrabCAD Workbench - Free, lightweight, easy to learn, easy to use
  • SVN - No comments as never attempted to use; I think 971 uses it if you have questions
  • Dropbox - Essentially a cloud based share drive; limited version control abilities
  • Google Drive - similar to Dropbox
  • Other misc cloud based share drives (Box, Microsoft OneDrive, Amazon Drive, etc)

Of these, SVN requires the end user to setup and maintain their own server. Cloud based share drives (Dropbox, Google Drive, etc…) are not designed for the CAD workflow, and to some degree the level of collaboration that goes into designing a robot. It can be done though. We started off with a master external hard drive - do not recommend. I have seen teams use Dropbox, and equivalent, pretty efficiently when paired with a shared spreadsheet (primarily Google Sheet) as the live logbook for files. We adopted GrabCAD in the 2016 season, and we had very little training or working knowledge of the tool; but it worked really well for us. I was 3000 miles away for most of build season and could quickly view and provide feedback without having to open SolidWorks. All you need is an internet connection and the web client renders the files in the browser. GrabCAD also has a desktop app that can integrate with SolidWorks - this is what makes GrabCAD stand out relative to the other 3rd party options. Users can lock files they are working on so others can’t make changes.* Anyone on the team can view the design, without the need for a massive software install or knowing their way around a CAD software. The interface is pretty easy to learn and understand. You can set revision schemes, and roll back to any uploaded version of the file at any time. The shared library feature is also very useful and quite easy to setup.

All options have their respective pros and cons, but IMO GrabCAD is the best bang for the buck** for FRC teams.

*A locked file can be unlocked by anyone, but they have to intentionally unlock the file. A notification is sent to the user that had the file locked. This is actually a nice tool incase someone has to miss time (sick, school, work, etc.).
**Not just talking about money; referring to other resources: learning curve, user interface, setup/maintenance, etc.

I believe that Onshape is the perfect CAD/PDM solution for FIRST programs. There is only one reason I can think of that would prevent a team from switching: inertia. Don’t hold your team back because you don’t want to put in a small amount of time to get familiar with a different CAD software.

Pros of Onshape:

  • Browser based - No software installation so works on PC/Mac/Linux/Chromebook/Smart Phones.
  • Version Control built in - No need to upload/download files. It’s mindless.
  • Automatic save - need I say more?
  • File change history is available from the beginning of your project. You can also see who made any particular change.
  • Version branching is available - but this would take some time to get used to and doesn’t work particularly well in any CAD/PDM software.
  • Doesn’t crash - well it crashes but it’s happening on a back-end server somewhere and doesn’t affect you.
  • Education edition doesn’t cost anything for FIRST teams. Functionally, it matches their ‘Standard’ paid software. Team members can be added to your ‘Team’. Files can be shared with the Team or kept privately. Any number of admins are allowed.
  • Seamless collaboration. Onshape will show you who is in the document and exactly what they are working on. You can even watch them as they work (kind of like a window share but you don’t need their permission).
  • Standard features. Onshape has recently added standard screws, washers, and nuts. These can be added to your assembly just like inserting any other part. It can even detect which size screw you need based on the hole size and can automatically populate a bunch of holes at the same time if you let it.
  • Public CAD Libraries. 1836, Milkenknights, has the best public FRC CAD Library right now. Just search for MKCad when inserting parts into your assembly. They are very approachable, if something that you need is missing or not working, just ask them nicely! marcusbernstein maintains it for the most part.
  • Featurescript. Do something regularly in CAD. Just write some code and automate it! I have released a couple of scripts that allow you to create common FRC extrusions. These are publicly available, just search 1745 when adding a custom feature in a Part Studio.

Cons:

  • CAM isn’t as integrated as Fusion. There are 3rd party apps for this that I haven’t used, so I won’t comment on them. Many teams export STEP files and bring them into a separate CAM software package, so it probably won’t impact your workflow anyways.
  • Missing X feature. If there is some feature you feel is missing, just put in an improvement request and get everyone you know to upvote it. Onshape is constantly updating their software. New releases are typically every 3 weeks. The releases are automatic, so there is nothing you need to do to get your projects updated. No costs or new installations.

Onshape allows you to focus on the design since they take care of all the back-end challenging parts of team-based CAD. GrabCAD works well, we used it with SolidWorks before switching to Onshape, but it still requires each team member to go through certain steps before and after they want to work on the CAD model. Get a new computer? You need to install CAD software, deal with licensing associated with that, manually configure the software so it’s setup how you like it, install GrabCAD, and wait for all your files to download. Onshape is just a single login per user.

It bears repeating. Many things teams struggle with are mindless in Onshape. I can be working on the document on my work computer. Leave for the day without even logging out and pick right back up at home or the high school on a completely different computer. Nothing gets lost or overwritten. If someone makes a change you don’t like, it is trivial to back out of it.

If the last time you tried out Onshape was a year ago, please give it another chance.

I have two other drawbacks to Onshape:

  1. Have to have internet access to use. That’s a deal breaker for me in certain scenarios.
  2. It’s not used in our local industry, I don’t see this changing anytime soon with all the IT and IA concerns.

I do plan to test drive Onshape this summer to enable me to make better decisions.

  1. Didn’t think of this. Definitely a deal breaker if you don’t have reliable access to internet. This hasn’t been an issue for my team or myself.

  2. I don’t really buy this argument, and I hear it a lot as I work in academia. It is my opinion that once you know one CAD software, you can pretty easily pick up most others. I don’t think anyone would have trouble using SolidWorks, Inventor, SolidEdge, or Onshape if they’ve used another one in that list. Creo, CATIA, NX, etc are on another level, but it still shouldn’t be too overwhelming to learn those either. No one will ever know what company they will work for when they are in high school or middle school. Most likely they will work for many companies over the course of their career and those companies will use different CAD software. It is pretty likely that the CAD we use in 5, 10, or 25 years will be different from what we are doing today, and I will hazard a guess that it will move more in the direction of what Onshape is doing with browser based CAD with integrated collaboration and document control. The most important thing we can teach the students is to learn how to learn and how to creatively solve problems. CAD is just a tool, design is a discipline.

For anyone, please feel free to reach out to me directly if you want to discuss moving to Onshape.

We use GrabCAD and it works pretty well for our team’s workflow—only thing I will add here is that the app is kind of buggy and occasionally takes several minutes to actually begin uploading or downloading a project. Might be our internet connection but happens to me at school and at home.

Edit: Also the online viewer isn’t the best and doesn’t properly display more complex assemblies, but that isn’t really a deal breaker IMO.

I tend to agree with this statement as well. Once you understand the concept of CAD it can generally be applied to any of the packages. Some are a bit more cumbersome than others, but it still boils down to where is the button that allows me to do x.
Our industry is primarily defense related and the software of choice in our area is dominated by SolidWorks and filled in with Creo. I get the fortune of using both, but Creo is not as user friendly IMO. We’ve found it easier to find people to assist when they know the software and less things to learn; and it is a better pitch to their management. When we were associated with the school system they were just starting to teach SolidWorks, and still using it in the curriculum. It made sense for us at the time, and has for a while. I will definitely give Onshape a fair chance this summer, don’t want to be too far behind on the technology curve.

Couldn’t agree more.

I also agree with this general statement, but there are a lot of hurdles to overcome from an IA standpoint before we will see it becoming a big player locally.

I think that the big takeaway is: Figure out what works the best for your team and your team’s situation/resources. Great options exist; figuring out the best for you is the challenge.

In the last 35 years working in electronics R&D, I have had to work with quite a number of electronics CAD packages; Viewlogic, 3-4 generations of OrCAD, PROTEL, PADS and now Mentor. I have also used several generations of AutoCAD 2D to make electrical drawings as well as enclosure drawings at some jobs. I have never had the option of choosing which CAD package I used to do my work. Of the ME’s I have worked with, half had to learn to use a new CAD package when they came to work where I was working.

Ricky is totally correct about learning to use CAD to solve a problem. People who focus only on the CAD tool are becoming the typists of earlier days who can only take dictation and exercise very little creativity.

A Pro for Onshape is that I was able to watch about a dozen videos (often while riding my exercise bike) and became able to do some useful work. I designed a 3-piece FLL table using features in Onshape such as constraints, arrays and assemblies. I have tried AutoCAD’s 3D package as well as Solidworks and found the learning curve to be steeper for these two packages. It also seemed that I had to learn a lot more about the packages before I could do something useful.

I am curious to know if Onshape bogs down with larger drawings such as a complex FRC robot. I have become accustomed to coworkers waiting an hour or more for Solidworks to load their (very large and complex) models and then crashing. Some of them were spending up to 1/3 of their day just waiting around.

Onshape being cloud-based can also be an advantage. I was able to work on my FLL table design during lunch time at work without having to move files around.

I couldn’t agree more. I just wish industry saw it this way. Give it 5 years and industry is going to be blindsided by a wave of kids brought up on different software than their company is using today, and they’re going to have to adapt.

Isn’t this contradicting the point being made, that if you know one CAD software you can learn any of them [pretty easily]?

I know my way around Creo (used everyday at work), SolidWorks (used most days with Robotics) and Inventor (former student expert, and still stay current; broke new release three days prior during job interview with Autodesk) pretty well; I’ve dabbled here and there with Fusion 360, and have made some parts with NX, Catia, Onshape, OpenSCAD, AutoCAD, and a few others. I’ve sat in the meetings about switching CAD software at work, it’s a back-and-forth conversation. One of the biggest reasons to keep what we have is “corporate knowledge”. We’d “lose” years of CAD data because none of the companies really play well with each other. If this barrier can be crossed, I would agree that things may change quickly.

From an information assurance (IA) perspective, it will be a challenge for our industry to have all of this data stored on some offsite, 3rd party server; or we would have to [significantly] upgrade our current file server.

I experience just the opposite. I can’t access Onshape while at work; I can use standalone software installs though.

A hybrid approach, web based with offline ability, would be nice to have. This still provides some challenges, but solves the “must have decent internet connection” that you may not have if you are on travel, out in town, at an offsite design review, etc.