Open clalancette opened 7 years ago
It could be a failure of the large message handling in DDS that causes this issue.
So, the original issue was that the low-level camera driver wasn't even giving me callbacks (I verified this by putting some prints in the low-level callback from OpenNI). I ended up writing a much simpler program, getting rid of ROS2 completely, and saw a couple of interesting things. First, I am generally able to get frame rates of ~30fps from the depth camera at 320x240, and I'm able to frame rates of ~25fps from the depth camera at 640x480, for a "while". If I start and stop my simple program enough times, the frame rates drop to what I saw when I opened up this issue. One of the thoughts that @codebot had was that maybe the Pine64 that I used wasn't providing enough power to the camera; to try and remedy this, I bought some powered hubs, but the issue remained.
The short is that while there may be an issue with DDS large message handling, I don't think it is the cause of this particular issue.
For whatever reason, when I try to set the astra camera use the depth camera at any resolution greater than 320x240, it doesn't produce much data. That is, the lower layers of the driver, and/or the camera itself, don't callback into the ROS layer more than once every few seconds. Something is clearly wrong there; we should debug this and/or compare it to the ROS1 driver to get a better sense of what should be happening there.