Digital Sidecar Connection Issue

Hey! I’ve just set up my brand new cRIO and its not working…

There are a few notable differences between my wiring and the FRC standard wiring.

  1. PDBoard --> cRIO - Two wires instead of the wire shipped with the KoP, we used this because we didn’t have a spare. The cRIO is stable and (according to the power diagram on the FIRST website it should work.

  2. Digital Breakout Card --> Digital Sidecar - This is our biggest alteration, although I cannot see it making a difference. Instead of using a 37 pin M-F serial I used a 15 pin M-F serial with the card mounted directly on top of the sidecar and the cable connecting it to the base of the slot where the card should be. (Digital Card male connector pushed into the Sidecar female connector, 15 pin serial attached from the bottom of the card to the bottom of the slot the card is supposed to be in.) If you need I can take a couple pictures and post them.

Connections

I have one Victor connected to PWM slot 1 on the digital sidecar (connected as explained above into slot 4 on the cRIO.) The light on the victor is flashing orange (which I take is idle/no signal.)

Code

I have LV code that I’m executing. Its the sample code given by NI in their “simple motor” tutorial (using the dashboard numeric control or the joystick control doesn’t make a difference)

The cRIO has the latest firmware as does the driver station. My current hookup is laptop -> Driverstation -> cRIO (I removed the router so I could transport it home quickly)

I can update code, and I know its not a networking issue (I networked the whole system myself a few days ago.)

Anyways, the main problem is this. When I tell the motor to go forward (PWM 1, Slot 4) the Victor light keeps blinking orange, I know it should go either green or red. I have a motor attached to it, it doesn’t power on and the voltage across the output terminals of the victor are 0.

I don’t know if its a programming problem or not, or it may be our PWM cables, is there any way to test if a connection is getting to the digital sidecar? Otherwise, any other teams who have input would be much appreciated.

Values I DO know

Voltage of Power Source (11.9)
Voltage across input terminals of Victor (11.5)
Voltage across output terminals of Victor (when it should be off and on) (0)

All lights on the digital sidecar/cRIO/PD Board are on, cRIO code deploys properly etc. the code just doesn’t work.

EDIT: Yes I reset the Victors, that isn’t the problem.

UPDATE Alright I have some pics that I took. Various hookups on the cRIO are in the photos. I know they’re big, but my camera was dying and I didnt have the battery power to change the photo settings.

cRIO1.zip (2.18 MB)
cRIO2.zip (4.27 MB)
cRIO3.zip (3.89 MB)


cRIO1.zip (2.18 MB)
cRIO2.zip (4.27 MB)
cRIO3.zip (3.89 MB)

You might want to check out the FRC Diagnostic Window app from WPI’s Think Tank. It’s a very useful tool for “directly” twiddling outputs from the DSC and reading analog inputs. If you’re suspicious of your hardware setup and don’t want to separate SW issues from HW issues, this app at least gives you a (hopefully) solid SW app to start with.

http://thinktank.wpi.edu/article/138

If I’m understanding your description (I don’t have the bandwidth to download the pix right now), why are you moving the digital I/O module from the cRIO and using a 15 pin serial cable instead of keeping the module in the cRIO chassis and using a 37 pin cable? Interesting design choice… Maybe trying to save a little weight?

Have you confirmed that your 15 pin cable passes all 15 signals straight through instead of swapping pairs of signals? I’m not familiar with any 15 pin serial cables but there are certainly 9 and 25 pin serial cables in both straight and crossover configurations.

Also, there are (I believe) 20 or 40MHz SPI signals going from the cRIO chassis to the digital IO module. Passing those signals through a long 15 pin serial cable could be problematic. You may be getting inadequate comm through that cable.

Good Luck!
Russ

You just made me think of something that I never considered before. The 15 pin serial I’m using is a VGA cable… meaning it may have some inactive pins. I’m not trying to save weight, I’m trying to save time. The serial cable that we need would take a few days to get however the VGA is readily available.

EDIT: On the cable all the pins are present, I don’t know how to check if they’re active or not.

Then it’s not a 15 pin serial (which I’ve never heard of either). It’s a VGA cable. (The 37-pin cable you’re avoiding also isn’t quite a serial cable, though I’m pretty sure it has some serial signals on it.)

EDIT: On the cable all the pins are present, I don’t know how to check if they’re active or not.

The way to check is to use an ohmmeter to verify 1) continuity between corresponding pins on each connector, and 2) noncontinuity between all pairs of pins on a single connector.

