SDS MK4 Swerve Module

You probably don’t need all 8 bolts per module. If you use threadlocker you can likely get away with 4 per module.

@ToddF This is the way that we (2910) mount swerve modules to the frame and how I would recommend doing it. We use qty 6, 1/4-20 X 3/8"L screws. We drill out the holes in the bottom of the frame so that the head of the screw can pass through the 2 X 1. We typically do not use the screws closest to the corner and instead use them for a rivet on the bottom corner gusset. We use medium strength thread lock on the screws to prevent them from backing out.

I’ve also seen teams use the 1/4-20 tapped holes as 10-32 clearance holes. Which seems sort of sketchy, but in reality works totally fine.


The way we mounted our MK3 Modules onto this was by similarly making clearance holes for the bolt heads. However, we had a slightly different gusset design that allowed us to have more rivets and and module mounting bolts:



I would expect the 2020 R14 rule to be carried forward:

R14. FABRICATED ITEMS created before Kickoff are not permitted. Exceptions are:
I. COTS items with any of the following modifications:
J. Non-functional decoration or labeling
K. Assembly of COTS items per manufacturer specs, unless the result constitutes a MAJOR MECHANISM as defined in I1
L. Work that could be reasonably accomplished in fewer than 30 minutes with the use of handheld tools (e.g. drilling a small number of holes in a COTS part)

Drilling out the tapped holes into clearance holes clearly fits within the limitations of L (could easily be done with a handheld drill in under 30 min).

There is some small risk that they roll back R14 to what it was in earlier years, but I doubt they would do that. The changes they made were really to help teams be able to re-use COTS parts that had minor alterations to them.


We did the same thing with the 1/4-20 bolts. We love that the plates are tapped. They make great connection points for bumpers.

We also used them as stand-off mounts for thunder hex. These gave our modules some extra protection and provided an anchor point for eye bolts that we use for lifting the robot.


We attached our modules using 3/16 rivets. Sounds a little bit sketchy but we were just trying to see if it would work and have had zero issues with it!


Doesn’t this make swapping out a module a non trivial exercise?

See this discussion. This is what inspired us to try it and we’ve had no problems with it.

Not in Texas, the home of removing rivets faster than someone can remove a nut and bolt.


Quite frankly, that all just seems like clout chasing. Sure, an experienced person with the exact right tool might be faster, but in the heat of competition I’ll take a socket and an allen key 10 times out of 10.


We did almost the same thing as you did. We also used a tapped churro where you show the nut for securing the bumpers. I think ours is about 2-3 inches long. Makes them stick up about the same height as the bumper and much easier to get on/off. Also much easier to find when dropped.


That’s a good idea. We’ll have to try that out next time.

I like this idea except for one aspect - the Churro is aluminum and I would think that given the repetitive installation and removal associated with bumpers would lead to stripped threads. The good news is that it would be the churro that would have the stripped threads and not the bolt, so you can just replace it with a nut if it were to happen during a quick turn.

We were very happy with our solution of using wingnuts for the bumpers in 2018 and 2019. Makes it harder to over-torque. In 2020 we switched to latches. Not as pleased with that. We may go back to wingnuts.


Did you even look at the date that I posted that link Nate sent? Back then, it was 100% true. I’d venture to say it’s still true today. I’m not sure what you mean by clout chasing, but whatever.



Are you still taking challenges?


Sure, why not.


Maybe this will help other teams. Triple Helix is mounting motor controllers and a CAN connector board to some 3D printed shields. This makes the module a removable subassembly with minimal wiring connections.

You can download the assembly from grabcad and print your own. If you do, post pics…

So you know this isn’t just vaporware…

Yes, the wiring will get neater.


Looks great guys.

Obviously, where you choose to define the boundary of the subassembly can have an effect on the steps needed to swap out a module. We have always left the motor controllers outside of that boundary and chosen to break/make the wiring connections between the motor and the motor controller rather than between motor controller and the robot. This is primarily because the motor controllers need to be configured on the CAN bus, so if you swap out one set of motor controllers with another set when you swap the module, you will have some configuration tasks to do to get that running. Plugging a new motor into a motor controller that is already identified on the CAN bus should not require any additional steps. Once the motors are plugged in to the existing motor controller, you should be ready to run.

We, too , are using NEOs so we have this option. If you had Falcons where the motor controller is integrated into the motor, then you don’t have a choice. The motor controllers are inside the boundary and you need to do the configuring of those new devices on the bus.

You probably need to calibrate the zero reading on the azimuth encoder but there is probably not a good way to keep that encoder on the outside of the subassembly boundary such that you would not need to do this step.


Yes, having software reconfiguration be a necessary part of swapping modules is fairly terrifying. I can see coming back from a match with a damaged module, and physically swapping in a new one as doable. Also reconfiguring the CAN network and calibrating the encoder no longer makes the swapout a 5 minute task. I could see the requirement for a rapid swapout driving us to keep the drivers on the robot.


I wanted to provide an update on backordered MK4 modules.

We have all of the parts needed to ship modules on hand except for the gears. This gear order was placed in May. Under normal circumstances I would have expected to receive the gears over 2 months ago. There were some minor production delays, but the main hold up has been the delays at the LA sea port. The ship arrived at the port of LA on September 9th and was unloaded on September 27th. The container is still waiting for a truck to pick it up. The latest I have heard from the shipping forwarder is they hope the container is delivered to their warehouse next week in which case I would receive the gears the first week of November. Once the gears arrive I can move very quickly to get orders shipped out.

There is another order of gears that is just finishing production and will be shipped by air. The good news is that both the gear orders are quite large. Once received the gears will clear the backlog and will cover orders well into build season.

At this point we have stock piled a significant amount of the in-house machined aluminum components and will continue to build inventory in anticipation for the build season demand spike. I have hired a machine operator for the month of December to help with production. We are still on track to have many modules available for the 2022 build season.

I’m very sorry about the delay. I know this is frustrating for teams trying to plan their pre-season projects.