Skip to content

List of Featurescripts

Onshape has its own scripting language to create custom features to automate aspects of design called Featurescript. There are a lot of featurescripts (what we call the custom features) that make designing for FRC much easier.

Tip

The title of each featurescript or group of featurescripts links to its respective document. Right click the title and click “copy link address” for installing it to your profile using the process described on the featurescript help page.

These featurescripts are must haves to enhance your Onshape workflow. Many of these are developed by members of the FRC community and well maintained.


Origin Cube
  • Used to create an origin reference for assembly mating
  • Optionally import design constants like bolt hole sizes, heat set insert hole sizes, etc
  • Optionally import functions for calculating gear OD, pulley/sprocket pitch & outer diameters, and calculate belt/chain c-c distances
  • See Assembly Best Practices for more information on usage
Video Example

Belt & Chain Gen
  • Used in conjunction with Origin Cube FRC Functions to create highly customizable belts and chains
  • Highly parametric - pulley/sprocket tooth count is automatically calculated from sketch pitch diameter.
  • Create multi pulley, double sided belt, and multi sprocket transmissions with options for both toothed and round idlers
Video Example
Robot Shaft (Alex's Featurescripts)

Robot Shaft
  • Generates a shaft, with options for hex, rounded hex (13.75mm OD), MAXSpline, etc.
  • Options for retention type on both ends
  • Can be generated in-place and with offsets
Robot Spacer (Alex's Featurescripts)

Robot Spacer
  • Generates a spacer, with options for round, 3/8” hex, 1/2” hex, MAXSpline, etc.
  • Can be generated in-place and with offsets
Extrude Individual (Julia's Featurescripts)

Extrude Individual
  • Can extrude multiple regions as different parts with one feature, even if regions are adjacent
  • Commonly used with tube converter to make punched aluminum tubes from a top view sketch
Video Example
Tube Converter (Julia's Featurescripts)

Tube Converter
  • Converts extrusions into punched tube, with customization and presets for hole pattern, wall thickness, and profile.
  • Can be slow - try moving to the end of the part studio
Video Example
Part Lighten (2471 Featurescripts)

Part Lighten
  • Better control over ribs, cut depth, fillets, etc.
  • Gives a nice estimate of how much weight is being saved
Video Example
FilletXpert (Fillet All Edges) (Julia's Featurescripts)

Fillet All Edges
  • After selecting a face, it adds a fillet to the corners of that face (all edges normal to the selected face)
Video Example

Spur Gear
  • Generates a spur gear with with many different options
  • Can be useful for 3D-printed parts and custom sector gears
3D Printed Mass (Julia's Featurescripts)

3D Printed Mass
  • Modifies 3D-printed parts to have accurate mass with given material, infill, and wall thickness
Video Example

The below links contain several featurescripts each that you can add all at once. The more useful featurescripts from each bundle are demonstrated further below.

Below is a list of other featurescripts that can be useful but are more niche.

Gusset Generator (Julia's Featurescripts)
  • Generate a gusset from hole selections
  • Warning: Not a very parametric featurescript and causes lag, but can be useful in a pinch
Robot Bearing Hat (Alex's Featurescripts)
  • Creates a custom bearing hat given a set of mounting locations and a bearing hole
  • Can create tapped holes
Spacer Generator (Julia's Featurescripts)
  • Generates a spacer, with options for round, 3/8” hex, and 1/2” hex
Video Example
Electronics Mounting (Julia's Featurescripts)
  • Generates hole patterns for different electronic components using center points and mate connectors on sketches
MechSketch (TLamp's Featurescripts)
  • Incredibly useful, generates sketch profiles for a variety of things
  • Profiles for COTS parts like Maxspline, TTB inserts, maxtube, motors, and the versa patern
  • Profiles and holes for all electronics
  • Profile generator for pulleys and a spur gears
Robot Spline Profile (Alex's Featurescripts)
  • Creates an inside or outside profile/extrusion of MAXSpline or SplineXL
  • Has all the standard extrude parameters
Robot Pulley (Alex's Featurescripts)
  • Creates a set of pulleys in the part studio given belt curves or mate connectors
Belt & Pulley Generation (2471 Featurescripts)
  • Configurable belt and pulley generation
  • Belt width, pulley tooth count, offset and fit adjustment, belt type, etc.
  • Options for bore and flanges for both pulleys
  • Generates GT2 pulleys
Sprocket (Abhi's Features & Configs)
  • Generate a sprocket for common types of chain
  • Calculates whether or not an inline chain tensioner will fit on a chain transmission
  • For when you are too lazy to do basic math
  • Cuts a profile in a part at a given location and depth to fit a thriftybot insert into, for 3D-printed parts to stop them from stripping while being driven on an axle.
Polybelt Generator (2471 Featurescripts)
  • Generates polycord and pulleys based off of selected points
  • Used for pocketing and lightening plates
  • Uses sketch regions to determine pocket and rib placement
Video Example
Robot Grid (Alex's Featurescripts)
  • Creates a grid of holes on a part (e.g. a bellypan)
CheeseIt! (TLamp's Featurescripts)
  • Advanced lightening pattern generation
  • Isogrid, hexagon, or circle pattern
PatchIt! (TLamp's Featurescripts)
  • Patches specified pockets in a part
  • Given some derived plates, either transformed from an in-context assembly (to maintain part count) or derived from a part studio, it will automatically lay them out into sheets of a given size, sorted by thickness. This is used to prepare a file to route or waterjet parts out of material with a machine.
  • Creates a table of measurements
  • Great for creating cut lists for parts
  • Highly configurable featurescript that generates tab joints between overlapping parts
  • Options to make it easier for cnc routers to cut parts
  • Can use for bumper wood corners
  • Features to make it easier for cnc routers to cut cavities in parts
Advanced Variables (2471 Featurescripts)
  • Can create a compound variable with path length, angle between edges, distance between planes, angle between planes, distance between points, pulley center distance, and chain center distance
  • Very useful for complex belt and chain runs
  • Include measurements that Onshape can’t normally do
  • Give color to faces on a part retroactively
  • Can use a variety of different color inputs
  • Can be used for part color configurations
Set Materials (Abhi's Features & Configs)
  • Parametrically set materials and appearances of parts in batches
Set Properties (Abhi's Features & Configs)
  • Sets properties of parts in batches
2471's Part Numbering (2471 Featurescripts)
  • Numbers parts based off of a given standard
  • Used for quickly applying a system to number parts