So, I’ve seen a number of threads concerning problems with compressors this year, but have yet to see one with this problem (call me out if i missed it). Everything is wired and connected properly, however the compressor class (in java) only turns on the A output of the relay port on the DSC, The spike will only turn on if both A and B are turned on. I presume this is because of how Relay.setDirection() is called in the compressor class, but it is compiled and cannot be changed like in previous years. I solved the problem today by jumping the A and B channels (red and white) of the pwm cable to trick the spike. Other than it works fine, turns on below 100 psi, turns off above 115. Any ideas on why this is? or is it just a bug in the WPILIB? I don’t feel comfortable with a Jerry-rigged pwm cable, and I dont think inspectors will be either…
The good news is the code is doing what it’s supposed to do.
The Relay on the Digital sidecar that the compressor Spike is connected to, normally turns on only the green LED, not the red LED too.
That sounds like a wiring or Spike problem.
The Spike LED should match the Digital Sidecar Relay LED.
You might want to test the Spike output with a multimeter, as well as the PWM cable.
The green Relay LED means the Spike puts out +12v on the M+ output and grounds the M- output.
A red Relay LED means the opposite: +12v on the M- output and ground on the M+ output
Having both on would mean both the M+ and the M- would be outputting +12v, no ground.
Exactly why I’m confused. I’ve tried a number of spikes too. all newer VEXPro ones, with 20 amp snap actions. Manually activating the spike via a Relay object, and using kON turns on both red and green on the DSC, and the compressor turns on.