Hey,

We are using an OAK-D Pro camera connected to a RaspberryPi. I set up a docker container to run our application. When I reboot the system and run the container, which runs a script to record the camera data as .MCAP files, the DepthAI API is able to detect the camera device, however, device.getCameraSensorNames() returns an empty dictionary.
Interestingly, if I run one of the example ROS scripts (e.g. roslaunch depthai_examples mobile_publisher.launch), then cancel it and run the recording script again, the DepthAI API is suddenly able to detect the sensors of the camera.
Is there a way to properly boot up the camera using the DepthAI API, so it detects the camera sensors from the beginning?

Thanks in advance for any help!

Best,
Magnus

jakaskerl

Hey Jaka,

Thanks for your reply!
The function returns an empty list.
We also tested the camera on a laptop running ubuntu and it worked without a problem, so the problem must be that the camera doesn't properly boot up when it is plugged into the RaspberryPi.

Best,
Magnus

Hi @Magnus
Does this same issue occur on depthai examples as well (something like rgb_preview.py)?
Could you send dmesg logs as well?

Thanks,
Jaka

Hi @jakaskerl,

Thanks for your reply!
Yes, the issue also occurs on depthai examples. See the output of camera_preview.py:

Here are the dmesg logs:

Thanks again and all the best;
Magnus

Hi @Magnus
Could you try updating depthai to the latest version (24) and try out the examples from depthai-python repo?

Also, can you paste the dmesg logs a bit before, during and after you execute the pipeine. This is because when the device boots up, it reconnects under a different bus-id, which should be visible in the logs.

Thanks,
Jaka