voxl_cam_ros cannot read image from tracking camera
-
I think you need to set the param is_cam_master to true, meaning that this instance of the camera driver is the is going to access the camera directly. If cam master is set to false, it allows a second client to connect to the camera that is already open (in a slave mode). You don't need the master/slave if you are using ROS, since ROS can already do the "fanout" of the images using ROS pub/sub.
-
Hi Alex,
Sorry for the late reply! I was busy this two days. Unfortunately it still doesn't work if I set the is_cam_master to true. Here is the error output:
Here is my launch file:
Here is my camera environment setup:
I also disable other services that might use the cameras:
Thanks for your help!!
Best,
Rui -
I think it should work. Please make sure that stereo works either using voxl-camera-server or voxl-rtsp (https://gitlab.com/voxl-public/utilities/voxl-rtsp or install via
opkg install voxl-rtsp
) (voxl-rtsp needs to have voxl-camera-server disabled). Maybe there is some issue with stereo hardware. Nodelets are sometimes a pain to debug..Another quick way to check if all ov7251 cameras have been detected..
dmesg | grep ov7251
should show three ov7251 probe succeeded messages (one tracking, two in stereo module). -
It seems that the sterero cameras cannot be detected by the board based on the given messages. I double check the connection and they all look correct.
Here is the output of dmesg | grep ov7251:
Here is the output of the voxl-rtsp:
-
You are correct, neither of the two cameras in the stereo pair is detected. Can you please double check that you have the cameras plugged in correctly? See https://www.modalai.com/collections/accessories/products/stereo-camera-pair-and-flex-cable-kit-mkit-00009 and Stereo is only supported in J3 camera connector (next to J2, where your hi-res camera is probably connected). https://docs.modalai.com/voxl-flight-datasheet-connectors/#voxl-flight-board-top , the stereo flex needs to plug into J3 so that the cameras are going out forward from VOXL, not towards the board.
-
Yes the stereo camera goes into the J3 port with the stereo flex goes out from the voxl board
-
Can you try to plug in hires camera into J3 instead of J2 (disconnect stereo completely). Hires camera should work either in J2 or J3. You can check if hires camera has been detected using ‘dmesg | grep imx214’. This would confirm at least the J3 port is functional. Then plug hires camera back into J2, which is default configuration.
-
I connect the hires to the J3 and here is the output message, it seems fine:
I also tried connect the hires camera back to the J2 and run the same command "dmesg | grep imx214" and it has the same message output. Then I checked the hires camera on voxl_cam_ros and it output the image fine.
So I guess the J3 port works fine?
Best
Rui -
Yes, it seems J3 is fine. First the board tried to find imx214 on J2 (which fails in this case), then successfully on J3.
Has this stereo module worked before? Please inspect the stereo flex cable and connector on it for any damage. If you dont mind please post a good close-up picture of the flex cable with two cameras plugged in, with connector (which goes into voxl) facing up, so that contacts can be seen.
-
This post is deleted! -
HI Alex,
Sorry for the late reply again. I was busy yesterday. Here are the pins' photos:
J3 Port
Stereo Flex J1
Stereo Flex J2
Stereo Flex J3
Stereo Left Camera
Stereo Right CameraIt seems to me that the pins are fine.
One interesting thing to report is that one camera in the stereo actually can be detected by the command "dmesg | grep ov 7251" after we reconnect all the cables again. However, the other one still cannot be detectd. The message is shown as following:
-
Interesting. The flex cables look good. I wonder if the multiple creases in the camera cables caused a break in the camera cable (not the Y splitter flex). If you switch left and right cameras, does the undetected camera switch places? From earlier post, it seems that previously neither of the two stereo cameras were detected.. inconsistent behavior may be a sign of a mechanical issue, like a cable break which changes with flexing of the cable itself.
-
I think I found the issue. If I connect the cameras to the left of flex, they can be detected by the board. However, it doesn't work for the right side of flex. I notice a small circle on the flex cable which probably damage the connection inside as shown in the following image. Is it possible to get a new flex cable from your team?
Best,
Rui
-
Oh yes, this would absolutely cause a problem. Glad you found it.
You can find just the stereo flex cables here : https://www.modalai.com/collections/accessories/products/voxl-replacement-stereo-flex-cable