Unofficial RevRobotics Discussion/Support


Does anyone know what the PID setpoint represents for the sparks? Does it represent the target voltage, current, position, or velocity? Or does it depend on what you’re using to control the motor (i.e. Percent Vbus)?


in Position mode, the PID Reference (setpoint) is “rotations” (full rotations of the motor’s output axle). In Velocity mode, the reference is “rotations per minute”. I’m not sure offhand for other modes, or if they’re even supported/relevant


A question on the CAN and Encoder cables. Once installed, is there a preferred way to remove them? I chastise the kids when I see them pulling on wires to remove any cable. We are currently using a small screwdriver and alternating ends. A long process. Is there a better way?


We’ve found that twisting two small screwdrivers simultaneously - one on each side - can be useful. I do wish these were easier to remove.


We are using three Spark Max/Neos on each side of our drive. We are running Leader/Follower mode. We have been practicing for a couple of days. The code is burned in and no modifications have been made during practice.
About 45 minutes ago, the left side had the two followers stop following. The blue LEDs were on steady on the followers while the leader led went red/green. Disabling caused all three to go blinking blue. Cycling power solved the problem. About 15 minutes ago, we had the same problem except only one follower stopped working.
Has anyone else had this issue? Any suggestions.


Can you read the hasReset fault flag on the follower devices that drop out?


I’ve asked the programmer to read the faults and display on the dashboard.


The programmer has made the changes. If it occurs again, I’ll report the values. If it is of any interest, we are running SRXs on the CAN bus as the Sparks.
We are in the process of wiring the competition robot. Is there anything that we should do that might guard against Followers getting reset?


I have recently come up with a problem after updating the Spark Max library to version 1.1.5 beta. For some reason, when I start the code, I get an error implying that native libraries were not deployed. SparkMaxDriver could not be loaded from path or an embedded resource. 
attempted to load for platform /linux/athena/ 

at edu.wpi.first.wpiutil.RuntimeLoader.loadLibrary( 
at com.revrobotics.jni.RevJNIWrapper.<clinit>( 
at com.revrobotics.CANSparkMaxLowLevel.heartbeatFunc( 
at com.revrobotics.CANSparkMaxLowLevel.lambda$static$0( 
at java.base/ Source)


My name is Rebecca and my FRC team is interested in using Blinkin LED lights for our robot this year. This will be the first time we are using lights and I am a complete novice when it comes to programming. I have very little knowledge of coding, but I would really like to have this accessory for my team this season. Can I begin coding even if we do not have the product yet? I am very lost and am unsure where to start, if anyone could push me in the right direction that would be awesome. I’m sorry if this does not belong on this discussion board, but I am not sure where to go to for assistance.


I assume that if you are using the Blinkin’ LED’s that you are also using the Blinkin’ LED driver. It has many preset animations and colors built in, so you don’t have to program anything if you don’t want to. If you do though the color and animations can be changed with a simple PWM input, I am not sure what language you are using, or if you would want to use a signal generated by the Robrio natively or a co-processor, but nonetheless a PWM signal is very simple to setup in code, and I would assume that if your team can generate code to drive the robot you can also set up a PWM output, ask fellow programmers on your team if you have any questions, Here is a link to the setup manual for the Blinkin LED module that explains the setup as well as the PWM pulse width for calling different colors and patterns on the module.
In order to change the color or pattern in code, just change the pulse width on the PWM output, this can be changed based on an input condition so that for example the LED’s will automatically change color depending on which alliance you are on.


Okay thank you for your help!


If you are using Java, take a look at It names all the colors that the Blinkin can do, and then it’s just a matter of:

// in robotInit()
Spark blinkin = new Spark(9); // change 9 to match where the Blinkin was plugged in

// wherever you want the Blinkin to do something new:


Thank you this is so helpful! I think I can figure it out now that I have an idea of how to word it in code. :smiley: