For the complete documentation index, see llms.txt. This page is also available as Markdown.

Fix common SparkMAX/SparkFlex problems

These usually show up on MAXSwerve robots.

NEOs are SparkMAX killers!

When a NEO heats up enough from being stalled too long, it will short positive to the sensor cable, sending very high current through the low-current sensor channel and melting the SparkMax PCB. This WILL kill your SparkMAX, and every SparkMAX plugged into your killer NEO.

This can also kill your laptop if you plug into a powered-on SparkMAX, because the short can extend to the USB port.

SparkMAX absolute encoder boards

The SparkMAX Absolute Encoder board should be zip-tied and hot-glued to the SparkMAX for redundancy and to prevent it from coming loose.

Throughbore connection to the absolute encoder board

The connector between the SparkMax Absolute Encoder board and the REV Throughbore should be hot-glued down on BOTH connection points — these can come loose easily.

The wire should also be tensioned just right. If it's over-tensioned, the wire might not be fully seated in the connector, and the data could be incomplete, corrupted, or unavailable.

Absolute encoder attached via the SparkMax's duty-cycle port

When you use an absolute encoder wired to the SparkMax through its Absolute Encoder board, YAGSL identifies it as a sparkmax-type absolute encoder in the module JSON (see the absolute encoder reference for the exact type string for your device).

If you're migrating an old config that hand-set physicalproperties.json's factor to 360 as a workaround, that field no longer exists — see the schema changes reference.

Status frame error

Usually, a status frame error means your connection to the REV Throughbore is incomplete somehow, or the sensor cable from your motor is loose or broken.

If you see this, check ALL SENSOR CABLES GOING INTO THAT SPARKMAX.

Last updated

Was this helpful?