So our team has two limelight cameras which we used this season, but never together on a robot. How did teams use double limelight with the radio only have 2 Ethernet ports?
We didnt use a limelight, but you can use an ethernet switch to give yourself more ports on the radio. The Rio would plug into one spot on the radio, and then the other spot would hook to the switch which would be Limelight, Jetson, Raspbery Pi, IP cameras, etc.
We used this network switch with our two Limelights:
Let me know if you have any questions.
Kind of unrelated question, but can limelight’s compress web cam streams well?
I recommend this Netgear switch because it runs on 5v, .7a, meaning you can plug it into the VRM without messing with your radio.
They can, but no better than the roboRIO. If you’re having bandwidth problems, the Limelight is not your answer. (In my experience it is actually notably worse in terms of bandwidth usage, though I hear they are working on this.)
What was the power requirement on this switch?
We had the exact opposite experience. It was extremely buggy for me to bandwidth limit 2 lifecams through the roborio (pulled about 10-11mpbs one match, got in trouble with the FTA lol) so we put 3 Limelights on our robot acting as vision/webcams and it pulled less than 4mbps total. At worlds, we used 2 fisheye cameras attached to 2 limelights and after some compression we pulled around 2-3 Mbps total.
Interesting. They’re using the same
terrible codec, so the bandwidth use should be comparable for the same framerate/resolution… though JPEG does allow for various amounts of (lossy) compression.
Very strange. Will have to research if I get the time.
I think the issue for me was that I couldn’t reduce the resolution through the roborio. Lifecams, for me at least, were unable to be bandwidth limited through the roborio and caused cameras to crash. Limelights automatic compression when you plug in through the USB port was great for us.
setResolution is implemented on USB cameras. Should be perfectly possible…
Again, I’ll have to investigate, as my team moved away from MJPEG/CameraServer this year and it’s been a while since I’ve had to use that part of WPILib.
We used an Ethernet splitter and sent back the two limelights as one stream. Not 100% how it works but I could get more clarification on it.
Can you tell us where you bought this splitter? Brand as well? As far as I have read, this doesn’t work.
It runs at 5v, 1A. It plugs right in to the VRM without any issues.
Contrary to tkdberger, in our experience using the Limelights to compress USB webcam video streams is FAR superior to anything we were ever able to do on the RoboRIO. We actually had 4x cameras on our robot this year (2x Limelights and 2x USB Webcams) and at the standard settings, we never ran into any bandwidth issues the entire season.
Prior to using a Limelight, we were lucky if we could get a single video stream to pull 160p 15fps without having issues; this season our Limelights ran between 60-90fps and our USB webcams ran around 30fps on the competition field (at whatever the Limelights standard resolution is).
Gotta recommend the brainboxes Ethernet switch. Seen it on a lot of robots this season.
We’ve been running network switches on the robot since 2014, used a number from Netgear, trendnet, dlink.
This one can plug straight into the PDP (5-30v input), there’s no pesky barrel jack to worry about, status lights are right above the ports so you can put it up against a wall in the chassis and still be able to see link lights. A surprising number of 5port switches have status lights on the opposite sides of cable Jack’s, or power connector on a different side than the rj45 connections, which makes stuffing it in a corner more challenging.
The only thing it’s missing is POE injection ( so all devices connected to it automatically have backup power over Ethernet supply - specifically the radio).
Will likely be buying again.
I can find out. I just took it for granted at the driver station.
We used this one too. Was fantastic
If you really want to go belt and suspenders on it, check out the switches from WIWAV. They are metal, so they’re quite heavy, but they support redundant power. We had ours powered by both the PDP directly and from a secondary VRM.
We used the Brainboxes one this year and only had a few problems with the wires on the power connector loosening a bit. It reboots super quick though. We used some nice 6" Ethernet cables to go to our radio PoE injector and directly to our RIO.
How could you access the those limelights through code.We’re using Java
Well I would recommend, plugging one Limelight in and setting a static IP through the limelight web dashboard. Then plugging the second camera and doing the same thing. Then you create two networktable instances that take those two static IP addresses as it’s constructor. Here is an example:
public NetworkTable limelight1 = NetworkTableInstance.getDefault().getTable("limelight1");
public NetworkTable limelight2 = NetworkTableInstance.getDefault().getTable("limelight2");
Then you can call the limelight stuff like we did here: