VOXL2 Camera Configuration not found
-
Hello,
I'm using a VOXL2 (board only), a micro-coax camera adapter (M0173), and an IMX412 (M0161).
I'm following the documentation here. When configuring SKU, I can set 20 for VOXL2-board-only but camera configurations 26-30 don't appear. The same is true if I run voxl-configure-camera.
Any ideas as to the cause? All components are connected to the VOXL already.
VOXL currently thinks it is in the following hardware: family code: MCCA-M0054 (voxl2-board-only) compute board: 4 (voxl2) hw version: 1 cam config: 0 modem config: () tx config: () extras config: () SKU: MCCA-M0054-C0-M0-X0 If this is what you want, select 1 (accept and continue) to leave it as-is. Otherwise, select the desired product family: 1) accept and continue 12) voxlcam 2) starling-2 13) seeker 3) starling-2-max 14) rb5-flight 4) starling 15) flight-deck 5) px4-autonomy-dev-kit 16) voxl-deck 6) sentinel 17) voxl2-flight-deck 7) fpv 18) voxl2-test-fixture 8) D0010 19) voxl2-mini-test-fixture 9) stinger 20) voxl2-board-only 10) D0015 21) voxl2-mini-board-only 11) m500 22) quit #? 20 selected voxl2-board-only ------------------------------------------------------------------ If you would like to select a special camera config that differs from the default for your product family, please select an option. Simply hit ENTER to use the default 01 - ov7251 tracking ov7251 stereo 02 - ov7251 tracking 03 - ov7251 tracking ov7251 stereo imx214 hires 04 - ov7251 tracking imx214 hires 05 - pmd-tof ov7251 tracking 06 - D0005 Starling pmd-tof imx214 hires ov7251 tracking 08 - imx214 09 - pmd-tof 10 - ov7251 stereo 11 - D0006 Sentinel 12 - ov9782 stereo 13 - ov9782 stereo imx214 hires 14 - ov9782 stereo pmd-tof ov7251 tracking (copy) 15 - D0008 dual 9782 tracking 16 - pmd-tof ov7251 dual tracking imx214 hires 17 - D0010 pmd-tof imx412 hires ov7251 tracking ov9782 stereo 18 - D0008 triple ov9782 19 - D0005 without tof imx214 hires ov7251 tracking 20 - D0011 imx412 hires ar0144 tracking 21 - old C6 22 - D0013 voxl2 mini dual ar0144 23 - D0010 without stereo 24 - pmd-tof LIOW2 (new TOF) 25 - dual ar0144 31 - D0013 COAX dual ar0144 tracking 32 - D0008 triple ov9782 rotated C - use user-defined custom camera config in (/data/modalai/custom_camera_config.txt) q - Quit The Wizard Simply hit ENTER to use the default selection: ^C
Thanks,
Josh -
@jcai You'll need to re-flash the latest SDK and select a kernel option for M0173 support. Different kernels are required to unlock different camera configs
-
@tom I just flashed 1.3.5 and was able to configure C28. However, there still seems to be an issue.
My camera is connected to J5 on the breakout, which should be hires_down. Using
voxl-inspect-cam
, the camera shows up as hires_front.Furthermore, if I disable just tracking_front in the camera server config file, the server will fail to initialize hires_front. Since I only have one camera physically connected, the camera server will not find any cameras and fail to start.
-
Also, I have a custom kernel build (that wasn't being used during my issues in my last comment) created by following this guide: https://docs.modalai.com/voxl2-kernel-build-guide/
The only change I made in this kernel was to enable
CONFIG_MACVLAN=y
by editingkona-perf_defconfig
inapps_proc/poky/meta-voxl2-bsp/recipes-kernel/linux-msm/files/configs/m0054
However, as you said, this kernel version doesn't support the M0173 breakout board. How do I build a version that does while also adding my macvlan config?
-
This post is deleted! -
Hi @jcai ,
Please build the kernel using the argument to specify a 'variant' of the kernel:
./qrb5165-build.sh -m M0054 -v var00.1
I'm using this
var00.1
variable to pull in these device tree files basically:
https://gitlab.com/voxl-public/system-image-build/meta-voxl2-bsp/-/tree/qrb5165-ubun1.0-14.1a/recipes-kernel/linux-msm/files/dts/variant/m0054/var00.1
Specifically for cameras:
https://gitlab.com/voxl-public/system-image-build/meta-voxl2-bsp/-/blob/qrb5165-ubun1.0-14.1a/recipes-kernel/linux-msm/files/dts/variant/m0054/var00.1/m0054-modalai-camera.dtsi?ref_type=heads#L4
This happens here:
https://gitlab.com/voxl-public/system-image-build/meta-voxl2-bsp/-/blob/qrb5165-ubun1.0-14.1a/recipes-kernel/linux-msm/linux-msm_4.19.bbappend?ref_type=heads#L187For reference, the kernel tracks and exports info about itself to filesystem using this:
https://gitlab.com/voxl-public/system-image-build/meta-voxl2/-/tree/qrb5165-ubun1.0-14.1a/recipes-kernel/voxl-platform-mod-Travis
-
@jcai said in VOXL2 Camera Configuration not found:
@tom I just flashed 1.3.5 and was able to configure C28. However, there still seems to be an issue.
My camera is connected to J5 on the breakout, which should be hires_down. Using
voxl-inspect-cam
, the camera shows up as hires_front.Furthermore, if I disable just tracking_front in the camera server config file, the server will fail to initialize hires_front. Since I only have one camera physically connected, the camera server will not find any cameras and fail to start.
Thanks Travis, I was able to get a build with the correct configuration options as well as my own changes. However, the issues I described above are still present. Could this be a hardware fault?
-
@jcai are you using a single IMX412 off M0173 J5?
C28 will setup a additional 4 sensors that likely will create some 'noise' in the logs when they fail to probe (assuming above sentence is accurate).
The sensor off J5 is "sensor ID 2", so we will want to use something like
com.qti.sensormodule.imx412_fpv_2.bin
:E.g.
cp /usr/share/modalai/chi-cdk/imx412-fpv/com.qti.sensormodule.imx412_fpv_2.bin /usr/lib/camera
If only a single sensor off J5, you won't want other com.qti.sensormodule*.bins in /usr/lib/camera/
After copying the .bin above to /usr/lib/camera, If you run
voxl-camera-server -l
, do you get a single sensor? -
@modaltb yup, a single IMX412 on M0173 J5.
I've removed all the other
com.qti.sensormodule*.bin
files. These are the outputs I get when I runvoxl-camera-server -l
andvoxl-camera-server
with and without tracking_front enabled in the config file.As you can see, I'm still getting the same strange behaviour.
Default C28:
voxl2:/$ 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: 1 DEBUG: Cam idx: 0, Cam slot: 2, Slave Address: 0x0034, Sensor Id: 0x0577 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: 1 ==================================== Stats for camera: 0 ANDROID_SCALER_AVAILABLE_RAW_SIZES: These are likely supported by the sensor 4056 x 3040 3840 x 2160 1920 x 1080 1920 x 1080 1920 x 1080 1280 x 720 1280 x 720 ANDROID_SCALER_AVAILABLE_STREAM_CONFIGURATIONS: These are NOT necessarily supported by the sensor 4056 x 3040 HAL_PIXEL_FORMAT_YCbCr_420_888 4056 x 3040 HAL_PIXEL_FORMAT_BLOB 4000 x 3000 HAL_PIXEL_FORMAT_YCbCr_420_888 4000 x 3000 HAL_PIXEL_FORMAT_BLOB 3840 x 2160 HAL_PIXEL_FORMAT_YCbCr_420_888 3840 x 2160 HAL_PIXEL_FORMAT_BLOB 3264 x 2448 HAL_PIXEL_FORMAT_YCbCr_420_888 3264 x 2448 HAL_PIXEL_FORMAT_BLOB 3200 x 2400 HAL_PIXEL_FORMAT_YCbCr_420_888 3200 x 2400 HAL_PIXEL_FORMAT_BLOB 2976 x 2976 HAL_PIXEL_FORMAT_YCbCr_420_888 2976 x 2976 HAL_PIXEL_FORMAT_BLOB 2688 x 1512 HAL_PIXEL_FORMAT_YCbCr_420_888 2688 x 1512 HAL_PIXEL_FORMAT_BLOB 2592 x 1944 HAL_PIXEL_FORMAT_YCbCr_420_888 2592 x 1944 HAL_PIXEL_FORMAT_BLOB 2048 x 1536 HAL_PIXEL_FORMAT_YCbCr_420_888 2048 x 1536 HAL_PIXEL_FORMAT_BLOB 1920 x 1440 HAL_PIXEL_FORMAT_YCbCr_420_888 1920 x 1440 HAL_PIXEL_FORMAT_BLOB 1928 x 1208 HAL_PIXEL_FORMAT_YCbCr_420_888 1928 x 1208 HAL_PIXEL_FORMAT_BLOB 1920 x 1080 HAL_PIXEL_FORMAT_YCbCr_420_888 1920 x 1080 HAL_PIXEL_FORMAT_BLOB 1600 x 1200 HAL_PIXEL_FORMAT_YCbCr_420_888 1600 x 1200 HAL_PIXEL_FORMAT_BLOB 1440 x 1080 HAL_PIXEL_FORMAT_YCbCr_420_888 1440 x 1080 HAL_PIXEL_FORMAT_BLOB 1280 x 960 HAL_PIXEL_FORMAT_YCbCr_420_888 1280 x 960 HAL_PIXEL_FORMAT_BLOB 1280 x 800 HAL_PIXEL_FORMAT_YCbCr_420_888 1280 x 800 HAL_PIXEL_FORMAT_BLOB 1280 x 768 HAL_PIXEL_FORMAT_YCbCr_420_888 1280 x 768 HAL_PIXEL_FORMAT_BLOB 1280 x 720 HAL_PIXEL_FORMAT_YCbCr_420_888 1280 x 720 HAL_PIXEL_FORMAT_BLOB 1080 x 1080 HAL_PIXEL_FORMAT_YCbCr_420_888 1080 x 1080 HAL_PIXEL_FORMAT_BLOB 1024 x 738 HAL_PIXEL_FORMAT_YCbCr_420_888 1024 x 738 HAL_PIXEL_FORMAT_BLOB 1024 x 768 HAL_PIXEL_FORMAT_YCbCr_420_888 1024 x 768 HAL_PIXEL_FORMAT_BLOB 864 x 480 HAL_PIXEL_FORMAT_YCbCr_420_888 864 x 480 HAL_PIXEL_FORMAT_BLOB 800 x 600 HAL_PIXEL_FORMAT_YCbCr_420_888 800 x 600 HAL_PIXEL_FORMAT_BLOB 800 x 480 HAL_PIXEL_FORMAT_YCbCr_420_888 800 x 480 HAL_PIXEL_FORMAT_BLOB 720 x 1280 HAL_PIXEL_FORMAT_YCbCr_420_888 720 x 1280 HAL_PIXEL_FORMAT_BLOB 720 x 480 HAL_PIXEL_FORMAT_YCbCr_420_888 720 x 480 HAL_PIXEL_FORMAT_BLOB 640 x 512 HAL_PIXEL_FORMAT_YCbCr_420_888 640 x 512 HAL_PIXEL_FORMAT_BLOB 640 x 480 HAL_PIXEL_FORMAT_YCbCr_420_888 640 x 480 HAL_PIXEL_FORMAT_BLOB 640 x 400 HAL_PIXEL_FORMAT_YCbCr_420_888 640 x 400 HAL_PIXEL_FORMAT_BLOB 640 x 360 HAL_PIXEL_FORMAT_YCbCr_420_888 640 x 360 HAL_PIXEL_FORMAT_BLOB 352 x 288 HAL_PIXEL_FORMAT_YCbCr_420_888 352 x 288 HAL_PIXEL_FORMAT_BLOB 320 x 240 HAL_PIXEL_FORMAT_YCbCr_420_888 320 x 240 HAL_PIXEL_FORMAT_BLOB 240 x 320 HAL_PIXEL_FORMAT_YCbCr_420_888 240 x 320 HAL_PIXEL_FORMAT_BLOB 176 x 144 HAL_PIXEL_FORMAT_YCbCr_420_888 176 x 144 HAL_PIXEL_FORMAT_BLOB 4056 x 3040 HAL_PIXEL_FORMAT_RAW10 4056 x 3040 HAL_PIXEL_FORMAT_RAW12 4056 x 3040 HAL_PIXEL_FORMAT_RAW16 4056 x 3040 HAL_PIXEL_FORMAT_RAW_OPAQUE ANDROID_SENSOR_INFO_SENSITIVITY_RANGE min = 100 max = 35200 ANDROID_SENSOR_MAX_ANALOG_SENSITIVITY 2200 ANDROID_SENSOR_INFO_EXPOSURE_TIME_RANGE min = 0ns max = 243753000ns ==================================== Number of cameras detected: 1 ====================================
voxl2:/$ voxl-camera-server detected system image 1.7.10 using new imx412 defaults detected system image 1.7.10 using new imx412 defaults ================================================================= configuration for 4 cameras: cam #0 name: tracking_front sensor type: ar0144 isEnabled: 1 camId: 0 camId2: -1 fps: 30 en_rotate: 1 en_rotate2: 0 en_preview: 1 pre_width: 1280 pre_height: 800 en_raw_preview: 1 en_small_video: 0 small_video_width: -1 small_video_height: -1 en_large_video: 0 large_video_width: -1 large_video_height: -1 en_snapshot: 0 snap_width: -1 snap_height: -1 exif_focal_length: 0.000000 exif_focal_len_35mm_format:0 exif_fnumber: 0.000000 ae_mode: lme_msv msv_exposure_min_us: 20 msv_exposure_max_us: 33000 standby_enabled: 0 decimator: 1 independent_exposure:0 cam #1 name: hires_front sensor type: imx412 isEnabled: 1 camId: 1 camId2: -1 fps: 30 en_rotate: 0 en_rotate2: 0 en_preview: 0 pre_width: 640 pre_height: 480 en_raw_preview: 0 en_small_video: 1 small_video_width: 640 small_video_height: 480 en_large_video: 0 large_video_width: 4056 large_video_height: 3040 en_snapshot: 0 snap_width: 4056 snap_height: 3040 exif_focal_length: 3.100000 exif_focal_len_35mm_format:17 exif_fnumber: 1.240000 ae_mode: isp msv_exposure_min_us: 20 msv_exposure_max_us: 33000 standby_enabled: 0 decimator: 1 independent_exposure:0 cam #2 name: hires_down sensor type: imx412 isEnabled: 1 camId: 2 camId2: -1 fps: 30 en_rotate: 0 en_rotate2: 0 en_preview: 0 pre_width: 640 pre_height: 480 en_raw_preview: 0 en_small_video: 1 small_video_width: 640 small_video_height: 480 en_large_video: 1 large_video_width: 4056 large_video_height: 3040 en_snapshot: 1 snap_width: 4056 snap_height: 3040 exif_focal_length: 3.100000 exif_focal_len_35mm_format:17 exif_fnumber: 1.240000 ae_mode: isp msv_exposure_min_us: 20 msv_exposure_max_us: 33000 standby_enabled: 0 decimator: 1 independent_exposure:0 cam #3 name: tracking_down sensor type: ar0144 isEnabled: 1 camId: 3 camId2: -1 fps: 30 en_rotate: 0 en_rotate2: 0 en_preview: 1 pre_width: 1280 pre_height: 800 en_raw_preview: 1 en_small_video: 0 small_video_width: -1 small_video_height: -1 en_large_video: 0 large_video_width: -1 large_video_height: -1 en_snapshot: 0 snap_width: -1 snap_height: -1 exif_focal_length: 0.000000 exif_focal_len_35mm_format:0 exif_fnumber: 0.000000 ae_mode: lme_msv msv_exposure_min_us: 20 msv_exposure_max_us: 33000 standby_enabled: 0 decimator: 1 independent_exposure:0 fsync_en: 1 fsync_gpio: 109 ================================================================= Starting Camera: tracking_front (id #0) Connected to cpu-monitor ERROR: Camera 0 failed to find supported preview config: 1280x800 WARNING: Failed to start cam tracking_front due to invalid resolution WARNING: assuming cam is missing and trying to compensate Starting Camera: hires_front (originally id #1) with id offset: 1 gbm_create_device(156): Info: backend name is: msm_drm Starting Camera: hires_down (originally id #2) with id offset: 1 WARNING: cam hires_down (id 1) does not seem to be alive Starting Camera: tracking_down (originally id #3) with id offset: 1 WARNING: cam tracking_down (id 2) does not seem to be alive ------ voxl-camera-server: Started 1 of 4 cameras ------ voxl-camera-server: Camera server is now running
C28 with tracking_front disabled:
voxl2:/$ voxl-camera-server -l DEBUG: Attempting to open the hal module DEBUG: SUCCESS: Camera module opened on attempt 0 DEBUG: ----------- Number of cameras: 1 DEBUG: Cam idx: 0, Cam slot: 2, Slave Address: 0x0034, Sensor Id: 0x0577 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: 1 ==================================== Stats for camera: 0 ANDROID_SCALER_AVAILABLE_RAW_SIZES: These are likely supported by the sensor 4056 x 3040 3840 x 2160 1920 x 1080 1920 x 1080 1920 x 1080 1280 x 720 1280 x 720 ANDROID_SCALER_AVAILABLE_STREAM_CONFIGURATIONS: These are NOT necessarily supported by the sensor 4056 x 3040 HAL_PIXEL_FORMAT_YCbCr_420_888 4056 x 3040 HAL_PIXEL_FORMAT_BLOB 4000 x 3000 HAL_PIXEL_FORMAT_YCbCr_420_888 4000 x 3000 HAL_PIXEL_FORMAT_BLOB 3840 x 2160 HAL_PIXEL_FORMAT_YCbCr_420_888 3840 x 2160 HAL_PIXEL_FORMAT_BLOB 3264 x 2448 HAL_PIXEL_FORMAT_YCbCr_420_888 3264 x 2448 HAL_PIXEL_FORMAT_BLOB 3200 x 2400 HAL_PIXEL_FORMAT_YCbCr_420_888 3200 x 2400 HAL_PIXEL_FORMAT_BLOB 2976 x 2976 HAL_PIXEL_FORMAT_YCbCr_420_888 2976 x 2976 HAL_PIXEL_FORMAT_BLOB 2688 x 1512 HAL_PIXEL_FORMAT_YCbCr_420_888 2688 x 1512 HAL_PIXEL_FORMAT_BLOB 2592 x 1944 HAL_PIXEL_FORMAT_YCbCr_420_888 2592 x 1944 HAL_PIXEL_FORMAT_BLOB 2048 x 1536 HAL_PIXEL_FORMAT_YCbCr_420_888 2048 x 1536 HAL_PIXEL_FORMAT_BLOB 1920 x 1440 HAL_PIXEL_FORMAT_YCbCr_420_888 1920 x 1440 HAL_PIXEL_FORMAT_BLOB 1928 x 1208 HAL_PIXEL_FORMAT_YCbCr_420_888 1928 x 1208 HAL_PIXEL_FORMAT_BLOB 1920 x 1080 HAL_PIXEL_FORMAT_YCbCr_420_888 1920 x 1080 HAL_PIXEL_FORMAT_BLOB 1600 x 1200 HAL_PIXEL_FORMAT_YCbCr_420_888 1600 x 1200 HAL_PIXEL_FORMAT_BLOB 1440 x 1080 HAL_PIXEL_FORMAT_YCbCr_420_888 1440 x 1080 HAL_PIXEL_FORMAT_BLOB 1280 x 960 HAL_PIXEL_FORMAT_YCbCr_420_888 1280 x 960 HAL_PIXEL_FORMAT_BLOB 1280 x 800 HAL_PIXEL_FORMAT_YCbCr_420_888 1280 x 800 HAL_PIXEL_FORMAT_BLOB 1280 x 768 HAL_PIXEL_FORMAT_YCbCr_420_888 1280 x 768 HAL_PIXEL_FORMAT_BLOB 1280 x 720 HAL_PIXEL_FORMAT_YCbCr_420_888 1280 x 720 HAL_PIXEL_FORMAT_BLOB 1080 x 1080 HAL_PIXEL_FORMAT_YCbCr_420_888 1080 x 1080 HAL_PIXEL_FORMAT_BLOB 1024 x 738 HAL_PIXEL_FORMAT_YCbCr_420_888 1024 x 738 HAL_PIXEL_FORMAT_BLOB 1024 x 768 HAL_PIXEL_FORMAT_YCbCr_420_888 1024 x 768 HAL_PIXEL_FORMAT_BLOB 864 x 480 HAL_PIXEL_FORMAT_YCbCr_420_888 864 x 480 HAL_PIXEL_FORMAT_BLOB 800 x 600 HAL_PIXEL_FORMAT_YCbCr_420_888 800 x 600 HAL_PIXEL_FORMAT_BLOB 800 x 480 HAL_PIXEL_FORMAT_YCbCr_420_888 800 x 480 HAL_PIXEL_FORMAT_BLOB 720 x 1280 HAL_PIXEL_FORMAT_YCbCr_420_888 720 x 1280 HAL_PIXEL_FORMAT_BLOB 720 x 480 HAL_PIXEL_FORMAT_YCbCr_420_888 720 x 480 HAL_PIXEL_FORMAT_BLOB 640 x 512 HAL_PIXEL_FORMAT_YCbCr_420_888 640 x 512 HAL_PIXEL_FORMAT_BLOB 640 x 480 HAL_PIXEL_FORMAT_YCbCr_420_888 640 x 480 HAL_PIXEL_FORMAT_BLOB 640 x 400 HAL_PIXEL_FORMAT_YCbCr_420_888 640 x 400 HAL_PIXEL_FORMAT_BLOB 640 x 360 HAL_PIXEL_FORMAT_YCbCr_420_888 640 x 360 HAL_PIXEL_FORMAT_BLOB 352 x 288 HAL_PIXEL_FORMAT_YCbCr_420_888 352 x 288 HAL_PIXEL_FORMAT_BLOB 320 x 240 HAL_PIXEL_FORMAT_YCbCr_420_888 320 x 240 HAL_PIXEL_FORMAT_BLOB 240 x 320 HAL_PIXEL_FORMAT_YCbCr_420_888 240 x 320 HAL_PIXEL_FORMAT_BLOB 176 x 144 HAL_PIXEL_FORMAT_YCbCr_420_888 176 x 144 HAL_PIXEL_FORMAT_BLOB 4056 x 3040 HAL_PIXEL_FORMAT_RAW10 4056 x 3040 HAL_PIXEL_FORMAT_RAW12 4056 x 3040 HAL_PIXEL_FORMAT_RAW16 4056 x 3040 HAL_PIXEL_FORMAT_RAW_OPAQUE ANDROID_SENSOR_INFO_SENSITIVITY_RANGE min = 100 max = 35200 ANDROID_SENSOR_MAX_ANALOG_SENSITIVITY 2200 ANDROID_SENSOR_INFO_EXPOSURE_TIME_RANGE min = 0ns max = 243753000ns ==================================== Number of cameras detected: 1 ====================================
voxl2:/$ voxl-camera-server detected system image 1.7.10 using new imx412 defaults detected system image 1.7.10 using new imx412 defaults ================================================================= configuration for 4 cameras: cam #0 name: tracking_front sensor type: ar0144 isEnabled: 0 camId: 0 camId2: -1 fps: 30 en_rotate: 1 en_rotate2: 0 en_preview: 1 pre_width: 1280 pre_height: 800 en_raw_preview: 1 en_small_video: 0 small_video_width: -1 small_video_height: -1 en_large_video: 0 large_video_width: -1 large_video_height: -1 en_snapshot: 0 snap_width: -1 snap_height: -1 exif_focal_length: 0.000000 exif_focal_len_35mm_format:0 exif_fnumber: 0.000000 ae_mode: lme_msv msv_exposure_min_us: 20 msv_exposure_max_us: 33000 standby_enabled: 0 decimator: 1 independent_exposure:0 cam #1 name: hires_front sensor type: imx412 isEnabled: 1 camId: 1 camId2: -1 fps: 30 en_rotate: 0 en_rotate2: 0 en_preview: 0 pre_width: 640 pre_height: 480 en_raw_preview: 0 en_small_video: 1 small_video_width: 640 small_video_height: 480 en_large_video: 0 large_video_width: 4056 large_video_height: 3040 en_snapshot: 0 snap_width: 4056 snap_height: 3040 exif_focal_length: 3.100000 exif_focal_len_35mm_format:17 exif_fnumber: 1.240000 ae_mode: isp msv_exposure_min_us: 20 msv_exposure_max_us: 33000 standby_enabled: 0 decimator: 1 independent_exposure:0 cam #2 name: hires_down sensor type: imx412 isEnabled: 1 camId: 2 camId2: -1 fps: 30 en_rotate: 0 en_rotate2: 0 en_preview: 0 pre_width: 640 pre_height: 480 en_raw_preview: 0 en_small_video: 1 small_video_width: 640 small_video_height: 480 en_large_video: 1 large_video_width: 4056 large_video_height: 3040 en_snapshot: 1 snap_width: 4056 snap_height: 3040 exif_focal_length: 3.100000 exif_focal_len_35mm_format:17 exif_fnumber: 1.240000 ae_mode: isp msv_exposure_min_us: 20 msv_exposure_max_us: 33000 standby_enabled: 0 decimator: 1 independent_exposure:0 cam #3 name: tracking_down sensor type: ar0144 isEnabled: 1 camId: 3 camId2: -1 fps: 30 en_rotate: 0 en_rotate2: 0 en_preview: 1 pre_width: 1280 pre_height: 800 en_raw_preview: 1 en_small_video: 0 small_video_width: -1 small_video_height: -1 en_large_video: 0 large_video_width: -1 large_video_height: -1 en_snapshot: 0 snap_width: -1 snap_height: -1 exif_focal_length: 0.000000 exif_focal_len_35mm_format:0 exif_fnumber: 0.000000 ae_mode: lme_msv msv_exposure_min_us: 20 msv_exposure_max_us: 33000 standby_enabled: 0 decimator: 1 independent_exposure:0 fsync_en: 1 fsync_gpio: 109 ================================================================= Skipping Camera: tracking_front, configuration marked disabled Starting Camera: hires_front (id #1) WARNING: cam hires_front (id 1) does not seem to be alive Starting Camera: hires_down (id #2) WARNING: cam hires_down (id 2) does not seem to be alive Starting Camera: tracking_down (id #3) WARNING: cam tracking_down (id 3) does not seem to be alive ERROR: failed to initialize any cameras ------ voxl-camera-server: Started 0 of 4 cameras ------ voxl-camera-server: Camera server is now running ------ voxl-camera-server: Camera server is now stopping Connected to cpu-monitor ------ voxl-camera-server: Camera server exited gracefully, returning -1
-
@jcai , please back up your camera configuration file for your reference and then modify it.
Since you only have one camera connected, please remove all the camera configs except for one imx412 and change the camera id for that camera to 0.
The camera configuration file is located in
/etc/modalai/voxl-camera-server.conf
. It is probably going to be easier to edit the file in a text editor, unless you are comfortable withvi
/vim
If you want to add back other cameras, you first add the sensormodules back to
/usr/lib/camera
, then performvoxl-camera-server -l
scan and see which cameras are detected as which IDs. Then update camera config file to add back the camera you need and double check the camera IDs that are listed in the camera config should match what you saw invoxl-camera-server -l
. you can tell which camera is which by looking at Slave Address and Sensor Id output ofvoxl-camera-server -l
.For example the signature for IMX412 is:
Slave Address: 0x0034, Sensor Id: 0x0577
When camera server starts up, it goes through all the sensormodules in
/usr/lib/camera
and tries to use them to detect cameras on corresponding camera slots (each sensormodule is specific to a camera slot). Then the camera IDs are assigned the following way: lets say you detected three cameras in slots 1, 3, 4, so they will correspond to camera IDs (to be used in camera server config) as 0,1,2 (in the order of slot ids).Alex
-
@Alex-Kushleyev Thanks, everything looks alright now that I've removed the other cameras from the config file