Spartatroniks 3512 - 2022 CAD Release

Team 3512 is proud to release the official CAD for our 2022 Robot:


GrabCAD Link for STEP & Native SolidWorks Files

Design Goals and Constraints

  • Standard 0.5in hole pattern on all faces on all tubes where possible
  • Thinner wall tubing (0.0625in) where possible besides drivetrain
    • Use of 3D printed crush blocks when bolting through thinner wall tube
  • Box tubing + gusset riveted construction or parallel plate + standoff construction for most subsystems
  • Subsystems to be bolted to drivetrain chassis for easy assembly & disassembly
  • Standardize on #10-32 bolts, 5/32 rivets
  • Oil embedded bushings + shoulder bolts for pivot joints
  • All subsystems powered with NEO, NEO 550, pneumatics, or springs
  • Single stage belted reduction directly off motor shaft for most gearboxes
  • 3D printed hex pulleys, hex spacers, bolted standoffs under 3in long, crush blocks, sensor + electronic mounts
  • Thunderhex for rotational shaft, churro for standoffs over 3in long.
  • Shafts retained with 1/4-20 screws + washers

Subsystem Overview:

Drivetrain Gearbox

  • Compact single speed flipped NEO gearbox based on WCD Design
  • Powered by 2x NEOs geared 9.31:1
  • 15.96ft/sec free speed

Drivetrain Chassis

  • 6 Wheel WCD
    • 4x 6in Corner Omni wheels for increased maneuverability
    • 2x 6in WCP Traction wheels w/ 1/16in center drop
    • Back mounted drivetrain gearbox
  • 0.125in 2x1 alum. tube + gusset construction
  • Upper 0.125in 1x1 alum. tube bumper frame
    • Allows for additional mounting options for other subsystems


  • 3 Roller over the bumper design
    • 2in TTB squish wheel bottom roller helps with bouncing cargo balls
    • Middle and back WCP versarollers w/ rubber sleeves
  • 0.25in Polycarbonate and churro parallel plate construction is resilient to hits
  • Powered by 1x NEO geared 3:2 w/ timing belts
  • Oil embedded bushing + 0.375in shoulder bolts on pivot joints
  • 0.75 Bore x 1.5in stroke pneumatic cylinders for extend & retract
    • Cylinder is retracted when intake is extended for protection
  • Designed to be as wide as chassis allows
  • 1in Cargo ball compression

Funnel + Conveyor

conveyor and funnel

  • Funnel

    • Funnels balls from intake to conveyor in conjunction with Conveyor 1st stage
    • 0.125 Alum. plate base, 0.25in polycarbonate sides, churro, and zip tie construction
    • Attached via velcro to chassis crossmembers
      • Removable to access compressor
  • 2 Stage Conveyor

    • Stores and conveys 2 cargo balls
    • 0.0625in 1x1 alum. tube + gusset construction w/ 0.25in polycarbonate back plate
    • Each stage powered by 1x NEO geared 3:2 w/ timing belts
    • 1st Stage
      • 3in Compliant wheels index cargo balls into conveyor in conjunction with funnel
    • 2nd Stage
      • Timing belts convey balls up to shooter
    • Top and bottom Adafruit beam break sensors for ball queuing
    • 1in Cargo ball compression



  • Fires cargo balls into top and bottom goals
  • Fixed hooded design w/ 0.125in alum. + churro parallel plate construction
  • Front and back wheels powered by 2x NEOs geared 1:1 w/ timing belts
  • 1x 4in Fairlane main wheel in front
  • 2x 4in Fairlane accelerator wheels in back
    • prevents backspin
  • AMT 103v external encoders
  • 2in Cargo ball compression


  • 15 second traversal climb
    • Pivoting single stage ThriftyBot telescoping climber arms
    • Passive sprung hooks
  • Powered by 2x NEOs through 12:1 MAXPlanetary gearboxes
  • 1.0625in x 6in stroke pneumatic cylinders pivot telescoping arms
  • 1.25in O.D. alum. tubes + oil embedded bushings for sturdy climber pivots
  • REV magnetic limit switch for upper and lower extension limits


Wow. We’re your images in Photoview360?

The assembly and sub assemblies are truly impressive.

Even the electronic components. Well done.


@niczip can answer more questions about creating the renders.

1 Like

Thanks so much Marie! We pride ourselves on detailed, organized assemblies! We’ve been building out our current CAD workflow in SolidWorks since 2019. I’ll be making some followup posts here detailing that workflow which has allowed us to work smarter not harder.


I did all of the renders using Photoview 360. It works great!

1 Like

Just beautiful!

1 Like

Thank you!

This will be the first of a series of post about our SolidWorks Workflow.

