Sidecar relay port issue

I’ve run into an issue with a digital sidecar lately. I seldom use relays but this year we have an LED on the back of our robot that tells our drivers when we’re ready to shoot. We’re controlling it with a spike relay. The issue is that the relay ports are completely unresponsive.

Our team uses java to program our robot, and I’ve tried every possible way to turn on a relay in java. But the only thing that changes the state of the relay is disabling/enabling the robot. The strange thing is that about half the green and red LEDs that indicate the state of the relay ports stay on when the robot is enabled. I’ve tried a different sidecar only to get the exact same light pattern. I’ve look all over Chief Delphi and no one else has this issue. I also look at the sidecar documentation and I don’t think this is supposed to happen.

If you have any ideas on how to fix this problem please post.


How is your DB-37 pin cable?
Do you have another you could swap in to check if the cable is bad?

The common cause of the Relay Xmas Tree effect this year when the robot gets Enabled is a reversed DB-37 cable.
Test your cable by plugging it into itself. If it forms a mobius strip, then it’s reversed. If it forms a simple loop, then it’s good.

Thanks, I’ll try that tomorrow.

I second that. We had the same problem (using LabVIEW) and it was solved only by using a KNOWN GOOD flat cable. I don’t know why the 2 round cables we tried (they checked out good) didn’t work, but . . .

Re flat cables, either purchase one preassembled or have it assembled using the proper tooling (using a vise doesn’t cut it).

To expand on the part I highlighted here… most vices in machine shops are wavy - where it grips your part, it’s not a flat steel plate. That’s a specific design so it can adequately grip a wide variety of items. Flat plates won’t hold round stock very well, for example.

There are vices available (and we have some at work here) that are completely flat, and allow fine adjustment. Those are the type you want to use if you’re assembling a cable! You need to provide a constant pressure along the entire length/width of the connector, and have fine enough control over how much its tightened to prevent you from snapping off the locking tabs on the sides.

What I did, and will work in a snap for anyone without access to such vices, was find some scrap pieces of aluminum L and drop them on the grips so that the flat surface of the L was pressing the cable together, and not the patterned surface of the vice.

I’m mechanical, but check the Relay Class. I think you have to set the direction of the relay ex.“setDirection(kForward)” then call the relay to trigger “set(kOn)” We had trouble like this too.


How is your DB-37 pin cable?
Do you have another you could swap in to check if the cable is bad?

That was exactly the issue. We had one of the improperly assembled DB-37 pin cables. We used a round cable instead and it worked! We fixed our bad cable with a vice (I don’t know if it was flat or not) and now it’s working too! :smiley: