A Swerve Design You can Make in-House (after the quarantine is over)

Some people bake during the pandemic quarantine. Some people CAD swerve modules :laughing: . Following on to the design I posted before kickoff, I wanted to see if I could come up with a design that:

  • Uses a 4" colson wheel (because I wanted something that would last all season without maintenance)
  • Is compatible with a COTS (in this case the WCP) module as much as possible
  • Can be manufactured through relatively accessible* means.
  • Total cost per module about $300 / module (about the same as a tank drive gearbox, and significantly less than than other COTS options)

I didn’t get all of the way there, but I got close. The design below has is about $325, including wheel, motors and sensor, if you don’t charge for in-house made parts (big if). That’s still a fair bit cheaper than a WCP or SDS module, so I’m calling it a win :).

The custom parts include:

  • a bottom plate, routered from aluminum
  • an “azimuth” plate, routered from aluminum
  • A top plate laser cut from delrin (or routered from aluminum if that’s easier
  • a number of 3D printed parts, including the wheel forks. My hope is that these pieces can be PLA so that they can be made by any team with a 3D printer. To that end, the forks are reinforced with aluminum inserts.
  • a vertical drive shaft cut from 3/8" thunderhex. This is probably the hardest part to make if your team doesn’t have a lathe (and a 3/8 hex broach), but I tried and failed to think of a simpler design.
  • the tube that serves as a hub for the colson wheel

The Commercial (COTS) parts are listed in the BOM spreadsheet below.

Overall the module is symmetrical, 6" wide x 7" long x 8" tall, can be mounted above or below the frame rails, and it weighs 4.8 lb as shown according to Solidworks. The drive gear ratio can be changed from anywhere between ~12 ft/s free speed (8.4:1) through ~23 ft/s (4.5:1) in roughly 10% increments by changing the motor pinion. Similarly the steering ratio can be changed from 15:1 through 125:1 depending on what stages you choose for the Ultraplanetary.

I’m sure there are lots of ways to improve the size, weight, and cost of this design, but I think it’s a pretty good balance for now. The concept of using a regular old 3D printer to make the forks (as reinforced with aluminum spacers) also needs to be confirmed through testing. I welcome any feedback or suggestions. It looks like we’ve got a few more weeks to tinker with the design before we’d be allowed to build anything.

CX20-Swerve1 drive ratio options.xlsx (10.7 KB)
cx20-swerve1-BOM2.xlsx (15.9 KB)

Cad Files here:

*“accessible”, in this case, means that all of the parts can be made in house at the HWCDSB shop, which is pretty well equipped. But ideally, I think this design could be modified so that the plates could be outsourced to a waterjet or laser-cutting sponsor which would mean lots more teams could build it.


in one of my other posts im asking how feasible would it be to print all the non-stressed parts of a swerve drive, i might just try it

1 Like

Huh. This is neat. Good to see some swerve coming out of Ontario again.

It’s refreshing to see a design optimized for minimum BOM instead of minimum weight (4.9lbs ain’t nothing to scoff at though)


Looks really nice! We may try to make a drivetrain using these later in the offseason, if we choose not to get the older WCP modules instead.

I have a couple of questions and one suggestion:

How are you attaching the Colson wheel to the bevel gear? Is that what the thread forming screws are for in the BOM?

What drove the decision to have the steering pulleys below the main plate? Are you worried at all about damage (field debris getting in there, etc)? Do you think this type of module would work with the frame rails above the main plate, which would produce extra ground clearance but protect the 3D printed parts less?

I looked around the drive shaft, and I didn’t see anything that would need to be broached; what parts would need the 3/8" broach?

EDIT: realized the small bevel gear from WCP comes in 8mm bore. Updated question: would a normal hex broach (not a rotary broach) be sufficiently concentric for a bevel gear?

EDIT 2: The SDS bevel gear pair is 15:60 instead of the 15:45 you’re currently using, but their 15T bevel gear has a 3/8" hex bore. SDS also sells their shafts and other parts separately from their modules. If you want to try this, using the SDS gears and shaft would likely mean removing the need for a lathe and a broach. However, it would significantly increase cost (their gear pair is more expensive than WCP’s).

The one suggestion I would make is based on the WCP modules, which have a really cool trick for zeroing the modules:

Basically you can drop screws in through the top plate into their steering gear to locate a specific position of the module in order to zero it. Our team has never done swerve, so I have no idea how necessary it would be to zero the module this precisely, but it seems like a simple enough change that it might be worth doing regardless.

We’ll be selling a 3/8" hex version of the 15T. We chose to step down to 8mm to avoid a more expensive bearing, we’ll revisit changing the module in the future to be hex shaft instead.


I was hoping I could just glue it (or perhaps braze it) to the tube inside the Colson. Otherwise maybe self tapping screws yeah.

[edit] The two thread forming screws in the BOM are used to hold the encoder mount down to the delrin top plate.

That keeps the module as short as possible when using a planetary gearbox for steering

I am not too worried about damaging the parts. They’re high up and tucked tightly against the wheel, behind the bumpers. Maybe I should be? They’d be fully protected if the module was mounted on top of the frame rail (leaving ~2" of ground clearance). It will also mount fine under the frame rail if you prefer.

I think so.

I really like the SDS module. It’s super clever, and clearly inspired a lot of people. Unfortunately the 15:60 pair doesn’t package as nicely as the 15:45. I can also get the 15:45 from KHK gears, with only a little bit of lathe work should WCP run out of stock.

That’s a great suggestion! I’ve designed it to use an absolute encoder, but you would still need a reference to align the magnet. It would also give you an option to work with just the steering motor’s incremental encoder to save money. Thanks.

That’s great news for me, thanks RC. Can I push you a little further?

Can you offer the vertical drive shaft and the forks as separate pieces too? That would leave only the three plates to make in-house and turn this module into a really easy kit.

Oh, and it would be nice to have the Colson swerve wheel assembled by WCP. It’s already compatible with your module, hint hint :slight_smile:


For sure, we’ll separate out the shaft & the forks. We have gotten this request numerous times and didn’t get a chance to do it. I will add it on our road map. You’ll see the split in the next month or two as restock happens/warehouse move happens.


In the CAD, this tube is shown as 1.25 OD x 1.125 ID (versaroller tube). The 1.25 OD is showing 1/32" interference with the 1.1875 ID Colson hub. Would you expect to press-fit the tube into the wheel with this much interference or is the thought to lathe the tube down to closer to 1.1875 OD in order to insert it?

I haven’t tried 3D-printing any 1/32" rings, but I wonder if it might be feasible to print a 1.1875 OD x 1.125 ID tube and save lathing the tube down to 1/32" wall.

Overall, very interesting design. With the availability of excellent COTS swerve modules, swerve has become technically accessible to many teams. Unfortunately, unless the BOM cost limit increases substantially above $5000 (or is otherwise rendered much less of an issue), going to COTS swerve makes it difficult for teams to build the rest of a robot with aspirations to seed in the top few and win events and keep that robot within the BOM limit. Your design with router-able and 3D-print-able parts could change the game yet again and enable both technically accessible and BOM-manageable swerve. Fantastic contribution to the community. Thanks!

1 Like

From my understanding you need a significant amount of interference for drive wheel hubs. As a matter of fact, 1/32" seems a bit low without any sort of knurl.

1 Like

I posted before reading Brendan’s reply about gluing or brazing the bevel gear to the tube. I had assumed that the bevel gear would be mounted to the wheel directly (i.e. with screws) and the tube was just serving as a spacer to adapt the bevel gear flange and a standard 1.125 OD bearing into the wheel hub.

For comparison, the VEX Colson live hub has OD of 1.225. Those take a very aggressive cut out of the Colson hub. It might be quite a challenge to push a 1.25 OD tube with 1/16th wall into one of those wheels.

Using a Colson wheel in this service takes a special effort, but I understand Brendan’s desire to use a wheel that has a chance to last at least for a full competition, if not longer.

1 Like

Agreed. I sort of assumed we’d have to take off a bit of the tube OD on the lathe before pressing it into the wheel. Maybe one day Vex / WCP will make up a “Colson bevel gear hub” to complement the live and dead axle hubs.

The other challenge is that the Colson wheel is a bit wider than the WCP swerve wheel. So to make them interchageable, I’ve shown the Colson having been narrowed in the lathe. We’ve done this work before though (in order to get Colsons to fit in a narrow wheel well), so I didn’t think it would be too troublesome.

Are you including motor controllers in that price?

No, I’ve left the motor controllers off of the BOM.

To compare apples to apples, Swerve Drive Specialties charges $400 USD for their “Standard Kit”, which is everything except the motors, encoder and wheel.

WCP charges [edit] $378 if you select everything except motors and an encoder (includes a wheel without tread I think - their website isn’t terribly clear)

If I drop the motors and encoder from my BOM, I get $195 USD without costing in-house manufactured components.
([edit] - The most expensive remaining parts are the x-contact bearing, the Ultraplanetary, and the miter gears, which together make up $110 of that $195)

I’m not saying either COTS module is overpriced. The remaining ~$200 is not unreasonable to charge for the machined parts. I just wanted to come up with a design that would let teams save money by making parts themselves (and I still want to figure out how to get it even cheaper).


For completeness sake - Andymark charges $355 for their Swerve & Steer module including (CIM and PG) motors, encoder and wheel which is a really good price - cheaper than my design if you put any cost any more than ~$50 for the manufactured parts. The drawback is that it is bigger and almost twice as heavy.

1 Like

Here’s a version using the WCP forks. The upper spacers need to be lengthened 1/8" to use the WCP drive shaft but I’ve shown it as well.

CAD here (CX20-Swerve1-A007.step and A007.zip): https://drive.google.com/open?id=1cCzFBDfzyp0APvtBD-L2tObmj5m-Cb4u


Looks nice! During the offseason, I still want to test the printed forks and abuse them, if only to see how well they would survive. I don’t know what the typical failure mode of swerve modules is, so I don’t know how likely it is that the aluminum forks would be necessary structurally. If our team is able to do this, I’ll be sure to post here with our testing and results.

Unless I’m missing something, it seems like there’s still a little more work (beyond increasing spacer length) to get the WCP drive shaft to work, though:

The top yellow bearing seems to not be significantly supporting the 3/8" wide part of the drive shaft. Also, it seems that the first stage reduction gear at the top is not on top of the flange on that shaft as it should be. There’s also a few minor things which I assume were intentionally ignored for now (the bevel gear in CAD is still broached to 3/8" hex, and the spacer above the bevel gear interferes with the bearing above that).

However, it seems that most of these issues disappear if you just shift the fork assembly down a little on the pulley + stationary part:

If this is the solution, the pulley would need to be changed a little to fill the gaps between the forks and the pulley. You would also need longer screws for the forks to attach to the pulley plate.

That top bearing still doesn’t seem to support the drive shaft by as much as it maybe should, but if you flip that bearing, it may be fine.

I think this also alleviates the need to change the top spacers to be longer, because this shifts the drive shaft down by enough that it doesn’t interfere with the encoder gear.

I don’t know if there are strength implications to not having the fork directly touching the aluminum plate above it, but if this works, it should be a relatively simple change (I’m still learning SolidWorks, but I’m going to try this in the morning).

1 Like

This year 1640 redesigned out CVT swerve. We started with 2910’s design. We made several mods for our machining abilities. The main steering pulley and wheel forks are 3d printed of PETG. The entire module was printed with PLA during development. My opinion is PLA is not suitable for a competition module. We made the wheel forks larger. They are printed with horizontal layers. This is a weakness. We print them hot 265C. Also, to reinforce them We use a 3" fully threaded flat head to attach the steering pulley to the wheel forks. This has worked well. I don’t think the wheel fork inserts in the above cad are necessary. A 10-32 fully threaded bolt is sufficient. I would beef up the fork area at the wheel and extend the bolt .5 " past the wheel axial. Most other parts on the module are also 3d printed in PETG. The exception is the driven CVT pulley. We had to go to nylon carbon. So yes, major parts of a swerve can be printed and survive the barriers in this years game. 3d printing and a cnc router would allow teams to manufacture in house. Our biggest problem was the drivers and programmers decided that putting the drive Neo in brake mode was absolutely necessary. It caused sever wear problems. Think what would happen if you locked the cam shaft in your car while doing 50 mph. How would that turn out? We have had no wear problem since the change to coast mode. The biggest problem for teams making this style swerve in house are the bevel gear mods. Unless a team has access to a lathe, cnc mill and can make fixtures, the bevel gears will need to be purchased machined. This is a significant cost. We paid 13$ per set of 15t 60t bevels. Significant cost savings. While we could print the plates and I believe we could select material and design that would hold up, we route them. Print time is a major factor. We route plates for 4 modules in 3 hours. Time is valuable in build. We used g10 for the plates. G10 is a wonderful material for the plates. However, implementing a dust control system is very difficult. We did it but would recommend most teams to not do it. So this year we proved that with a printer and router swerve can be made in house.


You mean this design right? 1640 Sab-BOT-age 2020 CVT Swerve Module Reveal.
Why does 1640s design use fully threaded mounting bolts? Are they threaded into the plastic forks as well as the pulley above? If so, how do you tighten them together?

I have a lot of hope placed on the spacer inserts in the 3D printed forks. They act as “compression limiters” and let you preload the mounting screws to their full capacity, turning them into rigid pillars within the print.

As for the axle, it does extend 1/2" axially into the printed forks. There’s a half inch long flanged bushing in the forks to help spread the load.

I’m encouraged to know that at least one team had success with 3DP forks on a 4" wheel driving through the rendezvous zone. Thanks!

The steering pulley is a 10-32 clearance hole. The wheel forks are taped the full length. A normal 10-32 tap is not long enough. We tap them as much as possible with a normal tap. Then drive a 10-32 all the way in. The friction heats the bolt and the wheel fork is melt taped. It works.

1 Like