Spark Max (Motor Controller) - quasics/quasics-frc-sw-2015 GitHub Wiki

The SPARK MAX from Rev Robotics is a member of the SPARK motor controller family, which can support both "brushed" and "brushless" DC motors, and supports PWM, CAN, and USB connectivity.

The USB interface (USB-C) is largely for configuration and control, allowing teams to test prototypes and tune controller settings without having to write full-scale code.

Other features include:

  • Smart control modes
    • Closed-loop control
    • Follower mode
  • Data port
    • Analog input
    • Limit switch input
    • Quadrature encoder input with index
  • Brushless DC sensor connector
    • 3-phase hall sensors
    • Motor temperature sensor

Important safety tips

  • Spark Maxes cannot be used safely to control brushless motors without also ensuring that the encoder cables are connected between the motor and controller. (We saw evidence of this while debugging a bad motor/controller on the drive base in 2022, when we "let the magic blue smoke out" of the motor; we later found a warning about this in the documentation.)

Additional comments

The SPARK MAX was first deployed by the team on our test bed platform as we prepped for the 2020 build season. We paired each with a NEO Brushless Motor and used CAN for wiring, and found that we got significantly faster performance than in previous iterations (which used brushed motors).

We subsequently used them as the drive motors for our robots in 2020 (Nike), 2021 (Mae), and 2022 (Sally), as well as for the shooter and climbers on our 2022 robot.

Sometimes the Rev Client Will not be able to see the Spark Maxs. If this is the case, power off so nothing interferes, plug in from spark max into laptop via usb c and update individually

Useful URLs