File and Assembly Organization

The backbone to any robot we design is a base level of organization of both our file structure on the computer, and organization of assemblies into subassemblies.

Computer File Structure

We maintain a folder for every year competition year. Using 2022 as an example, within that folder we have folders for:

  • 3512 2022 Robot Release - Pack and Go version of the 2022 Robot CAD
  • CRAYOLA CAD - A simplified 3D outline of the robot to help visualize subsystem packaging early in the build season
  • FIELD - 2022 Field CAD
  • RENDERS - For renders of finishes CAD for promotional purposes
  • ROBOT - CAD for the 2022 competition robot


Drilling down into the ROBOT folder:

  • 22-000-000 - Main Robot Assembly
    • Part numbering scheme to be covered in a different post
  • BOUNDRYBOX - A transparent box used for mating into the Main Robot Assembly to visualize horizontal and vertical extension limits
  • LAYOUT SKETCH - A sketch we create for laying out the 2022 field elements and game pieces in a 2D side view
  • Folders for each subsystem
    • BUMPER
    • INTAKE
    • SHOOTER (V1 subassembly that is now deprecated)
    • SHOOTER V2

It incredibly important to us to keep the ROBOT folder as clean as possible.


Drilling down further into one of the subassembly folders (ex. Intake):

  • INTAKE DRAWINGS - All intake drawings and PDFs created by the CAD team for the Mechanical team. This includes:
    • Part Drawings
    • Exploded View Assembly Drawings
    • Exploded View Assembly BOMS
  • INTAKE STL + 3MF - Contains all STL and 3FM files created from intake parts for the purpose of 3D printing
  • INTAKE MASTERSKETCH - Document used to design the entire intake subassembly
    • Mastersketch workflow will be covered in a different post
  • 22-INT-000 - Main Intake Subassembly
  • 22-INT-### - All intake parts and low level subassemblies
  • Intake Belts - Because belt center to centers is highly dependent on the pulley tooth counts and desired center distance, these are the only COTS parts (besides hex shaft) found in the ROBOT folder, every things else in COTS library
    • COTS library will be covered in a different post

Assembly Organization

Mirroring our computer file structure, our main robot assembly 22-000-000 only contains the Top Level Subassemblies:

  • 22-DRT-000 - Drivetrain Subassembly
  • 22-INT-000 - Intake Subassembly
  • 22-CON-000 - Conveyor Subassembly
  • 22-CON-100 - Funnel Subassembly
    • We opted not give the Funnel its own moniker, thus why it named as conveyor low level assembly
  • 22-STR.V2-000 - Shooter V2 Subassembly
  • 22-CLM-000 - Climber Subassembly
  • 22-ELC-200 - RoboRio Electrical Board Subassembly

Opening 22-INT-000:

  • 22-INT-### - all intake parts and lower level subassemblies
  • FASTENERS Folder - contains all fasteners and COTS parts
    • Putting fastener and COTS in a folder cuts down on visual clutter

Opening 22-INT-200 (middle intake rollers):

  • 22-INT-### - intake parts
  • FASTENERS Folder - contains all fasteners and COTS parts

When and why to use Subassemblies?

A subassembly is nothing more than an assembly inserted into another assembly. You can theoretical do this as deep as you need to.

Creating Top Level Subassemblies for a drivetrain, or an intake, ect. allows for different team members to work on those assemblies simultaneously with no fear of over writing each others work.

Creating Low Level Subassemblies such as the intake roller example above is more situational. A few reason to use low level subassemblies are:

  • The main subassembly naturally has discrete assemblies. Examples include:
    • 2 stage elevator
      • Outer frame
      • Inner frame
      • Carriage
      • Carriage mounted intake
    • Telescoping Climber
      • Base Tube
      • Inner Tube
  • Sometimes there are small assemblies of a few parts each that are used multiple times. Mating a single small subassembly is easier than re-mating all the parts in that assembly over and over again. Examples include:
    • Versa rollers
    • Elevator bearing blocks
    • COTS gearboxes
      • Swerve modules
      • WCD gearboxes
      • Planetary gearboxes

Room For Improvement

One issue we run into for both the file structure on the computer and our CAD is that assemblies with a large amount of parts such as our 2022 conveyor can start to feel cluttered.

One idea we have for addressing that would be to create folders on the computer and in CAD for machine type (Mill, CNC, Lathe, 3D printer, ect) and organizing parts into those folders.


Custom Document Templates

Every part, assembly, and drawing made in SolidWorks uses a document template. These templates can be used to set Drafting Standard, Material Properties, Standardized Drawing Title Blocks, and much more. SolidWorks has default document templates, however it does allow you import and create Custom Document Templates as well.

Any file can be saved as a document template, so that when a file is used as a template when creating a new file, a copy is created. You can take advantage this by making templates out of parts/assemblies/drawings you frequently create for FRC (such as 2x1 tube, pullies, hex shaft, spacers, ect.). This can save a tremendous amount of CAD busy work.

3512 Custom Document Template Files

You can download our custom document template files here!

Custom Document Template Examples

Here is a list of all the Custom Document Templates we have created:

We use the term Generator for document templates that use a combination of equations and configurations to create different versions of the same part.

  • Equations and Configurations will be covered in a different post.

Aluminum Box Tube Generator

This template allows you to create different types of tube with hole patterns on both faces:

  • 1.0 x 1.0
  • 1.5 x 1.5
  • 2.0 x 1.0
  • 2.0 x 2.0

The hole pattern will parametrically adapt based on the user inputted tube length by managing equations.

Hex Shaft Generator

This templates allows the you to choose between different types of hex shaft using configurations:

  • 3/8" and 1/2" Hex w/ Snap Ring Grooves
  • 3/8" and 1/2" Hex ThunderHex
  • 3/8" and 1/2" Hex Captive Shafts

Additionally, you can quickly change the Length of the shaft (among other things) by managing equations.

HTD Pulley Generator

This template allows you to change the pulley tooth count on the fly by Managing Equations to get almost any size HTD pulley you desire. Additionally, the tooth count and part name are automatically embossed into the pulley face as well as having an integrated 0.0625 spacer.

HTD Belt Generator

This template allows you to specify Pulley 1 Tooth Count, Pulley 2 Tooth Count, and Belt Tooth Count to generate a HTD belt with the correct center-to-center distance.

  • The belt generators are a rare example of a COTS part that we have a Generator for. This is because while 2 70T HTD 5mm belts are identical in real life, if the pulleys driving those belts are different sizes the outside shape of the belt appears different in CAD which means its essentially a different part as far as SolidWorks is concerned.

Creating and Using Your Own Custom Document Templates

As mentioned above, and part can be be saved as a part template. The example below uses a standoff.

  1. Design a simple standoff

    Make sure to set drafting standard, material properties, appearance, and anything else you’d like the finished document template to have.

  2. Save the standoff as a .partdot file

    Note that when you switch the file type to .partdot SolidWorks may change the file location on you initially. Make sure to save this into a known folder, and you want to save all of your custom document templates into the same folder.

  3. Add your custom document template to SolidWorks

    Click the Options gear, then choose File Locations from the menu on the left. Next choose Document Templates from the drop down menu. Click the Add button, select your folder, and click Select Folder. Finally, click OK. You may have to agree to a few Windows pop-ups.

    • Note this step only has to be done the once, you can skip this step when creating subsequent document templates

  4. Create a new standoff using the template

    You are finally ready to use your part template! Create a New Part, click the Advanced button at the bottom left, select the tab corresponding to the name of your template folder, then select your Standoff. Click OK.

    This will create a brand new standoff part, and you are free to change its dimensions to fit your needs.


Thank you so much for walking us through your process. Definitly took some notes to bring to the kids in our team!


Happy to be of some help. I have more posts planned for this thread detailing our process more in depth!

Hi Nick - I have really been enjoying your SOLIDWORKS models and file structure lessons. With your 9020xxxx serial number register as a “student” for Review the video on how to do it. You will get access to the MySolidWorks learning content. I recommend, Configurations. You can make different configurations for a part and or an assembly. For example “as designed” and “as manufactured”. Also look at the Assembly tips. Simplify and defeature for your beautiful Photoview 360 renderings.

I agree - when folders get too big, it is time to simplify. Also takes longer to find components for SOLIDWORKS too.

Thank you for helping so many. Marie


We use a ton of assembly configurations!

1 Like

Love it!

Memes aside, this videos shows a number of optimized assembly mating techniques that I will elaborate on soon!


This is realy cool. I would love to learn more about the way you go about configurable documents (gears, bearings, screws) is it an assembly where the rest are suppresed? Or are you doing some solidworks magic I dont know about?

Another question, do you also use mate referneces? it would seem easier to use on standoffs and bolts.

1 Like

I’ll be making a follow up post about our configurable parts, might possibly be a video instead actually. To answer your question, it depends. Many of our configurable parts are nothing more than assemblies with configurations with suppressed parts. Other ones are configurable parts (not assemblies). It depends on the geometries of the parts involved.

You are actually dead on the money, the standoffs and bolts are inserted in the above video using mate references.

Again, I have a future post on the works detailing efficient assembly mate workflows, including magnetic mates, mate references, pattern driven patterns, and copy with mates! This might also be a video.

1 Like