But you really shouldn’t be abusing the system that way. Why aren’t you using one of the official 37-pin extension cables?

I disagree with your statement that this is “abusing the system.”

I am using a cRIO that DOES NOT have said 37 pin cable. If there was a way to get it where we wouldn’t be spending a fortune and waiting an extended period of time for it to be delivered I’d get it. The VGA is a 15 pin M-F cable, and according to every bit of documentation that I could find it does function as a serial cable and should work in our situation.

Anyway, for that program suggested by Russ. All the comm on the table is functioning properly, however simulating a signal through the PWM still results in the Jag not going solid. Is there a chance I wired it wrong? I’m going to try the Spike that’s attached…

I like the idea of testing relays. You don’t even really need to connect any Spikes, though - there are debug lights for every FWD/REV relay output that should be able to tell you whether the sidecar is working as expected. Just twiddle all of the relay outputs to see if things are hooked up. If your setup can drive all of the relay outputs, you should be able to twiddle the PWMs as well (twiddling the relay outputs is MUCH more complicated than twiddling PWMs and GPIO since it requires a number of synchronous signals).

What’s the state of the Robot Signal Light?

http://decibel.ni.com/content/docs/DOC-3120

Russ

I probably should have noticed this before, there is one light on the dashboard that should be lit up that isnt. Notably the FPGA and COMM Ok light is not on although my system is fully enabled. I dont know what that means. I’m thinking it’s probably a Labview update that I’m missing. I’m going to update and re-image to see if that helps. Yes my driver station is enabled, yes I have the robot enabled button pressed.

EDIT - By the way, the spike didnt work
EDIT AGAIN- Light (if it was connected) would be on
EDIT AGAIN AGAIN - Light would be on (confirmed by attaching a light.) Reimaging the cRIO did not work. I know there is comm between the DS and the Sidecar because all the Digital IO relays turn green and read a value of 1 when I attach it. I still can’t manage to get that FPGA check to clear. Any suggestions?

You may wish to try this http://www.chiefdelphi.com/forums/showthread.php?t=75103&highlight=sidecar+weight on a temporary basis to see if your cable is the problem.

This may sound odd. I tested this thing alot. I found that attaching a jumper allows the center pin to put out 6V (as is proper.) Using a

Please note, if you’ve looked at those pictures, they are not standard PWM cables they are simply 3 pin signal cables we soldered one end to make pins and the other end already had a 3 pin clip piece. These SHOULDNT be a problem, we’ve tested them.

Anyway, this is really starting to irritate me, I know the sidecar is functioning, but I can’t get a signal to either of my Victors or my Spike.

I’ve narrowed it down to three things…

a) Faulty Signal Cables
b) Two victors AND a spike all broken (unlikely, they worked before)
c) Signal issue (I doubt it, the “signal light” is putting out a constant voltage)

I’m not an expert on this, but I’d suspect that the 40MHz signals from the backplane are too distorted by the cable to make the DIO module function in all of its modes. I’ve seen people use extender boards to get a proto board into the chasis, but never a 5 ft cable. As mentioned, if you can try it without the cable, with the digital breakout mounted upside down, or with a cable on the slow side of the DIO, it will confirm whether this is the issue.

Greg McKaskle

Ok the problem is solved. It was the cable, I’m going to go out and buy a proper cable to go with the system. For all of you who helped so much with this problem thankyou.

I’m going to go buy a 37 pin M-F cable for use with the cRIO digital sidecar.