Using different controllers on one of the swerve modules?

Hi,
Our team is currently building an MK4i drive chassis for the off-season. We only have 6 spark max controllers and are wondering if we can use the Victor SPX in one of the modules.

Thanks

It would be possible, but it might make your code a lot more complicated depending on your library. It would also complicate the kinematics if you’re using NEOs with the Spark Maxes, but brushed motors with the Victors.

We are using only NEOs hope we can get over the code. Thanks!

You can’t use a NEO with a Victor, or any controller other than a Spark Max.

3 Likes

Totally forget that :person_facepalming:

You could use NEOs for your drive motors and your Victors with a small brushed motor like a MiniCIM for the azimuth motors.

7 Likes

From a “Mechanical engineer with enough programming knowledge to write a line here or there” perspective, that sounds better organization wise if you’re going to have two different controllers. However, that depends on the swerve software implementation. It also sounds more mechanically and electrically sound and secure, as then all of your modules and cabling to modules are in the same configuration.

Your best option is to literally make a thread here on CD asking if you can buy additional Spark Maxes off another team.

If you let us know where you’re from, we can also easily connect you with another team who has spares you can either borrow or buy.

5 Likes

You theoretically can with YAGSL, however it has never been tested and requires a relative encoder hooked up to the victor SPX (directly).

Are you planning to eventually move to NEOs / Spark Maxes for all motors? If so, you may want to evaluate which aspects of the code (steering or drive) is more intensive relative to the changes / tuning that you would make for a different controller. I suspect that the control loop for steering probably requires more tuning than the control loop for driving. So, you may want to look at using the NEOs for steering and then use the brushed motor / Victor controller for the drive motors. That way, changing the motor controller back to the Spark Max for next year’s robot would require less development and tuning. Of course, you will give up a little bit of power and speed, but for an offseason bot, that might be an acceptable compromise in order to have better learning and development.

As an aside, we moved to local control of steering using the built in motor encoders and running the control loop in the Spark Max (rather than in the RIO) back in 2020. This was a nice change for us in that a) the control loop was more stable and b) the control loop was not reliant on the absolute encoder after initializing making the robot immune to damage to the encoder or encoder wires. If you wanted to develop this, you would want to have a brushless motor for the steering.

1 Like

Honestly your best option is to ask other local teams to borrow/buy until they come back in stock. We can help if your local to SE MI

1 Like

Victor SPX doesn’t have an encoder input

1 Like

My bad, i got it confused with the TalonSRX :sweat_smile:

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