# SPARK MAX Overview

<details>

<summary>SPARK MAX Resources</summary>

## General Resources

* [Getting Started with the SPARK MAX](https://docs.revrobotics.com/brushless/spark-max/gs)
* [Troubleshooting](https://docs.revrobotics.com/brushless/spark-max/troubleshooting)
  * [Status LED Patterns](https://docs.revrobotics.com/brushless/spark-max/status-led)
* [SPARK MAX Specifications](https://docs.revrobotics.com/brushless/spark-max/specs)
  * [SPARK MAX Data Port Pinout](https://docs.revrobotics.com/brushless/spark-max/specs/data-port)
* [Using Encoders with the SPARK MAX](https://docs.revrobotics.com/brushless/spark-max/encoders)

## Software Resources

* [Getting Started with the REV Hardware Client](https://docs.revrobotics.com/rev-hardware-client/)
* [REVLib API and Installation](https://app.gitbook.com/s/0OKYENVWAIgVP2TmkWl3/install)
* [MAXSwerve Calibration](https://docs.revrobotics.com/rev-hardware-client/brushless/maxswerve)
* [SPARK MAX Code Examples](https://github.com/REVrobotics/REVLib-Examples)

</details>

The REV Robotics [SPARK MAX Motor Controller (REV-11-2158)](https://www.revrobotics.com/rev-11-2158/) is an all-in-one USB, CAN, and PWM enabled motor controller that can drive both 12 V brushed and 12 V brushless DC motors. SPARK MAX is designed for use in the *FIRST* Robotics Competition (FRC), incorporating advanced motor control in a small, easy-to-use, and affordable package. Configure and run the SPARK MAX through its built-in USB interface without needing a full control system.&#x20;

![](https://content.gitbook.com/content/e0CWwhMSoCEH7NLVoLhF/blobs/LjWQe9zjD0waAn358AFo/image.png)

## Feature Summary

* Brushed and sensored-brushless motor control
* PWM, CAN, and USB control interfaces
  * PWM/CAN - Locking and keyed 4-pin JST-PH
  * USB - USB type C
* USB configuration and control
  * Rapid configuration with a PC
* Smart control modes
  * Closed-loop velocity control
  * Closed-loop position control
  * Follower mode
* Encoder port
  * Locking and keyed 6-pin JST-PH
  * 3-phase hall-sensor encoder input
  * Motor temperature sensor input
* Data port
  * Limit switch input
  * Quadrature encoder input with index
  * Multi-function pin
* Mode button
  * On-board motor type and idle behavior configuration
* RGB status LED
  * Detailed mode and operation feedback
* Integrated power and motor wires
  * 12 AWG ultra-flexible silicone wire
* Passive cooling

## Kit Contents

The following items are included with each SPARK MAX Motor Controller

* 1 - SPARK MAX Motor Controller
* 1 - USB-A male to USB-C cable
* 1 - 4-pin JST-PH to CAN cable
* 1 - 4-pin JST-PH to single PWM cable
* 1 - PWM/CAN cable retention clip
* 1 - Data port protection cap

#### Special Thanks

We appreciate the assistance from the community for feedback, contributions, and testing the SPARK MAX, especially [Team 195 The CyberKnights](https://team195.com/).


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.revrobotics.com/brushless/spark-max/overview.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
