IP camera not streaming to dashboard


Our team is currently competing at the Brazos Valley competition and we’re having some trouble with getting our camera images to the dashboard.

We’re currently using the default Visionprocessing.vi code (made sure vision was enabled, of course), and the default camera code in the dashboard, but images simply do not seem to make their way onto our player screen on or off the field.

After verifying all software and images we’re up to date, I SSH’d into the RIO and verified that the robot was able to ping the camera at “axis-camera.local”, then we placed an indicator after the GET_IMAGE block in visionprocessing.vi, then placed a probe inbetween the block and the indicator, and verified we’re receiving images on the RIO without issue. But the images still don’t get sent from the robot to the dashboard.

The errors we’re getting on the Driver Station mention the “Authentication.vi” and another one says something about that we need to place an acquire image loop in visionprocessing.vi, however I thought the default code should at least send a few frames to the dash. I apologize, this is all the information I can recall without the laptop in front of me.

We’ve talked to every orange hat here at the event and even the field manager, and they can’t seem to provide any other troubleshooting steps other than those we’ve already done.

Has anyone else experienced a similar issue? Anyone have any ideas on next troubleshooting steps?

We use Axis cameras but don’t put them into the dashboard at all. You can view one or more feeds in a web browser. You can navigate to the camera’s own live view page or view the unadorned video element at http://<camera_ip_adress>/mjpg/video.mjpg (may depend on the camera model) either directly or wrapped in your own HTML code. We have our own minimal HTML/CSS wrappers to put up as many as four feeds, scaled and rotated as necessary, in a single page.

You can configure the camera through its own settings page to control video quality and data rate, but you can also do it through the URL as described here: https://www.axis.com/files/manuals/HTTP_API_VAPIX_2.pdf. Doing this lets the camera client (i.e. image processing) on the RoboRIO ask for a high quality feed at the same time the drivers are looking at one that’s been crunched to stay within the data rate rules.

If you’re not doing image processing on the RoboRIO it needn’t even know about the Axis camera(s).