Camera not streaming through router

Today we started driving with our competition bot and tried to turn on our USB camera, but we were getting no image wirelessly. When we connect direct to the roboRio though either USB or ethernet the vision works perfectly fine. When we try to connect to the radio though the available ethernet port, we get no image. One time we tried to tether to the bot and got an image, and then disconnect and plug the radio back in and we were able to get an image wirelessly. Once the bot was turned off, however we lost the camera. Reflashing the radio did not solve our problem, nor did disabling the Windows 10 firewall. We tried on 3 different laptops and it did not work through any of them.

Thanks in advance for any help!

P.S. Sorry if it got a little rambly and all over the place, just got back from a 10 hour build session.

It would appear the problem was solved by clicking the Enable Vision button on the robot main vi, who would have thought!

I have the exact same issue.

We have Enable vision wired as default to true. That didn’t seem to help.

Would you have done anything else to solve this issue?

Can you tell me what you mean by:

Enable Vision button on the robot main vi
?

Is that within the roborio admin page?

One extra detail.

So it looks like when I connect via ethernet my camera stream addresses have a .local postfix.

When I connect thru the Radio, the .local postfix disappears.

I’m not sure if that helps or is irrevalent, but I figured I would mention it.

He’s talking about LabView

Ok…Vision Enable Button is on the Front Panel of Robot Main. That needs to be set to True.

Second, finally figured out this problem and got my 2 USB cameras to work at the same time when RIO is connected to the Radio.

The biggest clue was if you go to the variables tab on your dashboard, you should see a “streams” string array. This is the address of the camera. For some reason, when connected to the radio the string path would be missing the “.local” part of the name, i.e. it would say “roboRIO-5205-FRC:1181/…”

When connected to ethernet or USB, that path said “roboRIO-5205-FRC.local:1181/…”

The “.local” is critical in finding the RIO. So here’s how to add it back in:

In 2017, they moved Send 2 PC.vi from the vision processing vi to Robot Main. Comparing it to 2016’s Send 2 PC vi, it’s been completely changed. Inside the Send 2 PC vi is where the above address is created and then written to a Network Table.

I simply reprogrammed the VI to look for the .local path in what was written to the NT. If it didn’t have it, I added using a concat string vi. If it did have it I left it alone.

Built and deployed the changed VI and everything worked.

Hope this helps someone else out there. This took me 3 days to figure out.

Thank you for this information. We are having a similar problem and I was looking through these VI’s. On a rare occasion it would work for us. I was wondering if any of the following might be issues:
– Timing between “vision processing” and the “send to Pc loop” VI. It looks like the “send to PC loop” looks for the camera references. Perhaps moving the camera open to “begin” might help this. (Haven’t gotten a chance to try yet.)
– Wondered if the 1 second timeout on the TCP listen VI was too short. Considered making this wait longer – say 5 - 10 seconds.

However your solution may make these meaningless…

Can you share the updated “send to pc loop” vi where you added the “.local”

Thanks
Jim

Worked. Thank you. We added “.local” before “:1181/” so that input into the string array becomes “.local:1181/”

I have the same issue as well. Here is my posthttps://www.chiefdelphi.com/forums/showthread.php?t=155632

I will try that also. Hope it works.

Try this.
~https://drive.google.com/drive/folders/0B2aaTMmNdQ2hTjVtZVljN2RIbzQ
~https://forums.ni.com/t5/FIRST-Robotics-Competition/FRC-2017-USB-Camera-not-working-with-LABView/td-p/3571764

changing the “send to pc” vi to add the “.local” worked for us. Thanks!