After working most of last build season trying to get the camera working, and ultimately failing. We are hoping to get the camera set up and working this year.
The problem is that it doesn’t. The camera works when plugged in to the laptop, both through the NI vision assistant and the web interface. However, when plugged into the cRIO, nothing works. Running the default code that came with this years kit (C++ in windriver) there is no response. Also, the link light on the port that the camera is plugged into on the cRIO doesn’t light up.
So far I have tried everything I can think of and I have hit a dead end. Has anyone here had any luck getting the camera working? Any suggestions?
Eric,
Yes, we are using a crossover cable to connect. Are we supposed to be using something else? The crossover cable that attaches it to the cRIO is the same as the one we used when attaching it to the PC.
Many (most?) modern laptops are smart enough to compensate if you use / don’t use a cross over cable by switching internally. It is possible that your laptop is tricking you by this method.
Try plugging a hub or switch into ethernet port 2 on the cRIO. Does it light up now?
We have used the orange cable. And the cable we are using now is a crossover (We tested it). If I plug the computer into port 2, the lights do come up just as they do if the computer is plugged into port 1. (Although there are no comms with this method). Because of that I am reasonably sure the port is okay.
In reference to another thread on here, I made sure the Camera to Dashboard program compiles and is on the robot. And if I have a debugging console running there are no errors reported :-/
Try ouputting data to the debugging console indicating when a command is successfully completed, that way at least you know the code is running correctly.
Which camera to dashboard program are you using?
The “Camera to Dashboard” example program does not work to my knowledge. Either build the “FRC 2010 Vision Demonstration” program, or add this to your robot’s main code:
DanDon: The code has that, and every part completes as expected.
jc4p: Ahhh, I will give that a go when I get back to the laptop. Is the transmit to the DS auto-magic from that point, or should I also include the PCVideoServer?
Thanks again everyone for all the help. Ill report back after I test again.
I am using that with print statements between every line. The one before the first line makes it to the terminal, but after that there is nothing. Then after a while some cryptic errors pop up.
The one that leads me to believe this is a hardware problem of some sort is:
connect: S_errno_ETIMEOUT
As far as I can tell, that means I am done here. Unless anyone has any other ideas or hardware change recommendations.
That seems like it would indicate a problem instantiating an AxisCamera object…as to how to fix it, unfortunately no idea until I can get into a lab and play around a bit.
Ok, I feel like I am close to the solution. One thing I am seeing, after poking around in the console of the cRIO, is that it only has two network devices, the loopback, and the main one with the 10.xx.xx.2 ip. This makes me wonder how port two is supposed to connect on a different subnet to the camera.
My question then, is if one of you who has the console working to your cRIO could run “ifShow” and just tell me what things are listed. Failing that, I am at my wits end and I will have to call NI tomorrow if I cant get this fixed.
I am in the same situation as you, sadly I do not currently have access to our robotics room to do the test for you. When I run the 2010 Image Demo code, or the snippet I sent you, the robot freezes and the Dashboard shouts “Watchdog not fed.” If I comment out the initializer for the AxisCamera object, everything works.
Update: My code now seems to be able to initialize the camera without it hanging. The lights are on on the cRIO as well. To do this I re-flashed the cRIO and checked to see if the other interface was there. We also switched crossover cables, but im not sure if we needed to.
It seems like the only remaining problem is getting the video out to go back to the laptop now.