Vex Configurable Parts in Onshape!

Building on some of the newest features built into Onshape. I hereby introduce configurable VexPro Parts!

Just search ‘1745’ when inserting parts into your assemblies. You’ll find the following with more to come:

  • Motors (Switch seamlessly between CIM and MiniCIM)
  • Hex Spacers and Standoffs
  • Sprockets
  • Gears
  • Gearboxes
  • Shafts of Custom Length
  • VersaFrame Extrusion of Custom Length
  • Bearings
  • Pulleys* (Coming Soon)

What does this mean for you?
Change the length of a shaft without having to model it yourself or use a ‘Move Face’ feature. Change from a 12T sprocket to a 22T sprocket seamlessly. Change from a hex bearing to a thunderhex bearing or a 1/2" round bearing. And so many others!

One of the current downsides of Onshape is it’s inability to easily replace one part with another. All the mates will break and have to be redone. Now you can insert a part, like a gear or sprocket, and then change it to a similar part without mates breaking. It will just update! After you have inserted it, change between configurations by right clicking on the part in the assembly and select ‘Change Configuration…’

Part numbers are used as extensively as possible so they should come up correctly on your BOMs. Part numbers and names do not not work on configurable length parts at this time due to Onshape limitations. Materials, appearance, and weights should be mostly correct.

How do you use them?
There are two ways to use a part in Onshape.

  1. Most commonly, you will insert a part into an Assembly. Then use mate connectors to place and constrain the part.
  2. Sometimes, you’ll want to bring the part into a Part Studio using the Derived feature. This will allow you to add features to the part, like grooves in a shaft or extra holes in a piece of rectangular tubing. Don’t forget that I have a ‘Custom Extrusion’ Featurescript available that might better suit your needs in this case, but everyone likes to do things differently.

For more complex configured Part Studios such as the WCD SS Gearbox, you must configure it correctly upfront then insert it into an assembly. Don’t forget to select all these parts and group them so they don’t move relative to one another!!! If you’re super fancy, you can only group some of the parts and then add gear relations where appropriate. I recommend inserting the parts into their own assembly then adding that gearbox assembly to your robot. It will be difficult to switch back and forth between different configurations of a gearbox (at least until Onshape introduces Assembly Configurations), but at least you can have your CAD quickly reflect your purchases.

Disclaimer: Please understand that I am generating these parts myself. This was significantly more involved than just importing Vex’s STEP files. Part profiles, specifically gears, will not be 100% identical to Vex’s files. But they are pretty close and shouldn’t affect your CAD models. The only caveat is be careful that you are paying attention when using the parts to 3D print.

While you have the ability to make copies of public Onshape Documents, keep in mind that your copy will not receive any fixes/future updates that I make to my master Document.

Please let me know if you find any mistakes or have any questions about using these parts (how or why). If you have any part/assembly requests, I will try to accommodate before the 2019 FRC season begins.


Have you seen MKCAD? It would be nice to integrate both libraries together to make them more consolidated.

Definitely aware of MKCad and use it regularly. I agree it would be nice to have them integrated and will speak with Marcus to that end. The main issue is that without some help directly from Onshape, libraries will always get out of hand. I can’t even search for MKCad now without copies coming up higher in the list than the original files. I don’t know how we can create a set of ‘Official’ CAD files for FRC parts since there will always be people who want the information/data in slightly different formats.

I have no intention of duplicating what MKCad has in place for all the one-off parts that our vendors sell, but it is nice to use configurations for families of parts.

Thanks for making this! I’ve been poking around a bit and really love the configurable part workflow with gears and such!

As for managing external libraries, what I’ve done is create labels for MKCAD and your library, so that instead of searching for them all the time, I have a “shortcut” under other documents that always takes me to the right libraries. It took all of a minute to set up and saves me the hassle of searching for them all the time, which is a real pain. I wish I could do this on the “Team” level so that all our members could automatically have them, but alas, that doesn’t seem possible. Still way easier than managing a GrabCAD Common Parts library though.



I’m so happy to see this idea coming to life and am looking forward to testing it when I get back to real life!

Shoot me an email and we can work on integrating these projects as well as some more Onshape tools for this summer/fall!!

Darnit, just added configurable Versaframe to MKCad :P. Here is the link for anyone that is interested. What you guys have done is great, I will definitely be using this!!

I’m working closely with the MKCad team to get these configurable files integrated as part of that library. We feel like it is in the best interest of the FRC Community that we have a single place to find FRC COTS parts. As soon as the file names change, I’ll update here. Stay tuned!

Looks like I’m switching to onshape :wink:

This would be fantastic if there were a parts library for FTC as well (incorporating REV FTC parts, Tetrix, and AndyMark, and maybe all three sets of extrusion). Anyone know of one?


I just made public our FTC Part Library, but it only includes REV parts, since that is all we use.

You can search ‘MKCad FTC’ to find it and insert any of those parts into an assembly.

The only configurable part in there is the 15mm extrusion.

How did you go about creating labels for the MKCAD libraries? I know how to create labels but I’m not sure of the most efficient way to do this. The only way I can figure out is create a document (and a label for it) and in the document create numerous assemblies and add one mkcad part per assembly.


In Onshape’s Documents page, you would search for the original MKCAD files through the Public tab – there should be 17 of them last time I checked. After creating a label, you would click on the labels dropdown menu and check the box corresponding to the one you want. I hope this helped!


Yes! To key is to search from the Onshape landing page not withing one of your documents.

If you want the “official” documents and not copies, make sure to look at the Owned By column. Label the ones owned by “Milkenknights Test Account” and me “Ricky Marcus”.

Good luck! Let me know if you need anything!

1 Like

Still gonna use solidworks! (Really cool feature though) Intra assembly editing is something I shall never give up

Have you tried edit in context in onshape? Not 100% what you mean by this but im pretty sure onshape has the feature your looking for. Also lets you jump in and out of context super quickly.

Yes! Thank you!

I’ve never found it, and weve had issues with Onshape crashing with our robot cad, so we switched to Solidworks.