We’re having trouble with our CompactRIO; specifically, Jaguars are not responsive to data from the driver station. I wrote a piece of LabVIEW code to run the Jaguars either using joystick inputs or using a numerical constant (0.5). However, upon deploying this code to the cRIO, there was no indication that the code was running.
To ensure that the code was in fact running, I wrote a bit of LabVIEW code to set the value of the Jag to 0.5, and then to get the value of the speed controller and compare it to the input. I observed that while the value of 0.5 was being sent to the Jag, I was not getting the same value when I get the output of the speed controller. This leads me to believe that it is a programming error.
I have attached printscreens of the code I am using. It is not changed at all from the default code except for the actual motor code. I have also checked with different Jaguars, breakout boards, and sidecars to no avail. I have also probed the PWM ports manually with a multimeter (can’t afford an oscilloscope), it does not read any significant signal on either the power, ground, or signal cables.
Well, in cases like this the problem is usually a silly one. In this case I want you to try a few things:
Make sure you enable TeleOp in the Driver Station… I can’t tell you how many times this was my problem
Create a DIO Out and make it toggle every half second while in TeleOp (regardless of motor output). Put a small LED or something in it if you can, or just check it with a multimeter. This will be a guarantee that the code is running and the sidecar is working.
Try different PWM ports, Just to make sure. Also, see a wiring diagram to make sure it’s wired correctly. (I can’t find one to link to atm)
Look for a FRC example for controlling a Jaguar and see if that works.
If the Jaguars are receiving signals, they will flash red or green (according to the direction). If they flash and the motors still don’t move, the problem lies in the motor or the connection between the Jaguar and the motor, or the motor is faulty.
By the way: if you will notice, there’s a global variable “LED toggle rate (ms)” which is used to flash the User LED in Periodic Tasks. Make sure to remove that if you plan on using the User LED.
Also post here any errors you see in the Diagnostics tab.