Team 4143 - 2020 diffswerve release

Here are the design files for our 2020 robot. It finally got to compete at GRC and Roboteer Rumble.

C++ code

Onshape link

2021 Motors down configuration

Old thread with more details


we got the great opportunity to play with them at Roboteer Rumble. There swerve modules were very impressive and work great. Thanks for sharing the model.

1 Like

Looks great, thanks for sharing, especially the code - AFAIK there aren’t too many examples of diff swerve code out there.

1 Like

What are the forks made from?

Wow, I love the differential swerve module. Extremely compact and even has some flexibility with the ratios. Big kudos for these!

How did you figure out if the torque going into the modules cancelled during regular drive movements? If they didn’t cancel, were you able to just run the motors asymmetrically to combat the effect?

1 Like

The center core is printed in Onyx. We’ll use NylonX for lots of the less important parts.

After experimenting with much more complicated control code, we settled on a very simple scheme.

The important part is something like:

motor1->SetPercentPower((speed percent* inverse) - (module heading degree error/180));
motor2->SetPercentPower(-(speed percent * inverse) - (module heading degree error/180));

One could argue that is less complex than legacy swerve.

I think speed was limited to 60% at the two offseason events. With more driver practice and a slew rate limiter, we should be able to increase that limit.

I don’t think we saw any real advantages over a well implemented brushless powered COTS swerve. But it also didn’t hurt us. Our team likes crazy, so if the game allows, we plan to iterate on it at least one more season.


Love it. Keep it up.


i followed the onshape link and



What setting are you using for your onyx prints? What infill and wall thickness?

1 Like

We use whatever the Markforged default is for stressed parts. 37% infill I think. The core has 1/4" aluminum spacers through it which stiffen the forks and also hold everything in compression.

1 Like

Wild, so the intake + hopper + shooter assembly all lifts up and down to get a high shot/potentially far-field while still fitting under the trench? And did this design actually compete or was it a CAD exercise?


Looks like they have an unveil video and went to some offseason competitions this year.


This is a thing of beauty!

If you find the steering is too twitchy, and you like “the challenge” that would come with extra complexity, you might consider adding another reduction stage for steering below your existing differential. Something like This or This.

Here are some photos of a belt drive version that we ended up abandoning. We were worried the tiny teeth on the belt would not last long. The mounts are getting converted to the geared version over break.


will this be used on your 2022 robot?

1 Like

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.