AndyMark Swerve & Steer: Feedback?

As a fall project, our team has decided to try to get a swerve drive up and running. While we’ve settled on using (read: already bought) AndyMark’s modules, we’d like to hear feedback from teams who’ve used them. Are there any easy improvements to make to them? Ever had one break on you? Any unexpected kinks to programming them (outside the usual swerve stuff)? We did order the absolute encoder with 1:1 gearing as well, so don’t worry about that.

While we’re particularly interested in the mechanical side of things, we’d like to know what your general experience was like with these. Please share anything you think is relevant to a team just trying them out.

I remember during Madtown Throwdown 2015, then pre-rookie team 5817 used the AM Swerve & Steer on their offseason robot, and while I cannot say whether it was the module or their execution of it, it made the most god-awful grinding noise when driving, to the extent where I mentioned it several times while announcing matches.

Overall we were quite satisfied. The spur gears will wear down, but replacing them was actually pretty easy. Keeping the key in was an issue, until another team gave us some key stock they are machined down from larger stock. The other thing we found was that the electrical connections for the absolute encoders were a bit fragile. If I had to do it over again (and I might) I would probably use the integral relative encoders and have an optical or other encoder to zero them. The integral encoders worked well. Here is a video of us driving with the integral encoders after about 8 hours of programming time. Also of note, the modules handled several falls of 3-4 feet without breaking. Really the spur gears were the only thing that physically broke (other than the connection to the absolute encoders). The above referenced loud grinding noise we found was a sign that the spur gears were wearing down. We replaced half of our spur gears last year.

We liked them as an introduction into swerve, but we did have some issues with the Kliprings coming loose and dropping wheels during matches with significant robot-robot contact. To alleviate this, we just made sure to check that all the Kliprings were secure before a match. A more permanent fix would probably involve shaft collars or deeper grooves for more aggressive retaining rings.

The AM modules are high maintenance, but it will be less so if you have the absolute encoders.

I’m not sure if they fixed this in updates, but we’ve had issues with the key falling out of the PM motor shaft. Some duct tape or 3d printing should fix that problem for you.

The shaft collar on the CIM shaft loosens overtime as well as all of the other bolts on the module.

Be careful not to damage the electrical connectors on the PM motors. It’s very easy to break that whole connector off not allowing you to rotate a whole module.

Overall it’s a nice way to experiment and get started with swerve, but if it’s used on a competition robot you need to be very careful. It’s quite high maintenance.

Came here to say this, but I’m 95% sure it was just 15 year-old me being incapable of understanding how to actually write good swerve code and the wheels fighting each other making that noise. We used the same base at Madtown 2016 with actual good code and to the best of my knowledge it didn’t make that noise. However, the modules did continue to have some issues with certain bolts coming loose and causing the modules to be very loose. If you’re planning on running it just to learn how to program swerve I’d say go for it. If you’re running it an actual offseason competition I’d still say go ahead but make sure you check the modules for tightness after each match.

The only COTS swerve I’d buy would be made by WCP. Now if it’ll ever be released is the question…

In general, they worked very well for us once we started using the absolute encoders. Though the connector cables for the encoders were a little janky (not sure if that has changed yet). Overall, we found them quite easy to get started with and functional enough for us to deliver 4-5 gears per match, eventually allowing us to win the Iowa Regional. I don’t think we ever serviced them between matches at competition, to be honest.
We did have to change out one thing (I believe it was something to do with the shaft collars but I was a programmer so I didn’t pay a lot of attention to it).
One thing to note while programming is the gear ratio in the modules. Depending on if you use the absolute or digital encoders, this may affect it. If you would like some example code, here is our C++ code from last year:

Hope this helps. Feel free to ask me any questions. I can also contact my friends that were build if you have mechanical questions.

The shaft collar that comes with the modules used 4 set screws (or something absurdly small like that), so we grabbed some shaft collars that used 8 screws and lathed them down a bit as well as shave some of the opening so it’d clamp better.

Oh my dear CalTran… wait until you actually come across some absurdly small screws. Like working on a CubeSat or, more practically, a pair of sunglasses. :wink:

Exactly the types of replies we were hoping to get, thanks all!

It was more of a QOL change than a functional one. :stuck_out_tongue:

Some additional thoughts occurred to me today while getting last year’s practice robot ready for my engineering students to rewire. The modules were very easy to install on a couple different old robot frames and the default wheels handled a lot of driving without trouble.

The shaft collar loosening and resultant decoupling of the CIM shaft from the gearbox was the main source of complaints that we received directly as well. One of our projects this summer has been to mitigate that issue. The solution we have had implemented for several months now is to widen the slot in the gear shaft (am-3018a) to accept a 2mm CIM key. This way there is a physical transmission of torque between the CIM shaft and the gear shaft even if the shaft collar loosens. Through testing we found that a standard square CIM key was not sufficient as it could work its way out of the keyway and entirely into the gear shaft slot. To solve this we sourced a taller 2mm wide key so that if it started to migrate out of the CIM keyway it would hit the collar clamp and stop.

Feel free to call or email us if you have any technical questions about the swerve and steer (or any other products) either before or after you purchase them (I have taken a phone call from someone who was under a robot in a pit before) we are always happy to help.

oh geez, we bought them last year and had sooo many issues. the biggest one in my opinion is that the keys that come with them are not the right size and fall out. and even when you put in the right size they still sometimes fall out. the encoder wires also tend to fall out which we solved by hotglueing them in place and then heatshrinking it. still having some issues with them. also had to replace some of the hardware because it was the wrong size. andymark gave us a decent gift card to help repair them but the experience was still not even as close to as smooth as it was supposed to be

We ran them very successfully last year. We did make small changes to make them work a bit better. The changes were:
Drill out and thread end of the steering motor gear box shaft. Install a small screw and washer to capture the steering gear and key instead of the clip ring. A small drop of blue lock tite on the screw as insurance.

Drill a 3/8" clearance hole through the web of the steering gear to be able to access the bolts that hold the steering motor onto the main plate. They come loose over time and need to be checked and tightened.

Added a key to the drive CIM to prevent the motor shaft from spinning in the pinion.

While the CIMs were out we added a CIMCoder to each of them,

We used the absolute encoders and mating 40 tooth gear.

We put a lot of practice hours on our drives last year and continued to use them through the competition season. They worked well and had few problems overall.

Wait, you guys used AndyMark’s modules? We competed with you guys at Chestnut Hill last year and were blown away by how smoothly your robot drove. I didn’t realize it was a (mostly) COTS solution. Good to see you got them working so well!

We were already planning on adding CIMCoders, nice to see that another team has already tested that through a season. Out of curiosity, were they just used for distance tracking, or did you implement speed control as well?


Yep those were just swerve and steer modules with the list of changes that we made. We only used them for distance tracking and that was just to get the bot roughly into position. From there we used vision to get us onto targets.
Our kids practiced driving last year a lot. They completed designing, building and roughing in the programming early in the build season. They drove the robot every day six days a week for the remainder of build season until bag. We had 5 drivers all practicing during that time. Our pilot and human player were also drivers, as well as one of our head scouts and one of our pit crew. Made it easier for them to set up how to communicate on the field.
Just a note, the drives we practiced with were also the ones we used in competition. We did not replace any until the second day of Chestnut Hill (our second competition). We literally wore the tread right off of it before it started getting “crunchy”.