Getting the following error when launching multiple cameras:
[component_container_isolated-2] [2025-01-28 23:36:40 UTC][ZED][INFO] Logging level INFO
[component_container_isolated-2] [2025-01-28 23:36:40 UTC][ZED][ERROR] [ZED] sl::Camera::Open has not been called, no Camera instance running.
[component_container_isolated-2] [2025-01-28 23:36:40 UTC][ZED][ERROR] [ZED] sl::Camera::Open has not been called, no Camera instance running.
[component_container_isolated-2] [WARN] [1738107400.041873084] [camera_front.zed_node_0]: Error opening camera: CAMERA NOT DETECTED
[component_container_isolated-2] [INFO] [1738107400.041958971] [camera_front.zed_node_0]: Please verify the camera connection
[component_container_isolated-2] [2025-01-28 23:36:40 UTC][ZED][WARNING] CAMERA NOT DETECTED in sl::ERROR_CODE sl::Camera::open(sl::InitParameters)
[component_container_isolated-2] [2025-01-28 23:36:45 UTC][ZED][INFO] Logging level INFO
[component_container_isolated-2] [2025-01-28 23:36:45 UTC][ZED][ERROR] [ZED] sl::Camera::Open has not been called, no Camera instance running.
[component_container_isolated-2] [2025-01-28 23:36:45 UTC][ZED][ERROR] [ZED] sl::Camera::Open has not been called, no Camera instance running.
[component_container_isolated-2] [WARN] [1738107405.542829394] [camera_front.zed_node_0]: Error opening camera: CAMERA NOT DETECTED
[component_container_isolated-2] [INFO] [1738107405.542923921] [camera_front.zed_node_0]: Please verify the camera connection
[component_container_isolated-2] [2025-01-28 23:36:45 UTC][ZED][WARNING] CAMERA NOT DETECTED in sl::ERROR_CODE sl::Camera::open(sl::InitParameters)
[component_container_isolated-2] [2025-01-28 23:36:51 UTC][ZED][INFO] Logging level INFO
[component_container_isolated-2] [2025-01-28 23:36:51 UTC][ZED][ERROR] [ZED] sl::Camera::Open has not been called, no Camera instance running.
[component_container_isolated-2] [2025-01-28 23:36:51 UTC][ZED][ERROR] [ZED] sl::Camera::Open has not been called, no Camera instance running.
[component_container_isolated-2] [WARN] [1738107411.043618478] [camera_front.zed_node_0]: Error opening camera: CAMERA NOT DETECTED
[component_container_isolated-2] [INFO] [1738107411.043717741] [camera_front.zed_node_0]: Please verify the camera connection
[component_container_isolated-2] [2025-01-28 23:36:51 UTC][ZED][WARNING] CAMERA NOT DETECTED in sl::ERROR_CODE sl::Camera::open(sl::InitParameters)
[component_container_isolated-2] [2025-01-28 23:36:56 UTC][ZED][INFO] Logging level INFO
[component_container_isolated-2] [2025-01-28 23:36:56 UTC][ZED][ERROR] [ZED] sl::Camera::Open has not been called, no Camera instance running.
[component_container_isolated-2] [2025-01-28 23:36:56 UTC][ZED][ERROR] [ZED] sl::Camera::Open has not been called, no Camera instance running.
[component_container_isolated-2] [2025-01-28 23:36:56 UTC][ZED][WARNING] CAMERA NOT DETECTED in sl::ERROR_CODE sl::Camera::open(sl::InitParameters)
[component_container_isolated-2] [WARN] [1738107416.544449005] [camera_front.zed_node_0]: Error opening camera: CAMERA NOT DETECTED
[component_container_isolated-2] [INFO] [1738107416.544607211] [camera_front.zed_node_0]: Please verify the camera connection
Launching zed_wrapper separately for each camera works
Launching individual zed_wrapper for all cameras in multiple terminal sessions in parallel works also, though the second camera launch starts logging the following warning: [component_container_isolated-2] [ZED-X][Warning] Failed to connect to zed_x_daemon.
EDIT 1:
It seems there must be some race condition → small edits to the launch file to add a 1s delay for each additional launch (using TimerAction) works. It’s not an actual fix, rather a workaround.
[component_container_isolated-4] [WARN] [1738363130.919734046] [camera_left.zed_node_1]: Error opening camera: CAMERA NOT DETECTED
[component_container_isolated-4] [INFO] [1738363130.919881079] [camera_left.zed_node_1]: Please verify the camera connection
[component_container_isolated-4] [2025-01-31 22:38:50 UTC][ZED][WARNING] CAMERA NOT DETECTED in sl::ERROR_CODE sl::CameraOneImpl::open(const sl::InitParametersOne&)
ros2 node list only shows camera_front and camera_right.
Other times, it might be the front one or the right one that fails. Sometimes 2 out of 3 fail with this error. Again, running each camera individually works, all cameras show up in ZED_Explorer and restarting zed_x_daemon has no impact. All cameras work if you add incremental sleep before each subsequent launch to simulate sequential launch.
The README file does not mention anything about stereo camera only, in fact it states: “system equipped with multiple different models of ZED cameras”.
Point being, it would be nice if this was documented so you don’t send people down a rabbit hole. Also, mentioned our setup uses one ZED X + two monocular cameras in my initial post, unclear why you asked for command + logs
It doesn’t strike me as an issue related to the mix of plugins between ZedCamera and ZedCameraOne. For what it’s worth, the same error occurs when trying to launch just the two monocular cameras.
Anyway, we found a work around when launching sequentially. Consider this user feedback.
But when starting the ZED_multi node we also have sometimes the issue, that the cameras are not been detected. We are using SDK 5.0.2 but the issue still presists…
Are you using the Serial Numbers or the Camera IDs to identify the cameras?
If you are using the Serial Numbers, please try to use the Camera IDs instead.
I also have the same issue. Launching the ros wrapper fails with 2 cameras on a camera not detected issue, but it works with only 1 camera.
How can I force it to use only the camera IDs and not the serial numbers? I think I have to supply both to the zed_components package. It looks like in zed_camera_component.cpp there is
if (mCamSerialNumber > 0) {
mInitParams.input.setFromSerialNumber(mCamSerialNumber);
} else if (mCamId >= 0) {
mInitParams.input.setFromCameraID(mCamId);
}