I had my OAK-D depth camera connected to the Jetson Nano, which itself was plugged into the same switch as the Pi3, all on the rover.
My plan was to use the Nano to host the cameras and run the vision stack and the Pi3 to run the ROS master, talk to the various Arduinos, GPS, etc.
Which seems sensible until you actually fire everything up and watch the USB-based NIC on the Pi eat all the bandwidth on the Pi's USB2 bus from talking to the Nano.
To the point where even the joystick has trouble getting messages through to the teleop_twist_joy node.
The little wireless joystick dongle kept blinking like it was resetting or trying to establish a connection and the rover would just stop dead every few seconds.
Then the image/depth data has to get onto the Pi's Wifi and stream to my laptop. Looking at usbtop vs. iperf it's clear that the network AND USB are being saturated by this traffic.
One other interesting point I noticed is that the /camera topics are showing up fine in Rviz or Foxglove on my laptop, but I'm getting "unable to subscribe" errors for the other topics from the GPS, sonars, battery monitors,etc.
and these are all plugged into USB on the Pi3.
I could go in and look at the OAK-D parameters on the launch file or not run YOLO or adjust frame rates & resolution, etc. or I could move on.
Since I've already got the Jetson on the 'bot and its doing much of the heavy lifting anyway, I'm just going to move on.
This particular Pi3 is still running Kinetic(I'm pretty sure it's one of the ones from Service Robot Labs) so I'm seeing this as the final kick in the pants I need to migrate to a supported version of ROS on
more capable hardware.