997 Spartan Swerve V3

Getting bored of these yet?

This is the third version of 997s swerve drive and most likely to be the end module we will use.

Final weight is 4.31 lbs in CAD, which is a significant reduction in weight to the the previous V1 and V2 modules being 5.24 lbs and 4.75 lbs respectively.

In this iteration I decided to switch from the large 72T gear used in both V1 and V2 modules for the azimuth to a custom machined pulley similar to 2910s due to the ratio limitations presented by using a gear. This also allowed for a reduction in custom machined parts.V3%20azimuth

Edit: CAD link https://grabcad.com/library/spartan-swerve-v3-1

As always criticism is encouraged.

1 Like

Is there a tensioner for the belt that I can’t see? I’ve found it’s good practice to tension every chain and belt, especially one where backlash is as critical as this.

If you’re interested in getting more weight out, you might be able to make the top plate into 1/8" thick stuff. You could also pocket out the areas which currently have mounting holes (pretty agressively too).

You could maybe save on size by using a skinnier wheel, and then taking the size of the bearing and pulley down. You could potentially buy an AM 4" wheel and machine that to accept a bevel gear. However, you may need to consider the weight tradeoff of aluminum vs plastic wheels.

I think this really looks excellent. Nicely done!

Im not seriously concerned about weight at the moment I feel it is at a pretty reasonable weight as it is currently lighter than a majority of our west coast drives.

I did think about putting a tensioner on the belt but I feel we have gotten our tolerances down enough to have faith in the c-c distance.

The reason I like the Versa wheel so much is how cheap it is and the AM wheel is significantly more expensive and I wanted to keep costs down as much as possible.

Since I don’t have the cad my eyes might be wrong on this but it looks like that’s a 1" rivet pattern. Personally I’ve started liking .5" hole patterns a lot more than 1" patterns simply because it’s more secure. It also looks like that top plate could be pocketed a decent amount more.

For versawheels they wear out fairly quickly. You would ideally replace them every half a day of competitions or so which means it has to be easy to take out. From what I can see it does look easy to take out but I can’t really tell.

I only mostly forgot to add the link to the CAD

I have taken the complete opposite stance I used to do everything .5in for the hole patterns but recently I have been really liking 1in because usually you don’t need the strength of all of the bolts holding the module in.

1 Like

Looks like a solid module, although I haven’t had time to look at the CAD directly yet. Love the minimalist design and the NEOs. The rotation encoder setup is also very clever.
For your rotation ratio, you should set “Arm Load” to about one-half the robot’s weight. Technically, one quarter times the CoF of the wheel will work. “Arm Length” is the width of the wheel.
Right now you’re geared for around 380 RPM on the module rotation. Reducing that to 200 or so will help control it easier.


Right now the base plate looks like it would take 2 ops and wouldn’t be very easy to machine. I took a few measurements so I’m not 100% sure if this will fit but I wouldn’t do the counterbore for the 8mm bearing that goes in that plate and instead use a flanged bearing. It looks like this bearing would work there because it has a flange thickness of only .8mm and from the measurements I took it should fit. I would then make it so you only make the baseplate thinner on 1 side that way you can do this entire thing in 1 operation instead of 2.

Thank you for this information I was at a complete loss when it came to those fields

I wouldn’t be opposed to reducing the amount of ops but it isnt hard to do the second op as we generally just use fixture plates to all we have to do is unbolt it flip and then bolt it back down and we are doing chamfers anyway, I would like to keep the amount of different parts low as well as cost as that bearing is about 4 times as much as the one there.

Yeah that’s fair. Nowadays I assume most people just cut their plates from a large sheet on a router but if you use fixture plates that’s probably going to be just as fast and if the bearings are cheaper I would definitely go with what you have rn.

Very nice module. I love seeing everyone’s different takes on swerve designs.
A couple things I noticed.

  1. I see that you are using the 3/8" Hex to 3/8" thunder hex step to constrain the shaft axially to the bearing, but what is preventing the 3/8" thunder hex bearing from moving upwards? Flipping the 3/8" thunder bearing so the flange is on the bottom would fully constrain the shaft axially. I’m sure your aware, but it looks like a spacer is missing on this shaft also.

  2. It looks like a significant amount of height could be taken out of the module by shortening the wheel forks.

  3. Without the pilot bearing for the motor shaft you are relying on a large stack up of parts to ensure the center to center distance of the motor pinion to the mating gear is correct. It will probably work fine, but just something to be aware of. I realize that you are running out of motor shaft length for a bearing with the MK2 style steering encoder gear above the motor pinion.


I noticed that in your design calculator it is showing a current draw of above 70 Amps. Now in theory REV should have designed them to take this load but that wasn’t the case for us. Our team ran NEOs this year without a current limit and we burned out a lot of SPARKMax’s because of this issue. I would recommend setting a current limit either in your programming or in the SPARKMax itself to 55 A.

Thank you all for the criticism here is the link to V3.1


1 Like

what specific type of bearing is the X contact bearing, and where can i get one?

We are planning to use this bearing.


An x contact bearing also known as a 4 contact bearing are good for axial and moment loads

Its basically its own style of bearing, not a radial but also not an angular contact bearing though it is more like the latter than the former

this describes it well


i had never seen those before, thank you :slight_smile:

Cad for V3.4

Something I wanted to mention about the JVN calculator (and if you already know this, then my apologies), but the pre-loaded gearbox efficiency of 65% is actually really bad. For regular gears, you lose about 1-2% efficiency per mesh and roughly 3-6% per mesh for a bevel gear. So 65% is really bad unless they’re using a really nice ACME screw.

1 Like

That was actually just a remnant from an arm I designed a while ago and I am only really using that for the speed so I was lazy and didn’t change it.

edit: i also like giving myself a decent amount of leeway because we’ve been burned due to under compensating so i usually estimate a system 5-8% less efficient than it “should” be