FRC Blog - 2019 Motor Controllers and MXP

@PatrickW are you running on production or beta hardware/firmware? Given the post from @dyanoshak, I think it’s important to note that info to help people know if this is really a problem or not.

Production hardware/firmware.

There are two main issues that I’m aware of being mentioned in this thread:

  • Some jitter when you are running the motors “normally” (which is what @dyanoshak was replying to me about).
  • A delay when switching direction; I believe that should be a relatively simple fix on Rev’s part and will probably be fixed in the next firmware release (I could certainly be wrong, but I’m not as concerned about this issue).
1 Like

This should be fixed in the next firmware release. @PatrickW reach out to me at There are a few things I’d like to confirm and I may be able to instruct you on how to temporarily remedy the issue by changing an internal parameter.

Email sent. Thank you for the great support. We will have time this evening to work on this. As you have seen we have a pretty cool application that we would love to use NEOs for.


@PatrickW That is very neat. Where is the large bevel gear from, and can you show or tell more about your major steering bearing arrangement?

@sanddrag Thanks, to avoid getting this thread off topic I’ll answer your swerve module questions over in this other thread.

@dyanoshak Is there any timeline you can share on how CAN will be unveiled to the MAX? Will it be available as soon as the 2019 RIO image is available?

1 Like

Hey all, just wanted to follow up on a couple of notes for the public. The NEO/MAX project was a very involved one that was a good challenge for us at REV and helped us grow in many ways. We are overwhelmed by the amount of support the community has shown to us and we want to make sure that you all know that we stand behind what we have done. We will keep working to add features, squash bugs, and make the product better with time (just like other products from us and other in the past. If you have any issues, please reach out and we will do everything we can to fix it ASAP.

We believe that Brushless is the future for FRC and while it is a more complicated technology, it has the potential to let us push our sport even farther.

1 Like

@Greg_Needel It’s been 21 days since the last time data was promised - any progress or should we just take Richard’s unofficial numbers?


It just occurred to me that this behavior at least appears to be inconsistent with what 225 showed in their early beta tests. I’m definitely not an expert on brushless motors, nor do I know what 225’s testing methodology was, but is there some reason for this discrepancy?

Pardon my lack of knowledge on this specific subject but our 2nd year team purchased 4 Neo Motors and the associated Spark max controllers to use with the KoP chassis in place of full CIM motors. Based on what i have read thus far and our chassis build tomorrow I am understanding that we should NOT be using these as of yet and wait to see if the there is a firmware update that resolves the jitter issue. Am I on the right pace or in a totally different galaxy?

So we got our NEOs and MAXs, and I love them, however we do appear to have a MAx with some weird issues. Yesterday with no load it responded to the USB utility as expected, with the signal light changing with speed and direction. However when I soldering a connector on it today and plugged it in it basically always showed a cyan and yellow flashing pattern and didnt respond to motor commands from the same computer, the motor was tested on the same computer with another max with no issues. I tried reloading the firmware and other various things, but couldn’t get it to work.

Any ideas? @Greg_Needel @dyanoshak

Seems like most of the issues people had earlier in this thread were specific to problems with interfacing via PWM (my own testing using the USB utility showed no such issues). If you intend on using CAN, it’s possible you won’t experience any of these issues, and I think I recall seeing somewhere that Rev confirmed the issue would be fixed in the next firmware update anyways.

In any case, even if you do use it via PWM until the firmware update, while the problem did appear to cause some weird behavior when quickly changing directions, I doubt it would significantly impact early testing, and the issue is likely to be resolved long before competitions.

Send me an email at with some clear pictures of all the electrical connections you’ve made and if possible a video of the LED code you are seeing. We have an orange/cyan error code that indicates if the internal gate driver has experiences a fault, but I need more information to help you get back up and running.

@dyanoshak I sent an email on Thursday and haven’t heard back.

My apologies for the delay. Email response was just sent.

Could the “BLDC” type of controller be further divided into 2 subtypes: 6-step (trapezoidal) and continuous (sinusoidal) commutation?


It’s a 6-step (trapezoidal) controller. It never provides full bus voltage to all three windings.


How to classify inverter-fed permanent magnet motors remains an open topic. Many authors have attempted it during the past four decades. We still do not have a universally accepted standard, although IEEE, IEC, NEMA and others continue to work in that direction.

One significant classification factor is the use of rotor-mounted sensor targets to provide observation of the permanent magnet angular orientation w.r.t the stator coils. Alternative methods sense that orientation indirectly, using a variety of techniques. These have performance advantages in high speed operation, while the direct sensing method provides more starting torque. In some applications a combination of direct and indirect commutation sensing is used, to get both advantages.

Classifying sinusoidal commutation as a sub-type of BLDC is not common, because the six-step sensor doesn’t provide sufficient resolution to directly calculate sinusoidal reference signals. Some approaches have synthesized those signals using a free-running counter with adjustable frequency, reset at six-step sensor edges so that the number of counts per step is regulated to a target value independent of rotor speed. Methods like that have been used to commutate both permanent-magnet and reluctance synchronous motors using optimized reference current wave forms. While this remains an active research topic it is also the basis for several commercialized applications. Those have sometimes been called open-loop or sensorless FOC.

1 Like