SparkMax/NEO Encoders show random zeros

We are seeing random encoder value dropouts from some Spark Max modules. The values respond properly, and then the value jumps between zero and the correct value. This can happen both when the motor is turning or stationary. This problem seems to fade in and out of severity, and seems to favor specific modules.

I’m running two independent systems with the NEO motors and Spark Max controllers.
One is a two-motor test bed, and one is a 4-motor Mecanum drive. The problem is seen on BOTH setups.

Programming with basic (very) Java example programs, but with CAN bus.

Rio and Spark modules have been freshly updated with the latest firmware.

The motors respond well to user controls, and we are displaying the position and velocity of each motor on a Shuffleboard display. We see the dropouts frequently. This makes closed loop control impossible.

Where should we look for more diagnostic data?

This has been reported in a couple other threads. They’re definitely working on it. I believe the issue was identified as the SparkMax dropping CAN packets. But I’ll let Rev support step in to provide a more concrete answer.

1 Like

I initially checked the roadmap but did not see it.

I checked again, and here it is.

Hoping to see it in a release soon.


We’ve tracked this down and have implemented a fix, it will definitely be in the next release which we are currently working on.

Do you have an approximation for when this will be released?

Thanks for the help!
We are eager to get to work on PID!

1 Like

We’ve put out a bug fix release, v1.0.384 that address this issue @PhilBot

The GUI will automatically pull the new release, it can also be found here.

Thanks Guys.

Early testing shows this fix has resoved our twitchy wheels issue!