ov7251 tracking camera not being initialized with unsupported preview config
-
Hello,
I am trying to get my camera setup running with the Voxl2 and release 1.4.1
I have the following setupov7251 stereo pair
ov7251 tracking
imx214 hiresI can see the stereo images and the hires images in the portal but the tracking never shows up.
I get this error on camera server startupERROR: Camera 2 failed to find supported preview config: 640x480
WARNING: Failed to start cam tracking due to invalid resolution
WARNING: assuming cam is missing and trying to compensate
Starting Camera: hires (originally id #3) with id offset: 1here is my config
{ "version": 0.1, "fsync_en": false, "fsync_gpio": 109, "cameras": [{ "type": "ov7251", "name": "stereo", "enabled": true, "camera_id": 0, "camera_id_second": 1, "independent_exposure": false, "fps": 30, "en_rotate": false, "en_rotate_second": false, "en_preview": true, "preview_width": 640, "preview_height": 480, "en_raw_preview": true, "ae_mode": "lme_msv", "gain_min": 54, "gain_max": 8000, "ae_desired_msv": 60, "exposure_min_us": 20, "exposure_max_us": 33000, "exposure_soft_min_us": 5000, "ae_filter_alpha": 0.600000023841858, "ae_ignore_fraction": 0.20000000298023224, "ae_slope": 0.05000000074505806, "ae_exposure_period": 1, "ae_gain_period": 1 }, { "type": "ov7251", "name": "tracking", "enabled": true, "camera_id": 2, "fps": 30, "en_rotate": false, "en_preview": true, "preview_width": 640, "preview_height": 480, "en_raw_preview": true, "ae_mode": "lme_msv", "gain_min": 54, "gain_max": 8000, "ae_desired_msv": 60, "exposure_min_us": 20, "exposure_max_us": 33000, "exposure_soft_min_us": 5000, "ae_filter_alpha": 0.600000023841858, "ae_ignore_fraction": 0.20000000298023224, "ae_slope": 0.05000000074505806, "ae_exposure_period": 1, "ae_gain_period": 1 }, { "type": "imx214", "name": "hires", "enabled": true, "camera_id": 3, "fps": 30, "en_preview": false, "preview_width": 640, "preview_height": 480, "en_raw_preview": false, "en_small_video": true, "small_video_width": 1024, "small_video_height": 768, "small_venc_mode": "h265", "small_venc_br_ctrl": "cqp", "small_venc_Qfixed": 30, "small_venc_Qmin": 15, "small_venc_Qmax": 40, "small_venc_nPframes": 9, "small_venc_mbps": 2, "small_venc_osd": false, "en_large_video": true, "large_video_width": 4208, "large_video_height": 3120, "large_venc_mode": "h265", "large_venc_br_ctrl": "cqp", "large_venc_Qfixed": 38, "large_venc_Qmin": 15, "large_venc_Qmax": 50, "large_venc_nPframes": 29, "large_venc_mbps": 30, "large_venc_osd": false, "en_snapshot": true, "en_snapshot_width": 4208, "en_snapshot_height": 3120, "exif_focal_length": 0, "exif_focal_length_in_35mm_format": 0, "exif_fnumber": 0, "ae_mode": "isp", "gain_min": 54, "gain_max": 8000 }] }
J6 is the stereo camera setup
J7 is the tracking and hires using the dual connector adapter boardAny thoughts on why the resolution would be the problem? The "datasheet" seems to think that is fine
Thanks,
Brian -
@brianaustin , you probably do not have the correct
sensormodule
for your tracking camera in/usr/lib/camera/
.I can help you. Please let me know which camera ports all the cameras are plugged in (ov7251 stereo is probably in J6L, etc).
Also please provide the output of the following command:
ls /usr/lib/camera/*sensormodule*
You can see many examples of camera configurations and where the cameras are plugged into different connectors : https://docs.modalai.com/voxl2-camera-configs/
Finally to see which cameras are detected, you can run:
voxl-camera-server -l
this will detect the cameras and exit. at the very top you should see something like this, which lists detected cameras and their camera slot IDs.Sensor Id
can tell us which camera type it is. In your case, since you are connecting 4 cameras (two in stereo, one tracking, one hires), you should see 4 cameras being detected if all works well. However, i think right now you will see 3. And the solution will be to copy the correct sensormodule file for ov7251 for the right slot number from/usr/share/modalai/chi-cdk/ov7251/
to/usr/lib/camera
. If this is a standard camera config, you can just runvoxl-configure-cameras
.This is my example of listing cameras:
voxl2-mini:/$ voxl-camera-server -l DEBUG: Attempting to open the hal module DEBUG: SUCCESS: Camera module opened on attempt 0 DEBUG: ----------- Number of cameras: 3 DEBUG: Cam idx: 0, Cam slot: 0, Slave Address: 0x0020, Sensor Id: 0x0214 DEBUG: Cam idx: 1, Cam slot: 1, Slave Address: 0x0030, Sensor Id: 0x0356 DEBUG: Cam idx: 2, Cam slot: 2, Slave Address: 0x0034, Sensor Id: 0x0577
Alex
-
@Alex-Kushleyev said in ov7251 tracking camera not being initialized with unsupported preview config:
ls /usr/lib/camera/sensormodule
Thanks for the reply!
I have run the configuration for #3 when I set it up
voxl2:/$ ls /usr/lib/camera/sensormodule
/usr/lib/camera/com.qti.sensormodule.imx214_3.bin /usr/lib/camera/com.qti.sensormodule.ov7251_combo_0.bin
/usr/lib/camera/com.qti.sensormodule.ov7251_2.bin /usr/lib/camera/com.qti.sensormodule.ov7251_combo_1.binvoxl2:/$ voxl-camera-server -l existing instance of voxl-camera-server found, attempting to stop it DEBUG: Attempting to open the hal module DEBUG: SUCCESS: Camera module opened on attempt 0 DEBUG: ----------- Number of cameras: 3 DEBUG: Cam idx: 0, Cam slot: 0, Slave Address: 0x00E2, Sensor Id: 0x7750 DEBUG: Cam idx: 1, Cam slot: 1, Slave Address: 0x00E4, Sensor Id: 0x7750 DEBUG: Cam idx: 2, Cam slot: 3, Slave Address: 0x0020, Sensor Id: 0x0214 DEBUG: Note: This list comes from the HAL module and may not be indicative DEBUG: of configurations that have full pipelines DEBUG: Number of cameras: 3
Here are the sensor libraries in /usr/lib/camera
com.qti.sensormodule.imx214_3.bin
com.qti.sensormodule.ov7251_2.bin
com.qti.sensormodule.ov7251_combo_0.bin
com.qti.sensormodule.ov7251_combo_1.binare these the correct bin files?