2910 MK2 Swerve Module Release

WPILib has swerve kinematics, odometry, trajectory generation, and following built in this year. I would check out some examples and the documentation starting at https://docs.wpilib.org/en/latest/docs/software/kinematics-and-odometry/intro-and-chassis-speeds.html
(Ignore differential drive as it’s not for you).

Here’s an example project to drive swerve modules https://github.com/wpilibsuite/allwpilib/tree/master/wpilibjExamples/src/main/java/edu/wpi/first/wpilibj/examples/swervebot

Here’s an example project that follows a trajectory.

With everything added to WPILib this year all you’ll need to do is change a couple of inputs and test.

While everything is written for you already, it is highly recommended to understand what exactly is going on under the hood so that you can debug during competition quickly if necessary.

1 Like
  • The steering belt (64T X 9mm HTD) is no longer available on the Swerve Drive Specialties website. I can’t find a 64T belt on WCP, VexPro, or AndyMark either. Any idea when they will be back in stock or another source? We broke and need one soon.

I just put some more belts back in stock.

1 Like

A bit of a late response but in a pinch we order belts off of Amazon. We too broke a 64t belt and bought it from here: https://www.amazon.com/PowerDrive-320-5M-09-Timing-Section-Length/dp/B00ISCF3T0/ref=sr_1_1?keywords=320-5m-09&qid=1583799557&sr=8-1

Estimated restock for the 60t bevel gears?

Unfortunately the factory that makes the bevel gears was effected by COVID-19. We are expecting more 60T bevel gears to be in stock near the end of April.


Are the modules with the falcon motors on 2910’s 2020 robot going to be released this year?

I believe the only difference is the pinion gears used. We’re using Falcons on our MK2s with no issues using pinions from AndyMark (we used the parts list from the fundamentals kit to determine what gears we needed; the drive motor uses a 14T 20DP gear while the steering uses 15T 32DP). It’s possible they adjusted the overall gear ratio to account for the difference in free speed, but it’s close enough to not be necessary.

I suppose it would be nice to save a few bucks per module in the future, though if you want to now you can - just buy the fundamentals kit instead and only source the parts you need.


Can confirm, 4911 ran basically the same setup, which is I think is almost the same as what 2910 ran.

We ran Mk2 Modules with the following modifications:

We’ll probably spend some time now playing with retention methods for shortened Falcons shafts, it’s nice to not have to use motor spacers, and since the Falcon shafts are replaceable it’s easy to justify cutting them down.


I’d appreciate more info (and maybe a picture) of this, if possible. I prefer those encoders but we used MA3s since they worked off the shelf.

This was my initial concept for using SRX Mag Encoders or CANcoders with the MK2 module. I believe 4911 has further iterated this idea.

2910 is using MA3s. They have proven to be reliable for us and we like not making additional custom parts.

I can confirm that 2910’s 2020 modules are just MK2 modules with Falcon 500s. Like 4911, we are using the 6.92:1 gearing. With Falcons this puts our unadjusted free speed at about 16 ft/sec.

1 Like

Hey Patrick,

Ever since we saw your 2018 bot swerving around on Einstein we have been interested in doing our own swerve. This past off-season some alumni worked on making a modified MK2 module chassis ourselves. We decided to make the entire module in house including the 20DP spur gears.

The main change that we did to the design was to accommodate a mag encoder as that is what we are comfortable with and is slightly cheaper. The design solution we came up with is shown below and involved changing the gearbox plate design slightly and used two oilite bushings to constrain the encoder shaft. The encoder shaft has a countersunk bolt at the bottom to constrain the 3d printed gear as well as a snap ring above the 3d printed plate. This 3D printed plate supports the first oilite bushing and the second oilite bushing is press fit into the aluminum plate. The mag encoder was then mounted on the top plate.

  • Real Life Pictures

Full Bot

We just recently finished up the chassis and now we have it running. Still tuning the programming of the modules but it’s getting there. Let me know if you have any questions.


Did you rivet the module in? If so, I feel like you should bolt the modules in instead.

Yeah its riveted in, we didn’t have the right length 10-32 to bolt it in. If it breaks/loosens up we will swap them out.

Can you explain your reasoning behind this thought?

I would say maintenance is the biggest concern… Having the ability to easily pop a module out and replace it with another is pretty crucial

1 Like

And what about rivets prevents that?

Drilling them out and popping new ones would take more time, and also risks widening the holes on the plate/tube

Not with the proper tools.

We’ve got cordless impact drivers for bolts.

We’ve got cordless rivet pullers and the proper rivet-drilling tools.

I believe that popping and drilling rivets will be faster, all else being equal. And no one has ever cross-threaded, over-tightened, or stripped a rivet!

More to the point: in this case, where the fastener would pass through a tube, a rivet clamps just to the wall of tube. A nice, rigid, connection. A through-bolt would deform the tube and ultimately have a lower clamping force than the rivet, on top of weighing more.

1 Like

Was actually not aware of these tools, neat. I stand corrected, rivets could be nice in this application.
We use rivet nuts to hold our modules, works well and very easy to disassemble when needed